share/hedgewars/Data/Scripts/Multiplayer/The_Specialists.lua
author mikade
Thu, 30 Jun 2011 05:26:36 +0200
changeset 5362 5f0c46e78e50
parent 5277 09beef0752ab
child 5382 d5321b22aed2
permissions -rw-r--r--
Enable autoswitch on turn start for The Specialists Mode. Remove switch from Engineer wepset to prevent nemo getting combo'd again :)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5277
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
     1
----------------------------------
5362
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
     2
-- THE SPECIALISTS MODE 0.3
5277
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
     3
-- by mikade
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
     4
----------------------------------
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
     5
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
     6
-- version history
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
     7
-----------------
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
     8
-- version 0.1
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
     9
-----------------
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    10
-- concept test
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    11
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    12
----------------
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    13
-- version 0.2
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    14
----------------
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    15
-- added gfRandomOrder to gameflags
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    16
-- removed some deprecated variables/methods
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    17
-- fixed lack of portal reset
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    18
5362
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
    19
----------------
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
    20
-- version 0.3
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
    21
----------------
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
    22
-- added switching on start
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
    23
-- removed switch from engineer weaponset
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
    24
5277
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    25
--------------------
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    26
--TO DO
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    27
--------------------
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    28
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    29
-- add proper gameflag checking, maybe
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    30
-- set crate drops etc.
5362
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
    31
-- add alternative switch
5277
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    32
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    33
loadfile(GetDataPath() .. "Scripts/Locale.lua")()
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    34
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    35
local numhhs = 0 
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    36
local hhs = {} 
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    37
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    38
local currName 
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    39
local lastName
5362
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
    40
local started = false
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
    41
