share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/death01.lua
author Wuzzy <Wuzzy2@mail.ru>
Thu, 08 Mar 2018 01:22:00 +0100
changeset 13103 cf2a58dccc4a
parent 12933 e65aa3c3d4e6
child 13477 b688e2ca9a8d
permissions -rw-r--r--
CTF: Remove tardis and resurrector
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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")
9578
16139270448f save main missions' status
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9574
diff changeset
    10
HedgewarsScriptLoad("/Missions/Campaign/A_Space_Adventure/global_functions.lua")
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    11
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    12
----------------- VARIABLES --------------------
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    13
-- globals
9574
da3d39667881 strings checked, all ok except ice02 that will be probably changed
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9568
diff changeset
    14
local missionName = loc("The last encounter")
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    15
-- dialogs
9566
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
    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
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
    18
local goals = {
12226
3ec0261e01f0 Display mines timer in all missions with non-default timer
Wuzzy <almikes@aol.com>
parents: 12224
diff changeset
    19
	[dialog01] = {missionName, loc("The final part"), loc("Defeat Professor Hogevil!") .. "|" .. loc("Mines time: 1.5 seconds"), 1, 4500},
9566
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
    20
}
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    21
-- crates
9627
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
    22
local teleportCrate = {x = 1935, y = 1830}
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
    23
local drillCrate = {x = 3810, y = 1705}
9625
18f04441636b making death01 easier and less luck dependent to win
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9582
diff changeset
    24
local batCrate = {x = 1975, y = 1830}
18f04441636b making death01 easier and less luck dependent to win
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9582
diff changeset
    25
local blowtorchCrate = {x = 1520, y = 1950}
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    26
local cakeCrate = {x = 325, y = 1500}
9568
58cdc9332a54 description and image
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9566
diff changeset
    27
local ropeCrate = {x = 1860, y = 500}
9625
18f04441636b making death01 easier and less luck dependent to win
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9582
diff changeset
    28
local pickHammerCrate = {x = 1900, y = 400}
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    29
-- hogs
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    30
local hero = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    31
local paoth1 = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    32
local paoth2 = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    33
local professor = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    34
local thug1 = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    35
local thug2 = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    36
local thug3 = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    37
local thug4 = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    38
local thug5 = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    39
local thug6 = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    40
local thug7 = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    41
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
    42
-- teams
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    43
local teamA = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    44
local teamB = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    45
local teamC = {}
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    46
-- hedgehogs values
11692
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
    47
hero.name = loc("Hog Solo")
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    48
hero.x = 520
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    49
hero.y = 845
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    50
hero.dead = false
11692
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
    51
paoth1.name = loc("H")
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    52
paoth1.x = 3730
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    53
paoth1.y = 1480
11692
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
    54
paoth2.name = loc("Dr. Cornelius")
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    55
paoth2.x = 3800
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    56
paoth2.y = 1480
11692
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
    57
professor.name = loc("Prof. Hogevil")
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    58
professor.dead = false
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    59
thug1.x = 1265
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    60
thug1.y = 1400
9627
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
    61
thug1.health = 70
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    62
thug2.x = 2035
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    63
thug2.y = 1320
9627
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
    64
thug2.health = 95
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    65
thug3.x = 1980
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    66
thug3.y = 815
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    67
thug3.health = 35
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    68
thug3.turnLeft = true
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    69
thug4.x = 2830
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    70
thug4.y = 1960
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    71
thug4.health = 80
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    72
thug5.x = 2890
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    73
thug5.y = 1960
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    74
thug5.health = 80
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    75
thug6.x = 2940
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    76
thug6.y = 1960
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    77
thug6.health = 80
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    78
thug7.x = 2990
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    79
thug7.y = 1960
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    80
thug7.health = 80
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    81
teamA.name = loc("Hog Solo")
12571
903a30fb49e6 Fix team colors of most teams in A Space Adventure to denote correct ally status
Wuzzy <almikes@aol.com>
parents: 12538
diff changeset
    82
teamA.color = 0x38D61C -- green
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    83
teamB.name = loc("PAotH")
12571
903a30fb49e6 Fix team colors of most teams in A Space Adventure to denote correct ally status
Wuzzy <almikes@aol.com>
parents: 12538
diff changeset
    84
