author | Wuzzy <Wuzzy2@mail.ru> |
Sat, 15 Jun 2019 16:05:13 +0200 | |
changeset 15158 | 276bdf531ae0 |
parent 15135 | 13e7d4eccb67 |
child 15257 | 515a4a317e52 |
permissions | -rw-r--r-- |
5277 | 1 |
--------------------------------------- |
5819 | 2 |
-- CAPTURE_THE_FLAG GAMEPLAY MODE 0.5 |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
3 |
-- by mikade |
5277 | 4 |
--------------------------------------- |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
5 |
|
11911
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
6 |
---- Script parameter |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
7 |
-- With “captures=<number>” you can set your own capture limit, e.g. “captures=5” for 5 captures. |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
8 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
9 |
-- Version History |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
10 |
--------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
11 |
-- 0.1 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
12 |
--------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
13 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
14 |
-- [conversion from map-dependant CTF_Blizzard to map independant Capture the Flag] |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
15 |
-- added an intial starting stage where flagspawn is decided by the players (weapon set will require a jetpack unless I set) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
16 |
-- changed the flag from a crate to a visual gear, and all associated methods and checks relating to flags (five hours later, lol) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
17 |
-- changed starting/respawning positioning to accommodate different map sizes |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
18 |
-- added another circle to mark flag spawn |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
19 |
-- added gameFlag filter |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
20 |
-- changed scoring feedback |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
21 |
-- cleaned up some code |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
22 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
23 |
-- removing own flag from spawning point no longer possible |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
24 |
-- destroying flags no longer possible. |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
25 |
-- added basic glowing circle effect to spawn area |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
26 |
-- added expanding circle to fgear itself |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
27 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
28 |
-- removed teleporters |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
29 |
-- removed random crate drops (this should be decided by scheme) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
30 |
-- removed set map criteria like minesNum, turnTime, explosives etc. except for sudden death |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
31 |
-- removed weapon defintions |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
32 |
-- removed placement and respawning methods, hopefully divideTeams will have this covered |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
33 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
34 |
--------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
35 |
-- 0.2 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
36 |
--------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
37 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
38 |
-- [now with user friendliness] |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
39 |
-- flag is now placed wherever you end up at the end of your first turn, this ensures that it is always placed by turn 3 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
40 |
-- removed a bunch of backup code and no-longer needed variables / methods from CTF_Blizzard days |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
41 |
-- removed an aura that was still mistakenly hanging about |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
42 |
-- added an in-game note about placements |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
43 |
-- added an in-game note about the rules of the game |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
44 |
-- added translation support and loc()'ed everything |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
45 |
-- changed things so the seed is no longer always the same... |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
46 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
47 |
-- In this version: |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
48 |
--------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
49 |
-- 0.3 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
50 |
--------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
51 |
-- [fufufufu kamikaze fix] |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
52 |
-- added nill checks to make sure the player doesn't generate errors by producing a nil value in hhs[] when he uses kamikaze |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
53 |
-- added a check to make sure the player doesn't kamikaze straight down and make the flag's starting point underwater |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
54 |
-- added a check to make sure the player drops the flag if he has it and he uses kamikaze |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
55 |
|
5277 | 56 |
-------- |
57 |
-- 0.4 |
|
58 |
-------- |
|
59 |
||
60 |
-- remove user-branding and version numbers |
|
61 |
-- removed some stuff that wasn't needed |
|
62 |
-- fix piano strike exploit |
|
63 |
-- changed delay to allow for better portals |
|
64 |
-- changed starting feedback a little |
|
65 |
-- increased the radius around the circle indicating the flag thief so that it doesn't obscure his health |
|
66 |
||
5819 | 67 |
-------- |
68 |
-- 0.5 |
|
69 |
-------- |
|
70 |
||
71 |
-- add support for more players |
|
5821
afb988c1a2fe
Allow limited form of SuddenDeath (WaterRise = 0) in both CTF modes
mikade
parents:
5819
diff
changeset
|
72 |
-- allow limited sudden death |
5819 | 73 |
-- stop TimeBox ruining my life |
74 |
-- profit??? |
|
75 |
||
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
76 |
----------------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
77 |
--SCRIPT BEGINS |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
78 |
----------------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
79 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
80 |
-- enable awesome translaction support so we can use loc() wherever we want |
8043 | 81 |
HedgewarsScriptLoad("/Scripts/Locale.lua") |
11911
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
82 |
HedgewarsScriptLoad("/Scripts/Params.lua") |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
83 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
84 |
--------------------------------------------------------------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
85 |
----------lots of bad variables and things |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
86 |
----------because someone is too lazy |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
87 |
----------to read about tables properly |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
88 |
------------------ "Oh well, they probably have the memory" |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
89 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
90 |
local gameStarted = false |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
91 |
local gameOver = false |
11911
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
92 |
local captureLimit = 3 |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
93 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
94 |
-------------------------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
95 |
-- hog and team tracking variales |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
96 |
-------------------------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
97 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
98 |
local numhhs = 0 -- store number of hedgehogs |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
99 |
local hhs = {} -- store hedgehog gears |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
100 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
101 |
local teamSize = {} -- store how many hogs per team |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
102 |
local teamIndex = {} -- at what point in the hhs{} does each team begin |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
103 |
|
13120
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
104 |
local mostCapturesHogName = nil -- name of hog who holds the record of most flags captured |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
105 |
local mostCapturesHogTeam = nil -- name of team who holds the record of most flags captured |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
106 |
local mostCaptures = 0 -- number of most per-hog captures |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
107 |
local capturesPerHog = {} |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
108 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
109 |
------------------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
110 |
-- flag variables |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
111 |
------------------- |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
112 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
113 |
local fGear = {} -- pointer to the visual gears that represent the flag |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
114 |
local fGearX = {} |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
115 |
local fGearY = {} |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
116 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
117 |
local fThief = {} -- pointer to the hogs who stole the flags |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
118 |
local fThiefFlag = {} -- contains the stolen flag type of fThief |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
119 |
local fIsMissing = {} -- have the flags been destroyed or captured |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
120 |
local fNeedsRespawn = {} -- do the flags need to be respawned |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
121 |
local fCaptures = {} -- the team "scores" how many captures |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
122 |
local fSpawnX = {} -- spawn X for flags |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
123 |
local fSpawnY = {} -- spawn Y for flags |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
124 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
125 |
local fThiefX = {} |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
126 |
local fThiefY = {} |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
127 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
128 |
local fSpawnC = {} -- spawn circle marker |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
129 |
local fCirc = {} -- flag/carrier marker circles |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
130 |
local fCol = {} -- colour of the clans |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
131 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
132 |
local fGearRad = 0 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
133 |
local fGearRadMin = 5 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
134 |
local fGearRadMax = 33 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
135 |
local fGearTimer = 0 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
136 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
137 |
------------------------ |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
138 |
--flag methods |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
139 |
------------------------ |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
140 |
|
14994
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
141 |
local RankTeams = function(teamList) |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
142 |
local teamRank = function(a, b) |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
143 |
if a.score ~= b.score then |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
144 |
return a.score > b.score |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
145 |
else |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
146 |
return a.clan > b.clan |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
147 |
end |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
148 |
end |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
149 |
table.sort(teamList, teamRank) |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
150 |
local rank, plusRank, score, clan |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
151 |
for i=1, #teamList do |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
152 |
if i == 1 then |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
153 |
rank = 1 |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
154 |
plusRank = 1 |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
155 |
score = teamList[i].score |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
156 |
clan = teamList[i].clan |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
157 |
end |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
158 |
if (teamList[i].score < score) then |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
159 |
rank = rank + plusRank |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
160 |
plusRank = 1 |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
161 |
end |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
162 |
if (teamList[i].score == score and teamList[i].clan ~= clan) then |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
163 |
plusRank = plusRank + 1 |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
164 |
end |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
165 |
teamList[i].rank = rank |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
166 |
score = teamList[i].score |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
167 |
clan = teamList[i].clan |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
168 |
end |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
169 |
|
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
170 |
for i=1, #teamList do |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
171 |
SendStat(siPointType, "!POINTS") |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
172 |
SendStat(siTeamRank, tostring(teamList[i].rank)) |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
173 |
SendStat(siPlayerKills, tostring(teamList[i].score), teamList[i].name) |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
174 |
end |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
175 |
end |
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
176 |
|
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
177 |
function CheckScore(clanID) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
178 |
|
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
179 |
if fCaptures[clanID] == captureLimit then |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
180 |
gameOver = true |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
181 |
-- Capture limit reached! We have a winner! |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
182 |
for i = 0, (numhhs-1) do |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
183 |
if hhs[i] ~= nil then |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
184 |
-- Kill all losers |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
185 |
if GetHogClan(hhs[i]) ~= clanID then |
7838 | 186 |
SetEffect(hhs[i], heResurrectable, 0) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
187 |
SetHealth(hhs[i],0) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
188 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
189 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
190 |
end |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
191 |
if CurrentHedgehog ~= nil then |
13648 | 192 |
AddCaption(string.format(loc("Victory for %s!"), GetHogTeamName(CurrentHedgehog)), capcolDefault, capgrpGameState) |
13024
880662cf41ee
Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents:
12084
diff
changeset
|
193 |
updateScores() |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
194 |
end |
13118
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
195 |
|
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
196 |
-- Calculate team rankings |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
197 |
|
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
198 |
local teamList = {} |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
199 |
for i=0, TeamsCount-1 do |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
200 |
local name = GetTeamName(i) |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
201 |
local clan = GetTeamClan(name) |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
202 |
table.insert(teamList, { score = fCaptures[clan], name = name, clan = clan }) |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
203 |
end |
14994
5188ecbf726f
Rank tied teams properly in Control, CTF and Mutant
Wuzzy <Wuzzy2@mail.ru>
parents:
14583
diff
changeset
|
204 |
RankTeams(teamList) |
13120
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
205 |
|
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
206 |
if mostCaptures >= 2 then |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
207 |
SendStat(siCustomAchievement, string.format(loc("%s (%s) has captured the flag %d times."), mostCapturesHogName, mostCapturesHogTeam, mostCaptures)) |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
208 |
end |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
209 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
210 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
211 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
212 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
213 |
function DoFlagStuff(flag, flagClan) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
214 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
215 |
if not CurrentHedgehog then |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
216 |
return |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
217 |
end |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
218 |
local wtf = flagClan |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
219 |
|
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
220 |
local thiefClan |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
221 |
for i=0, ClansCount - 1 do |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
222 |
if CurrentHedgehog == fThief[i] then |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
223 |
thiefClan = i |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
224 |
end |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
225 |
end |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
226 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
227 |
-- player has successfully captured the enemy flag |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
228 |
if (GetHogClan(CurrentHedgehog) == flagClan) and (thiefClan ~= nil) and (fIsMissing[flagClan] == false) then |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
229 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
230 |
fIsMissing[thiefClan] = false |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
231 |
fNeedsRespawn[thiefClan] = true |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
232 |
fCaptures[flagClan] = fCaptures[flagClan] +1 |
13648 | 233 |
AddCaption(string.format(loc("%s has scored!"), GetHogName(CurrentHedgehog)), capcolDefault, capgrpGameState) |
13024
880662cf41ee
Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents:
12084
diff
changeset
|
234 |
updateScores() |
11912
ce9e0f8e43f4
CTF: Play sound when capturing flag
Wuzzy <almikes@aol.com>
parents:
11911
diff
changeset
|
235 |
PlaySound(sndHomerun) |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
236 |
fThief[thiefClan] = nil -- player no longer has the enemy flag |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
237 |
fThiefFlag[flagClan] = nil |
13120
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
238 |
|
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
239 |
capturesPerHog[CurrentHedgehog] = capturesPerHog[CurrentHedgehog] + 1 |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
240 |
if capturesPerHog[CurrentHedgehog] > mostCaptures then |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
241 |
mostCaptures = capturesPerHog[CurrentHedgehog] |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
242 |
mostCapturesHogName = GetHogName(CurrentHedgehog) |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
243 |
mostCapturesHogTeam = GetHogTeamName(CurrentHedgehog) |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
244 |
end |
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
245 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
246 |
CheckScore(flagClan) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
247 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
248 |
--if the player is returning the flag |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
249 |
elseif (GetHogClan(CurrentHedgehog) == flagClan) and (fIsMissing[flagClan] == true) then |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
250 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
251 |
DeleteVisualGear(fGear[flagClan]) |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
252 |
fGear[flagClan] = nil -- the flag has now disappeared |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
253 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
254 |
fNeedsRespawn[flagClan] = true |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
255 |
HandleRespawns() -- this will set fIsMissing[flagClan] to false :) |
13648 | 256 |
AddCaption(loc("Flag returned!"), capcolDefault, capgrpMessage2) |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
257 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
258 |
--if the player is taking the enemy flag (not possible if already holding a flag) |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
259 |
elseif GetHogClan(CurrentHedgehog) ~= flagClan and (thiefClan == nil) then |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
260 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
261 |
DeleteVisualGear(fGear[flagClan]) |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
262 |
fGear[flagClan] = nil -- the flag has now disappeared |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
263 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
264 |
fIsMissing[flagClan] = true |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
265 |
for i = 0,numhhs-1 do |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
266 |
if CurrentHedgehog ~= nil then |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
267 |
if CurrentHedgehog == hhs[i] then |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
268 |
fThief[flagClan] = hhs[i] |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
269 |
fThiefFlag[flagClan] = flagClan |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
270 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
271 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
272 |
end |
13648 | 273 |
AddCaption(loc("Flag captured!"), capcolDefault, capgrpMessage2) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
274 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
275 |
end |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
276 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
277 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
278 |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
279 |
function CheckFlagProximity() |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
280 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
281 |
for i = 0, ClansCount-1 do |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
282 |
if fGear[i] ~= nil then |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
283 |
|
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
284 |
local g1X = fGearX[i] |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
285 |
local g1Y = fGearY[i] |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
286 |
|
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
287 |
local g2X, g2Y = GetGearPosition(CurrentHedgehog) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
288 |
|
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
289 |
local q = g1X - g2X |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
290 |
local w = g1Y - g2Y |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
291 |
local dist = (q*q) + (w*w) |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
292 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
293 |
if dist < 500 then |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
294 |
DoFlagStuff(fGear[i], i) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
295 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
296 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
297 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
298 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
299 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
300 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
301 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
302 |
function HandleRespawns() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
303 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
304 |
for i = 0, ClansCount-1 do |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
305 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
306 |
if fNeedsRespawn[i] == true then |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
307 |
fGear[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
308 |
fGearX[i] = fSpawnX[i] |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
309 |
fGearY[i] = fSpawnY[i] |
5277 | 310 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
311 |
fNeedsRespawn[i] = false |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
312 |
fIsMissing[i] = false -- new, this should solve problems of a respawned flag being "returned" when a player tries to score |
13648 | 313 |
AddCaption(loc("Flag respawned!"), capcolDefault, capgrpMessage2) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
314 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
315 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
316 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
317 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
318 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
319 |
|
13118
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
320 |
-- Advance the clan score graph by one step |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
321 |
function DrawScores() |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
322 |
local clansUsed = {} |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
323 |
for i=0, TeamsCount-1 do |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
324 |
local team = GetTeamName(i) |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
325 |
local clan = GetTeamClan(team) |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
326 |
if not clansUsed[clan] then |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
327 |
local captures = fCaptures[clan] |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
328 |
SendStat(siClanHealth, captures, team) |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
329 |
clansUsed[clan] = true |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
330 |
end |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
331 |
end |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
332 |
end |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
333 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
334 |
function FlagThiefDead(gear) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
335 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
336 |
local thiefClan |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
337 |
local stolenFlagClan |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
338 |
for i=0, ClansCount-1 do |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
339 |
if (gear == fThief[i]) then |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
340 |
thiefClan = i |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
341 |
stolenFlagClan = fThiefFlag[i] |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
342 |
break |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
343 |
end |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
344 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
345 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
346 |
if stolenFlagClan ~= nil then |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
347 |
-- falls into water |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
348 |
if (LAND_HEIGHT - fThiefY[thiefClan]) < 15 then |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
349 |
fIsMissing[stolenFlagClan] = true |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
350 |
fNeedsRespawn[stolenFlagClan] = true |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
351 |
HandleRespawns() |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
352 |
else --normally |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
353 |
fGearX[stolenFlagClan] = fThiefX[thiefClan] |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
354 |
fGearY[stolenFlagClan] = fThiefY[thiefClan] |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
355 |
fGear[stolenFlagClan] = AddVisualGear(fGearX[stolenFlagClan], fGearY[stolenFlagClan], vgtCircle, 0, true) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
356 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
357 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
358 |
AddVisualGear(fThiefX[thiefClan], fThiefY[thiefClan], vgtBigExplosion, 0, false) |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
359 |
fThief[thiefClan] = nil |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
360 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
361 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
362 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
363 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
364 |
function HandleCircles() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
365 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
366 |
fGearTimer = fGearTimer + 1 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
367 |
if fGearTimer == 50 then |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
368 |
fGearTimer = 0 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
369 |
fGearRad = fGearRad + 1 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
370 |
if fGearRad > fGearRadMax then |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
371 |
fGearRad = fGearRadMin |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
372 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
373 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
374 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
375 |
for i = 0, ClansCount-1 do |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
376 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
377 |
if fIsMissing[i] == false then -- draw a flag marker at the flag's spawning place |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
378 |
SetVisualGearValues(fCirc[i], fSpawnX[i],fSpawnY[i], 20, 20, 0, 10, 0, 33, 3, fCol[i]) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
379 |
if fGear[i] ~= nil then -- draw the flag gear itself |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
380 |
SetVisualGearValues(fGear[i], fSpawnX[i],fSpawnY[i], 20, 200, 0, 0, 100, fGearRad, 2, fCol[i]) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
381 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
382 |
elseif (fIsMissing[i] == true) and (fNeedsRespawn[i] == false) then |
5277 | 383 |
if fThief[i] ~= nil then -- draw circle round flag carrier -- 33 |
384 |
SetVisualGearValues(fCirc[i], fThiefX[i], fThiefY[i], 20, 200, 0, 0, 100, 50, 3, fCol[i]) |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
385 |
elseif fThief[i] == nil then -- draw cirle round dropped flag |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
386 |
SetVisualGearValues(fCirc[i], fGearX[i], fGearY[i], 20, 200, 0, 0, 100, 33, 3, fCol[i]) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
387 |
if fGear[i] ~= nil then -- flag gear itself |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
388 |
SetVisualGearValues(fGear[i], fGearX[i], fGearY[i], 20, 200, 0, 0, 100, fGearRad, 2, fCol[i]) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
389 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
390 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
391 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
392 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
393 |
if fNeedsRespawn[i] == true then -- if the flag has been destroyed, no need for a circle |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
394 |
SetVisualGearValues(fCirc[i], fSpawnX[i],fSpawnY[i], 20, 200, 0, 0, 100, 0, 0, fCol[i]) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
395 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
396 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
397 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
398 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
399 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
400 |
------------------------ |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
401 |
-- general methods |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
402 |
------------------------ |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
403 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
404 |
function CheckDistance(gear1, gear2) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
405 |
|
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
406 |
local g1X, g1Y = GetGearPosition(gear1) |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
407 |
local g2X, g2Y = GetGearPosition(gear2) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
408 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
409 |
g1X = g1X - g2X |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
410 |
g1Y = g1Y - g2Y |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
411 |
local dist = (g1X*g1X) + (g1Y*g1Y) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
412 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
413 |
return dist |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
414 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
415 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
416 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
417 |
function RebuildTeamInfo() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
418 |
|
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
419 |
-- make a list of teams |
5819 | 420 |
for i = 0, (TeamsCount-1) do |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
421 |
teamSize[i] = 0 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
422 |
teamIndex[i] = 0 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
423 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
424 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
425 |
-- find out how many hogs per team, and the index of the first hog in hhs |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
426 |
for i = 0, (TeamsCount-1) do |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
427 |
for z = 0, numhhs-1 do |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
428 |
if GetHogTeamName(hhs[z]) == GetTeamName(i) then |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
429 |
if teamSize[i] == 0 then |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
430 |
teamIndex[i] = z -- should give starting index |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
431 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
432 |
teamSize[i] = teamSize[i] + 1 |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
433 |
--add a pointer so this hog appears at i in hhs |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
434 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
435 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
436 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
437 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
438 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
439 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
440 |
function StartTheGame() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
441 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
442 |
gameStarted = true |
13648 | 443 |
AddCaption(loc("Game Started!"), capcolDefault, capgrpGameState) |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
444 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
445 |
for i = 0, ClansCount-1 do |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
446 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
447 |
fGear[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
448 |
fCirc[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
449 |
fSpawnC[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
450 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
451 |
fGearX[i] = fSpawnX[i] |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
452 |
fGearY[i] = fSpawnY[i] |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
453 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
454 |
fCol[i] = GetClanColor(i) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
455 |
fIsMissing[i] = false |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
456 |
fNeedsRespawn[i] = false |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
457 |
fCaptures[i] = 0 |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
458 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
459 |
SetVisualGearValues(fSpawnC[i], fSpawnX[i],fSpawnY[i], 20, 100, 0, 10, 0, 75, 5, fCol[i]) |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
460 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
461 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
462 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
463 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
464 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
465 |
------------------------ |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
466 |
-- game methods |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
467 |
------------------------ |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
468 |
|
11911
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
469 |
function onParameters() |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
470 |
parseParams() |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
471 |
if params["captures"] ~= nil then |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
472 |
local s = string.match(params["captures"], "(%d*)") |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
473 |
if s ~= nil then |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
474 |
captureLimit = math.max(1, tonumber(s)) |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
475 |
end |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
476 |
end |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
477 |
end |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
478 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
479 |
function onGameInit() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
480 |
|
13108
cf2a58dccc4a
CTF: Remove tardis and resurrector
Wuzzy <Wuzzy2@mail.ru>
parents:
13024
diff
changeset
|
481 |
DisableGameFlags(gfKing, gfAISurvival) |
10036 | 482 |
EnableGameFlags(gfDivideTeams) |
483 |
||
12084
8f222872d432
Disable SD for a couple of scripts and mission maps
Wuzzy <almikes@aol.com>
parents:
11912
diff
changeset
|
484 |
-- Disable Sudden Death |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
485 |
WaterRise = 0 |
12084
8f222872d432
Disable SD for a couple of scripts and mission maps
Wuzzy <almikes@aol.com>
parents:
11912
diff
changeset
|
486 |
HealthDecrease = 0 |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
487 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
488 |
|
13024
880662cf41ee
Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents:
12084
diff
changeset
|
489 |
function showCTFMission() |
11911
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
490 |
local captures |
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
491 |
if captureLimit == 1 then |
13119
c3fc9157f740
CTF: Say "clan" instead of "team" in mission panel
Wuzzy <Wuzzy2@mail.ru>
parents:
13118
diff
changeset
|
492 |
captures = string.format(loc("- First clan to capture the flag wins"), captureLimit) |
11911
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
493 |
else |
13119
c3fc9157f740
CTF: Say "clan" instead of "team" in mission panel
Wuzzy <Wuzzy2@mail.ru>
parents:
13118
diff
changeset
|
494 |
captures = string.format(loc("- First clan to score %d captures wins"), captureLimit) |
11911
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
495 |
end |
11910 | 496 |
|
13119
c3fc9157f740
CTF: Say "clan" instead of "team" in mission panel
Wuzzy <Wuzzy2@mail.ru>
parents:
13118
diff
changeset
|
497 |
local rules = loc("Rules:") .. "|" .. |
c3fc9157f740
CTF: Say "clan" instead of "team" in mission panel
Wuzzy <Wuzzy2@mail.ru>
parents:
13118
diff
changeset
|
498 |
loc("- Place your clan flag at the end of your first turn") .. "|" .. |
11910 | 499 |
loc("- Return the enemy flag to your base to score") .."|".. |
11911
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
500 |
captures .. "|" .. |
11910 | 501 |
loc("- You may only score when your flag is in your base") .."|".. |
502 |
loc("- Hogs will drop the flag when killed") .."|".. |
|
503 |
loc("- Dropped flags may be returned or recaptured").."|".. |
|
11911
0e943402b94f
CTF: Allow to set capture limit with script param
Wuzzy <almikes@aol.com>
parents:
11910
diff
changeset
|
504 |
loc("- Hogs will be revived") |
11910 | 505 |
|
15072
d59da429d22c
Add 2 mission panel icons: hedgehog and flags
Wuzzy <Wuzzy2@mail.ru>
parents:
14994
diff
changeset
|
506 |
ShowMission(loc("Capture The Flag"), loc("A Hedgewars minigame"), rules, 11, 0) |
13024
880662cf41ee
Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents:
12084
diff
changeset
|
507 |
end |
11910 | 508 |
|
13024
880662cf41ee
Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents:
12084
diff
changeset
|
509 |
function updateScores() |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
510 |
for i=0, TeamsCount-1 do |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
511 |
local team = GetTeamName(i) |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
512 |
local clan = GetTeamClan(team) |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
513 |
SetTeamLabel(team, tostring(fCaptures[clan])) |
11910 | 514 |
end |
515 |
end |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
516 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
517 |
function onGameStart() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
518 |
|
13024
880662cf41ee
Add team score next to team bars for CTF_Blizard, Control, CTF, Mutant, Space Invasion
Wuzzy <Wuzzy2@mail.ru>
parents:
12084
diff
changeset
|
519 |
showCTFMission() |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
520 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
521 |
RebuildTeamInfo() |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
522 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
523 |
for i=0, ClansCount-1 do |
13109
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
524 |
fCaptures[i] = 0 |
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
525 |
end |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
526 |
|
15135
13e7d4eccb67
CTF/Control: Fix incomplete hedgehog loop bounds
Wuzzy <Wuzzy2@mail.ru>
parents:
15134
diff
changeset
|
527 |
for h=0, numhhs-1 do |
13108
cf2a58dccc4a
CTF: Remove tardis and resurrector
Wuzzy <Wuzzy2@mail.ru>
parents:
13024
diff
changeset
|
528 |
-- Hogs are resurrected for free, so this is pointless |
cf2a58dccc4a
CTF: Remove tardis and resurrector
Wuzzy <Wuzzy2@mail.ru>
parents:
13024
diff
changeset
|
529 |
AddAmmo(hhs[h], amResurrector, 0) |
15134
a41b8b154f74
Remove kamikaze and piano strike from CTF and Control
Wuzzy <Wuzzy2@mail.ru>
parents:
15072
diff
changeset
|
530 |
-- Remove suicidal weapons as they might wipe out the team |
a41b8b154f74
Remove kamikaze and piano strike from CTF and Control
Wuzzy <Wuzzy2@mail.ru>
parents:
15072
diff
changeset
|
531 |
AddAmmo(hhs[h], amKamikaze, 0) |
a41b8b154f74
Remove kamikaze and piano strike from CTF and Control
Wuzzy <Wuzzy2@mail.ru>
parents:
15072
diff
changeset
|
532 |
AddAmmo(hhs[h], amPiano, 0) |
13108
cf2a58dccc4a
CTF: Remove tardis and resurrector
Wuzzy <Wuzzy2@mail.ru>
parents:
13024
diff
changeset
|
533 |
end |
cf2a58dccc4a
CTF: Remove tardis and resurrector
Wuzzy <Wuzzy2@mail.ru>
parents:
13024
diff
changeset
|
534 |
|
13109
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
535 |
updateScores() |
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
536 |
|
13118
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
537 |
SendStat(siGraphTitle, loc("Score graph")) |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
538 |
SendHealthStatsOff() |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
539 |
SendRankingStatsOff() |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
540 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
541 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
542 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
543 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
544 |
function onNewTurn() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
545 |
|
13118
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
546 |
if gameStarted == true and not gameOver then |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
547 |
HandleRespawns() |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
548 |
end |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
549 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
550 |
local flagsPlaced = 0 |
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
551 |
for i=0, ClansCount-1 do |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
552 |
if fSpawnX[i] and fSpawnY[i] then |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
553 |
flagsPlaced = flagsPlaced + 1 |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
554 |
end |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
555 |
end |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
556 |
if not gameStarted and flagsPlaced == ClansCount then |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
557 |
StartTheGame() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
558 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
559 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
560 |
|
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
561 |
function onEndTurn() |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
562 |
-- if the game hasn't started yet, keep track of where we are gonna put the flags on turn end |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
563 |
if not gameStarted and CurrentHedgehog ~= nil then |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
564 |
local clan = GetHogClan(CurrentHedgehog) |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
565 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
566 |
if GetX(CurrentHedgehog) and not fSpawnX[clan] then |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
567 |
fSpawnX[clan] = GetX(CurrentHedgehog) |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
568 |
fSpawnY[clan] = GetY(CurrentHedgehog) |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
569 |
end |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
570 |
end |
13118
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
571 |
|
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
572 |
if gameStarted == true then |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
573 |
DrawScores() |
75afd374b764
CTF: Show team scores and score graph in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13117
diff
changeset
|
574 |
end |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
575 |
end |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
576 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
577 |
function onGameTick() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
578 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
579 |
for i = 0, ClansCount-1 do |
13111 | 580 |
if fThief[i] ~= nil then |
581 |
fThiefX[i] = GetX(fThief[i]) |
|
582 |
fThiefY[i] = GetY(fThief[i]) |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
583 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
584 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
585 |
|
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
586 |
if gameStarted == true and not gameOver then |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
587 |
HandleCircles() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
588 |
if CurrentHedgehog ~= nil then |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
589 |
CheckFlagProximity() |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
590 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
591 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
592 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
593 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
594 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
595 |
function onGearResurrect(gear) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
596 |
|
13115
efcdf31684ca
CTF: Drop flag when carrier uses piano strike
Wuzzy <Wuzzy2@mail.ru>
parents:
13114
diff
changeset
|
597 |
if GetGearType(gear) == gtHedgehog then |
efcdf31684ca
CTF: Drop flag when carrier uses piano strike
Wuzzy <Wuzzy2@mail.ru>
parents:
13114
diff
changeset
|
598 |
-- mark the flag thief as dead if he needed a respawn |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
599 |
for i = 0, ClansCount-1 do |
13115
efcdf31684ca
CTF: Drop flag when carrier uses piano strike
Wuzzy <Wuzzy2@mail.ru>
parents:
13114
diff
changeset
|
600 |
if gear == fThief[i] then |
efcdf31684ca
CTF: Drop flag when carrier uses piano strike
Wuzzy <Wuzzy2@mail.ru>
parents:
13114
diff
changeset
|
601 |
FlagThiefDead(gear) |
efcdf31684ca
CTF: Drop flag when carrier uses piano strike
Wuzzy <Wuzzy2@mail.ru>
parents:
13114
diff
changeset
|
602 |
end |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
603 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
604 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
605 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
606 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
607 |
|
5819 | 608 |
function InABetterPlaceNow(gear) |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
609 |
for h = 0, (numhhs-1) do |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
610 |
if gear == hhs[h] then |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
611 |
for i = 0, ClansCount-1 do |
5819 | 612 |
if gear == fThief[i] then |
613 |
FlagThiefDead(gear) |
|
614 |
end |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
615 |
end |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
616 |
hhs[h] = nil |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
617 |
end |
5819 | 618 |
end |
619 |
end |
|
620 |
||
621 |
function onHogHide(gear) |
|
622 |
InABetterPlaceNow(gear) |
|
623 |
end |
|
624 |
||
625 |
function onHogRestore(gear) |
|
626 |
for i = 0, (numhhs-1) do |
|
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
627 |
if (hhs[i] == nil) then |
5819 | 628 |
hhs[i] = gear |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
629 |
break |
5819 | 630 |
end |
631 |
end |
|
632 |
end |
|
633 |
||
13109
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
634 |
function onHogAttack(ammoType) |
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
635 |
if not gameStarted and ammoType == amTardis then |
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
636 |
local i = GetHogClan(CurrentHedgehog) |
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
637 |
fSpawnX[i] = GetX(CurrentHedgehog) |
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
638 |
fSpawnY[i] = GetY(CurrentHedgehog) |
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
639 |
end |
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
640 |
end |
5819 | 641 |
|
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
642 |
function onGearAdd(gear) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
643 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
644 |
if GetGearType(gear) == gtHedgehog then |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
645 |
hhs[numhhs] = gear |
13120
64d84011a48e
CTF: Write hog with most captures in stats screen
Wuzzy <Wuzzy2@mail.ru>
parents:
13119
diff
changeset
|
646 |
capturesPerHog[gear] = 0 |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
647 |
numhhs = numhhs + 1 |
7838 | 648 |
SetEffect(gear, heResurrectable, 1) |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
649 |
|
5277 | 650 |
elseif GetGearType(gear) == gtPiano then |
13116
10c914738f22
CTF: Allow to be played with more than 2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13115
diff
changeset
|
651 |
for i = 0, ClansCount-1 do |
5277 | 652 |
if CurrentHedgehog == fThief[i] then |
13115
efcdf31684ca
CTF: Drop flag when carrier uses piano strike
Wuzzy <Wuzzy2@mail.ru>
parents:
13114
diff
changeset
|
653 |
FlagThiefDead(CurrentHedgehog) |
5277 | 654 |
end |
655 |
end |
|
656 |
||
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
657 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
658 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
659 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
660 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
661 |
function onGearDelete(gear) |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
662 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
663 |
if GetGearType(gear) == gtHedgehog then |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5821
diff
changeset
|
664 |
InABetterPlaceNow(gear) |
13109
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
665 |
elseif GetGearType(gear) == gtKamikaze and not gameStarted then |
e0ec37c8104d
CTF: Fix Lua errors when using kamikaze or tardis
Wuzzy <Wuzzy2@mail.ru>
parents:
13108
diff
changeset
|
666 |
local i = GetHogClan(CurrentHedgehog) |
13114
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
667 |
if i <= 1 then |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
668 |
fSpawnX[i] = GetX(CurrentHedgehog) |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
669 |
fSpawnY[i] = GetY(CurrentHedgehog) |
59ebdb80d693
Capture the Flag: Fix many Lua errors when playing with >2 clans
Wuzzy <Wuzzy2@mail.ru>
parents:
13111
diff
changeset
|
670 |
end |
4662
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
671 |
end |
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
672 |
|
63aafc9c2a81
Add a bunch of lua from mikade, update translation files
mikade+nemo
parents:
diff
changeset
|
673 |
end |