# HG changeset patch # User Wuzzy # Date 1506360339 -7200 # Node ID 94bba599efd3ed77595fd11c526593eef0fb2a40 # Parent 193b5882429dcb79493b5b96e42a13e261bea361 ASA, Spacetrip: Fix mission fail if touching ground in flying saucer but still got fuel diff -r 193b5882429d -r 94bba599efd3 share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/cosmos.lua --- a/share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/cosmos.lua Mon Sep 25 19:16:14 2017 +0200 +++ b/share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/cosmos.lua Mon Sep 25 19:25:39 2017 +0200 @@ -54,6 +54,8 @@ local teamA = {} local teamB = {} local teamC = {} +-- to check if flying saucer is active +local saucerGear = nil -- hedgehogs values hero.name = loc("Hog Solo") hero.x = 1450 @@ -275,9 +277,17 @@ return false end +function onGearAdd(gear) + if GetGearType(gear) == gtJetpack then + saucerGear = gear + end +end + function onGearDelete(gear) if GetGearType(gear) == gtCase and band(GetGearMessage(gear), gmDestroy) ~= 0 then heroAtSaucerPosition() + elseif GetGearType(gear) == gtJetpack then + saucerGear = nil end end @@ -332,7 +342,7 @@ function onNoFuelAtLand(gear) if checkPointReached > 1 and GetHealth(hero.gear) and GetY(gear) > 1400 and - GetAmmoCount(gear, amJetpack) == 0 and StoppedGear(gear) then + GetAmmoCount(gear, amJetpack) == 0 and saucerGear == nil and StoppedGear(gear) then return true end return false