# HG changeset patch # User Periklis Ntanasis # Date 1377472091 -10800 # Node ID 8d8bad7d78dea77c952b29ac9cde6e674130fb5e # Parent da3d39667881dc1f43230fed120b10c9fec7807b more chanllenge details in ice02 diff -r da3d39667881 -r 8d8bad7d78de share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/ice02.lua --- a/share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/ice02.lua Sat Aug 24 06:36:02 2013 +0300 +++ b/share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/ice02.lua Mon Aug 26 02:08:11 2013 +0300 @@ -15,11 +15,17 @@ local totalTime = 15000 local totalSaucers = 3 local gameEnded = false +local RED = 0xff0000ff +local GREEN = 0x38d61cff +local challengeObjectives = loc("To win the game you have to pass into the rings in time").. + "|"..loc("You'll get extra time in case you need it when you pass a ring").."|".. + loc("Every 2 rings, the ring color will be green and you'll get an extra flying saucer").."|".. + loc("Use space button twice to change flying saucer while being on air") -- dialogs local dialog01 = {} -- mission objectives local goals = { - [dialog01] = {missionName, loc("Getting ready"), loc("Use your saucer and pass from the rings!"), 1, 4500}, + [dialog01] = {missionName, loc("Getting ready"), challengeObjectives, 1, 4500}, } -- hogs local hero = {} @@ -89,6 +95,7 @@ function onGameStart() AnimWait(hero.gear, 3000) FollowGear(hero.gear) + ShowMission(missionName, loc("Challenge Objectives"), challengeObjectives, -amSkip, 0) AddEvent(onHeroDeath, {hero.gear}, heroDeath, {hero.gear}, 0) @@ -175,11 +182,12 @@ -- DIALOG 01 - Start, some story telling AddSkipFunction(dialog01, Skipanim, {dialog01}) table.insert(dialog01, {func = AnimWait, args = {hero.gear, 3000}}) - table.insert(dialog01, {func = AnimCaption, args = {hero.gear, loc("In the ice planet flying saucer stadium..."), 5000}}) + table.insert(dialog01, {func = AnimCaption, args = {hero.gear, loc("In the Ice Planet flying saucer stadium..."), 5000}}) table.insert(dialog01, {func = AnimSay, args = {ally.gear, loc("This is the olympic stadium of saucer flying..."), SAY_SAY, 4000}}) table.insert(dialog01, {func = AnimSay, args = {ally.gear, loc("All the saucer pilots dream one day to come here and compete with the best!"), SAY_SAY, 5000}}) table.insert(dialog01, {func = AnimSay, args = {ally.gear, loc("Now you have the chance to try and get the place that you deserve between the best..."), SAY_SAY, 6000}}) table.insert(dialog01, {func = AnimCaption, args = {hero.gear, loc("Use the saucer and pass from the rings..."), 5000}}) + table.insert(dialog01, {func = AnimCaption, args = {hero.gear, loc("Pause the game by pressing \"P\" for more details"), 5000}}) table.insert(dialog01, {func = AnimSay, args = {ally.gear, loc("... can you do it?"), SAY_SAY, 2000}}) table.insert(dialog01, {func = AnimWait, args = {hero.gear, 500}}) table.insert(dialog01, {func = startFlying, args = {hero.gear}}) @@ -201,24 +209,34 @@ if currentWaypoint < 16 then local wp = waypoints[currentWaypoint] wp.gear = AddVisualGear(1,1,vgtCircle,1,true) - SetVisualGearValues(wp.gear, wp.x,wp.y, 20, 200, 0, 0, 100, radius, 3, 0xff0000ff) -- add bonus time and "fuel" if currentWaypoint % 2 == 0 then + PlaySound(sndBump) -- what's the crate sound? + SetVisualGearValues(wp.gear, wp.x,wp.y, 20, 200, 0, 0, 100, radius, 3, RED) AddAmmo(hero.gear, amJetpack, GetAmmoCount(hero.gear, amJetpack)+1) totalSaucers = totalSaucers + 1 + local message = loc("Got 1 more saucer") if TurnTimeLeft <= 22000 then TurnTimeLeft = TurnTimeLeft + 8000 totalTime = totalTime + 8000 - end + message = message..loc(" and 8 more seconds added to the clock") + end + AnimCaption(hero.gear, message, 4000) else + SetVisualGearValues(wp.gear, wp.x,wp.y, 20, 200, 0, 0, 100, radius, 3, GREEN) if TurnTimeLeft <= 16000 then TurnTimeLeft = TurnTimeLeft + 6000 totalTime = totalTime + 6000 + if currentWaypoint ~= 1 then + AnimCaption(hero.gear, loc("6 more seconds added to the clock"), 4000) + end end end radius = radius - 4 currentWaypoint = currentWaypoint + 1 return true + else + AnimCaption(hero.gear, loc("Congratulations, you won!"), 4000) end return false end