GearTypes.wiki
changeset 698 f84aa8f2b2cc
parent 635 b3c86fd0dbe0
child 699 2a0dab3480fc
equal deleted inserted replaced
697:855ce0af8245 698:f84aa8f2b2cc
     1 #summary List of all gear types
     1 #summary List of all gear types
     2 
     2 
     3 This is a list of (hopefully) all gear types, along with a short description and the meaning of severval fields.
     3 This is a list and overview of all gear types.
     4 
     4 
     5 The columns “Pos”, “Tag”, “Timer” and “Health” show the meaning of the gear’s field for the listed gear type. The word “ignored” means that the field in question is not relevant to gears of the gear type. See also `GetGearPos`, `SetGearPos`, `GetTag`, `SetTag`, `GetTimer`, `SetTimer`, `GetHealth`, `SetHealth` in [LuaAPI].
     5 This page is split in two parts: The first part is a short list, the second part gives a longer description for all gear types and also describes the meaning of the gear values (such as timer, pos, health, etc.).
     6 
     6 
     7 Please note this list is still mostly TODO. The categories presented here are purely for a better overview here; they do not neccessarily reflect anything in the actual game’s source code.
     7 Please note this page is still a work in progess. The categories presented here are purely for a better overview here; they do not neccessarily reflect anything in the actual game’s source code.
       
     8 
       
     9 A “TODO” means that this particular section is not yet finished and may be not accurate.
     8 
    10 
     9 == List of gear types ==
    11 == List of gear types ==
       
    12 This is a short overview and a brief description of all gears.
       
    13 
       
    14 === Land objects ===
       
    15 || *Gear type* || *Description* ||
       
    16 || `gtCase` || An ammo, utility or health crate ||
       
    17 || `gtExplosives` || An explosive barrel ||
       
    18 || `gtFlake` || A snowflake (can become part of terrain) ||
       
    19 || `gtFlame` || A flame ||
       
    20 || `gtGrave` || A grave ||
       
    21 || `gtHedgehog` || A hedgehog ||
       
    22 || `gtPortal` || A portal from the portable portal device ||
       
    23 || `gtTarget` || A target ||
       
    24 
       
    25 === Utilities ===
       
    26 || *Gear type* || *Description* ||
       
    27 || `gtGirder` || A girder (construction) ||
       
    28 || `gtJetpack` || A flying saucer ||
       
    29 || `gtLandGun` || The land spray tool ||
       
    30 || `gtParachute` || A parachute ||
       
    31 || `gtResurrector` || Resurrection ||
       
    32 || `gtRope` || A rope ||
       
    33 || `gtSwitcher` || Switch hedgehog ||
       
    34 || `gtTardis` || A !TimeBox ||
       
    35 || `gtTeleport` || Teleportation ||
       
    36 
       
    37 === Weapons and main projectiles ===
       
    38 || *Gear type* || *Description* ||
       
    39 || `gtAirAttack` || The airplane of an airborne attack ||
       
    40 || `gtAirMine` || An air mine ||
       
    41 || `gtBallGun` || A ballgun ||
       
    42 || `gtBee` || Homing bee ||
       
    43 || `gtBirdy` || Birdy ||
       
    44 || `gtBlowTorch` || A blowtorch ||
       
    45 || `gtClusterBomb` || A cluster bomb ||
       
    46 || `gtCake` || A cake ||
       
    47 || `gtDEagleShot` || A shot from a Desert Eagle ||
       
    48 || `gtDrill` || Drill rocket ||
       
    49 || `gtDynamite` || A dynamite ||
       
    50 || `gtFirePunch` || Shoryuken ||
       
    51 || `gtFlamethrower` || A flamethrower ||
       
    52 || `gtGasBomb` || An old limburger ||
       
    53 || `gtGrenade` || A grenade ||
       
    54 || `gtHammer` || A hammer ||
       
    55 || `gtHellishBomb` || A hellish hand-grenade ||
       
    56 || `gtIceGun` || A freezer ||
       
    57 || `gtKamikaze` || An ongoing kamikaze ||
       
    58 || `gtKnife` || A cleaver ||
       
    59 || `gtPiano` || Piano from piano strike ||
       
    60 || `gtPickHammer` || A pickhammer ||
       
    61 || `gtRCPlane` || A RC plane ||
       
    62 || `gtMolotov` || A molotov cocktail ||
       
    63 || `gtMortar` || A mortar ||
       
    64 || `gtMine` || A mine ||
       
    65 || `gtSeduction` || Seduction ||
       
    66 || `gtShell` || A bazooka shell (projectile) ||
       
    67 || `gtShotgunShot` || A shot from a shotgun ||
       
    68 || `gtShover` || Used by baseball bat. ||
       
    69 || `gtSineGunShot` || A shot from the sine gun ||
       
    70 || `gtSMine` || A sticky mine ||
       
    71 || `gtSniperRifleShot` || A shot from the sniper rifle ||
       
    72 || `gtSnowball` || A mudball ||
       
    73 || `gtWatermelon` || A watermelon bomb, still intact ||
       
    74 || `gtWhip` || A whip ||
       
    75 
       
    76 === Secondary projectiles ===
       
    77 || *Gear type* || *Description* ||
       
    78 || `gtAirBomb` || A bomb from the air attack or the RC plane ||
       
    79 || `gtBall` || A ball from the ball gun || 
       
    80 || `gtCluster` || A cluster from the cluster bomb or the mortar ||
       
    81 || `gtEgg` || An egg from Birdy ||
       
    82 || `gtHammerHit` || A hit from the hammer. ||
       
    83 || `gtMelonPiece` || A cluster from a watermelon bomb ||
       
    84 || `gtNapalmBomb` || A bomb from the napalmn strike ||
       
    85 || `gtPoisonCloud` || A poisonous cloud ||
       
    86 
       
    87 === Other ===
       
    88 || *Gear type* || *Description* ||
       
    89 || `gtAddAmmo` || Adds a weapon or utilty to a hedgehog. ||
       
    90 || `gtATStartGame` || TODO  ||
       
    91 || `gtATFinishGame` || TODO || 
       
    92 || `gtGenericFaller` || TODO || 
       
    93 || `gtWaterUp` || Causes water to rise. ||
       
    94 
       
    95 == Long descriptions and values ==
       
    96 This section gives longer description of the various gear types and how their values (i.e. tag, pos, timer, health, etc.) are interpreted. The gear values are pretty chaotic, so they are described for each gear seperately. Use the various setter and getter functions for gears to modifiy the gear values.
       
    97 
       
    98 In Lua, use the functions `GetGearPos`, `SetGearPos`, `GetTag`, `SetTag`, `GetTimer`, `SetTimer`, `GetHealth`, `SetHealth`, `GetFlightTime`, `SetFlightTime`, `GetGearValues` and `SetGearValues` to query or modify the gear values.
       
    99 
    10 === Land objects ===
   100 === Land objects ===
    11 This is a list of gears which usually stay on the land for a long time and stay for several rounds and can’t normally directly placed by players.
   101 This is a list of gears which usually stay on the land for a long time and stay for several rounds and can’t normally directly placed by players.
    12 
   102 
    13 || *Gear type* || *Description* || *Pos* || *Tag* || *Timer* || *Health* ||
   103 ==== `gtCase` ====
    14 || `gtCase` || An ammo, utility or health crate || crate type: 1=ammo crate, 2=health crate, 4=utility crate || _ignored_ || Used for appear animation || Amount of health contained in a health crate ||
   104 An ammo, utility or health crate.
    15 || `gtExplosives` || An explosive barrel || _ignored_ || _ignored_ || _ignored_ || Barrel health; takes damage like a hedgehog. Starts at 60, explodes at 0. ||
   105 
    16 || `gtFlake` || A snowflake which might become part of the terrain || TODO || TODO || TODO || TODO ||
   106 * `Pos`: Crate type: 1=ammo crate, 2=health crate, 4=utility crate
    17 || `gtFlame` || A flame || TODO || between 0-32 (TODO) || TODO || TODO ||
   107 * `Tag`: Used for the appear animation
    18 || `gtGrave` || A grave from a dead hedgehog || _ignored_ || _ignored_ || _ignored_ || Used when being resurrected. ||
   108 * `Health`: Amount of health contained in a health crate
    19 || `gtHedgehog` || A hedgehog || TODO || used for animation. `0` = no animation plays. Other value: animation plays || TODO || Hedgehog's health ||
   109 
    20 || `gtPortal` || A portal from the portable portal device || _ignored_ || Portal state. 0=orange flying, 1=orange placed, 2=blue flying, 3=blue placed  || Remaining existance time (portals will disappear after end of turn). || TODO ||
   110 ==== `gtExplosives` ====
    21 || `gtTarget` || A target, useful in target practice missions || TODO || TODO || TODO || TODO ||
   111 An explosive barrel. It has its own invisible health, like a hedgehog. On low health levels smoke comes out of the barrel.
       
   112 
       
   113 * `Health`: “health” of the barrel: Starts at 60, explodes at 0.
       
   114 
       
   115 ==== `gtFlake` ====
       
   116 A snowflake which might become part of the terrain.
       
   117 
       
   118 ==== `gtFlame` ====
       
   119 A single flame.
       
   120 
       
   121 TODO: Flame size.
       
   122 
       
   123 `Pos`: Some unknown value between 0-32 (TODO)
       
   124 `FlightTime`: If set to `0`, this flame can hurt hedgehogs even in mid-air. By default, the FlightTime is a non-zero value.
       
   125 
       
   126 ==== `gtGrave` ====
       
   127 A grave from a dead hedgehog.
       
   128 
       
   129 * `Health`: Used when being resurrected.
       
   130 
       
   131 ==== `gtHedgehog` ====
       
   132 A hedgehog.
       
   133 
       
   134 * `Tag`: Used for animation. `0` = no animation plays. Other value: animation plays
       
   135 * `Health`: Hedgehog's health.
       
   136 
       
   137 TODO: Write more about hedgehogs.
       
   138 
       
   139 ==== `gtPortal` ====
       
   140 A portal from the portable portal device.
       
   141 
       
   142 * `Tag`: Portal state. 0=orange flying, 1=orange placed, 2=blue flying, 3=blue placed
       
   143 * `Timer`: Remaining existance time (portals will disappear after end of turn).
       
   144 
       
   145 ==== `gtTarget` ====
       
   146 A target, useful in target practice missions.
    22 
   147 
    23 === Utilities ===
   148 === Utilities ===
    24 A list of “utility” gears.
   149 The gears used by various utilities.
    25 
   150 
    26 || *Gear type* || *Description* || *Pos* || *Tag* || *Timer* || *Health* ||
   151 ==== `gtGirder` ====
    27 || `gtGirder` || A girder (construction) || TODO || TODO || TODO || TODO ||
   152 A girder (construction).
    28 || `gtJetpack` || A flying saucer || TODO || TODO || TODO || Amount of fuel. `2000` denotes 100% fuel. ||
   153 TODO
    29 || `gtLandGun` || The land spray tool || TODO || power of land spray (`5`-`20`) || TODO || Amount of fuel. `1000` denotes 100% fuel. ||
   154 
    30 || `gtParachute` || A parachute || TODO || TODO || TODO || TODO ||
   155 ==== `gtJetpack` ====
    31 || `gtResurrector` || Resurrection || TODO || TODO || TODO || TODO ||
   156 A flying saucer. Its fuel is stored in `Health` and starts at 2000, which stands for 100% fuel. The fuel value is reduced whenever the player taps one of the direction keys. The up direction costs 50 fuel and the left and right directions cost 10 fuel.
    32 || `gtRope` || A rope || TODO || Rope style: 0=classic white segments, 1=simple line which can be colored with `SetGearValues` tint || TODO || TODO ||
   157 
    33 || `gtSwitcher` || Switch hedgehog || TODO || TODO || TODO || TODO ||
   158 * `Health`: Amount of remaining fuel. `2000` denotes 100% fuel.
    34 || `gtTardis` || A !TimeBox || TODO || TODO || TODO || TODO ||
   159 
    35 || `gtTeleport` || Teleportation || TODO || TODO || TODO || TODO ||
   160 ==== `gtLandGun` ====
       
   161 The land spray tool.
       
   162 
       
   163 * `Tag`: Spitting power of land spray (`5`-`20`).
       
   164 * `Health`: Amount of fuel. `1000` denotes 100% fuel. ||
       
   165 
       
   166 ==== `gtParachute` ====
       
   167 A parachute.
       
   168 
       
   169 ==== `gtResurrector` ==== 
       
   170 A hedgehog which does perform a resurrection.
       
   171 
       
   172 * `Radius`: Effect range of resurrection in pixels (default: 100). Note that this does not change the drawn circle
       
   173 
       
   174 ==== `gtRope` ====
       
   175 A rope.
       
   176 
       
   177 * `Tag` Rope style: `0`=classic white segments (default), `1`=simple line which can be colored with `Tint`.
       
   178 * `Tint`: Rope color as RGBA. This only works if `Tag` equals `1`
       
   179 
       
   180 ==== `gtSwitcher` ====
       
   181 Switch hedgehog.
       
   182 
       
   183 ==== `gtTardis` ====
       
   184 A !TimeBox. It works in several phases and an internal timer.
       
   185 
       
   186 * `Pos`: Current phase. The value `4` is used when the !TimeBox is currently time-travelling (has completely turned invisible).
       
   187 * `Timer`: Has several meanings, depending on `Pos`. Here's the most imporant one, for `Pos` of `4`: A timer (in milliseconds) containing the remaining time until the !TimeBox returns. The !TimeBox returns when `Timer` reaches 0. Hedgewars decreases the timer only while the same team is playing
       
   188 * `Tint`: RGBA color (default: clan color)
       
   189 
       
   190 TODO: Add more information for the other phases.
       
   191 
       
   192 ==== `gtTeleport` ====
       
   193 Teleportation.
    36 
   194 
    37 === Weapons and main projectiles ===
   195 === Weapons and main projectiles ===
    38 List of weapons which can be directly used or launched by the players.
   196 Gears of weapons which can be directly used or launched by the players.
    39 If not noted otherwise, all times are in milliseconds.
   197 
    40 
   198 ==== `gtAirAttack` ====
    41 || *Gear type* || *Description* || *Pos* || *Tag* || *Timer* || *Health* ||
   199 The airplane of an airborne attack.
    42 || `gtAirAttack` || The airplane of an airborne attack || Type of airborne attack: 0=Air Attack, 1=Mine Strike, 2=Napalm, 3=Drill Strike || Direction of airplane (`-1` = left, `1` = right) || TODO || Number of bombs left (default: 6) ||
   200 
    43 || `gtAirMine` || An air mine || Air friction. Higher values mean slower movement || TODO || Detonation timer (after activation). || TODO ||
   201 * `Pos`: Type of airborne attack: `0` = Air Attack, `1` = Mine Strike, `2` = Napalm, `3` = Drill Strike
    44 || `gtBallGun` || A ballgun || TODO || TODO || Remaining usage time, default is 5001. One ball is fired every 100ms. || TODO ||
   202 * `Tag`: Direction of airplane: `-1` = left, `1` = right
    45 || `gtBee` || Homing bee || TODO || wheather the bee is underwater (`0` = no, `1` = yes) || Used for pre-homing time and max. flight timer after started homing || TODO ||
   203 * `Health`: Number of bombs/mines/drills left (default: 6)
    46 || `gtBirdy` || Birdy || TODO || facing direction (`-1` = left, `1` = right) || TODO || “Flapping energy” left, default is 2000. This “energy” works exactly like for the flying saucer. ||
   204 * `Damage`: Distance (in pixels) between two dropped bombs/mines/drills (default: 30)
    47 || `gtBlowTorch` || A blowtorch || TODO || TODO || Remaining usage time in ms, default is 7500. || TODO ||
   205 * `Tint`: RGBA color of airplane (default: clan color)
    48 || `gtClusterBomb` || A cluster bomb || TODO || TODO || TODO || TODO ||
   206 
    49 || `gtCake` || A cake || TODO || A timer used for several animations. The final animation (sit down) will cause the cake to explode when the tag reaches `2250`. || TODO || Remaining walking time, default is 2048. Note: the cake uses its own time unit. ||
   207 ==== `gtAirMine` ====
    50 || `gtDEagleShot` || A shot from a Desert Eagle || TODO || TODO || TODO || How deep the bullet digs into land. Default: 50. ||
   208 An air mine. It seeks nearby hedgehogs. If it is in explosion range, its timer activates and will become lower. If the timer reaches 0 and is still in explosion range of a hedgehog, it explodes. But it does not explode if it is out of range, after which the timer is reset and the air mine can be activated again.
    51 || `gtDrill` || Drill rocket || TODO || Used for drill strike. If `1`, then first impact occoured already || Detonation timer || TODO ||
   209 
    52 || `gtDynamite` || A dynamite || TODO || Displayed animation frame. || Detonation timer. Default: 5000 || TODO ||
   210 To properly set the timer of an air mine, you must set both `Timer` and `WDTimer`.
    53 || `gtFirePunch` || Shoryuken || TODO || Y coordinate || TODO || TODO ||
   211 
    54 || `gtFlamethrower` || A flamethrower || TODO || power of flamethrower (`5`-`20`) || TODO || Remaining fuel. `500` is for 100% fuel. ||
   212 If the gear state flag `gstAttacking` is set, the air mine is activated and is about to explode.
    55 || `gtGasBomb` || An old limburger || TODO || TODO || Detonation timer. || TODO ||
   213 If the gear state flag `gstChooseTarget` is set, the air mine is currently hunting a hedgehog. This should only be read by Lua scripts, setting it from a Lua script has no effect.
    56 || `gtGrenade` || A grenade || TODO || TODO || Detonation timer. || TODO ||
   214 
    57 || `gtHammer` || A hammer || TODO || TODO || TODO || TODO ||
   215 * `Pos`: Air friction. Higher values mean slower movement. 
    58 || `gtHellishBomb` || A hellish hand-grenade || TODO || TODO || Detonation timer. Default: 5000 || TODO ||
   216 * `Timer`: Time left until possible detonation (in milliseconds). Default value depends on game scheme.
    59 || `gtIceGun` || A freezer || TODO || TODO || TODO || Remaining fuel. `1000` is for 100% fuel ||
   217 * `WDTimer`: Initial timer value (in milliseconds) of an activated air mine. The `Timer` is reset to this value if the air mine gets re-activated.
    60 || `gtKamikaze` || An ongoing kamikaze || TODO || TODO || TODO || Remaining travel range. Default: 2048 ||
   218 * `Angle`: Range in which it seeks and follows hedgehogs, in pixels. If a hedgehog is within this range, the air mine will start following. Set it to `0xFFFFFFFF` for an infinite seek range. Set to `0` to disable following. Default: 175
    61 || `gtKnife` || A cleaver || TODO || TODO || TODO || TODO ||
   219 * `Power`: Speed in which it seeks and follows hedgehogs.
    62 || `gtPiano` || Piano from piano strike || Number of remaining terrain bounces. Default: 5 || TODO || TODO || TODO ||
   220 * `Karma`: Explosion size and damage. Default: 30
    63 || `gtPickHammer` || A pickhammer || TODO || TODO || Remaining usage time. Default: 4000 || TODO ||
   221 
    64 || `gtRCPlane` || A RC plane || TODO || dX speed??? || Remaining fly time. Default: 15000 || Number of missiles on board. Default: 3 ||
   222 ==== `gtBallGun` ====
    65 || `gtMolotov` || A molotov cocktail || TODO || TODO || TODO || TODO ||
   223 A ballgun. This weapon is timer-based.
    66 || `gtMortar` || A mortar || TODO || TODO || TODO || TODO ||
   224 
    67 || `gtMine` || A mine || TODO || TODO || Detonation timer (after activation). || If `0`, mine is a dud. ||
   225 * `Timer`: Remaining usage time (in ms), default is 5001. One ball is fired every 100ms.
    68 || `gtSeduction` || Seduction || TODO || TODO || TODO || TODO ||
   226 
    69 || `gtShell` || A bazooka shell (projectile) || TODO || TODO || TODO || TODO ||
   227 ==== `gtBee` ====
    70 || `gtShotgunShot` || A shot from a shotgun || TODO || TODO || TODO || TODO ||
   228 A homing bee. The bee works in up to three phases: The first phase is the pre-homing phase lasts 0.5 seconds in which the bee behaves like a normal projectile. In the second phase the bee actually starts homing. This phase can last up to 5 seconds. If the bee did not explode in this time, the bee goes into post-homing phase, stops homing and simply falls. For the first two phases this gear uses `Timer`.
    71 || `gtShover` || Used by baseball bat. || TODO || TODO || TODO || TODO ||
   229 
    72 || `gtSineGunShot` || A shot from the sine gun || TODO || TODO || TODO || TODO ||
   230 This gear does not directly store in which phase the bee currently is in, so it is a bit tricky to modify the timer values.
    73 || `gtSMine` || A sticky mine || TODO || TODO || Detonation timer after it was activated. Default: 500 || TODO ||
   231 If you just want to modify the pre-homing time, simply set the `Timer` after creation. But if you want to modify the duration of the homing phase, you have somehow track the bee gear and wait until the `Timer` first reaches 0, so you know the bee will now get into its second phase. Now wait one more tick (or more) and set `Timer` to set the maximum flight time in the homing phase.
    74 || `gtSniperRifleShot` || A shot from the sniper rifle || TODO || TODO || TODO || How deep the bullet digs into land. Default: 50 ||
   232 
    75 || `gtSnowball` || A mudball || TODO || TODO || TODO || TODO ||
   233 * `Tag`: Whether the bee is underwater (`0` = no, `1` = yes). This is used for the sound effect.
    76 || `gtWatermelon` || A watermelon bomb, still intact || TODO || TODO || Detonation timer. || TODO ||
   234 * `Timer`: Remaining time (in milliseconds) either of the pre-homing phase or the homing phase.
    77 || `gtWhip` || A whip || TODO || TODO || TODO || TODO ||
   235 
       
   236 ==== `gtBirdy` ====
       
   237 Birdy. Birdy works like a flying saucer and depletes energy (stored in `Health`) whenever you tap one of the direction keys. Flapping left and right costs 10 energy, flapping upwards costs 50 energy.
       
   238 
       
   239 * `Tag`: Facing direction (`-1` = left, `1` = right)
       
   240 * `Health`: “Flapping energy” left, default is 2000
       
   241 * `FlightTime`: Number of eggs left (default: 2)
       
   242 
       
   243 ==== `gtBlowTorch` ====
       
   244 A blowtorch. This utility is entirely timer-based.
       
   245 
       
   246 * `Timer`: Remaining usage time in ms, default is 7500.
       
   247 
       
   248 ==== `gtClusterBomb` ====
       
   249 A cluster bomb.
       
   250 
       
   251 ==== `gtCake` ====
       
   252 A cake. 
       
   253 
       
   254 * `Tag`: A timer used for several animations. The final animation (sit down) will cause the cake to explode when the tag reaches `2250`.
       
   255 * `Health`: Remaining walking time, default is 2048. Note: the cake uses its own time unit.
       
   256 
       
   257 ==== `gtDEagleShot` ====
       
   258 A shot from a Desert Eagle.
       
   259 
       
   260 * `Health`: How deep the bullet digs into land. Default: 50.
       
   261 
       
   262 ==== `gtDrill` ====
       
   263 A drill rocket. This is either a launched drill rocket or a small drill rocket from the drill strike (which is a bit weaker than the launched one).
       
   264 
       
   265 The type of drill rocket is stored in the gear state. If `gsttmpFlag` is set (e.g. {{{band(GetState(yourDrillGear), gsttempFlag) == 0}}} evaluates to `true`), it is a launched drill rocket, otherwise it is a drill rocket from the drill strike.
       
   266 
       
   267 * `Tag`: Used for drill strike. If `1`, then first impact occoured already.
       
   268 * `Timer`: Detonation timer (in ms)
       
   269 
       
   270 ==== `gtDynamite` ====
       
   271 A dynamite.
       
   272 Note: The current animation does not support denotation times above 5 seconds. If you want to have larger times, you have to provide your own dynamite sprite in a sidecar HWP or find another workaround.
       
   273 
       
   274 * `Tag`: Displayed animation frame.
       
   275 * `Timer`: Detonation timer (in ms). Default: 5000.
       
   276 
       
   277 ==== `gtFirePunch` ====
       
   278 A hedgehog which performs the Shoryuken attack.
       
   279 
       
   280 `Tag`: Current Y coordinate of the hedgehog.
       
   281 
       
   282 ==== `gtFlamethrower` ====
       
   283 A flamethrower. 
       
   284 
       
   285 * `Tag`: Current spitting power of flamethrower (`5`-`20`)
       
   286 * `Health`: Remaining fuel. `500` is for 100% fuel.
       
   287 
       
   288 ==== `gtGasBomb` ====
       
   289 An old limburger. Will spawn several `gtPoisonCloud` gears on detonation.
       
   290 
       
   291 * `Timer`: Detonation timer (in milliseconds).
       
   292 
       
   293 ==== `gtGrenade` ====
       
   294 A grenade.
       
   295 
       
   296 * `Timer`: Detonation timer (in milliseconds).
       
   297 
       
   298 ==== `gtHammer` ====
       
   299 A hammer. See also `gtHammerHit` for the actual hit of the hammer.
       
   300 
       
   301 ==== `gtHellishBomb` ====
       
   302 A hellish hand-grenade.
       
   303 
       
   304 * `Timer`: Detonation timer (in milliseconds). Default: 5000
       
   305 
       
   306 ==== `gtIceGun` ====
       
   307 A freezer.
       
   308 
       
   309 * `Health`: Remaining fuel. `1000` is for 100% fuel
       
   310 
       
   311 ==== `gtKamikaze` ====
       
   312 A hedgehog which is doing a kamikaze attack.
       
   313 
       
   314 * `Health`: Remaining travel range. Default: 2048
       
   315 
       
   316 ==== `gtKnife` ====
       
   317 A cleaver.
       
   318 
       
   319 ==== `gtPiano` ====
       
   320 A piano from piano strike.
       
   321 
       
   322 * `Tag`: Number of remaining terrain bounces. Default: 5. If this number reaches 0, the piano will not collide anymore and directly fall into the water.
       
   323 
       
   324 ==== `gtPickHammer` ====
       
   325 A pickhammer. This gear is entirely timer-based.
       
   326 
       
   327 * `Timer`: Remaining usage time (in milliseconds). Default: 4000
       
   328 
       
   329 ==== `gtRCPlane` ====
       
   330 An RC plane.
       
   331 
       
   332 * `Tag`: dX speed??? (The purpose of the `Tag` is not clear yet)
       
   333 * `Timer`: Remaining fly time (in milliseconds). Default: 15000
       
   334 * `Health`: Number of missiles on board. Default: 3
       
   335 * `Tint`: RGBA color of RC plane (default: clan color)
       
   336 
       
   337 ==== `gtMolotov` ====
       
   338 A molotov cocktail.
       
   339 
       
   340 ==== `gtMortar` ====
       
   341 A mortar.
       
   342 
       
   343 ==== `gtMine` ====
       
   344 A land mine.
       
   345 
       
   346 If the gear state flag `gstAttacking` is set, mine has been activated and is about to explode (if it is not a dud).
       
   347 
       
   348 * `Timer`: Detonation timer (after activation).
       
   349 * `Health`: If `0`, mine is a dud.
       
   350 
       
   351 ==== `gtSeduction` ====
       
   352 A hedgehog trying to seduce others.
       
   353 
       
   354 * `Radius`: Effect range of seduction in pixels. Default: 250. Note that this does not change the drawn circle
       
   355 
       
   356 ==== `gtShell` ====
       
   357 A bazooka shell (projectile).
       
   358 
       
   359 ==== `gtShotgunShot` ====
       
   360 A shot from a shotgun. It is invisible and only can be noticed by its effects.
       
   361 
       
   362 ==== `gtShover` ====
       
   363 Used by baseball bat.
       
   364 
       
   365 ==== `gtSineGunShot` ====
       
   366 A shot from the sine gun.
       
   367 
       
   368 * `Radius`: The thickness of the sine gun shot.
       
   369 
       
   370 ==== `gtSMine` ====
       
   371 A sticky mine.
       
   372 
       
   373 If the gear state flag `gstAttacking` is set, the sticky mine has been activated and is about to explode.
       
   374 
       
   375 * `Timer`: Detonation timer after it was activated (in milliseconds). Default: 500
       
   376 
       
   377 ==== `gtSniperRifleShot` ====
       
   378 A shot from the sniper rifle.
       
   379 
       
   380 * `Health`: How deep the bullet digs into land. Default: 50
       
   381 
       
   382 ==== `gtSnowball` ====
       
   383 A mudball.
       
   384 
       
   385 ==== `gtWatermelon` ====
       
   386 A watermelon bomb, still intact.
       
   387 
       
   388 * `Timer`: Detonation timer (in milliseconds).
       
   389 
       
   390 ==== `gtWhip` ====
       
   391 A whip.
    78 
   392 
    79 === Secondary projectiles ===
   393 === Secondary projectiles ===
    80 Projectiles that can’t be directly fired but are generated by other weapon gears.
   394 Gears for projectiles that can’t be directly fired but are generated by other weapon gears.
    81 
   395 
    82 || *Gear type* || *Description* || *Pos* || *Tag* || *Timer* || *Health* ||
   396 ==== `gtAirBomb` ====
    83 || `gtAirBomb` || A bomb from the air attack or the RC plane || TODO || TODO || TODO || TODO ||
   397 A bomb from the air attack or the RC plane.
    84 || `gtBall` || A ball from the ball gun || TODO || Color: `0a=red, `1`=green, `2`=cyan, `3`=yellow, `4`=violet, `5`=pink, `6`=orange, `7`=lime, `8`=white || Detonation timer. Default: 5s || TODO ||
   398 
    85 || `gtCluster` || A cluster from the cluster bomb or the mortar || TODO || TODO || TODO || TODO ||
   399 ==== `gtBall` ====
    86 || `gtEgg` || An egg from Birdy || TODO || TODO || TODO || TODO ||
   400 A ball from the ball gun
    87 || `gtHammerHit` || A hit from the hammer. || TODO || TODO || How deep a successful hammer hit dig into land. Default: 125 || TODO ||
   401 
    88 || `gtMelonPiece` || A cluster from a watermelon bomb || TODO|| TODO || TODO || TODO ||
   402 * `Timer`: Detonation timer (in milliseconds). Default: 5000
    89 || `gtNapalmBomb` || A bomb from the napalmn strike, will burst into fire || TODO || TODO || TODO || TODO ||
   403 * `Tag`: Color: `0`=red, `1`=green, `2`=cyan, `3`=yellow, `4`=violet, `5`=pink, `6`=orange, `7`=lime, `8`=white
    90 || `gtPoisonCloud` || A poisonous cloud, makes hedgehogs sick on contact || TODO || TODO || Remaining “life time”, default: 5000 || TODO ||
   404 
       
   405 ==== `gtCluster` ====
       
   406 A cluster from the cluster bomb or the mortar
       
   407 
       
   408 ==== `gtEgg` ====
       
   409 An egg from Birdy.
       
   410 
       
   411 ==== `gtHammerHit` ====
       
   412 A hit from the hammer.
       
   413 
       
   414 * `Timer`: How deep a successful hammer hit dig into land. 1 is the smallest possible depth. Using the value 0 will dig all the way to the water. Default: 125.
       
   415 
       
   416 ==== `gtMelonPiece` ====
       
   417 * A cluster from a watermelon bomb.
       
   418 
       
   419 ==== `gtNapalmBomb` ====
       
   420 A bomb from the napalmn strike, will burst into fire.
       
   421 
       
   422 * `Timer`: Detonation timer (in milliseconds). Default: 1000
       
   423 
       
   424 ==== `gtPoisonCloud` ====
       
   425 A poisonous cloud, makes hedgehogs sick on contact.
       
   426 
       
   427 * `Timer`: Remaining “life time” in milliseconds (default: 5000). Note that the current animation does not very well support timers larger than 5 seconds, and the animation is partly hardcoded.
    91 
   428 
    92 === Other ===
   429 === Other ===
    93 || *Gear type* || *Description* || *Pos* || *Tag* || *Timer* || *Health* ||
   430 Gears which don't fit into any other category.
    94 || `gtAddAmmo` || Used to add some weapon or utilty to a hedgehog. The gear is added when a crate has been collected. || TODO || TODO || TODO || TODO ||
   431 
    95 || `gtATStartGame` || TODO || TODO || TODO || TODO || TODO ||
   432 ==== `gtAddAmmo` ====
    96 || `gtATFinishGame` || TODO || TODO || TODO || TODO || TODO ||
   433 Used to add some weapon or utilty to a hedgehog. The gear is added when a crate has been collected.
    97 || `gtGenericFaller` || TODO || TODO || TODO || TODO || TODO ||
   434 
    98 || `gtWaterUp` || If added, water will rise. || _ignored_ || Number of pixels the water still has to rise. By default, the tag will have an initial value of `47`. The gear will be removed when the tag equals `0`. || TODO || TODO ||
   435 ==== `gtATStartGame` ====
    99 
   436 TODO. The purpose of this gear is not clear yet.
   100 
   437 
   101 == Gear-specific variables ==
   438 ==== `gtATFinishGame` ====
   102 === `gtBirdy` ===
   439 TODO. The purpose of this gear is not clear yet.
   103 The number of eggs is stored in the gear's `FlightTime` (default: 2).
   440 
   104 
   441 ==== `gtGenericFaller` ====
   105 === `gtFlame` ===
   442 TODO. The purpose of this gear is not clear yet.
   106 If `FlightTime` is set to 0, the flames can hurt hedgehogs in mid-air, but they won't otherwise.
   443 
   107 
   444 ==== `gtWaterUp` ====
   108 == Source ==
   445 Causes the water to rise.
   109 Here is an excerpt from the Hedgewars source code:
   446 
   110 {{{
   447 `Tag` contains the number of pixels the water still has to rise (default: 47). The gear will be removed when its `Tag` reaches the value 0.
   111     TGearType = (gtFlame, gtHedgehog, gtMine, gtCase, gtExplosives, // these gears should be avoided when searching a spawn place
   448 
   112         gtGrenade, gtShell, gtGrave, gtBee, // 8
   449 == Reference ==
   113         gtShotgunShot, gtPickHammer, gtRope, // 11
       
   114         gtDEagleShot, gtDynamite, gtClusterBomb, gtCluster, gtShover, // 16
       
   115         gtFirePunch, gtATStartGame, // 18
       
   116         gtATFinishGame, gtParachute, gtAirAttack, gtAirBomb, gtBlowTorch, // 23
       
   117         gtGirder, gtTeleport, gtSwitcher, gtTarget, gtMortar, // 28
       
   118         gtWhip, gtKamikaze, gtCake, gtSeduction, gtWatermelon, gtMelonPiece, // 34
       
   119         gtHellishBomb, gtWaterUp, gtDrill, gtBallGun, gtBall, gtRCPlane, // 40
       
   120         gtSniperRifleShot, gtJetpack, gtMolotov, gtBirdy, // 44
       
   121         gtEgg, gtPortal, gtPiano, gtGasBomb, gtSineGunShot, gtFlamethrower, // 50
       
   122         gtSMine, gtPoisonCloud, gtHammer, gtHammerHit, gtResurrector, // 55
       
   123         gtNapalmBomb, gtSnowball, gtFlake, {gtStructure,} gtLandGun, gtTardis, // 61
       
   124         gtIceGun, gtAddAmmo, gtGenericFaller, gtKnife); // 65
       
   125 }}}
       
   126 For a current list of the gears look at `hedgewars/uTypes.pas` at
   450 For a current list of the gears look at `hedgewars/uTypes.pas` at
   127 the `TGearType` enumeration.
   451 the `TGearType` enumeration.
   128 http://hg.hedgewars.org/hedgewars/file/default/hedgewars/uTypes.pas#l92
   452 http://hg.hedgewars.org/hedgewars/file/default/hedgewars/uTypes.pas#l92
   129 
   453 
   130 Note: `gtBomb` and `gtShell` were named `gtAmmo_Bomb` and `gtAmmo_Grenade` before 0.9.14.
   454 Note: `gtBomb` and `gtShell` were named `gtAmmo_Bomb` and `gtAmmo_Grenade` before 0.9.14.