share/hedgewars/Data/Maps/CTF_Blizzard/map.lua
author Wuzzy <Wuzzy2@mail.ru>
Thu, 16 May 2019 19:44:27 +0200
changeset 14975 fdfe8bf91b8b
parent 14974 2eea2c370389
child 14977 1e21dfd7f9b5
permissions -rw-r--r--
CTF_Blizzard: Warp sound when using teleporter
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
     1
-------------------------------
5821
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
     2
-- CTF_BLIZZARD 0.9
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
     3
--------------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
     4
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
     5
---------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
     6
-- 0.2
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
     7
---------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
     8
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
     9
-- disabled super weapons
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    10
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    11
-- theme modifications
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    12
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    13
-- improved hog placement system: teams can now be put
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    14
-- in any order and be of any size
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    15
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    16
---------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    17
-- 0.3
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    18
---------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    19
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    20
-- In this version:
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    21
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    22
-- changed starting weapons
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    23
-- changed crate drop contents and rate of drops
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    24
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    25
-- completely removed super weapons and super weapon scripts
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    26
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    27
-- removed custom respawning
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    28
-- removed set respawn points
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    29
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    30
-- added AIRespawn-esque respawning
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    31
-- added simple left vs right respawn points
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    32
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    33
-- added non-lethal poison to flag carriers as an indicator
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    34
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    35
-- improved flag mechanics and player-flag feedback
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    36
-- flag now instantly respawns if you kill enemy hog and return it,
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    37
-- or if the flag falls in water, _BUT_ not if it is blown up
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    38
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    39
---------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    40
-- 0.4
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    41
---------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    42
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    43
-- tweaked crate drop rates and crate contents
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    44
-- improved the teleporters, they should now be able to handle rope... hopefully
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    45
-- updated SetEffect calls to be in line with 0.9.15 definitions
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    46
-- added visual gears when hogs respawn
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    47
-- added visual gears when hogs teleport
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    48
-- added visual gear to track flag and flag carriers
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    49
-- removed poisoning of flag carriers
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    50
-- removed health adjustments for flag carriers due to aforementioned poisons
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    51
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    52
---------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    53
-- 0.5
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    54
---------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    55
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    56
-- added translation support, hopefully
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    57
-- added ctf rules
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    58
-- added effects to the teleporters
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    59
-- added aura round spawning area
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    60
-- changed the aura around the flag carrier / flag to an aura and added some support for this
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    61
-- changed things so the seed is no longer always the same...
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    62
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
    63
---------
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
    64
-- 0.6
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
    65
---------
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
    66
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
    67
-- removed branding and version number
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
    68
-- removed teleport from starting weapons
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
    69
-- increased captures to 3
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    70
5821
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
    71
------------
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
    72
-- 0.7
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
    73
------------
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
    74
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
    75
-- hopefully fixed a bug with the teleporters
4953
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
    76
-- added a fix for crate possibly getting imbedded in land when it was near the water line
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
    77
5821
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
    78
------------
4953
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
    79
-- 0.8
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
    80
------------
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
    81
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
    82
-- fixed version control fail with missing check on onGearDelete
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
    83
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
    84
-- changed hog placements code so that they start in the same place for both teams
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
    85
-- and hogs move in the same order, not backwards to each other.
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
    86
5821
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
    87
-----------
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
    88
-- 0.9
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
    89
------------
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
    90
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
    91
-- add support for more players
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
    92
-- re-enable sudden death, but set water rise to 0
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
    93
9093
4114ce5d885d fix locale load
nemo
parents: 8349
diff changeset
    94
HedgewarsScriptLoad("/Scripts/Locale.lua")
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    95
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    96
---------------------------------------------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    97
----------lots of bad variables and things
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    98
----------because someone is too lazy
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
    99
