share/hedgewars/Data/Missions/Campaign/A_Classic_Fairytale/shadow.lua
changeset 14404 cea19d3342c8
parent 13752 110d6c1e817f
child 14409 cf49fac6e88a
equal deleted inserted replaced
14403:f9d4b8222903 14404:cea19d3342c8
   142 
   142 
   143 hogNr = {}
   143 hogNr = {}
   144 cannibalDead = {}
   144 cannibalDead = {}
   145 isHidden = {}
   145 isHidden = {}
   146 
   146 
       
   147 local grenadeHint = loc("Grenade hint: Set timer with the [Timer] controls, aim with [Up]/[Down].") .. "|" ..
       
   148                     loc("Hold [Attack] pressed to throw with more power.")
       
   149 if INTERFACE == "touch" then
       
   150   grenadeHint = grenadeHint .. "|" ..
       
   151                 loc("Set timer: Tap the [Clock]") .. "|" ..
       
   152                 loc("Attack: Tap the [Bomb]")
       
   153 else
       
   154   grenadeHint = grenadeHint .. "|" ..
       
   155                 loc("Set detonation timer: [1]-[5]") .. "|" ..
       
   156                 loc("Attack: [Space]")
       
   157 end
   147 
   158 
   148 --------------------------Anim skip functions--------------------------
   159 --------------------------Anim skip functions--------------------------
   149 function AfterRefusedAnim()
   160 function AfterRefusedAnim()
   150   if stage == loseStage then
   161   if stage == loseStage then
   151     return
   162     return
   314 function AfterAttackedAnim()
   325 function AfterAttackedAnim()
   315   if stage == loseStage then
   326   if stage == loseStage then
   316     return
   327     return
   317   end
   328   end
   318   stage = aloneStage
   329   stage = aloneStage
   319   ShowMission(loc("The Shadow Falls"), loc("The Individualist"), loc("Defeat the cannibals!|Grenade hint: Set the timer with [1-5], aim with [Up]/[Down] and hold [Space] to set power"), 1, 8000)
   330   ShowMission(loc("The Shadow Falls"), loc("The Individualist"), loc("Defeat the cannibals!") .. "|" .. grenadeHint, 1, 12000)
   320   AddAmmo(cannibals[6], amGrenade, 1)
   331   AddAmmo(cannibals[6], amGrenade, 1)
   321   AddAmmo(cannibals[6], amFirePunch, 0)
   332   AddAmmo(cannibals[6], amFirePunch, 0)
   322   AddAmmo(cannibals[6], amBaseballBat, 0)
   333   AddAmmo(cannibals[6], amBaseballBat, 0)
   323   AddAmmo(cannibals[7], amGrenade, 1)
   334   AddAmmo(cannibals[7], amGrenade, 1)
   324   AddAmmo(cannibals[7], amFirePunch, 0)
   335   AddAmmo(cannibals[7], amFirePunch, 0)
   842 
   853 
   843 function DoNeedGirder()
   854 function DoNeedGirder()
   844   if stage == loseStage then
   855   if stage == loseStage then
   845     return
   856     return
   846   end
   857   end
   847   ShowMission(loc("The Shadow Falls"), loc("Under Construction"), loc("Return to Leaks A Lot!") .. "|" .. loc("To place a girder, select it, use [Left] and [Right] to select angle and length, place with [Left Click]"), 1, 6000)
   858   local ctrl = loc("Hint: To place a girder, select it,|then use [Left] and [Right] to select angle and length,|then choose a location for the girder.")
       
   859   if INTERFACE == "touch" then
       
   860     ctrl = ctrl .. "|" .. loc("Choose location: Tap the [Target] button, then tap on the spot you want to choose")
       
   861   else
       
   862     ctrl = ctrl .. "|" .. loc("Choose location: Left click")
       
   863   end
       
   864   ShowMission(loc("The Shadow Falls"), loc("Under Construction"), loc("Return to Leaks A Lot!") .. "|" .. ctrl, 1, 6000)
   848 end
   865 end
   849 
   866 
   850 function CheckNeedWeapons()
   867 function CheckNeedWeapons()
   851   if stage == loseStage then
   868   if stage == loseStage then
   852     return false
   869     return false
   872 
   889 
   873 function DoReadyForStronglings()
   890 function DoReadyForStronglings()
   874   if stage == loseStage then
   891   if stage == loseStage then
   875     return
   892     return
   876   end
   893   end
   877   ShowMission(loc("The Shadow Falls"), loc("The guardian"), loc("Protect yourselves!|Grenade hint: Set the timer with [1-5], aim with [Up]/[Down] and hold [Space] to set power").."|"..loc("Leaks A Lot must survive!"), 1, 8000)
   894 
       
   895   ShowMission(loc("The Shadow Falls"), loc("The guardian"), loc("Defeat the cannibals!") .."|".. loc("Leaks A Lot must survive!") .. "|" .. grenadeHint, 1, 12000)
   878   AddAmmo(dense, amSkip, 100)
   896   AddAmmo(dense, amSkip, 100)
   879   AddAmmo(dense, amSwitch, 100)
   897   AddAmmo(dense, amSwitch, 100)
   880   AddAmmo(leaks, amSkip, 100)
   898   AddAmmo(leaks, amSkip, 100)
   881   AddAmmo(leaks, amSwitch, 100)
   899   AddAmmo(leaks, amSwitch, 100)
   882   stage = duoStage
   900   stage = duoStage
  1025   AddEvent(CheckLeaksDead, {}, DoDead, {}, 0)
  1043   AddEvent(CheckLeaksDead, {}, DoDead, {}, 0)
  1026   AddEvent(CheckDenseDead, {}, DoDead, {}, 0)
  1044   AddEvent(CheckDenseDead, {}, DoDead, {}, 0)
  1027   AddAnim(startDialogue)
  1045   AddAnim(startDialogue)
  1028   AddFunction({func = AfterStartDialogue, args = {}})
  1046   AddFunction({func = AfterStartDialogue, args = {}})
  1029   AddEvent(CheckBrainiacDead, {}, DoBrainiacDead, {}, 0)
  1047   AddEvent(CheckBrainiacDead, {}, DoBrainiacDead, {}, 0)
  1030   ShowMission(loc("The Shadow Falls"), loc("The First Encounter"), loc("Survive!|Hint: Cinematics can be skipped with the [Precise] key."), 1, 0)
  1048   local hint
       
  1049   if INTERFACE == "touch" then
       
  1050      -- FIXME: No precise key available in Touch yet.
       
  1051      hint = ""
       
  1052   else
       
  1053      hint = "|" .. loc("Hint: Cinematics can be skipped with the [Precise] key.")
       
  1054   end
       
  1055   ShowMission(loc("The Shadow Falls"), loc("The First Encounter"), loc("Survive!") .. hint, 1, 0)
  1031 end
  1056 end
  1032 
  1057 
  1033 function onGameTick()
  1058 function onGameTick()
  1034   AnimUnWait()
  1059   AnimUnWait()
  1035   if ShowAnimation() == false then
  1060   if ShowAnimation() == false then