-- FIXME: PAotH should share color with Hog Solo
903a30fb49e6 Fix team colors of most teams in A Space Adventure to denote correct ally status
Wuzzy <almikes@aol.com>
parents: 12538
diff changeset
    85
teamB.color = 0x0072FF -- blue because otherwise enemies attack them
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    86
teamC.name = loc("Professor")
12571
903a30fb49e6 Fix team colors of most teams in A Space Adventure to denote correct ally status
Wuzzy <almikes@aol.com>
parents: 12538
diff changeset
    87
teamC.color = 0x0072FF -- blue
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    88
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    89
-------------- LuaAPI EVENT HANDLERS ------------------
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    90
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    91
function onGameInit()
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    92
	Seed = 1
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    93
	TurnTime = 25000
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    94
	CaseFreq = 0
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    95
	MinesNum = 3
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    96
	MinesTime = 1500
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    97
	Explosives = 2
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    98
	Delay = 3
9564
114c79f10dcc second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9562
diff changeset
    99
	HealthCaseAmount = 50
12224
d62d6f8ebef1 Disable Sudden Death consistently in all missions which don't require it
Wuzzy <almikes@aol.com>
parents: 12088
diff changeset
   100
	-- Disable Sudden Death
d62d6f8ebef1 Disable Sudden Death consistently in all missions which don't require it
Wuzzy <almikes@aol.com>
parents: 12088
diff changeset
   101
	HealthDecrease = 0
d62d6f8ebef1 Disable Sudden Death consistently in all missions which don't require it
Wuzzy <almikes@aol.com>
parents: 12088
diff changeset
   102
	WaterRise = 0
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   103
	Map = "death01_map"
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   104
	Theme = "Hell"
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   105
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   106
	-- Hog Solo
12587
0b27d8b4f8e7 Use Default voice in A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 12586
diff changeset
   107
	AddTeam(teamA.name, teamA.color, "Simple", "Island", "Default", "hedgewars")
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   108
	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
   109
	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
   110
	-- PAotH
12587
0b27d8b4f8e7 Use Default voice in A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 12586
diff changeset
   111
	AddTeam(teamB.name, teamB.color, "Earth", "Island", "Default", "cm_galaxy")
9568
58cdc9332a54 description and image
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9566
diff changeset
   112
	paoth1.gear = AddHog(paoth1.name, 0, 100, "hair_yellow")
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   113
	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
   114
	HogTurnLeft(paoth1.gear, true)
9568
58cdc9332a54 description and image
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9566
diff changeset
   115
	paoth2.gear = AddHog(paoth2.name, 0, 100, "Glasses")
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   116
	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
   117
	HogTurnLeft(paoth2.gear, true)
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   118
	-- Professor and Thugs
12587
0b27d8b4f8e7 Use Default voice in A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 12586
diff changeset
   119
	AddTeam(teamC.name, teamC.color, "star", "Island", "Default", "cm_sine")
9568
58cdc9332a54 description and image
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9566
diff changeset
   120
	professor.human = AddHog(professor.name, 0, 300, "tophats")
9564
114c79f10dcc second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9562
diff changeset
   121
	AnimSetGearPosition(professor.human, hero.x + 70, hero.y)
114c79f10dcc second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9562
diff changeset
   122
	HogTurnLeft(professor.human, true)
12587
0b27d8b4f8e7 Use Default voice in A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 12586
diff changeset
   123
	AddTeam(teamC.name, teamC.color, "eyecross", "Island", "Default", "cm_sine")
9568
58cdc9332a54 description and image
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9566
diff changeset
   124
	professor.bot = AddHog(professor.name, 1, 300, "tophats")
9564
114c79f10dcc second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9562
diff changeset
   125
	AnimSetGearPosition(professor.bot, paoth1.x - 100, paoth1.y)
114c79f10dcc second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9562
diff changeset
   126
	HogTurnLeft(professor.bot, true)
114c79f10dcc second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9562
diff changeset
   127
	professor.gear = professor.bot
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   128
	for i=1,table.getn(thugs) do
11692
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
   129
		thugs[i].gear = AddHog(string.format(loc("Thug #%d"), i), 1, thugs[i].health, "war_desertgrenadier1")
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   130
		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
   131
		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
   132
	end
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   133
9582
bf314b2258b3 less variables used to save the checkpoints - potential breakage xD
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9578
diff changeset
   134
	initCheckpoint("death01")
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   135
12088
1da37e2ba6fd Fix A Space Adventure Missions allowing player to walk before 1st animation and screw things up
Wuzzy <almikes@aol.com>
parents: 12049
diff changeset
   136
	AnimInit(true)