----------to read about tables properly
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   100
------------------ "Oh well, they probably have the memory"
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   101
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   102
local actionReset = 0 -- used in CheckTeleporters()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   103
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   104
local roundsCounter = 0	-- used to determine when to spawn more crates
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   105
						-- currently every 6 TURNS, should this work
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   106
						-- on ROUNDS instead?
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   107
local effectTimer = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   108
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   109
local ropeGear = nil
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   110
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   111
--------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   112
-- hog and team tracking variales
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   113
--------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   114
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   115
local numhhs = 0 -- store number of hedgehogs
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   116
local hhs = {} -- store hedgehog gears
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   117
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   118
local teamNameArr = {}	-- store the list of teams
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   119
local teamSize = {}	-- store how many hogs per team
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   120
local teamIndex = {} -- at what point in the hhs{} does each team begin
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   121
local clanTeams = {} -- list of teams per clan
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   122
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   123
-------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   124
-- flag variables
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   125
-------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   126
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   127
local fGear = {}	-- pointer to the case gears that represent the flag
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   128
local fThief = {}	-- pointer to the hogs who stole the flags
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   129
local fIsMissing = {}	-- have the flags been destroyed or captured
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   130
local fNeedsRespawn = {}	-- do the flags need to be respawned
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   131
local fCaptures = {}	-- the team "scores" how many captures
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   132
local fSpawnX = {}		-- spawn X for flags
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   133
local fSpawnY = {}		-- spawn Y for flags
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   134
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   135
local fThiefX = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   136
local fThiefY = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   137
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   138
local fSpawnC = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   139
local fCirc = {} -- flag/carrier marker circles
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   140
local fCol = {} -- colour of the clans
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   141
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   142
local vCircX = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   143
local vCircY = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   144
local vCircMinA = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   145
local vCircMaxA = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   146
local vCircType = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   147
local vCircPulse = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   148
local vCircFuckAll = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   149
local vCircRadius = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   150
local vCircWidth = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   151
local vCircCol = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   152
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   153
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   154
--------------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   155
--zone and teleporter variables
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   156
--------------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   157
14974
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   158
local leftTel
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   159
local rightTel
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   160
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   161
local zXMin = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   162
local zWidth = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   163
local zYMin = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   164
local zHeight = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   165
local zOccupied = {}
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   166
local zCount = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   167
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   168
------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   169
-- zone methods
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   170
------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   171
-- see on gameTick also
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   172
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   173
function ManageTeleporterEffects()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   174
	effectTimer = effectTimer + 1
13116
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   175
	if effectTimer > 50 then
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   176
		effectTimer = 0
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   177
14974
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   178
		local i = GetHogClan(CurrentHedgehog)
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   179
		if i ~= 0 and i ~= 1 then
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   180
			return
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   181
		end
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   182
		local eX = 10 + zXMin[i] + GetRandom(zWidth[i]-10)
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   183
		local eY = 50 + zYMin[i] + GetRandom(zHeight[i]-110)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   184
14974
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   185
		-- steam and smoke and DUST look good, smokering looks trippy
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   186
		-- smoketrace and eviltrace are not effected by wind?
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   187
		-- chunk is a LR falling gear
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   188
		local tempE = AddVisualGear(eX, eY, vgtDust, 0, false)
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   189
		SetVisualGearValues(tempE, eX, eY, nil, nil, nil, nil, nil, nil, nil, fCol[i])
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   190
	end
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   191
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   192
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   193
function CreateZone(xMin, yMin, width, height)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   194
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   195
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   196
	zXMin[zCount] = xMin
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   197
	zYMin[zCount] = yMin
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   198
	zWidth[zCount] = width
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   199
	zHeight[zCount] = height
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   200
	zOccupied[zCount] = false
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   201
	zCount = zCount + 1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   202
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   203
	return (zCount-1)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   204
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   205
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   206
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   207
function GearIsInZone(gear, zI)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   208
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   209
	if (GetX(gear) > zXMin[zI]) and (GetX(gear) < (zXMin[zI]+zWidth[zI])) and (GetY(gear) > zYMin[zI]) and (GetY(gear) < (zYMin[zI]+zHeight[zI])) then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   210
		zOccupied[zI] = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   211
	else
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   212
		zOccupied[zI] = false
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   213
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   214
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   215
	return zOccupied[zI]
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   216
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   217
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   218
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   219
------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   220
--flag methods
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   221
------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   222
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   223
function CheckScore(teamID)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   224
13116
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   225
	local alt
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   226
	if teamID == 0 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   227
		alt = 1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   228
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   229
	elseif teamID == 1 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   230
		alt = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   231
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   232
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   233
	if fCaptures[teamID] == 3 then
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   234
		for i = 0, (numhhs-1) do
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   235
			if GetHogClan(hhs[i]) == alt then
