share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/ice01.lua
changeset 12519 d89dabfd07ce
parent 12474 2041d1e98ab2
child 12520 2df340544f25
equal deleted inserted replaced
12518:d90db45a0c4f 12519:d89dabfd07ce
   230 
   230 
   231 function onNewTurn()
   231 function onNewTurn()
   232 	heroDamageAtCurrentTurn = 0
   232 	heroDamageAtCurrentTurn = 0
   233 	-- round has to start if hero goes near the column
   233 	-- round has to start if hero goes near the column
   234 	if not heroVisitedAntiFlyArea and CurrentHedgehog ~= hero.gear then
   234 	if not heroVisitedAntiFlyArea and CurrentHedgehog ~= hero.gear then
   235 		TurnTimeLeft = 0
   235 		EndTurn(true)
   236 	elseif not heroVisitedAntiFlyArea and CurrentHedgehog == hero.gear then
   236 	elseif not heroVisitedAntiFlyArea and CurrentHedgehog == hero.gear then
   237 		TurnTimeLeft = -1
   237 		TurnTimeLeft = -1
   238 	elseif not heroAtFinalStep and (CurrentHedgehog == bandit1.gear or CurrentHedgehog == bandit4.gear or CurrentHedgehog == bandit5.gear) then
   238 	elseif not heroAtFinalStep and (CurrentHedgehog == bandit1.gear or CurrentHedgehog == bandit4.gear or CurrentHedgehog == bandit5.gear) then
   239 		AnimSwitchHog(hero.gear)
   239 		AnimSwitchHog(hero.gear)
   240 		TurnTimeLeft = 0
   240 		EndTurn(true)
   241 	elseif heroAtFinalStep and (CurrentHedgehog == bandit2.gear or CurrentHedgehog == bandit3.gear) then
   241 	elseif heroAtFinalStep and (CurrentHedgehog == bandit2.gear or CurrentHedgehog == bandit3.gear) then
   242 		if (GetHealth(bandit1.gear) and GetEffect(bandit1.gear,heFrozen) > 256) and
   242 		if (GetHealth(bandit1.gear) and GetEffect(bandit1.gear,heFrozen) > 256) and
   243 			((GetHealth(bandit4.gear) and GetEffect(bandit4.gear,heFrozen) > 256) or not GetHealth(bandit4.gear)) and
   243 			((GetHealth(bandit4.gear) and GetEffect(bandit4.gear,heFrozen) > 256) or not GetHealth(bandit4.gear)) and
   244 			((GetHealth(bandit5.gear) and GetEffect(bandit5.gear,heFrozen) > 256) or not GetHealth(bandit5.gear)) then
   244 			((GetHealth(bandit5.gear) and GetEffect(bandit5.gear,heFrozen) > 256) or not GetHealth(bandit5.gear)) then
   245 			TurnTimeLeft = 0
   245 			EndTurn(true)
   246 		else
   246 		else
   247 			AnimSwitchHog(hero.gear)
   247 			AnimSwitchHog(hero.gear)
   248 			TurnTimeLeft = 0
   248 			EndTurn(true)
   249 		end
   249 		end
   250 	elseif CurrentHedgehog == ally.gear then
   250 	elseif CurrentHedgehog == ally.gear then
   251 		TurnTimeLeft = 0
   251 		EndTurn(true)
   252 	end
   252 	end
   253 	-- frozen hogs accounting
   253 	-- frozen hogs accounting
   254 	if CurrentHedgehog == hero.gear and heroAtFinalStep and TurnTimeLeft > 0 then
   254 	if CurrentHedgehog == hero.gear and heroAtFinalStep and TurnTimeLeft > 0 then
   255 		if bandit1.frozen then
   255 		if bandit1.frozen then
   256 			if bandit1.roundsToUnfreeze == 0 then
   256 			if bandit1.roundsToUnfreeze == 0 then
   407 -------------- ACTIONS ------------------
   407 -------------- ACTIONS ------------------
   408 
   408 
   409 function antiFlyArea(gear)
   409 function antiFlyArea(gear)
   410 	heroAtAntiFlyArea = true
   410 	heroAtAntiFlyArea = true
   411 	if not heroVisitedAntiFlyArea then
   411 	if not heroVisitedAntiFlyArea then
   412 		TurnTimeLeft = 0
   412 		EndTurn(true)
   413 		FollowGear(hero.gear)
   413 		FollowGear(hero.gear)
   414 		AnimSwitchHog(bandit1.gear)
   414 		AnimSwitchHog(bandit1.gear)
   415 		FollowGear(hero.gear)
   415 		FollowGear(hero.gear)
   416 		TurnTimeLeft = 0
   416 		HogSay(hero.gear, loc("My flying saucer stopped working!"), SAY_THINK)
       
   417 		EndTurn(true)
   417 	end
   418 	end
   418 	AddAmmo(hero.gear, amJetpack, 0)
   419 	AddAmmo(hero.gear, amJetpack, 0)
   419 	AddAmmo(hero.gear, amSkip, 100)
   420 	AddAmmo(hero.gear, amSkip, 100)
   420 	heroVisitedAntiFlyArea = true
   421 	heroVisitedAntiFlyArea = true
   421 end
   422 end