9566
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   137
	AnimationSetup()
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   138
end
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   139
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   140
function onGameStart()
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   141
	AnimWait(hero.gear, 3000)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   142
	FollowGear(hero.gear)
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   143
9562
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   144
	AddEvent(onHeroDeath, {hero.gear}, heroDeath, {hero.gear}, 0)
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   145
	AddEvent(onEnemiesDeath, {hero.gear}, enemiesDeath, {hero.gear}, 0)
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   146
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   147
	-- add crates
12933
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12587
diff changeset
   148
	SpawnSupplyCrate(teleportCrate.x, teleportCrate.y, amTeleport)
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12587
diff changeset
   149
	SpawnSupplyCrate(drillCrate.x, drillCrate.y, amTeleport)
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12587
diff changeset
   150
	SpawnSupplyCrate(drillCrate.x, drillCrate.y, amDrill)
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12587
diff changeset
   151
	SpawnSupplyCrate(batCrate.x, batCrate.y, amBaseballBat)
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12587
diff changeset
   152
	SpawnSupplyCrate(blowtorchCrate.x, blowtorchCrate.y, amBlowTorch)
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12587
diff changeset
   153
	SpawnSupplyCrate(cakeCrate.x, cakeCrate.y, amCake)
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12587
diff changeset
   154
	SpawnSupplyCrate(ropeCrate.x, ropeCrate.y, amRope)
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12587
diff changeset
   155
	SpawnSupplyCrate(pickHammerCrate.x, pickHammerCrate.y, amPickHammer)
9564
114c79f10dcc second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9562
diff changeset
   156
	SpawnHealthCrate(cakeCrate.x + 40, cakeCrate.y)
9625
18f04441636b making death01 easier and less luck dependent to win
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9582
diff changeset
   157
	SpawnHealthCrate(blowtorchCrate.x + 40, blowtorchCrate.y)
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   158
	-- add explosives
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   159
	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
   160
	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
   161
	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
   162
	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
   163
	-- add mines
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   164
	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
   165
	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
   166
	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
   167
	AddGear(3400, 1710, gtMine, 0, 0, 0, 0)
9627
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
   168
	AddGear(2100, 1730, gtMine, 0, 0, 0, 0)
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
   169
	AddGear(2150, 1730, gtMine, 0, 0, 0, 0)
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
   170
	AddGear(2200, 1750, gtMine, 0, 0, 0, 0)
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   171
	-- add girders
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   172
	PlaceGirder(3770, 1370, 4)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   173
	PlaceGirder(3700, 1460, 6)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   174
	PlaceGirder(3840, 1460, 6)
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   175
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   176
	-- add ammo
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   177
	-- hero ammo
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   178
	AddAmmo(hero.gear, amRope, 2)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   179
	AddAmmo(hero.gear, amBazooka, 3)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   180
	AddAmmo(hero.gear, amParachute, 1)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   181
	AddAmmo(hero.gear, amGrenade, 6)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   182
	AddAmmo(hero.gear, amDEagle, 4)
9626
5fee7cdb4bcb add skip to hero
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9625
diff changeset
   183
	AddAmmo(hero.gear, amSkip, 100)
9630
df942cfac4e6 add bonuses
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9627
diff changeset
   184
	local bonus = tonumber(getBonus(3))
df942cfac4e6 add bonuses
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9627
diff changeset
   185
	if bonus > 0 then
df942cfac4e6 add bonuses
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9627
diff changeset
   186
		SetHealth(hero.gear, 120)
df942cfac4e6 add bonuses
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9627
diff changeset
   187
		AddAmmo(hero.gear, amLaserSight, 1)
df942cfac4e6 add bonuses
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9627
diff changeset
   188
		saveBonus(3, bonus-1)
df942cfac4e6 add bonuses
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9627
diff changeset
   189
	end
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   190
	-- evil ammo
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   191
	AddAmmo(professor.gear, amRope, 4)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   192
	AddAmmo(professor.gear, amBazooka, 8)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   193
	AddAmmo(professor.gear, amSwitch, 100)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   194
	AddAmmo(professor.gear, amGrenade, 8)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   195
	AddAmmo(professor.gear, amDEagle, 8)
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   196
9564
114c79f10dcc second human hog for dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9562
diff changeset
   197
	HideHog(professor.bot)