7838
5c2337f8dbb2 Issue #443 - change in syntax for effects
nemo
parents: 5821
diff changeset
   236
				SetEffect(hhs[i], heResurrectable, 0)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   237
				SetHealth(hhs[i],0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   238
			end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   239
		end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   240
		ShowMission(loc("GAME OVER!"), loc("Victory for the ") .. GetHogTeamName(CurrentHedgehog), loc("Hooray!"), 0, 0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   241
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   242
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   243
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   244
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   245
function HandleRespawns()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   246
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   247
	for i = 0, 1 do
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   248
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   249
		if fNeedsRespawn[i] == true then
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   250
			fGear[i] = SpawnFakeAmmoCrate(fSpawnX[i],fSpawnY[i],false,false)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   251
			fNeedsRespawn[i] = false
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   252
			fIsMissing[i] = false -- new, this should solve problems of a respawned flag being "returned" when a player tries to score
14973
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   253
			AddCaption(loc("Flag respawned!"), capcolDefault, capgrpAmmoinfo)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   254
		end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   255
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   256
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   257
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   258
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   259
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   260
function FlagDeleted(gear)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   261
13116
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   262
	local wtf, bbq
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   263
	if (gear == fGear[0]) then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   264
		wtf = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   265
		bbq = 1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   266
	elseif (gear == fGear[1]) then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   267
		wtf = 1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   268
		bbq = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   269
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   270
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   271
	if CurrentHedgehog ~= nil then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   272
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   273
		--if the player picks up the flag
14973
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   274
		if band(GetGearMessage(gear), gmDestroy) ~= 0 then
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   275
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   276
			fGear[wtf] = nil -- the flag has now disappeared and we shouldnt be pointing to it
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   277
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   278
			-- player has successfully captured the enemy flag
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   279
			if (GetHogClan(CurrentHedgehog) == wtf) and (CurrentHedgehog == fThief[bbq]) and (fIsMissing[wtf] == false) then
14973
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   280
				PlaySound(sndShotgunReload)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   281
				fIsMissing[wtf] = false
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   282
				fNeedsRespawn[wtf] = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   283
				fIsMissing[bbq] = false
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   284
				fNeedsRespawn[bbq] = true
13116
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   285
				fCaptures[wtf] = fCaptures[wtf] +1
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   286
13643
690cc84e9fd6 Use capcolDefault in Lua scripts
Wuzzy <Wuzzy2@mail.ru>
parents: 13630
diff changeset
   287
				AddCaption(string.format(loc("%s has scored!"), GetHogTeamName(CurrentHedgehog)), capcolDefault, capgrpGameState)
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   288
				for i=1, #clanTeams[wtf] do
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   289
					SetTeamLabel(clanTeams[wtf][i], fCaptures[wtf])
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   290
				end
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   291
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   292
				PlaySound(sndHomerun)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   293
				fThief[bbq] = nil -- player no longer has the enemy flag
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   294
				CheckScore(wtf)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   295
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   296
			--if the player is returning the flag
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   297
			elseif GetHogClan(CurrentHedgehog) == wtf then
14973
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   298
				PlaySound(sndShotgunReload)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   299
				fNeedsRespawn[wtf] = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   300
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   301
				-- NEW ADDIITON, does this work? Should make it possible to return your flag and then score in the same turn
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   302
				if fIsMissing[wtf] == true then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   303
					HandleRespawns() -- this will set fIsMissing[wtf] to false :)
14973
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   304
					AddCaption(loc("Flag returned!"), capcolDefault, capgrpAmmoinfo)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   305
				elseif fIsMissing[wtf] == false then
12426
9f3387907e06 Fix even more bad/broken loc()'s in scripts (hopefully the last one)
Wuzzy <almikes@aol.com>
parents: 12079
diff changeset
   306
					AddCaption(loc("That was pointless. The flag will respawn next round."))
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   307
				end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   308
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   309
			--if the player is taking the enemy flag
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   310
			elseif GetHogClan(CurrentHedgehog) == bbq then
14973
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   311
				PlaySound(sndShotgunReload)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   312
				fIsMissing[wtf] = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   313
				for i = 0,numhhs-1 do
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   314
					if CurrentHedgehog == hhs[i] then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   315
						fThief[wtf] = hhs[i]
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   316
					end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   317
				end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   318
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   319
				AddCaption(loc("Flag captured!"))
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   320
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   321
			else --below line doesnt usually get called
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   322
				AddCaption("Hmm... that wasn't supposed to happen...")
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   323
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   324
			end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   325
14973
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   326
		-- if flag has been destroyed
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   327
		else
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   328
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   329
			if GetY(fGear[wtf]) > 2025 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   330
				fGear[wtf] = nil
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   331
				fIsMissing[wtf] = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   332
				fNeedsRespawn[wtf] = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   333
				HandleRespawns()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   334
			else
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   335
				fGear[wtf] = nil
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   336
				fIsMissing[wtf] = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   337
				fNeedsRespawn[wtf] = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   338
				AddCaption(loc("Boom!") .. " " .. loc("The flag will respawn next round."))
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   339
			end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   340
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   341
		end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   342
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   343
	-- if flag has been destroyed deep underwater and player is now nil
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   344
	-- probably only gets called if the flag thief drowns himself
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   345
	-- otherwise the above one will work fine
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   346
	else
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   347
		fGear[wtf] = nil
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   348
		fIsMissing[wtf] = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   349
		fNeedsRespawn[wtf] = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   350
		AddCaption(loc("The flag will respawn next round."))
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   351
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   352
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   353
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   354
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   355
function FlagThiefDead(gear)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   356
13116
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   357
	local wtf, bbq
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   358
	if (gear == fThief[0]) then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   359
		wtf = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   360
		bbq = 1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   361
	elseif (gear == fThief[1]) then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   362
		wtf = 1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   363
		bbq = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   364
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   365
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   366
	if fThief[wtf] ~= nil then
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   367
		
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   368
		if fThiefY[wtf] > 2040 then
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   369
			fGear[wtf] = SpawnFakeAmmoCrate(fThiefX[wtf],(fThiefY[wtf]+10),false,false)
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   370
		else
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   371
			fGear[wtf] = SpawnFakeAmmoCrate(fThiefX[wtf],(fThiefY[wtf]-50),false,false)
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   372
		end
14973
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   373
		AddCaption(string.format(loc("%s has dropped the flag!"), GetHogName(gear)), capcolDefault, capgrpAmmoinfo)
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   374
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   375
		AddVisualGear(fThiefX[wtf], fThiefY[wtf], vgtBigExplosion, 0, false)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   376
		fThief[wtf] = nil
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   377
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   378
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   379
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   380
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   381
function HandleCircles()
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   382
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   383
	for i = 0, 1 do
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   384
		if fIsMissing[i] == false then -- draw a circle at the flag's spawning place
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   385
			SetVisualGearValues(fCirc[i], fSpawnX[i],fSpawnY[i], vCircMinA[i], vCircMaxA[i], vCircType[i], vCircPulse[i], vCircFuckAll[i], vCircRadius[i], vCircWidth[i], vCircCol[i])
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   386
		elseif (fIsMissing[i] == true) and (fNeedsRespawn[i] == false) then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   387
			if fThief[i] ~= nil then -- draw circle round flag carrier
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   388
				SetVisualGearValues(fCirc[i], fThiefX[i], fThiefY[i], vCircMinA[i], vCircMaxA[i], vCircType[i], vCircPulse[i], vCircFuckAll[i], vCircRadius[i], vCircWidth[i], vCircCol[i])
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   389
			elseif fThief[i] == nil then -- draw cirle round dropped flag
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   390
				SetVisualGearValues(fCirc[i], GetX(fGear[i]),GetY(fGear[i]), vCircMinA[i], vCircMaxA[i], vCircType[i], vCircPulse[i], vCircFuckAll[i], vCircRadius[i], vCircWidth[i], vCircCol[i])
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   391
			end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   392
		end
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   393
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   394
		if fNeedsRespawn[i] == true then -- if the flag has been destroyed, no need for a circle
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   395
			SetVisualGearValues(fCirc[i], fSpawnX[i],fSpawnY[i], 20, 200, 0, 0, 100, 0, 0, fCol[i])
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   396
		end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   397
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   398
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   399
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   400
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   401
------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   402
-- general methods
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   403
------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   404
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   405
function CheckTeleporters()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   406
13116
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   407
	local teleportActive = false
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   408
14974
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   409
	if (GearIsInZone(CurrentHedgehog, leftTel) == true) and (GetHogClan(CurrentHedgehog) == 0) then
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   410
		teleportActive = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   411
		destinationX = 1402
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   412
		destinationY = 321
14974
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   413
	elseif (GearIsInZone(CurrentHedgehog, rightTel) == true) and (GetHogClan(CurrentHedgehog) == 1) then
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   414
		teleportActive = true
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   415
		destinationX = 2692
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   416
		destinationY = 321
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   417
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   418
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   419
	if teleportActive == true then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   420
		if actionReset == 0 then
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   421
			if ropeGear ~= nil then
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   422
				if GetGearElasticity(ropeGear) ~= 0 then
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   423
					SetGearMessage(CurrentHedgehog, gmAttack)
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   424
				end
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   425
			end
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   426
		elseif actionReset == 10 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   427
			SetGearMessage(CurrentHedgehog, 0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   428
		elseif actionReset == 20 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   429
			AddVisualGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), vgtBigExplosion, 0, false)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   430
			SetGearPosition(CurrentHedgehog,destinationX,destinationY)