local switchStage = 0
5277
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    42
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    43
function CreateTeam()
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    44
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    45
	currTeam = ""
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    46
	lastTeam = ""
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    47
	z = 0
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    48
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    49
	for i = 0, (numhhs-1) do
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    50
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    51
		currTeam = GetHogTeamName(hhs[i])
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    52
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    53
		if currTeam == lastTeam then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    54
			z = z + 1
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    55
		else
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    56
			z = 1		
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    57
		end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    58
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    59
		if z == 1 then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    60
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    61
			SetHogName(hhs[i],"Soldier")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    62
			SetHogHat(hhs[i], "Vega")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    63
			SetHealth(hhs[i],200)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    64
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    65
		elseif z == 2 then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    66
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    67
			SetHogHat(hhs[i], "Glasses")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    68
			SetHogName(hhs[i],"Engineer")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    69
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    70
		elseif z == 3 then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    71
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    72
			SetHogName(hhs[i],"Ninja")			
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    73
			SetHogHat(hhs[i], "NinjaFull")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    74
			SetHealth(hhs[i],80)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    75
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    76
		elseif z == 4 then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    77
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    78
			SetHogName(hhs[i],"Demo")			
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    79
			SetHogHat(hhs[i], "Skull")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    80
			SetHealth(hhs[i],200)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    81
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    82
		elseif z == 5 then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    83
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    84
			SetHogName(hhs[i],"Sniper")			
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    85
			SetHogHat(hhs[i], "Sniper")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    86
			SetHealth(hhs[i],120)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    87
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    88
		elseif z == 6 then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    89
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    90
			SetHogName(hhs[i],"Saint")			
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    91
			SetHogHat(hhs[i], "angel")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    92
			SetHealth(hhs[i],300)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    93
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    94
		elseif z == 7 then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    95
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    96
			SetHogName(hhs[i],"Pyro")			
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    97
			SetHogHat(hhs[i], "Gasmask")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    98
			SetHealth(hhs[i],150)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
    99
		
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   100
		elseif z == 8 then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   101
		
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   102
			SetHogName(hhs[i],"Loon")			
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   103
			SetHogHat(hhs[i], "clown")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   104
			SetHealth(hhs[i],100)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   105
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   106
		end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   107
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   108
		lastTeam = GetHogTeamName(hhs[i])
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   109
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   110
	end	
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   111
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   112
end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   113
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   114
function ResetAllAmmo()
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   115
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   116
	AddAmmo(CurrentHedgehog, amBazooka, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   117
	AddAmmo(CurrentHedgehog, amGrenade, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   118
	AddAmmo(CurrentHedgehog, amShotgun, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   119
	
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   120
	AddAmmo(CurrentHedgehog, amGirder, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   121
	AddAmmo(CurrentHedgehog, amBlowTorch, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   122
	AddAmmo(CurrentHedgehog, amPickHammer, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   123
	AddAmmo(CurrentHedgehog, amSwitch, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   124
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   125
	AddAmmo(CurrentHedgehog, amRope, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   126
	AddAmmo(CurrentHedgehog, amParachute, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   127
	AddAmmo(CurrentHedgehog, amFirePunch, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   128
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   129
	AddAmmo(CurrentHedgehog, amDynamite, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   130
	AddAmmo(CurrentHedgehog, amDrill, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   131
	AddAmmo(CurrentHedgehog, amMine, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   132
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   133
	AddAmmo(CurrentHedgehog, amSniperRifle, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   134
	AddAmmo(CurrentHedgehog, amDEagle, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   135
	AddAmmo(CurrentHedgehog, amPortalGun, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   136
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   137
	AddAmmo(CurrentHedgehog, amSeduction, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   138
	AddAmmo(CurrentHedgehog, amResurrector, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   139
	AddAmmo(CurrentHedgehog, amInvulnerable, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   140
	
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   141
	AddAmmo(CurrentHedgehog, amFlamethrower, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   142
	AddAmmo(CurrentHedgehog, amMolotov, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   143
	AddAmmo(CurrentHedgehog, amNapalm, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   144
	
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   145
	AddAmmo(CurrentHedgehog, amBaseballBat, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   146
	AddAmmo(CurrentHedgehog, amGasBomb, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   147
	AddAmmo(CurrentHedgehog, amKamikaze, 0)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   148
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   149
end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   150
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   151
function AssignAmmo()
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   152
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   153
	ResetAllAmmo()	
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   154
	n = GetHogName(CurrentHedgehog)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   155
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   156
	AddAmmo(CurrentHedgehog, amSkip,100)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   157
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   158
	if n == "Soldier" then 
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   159
		AddAmmo(CurrentHedgehog, amBazooka,1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   160
		AddAmmo(CurrentHedgehog, amGrenade,1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   161
		AddAmmo(CurrentHedgehog, amShotgun,1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   162
	elseif n == "Engineer" then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   163
		AddAmmo(CurrentHedgehog, amGirder, 2)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   164
		AddAmmo(CurrentHedgehog, amBlowTorch, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   165
		AddAmmo(CurrentHedgehog, amPickHammer, 1)	
5362
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   166
		--AddAmmo(CurrentHedgehog, amSwitch, 2)	
5277
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   167
	elseif n == "Ninja" then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   168
		AddAmmo(CurrentHedgehog, amRope, 100)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   169
		AddAmmo(CurrentHedgehog, amParachute, 100)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   170
		AddAmmo(CurrentHedgehog, amFirePunch, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   171
	elseif n == "Demo" then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   172
		AddAmmo(CurrentHedgehog, amDynamite, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   173
		AddAmmo(CurrentHedgehog, amMine, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   174
		AddAmmo(CurrentHedgehog, amDrill, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   175
	elseif n == "Sniper" then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   176
		AddAmmo(CurrentHedgehog, amSniperRifle, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   177
		AddAmmo(CurrentHedgehog, amDEagle, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   178
		AddAmmo(CurrentHedgehog, amPortalGun, 2)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   179
	elseif n == "Saint" then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   180
		AddAmmo(CurrentHedgehog, amSeduction, 100)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   181
		AddAmmo(CurrentHedgehog, amResurrector, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   182
		AddAmmo(CurrentHedgehog, amInvulnerable, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   183
	elseif n == "Pyro" then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   184
		AddAmmo(CurrentHedgehog, amFlamethrower, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   185
		AddAmmo(CurrentHedgehog, amMolotov, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   186
		AddAmmo(CurrentHedgehog, amNapalm, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   187
	elseif n == "Loon" then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   188
		AddAmmo(CurrentHedgehog, amBaseballBat, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   189
		AddAmmo(CurrentHedgehog, amGasBomb, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   190
		AddAmmo(CurrentHedgehog, amKamikaze, 1)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   191
	end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   192
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   193
end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   194
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   195
function onGameInit()
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   196
	GameFlags = gfRandomOrder + gfResetWeps + gfInfAttack + gfPlaceHog
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   197
	Delay = 10
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   198
end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   199
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   200
function onGameStart()
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   201
   	
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   202
	CreateTeam()
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   203
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   204
	ShowMission	(
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   205
				loc("THE SPECIALISTS"),
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   206
				loc("a Hedgewars mini-game"),
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   207
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   208
				loc("Eliminate the enemy specialists.") .. "|" ..
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   209
				" " .. "|" ..
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   210
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   211
				loc("Game Modifiers: ") .. "|" ..
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   212
				loc("Per-Hog Ammo") .. "|" ..				
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   213
				loc("Weapons Reset") .. "|" ..				
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   214
				loc("Unlimited Attacks") .. "|" ..
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   215
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   216
				"", 4, 4000
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   217
				)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   218
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   219
end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   220
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   221
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   222
function onNewTurn()
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   223
	currName = GetHogName(CurrentHedgehog)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   224
	lastName = GetHogName(CurrentHedgehog)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   225
	AssignAmmo()
5362
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   226
	
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   227
	--AddAmmo(CurrentHedgehog, amSwitch, 1)
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   228
	---------------
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   229
	--switch	
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   230
	started = false
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   231
	switchStage = 0
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   232
	---------------
5277
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   233
end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   234
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   235
function onGameTick()
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   236
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   237
	if (CurrentHedgehog ~= nil) then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   238
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   239
		currName = GetHogName(CurrentHedgehog)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   240
		
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   241
		if currName ~= lastName then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   242
			AddCaption(loc("Switched to ") .. currName .. "!")
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   243
			AssignAmmo()		
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   244
		end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   245
5362
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   246
		if (TurnTimeLeft > 0) and (TurnTimeLeft ~= TurnTime) and (switchStage < 100) then			
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   247
			
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   248
			switchStage = switchStage + 1	
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   249
			
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   250
			if switchStage == 10 then
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   251
				AddAmmo(CurrentHedgehog, amSwitch, 1)
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   252
			elseif switchStage == 20 then
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   253
				ParseCommand("setweap " .. string.char(amSwitch))
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   254
			elseif switchStage == 30 then
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   255
				SetGearMessage(CurrentHedgehog,gmAttack) 
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   256
				switchStage = 110
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   257
			end
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   258
		end		
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   259
		
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   260
		--------------------------------------------------------------------------------------
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   261
5277
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   262
		lastName = currName
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   263
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   264
	end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   265
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   266
end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   267
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   268
function onGearAdd(gear)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   269
    
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   270
	if GetGearType(gear) == gtHedgehog then
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   271
		hhs[numhhs] = gear
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   272
		numhhs = numhhs + 1
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   273
	end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   274
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   275
end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   276
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   277
function onGearDelete(gear)
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   278
--
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   279
end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   280
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   281
function onAmmoStoreInit()
5362
5f0c46e78e50 Enable autoswitch on turn start for The Specialists Mode.
mikade
parents: 5277
diff changeset
   282
--
5277
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   283
end
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   284
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   285
09beef0752ab PianoStrike exploit fix for Capture The Flag.
mikade
parents:
diff changeset
   286