9566
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   198
	AddAnim(dialog01)
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   199
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   200
	SendHealthStatsOff()
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   201
end
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   202
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   203
function onNewTurn()
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   204
	if CurrentHedgehog == paoth1.gear or CurrentHedgehog == paoth2.gear then
9568
58cdc9332a54 description and image
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9566
diff changeset
   205
		AnimSwitchHog(hero.gear)
12514
d89dabfd07ce Use EndTurn to replace TurnTimeLeft=0 in ASA campaign (fixes #225)
Wuzzy <almikes@aol.com>
parents: 12513
diff changeset
   206
		EndTurn(true)
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   207
	end
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   208
end
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   209
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   210
function onGameTick()
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   211
	AnimUnWait()
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   212
	if ShowAnimation() == false then
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   213
		return
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   214
	end
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   215
	ExecuteAfterAnimations()
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   216
	CheckEvents()
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   217
end
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   218
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   219
function onAmmoStoreInit()
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   220
	SetAmmo(amCake, 0, 0, 0, 1)
9627
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
   221
	SetAmmo(amTeleport, 0, 0, 0, 1)
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
   222
	SetAmmo(amBaseballBat, 0, 0, 0, 4)
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
   223
	SetAmmo(amBlowTorch, 0, 0, 0, 1)
9568
58cdc9332a54 description and image
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9566
diff changeset
   224
	SetAmmo(amRope, 0, 0, 0, 2)
58cdc9332a54 description and image
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9566
diff changeset
   225
	SetAmmo(amPickHammer, 0, 0, 0, 1)
9627
fd8d766a4476 making death01 easier and less luck dependent
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9626
diff changeset
   226
	SetAmmo(amDrill, 0, 0, 0, 1)
9558
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   227
end
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   228
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   229
function onGearDelete(gear)
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   230
	if gear == hero.gear then
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   231
		hero.dead = true
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   232
	elseif gear == professor.gear then
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   233
		professor.dead = true
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   234
	end
455f1260ef43 forgotten file and death planet map and some logic
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   235
end
9560
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   236
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   237
function onPrecise()
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   238
	if GameTime > 3000 then
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   239
		SetAnimSkip(true)
9560
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   240
	end
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   241
end
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   242
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   243
-------------- EVENTS ------------------
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   244
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   245
function onHeroDeath(gear)
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   246
	if hero.dead then
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   247
		return true
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   248
	end
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   249
	return false
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   250
end
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   251
9562
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   252
function onEnemiesDeath(gear)
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   253
	local allDead = true
9754
12702ab1ba5f fix buggy win conditions and stats in death01
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9642
diff changeset
   254
	if GetHealth(hero.gear) and professor.dead then
9562
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   255
		for i=1,table.getn(thugs) do
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   256
			if GetHealth(thugs[i]) then
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   257
				allDead = false
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   258
				break
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   259
			end
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   260
		end
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   261
	else
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   262
		allDead = false
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   263
	end
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   264
	return allDead
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   265
end
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   266
9560
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   267
-------------- ACTIONS ------------------
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   268
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   269
function heroDeath(gear)
9642
8a691e0f117a use consts for TStatInfo enum
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9638
diff changeset
   270
	SendStat(siGameResult, loc("Hog Solo lost, try again!"))
11692
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
   271
	SendStat(siCustomAchievement, loc("To win the game you have to eliminate all your enemies."))
12538
952afc3d2df2 Show correct kill counts in all ASA missions (fixes #147)
Wuzzy <almikes@aol.com>
parents: 12535
diff changeset
   272
	sendSimpleTeamRankings({teamC.name, teamA.name})
9560
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   273
	EndGame()
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   274
end
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   275
9562
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   276
function enemiesDeath(gear)
9578
16139270448f save main missions' status
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9574
diff changeset
   277
	saveCompletedStatus(6)
9642
8a691e0f117a use consts for TStatInfo enum
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9638
diff changeset
   278
	SendStat(siGameResult, loc("Congratulations, you won!"))
11692
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
   279
	SendStat(siCustomAchievement, loc("You have successfully eliminated Professor Hogevil."))
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
   280
	SendStat(siCustomAchievement, loc("You have rescued H and Dr. Cornelius."))
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
   281
	SendStat(siCustomAchievement, loc("You have acquired the last device part."))
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
   282
	SendStat(siCustomAchievement, loc("Now go and play the menu mission to complete the campaign."))
12538
952afc3d2df2 Show correct kill counts in all ASA missions (fixes #147)
Wuzzy <almikes@aol.com>
parents: 12535
diff changeset
   283
	sendSimpleTeamRankings({teamA.name, teamC.name})
9562
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   284
	EndGame()
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   285
end
241ffe433c3d win event
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9560
diff changeset
   286
9560
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   287
-------------- ANIMATIONS ------------------
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   288
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   289
function Skipanim(anim)
12535
baee67bfa5c2 ASA, the final battle: Fix mission panel not appearing if you watched the dialog
Wuzzy <almikes@aol.com>
parents: 12534
diff changeset
   290
	startBattle()
9560
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   291
end
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   292
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   293
function AnimationSetup()
12534
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   294
	local profDiedOnMoon = GetCampaignVar("ProfDiedOnMoon") == "1"
9566
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   295
	-- DIALOG01, GAME START, INTRODUCTION
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   296
	AddSkipFunction(dialog01, Skipanim, {dialog01})
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   297
	table.insert(dialog01, {func = AnimWait, args = {hero.gear, 3000}})
11692
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
   298
	table.insert(dialog01, {func = AnimCaption, args = {hero.gear, loc("Somewhere on the uninhabitable Death Planet ..."), 5000}})
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   299
	table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("Welcome Hog Solo, surprised to see me?"), SAY_SAY, 4000}})