14975
fdfe8bf91b8b CTF_Blizzard: Warp sound when using teleporter
Wuzzy <Wuzzy2@mail.ru>
parents: 14974
diff changeset
   431
			PlaySound(sndWarp)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   432
			AddVisualGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), vgtBigExplosion, 0, false)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   433
		end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   434
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   435
		actionReset = actionReset + 1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   436
		if actionReset >= 30 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   437
			actionReset = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   438
		end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   439
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   440
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   441
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   442
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   443
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   444
function RebuildTeamInfo()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   445
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   446
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   447
	-- make a list of individual team names
5821
afb988c1a2fe Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents: 5328
diff changeset
   448
	for i = 0, (TeamsCount-1) do
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   449
		teamNameArr[i] = GetTeamName(i)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   450
		teamSize[i] = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   451
		teamIndex[i] = 0
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   452
		SetTeamLabel(teamNameArr[i], "0")
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   453
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   454
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   455
	-- find out how many hogs per team, and the index of the first hog in hhs
13116
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   456
	for i = 0, TeamsCount-1 do
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   457
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   458
		for z = 0, numhhs-1 do
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   459
			if GetHogTeamName(hhs[z]) == teamNameArr[i] then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   460
				if teamSize[i] == 0 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   461
					teamIndex[i] = z -- should give starting index
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   462
				end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   463
				teamSize[i] = teamSize[i] + 1
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   464
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   465
				local clan = GetHogClan(hhs[z])
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   466
				-- Also remember the clan to which the team belongs to
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   467
				if not clanTeams[clan] then
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   468
					clanTeams[clan] = {}
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   469
				end
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   470
				table.insert(clanTeams[clan], teamNameArr[i])
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   471
			end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   472
		end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   473
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   474
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   475
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   476
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   477
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   478
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   479
function HandleCrateDrops()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   480
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   481
	roundsCounter = roundsCounter +1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   482
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   483
	if roundsCounter == 5 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   484
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   485
		roundsCounter = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   486
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   487
		r = GetRandom(8)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   488
		if r == 0 then
