/* Mission : Safari 5 (Rescue Hammond) Rescue Hammond Mission */ mission Safari5 { ;// mission info .info "budget" 500000 .info "objectives" 3 .info "savestate" "Safari5" ;// systems to activate/de-activate .systemactive "Economy" false .systemactive "Visitor Pool" false .systemactive "Corporate System" false .systemactive "Build Menu" false .systemactive "Enclosure Analyser" false .systemactive "Weather System" false .systemactive "Mail" false ;// features to disable .featuredisable "AParkGuestbookDialog" .featuredisable "AParkSafetyDialog" .featuredisable "AStructureSummaryDialog" .featuredisable "AParkFinanceDialog" .featuredisable "ADinoSummaryDialog" .featuredisable "GotoParkEntrance" .featuredisable "EmergencyOn" ;.featuredisable "GotoSafari" .featuredisable "AResearchDialog" .featuredisable "SaveGame" ;// Disable all save game menu .featuredisable "LoadGame" ;// Disable all load game menu .featuredisable "ParkManager_Dinosaurs" ;// Disable all "dinosaurs" submenu .featuredisable "ParkManager_Build" ;// Disable the build menu .featuredisable "Command_Orders" ;// Disables ALL "order" commands .featuredisable "AutoRescue" ;// Disables automatic rescues .featuredisable "BuildParkEntrance" ;// Disable build park entrace from manager ; // Enable correct digsites .fossilsenable "Chenini" .fossilsenable "JudithRiverB" .fossilsenable "HellCreekA" ; // mission parameters .misparam ; // objective parameters .objparam 1 .objparam 2 .objparam 3 ; // variable declarations .var iTargetBuilding .var iLandCruiser .var iJeepsRemaining ;// mission states ;// --------------------------------------------------------------- state MissionInit { iJeepsRemaining = 3 ; start mission timer for five minutes action EnableMissionTimer(true) action SetAllSafariDepotsAutoSpawn() action VaccinateAllDinosaurs() ; // remove all disease and set 100% health on dinos action RemoveAllMailMessages() ; // clear all mail messages ; // Set mini-game flags action ClearAllMiniGameParams() action SetCurrentMiniGameParamList(0) action SetMiniGameParam("SafariFlag", 229) ; // Unlimited fuel, disable photo mode, lock drive state & hide home icon + show jeeps hud action SetMiniGameParam("IsScenario", true) action SetDefaultMiniGameParamList(0) action SetJeepsAvailable(iJeepsRemaining) action SetJeepsRemaining(iJeepsRemaining) action SetUnitTypeSelectable("rgrcopt", true) action SetUnitTypeSelectable("rangerdp", true) action SetUnitTypeSelectable("welccntr", true) transition { direct goto StartMission } } ;// --------------------------------------------------------------- state StartMission { transition ShowMissionIntro("facebuttonArnold") { direct goto ShowObjectiveGun } } ;// --------------------------------------------------------------- state ShowObjectiveGun { transition ShowObjectiveMessage(1) { iTargetBuilding = FindUnitType("rangerdp", 0) ; // find ranger station action SetGenericDestRadarTarget(iTargetBuilding) ; // setup target on radar action SetBuildingArrowFront(iTargetBuilding, 0) ; // put an arrow doda on the building direct goto PlayIntroFlyover } } ;// --------------------------------------------------------------- state PlayIntroFlyover { transition ;PlayTransition(0) { action StartMissionTimer(300) goto StartGame } } ;// --------------------------------------------------------------- state StartGame { transition StartMiniGame(1,1) { iLandCruiser = RetrieveMiniGameUnitID() goto PickupGunState } } ;// --------------------------------------------------------------- state PickupGunState { transition IsMiniGameUnitDestroyed() { goto JeepDestroyed } transition HasMissionTimerElapsed() { goto MissionFailed } transition HasSafariJeepReturned() { goto ReturnedToDepot } transition CheckArrowProximity(iLandCruiser) <= 4.0 { action ClearAllMiniGameParams() action SetCurrentMiniGameParamList(0) action SetMiniGameParam("SafariFlag", 245) ; // Previous flags + enable shoot mode & rescue mode action SetMiniGameParam("IsScenario", true) action SetDefaultMiniGameParamList(0) action SetObjectiveStatus(1, true) goto ShowObjectiveRescue } } ;// --------------------------------------------------------------- state ShowObjectiveRescue { transition ShowObjectiveMessage(2) { iTargetBuilding = FindUnitType("shelter", 0) ; // find visitor shelter action SetGenericDestRadarTarget(iTargetBuilding) ; // set visitor shelter as target on radar action SetBuildingArrowFront(iTargetBuilding) ; // put an arrow doda on the building action SetJeepsRemaining(iJeepsRemaining) goto PickedUpGun } } ;// --------------------------------------------------------------- state PickedUpGun { transition StartMiniGame(1,1) ; // Restart mini-game to enable new modes { goto PickupHammondState } } ;// --------------------------------------------------------------- state PickupHammondState { transition IsMiniGameUnitDestroyed() { goto JeepDestroyed } transition HasSafariJeepReturned() { goto ReturnedToDepot } transition HasMissionTimerElapsed() { goto MissionFailed } transition CheckArrowProximity(iLandCruiser) <= 4.0 { iTargetBuilding = FindUnitType("welccntr", 0) ; // find park entrance #2 action SetGenericDestRadarTarget(iTargetBuilding) action SetBuildingArrowFront(iTargetBuilding) ; // put an arrow doda on the building action SetObjectiveStatus(2, true) goto PlayRescueCamera } } ;// --------------------------------------------------------------- state PlayRescueCamera { transition ;PlayTransition(1, false) { goto ShowThanksDialog } } ;// --------------------------------------------------------------- state ShowThanksDialog { transition SetMessageLocale("Mission_Safari5_Thanks_H", "Mission_Safari5_Thanks_D","facebuttonHammond") { goto ShowObjectiveSafety } } ;// --------------------------------------------------------------- state ShowObjectiveSafety { transition ShowObjectiveMessage(3) { action SetJeepsRemaining(iJeepsRemaining) goto PickedUpHammond } } ;// --------------------------------------------------------------- state PickedUpHammond { transition StartMiniGame(1,1) ; // Restart mini-game to change radar target { goto RescueHammondState } } ;// --------------------------------------------------------------- state RescueHammondState { transition IsMiniGameUnitDestroyed() { goto JeepDestroyed } transition HasSafariJeepReturned() { goto ReturnedToDepot } transition HasMissionTimerElapsed() { goto MissionFailed } transition CheckArrowProximity(iLandCruiser) <= 4.0 { action SetObjectiveStatus(3, true) goto MissionVictory } } ;// --------------------------------------------------------------- state ReturnedToDepot { transition { action StartTimer(1,3) goto WaitABit } } ;// --------------------------------------------------------------- state WaitABit { transition HasTimerElapsed(1) { goto MissionFailed } } ;// --------------------------------------------------------------- state JeepDestroyed { transition { action SubImm(iJeepsRemaining, 1) action SetJeepsRemaining(iJeepsRemaining) goto HasJeepsLeft } } ;// --------------------------------------------------------------- state HasJeepsLeft { transition iJeepsRemaining >= 1 { action StartTimer(1,3) goto WaitThenRestartMiniGame } ; No jeeps left, end mission transition { goto MissionFailed } } ;// --------------------------------------------------------------- state WaitThenRestartMiniGame { transition HasTimerElapsed(1) { goto ResetMissionNow } } ;// --------------------------------------------------------------- state ResetMissionNow { transition { ; // Remove gun etc action SetMiniGameParam("SafariFlag", 229) ; // Unset all objectives action SetObjectiveStatus(1, false) action SetObjectiveStatus(2, false) action SetObjectiveStatus(3, false) goto FadeOutNow } } ;// --------------------------------------------------------------- state FadeOutNow { transition FadeOutAndRespawnJeep(45.0) { goto ShowObjectiveGun } } ; // Victory message ;// --------------------------------------------------------------- state MissionVictory { transition ShowMissionVictory("facebuttonArnold") { action SetMissionWon() action UnlockMission("RgrAttk4") action SaveOptions() goto SaveOptions } } ; // Failure message ;// --------------------------------------------------------------- state MissionFailed { transition ShowMissionFailure("facebuttonArnold") { goto CleanUp } } ;// --------------------------------------------------------------- state CleanUp { transition { goto MissionComplete } } state SaveOptions { transition NotCurrentGameState("AOptionsSaveState") { goto MissionComplete } } ; // Will return to front end ;// --------------------------------------------------------------- final state MissionComplete { } }