author | Wuzzy <Wuzzy2@mail.ru> |
Fri, 20 Jul 2018 02:43:38 +0200 | |
changeset 13521 | d44ca1f04bbe |
parent 13359 | f9a15dcd857c |
child 13588 | 141cdfe0f3ca |
permissions | -rw-r--r-- |
12233 | 1 |
-- Teamwork 2 |
2 |
-- Original scenario by Arkhnen |
|
3 |
||
4 |
HedgewarsScriptLoad("Scripts/Locale.lua") |
|
5 |
||
6 |
local player = nil |
|
7 |
local hlayer = nil |
|
8 |
local enemy = nil |
|
9 |
local Pack = nil |
|
10 |
local help = false |
|
11 |
local GameOver = false |
|
12 |
||
13 |
function onGameInit() |
|
14 |
Seed = 0 |
|
15 |
GameFlags = gfDisableWind |
|
16 |
TurnTime = 600000000 |
|
17 |
CaseFreq = 0 |
|
18 |
MinesNum = 0 |
|
19 |
MinesTime = 0 |
|
20 |
-- Disable Sudden Death |
|
21 |
HealthDecrease = 0 |
|
22 |
WaterRise = 0 |
|
23 |
||
24 |
Explosives = 0 |
|
25 |
Delay = 10 |
|
26 |
Map = "CrazyMission" |
|
27 |
Theme = "CrazyMission" |
|
28 |
||
12591
7510fe66bfbb
Change graves of teams in missions for greater variety
Wuzzy <almikes@aol.com>
parents:
12518
diff
changeset
|
29 |
AddTeam(loc("Feeble Resistance"), 14483456, "Statue", "Island", "Default", "cm_kiwi") |
12233 | 30 |
player = AddHog(loc("Greg"), 0, 30, "NoHat") |
31 |
hlayer = AddHog(loc("Mark"), 0, 40, "NoHat") |
|
32 |
||
12591
7510fe66bfbb
Change graves of teams in missions for greater variety
Wuzzy <almikes@aol.com>
parents:
12518
diff
changeset
|
33 |
AddTeam(loc("Cybernetic Empire"), 1175851, "ring", "Island", "Robot", "cm_binary") |
12233 | 34 |
enemy = AddHog(loc("WatchBot 4000"), 5, 50, "cyborg1") |
35 |
||
36 |
SetGearPosition(player, 180, 555) |
|
37 |
SetGearPosition(enemy, 1500, 914) |
|
38 |
SetGearPosition(hlayer, 333, 555) |
|
39 |
end |
|
40 |
||
41 |
function onGameStart() |
|
12938
e65aa3c3d4e6
Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents:
12591
diff
changeset
|
42 |
Pack = SpawnSupplyCrate(40, 888, amPickHammer) |
e65aa3c3d4e6
Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents:
12591
diff
changeset
|
43 |
SpawnSupplyCrate(90, 888, amBaseballBat) |
e65aa3c3d4e6
Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents:
12591
diff
changeset
|
44 |
SpawnSupplyCrate(822, 750, amBlowTorch) |
e65aa3c3d4e6
Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents:
12591
diff
changeset
|
45 |
SpawnSupplyCrate(700, 580, amJetpack) |
e65aa3c3d4e6
Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents:
12591
diff
changeset
|
46 |
SpawnSupplyCrate(1400, 425, amParachute) |
e65aa3c3d4e6
Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents:
12591
diff
changeset
|
47 |
SpawnSupplyCrate(1900, 770, amDynamite) |
e65aa3c3d4e6
Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents:
12591
diff
changeset
|
48 |
SpawnSupplyCrate(1794, 970, amDynamite) |
12233 | 49 |
|
50 |
ShowMission(loc("Teamwork 2"), loc("Scenario"), loc("Eliminate WatchBot 4000.") .. "|" .. loc("Both your hedgehogs must survive.") .. "|" .. loc("Land mines explode instantly."), -amBaseballBat, 0) |
|
51 |
||
52 |
AddGear(355, 822, gtSMine, 0, 0, 0, 0) |
|
53 |
AddGear(515, 525, gtSMine, 0, 0, 0, 0) |
|
54 |
AddGear(1080, 821, gtMine, 0, 0, 0, 0) |
|
55 |
AddGear(1055, 821, gtMine, 0, 0, 0, 0) |
|
56 |
AddGear(930, 587, gtMine, 0, 0, 0, 0) |
|
57 |
AddGear(955, 556, gtMine, 0, 0, 0, 0) |
|
58 |
AddGear(980, 556, gtMine, 0, 0, 0, 0) |
|
59 |
AddGear(1005, 556, gtMine, 0, 0, 0, 0) |
|
60 |
AddGear(710, 790, gtMine, 0, 0, 0, 0) |
|
61 |
AddGear(685, 790, gtMine, 0, 0, 0, 0) |
|
62 |
AddGear(660, 790, gtMine, 0, 0, 0, 0) |
|
63 |
AddGear(1560, 540, gtMine, 0, 0, 0, 0) |
|
64 |
AddGear(1610, 600, gtMine, 0, 0, 0, 0) |
|
65 |
AddGear(1660, 655, gtMine, 0, 0, 0, 0) |
|
66 |
AddGear(713, 707, gtMine, 0, 0, 0, 0) |
|
67 |
AddGear(1668, 969, gtExplosives, 0, 0, 0, 0) |
|
68 |
AddGear(1668, 906, gtExplosives, 0, 0, 0, 0) |
|
69 |
AddGear(1668, 842, gtExplosives, 0, 0, 0, 0) |
|
70 |
AddGear(1713, 969, gtExplosives, 0, 0, 0, 0) |
|
71 |
SetWind(90) |
|
12358
ebff18a44c1e
Refactor Teamwork 2: No more hacky skipping, set proper ammos for enemy instead
Wuzzy <almikes@aol.com>
parents:
12357
diff
changeset
|
72 |
|
ebff18a44c1e
Refactor Teamwork 2: No more hacky skipping, set proper ammos for enemy instead
Wuzzy <almikes@aol.com>
parents:
12357
diff
changeset
|
73 |
-- The enemy has no weapons and can only skip |
ebff18a44c1e
Refactor Teamwork 2: No more hacky skipping, set proper ammos for enemy instead
Wuzzy <almikes@aol.com>
parents:
12357
diff
changeset
|
74 |
for i=0, AmmoTypeMax do |
ebff18a44c1e
Refactor Teamwork 2: No more hacky skipping, set proper ammos for enemy instead
Wuzzy <almikes@aol.com>
parents:
12357
diff
changeset
|
75 |
if i ~= amNothing and i ~= amSkip then |
ebff18a44c1e
Refactor Teamwork 2: No more hacky skipping, set proper ammos for enemy instead
Wuzzy <almikes@aol.com>
parents:
12357
diff
changeset
|
76 |
AddAmmo(enemy, i, 0) |
ebff18a44c1e
Refactor Teamwork 2: No more hacky skipping, set proper ammos for enemy instead
Wuzzy <almikes@aol.com>
parents:
12357
diff
changeset
|
77 |
end |
ebff18a44c1e
Refactor Teamwork 2: No more hacky skipping, set proper ammos for enemy instead
Wuzzy <almikes@aol.com>
parents:
12357
diff
changeset
|
78 |
end |
12233 | 79 |
end |
80 |
||
81 |
function onGearAdd(gear) |
|
82 |
if GetGearType(gear) == gtJetpack then |
|
83 |
SetHealth(gear, 300) |
|
84 |
end |
|
85 |
end |
|
86 |
||
87 |
function onAmmoStoreInit() |
|
88 |
SetAmmo(amParachute, 1, 0, 0, 2) |
|
89 |
SetAmmo(amSwitch, 9, 0, 0, 0) |
|
90 |
SetAmmo(amSkip, 9, 0, 0, 0) |
|
91 |
SetAmmo(amPickHammer, 0, 0, 0, 1) |
|
92 |
SetAmmo(amBaseballBat, 0, 0, 0, 1) |
|
93 |
SetAmmo(amBlowTorch, 0, 0, 0, 2) |
|
94 |
SetAmmo(amJetpack, 0, 0, 0, 1) |
|
95 |
SetAmmo(amDynamite, 0, 0, 0, 1) |
|
96 |
end |
|
97 |
||
98 |
function onGearDelete(gear) |
|
99 |
if gear == Pack then |
|
13359 | 100 |
HogSay(CurrentHedgehog, loc("This will certainly come in handy."), SAY_THINK) |
12233 | 101 |
end |
12357
7f09d01ecb45
Fix false victory in Teamwork/Teamwork 2 when one of your hogs die in same turn as enemy
Wuzzy <almikes@aol.com>
parents:
12233
diff
changeset
|
102 |
-- Note: The victory sequence is done automatically by Hedgewars |
7f09d01ecb45
Fix false victory in Teamwork/Teamwork 2 when one of your hogs die in same turn as enemy
Wuzzy <almikes@aol.com>
parents:
12233
diff
changeset
|
103 |
if ( ((gear == player) or (gear == hlayer)) and (GameOver == false)) then |
12233 | 104 |
ShowMission(loc("Teamwork 2"), loc("MISSION FAILED"), loc("Oh no! Just try again!"), -amSkip, 0) |
105 |
GameOver = true |
|
106 |
SetHealth(hlayer, 0) |
|
107 |
SetHealth(player, 0) |
|
108 |
end |
|
109 |
end |