12933
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12426
diff changeset
   489
			SpawnSupplyCrate(0,0,amSwitch)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   490
		elseif r == 1 then
12933
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12426
diff changeset
   491
			SpawnSupplyCrate(0,0,amTeleport)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   492
		elseif r == 2 then
12933
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12426
diff changeset
   493
			SpawnSupplyCrate(0,0,amJetpack)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   494
		elseif r == 3 then
12933
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12426
diff changeset
   495
			SpawnSupplyCrate(0,0,amExtraTime)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   496
		elseif r == 4 then
12933
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12426
diff changeset
   497
			SpawnSupplyCrate(0,0,amGirder)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   498
		elseif r == 5 then
12933
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12426
diff changeset
   499
			SpawnSupplyCrate(0,0,amDynamite)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   500
		elseif r == 6 then
12933
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12426
diff changeset
   501
			SpawnSupplyCrate(0,0,amFlamethrower)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   502
		elseif r == 7 then
12933
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12426
diff changeset
   503
			SpawnSupplyCrate(0,0,amPortalGun)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   504
		end
14973
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   505
		PlaySound(sndReinforce, CurrentHedgehog)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   506
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   507
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   508
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   509
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   510
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   511
------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   512
-- game methods
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   513
------------------------
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   514
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   515
function onGameInit()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   516
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   517
	-- Things we don't modify here will use their default values.
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   518
	GameFlags = gfDivideTeams -- Game settings and rules
13117
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   519
	TurnTime = 30000 -- The time the player has to move each round (in ms)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   520
	CaseFreq = 0 -- The frequency of crate drops
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   521
	MinesNum = 0 -- The number of mines being placed
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   522
	Explosives = 0 -- The number of explosives being placed
