share/hedgewars/Data/Missions/Campaign/A_Classic_Fairytale/journey.lua
changeset 14612 bd15c8551318
parent 14487 d72fb761aa59
child 14622 64be9a8087f2
equal deleted inserted replaced
14611:3cf7799e04b5 14612:bd15c8551318
   232   HogTurnLeft(dense, true)
   232   HogTurnLeft(dense, true)
   233 end
   233 end
   234 
   234 
   235 function AfterEndAnimAlone()
   235 function AfterEndAnimAlone()
   236   stage = endStage
   236   stage = endStage
   237   SwitchHog(leaks)
   237   AnimSwitchHog(leaks)
   238   SetGearMessage(leaks, 0)
   238   SetGearMessage(leaks, 0)
   239   SetTurnTimeLeft(MAX_TURN_TIME)
   239   SetTurnTimeLeft(MAX_TURN_TIME)
   240   ShowMission(loc("The Journey Back"), loc("Collateral Damage II"), loc("Save Fell From Heaven!"), 1, 4000)
   240   ShowMission(loc("The Journey Back"), loc("Collateral Damage II"), loc("Save Fell From Heaven!"), 1, 4000)
   241   AddEvent(CheckLost, {}, DoLost, {}, 0)
   241   AddEvent(CheckLost, {}, DoLost, {}, 0)
   242   AddEvent(CheckWon, {}, DoWon, {}, 0)
   242   AddEvent(CheckWon, {}, DoWon, {}, 0)
   243   RemoveEventFunc(CheckFailedCourse)
   243   RemoveEventFunc(CheckFailedCourse)
   244 end
   244 end
   245 
   245 
   246 function AfterEndAnimDuo()
   246 function AfterEndAnimDuo()
   247   stage = endStage
   247   stage = endStage
   248   SwitchHog(leaks)
   248   AnimSwitchHog(leaks)
   249   SetGearMessage(leaks, 0)
   249   SetGearMessage(leaks, 0)
   250   SetGearMessage(dense, 0)
   250   SetGearMessage(dense, 0)
   251   SetTurnTimeLeft(MAX_TURN_TIME)
   251   SetTurnTimeLeft(MAX_TURN_TIME)
   252   ShowMission(loc("The Journey Back"), loc("Collateral Damage II"), loc("Save Fell From Heaven!"), 1, 4000)
   252   ShowMission(loc("The Journey Back"), loc("Collateral Damage II"), loc("Save Fell From Heaven!"), 1, 4000)
   253   AddEvent(CheckLost, {}, DoLost, {}, 0)
   253   AddEvent(CheckLost, {}, DoLost, {}, 0)
   321 function AfterPastFlowerAnim()
   321 function AfterPastFlowerAnim()
   322   PlaceMinesDuo()
   322   PlaceMinesDuo()
   323   AddEvent(CheckDensePit, {}, DoDensePit, {}, 0)
   323   AddEvent(CheckDensePit, {}, DoDensePit, {}, 0)
   324   SetGearMessage(leaks, 0)
   324   SetGearMessage(leaks, 0)
   325   SetGearMessage(dense, 0)
   325   SetGearMessage(dense, 0)
   326   EndTurn(0)
   326   EndTurn(true)
   327   ShowMission(loc("The Journey Back"), loc("The Savior"), 
   327   ShowMission(loc("The Journey Back"), loc("The Savior"), 
   328     loc("Get Dense Cloud out of the pit!") .. "|" ..
   328     loc("Get Dense Cloud out of the pit!") .. "|" ..
   329     loc("Your hogs must survive!") .. "|" ..
   329     loc("Your hogs must survive!") .. "|" ..
   330     loc("Beware of mines: They explode after 5 seconds."), 1, 5000)
   330     loc("Beware of mines: They explode after 5 seconds."), 1, 5000)
   331 end
   331 end
   881     return false
   881     return false
   882   end
   882   end
   883 end
   883 end
   884 
   884 
   885 function DoDensePit()
   885 function DoDensePit()
   886   EndTurn(0)
   886   EndTurn(true)
   887   RestoreHedge(cyborg)
   887   RestoreHedge(cyborg)
   888   AnimWait(cyborg, 1)
   888   AnimWait(cyborg, 1)
   889   AddFunction({func = AddAnim, args = {outPitAnim}})
   889   AddFunction({func = AddAnim, args = {outPitAnim}})
   890   AddFunction({func = AddFunction, args = {{func = AfterOutPitAnim, args = {}}}})
   890   AddFunction({func = AddFunction, args = {{func = AfterOutPitAnim, args = {}}}})
   891 end
   891 end
  1094   nativesTeamName = AddMissionTeam(-2)
  1094   nativesTeamName = AddMissionTeam(-2)
  1095   leaks = AddHog(loc("Leaks A Lot"), 0, 100, "Rambo")
  1095   leaks = AddHog(loc("Leaks A Lot"), 0, 100, "Rambo")
  1096   dense = AddHog(loc("Dense Cloud"), 0, 100, "RobinHood")
  1096   dense = AddHog(loc("Dense Cloud"), 0, 100, "RobinHood")
  1097 
  1097 
  1098   princessTeamName = AddTeam(loc("Princess"), -2, "Bone", "Island", "HillBilly", "cm_female")
  1098   princessTeamName = AddTeam(loc("Princess"), -2, "Bone", "Island", "HillBilly", "cm_female")
       
  1099   SetTeamPassive(princessTeamName, true)
  1099   princess = AddHog(loc("Fell From Heaven"), 0, 200, "tiara")
  1100   princess = AddHog(loc("Fell From Heaven"), 0, 200, "tiara")
  1100 
  1101 
  1101   cannibalsTeamName = AddTeam(loc("Cannibal Sentry"), -1, "skull", "Island", "Pirate","cm_vampire")
  1102   cannibalsTeamName = AddTeam(loc("Cannibal Sentry"), -1, "skull", "Island", "Pirate","cm_vampire")
  1102   cannibals = {}
  1103   cannibals = {}
  1103   for i = 1, 4 do
  1104   for i = 1, 4 do
  1195   end
  1196   end
  1196   if AnimInProgress() then
  1197   if AnimInProgress() then
  1197     SetTurnTimeLeft(MAX_TURN_TIME)
  1198     SetTurnTimeLeft(MAX_TURN_TIME)
  1198   elseif victory then
  1199   elseif victory then
  1199     EndTurn(true)
  1200     EndTurn(true)
  1200   elseif stage == endStage and CurrentHedgehog ~= leaks then
  1201   elseif stage == endStage then
  1201     AnimSwitchHog(leaks)
  1202     if GetHogTeamName(CurrentHedgehog) == nativesTeamName and CurrentHedgehog ~= leaks then
  1202     SetGearMessage(leaks, 0)
  1203       AnimSwitchHog(leaks)
  1203     SetTurnTimeLeft(MAX_TURN_TIME)
  1204       SetTurnTimeLeft(MAX_TURN_TIME)
       
  1205     else
       
  1206       SkipTurn()
       
  1207     end
  1204   elseif GetHogTeamName(CurrentHedgehog) ~= nativesTeamName then
  1208   elseif GetHogTeamName(CurrentHedgehog) ~= nativesTeamName then
  1205     SetTurnTimeLeft(20000)
  1209     SetTurnTimeLeft(20000)
  1206   else
  1210   else
  1207     TurnsLeft = TurnsLeft - 1
  1211     TurnsLeft = TurnsLeft - 1
  1208     if TurnsLeft >= 1 then
  1212     if TurnsLeft >= 1 then