author | Periklis Ntanasis <pntanasis@gmail.com> |
Thu, 22 Aug 2013 23:46:34 +0300 | |
branch | spacecampaign |
changeset 9566 | 5c50949cfd07 |
parent 9564 | 114c79f10dcc |
child 9568 | 58cdc9332a54 |
permissions | -rw-r--r-- |
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
1 |
------------------- ABOUT ---------------------- |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
2 |
-- |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
3 |
-- This is the mission to acquire the last part. |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
4 |
-- This mission is the cameo of Professor Hogevil |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
5 |
-- who has took hostages H and Dr. Cornelius. |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
6 |
-- Hog Solo has to defeat him and his thugs. |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
7 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
8 |
HedgewarsScriptLoad("/Scripts/Locale.lua") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
9 |
HedgewarsScriptLoad("/Scripts/Animate.lua") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
10 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
11 |
----------------- VARIABLES -------------------- |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
12 |
-- globals |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
13 |
local campaignName = loc("A Space Adventure") |
9566 | 14 |
local missionName = loc("Death planet") |
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
15 |
-- dialogs |
9566 | 16 |
local dialog01 = {} |
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
17 |
-- missions objectives |
9566 | 18 |
local goals = { |
19 |
[dialog01] = {missionName, loc("The final part"), loc("Defeat Professor Hogevil!"), 1, 4500}, |
|
20 |
} |
|
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
21 |
-- crates |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
22 |
local portalCrate = {x = 1520, y = 1950} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
23 |
local cakeCrate = {x = 325, y = 1500} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
24 |
-- hogs |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
25 |
local hero = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
26 |
local paoth1 = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
27 |
local paoth2 = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
28 |
local professor = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
29 |
local thug1 = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
30 |
local thug2 = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
31 |
local thug3 = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
32 |
local thug4 = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
33 |
local thug5 = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
34 |
local thug6 = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
35 |
local thug7 = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
36 |
local thugs = { thug1, thug2, thug3, thug4, thug5, thug6, thug7 } |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
37 |
-- teams |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
38 |
local teamA = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
39 |
local teamB = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
40 |
local teamC = {} |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
41 |
-- hedgehogs values |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
42 |
hero.name = "Hog Solo" |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
43 |
hero.x = 520 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
44 |
hero.y = 845 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
45 |
hero.dead = false |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
46 |
paoth1.name = "H" |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
47 |
paoth1.x = 3730 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
48 |
paoth1.y = 1480 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
49 |
paoth2.name = "Dr. Cornelius" |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
50 |
paoth2.x = 3800 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
51 |
paoth2.y = 1480 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
52 |
professor.name = "Prof. Hogevil" |
9564
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
53 |
--professor.x = 3630 |
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
54 |
--professor.y = 1480 |
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
55 |
professor.dead = false |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
56 |
thug1.x = 1265 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
57 |
thug1.y = 1400 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
58 |
thug1.health = 100 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
59 |
thug2.x = 2035 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
60 |
thug2.y = 1320 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
61 |
thug2.health = 100 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
62 |
thug3.x = 1980 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
63 |
thug3.y = 815 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
64 |
thug3.health = 35 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
65 |
thug3.turnLeft = true |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
66 |
thug4.x = 2830 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
67 |
thug4.y = 1960 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
68 |
thug4.health = 80 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
69 |
thug5.x = 2890 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
70 |
thug5.y = 1960 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
71 |
thug5.health = 80 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
72 |
thug6.x = 2940 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
73 |
thug6.y = 1960 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
74 |
thug6.health = 80 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
75 |
thug7.x = 2990 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
76 |
thug7.y = 1960 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
77 |
thug7.health = 80 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
78 |
teamA.name = loc("Hog Solo") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
79 |
teamA.color = tonumber("38D61C",16) -- green |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
80 |
teamB.name = loc("PAotH") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
81 |
teamB.color = tonumber("FF0000",16) -- red |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
82 |
teamC.name = loc("Professor") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
83 |
teamC.color = tonumber("0033FF",16) -- blue |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
84 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
85 |
-------------- LuaAPI EVENT HANDLERS ------------------ |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
86 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
87 |
function onGameInit() |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
88 |
Seed = 1 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
89 |
TurnTime = 25000 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
90 |
CaseFreq = 0 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
91 |
MinesNum = 3 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
92 |
MinesTime = 1500 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
93 |
Explosives = 2 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
94 |
Delay = 3 |
9564
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
95 |
HealthCaseAmount = 50 |
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
96 |
SuddenDeathTurns = 100 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
97 |
Map = "death01_map" |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
98 |
Theme = "Hell" |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
99 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
100 |
-- Hog Solo |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
101 |
AddTeam(teamA.name, teamA.color, "Bone", "Island", "HillBilly", "cm_birdy") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
102 |
hero.gear = AddHog(hero.name, 0, 100, "war_desertgrenadier1") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
103 |
AnimSetGearPosition(hero.gear, hero.x, hero.y) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
104 |
-- PAotH |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
105 |
AddTeam(teamB.name, teamB.color, "Bone", "Island", "HillBilly", "cm_birdy") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
106 |
paoth1.gear = AddHog(paoth1.name, 0, 100, "war_desertgrenadier1") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
107 |
AnimSetGearPosition(paoth1.gear, paoth1.x, paoth1.y) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
108 |
HogTurnLeft(paoth1.gear, true) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
109 |
paoth2.gear = AddHog(paoth2.name, 0, 100, "war_desertgrenadier1") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
110 |
AnimSetGearPosition(paoth2.gear, paoth2.x, paoth2.y) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
111 |
HogTurnLeft(paoth2.gear, true) |
9564
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
112 |
-- Professor and Thugs |
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
113 |
AddTeam(teamC.name, teamC.color, "Bone", "Island", "HillBilly", "cm_birdy") |
9564
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
114 |
professor.human = AddHog(professor.name, 0, 300, "war_desertgrenadier1") |
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
115 |
AnimSetGearPosition(professor.human, hero.x + 70, hero.y) |
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
116 |
HogTurnLeft(professor.human, true) |
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
117 |
AddTeam(teamC.name, teamC.color, "Bone", "Island", "HillBilly", "cm_birdy") |
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
118 |
professor.bot = AddHog(professor.name, 1, 300, "war_desertgrenadier1") |
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
119 |
AnimSetGearPosition(professor.bot, paoth1.x - 100, paoth1.y) |
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
120 |
HogTurnLeft(professor.bot, true) |
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
121 |
professor.gear = professor.bot |
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
122 |
for i=1,table.getn(thugs) do |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
123 |
thugs[i].gear = AddHog("thug #"..i, 1, thugs[i].health, "war_desertgrenadier1") |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
124 |
AnimSetGearPosition(thugs[i].gear, thugs[i].x, thugs[i].y) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
125 |
HogTurnLeft(thugs[i].gear, not thugs[i].turnLeft) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
126 |
end |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
127 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
128 |
AnimInit() |
9566 | 129 |
AnimationSetup() |
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
130 |
end |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
131 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
132 |
function onGameStart() |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
133 |
AnimWait(hero.gear, 3000) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
134 |
FollowGear(hero.gear) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
135 |
|
9562 | 136 |
AddEvent(onHeroDeath, {hero.gear}, heroDeath, {hero.gear}, 0) |
137 |
AddEvent(onEnemiesDeath, {hero.gear}, enemiesDeath, {hero.gear}, 0) |
|
138 |
||
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
139 |
-- add crates |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
140 |
SpawnAmmoCrate(portalCrate.x, portalCrate.y, amPortalGun) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
141 |
SpawnAmmoCrate(cakeCrate.x, cakeCrate.y, amCake) |
9564
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
142 |
SpawnHealthCrate(cakeCrate.x + 40, cakeCrate.y) |
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
143 |
-- add explosives |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
144 |
AddGear(1900, 850, gtExplosives, 0, 0, 0, 0) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
145 |
AddGear(1900, 800, gtExplosives, 0, 0, 0, 0) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
146 |
AddGear(1900, 750, gtExplosives, 0, 0, 0, 0) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
147 |
AddGear(1900, 710, gtExplosives, 0, 0, 0, 0) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
148 |
-- add mines |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
149 |
AddGear(3520, 1650, gtMine, 0, 0, 0, 0) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
150 |
AddGear(3480, 1680, gtMine, 0, 0, 0, 0) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
151 |
AddGear(3440, 1690, gtMine, 0, 0, 0, 0) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
152 |
AddGear(3400, 1710, gtMine, 0, 0, 0, 0) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
153 |
-- add girders |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
154 |
PlaceGirder(3770, 1370, 4) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
155 |
PlaceGirder(3700, 1460, 6) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
156 |
PlaceGirder(3840, 1460, 6) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
157 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
158 |
-- add ammo |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
159 |
-- hero ammo |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
160 |
AddAmmo(hero.gear, amRope, 2) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
161 |
AddAmmo(hero.gear, amBazooka, 3) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
162 |
AddAmmo(hero.gear, amParachute, 1) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
163 |
AddAmmo(hero.gear, amGrenade, 6) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
164 |
AddAmmo(hero.gear, amDEagle, 4) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
165 |
-- evil ammo |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
166 |
AddAmmo(professor.gear, amRope, 4) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
167 |
AddAmmo(professor.gear, amBazooka, 8) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
168 |
AddAmmo(professor.gear, amSwitch, 100) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
169 |
AddAmmo(professor.gear, amGrenade, 8) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
170 |
AddAmmo(professor.gear, amDEagle, 8) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
171 |
|
9564
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
172 |
HideHog(professor.bot) |
9566 | 173 |
--DeleteGear(professor.human) |
9564
114c79f10dcc
second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9562
diff
changeset
|
174 |
--RestoreHog(professor.bot) |
9566 | 175 |
AddAnim(dialog01) |
176 |
||
9558
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
177 |
SendHealthStatsOff() |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
178 |
end |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
179 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
180 |
function onNewTurn() |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
181 |
if CurrentHedgehog == paoth1.gear or CurrentHedgehog == paoth2.gear then |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
182 |
TurnTimeLeft = 0 |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
183 |
end |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
184 |
end |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
185 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
186 |
function onGameTick() |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
187 |
AnimUnWait() |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
188 |
if ShowAnimation() == false then |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
189 |
return |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
190 |
end |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
191 |
ExecuteAfterAnimations() |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
192 |
CheckEvents() |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
193 |
end |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
194 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
195 |
function onAmmoStoreInit() |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
196 |
SetAmmo(amCake, 0, 0, 0, 1) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
197 |
SetAmmo(amPortalGun, 0, 0, 0, 1) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
198 |
end |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
199 |
|
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
200 |
function onGearDelete(gear) |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
201 |
if gear == hero.gear then |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
202 |
hero.dead = true |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
203 |
elseif gear == professor.gear then |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
204 |
professor.dead = true |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
205 |
end |
455f1260ef43
forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff
changeset
|
206 |
end |
9560
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
207 |
|
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
208 |
function onPrecise() |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
209 |
if GameTime > 3000 then |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
210 |
SetAnimSkip(true) |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
211 |
end |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
212 |
end |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
213 |
|
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
214 |
-------------- EVENTS ------------------ |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
215 |
|
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
216 |
function onHeroDeath(gear) |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
217 |
if hero.dead then |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
218 |
return true |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
219 |
end |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
220 |
return false |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
221 |
end |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
222 |
|
9562 | 223 |
function onEnemiesDeath(gear) |
224 |
local allDead = true |
|
225 |
if professor.dead then |
|
226 |
for i=1,table.getn(thugs) do |
|
227 |
if GetHealth(thugs[i]) then |
|
228 |
allDead = false |
|
229 |
break |
|
230 |
end |
|
231 |
end |
|
232 |
else |
|
233 |
allDead = false |
|
234 |
end |
|
235 |
return allDead |
|
236 |
end |
|
237 |
||
9560
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
238 |
-------------- ACTIONS ------------------ |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
239 |
|
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
240 |
function heroDeath(gear) |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
241 |
SendStat('siGameResult', loc("Hog Solo lost, try again!")) --1 |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
242 |
SendStat('siCustomAchievement', loc("To win the game you have to eliminate your enemies")) --11 |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
243 |
SendStat('siPlayerKills','1',teamC.name) |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
244 |
SendStat('siPlayerKills','0',teamA.name) |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
245 |
EndGame() |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
246 |
end |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
247 |
|
9562 | 248 |
function enemiesDeath(gear) |
249 |
SendStat('siGameResult', loc("Congratulations, you won!")) --1 |
|
250 |
SendStat('siCustomAchievement', loc("You have successfuly eliminated Professor Hogevil")) --11 |
|
251 |
SendStat('siCustomAchievement', loc("You have rescued H and Dr. Cornelius")) --11 |
|
252 |
SendStat('siCustomAchievement', loc("You have acquired the device")) --11 |
|
253 |
SendStat('siPlayerKills','1',teamA.name) |
|
254 |
SendStat('siPlayerKills','0',teamC.name) |
|
255 |
EndGame() |
|
256 |
end |
|
257 |
||
9560
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
258 |
-------------- ANIMATIONS ------------------ |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
259 |
|
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
260 |
function Skipanim(anim) |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
261 |
if goals[anim] ~= nil then |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
262 |
ShowMission(unpack(goals[anim])) |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
263 |
end |
9566 | 264 |
startBattle() |
9560
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
265 |
end |
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
266 |
|
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
267 |
function AnimationSetup() |
9566 | 268 |
-- DIALOG01, GAME START, INTRODUCTION |
269 |
AddSkipFunction(dialog01, Skipanim, {dialog01}) |
|
270 |
table.insert(dialog01, {func = AnimWait, args = {hero.gear, 3000}}) |
|
271 |
table.insert(dialog01, {func = AnimCaption, args = {hero.gear, loc("Somewhere in the Death Planet, where no other hog lives..."), 5000}}) |
|
272 |
table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("Welcome HogSolo, surpised to see me?"), SAY_SAY, 4000}}) |
|
273 |
table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("As you can see I have survived our last encounter and I had time to plot my master plan!"), SAY_SAY, 4000}}) |
|
274 |
table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("I've thought that the best way to get the device is to let you collect most of the parts for me!"), SAY_SAY, 4000}}) |
|
275 |
table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("So, now I got the last part and I have your friends captured..."), SAY_SAY, 4000}}) |
|
276 |
table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("So, will you give me the other parts?"), SAY_SAY, 4000}}) |
|
277 |
table.insert(dialog01, {func = AnimWait, args = {hero.gear, 3000}}) |
|
278 |
table.insert(dialog01, {func = AnimSay, args = {hero.gear, loc("I will never hand you the parts!"), SAY_SAY, 4000}}) |
|
279 |
table.insert(dialog01, {func = AnimWait, args = {professor.human, 3000}}) |
|
280 |
table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("Then prepare for battle!"), SAY_SAY, 4000}}) |
|
281 |
table.insert(dialog01, {func = startBattle, args = {}}) |
|
9560
5872edd6864e
event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents:
9558
diff
changeset
|
282 |
end |
9566 | 283 |
|
284 |
-------------- OTHER FUNCTIONS ----------------- |
|
285 |
||
286 |
function startBattle() |
|
287 |
DeleteGear(professor.human) |
|
288 |
RestoreHog(professor.bot) |
|
289 |
AnimSwitchHog(professor.gear) |
|
290 |
TurnTimeLeft = 0 |
|
291 |
end |