moon02 fixes: bug that didn't called win(), changed map so blue hog not placed on edges, teleport animations, removed amSkip, also error when drow hero and enemy seems fixed
authorPeriklis Ntanasis <pntanasis@gmail.com>
Tue, 10 Dec 2013 02:30:53 +0200
changeset 9772 30a9e740ec09
parent 9771 6fb8dafe57f7
child 9773 d6f8b9cb729e
moon02 fixes: bug that didn't called win(), changed map so blue hog not placed on edges, teleport animations, removed amSkip, also error when drow hero and enemy seems fixed
share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/moon02.hwp
share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/moon02.lua
Binary file share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/moon02.hwp has changed
--- a/share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/moon02.lua	Tue Dec 10 00:00:08 2013 +0400
+++ b/share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/moon02.lua	Tue Dec 10 02:30:53 2013 +0200
@@ -14,7 +14,7 @@
 	loc("You have to stand very close to him")
 local currentPosition = 1
 local previousTimeLeft = 0
-local startChallenge = falses
+local startChallenge = false
 -- dialogs
 local dialog01 = {}
 local dialog02 = {}
@@ -84,7 +84,6 @@
 	AddEvent(onHeroDeath, {hero.gear}, heroDeath, {hero.gear}, 0)
 
 	AddAmmo(hero.gear, amRope, 1)
-	AddAmmo(hero.gear, amSkip, 1)
 
 	SendHealthStatsOff()
 	hogTurn = runner.gear
@@ -92,7 +91,7 @@
 end
 
 function onNewTurn()
-	if startChallenge then
+	if startChallenge and currentPosition < 5 then
 		if CurrentHedgehog ~= hero.gear then
 			TurnTimeLeft = 0
 		else
@@ -116,7 +115,7 @@
 end
 
 function onGameTick20()
-	if isHeroNextToRunner() then
+	if GetHealth(hero.gear) and startChallenge and isHeroNextToRunner() and currentPosition < 5 then
 		moveRunner()
 	end
 end
@@ -150,6 +149,8 @@
     end
     if anim == dialog01 then
 		moveRunner()
+	elseif anim == dialog02 then
+		win()
     end
 end
 
@@ -191,13 +192,14 @@
 end
 
 function moveRunner()
-	if currentPosition > 3 then
+	if currentPosition == 4 then
+		currentPosition = currentPosition + 1
 		if GetX(hero.gear) > GetX(runner.gear) then
 			HogTurnLeft(runner.gear, false)
 		end
+		AddAnim(dialog02)
 		TurnTimeLeft = 0
-		AddAnim(dialog02)
-	else
+	elseif currentPosition < 4 then
 		if not startChallenge then
 			startChallenge = true
 		end
@@ -211,6 +213,7 @@
 			previousTimeLeft = TurnTimeLeft
 		end
 		currentPosition = currentPosition + 1
+		AddVisualGear(GetX(runner.gear), GetY(runner.gear), vgtExplosion, 0, false) 
 		SetGearPosition(runner.gear, runner.places[currentPosition].x, runner.places[currentPosition].y)
 		TurnTimeLeft = 0
 	end