12079
8f222872d432 Disable SD for a couple of scripts and mission maps
Wuzzy <almikes@aol.com>
parents: 12077
diff changeset
   523
	-- Disable Sudden Death
8f222872d432 Disable SD for a couple of scripts and mission maps
Wuzzy <almikes@aol.com>
parents: 12077
diff changeset
   524
	WaterRise = 0
8f222872d432 Disable SD for a couple of scripts and mission maps
Wuzzy <almikes@aol.com>
parents: 12077
diff changeset
   525
	HealthDecrease = 0
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   526
	Map = "Blizzard" -- The map to be played
13117
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   527
	Theme = "Snow" -- The theme to be used
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   528
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   529
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   530
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   531
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   532
function onGameStart()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   533
14973
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   534
	ShowMission(loc("CTF_Blizzard"), loc("Capture The Flag"),
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   535
		loc("- Place your clan flag at the end of your first turn") .. "|" ..
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   536
		loc("- Return the enemy flag to your base to score") .."|"..
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   537
		string.format(loc("- First clan to score %d captures wins"), 3) .. "|"..
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   538
		loc("- You may only score when your flag is in your base") .."|"..
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   539
		loc("- Hogs will drop the flag when killed") .."|"..
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   540
		loc("- Dropped flags may be returned or recaptured").."|"..
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   541
		loc("- Hogs will be revived") .."|"..
e50943f1d0af CTF_Blizzard: Tweak messages
Wuzzy <Wuzzy2@mail.ru>
parents: 14972
diff changeset
   542
		loc("- Enter the sparkling forcefield to teleport"), 0, 0)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   543
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   544
	-- initialize teleporters
14974
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   545
	leftTel = CreateZone(342,1316,42,449)	-- left teleporter (clan 0)
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   546
	rightTel = CreateZone(3719,1330,45,449)	-- right teleporter (clan 1)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   547
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   548
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   549
	--new improved placement schematics aw yeah
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   550
	RebuildTeamInfo()
13116
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   551
	local team1Placed = 0
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   552
	local team2Placed = 0
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   553
	for i = 0, (TeamsCount-1) do
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   554
		for g = teamIndex[i], (teamIndex[i]+teamSize[i]-1) do
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   555
			if GetHogClan(hhs[g]) == 0 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   556
				SetGearPosition(hhs[g],1403+ ((team1Placed+1)*50),1570)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   557
				team1Placed = team1Placed +1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   558
				if team1Placed > 6 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   559
					team1Placed = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   560
				end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   561
			elseif GetHogClan(hhs[g]) == 1 then
4953
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   562
				SetGearPosition(hhs[g],2691- ((team2Placed+1)*50),1570)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   563
				team2Placed = team2Placed +1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   564
				if team2Placed > 6 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   565
					team2Placed = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   566
				end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   567
			end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   568
		end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   569
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   570
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   571
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   572
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   573
	--spawn starting ufos and or super weapons
12933
e65aa3c3d4e6 Refactor scripts to use SpawnSupplyCrate (where it makes sense)
Wuzzy <Wuzzy2@mail.ru>
parents: 12426
diff changeset
   574
	SpawnSupplyCrate(2048,1858,amJetpack)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   575
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   576
	--set flag spawn points and spawn the flags
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   577
	fSpawnX[0] = 957
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   578
	fSpawnY[0] = 1747
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   579
	fSpawnX[1] = 3123
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   580
	fSpawnY[1] = 1747
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   581
13769
e874bfe563c7 Make sure scripts don't break w/ only 1 clan
Wuzzy <Wuzzy2@mail.ru>
parents: 13687
diff changeset
   582
	if ClansCount < 2 then
e874bfe563c7 Make sure scripts don't break w/ only 1 clan
Wuzzy <Wuzzy2@mail.ru>
parents: 13687
diff changeset
   583
		return
e874bfe563c7 Make sure scripts don't break w/ only 1 clan
Wuzzy <Wuzzy2@mail.ru>
parents: 13687
diff changeset
   584
	end
e874bfe563c7 Make sure scripts don't break w/ only 1 clan
Wuzzy <Wuzzy2@mail.ru>
parents: 13687
diff changeset
   585
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   586
	for i = 0, 1 do
