From e31f39d3a9513b33072df501f652fe4b63f84c11 Mon Sep 17 00:00:00 2001 From: Steve Date: Mon, 25 Jan 2016 15:09:14 +0000 Subject: [PATCH] Replaced "Dummy" missions with manual complete flag. --- data/missions/clarke/02 - clarke defence #2.json | 8 +------- data/missions/clarke/03 - clarke defence #3.json | 8 +------- data/missions/coyote/01 - coyote assault #1.json | 8 +------- data/missions/granada/02 - suspect packages #2.json | 8 +------- data/missions/granada/03 - suspect packages #3.json | 8 +------- data/missions/granada/04 - pirate smash.json | 8 +------- data/missions/iliad/04 - iliad defence #4.json | 8 +------- data/missions/temper/05 - pirate uprising #5.json | 8 +------- data/missions/warro/04 - evacuation #4.json | 8 +------- data/missions/warro/05 - evacuation #5.json | 8 +------- src/battle/objectives.c | 2 +- src/galaxy/mission.c | 5 +++++ src/structs.h | 1 + 13 files changed, 17 insertions(+), 71 deletions(-) diff --git a/data/missions/clarke/02 - clarke defence #2.json b/data/missions/clarke/02 - clarke defence #2.json index 6d67534..47a41c4 100644 --- a/data/missions/clarke/02 - clarke defence #2.json +++ b/data/missions/clarke/02 - clarke defence #2.json @@ -5,6 +5,7 @@ "background" : "gfx/backgrounds/background04.jpg", "planet" : "gfx/planets/bluePlanet.png", "music" : "music/heroism.ogg", + "manualComplete" : 1, "objectives" : [ { "description" : "Destroy INF Dirk", @@ -24,13 +25,6 @@ "targetValue" : 4, "targetType" : "TT_DESTROY", "active": 0 - }, - { - "description" : "DUMMY", - "targetName" : "DUMMY", - "targetValue" : 1, - "targetType" : "TT_DESTROY", - "active" : 0 } ], "player" : { diff --git a/data/missions/clarke/03 - clarke defence #3.json b/data/missions/clarke/03 - clarke defence #3.json index 656d904..db4b809 100644 --- a/data/missions/clarke/03 - clarke defence #3.json +++ b/data/missions/clarke/03 - clarke defence #3.json @@ -5,6 +5,7 @@ "background" : "gfx/backgrounds/background04.jpg", "planet" : "gfx/planets/bluePlanet.png", "music" : "music/heroism.ogg", + "manualComplete" : 1, "objectives" : [ { "description" : "Destroy INF Khopesh", @@ -36,13 +37,6 @@ "targetValue" : 1, "targetType" : "TT_DESTROY", "isCondition": 1 - }, - { - "description" : "DUMMY", - "targetName" : "DUMMY", - "targetValue" : 1, - "targetType" : "TT_DESTROY", - "active" : 0 } ], "player" : { diff --git a/data/missions/coyote/01 - coyote assault #1.json b/data/missions/coyote/01 - coyote assault #1.json index 5ccfb0f..4518aca 100644 --- a/data/missions/coyote/01 - coyote assault #1.json +++ b/data/missions/coyote/01 - coyote assault #1.json @@ -5,19 +5,13 @@ "background" : "gfx/backgrounds/background03.jpg", "planet" : "gfx/planets/mythos.png", "music" : "music/heroism.ogg", + "manualComplete" : 1, "objectives" : [ { "description" : "Destroy all enemy targets", "targetName" : "Pandoran", "targetValue" : 100, "targetType" : "TT_DESTROY" - }, - { - "description" : "DUMMY", - "targetName" : "DUMMY", - "targetValue" : 1, - "targetType" : "TT_DESTROY", - "active" : 0 } ], "player" : { diff --git a/data/missions/granada/02 - suspect packages #2.json b/data/missions/granada/02 - suspect packages #2.json index f7a008a..30f95ae 100644 --- a/data/missions/granada/02 - suspect packages #2.json +++ b/data/missions/granada/02 - suspect packages #2.json @@ -5,6 +5,7 @@ "requires" : 4, "planet" : "gfx/planets/bluePlanet.png", "music" : "music/determination.mp3", + "manualComplete" : 1, "objectives" : [ { "description" : "Check all wayponts", @@ -40,13 +41,6 @@ "targetValue" : 7, "targetType" : "TT_DESTROY", "active" : 0 - }, - { - "description" : "DUMMY", - "targetName" : "DUMMY", - "targetValue" : 1, - "targetType" : "TT_DESTROY", - "active" : 0 } ], "player" : { diff --git a/data/missions/granada/03 - suspect packages #3.json b/data/missions/granada/03 - suspect packages #3.json index f41fd04..6c75dd1 100644 --- a/data/missions/granada/03 - suspect packages #3.json +++ b/data/missions/granada/03 - suspect packages #3.json @@ -5,6 +5,7 @@ "background" : "gfx/backgrounds/background03.jpg", "planet" : "gfx/planets/bluePlanet.png", "music" : "music/determination.mp3", + "manualComplete" : 1, "player" : { "pilot" : "Lt. Cdr. Daniel Carr", "squadron" : "Iron Patriots", @@ -54,13 +55,6 @@ "targetType" : "TT_DESTROY", "active" : 0, "isCondition" : 1 - }, - { - "description" : "DUMMY", - "targetName" : "DUMMY", - "targetValue" : 1, - "targetType" : "TT_DESTROY", - "active" : 0 } ], "fighters" : [ diff --git a/data/missions/granada/04 - pirate smash.json b/data/missions/granada/04 - pirate smash.json index af21dc4..9be7713 100644 --- a/data/missions/granada/04 - pirate smash.json +++ b/data/missions/granada/04 - pirate smash.json @@ -5,6 +5,7 @@ "background" : "gfx/backgrounds/background03.jpg", "planet" : "gfx/planets/bluePlanet.png", "music" : "music/track-4.mp3", + "manualComplete" : 1, "player" : { "pilot" : "Lt. Cdr. Daniel Carr", "squadron" : "Iron Patriots", @@ -31,13 +32,6 @@ "targetName" : "Dart", "targetValue" : 48, "targetType" : "TT_DESTROY" - }, - { - "description" : "DUMMY", - "targetName" : "DUMMY", - "targetValue" : 1, - "targetType" : "TT_DESTROY", - "active" : 0 } ], "fighters" : [ diff --git a/data/missions/iliad/04 - iliad defence #4.json b/data/missions/iliad/04 - iliad defence #4.json index a6031df..822a30d 100644 --- a/data/missions/iliad/04 - iliad defence #4.json +++ b/data/missions/iliad/04 - iliad defence #4.json @@ -5,6 +5,7 @@ "background" : "gfx/backgrounds/background01.jpg", "planet" : "gfx/planets/bluePlanet.png", "music" : "music/heroism.ogg", + "manualComplete" : 1, "objectives" : [ { "description" : "Protect UNF Lady Jane Grey", @@ -47,13 +48,6 @@ "targetValue" : 1, "targetType" : "TT_DESTROY", "isEliminateAll" : 1 - }, - { - "description" : "DUMMY", - "targetName" : "DUMMY", - "targetValue" : 1, - "targetType" : "TT_DESTROY", - "active" : 0 } ], "player" : { diff --git a/data/missions/temper/05 - pirate uprising #5.json b/data/missions/temper/05 - pirate uprising #5.json index 06a0cf4..9b4eec2 100644 --- a/data/missions/temper/05 - pirate uprising #5.json +++ b/data/missions/temper/05 - pirate uprising #5.json @@ -5,19 +5,13 @@ "background" : "gfx/backgrounds/background03.jpg", "planet" : "gfx/planets/spirit.png", "music" : "music/battleThemeA.mp3", + "manualComplete" : 1, "objectives" : [ { "description" : "Destroy all pirate forces", "targetName" : "Dart", "targetValue" : 88, "targetType" : "TT_DESTROY" - }, - { - "description" : "DUMMY", - "targetName" : "DUMMY", - "targetValue" : 1, - "targetType" : "TT_DESTROY", - "active" : 0 } ], "player" : { diff --git a/data/missions/warro/04 - evacuation #4.json b/data/missions/warro/04 - evacuation #4.json index dee4eaa..4a48e51 100644 --- a/data/missions/warro/04 - evacuation #4.json +++ b/data/missions/warro/04 - evacuation #4.json @@ -5,6 +5,7 @@ "background" : "gfx/backgrounds/background03.jpg", "planet" : "gfx/planets/oracleIX.png", "music" : "music/determination.mp3", + "manualComplete" : 1, "objectives" : [ { "description" : "Rescue first civilian group", @@ -40,13 +41,6 @@ "targetValue" : 3, "targetType" : "TT_DESTROY", "isCondition" : 1 - }, - { - "description" : "DUMMY", - "targetName" : "DUMMY", - "targetValue" : 1, - "targetType" : "TT_DESTROY", - "active" : 0 } ], "player" : { diff --git a/data/missions/warro/05 - evacuation #5.json b/data/missions/warro/05 - evacuation #5.json index 4467806..a9e51b0 100644 --- a/data/missions/warro/05 - evacuation #5.json +++ b/data/missions/warro/05 - evacuation #5.json @@ -5,6 +5,7 @@ "background" : "gfx/backgrounds/background03.jpg", "planet" : "gfx/planets/oracleIX.png", "music" : "music/track-4.mp3", + "manualComplete" : 1, "objectives" : [ { "description" : "Destroy INF Thunderbolt", @@ -47,13 +48,6 @@ "targetType" : "TT_DESTROY", "active" : 0, "isEliminateAll" : 1 - }, - { - "description" : "DUMMY", - "targetName" : "DUMMY", - "targetValue" : 1, - "targetType" : "TT_DESTROY", - "active" : 0 } ], "player" : { diff --git a/src/battle/objectives.c b/src/battle/objectives.c index 6c312e3..a16cb8c 100644 --- a/src/battle/objectives.c +++ b/src/battle/objectives.c @@ -61,7 +61,7 @@ void doObjectives(void) if (battle.status == MS_IN_PROGRESS) { - if (numHiddenObjectives == 0 && battle.numObjectivesTotal > 0 && battle.numObjectivesComplete == battle.numObjectivesTotal) + if (!battle.manualComplete && numHiddenObjectives == 0 && battle.numObjectivesTotal > 0 && battle.numObjectivesComplete == battle.numObjectivesTotal) { completeMission(); diff --git a/src/galaxy/mission.c b/src/galaxy/mission.c index d0f5f12..510da31 100644 --- a/src/galaxy/mission.c +++ b/src/galaxy/mission.c @@ -72,6 +72,11 @@ void loadMission(char *filename) loadEpicData(cJSON_GetObjectItem(root, "epic")); } + if (cJSON_GetObjectItem(root, "manualComplete")) + { + battle.manualComplete = cJSON_GetObjectItem(root, "manualComplete")->valueint; + } + if (cJSON_GetObjectItem(root, "unwinnable")) { battle.unwinnable = cJSON_GetObjectItem(root, "unwinnable")->valueint; diff --git a/src/structs.h b/src/structs.h index c3896c2..aac61b0 100644 --- a/src/structs.h +++ b/src/structs.h @@ -278,6 +278,7 @@ typedef struct { int epic; int epicFighterLimit; int playerSelect; + int manualComplete; int unwinnable; int missionFinishedTimer; int boostTimer;