share/hedgewars/Data/Maps/Knockball/map.lua
changeset 4502 759c1a3bb156
parent 4350 cdb3d7a39fa2
child 4506 37744d5c877e
equal deleted inserted replaced
4501:53ac7d07e673 4502:759c1a3bb156
       
     1 loadfile(GetDataPath() .. "Scripts/Locale.lua")()
       
     2 
     1 -- Hedgewars - Knockball for 2+ Players
     3 -- Hedgewars - Knockball for 2+ Players
     2 
       
     3 local caption = {
       
     4 	["en"] = "Hedgewars-Knockball",
       
     5 	["de"] = "Hedgewars-Knockball",
       
     6 	["es"] = "Hedgewars-Knockball",
       
     7 	["pl"] = "Hedgewars-Knockball",
       
     8 	["pt_PT"] = "Hedgewars-Knockball",
       
     9 	["sk"] = "Hedgewars-Knockball",
       
    10 	["sv"] = "Hedgewars-Knockball",
       
    11 	["pt_BR"] = "Hedgewars-Knockball"
       
    12 	}
       
    13 
       
    14 local subcaption = {
       
    15 	["en"] = "Not So Friendly Match",
       
    16 	["de"] = "Kein-so-Freundschaftsspiel",
       
    17 	["es"] = "Partido no-tan-amistoso",
       
    18 	["pl"] = "Mecz Nie-Do-Końca Towarzyski",
       
    19 	["pt_PT"] = "Partida não muito amigável",
       
    20 	["sk"] = "Nie tak celkom priateľský zápas",
       
    21 	["sv"] = "En inte så vänlig match",
       
    22 	["pt_BR"] = "Partida não muito amigável"
       
    23 	}
       
    24 
       
    25 local goal = {
       
    26 	["en"] = "Bat balls at your enemies and|push them into the sea!",
       
    27 	["de"] = "Schlage Bälle auf deine Widersacher|und lass sie ins Meer fallen!",
       
    28 	["es"] = "¡Batea pelotas hacia tus enemigos|y hazlos caer al agua!",
       
    29 	["pl"] = "Uderzaj piłkami w swoich przeciwników|i strącaj ich do wody!",
       
    30 	["pt_PT"] = "Bate bolas contra os teus|enimigos e empurra-os ao mar!",
       
    31 	["sk"] = "Loptami triafajte vašich nepriateľov|a zhoďte ich tak do mora!",
       
    32 	["sv"] = "Slå bollar mot dina fiender|och slå ner dem i havet",
       
    33 	["pt_BR"] = "Rebata as bolas em direção ao seus|e derrube-os no mar!"
       
    34 	}
       
    35 
       
    36 local scored = {
       
    37 	["en"] = "%s is out and Team %d|scored a point!| |Score:",
       
    38 	["de"] = "%s ist draußen und Team %d|erhält einen Punkt!| |Punktestand:",
       
    39 	["es"] = "¡%s cayó y Equipo %d|anotó un tanto!| |Puntuación:",
       
    40 	["pl"] = "%s utonął i drużyna %d|zdobyła punkt!| |Punktacja:",
       
    41 	["pt_PT"] = "%s está fora e a equipa %d|soma um ponto!| |Pontuação:",
       
    42 	["sk"] = "%s je mimo hru a tím %d|získal bod!| |Skóre:",
       
    43 	["sv"] = "%s är ute och lag %d|fick ett poäng!| |Poängställning:",
       
    44 	["pt_BR"] = "%s está fora e a Equipe %d|marcou um ponto!| |Pontuação:"
       
    45 	}
       
    46 
       
    47 local failed = {
       
    48 	["en"] = "%s is out and Team %d|scored a penalty!| |Score:",
       
    49 	["de"] = "%s ist draußen und Team %d|erhält eine Strafe!| |Punktestand:",
       
    50 	["es"] = "¡%s cayó y Equipo %d|anotó una falta!| |Puntuación:",
       
    51 	["pl"] = "%s utonął i drużyna %d|dostała punkt karny!| |Punktacja:",
       
    52 	["pt_PT"] = "%s está fora e a equipa %d|perde um ponto!| |Pontuação:",
       
    53 	["sk"] = "%s je mimo hru a tím %d|dostal trestný bod!| |Skóre:",
       
    54 	["sv"] = "%s är ute och lag %d|fick ett straff!| |Poängställning:",
       
    55 	["pt_BR"] = "%s está fora e a Equipe %d|sofreu uma penalidade!| |Pontuação:"
       
    56 	}
       
    57 
       
    58 local function loc(text)
       
    59 	if text == nil then return "**missing**"
       
    60 	elseif text[L] == nil then return text["en"]
       
    61 	else return text[L]
       
    62 	end
       
    63 end
       
    64 
       
    65 ---------------------------------------------------------------
       
    66 
     4 
    67 local score = {[0] = 0, [1] = 0, [2] = 0, [3] = 0, [4] = 0, [5] = 0}
     5 local score = {[0] = 0, [1] = 0, [2] = 0, [3] = 0, [4] = 0, [5] = 0}
    68 
     6 
    69 local ball = nil
     7 local ball = nil
    70 
     8 
    79 	Delay = 500
    17 	Delay = 500
    80 	SuddenDeathTurns = 99999 -- "disable" sudden death
    18 	SuddenDeathTurns = 99999 -- "disable" sudden death
    81 end
    19 end
    82 
    20 
    83 function onGameStart()
    21 function onGameStart()
    84 	ShowMission(loc(caption), loc(subcaption), loc(goal), -amBaseballBat, 0)
    22 	ShowMission(loc("Hedgewars-Knockball"), loc("Not So Friendly Match"), loc("Bat balls at your enemies and|push them into the sea!"), -amBaseballBat, 0)
    85 	started = true
    23 	started = true
    86 end
    24 end
    87 
    25 
    88 function onGameTick()
    26 function onGameTick()
    89 	if ball ~= nil and GetFollowGear() ~= nil then FollowGear(ball) end
    27 	if ball ~= nil and GetFollowGear() ~= nil then FollowGear(ball) end
   116 		local clan = GetHogClan(CurrentHedgehog)
    54 		local clan = GetHogClan(CurrentHedgehog)
   117 		local s
    55 		local s
   118 		if clan ~= nil then
    56 		if clan ~= nil then
   119 			if GetHogClan(CurrentHedgehog) ~= GetHogClan(gear) then
    57 			if GetHogClan(CurrentHedgehog) ~= GetHogClan(gear) then
   120 				score[clan] = score[clan] + 1
    58 				score[clan] = score[clan] + 1
   121 				s = string.format(loc(scored), GetHogName(gear), clan + 1)
    59 				s = string.format(loc("%s is out and Team %d|scored a point!| |Score:"), GetHogName(gear), clan + 1)
   122 			else
    60 			else
   123 				score[clan] = score[clan] - 1
    61 				score[clan] = score[clan] - 1
   124 				s = string.format(loc(failed), GetHogName(gear), clan + 1)
    62 				s = string.format(loc("%s is out and Team %d|scored a penalty!| |Score:"), GetHogName(gear), clan + 1)
   125 			end
    63 			end
   126 			s = s .. " " .. score[0]
    64 			s = s .. " " .. score[0]
   127 			for i = 1, ClansCount - 1 do s = s .. " - " .. score[i] end
    65 			for i = 1, ClansCount - 1 do s = s .. " - " .. score[i] end
   128 			ShowMission(loc(caption), loc(subcaption), s, -amBaseballBat, 0)
    66 			ShowMission(loc("Hedgewars-Knockball"), loc("Not So Friendly Match"), s, -amBaseballBat, 0)
   129 		end
    67 		end
   130 	end
    68 	end
   131 end
    69 end