12534
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   300
	if profDiedOnMoon then
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   301
		table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("After you left the moon, my other loyal minions came and resurrected me so I could complete my master plan."), SAY_SAY, 6000}})
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   302
	else
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   303
		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}})
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   304
	end
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   305
	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}})
11692
68eddcdc9f26 Typo fixes for A Space Adventure campaign
Wuzzy <almikes@aol.com>
parents: 9758
diff changeset
   306
	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}})
9574
da3d39667881 strings checked, all ok except ice02 that will be probably changed
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9568
diff changeset
   307
	table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("Will you give me the other parts?"), SAY_SAY, 4000}})
9566
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   308
	table.insert(dialog01, {func = AnimWait, args = {hero.gear, 3000}})
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   309
	table.insert(dialog01, {func = AnimSay, args = {hero.gear, loc("I will never hand you the parts!"), SAY_SAY, 4000}})
9566
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   310
	table.insert(dialog01, {func = AnimWait, args = {professor.human, 3000}})
12534
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   311
	if profDiedOnMoon then
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   312
		table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("Then prepare for battle!"), SAY_SHOUT, 4000}})
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   313
	else
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   314
		table.insert(dialog01, {func = AnimSay, args = {professor.human, loc("Then prepare for battle!"), SAY_SAY, 4000}})
34a91e2b927e ASA, death01: Slightly change professor's response if he got killed on the moon
Wuzzy <almikes@aol.com>
parents: 12515
diff changeset
   315
	end
9758
3b8058b251b8 some more campaign string tweaks
sheepluva
parents: 9754
diff changeset
   316
	table.insert(dialog01, {func = startBattle, args = {}})
9560
5872edd6864e event in case hero dies
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9558
diff changeset
   317
end
9566
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   318
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   319
-------------- OTHER FUNCTIONS -----------------
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   320
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   321
function startBattle()
12535
baee67bfa5c2 ASA, the final battle: Fix mission panel not appearing if you watched the dialog
Wuzzy <almikes@aol.com>
parents: 12534
diff changeset
   322
	ShowMission(unpack(goals[dialog01]))
9566
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   323
	DeleteGear(professor.human)
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   324
	RestoreHog(professor.bot)
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   325
	AnimSwitchHog(professor.gear)
12514
d89dabfd07ce Use EndTurn to replace TurnTimeLeft=0 in ASA campaign (fixes #225)
Wuzzy <almikes@aol.com>
parents: 12513
diff changeset
   326
	EndTurn(true)
9566
5c50949cfd07 dialogs
Periklis Ntanasis <pntanasis@gmail.com>
parents: 9564
diff changeset
   327
end