13019
880662cf41ee Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents: 12933
diff changeset
   587
		fGear[i] = SpawnFakeAmmoCrate(fSpawnX[i],fSpawnY[i],false,false)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   588
		fCirc[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true)
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   589
		fCol[i] = GetClanColor(i)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   590
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   591
		fSpawnC[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true)
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   592
		SetVisualGearValues(fSpawnC[i], fSpawnX[i],fSpawnY[i], 10, 200, 1, 10, 0, 300, 5, fCol[i])
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   593
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   594
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   595
		fIsMissing[i] = false
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   596
		fNeedsRespawn[i] = false
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   597
		fCaptures[i] = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   598
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   599
		vCircMinA[i] = 20
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   600
		vCircMaxA[i] = 255
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   601
		vCircType[i] = 1
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   602
		vCircPulse[i] = 10
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   603
		vCircFuckAll[i] = 0
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   604
		vCircRadius[i] = 150
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   605
		vCircWidth[i] = 5
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   606
		vCircCol[i] = fCol[i]
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   607
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   608
		SetVisualGearValues(fCirc[i], fSpawnX[i],fSpawnY[i], vCircMinA[i], vCircMaxA[i], vCircType[i], vCircPulse[i], vCircFuckAll[i], vCircRadius[i], vCircWidth[i], vCircCol[i])
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   609
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   610
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   611
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   612
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   613
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   614
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   615
function onNewTurn()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   616
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   617
	HandleRespawns()
14972
7d63665cc38b CTF_Blizzard: Use onCaseDrop function
Wuzzy <Wuzzy2@mail.ru>
parents: 13769
diff changeset
   618
7d63665cc38b CTF_Blizzard: Use onCaseDrop function
Wuzzy <Wuzzy2@mail.ru>
parents: 13769
diff changeset
   619
end
7d63665cc38b CTF_Blizzard: Use onCaseDrop function
Wuzzy <Wuzzy2@mail.ru>
parents: 13769
diff changeset
   620
7d63665cc38b CTF_Blizzard: Use onCaseDrop function
Wuzzy <Wuzzy2@mail.ru>
parents: 13769
diff changeset
   621
function onCaseDrop()
7d63665cc38b CTF_Blizzard: Use onCaseDrop function
Wuzzy <Wuzzy2@mail.ru>
parents: 13769
diff changeset
   622
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   623
	HandleCrateDrops()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   624
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   625
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   626
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   627
function onGameTick()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   628
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   629
	-- onRessurect calls AFTER you have resurrected,
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   630
	-- so keeping track of x,y a few milliseconds before
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   631
	-- is useful
13116
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   632
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   633
	for i = 0,1 do
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   634
		if fThief[i] ~= nil then
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   635
			fThiefX[i] = GetX(fThief[i])
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   636
			fThiefY[i] = GetY(fThief[i])
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   637
		end
13116
3b7cd18c4a06 CTF_Blizzard: Dump dead code / out-commented code
Wuzzy <Wuzzy2@mail.ru>
parents: 13019
diff changeset
   638
	end
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   639
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   640
	-- things we wanna check often
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   641
	if (CurrentHedgehog ~= nil) then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   642
		CheckTeleporters()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   643
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   644
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   645
	HandleCircles()
14974
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   646
	if (CurrentHedgehog ~= nil) then
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   647
		ManageTeleporterEffects()
