share/hedgewars/Data/Missions/Campaign/A_Space_Adventure/fruit02.lua
author Periklis Ntanasis <pntanasis@gmail.com>
Wed, 14 Aug 2013 23:47:54 +0300
branchspacecampaign
changeset 9527 676fc574ff42
child 9529 e95aab9130d8
permissions -rw-r--r--
fruit planet part 2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9527
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
     1
------------------- ABOUT ----------------------
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
     2
--
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
     3
-- In this adventure hero gets the lost part with
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
     4
-- the help of the green bananas hogs.
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
     5
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
     6
HedgewarsScriptLoad("/Scripts/Locale.lua")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
     7
HedgewarsScriptLoad("/Scripts/Animate.lua")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
     8
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
     9
----------------- VARIABLES --------------------
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    10
-- globals
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    11
local campaignName = loc("A Space Adventure")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    12
local missionName = loc("Fruit planet, Searching the Part!")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    13
local inBattle = false
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    14
-- dialogs
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    15
local dialog01 = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    16
local dialog02 = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    17
local dialog03 = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    18
-- mission objectives
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    19
local goals = {
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    20
	[dialog01] = {missionName, loc("Ready for Battle?"), loc("Walk left if you want to join Captain Lime or right if you want to decline his offer"), 1, 4000},
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    21
	[dialog02] = {missionName, loc("Battle Starts Now!"), loc("You have choose to fight! Lead the Green Bananas to battle and try not to let them be killed"), 1, 4000},
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    22
	[dialog03] = {missionName, loc("Ready for Battle?"), loc("You have choose to flee... Unfortunately the only place where you can launch your saucer is in the most left side of the map"), 1, 4000},
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    23
}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    24
-- crates types=[0:ammo,1:utility,2:health]
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    25
local crates = {
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    26
	{type = 0, name = amDEagle, x = 1680, y = 1650},
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    27
	{type = 0, name = amGirder, x = 1680, y = 1160},
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    28
	{type = 0, name = amWatermelon, x = 1360, y = 1870},
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    29
	{type = 0, name = amRope, x = 1400, y = 1870},
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    30
}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    31
-- hogs
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    32
local hero = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    33
local green1 = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    34
local green2 = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    35
local green3 = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    36
-- teams
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    37
local teamA = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    38
local teamB = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    39
local teamC = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    40
local teamD = {}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    41
-- hedgehogs values
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    42
hero.name = "Hog Solo"
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    43
hero.x = 1200
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    44
hero.y = 820
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    45
hero.dead = false
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    46
green1.name = "Captain Lime"
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    47
green1.x = 1050
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    48
green1.y = 820
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    49
green2.name = "Mister Pear"
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    50
green2.x = 1350
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    51
green2.y = 820
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    52
green3.name = "Lady Mango"
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    53
green3.x = 1450
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    54
green3.y = 820
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    55
local redHedgehogs = {
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    56
	{ name = "Poisonous Apple" },
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    57
	{ name = "Dark Strawberry" },
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    58
	{ name = "Watermelon Heart" },
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    59
	{ name = "Deadly Grape" }
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    60
}
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    61
teamA.name = loc("Hog Solo and GB")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    62
teamA.color = tonumber("38D61C",16) -- green
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    63
teamB.name = loc("Captain Lime")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    64
teamB.color = tonumber("38D61C",16) -- green
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    65
teamC.name = loc("Fruit Assasins")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    66
teamC.color = tonumber("FF0000",16) -- red
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    67
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    68
function onGameInit()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    69
	Seed = 1
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    70
	TurnTime = 20000
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    71
	CaseFreq = 0
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    72
	MinesNum = 0
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    73
	MinesTime = 1
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    74
	Explosives = 0
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    75
	Delay = 3
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    76
	SuddenDeathTurns = 100
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    77
	HealthCaseAmount = 50
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    78
	Map = "fruit02_map"
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    79
	Theme = "Fruit"
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    80
	
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    81
	-- Hog Solo and Green Bananas
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    82
	AddTeam(teamA.name, teamA.color, "Bone", "Island", "HillBilly", "cm_birdy")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    83
	hero.gear = AddHog(hero.name, 0, 100, "war_desertgrenadier1")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    84
	AnimSetGearPosition(hero.gear, hero.x, hero.y)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    85
	HogTurnLeft(hero.gear, true)	
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    86
	green2.gear = AddHog(green2.name, 0, 100, "war_desertgrenadier1")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    87
	AnimSetGearPosition(green2.gear, green2.x, green2.y)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    88
	HogTurnLeft(green2.gear, true)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    89
	green3.gear = AddHog(green3.name, 0, 100, "war_desertgrenadier1")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    90
	AnimSetGearPosition(green3.gear, green3.x, green3.y)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    91
	HogTurnLeft(green3.gear, true)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    92
	-- Captain Lime
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    93
	AddTeam(teamB.name, teamB.color, "Bone", "Island", "HillBilly", "cm_birdy")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    94
	green1.gear =  AddHog(green1.name, 0, 100, "war_desertgrenadier1")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    95
	AnimSetGearPosition(green1.gear, green1.x, green1.y)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    96
	-- Fruit Assasins
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    97
	AddTeam(teamC.name, teamC.color, "Bone", "Island", "HillBilly", "cm_birdy")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    98
	for i=1,table.getn(redHedgehogs) do
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
    99
		redHedgehogs[i].gear =  AddHog(redHedgehogs[i].name, 0, 100, "war_desertgrenadier1")
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   100
		AnimSetGearPosition(redHedgehogs[i].gear, 2010 + 50*i, 630)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   101
	end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   102
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   103
	AnimInit()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   104
	--AnimationSetup()	
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   105
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   106
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   107
function onGameStart()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   108
	AnimWait(hero.gear, 3000)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   109
	FollowGear(hero.gear)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   110
	
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   111
	AddEvent(onHeroDeath, {hero.gear}, heroDeath, {hero.gear}, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   112
	
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   113
	-- Hog Solo and GB weapons
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   114
	AddAmmo(hero.gear, amFirePunch, 3)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   115
	AddAmmo(hero.gear, amSwitch, 100)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   116
	-- Assasins weapons
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   117
	AddAmmo(redHedgehogs[1].gear, amBazooka, 6)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   118
	AddAmmo(redHedgehogs[1].gear, amGrenade, 6)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   119
	for i=1,table.getn(redHedgehogs) do
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   120
		HideHog(redHedgehogs[i].gear)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   121
	end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   122
	
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   123
	-- place crates
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   124
	for i=1,table.getn(crates) do
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   125
		SpawnAmmoCrate(crates[i].x, crates[i].y, crates[i].name)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   126
	end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   127
	
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   128
	-- explosives
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   129
	-- I wanted to use FindPlace but doesn't accept height values...
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   130
	local x1 = 950
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   131
	local x2 = 1305
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   132
	local y1 = 1210
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   133
	local y2 = 1620
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   134
	while true do
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   135
		if y2<y1 then
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   136
			break
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   137
		end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   138
		if x2<x1 then
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   139
			x2 = 1305
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   140
			y2 = y2 -60
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   141
		end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   142
		if not TestRectForObstacle(x2+25, y2+25, x2-25, y2-25, true) then
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   143
			AddGear(x2, y2, gtExplosives, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   144
		end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   145
		x2 = x2 - 30
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   146
	end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   147
	AddGear(3128, 1680, gtExplosives, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   148
	--mines
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   149
	AddGear(3135, 1680, gtMine, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   150
	AddGear(3145, 1680, gtMine, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   151
	AddGear(3155, 1680, gtMine, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   152
	AddGear(3165, 1680, gtMine, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   153
	AddGear(3175, 1680, gtMine, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   154
	AddGear(3115, 1680, gtMine, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   155
	AddGear(3105, 1680, gtMine, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   156
	AddGear(3095, 1680, gtMine, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   157
	AddGear(3085, 1680, gtMine, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   158
	AddGear(3075, 1680, gtMine, 0, 0, 0, 0)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   159
	
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   160
	--AddAnim(dialog01)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   161
	SendHealthStatsOff()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   162
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   163
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   164
function onNewTurn()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   165
	if CurrentHedgehog == green1.gear then
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   166
		TurnTimeLeft = 0
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   167
	elseif not inBattle then
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   168
		TurnTimeLeft = -1
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   169
	end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   170
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   171
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   172
function onGameTick()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   173
	AnimUnWait()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   174
	if ShowAnimation() == false then
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   175
		return
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   176
	end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   177
	ExecuteAfterAnimations()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   178
	CheckEvents()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   179
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   180
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   181
function onGearDelete(gear)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   182
	if gear == hero.gear then
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   183
		hero.dead = true
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   184
	end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   185
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   186
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   187
function onAmmoStoreInit()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   188
	SetAmmo(amDEagle, 0, 0, 0, 6)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   189
	SetAmmo(amGirder, 0, 0, 0, 3)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   190
	SetAmmo(amRope, 0, 0, 0, 1)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   191
	SetAmmo(amWatermelon, 0, 0, 0, 1)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   192
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   193
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   194
function onPrecise()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   195
	if GameTime > 3000 then
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   196
		SetAnimSkip(true)   
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   197
	end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   198
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   199
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   200
-------------- EVENTS ------------------
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   201
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   202
function onHeroDeath(gear)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   203
	if hero.dead then
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   204
		return true
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   205
	end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   206
	return false
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   207
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   208
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   209
-------------- ACTIONS ------------------
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   210
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   211
function heroDeath(gear)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   212
	EndGame()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   213
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   214
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   215
-------------- ANIMATIONS ------------------
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   216
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   217
function Skipanim(anim)
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   218
	if goals[anim] ~= nil then
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   219
		ShowMission(unpack(goals[anim]))
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   220
    end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   221
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   222
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   223
function AnimationSetup()
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   224
	-- DIALOG 01 - Start, Captain Lime talks explains to Hog Solo
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   225
	AddSkipFunction(dialog01, Skipanim, {dialog01})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   226
	table.insert(dialog01, {func = AnimWait, args = {hero.gear, 3000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   227
	table.insert(dialog01, {func = AnimCaption, args = {hero.gear, loc("Somewhere in the planet of fruits a terrible war is about to begin..."), 5000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   228
	table.insert(dialog01, {func = AnimSay, args = {hero.gear, loc("I was told that as the leader of the king's guard, no one knows this world better than you!"), SAY_SAY, 5000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   229
	table.insert(dialog01, {func = AnimSay, args = {hero.gear, loc("So, I kindly ask for your help."), SAY_SAY, 3000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   230
	table.insert(dialog01, {func = AnimWait, args = {green1.gear, 2000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   231
	table.insert(dialog01, {func = AnimSay, args = {green1.gear, loc("You couldn't have come to a worse time Hog Solo!"), SAY_SAY, 3000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   232
	table.insert(dialog01, {func = AnimSay, args = {green1.gear, loc("The clan of the Red Strawberry wants to take over the dominion and overthrone king Pineapple."), SAY_SAY, 5000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   233
	table.insert(dialog01, {func = AnimSay, args = {green1.gear, loc("Under normal circumstances we could easily defeat them but we have kindly sent most of our men to the kingdom of sand to help to the annual dusting of the king's palace."), SAY_SAY, 8000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   234
	table.insert(dialog01, {func = AnimSay, args = {green1.gear, loc("However the army of Yellow Watermelons is about to attack any moment now."), SAY_SAY, 4000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   235
	table.insert(dialog01, {func = AnimSay, args = {green1.gear, loc("I would gladly help you if we won this battle but under these circumstances I'll only help you if you fight for our side."), SAY_SAY, 6000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   236
	table.insert(dialog01, {func = AnimSay, args = {green1.gear, loc("What do you say? Will you fight for us?"), SAY_SAY, 3000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   237
	table.insert(dialog01, {func = AnimWait, args = {hero.gear, 500}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   238
	table.insert(dialog01, {func = ShowMission, args = {missionName, loc("Ready for Battle?"), loc("Walk left if you want to join Captain Lime or right if you want to decline his offer"), 1, 7000}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   239
	table.insert(dialog01, {func = AnimSwitchHog, args = {hero.gear}})
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   240
end
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   241
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   242
------------- OTHER FUNCTIONS ---------------
676fc574ff42 fruit planet part 2
Periklis Ntanasis <pntanasis@gmail.com>
parents:
diff changeset
   243