Bullet
| Bullet | |
|---|---|
| ZZT-OOP name | bullet |
| Internal ID | 18 (0x12) |
| Character | #char 248 ° (0xF8) |
| Default color | white on black (0x0F) |
| Stats | |
| X/Y-step | yes |
| Default cycle | 1 |
| P1 | source 0 = player 1 = non-player |
| Other traits | |
| Effect on movement | solid, damaging |
| Destructible? | yes |
| Uses ZZT-OOP color names? | no |
The bullet is a common projectile that can be fired by the player, by enemies, and by objects. Bullets can travel over empties, fake walls, and water, and can destroy breakable walls. Player-spawned bullets can destroy built-in enemies. Bullets can be reflected or deflected by ricochets.
The player can fire a bullet in exchange for one ammo by using input controls. Each board can specify the maximum number of player-created bullets on screen, ranging from 0 to 255. If that number is zero, then attempting to shoot displays the message "Can't shoot in this place!". If you are out of ammo, then attempting to shoot displays the message "You don't have any ammo!". Elements destroyed by player bullets add to the player's score counter. If a player is hit by a bullet, they take 10 damage.
Tigers and Spinning Guns can be configured to shoot bullets. Unlike bullets fired by the player, bullets produced by enemies and objects cannot harm built-in enemies.
Objects can shoot bullets by using the #shoot command. Attempting to shoot a bullet with the #put command just places a directionless bullet than disappears immediately by colliding with itself. Objects can detect having been hit by a bullet by using the built-in :shot label. Be aware that all bullets trigger this label - player, enemy and object-spawned bullets alike. In addition, the player is unable to shoot objects immediately adjacent to them.
Statless bullets act like damaging forest tiles. They hurt the player when stepped on, but act like solid walls to everything else.
| Elements | |
|---|---|
| Special | |
| Items | |
| Terrain | |
| Creatures | |
| Text | |