2eea2c370389 CTF_Blizzard: Disable sparkles for inactive teleporters
Wuzzy <Wuzzy2@mail.ru>
parents: 14973
diff changeset
   648
	end
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   649
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   650
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   651
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   652
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   653
function onAmmoStoreInit()
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   654
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   655
	SetAmmo(amDrill,9,0,0,0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   656
	SetAmmo(amMortar,9,0,0,0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   657
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   658
	SetAmmo(amGrenade,9,0,0,0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   659
	SetAmmo(amClusterBomb,4,0,0,0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   660
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   661
	SetAmmo(amShotgun, 9, 0, 0, 0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   662
	SetAmmo(amFlamethrower, 1, 0, 0, 1)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   663
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   664
	SetAmmo(amFirePunch, 9, 0, 0, 0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   665
	SetAmmo(amBaseballBat, 2, 0, 0, 0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   666
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   667
	SetAmmo(amDynamite,2,0,0,1)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   668
	SetAmmo(amSMine,4,0,0,0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   669
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   670
	SetAmmo(amBlowTorch, 9, 0, 0, 0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   671
	SetAmmo(amPickHammer, 9, 0, 0, 0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   672
	SetAmmo(amGirder, 2, 0, 0, 2)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   673
	SetAmmo(amPortalGun, 2, 0, 0, 2)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   674
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   675
	SetAmmo(amParachute, 9, 0, 0, 0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   676
	SetAmmo(amRope, 9, 0, 0, 0)
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   677
	SetAmmo(amTeleport, 0, 0, 0, 1)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   678
	SetAmmo(amJetpack, 1, 0, 0, 1)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   679
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   680
	SetAmmo(amSwitch, 2, 0, 0, 1)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   681
	SetAmmo(amExtraTime,1,0,0,1)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   682
	SetAmmo(amLowGravity,1,0,0,0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   683
	SetAmmo(amSkip, 9, 0, 0, 0)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   684
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   685
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   686
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   687
13630
fe7d2bbf5f3f Fix resurrection animation appearing at wrong position for some missions and styles
Wuzzy <Wuzzy2@mail.ru>
parents: 13117
diff changeset
   688
function onGearResurrect(gear, vGear)
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   689
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   690
	-- mark the flag thief as dead if he needed a respawn
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   691
	for i = 0,1 do
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   692
		if gear == fThief[i] then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   693
			FlagThiefDead(gear)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   694
		end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   695
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   696
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   697
	-- place hogs belonging to each clan either left or right side of map
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   698
	if GetHogClan(gear) == 0 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   699
		FindPlace(gear, false, 0, 2048)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   700
	elseif GetHogClan(gear) == 1 then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   701
		FindPlace(gear, false, 2048, LAND_WIDTH)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   702
	end
4843
673f74c89687 merge in script tweaks
mikade
parents: 4786
diff changeset
   703
13630
fe7d2bbf5f3f Fix resurrection animation appearing at wrong position for some missions and styles
Wuzzy <Wuzzy2@mail.ru>
parents: 13117
diff changeset
   704
	if vGear then
fe7d2bbf5f3f Fix resurrection animation appearing at wrong position for some missions and styles
Wuzzy <Wuzzy2@mail.ru>
parents: 13117
diff changeset
   705
		SetVisualGearValues(vGear, GetX(gear), GetY(gear))
fe7d2bbf5f3f Fix resurrection animation appearing at wrong position for some missions and styles
Wuzzy <Wuzzy2@mail.ru>
parents: 13117
diff changeset
   706
	end
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   707
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   708
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   709
13117
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   710
local excessHogsWarning = false
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   711
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   712
function onGearAdd(gear)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   713
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   714
	if GetGearType(gear) == gtHedgehog then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   715
13117
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   716
		if GetHogClan(gear) > 1 then
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   717
			DeleteGear(gear)
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   718
			if not excessHogsWarning then
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   719
				WriteLnToChat(loc("Only two clans allowed! Excess hedgehogs will be removed."))
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   720
				excessHogsWarning = true
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   721
			end
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   722
		else
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   723
			hhs[numhhs] = gear
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   724
			numhhs = numhhs + 1
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   725
			SetEffect(gear, heResurrectable, 1)
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   726
		end
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   727
13117
cd1561b0337f CTF_Blizzard: Force clan limit of 2. Auto-remove excess hogs
Wuzzy <Wuzzy2@mail.ru>
parents: 13116
diff changeset
   728
	elseif GetGearType(gear) == gtRope then
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   729
		ropeGear = gear
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   730
	end
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   731
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   732
end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   733
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   734
function onGearDelete(gear)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   735
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   736
	if (gear == fGear[0]) or (gear == fGear[1]) then
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   737
		FlagDeleted(gear)
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   738
	end
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   739
4871
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   740
	if GetGearType(gear) == gtRope then
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   741
		ropeGear = nil
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   742
	end
4a99a45ea886 bugfix for flag spawn, teleporter + rope
mikade
parents: 4843
diff changeset
   743
4953
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   744
	if GetGearType(gear) == gtHedgehog then
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   745
		for i = 0, (numhhs-1) do
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   746
			if gear == hhs[i] then
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   747
				
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   748
				for k = 0,1 do
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   749
					if gear == fThief[k] then
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   750
						FlagThiefDead(gear)
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   751
					end
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   752
				end				
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   753
				hhs[i] = nil	
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   754
			end		
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   755
		end
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   756
	end
ebd3dae634ca Fixed scoring exploit on Control and removed user branding from the map
mikade
parents: 4871
diff changeset
   757
4786
71fb9189d91c French translation finally gets some love
ourobolos
parents: 4764
diff changeset
   758
end