author | Wuzzy <Wuzzy2@mail.ru> |
Fri, 02 Nov 2018 10:31:08 +0100 | |
changeset 14091 | a5be3ef4bbbe |
parent 13687 | a8b2a5e7e9db |
child 14322 | 8fc6ac47f00a |
permissions | -rw-r--r-- |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
1 |
------------------------------------ |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
2 |
-- TUMBLER |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
3 |
-- v.0.8.0 |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
4 |
------------------------------------ |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
5 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
6 |
--[[ |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
7 |
SCRIPT PARAMETER |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
8 |
The script is configured with the script parameter. |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
9 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
10 |
Additional configuration in the game scheme is permitted. |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
11 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
12 |
The script parameter is a comma-separated list of key=value pairs. |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
13 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
14 |
The values are always whole numbers, the keys are listed below. |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
15 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
16 |
Key Default Description |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
17 |
---------------------------------------------------------------------- |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
18 |
spawnbarrels 2 Number of barrels that spawn per turn |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
19 |
spawnmines 4 Number of mines that spawn per turn |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
20 |
ammoflamer 50 Initial fuel/ammo of Flamer |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
21 |
ammobarrel 2 Initial ammo of Barrel Launcher |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
22 |
ammomine 1 Initial ammo of Mine Deployer |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
23 |
minetimerplaced 1000 Mine timer of mines dropped from Mine Deployer (!) in milliseconds |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
24 |
bonustime 25 Bonus time in utility crates, in seconds |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
25 |
bonusflames 800 Flamer fuel bonus in ammo crates |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
26 |
chanceammo 30 Chance (in %) that an ammo crate will drop before a turn |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
27 |
chancetime 50 Chance (in %) that an utility crate (extra time) will drop before a turn |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
28 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
29 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
30 |
EXAMPLES: |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
31 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
32 |
ammoflamer=800, ammomine=5 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
33 |
--> Starts the game with 800 Flamer fuel and 5 Mine Deployer mines. |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
34 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
35 |
chancetime=0 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
36 |
--> No clock crates. |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
37 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
38 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
39 |
GAME SCHEME CONFIGURATION |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
40 |
The script recognizes most game modifiers and settings, but changing the following game modifiers |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
41 |
will have no effect: |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
42 |
- Artillery |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
43 |
- Tag Team |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
44 |
- Shared ammo |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
45 |
- Per-hog ammo |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
46 |
- Place hogs |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
47 |
- Invulnerable |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
48 |
- Reset weapons |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
49 |
]] |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
50 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
51 |
|
8043 | 52 |
HedgewarsScriptLoad("/Scripts/Locale.lua") |
53 |
HedgewarsScriptLoad("/Scripts/Tracker.lua") |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
54 |
HedgewarsScriptLoad("/Scripts/Params.lua") |
4872 | 55 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
56 |
local fMod = 1000000 -- use this for dev and .16+ games |
5720 | 57 |
|
4872 | 58 |
local leftOn = false |
59 |
local rightOn = false |
|
60 |
local upOn = false |
|
61 |
local downOn = false |
|
5720 | 62 |
local preciseOn = false |
4872 | 63 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
64 |
local wep = {} |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
65 |
local wepAmmo = {} |
5720 | 66 |
local wepCol = {} |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
67 |
local wepIndex = 0 |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
68 |
local wepCount = 0 |
5720 | 69 |
local fGears = 0 |
70 |
||
71 |
local mineSpawn |
|
72 |
local barrelSpawn |
|
73 |
||
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
74 |
local roundKills = 0 |
4872 | 75 |
|
5720 | 76 |
local moveTimer = 0 |
77 |
local fireTimer = 0 |
|
4872 | 78 |
local TimeLeftCounter = 0 |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
79 |
local TimeLeft = 0 |
4872 | 80 |
local stopMovement = false |
81 |
local tumbleStarted = false |
|
82 |
||
5720 | 83 |
local vTag = {} |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
84 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
85 |
local barrelSpawn = 2 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
86 |
local mineSpawn = 4 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
87 |
local initAmmoFlamer = 50 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
88 |
local initAmmoBarrel = 2 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
89 |
local initAmmoMine = 1 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
90 |
local placedMineTime = 1000 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
91 |
local bonusTime = 25 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
92 |
local bonusFlames = 800 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
93 |
local chanceAmmo = 30 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
94 |
local chanceTime = 50 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
95 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
96 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
97 |
------------------------ |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
98 |
-- version 0.4 |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
99 |
------------------------ |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
100 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
101 |
-- removed some old code/comments |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
102 |
-- removed both shell and mortar as the primary and secondary weapons |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
103 |
-- the primary weapon is now an explosive(barrel) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
104 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
105 |
-- added support for picking up barrels scattered about the map (backspace) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
106 |
-- added support for dragging around mines (enter toggles on/off) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
107 |
-- added support for primary fire being onAttackUp |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
108 |
-- added a trail to indicate when the player has 5s or less left to tumble |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
109 |
-- updated showmission to reflect changed controls and options |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
110 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
111 |
------------------------ |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
112 |
-- version 0.5 |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
113 |
------------------------ |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
114 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
115 |
-- changed some of the user feedback |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
116 |
-- i can't remember?? |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
117 |
-- substituted onAttackUp for onPrecise() |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
118 |
-- brought in line with new velocity changes |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
119 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
120 |
------------------------ |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
121 |
-- version 0.6 |
4872 | 122 |
------------------------ |
123 |
||
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
124 |
-- reduced starting "ammo" |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
125 |
-- randomly spawn new barrels/mines on new turn |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
126 |
-- updated user feedback |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
127 |
-- better locs and coloured addcaptions |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
128 |
-- added tag for turntime |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
129 |
-- removed tractor beam |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
130 |
-- added two new weapons and changed ammo handling |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
131 |
-- health crates now give tumbler time, and wep/utility give flamer ammo |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
132 |
-- explosives AND mines can be picked up to increase their relative ammo |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
133 |
-- replaced "no weapon" selected message that hw serves |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
134 |
-- modified crate frequencies a bit |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
135 |
-- added some simple kill-based achievements, i think |
4872 | 136 |
|
5720 | 137 |
------------------------ |
138 |
-- version 0.7 |
|
139 |
------------------------ |
|
140 |
||
141 |
-- a few code optimisations/performance tweaks |
|
142 |
-- removed some deprecated code |
|
143 |
-- fix a potential spawn bug |
|
144 |
||
145 |
-- improved HUD (now shows ammo counts) |
|
146 |
-- improved user feedback (less generic messages) |
|
147 |
-- colour-coded addcaptions to match hud :) |
|
148 |
||
149 |
-- base tumbling time now equals scheme turntime |
|
150 |
-- tumbling time extension is now based on the amount of health contained in crate |
|
151 |
-- new mines per turn based on minesnum |
|
152 |
-- new barrels per turn based on explosives |
|
153 |
||
154 |
-- added 2 more achievements: barrel eater and mine eater (like kills, don't do anything atm) |
|
155 |
-- slightly increased grab distance for explosives/mines |
|
156 |
-- slightly increased flamer velocity |
|
157 |
-- slightly decreased flamer volume |
|
158 |
-- added a flame vaporiser (based on number of flame gears?) |
|
159 |
-- give tumblers an extra 47 health on the start of their tumble to counter the grenade (exp) |
|
160 |
-- refocus camera on tumbler on newturn (not on crates, barrels etc) |
|
161 |
-- increase delay: yes, yes, eat your hearts out |
|
162 |
||
163 |
-- commit log |
|
164 |
-- Better HUD |
|
165 |
-- Allow more user customization |
|
166 |
-- Bugfix for new gear spawns |
|
167 |
-- Performance tweaks |
|
168 |
-- Variety of small gameplay changes |
|
169 |
||
5825
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
170 |
------------------------ |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
171 |
-- version 0.7.1 |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
172 |
------------------------ |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
173 |
|
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
174 |
-- redraw HUD on screen resolution change |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
175 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
176 |
------------------------ |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
177 |
-- version 0.8.0 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
178 |
------------------------ |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
179 |
-- Allow detailed configuration with script parameter (see above) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
180 |
-- Alternative weapon selection with slot keys |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
181 |
--- Slot 1: Barrel Launcher |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
182 |
--- Slot 2: Mine Deployer |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
183 |
--- Slot 3: Flamer |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
184 |
-- Add mine/barrel launch sounds |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
185 |
-- Improved ammo display |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
186 |
-- Denied sound + message when trying to fire empty ammo weapon |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
187 |
-- Slightly better mission description |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
188 |
--- The old hacks by (ab)using MinesNum, Explosives and HealthCaseAmount have been removed |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
189 |
-- Permanently disable some gameflags which currently won't work together with this script (see above) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
190 |
-- Show flamer ammo as fuel everywhere (no more percentage confusion) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
191 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
192 |
--------------------------- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
193 |
-- some other ideas/things |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
194 |
--------------------------- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
195 |
--[[ |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
196 |
-- allow invulnerability mode (currently broken, thus disabled) |
5720 | 197 |
-- better barrel/minespawn effects |
198 |
-- separate grab distance for mines/barrels |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
199 |
-- bug: message color for remaining ammo does not change if two times the same message |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
200 |
(but in different desired color) is shown in quick succession (i.e. "Out of ammo!" for all weapons) |
5720 | 201 |
-- [probably not] make barrels always explode? |
202 |
-- [probably not] persistent ammo? |
|
203 |
-- [probably not] dont hurt tumblers and restore their health at turn end? |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
204 |
]] |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
205 |
|
5720 | 206 |
|
207 |
---------------------------------------------------------------- |
|
208 |
---------------------------------------------------------------- |
|
209 |
||
210 |
local flames = {} |
|
211 |
local fGearValues = {} |
|
212 |
||
213 |
function runOnflames(func) |
|
214 |
for k, gear in ipairs(flames) do |
|
215 |
func(gear) |
|
216 |
end |
|
217 |
end |
|
218 |
||
219 |
function trackFGear(gear) |
|
220 |
table.insert(flames, gear) |
|
221 |
end |
|
222 |
||
223 |
function trackFGearDeletion(gear) |
|
224 |
fGearValues[gear] = nil |
|
225 |
for k, g in ipairs(flames) do |
|
226 |
if g == gear then |
|
227 |
table.remove(flames, k) |
|
228 |
break |
|
229 |
end |
|
230 |
end |
|
231 |
end |
|
232 |
||
233 |
function getFGearValue(gear, key) |
|
234 |
if fGearValues[gear] ~= nil then |
|
235 |
return fGearValues[gear][key] |
|
236 |
end |
|
237 |
return nil |
|
238 |
end |
|
239 |
||
240 |
function setFGearValue(gear, key, value) |
|
241 |
found = false |
|
242 |
for id, values in pairs(fGearValues) do |
|
243 |
if id == gear then |
|
244 |
values[key] = value |
|
245 |
found = true |
|
246 |
end |
|
247 |
end |
|
248 |
if not found then |
|
249 |
fGearValues[gear] = { [key] = value } |
|
250 |
end |
|
251 |
end |
|
252 |
||
253 |
function decreaseFGearValue(gear, key) |
|
254 |
for id, values in pairs(fGearValues) do |
|
255 |
if id == gear then |
|
256 |
values[key] = values[key] - 1 |
|
257 |
end |
|
258 |
end |
|
259 |
end |
|
260 |
||
261 |
function HandleLife(gear) |
|
262 |
||
263 |
decreaseFGearValue(gear, "L") |
|
264 |
if getFGearValue(gear, "L") == 0 then |
|
265 |
AddVisualGear(GetX(gear), GetY(gear), vgtSmoke, 0, false) |
|
266 |
DeleteGear(gear) |
|
267 |
end |
|
268 |
||
269 |
end |
|
270 |
||
271 |
---------------------------------------------------------------- |
|
272 |
---------------------------------------------------------------- |
|
273 |
||
274 |
function HideTags() |
|
275 |
||
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
276 |
for i = 0, 3 do |
5720 | 277 |
SetVisualGearValues(vTag[i],0,0,0,0,0,1,0, 0, 240000, 0xffffff00) |
278 |
end |
|
279 |
||
280 |
end |
|
281 |
||
282 |
function DrawTag(i) |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
283 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
284 |
zoomL = 1.3 |
4872 | 285 |
|
5720 | 286 |
xOffset = 40 |
287 |
||
288 |
if i == 0 then |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
289 |
yOffset = 40 |
12062
3d03e9294633
Use yellow clock color in Space Invasion and Tumbler
Wuzzy <almikes@aol.com>
parents:
12053
diff
changeset
|
290 |
tCol = 0xffee00ff |
5720 | 291 |
tValue = TimeLeft |
292 |
elseif i == 1 then |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
293 |
zoomL = 1.1 |
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
294 |
yOffset = 70 |
5720 | 295 |
tCol = wepCol[0] |
296 |
tValue = wepAmmo[0] |
|
297 |
elseif i == 2 then |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
298 |
zoomL = 1.1 |
5720 | 299 |
xOffset = 40 + 35 |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
300 |
yOffset = 70 |
5720 | 301 |
tCol = wepCol[1] |
302 |
tValue = wepAmmo[1] |
|
303 |
elseif i == 3 then |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
304 |
zoomL = 1.1 |
5720 | 305 |
xOffset = 40 + 70 |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
306 |
yOffset = 70 |
5720 | 307 |
tCol = wepCol[2] |
308 |
tValue = wepAmmo[2] |
|
309 |
end |
|
310 |
||
311 |
DeleteVisualGear(vTag[i]) |
|
312 |
vTag[i] = AddVisualGear(0, 0, vgtHealthTag, 0, false) |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
313 |
SetVisualGearValues ( |
5720 | 314 |
vTag[i], --id |
315 |
-(ScreenWidth/2) + xOffset, --xoffset |
|
316 |
ScreenHeight - yOffset, --yoffset |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
317 |
0, --dx |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
318 |
0, --dy |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
319 |
zoomL, --zoom |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
320 |
1, --~= 0 means align to screen |
13685
09ea1faf97ca
Remove calls to GetVisualGearValues where it's not needed
Wuzzy <Wuzzy2@mail.ru>
parents:
13643
diff
changeset
|
321 |
nil, --frameticks |
5720 | 322 |
tValue, --value |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
323 |
240000, --timer |
5720 | 324 |
tCol --GetClanColor( GetHogClan(CurrentHedgehog) ) |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
325 |
) |
4872 | 326 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
327 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
328 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
329 |
function GetGearDistance(gear) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
330 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
331 |
g1X, g1Y = GetGearPosition(gear) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
332 |
g2X, g2Y = GetGearPosition(CurrentHedgehog) |
4872 | 333 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
334 |
q = g1X - g2X |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
335 |
w = g1Y - g2Y |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
336 |
return( (q*q) + (w*w) ) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
337 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
338 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
339 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
340 |
-- add to your ammo ***WHEN YOU PUSH A KEY*** near them |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
341 |
-- yes that was my justification for a non generic method |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
342 |
function CheckProximityToExplosives(gear) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
343 |
|
5720 | 344 |
if (GetGearDistance(gear) < 1400) then |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
345 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
346 |
if (GetGearType(gear) == gtExplosives) then |
5720 | 347 |
|
348 |
wepAmmo[0] = wepAmmo[0] + 1 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
349 |
PlaySound(sndShotgunReload) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
350 |
DeleteGear(gear) |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
351 |
AddCaption(loc("+1 barrel!"), wepCol[0], capgrpAmmoinfo ) |
5720 | 352 |
DrawTag(1) |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
353 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
354 |
elseif (GetGearType(gear) == gtMine) then |
5720 | 355 |
wepAmmo[1] = wepAmmo[1] + 1 |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
356 |
PlaySound(sndShotgunReload) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
357 |
DeleteGear(gear) |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
358 |
AddCaption(loc("+1 mine!"), wepCol[1], capgrpAmmoinfo ) |
5720 | 359 |
DrawTag(2) |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
360 |
|
5720 | 361 |
end |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
362 |
|
4872 | 363 |
end |
364 |
||
365 |
end |
|
366 |
||
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
367 |
-- check proximity on crates |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
368 |
function CheckProximity(gear) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
369 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
370 |
dist = GetGearDistance(gear) |
5720 | 371 |
|
372 |
if (dist < 1600) and (GetGearType(gear) == gtCase) then |
|
373 |
||
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
374 |
if band(GetGearPos(gear), 0x4) ~= 0 then |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
375 |
|
12062
3d03e9294633
Use yellow clock color in Space Invasion and Tumbler
Wuzzy <almikes@aol.com>
parents:
12053
diff
changeset
|
376 |
AddCaption(string.format(loc("+%d seconds!"), bonusTime), 0xffee00ff, capgrpMessage2 ) |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
377 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
378 |
TimeLeft = TimeLeft + bonusTime |
5720 | 379 |
DrawTag(0) |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
380 |
PlaySound(sndExtraTime) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
381 |
elseif band(GetGearPos(gear), 0x1) ~= 0 then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
382 |
wepAmmo[2] = wepAmmo[2] + bonusFlames |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
383 |
PlaySound(sndShotgunReload) |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
384 |
AddCaption(string.format(loc("+%d flamer fuel!"), bonusFlames), wepCol[2], capgrpAmmoinfo ) |
5720 | 385 |
DrawTag(3) |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
386 |
end |
5720 | 387 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
388 |
DeleteGear(gear) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
389 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
390 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
391 |
|
4872 | 392 |
end |
393 |
||
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
394 |
function shotsRemainingMessage() |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
395 |
local shotsMsg |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
396 |
if wepAmmo[wepIndex] <= 0 then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
397 |
shotsMsg = loc("Out of ammo!") |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
398 |
else |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
399 |
if wepIndex == 2 then |
12052
144264948277
Change ammo display texts in Tumbler to avoid pluralization failures
Wuzzy <almikes@aol.com>
parents:
12051
diff
changeset
|
400 |
shotsMsg = loc("Fuel: %d") |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
401 |
else |
12052
144264948277
Change ammo display texts in Tumbler to avoid pluralization failures
Wuzzy <almikes@aol.com>
parents:
12051
diff
changeset
|
402 |
shotsMsg = loc("Ammo: %d") |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
403 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
404 |
end |
13581 | 405 |
AddCaption(string.format(shotsMsg, wepAmmo[wepIndex]), wepCol[wepIndex],capgrpAmmostate) |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
406 |
end |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
407 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
408 |
function ChangeWeapon(newIndex) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
409 |
if newIndex == nil then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
410 |
wepIndex = wepIndex + 1 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
411 |
if wepIndex == wepCount then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
412 |
wepIndex = 0 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
413 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
414 |
else |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
415 |
wepIndex = newIndex |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
416 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
417 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
418 |
local selText |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
419 |
if wepIndex == 0 then |
13581 | 420 |
selText = loc("Barrel Launcher") |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
421 |
elseif wepIndex == 1 then |
13581 | 422 |
selText = loc("Mine Deployer") |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
423 |
else |
13581 | 424 |
selText = loc("Flamer") |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
425 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
426 |
AddCaption(selText, wepCol[wepIndex],capgrpAmmoinfo ) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
427 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
428 |
shotsRemainingMessage() |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
429 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
430 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
431 |
--------------- |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
432 |
-- Parse parameters |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
433 |
--------------- |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
434 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
435 |
function parseNum(key, default, min, max) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
436 |
local num = tonumber(params[key]) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
437 |
if type(num) ~= "number" then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
438 |
if default ~= nil then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
439 |
return default |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
440 |
else |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
441 |
return nil |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
442 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
443 |
end |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
444 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
445 |
if min ~= nil then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
446 |
num = math.max(min, num) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
447 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
448 |
if max ~= nil then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
449 |
num = math.min(max, num) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
450 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
451 |
return num |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
452 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
453 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
454 |
function onParameters() |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
455 |
parseParams() |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
456 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
457 |
barrelSpawn = parseNum("spawnbarrels", barrelSpawn, 0) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
458 |
mineSpawn = parseNum("spawnmines", mineSpawn, 0) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
459 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
460 |
initAmmoFlamer = parseNum("ammoflamer", initAmmoFlamer, 0) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
461 |
initAmmoBarrel = parseNum("ammobarrel", initAmmoBarrel, 0) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
462 |
initAmmoMine = parseNum("ammomine", initAmmoMine, 0) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
463 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
464 |
placedMineTime = parseNum("minetimeplaced", placedMineTime, 0, 5000) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
465 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
466 |
bonusTime = parseNum("bonustime", bonusTime, 0) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
467 |
bonusFlames = parseNum("bonusflames", bonusFlames, 0) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
468 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
469 |
chanceAmmo = parseNum("chanceammo", chanceAmmo, 0, 100) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
470 |
chanceTime = parseNum("chancetime", chanceTime, 0, 100) |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
471 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
472 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
473 |
--------------- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
474 |
-- action keys |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
475 |
--------------- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
476 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
477 |
function onPrecise() |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
478 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
479 |
if (CurrentHedgehog ~= nil) and (stopMovement == false) and (tumbleStarted == true) then |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
480 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
481 |
if wepAmmo[wepIndex] <= 0 then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
482 |
PlaySound(sndDenied) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
483 |
shotsRemainingMessage() |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
484 |
else |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
485 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
486 |
wepAmmo[wepIndex] = wepAmmo[wepIndex] - 1 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
487 |
shotsRemainingMessage() |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
488 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
489 |
if wep[wepIndex] == loc("Barrel Launcher") then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
490 |
morte = AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtExplosives, 0, 0, 0, 1) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
491 |
CopyPV(CurrentHedgehog, morte) -- new addition |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
492 |
x,y = GetGearVelocity(morte) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
493 |
x = x*2 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
494 |
y = y*2 |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
495 |
SetGearVelocity(morte, x, y) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
496 |
DrawTag(1) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
497 |
PlaySound(sndThrowRelease) |
5720 | 498 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
499 |
elseif wep[wepIndex] == loc("Mine Deployer") then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
500 |
morte = AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtMine, 0, 0, 0, 0) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
501 |
SetTimer(morte, placedMineTime) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
502 |
DrawTag(2) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
503 |
PlaySound(sndThrowRelease) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
504 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
505 |
end |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
506 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
507 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
508 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
509 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
510 |
preciseOn = true |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
511 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
512 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
513 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
514 |
function onPreciseUp() |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
515 |
preciseOn = false |
4872 | 516 |
end |
517 |
||
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
518 |
onAttack = onPrecise |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
519 |
onAttackUp = onPreciseUp |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
520 |
|
4872 | 521 |
function onHJump() |
5720 | 522 |
-- pick up explosives/mines if nearby them |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
523 |
if (CurrentHedgehog ~= nil) and (stopMovement == false) and (tumbleStarted == true) then |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
524 |
runOnGears(CheckProximityToExplosives) |
4872 | 525 |
end |
526 |
end |
|
527 |
||
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
528 |
------------------- |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
529 |
-- Weapon selection |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
530 |
------------------- |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
531 |
|
4872 | 532 |
function onLJump() |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
533 |
if (CurrentHedgehog ~= nil) and (stopMovement == false) and (tumbleStarted == true) then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
534 |
ChangeWeapon() |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
535 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
536 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
537 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
538 |
function onSlot(slot) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
539 |
if (CurrentHedgehog ~= nil) and (stopMovement == false) and (tumbleStarted == true) then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
540 |
if slot >= 0 and slot <= 2 then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
541 |
ChangeWeapon(slot) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
542 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
543 |
end |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
544 |
end |
4872 | 545 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
546 |
----------------- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
547 |
-- movement keys |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
548 |
----------------- |
4872 | 549 |
|
550 |
function onLeft() |
|
551 |
if (CurrentHedgehog ~= nil) and (stopMovement == false) then |
|
552 |
leftOn = true |
|
553 |
end |
|
554 |
end |
|
555 |
||
556 |
function onRight() |
|
557 |
if (CurrentHedgehog ~= nil) and (stopMovement == false) then |
|
558 |
rightOn = true |
|
559 |
end |
|
560 |
end |
|
561 |
||
562 |
function onUp() |
|
563 |
if (CurrentHedgehog ~= nil) and (stopMovement == false) then |
|
564 |
upOn = true |
|
565 |
end |
|
566 |
end |
|
567 |
||
568 |
function onDown() |
|
569 |
if (CurrentHedgehog ~= nil) and (stopMovement == false) then |
|
570 |
downOn = true |
|
571 |
end |
|
572 |
end |
|
573 |
||
574 |
function onDownUp() |
|
575 |
downOn = false |
|
576 |
end |
|
577 |
function onUpUp() |
|
578 |
upOn = false |
|
579 |
end |
|
580 |
function onLeftUp() |
|
581 |
leftOn = false |
|
582 |
end |
|
583 |
function onRightUp() |
|
584 |
rightOn = false |
|
585 |
end |
|
586 |
||
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
587 |
-------------------------- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
588 |
-- other event handlers |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
589 |
-------------------------- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
590 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
591 |
function onGameInit() |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
592 |
CaseFreq = 0 |
5720 | 593 |
HealthCaseProb = 0 |
594 |
Delay = 1000 |
|
595 |
||
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
596 |
for i = 0, 3 do |
13687
a8b2a5e7e9db
Clean up more visual gears stuff in scripts
Wuzzy <Wuzzy2@mail.ru>
parents:
13685
diff
changeset
|
597 |
vTag[i] = AddVisualGear(0, 0, vgtHealthTag, 0, false) |
5720 | 598 |
end |
599 |
||
600 |
HideTags() |
|
601 |
||
602 |
wep[0] = loc("Barrel Launcher") |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
603 |
wep[1] = loc("Mine Deployer") |
5720 | 604 |
wep[2] = loc("Flamer") |
605 |
||
606 |
wepCol[0] = 0x78818eff |
|
607 |
wepCol[1] = 0xa12a77ff |
|
608 |
wepCol[2] = 0xf49318ff |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
609 |
|
5720 | 610 |
wepCount = 3 |
611 |
||
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
612 |
DisableGameFlags(gfArtillery + gfSharedAmmo + gfPerHogAmmo + gfTagTeam + gfPlaceHog + gfInvulnerable) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
613 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
614 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
615 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
616 |
function onGameStart() |
5720 | 617 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
618 |
local clockStr |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
619 |
local timeStr |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
620 |
|
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
621 |
if chanceTime > 0 then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
622 |
clockStr = loc("Utility crates extend your time.") .. "|" |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
623 |
timeStr = string.format(loc("Time extension: %ds"), bonusTime) .. "|" |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
624 |
else |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
625 |
clockStr = "" |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
626 |
timeStr = "" |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
627 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
628 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
629 |
ShowMission ( |
12064 | 630 |
loc("Tumbler"), |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
631 |
loc("A Hedgewars mini-game"), |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
632 |
loc("Fly around and hurl explosives to your enemies.") .."|".. |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
633 |
loc("Eliminate the enemy hogs to win.") .. "|" .. |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
634 |
" " .. "|" .. |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
635 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
636 |
string.format(loc("New mines per turn: %d"), mineSpawn) .. "|" .. |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
637 |
string.format(loc("New barrels per turn: %d"), barrelSpawn) .. "|" .. |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
638 |
timeStr .. |
5720 | 639 |
" " .. "|" .. |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
640 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
641 |
loc("Movement: [Up], [Down], [Left], [Right]") .. "|" .. |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
642 |
loc("Fire: [Precise]") .. "|" .. |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
643 |
loc("Change weapon: [Long jump] or [Slot 1]-[Slot 3]") .. "|" .. |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
644 |
loc("Grab mines/barrels: [High jump]") .. "|" .. |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
645 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
646 |
" " .. "|" .. |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
647 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
648 |
clockStr .. |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
649 |
loc("Ammo is reset at the end of your turn.") .. "|" .. |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
650 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
651 |
"", 4, 4000 |
5720 | 652 |
) |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
653 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
654 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
655 |
|
5825
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
656 |
function onScreenResize() |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
657 |
|
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
658 |
-- redraw Tags so that their screen locations are updated |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
659 |
if (CurrentHedgehog ~= nil) and (tumbleStarted == true) then |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
660 |
for i = 0, 3 do |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
661 |
DrawTag(i) |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
662 |
end |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
663 |
end |
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
664 |
|
a6eab1b7c00d
Scripting: Update screen dimensions on screen resize and introduce onScreenResize() event.
sheepluva
parents:
5720
diff
changeset
|
665 |
end |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
666 |
|
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
667 |
function onAmmoStoreInit() |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
668 |
-- Remove all conventional weapons |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
669 |
for a=0, 56 do |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
670 |
SetAmmo(a, 0, 0, 0, 0) |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
671 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
672 |
end |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
673 |
|
4872 | 674 |
function onNewTurn() |
5720 | 675 |
|
4872 | 676 |
stopMovement = false |
677 |
tumbleStarted = false |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
678 |
|
5720 | 679 |
-- randomly create new barrels mines on the map every turn (can be disabled by setting mine/barrels to 0 in scheme) |
680 |
for i = 0, barrelSpawn-1 do |
|
681 |
gear = AddGear(100, 100, gtExplosives, 0, 0, 0, 0) |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
682 |
SetHealth(gear, 100) |
5720 | 683 |
if FindPlace(gear, false, 0, LAND_WIDTH, false) ~= nil then |
13685
09ea1faf97ca
Remove calls to GetVisualGearValues where it's not needed
Wuzzy <Wuzzy2@mail.ru>
parents:
13643
diff
changeset
|
684 |
AddVisualGear(GetX(gear), GetY(gear), vgtBigExplosion, 0, false) |
5720 | 685 |
end |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
686 |
end |
5720 | 687 |
for i = 0, mineSpawn-1 do |
688 |
gear = AddGear(100, 100, gtMine, 0, 0, 0, 0) |
|
689 |
if FindPlace(gear, false, 0, LAND_WIDTH, false) ~= nil then |
|
13685
09ea1faf97ca
Remove calls to GetVisualGearValues where it's not needed
Wuzzy <Wuzzy2@mail.ru>
parents:
13643
diff
changeset
|
690 |
AddVisualGear(GetX(gear), GetY(gear), vgtBigExplosion, 0, false) |
5720 | 691 |
end |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
692 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
693 |
|
5720 | 694 |
-- randomly spawn time extension crates / flamer fuel on the map |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
695 |
r = GetRandom(100) |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
696 |
if r > 100-chanceTime then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
697 |
gear = SpawnFakeUtilityCrate(0, 0, false, false) |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
698 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
699 |
r = GetRandom(100) |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
700 |
if r > 100-chanceAmmo then |
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
701 |
gear = SpawnFakeAmmoCrate(0, 0, false, false) |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
702 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
703 |
|
5720 | 704 |
HideTags() |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
705 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
706 |
--reset ammo counts |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
707 |
wepAmmo[0] = 2 |
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
708 |
wepAmmo[1] = 1 |
5720 | 709 |
wepAmmo[2] = 50 -- 50000 -- 50 |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
710 |
wepIndex = 2 |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
711 |
ChangeWeapon() |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
712 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
713 |
roundKills = 0 |
5720 | 714 |
|
715 |
FollowGear(CurrentHedgehog) |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
716 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
717 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
718 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
719 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
720 |
function DisableTumbler() |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
721 |
stopMovement = true |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
722 |
upOn = false |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
723 |
down = false |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
724 |
leftOn = false |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
725 |
rightOn = false |
5720 | 726 |
HideTags() |
4872 | 727 |
end |
728 |
||
729 |
function onGameTick() |
|
730 |
||
731 |
-- start the player tumbling with a boom once their turn has actually begun |
|
732 |
if tumbleStarted == false then |
|
733 |
if (TurnTimeLeft > 0) and (TurnTimeLeft ~= TurnTime) then |
|
734 |
tumbleStarted = true |
|
5720 | 735 |
TimeLeft = (TurnTime/1000) |
4872 | 736 |
AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtGrenade, 0, 0, 0, 1) |
5720 | 737 |
SetHealth(CurrentHedgehog, GetHealth(CurrentHedgehog) + 47) -- new |
738 |
for i = 0, 3 do |
|
739 |
DrawTag(i) |
|
5827
a416f1070fdf
we don't need trailing whitespaces... I guess :P
sheepluva
parents:
5825
diff
changeset
|
740 |
end |
4872 | 741 |
end |
742 |
end |
|
743 |
||
744 |
if (CurrentHedgehog ~= nil) and (tumbleStarted == true) then |
|
745 |
||
5720 | 746 |
runOnGears(CheckProximity) -- crates |
4872 | 747 |
|
748 |
-- Calculate and display turn time |
|
749 |
TimeLeftCounter = TimeLeftCounter + 1 |
|
750 |
if TimeLeftCounter == 1000 then |
|
751 |
TimeLeftCounter = 0 |
|
752 |
TimeLeft = TimeLeft - 1 |
|
753 |
||
12053 | 754 |
-- Countdown sounds |
755 |
if TimeLeft == 5 then |
|
756 |
PlaySound(sndHurry, CurrentHedgehog) |
|
757 |
elseif TimeLeft <= 4 and TimeLeft >= 1 then |
|
758 |
PlaySound(_G["sndCountdown"..TimeLeft]) |
|
759 |
end |
|
760 |
||
4872 | 761 |
if TimeLeft >= 0 then |
5720 | 762 |
DrawTag(0) |
4872 | 763 |
end |
764 |
||
765 |
end |
|
766 |
||
767 |
if TimeLeft == 0 then |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
768 |
DisableTumbler() |
4872 | 769 |
end |
770 |
||
771 |
-- handle movement based on IO |
|
772 |
moveTimer = moveTimer + 1 |
|
773 |
if moveTimer == 100 then -- 100 |
|
774 |
moveTimer = 0 |
|
775 |
||
5720 | 776 |
runOnflames(HandleLife) |
777 |
||
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
778 |
--------------- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
779 |
-- new trail code |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
780 |
--------------- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
781 |
-- the trail lets you know you have 5s left to pilot, akin to birdy feathers |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
782 |
if (TimeLeft <= 5) and (TimeLeft > 0) then |
13685
09ea1faf97ca
Remove calls to GetVisualGearValues where it's not needed
Wuzzy <Wuzzy2@mail.ru>
parents:
13643
diff
changeset
|
783 |
local tempE = AddVisualGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), vgtSmoke, 0, false) |
09ea1faf97ca
Remove calls to GetVisualGearValues where it's not needed
Wuzzy <Wuzzy2@mail.ru>
parents:
13643
diff
changeset
|
784 |
SetVisualGearValues(tempE, nil, nil, nil, nil, nil, nil, nil, nil, nil, GetClanColor(GetHogClan(CurrentHedgehog)) ) |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
785 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
786 |
-------------- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
787 |
|
4872 | 788 |
dx, dy = GetGearVelocity(CurrentHedgehog) |
789 |
||
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
790 |
dxlimit = 0.4*fMod |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
791 |
dylimit = 0.4*fMod |
4872 | 792 |
|
793 |
if dx > dxlimit then |
|
794 |
dx = dxlimit |
|
795 |
end |
|
796 |
if dy > dylimit then |
|
797 |
dy = dylimit |
|
798 |
end |
|
799 |
if dx < -dxlimit then |
|
800 |
dx = -dxlimit |
|
801 |
end |
|
802 |
if dy < -dylimit then |
|
803 |
dy = -dylimit |
|
804 |
end |
|
805 |
||
806 |
||
807 |
if leftOn == true then |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
808 |
dx = dx - 0.1*fMod |
4872 | 809 |
end |
810 |
if rightOn == true then |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
811 |
dx = dx + 0.1*fMod |
4872 | 812 |
end |
813 |
||
814 |
if upOn == true then |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
815 |
dy = dy - 0.1*fMod |
4872 | 816 |
end |
817 |
if downOn == true then |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
818 |
dy = dy + 0.1*fMod |
4872 | 819 |
end |
820 |
||
821 |
SetGearVelocity(CurrentHedgehog, dx, dy) |
|
822 |
||
823 |
end |
|
824 |
||
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
825 |
-- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
826 |
--flamer |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
827 |
-- |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
828 |
fireTimer = fireTimer + 1 |
5720 | 829 |
if fireTimer == 6 then -- 5 --10 |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
830 |
fireTimer = 0 |
4872 | 831 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
832 |
if (wep[wepIndex] == loc("Flamer") ) and (preciseOn == true) and (wepAmmo[wepIndex] > 0) and (stopMovement == false) and (tumbleStarted == true) then |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
833 |
|
5720 | 834 |
wepAmmo[wepIndex] = wepAmmo[wepIndex] - 1 |
12051
05a968518a56
Tumbler updates: Script params, select weaps via slots, more sounds, rewrite texts, ignore broken gameflags
Wuzzy <almikes@aol.com>
parents:
8043
diff
changeset
|
835 |
shotsRemainingMessage() |
5720 | 836 |
DrawTag(3) |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
837 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
838 |
dx, dy = GetGearVelocity(CurrentHedgehog) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
839 |
shell = AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtFlame, 0, 0, 0, 0) |
4872 | 840 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
841 |
xdev = 1 + GetRandom(25) --15 |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
842 |
xdev = xdev / 100 |
4872 | 843 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
844 |
r = GetRandom(2) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
845 |
if r == 1 then |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
846 |
xdev = xdev*-1 |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
847 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
848 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
849 |
ydev = 1 + GetRandom(25) --15 |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
850 |
ydev = ydev / 100 |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
851 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
852 |
r = GetRandom(2) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
853 |
if r == 1 then |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
854 |
ydev = ydev*-1 |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
855 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
856 |
|
5720 | 857 |
--*13 --8 *-4 |
858 |
SetGearVelocity(shell, (dx*4.5)+(xdev*fMod), (dy*4.5)+(ydev*fMod)) --10 |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
859 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
860 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
861 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
862 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
863 |
-- |
4872 | 864 |
|
865 |
end |
|
866 |
||
867 |
||
868 |
end |
|
869 |
||
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
870 |
function isATrackedGear(gear) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
871 |
if (GetGearType(gear) == gtExplosives) or |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
872 |
(GetGearType(gear) == gtMine) or |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
873 |
(GetGearType(gear) == gtCase) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
874 |
then |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
875 |
return(true) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
876 |
else |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
877 |
return(false) |
4872 | 878 |
end |
879 |
end |
|
880 |
||
881 |
function onGearAdd(gear) |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
882 |
|
5720 | 883 |
if GetGearType(gear) == gtFlame then |
884 |
||
885 |
trackFGear(gear) |
|
886 |
||
887 |
fGears = fGears +1 |
|
888 |
||
889 |
if fGears < 80 then |
|
890 |
setFGearValue(gear,"L",30) |
|
891 |
else |
|
892 |
setFGearValue(gear,"L",5) --3 |
|
893 |
end |
|
894 |
||
895 |
elseif isATrackedGear(gear) then |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
896 |
trackGear(gear) |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
897 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
898 |
|
4872 | 899 |
end |
900 |
||
901 |
function onGearDelete(gear) |
|
902 |
||
5720 | 903 |
if GetGearType(gear) == gtFlame then |
904 |
trackFGearDeletion(gear) |
|
905 |
fGears = fGears -1 |
|
906 |
||
907 |
elseif isATrackedGear(gear) then |
|
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
908 |
trackDeletion(gear) |
5720 | 909 |
|
910 |
-- achievements? prototype |
|
911 |
elseif GetGearType(gear) == gtHedgehog then |
|
912 |
||
913 |
if GetHogTeamName(gear) ~= GetHogTeamName(CurrentHedgehog) then |
|
914 |
||
915 |
roundKills = roundKills + 1 |
|
916 |
if roundKills == 2 then |
|
13643 | 917 |
AddCaption(loc("Double Kill!"),capcolDefault,capgrpMessage2) |
5720 | 918 |
elseif roundKills == 3 then |
13643 | 919 |
AddCaption(loc("Killing spree!"),capcolDefault,capgrpMessage2) |
5720 | 920 |
elseif roundKills >= 4 then |
13643 | 921 |
AddCaption(loc("Unstoppable!"),capcolDefault,capgrpMessage2) |
5720 | 922 |
end |
923 |
||
924 |
elseif gear == CurrentHedgehog then |
|
925 |
DisableTumbler() |
|
926 |
||
927 |
elseif gear ~= CurrentHedgehog then |
|
13643 | 928 |
AddCaption(loc("Friendly Fire!"),capcolDefault,capgrpMessage2) |
5720 | 929 |
end |
930 |
||
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
931 |
end |
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
932 |
|
4872 | 933 |
if CurrentHedgehog ~= nil then |
934 |
FollowGear(CurrentHedgehog) |
|
935 |
end |
|
936 |
||
5720 | 937 |
end |
5598
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
938 |
|
265429f7ba85
- Updates to Tumbler gameplay mode [may still need a lil work]
mikade
parents:
5325
diff
changeset
|
939 |