Bullet

From Wiki of ZZT
Jump to navigation Jump to search
Bullet
ZZT-OOP namebullet
Internal ID18 (0x12)
Character#char 248 ° (0xF8)
Default colorwhite on black (0x0F)
Stats
X/Y-stepyes
Default cycle1
P1source
0 = player
1 = non-player
Other traits
Effect on movementsolid, 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 1 ammo by pressing Space or Shift+[Direction]. Each board can specify the 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. Note that 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 it they are hit by a bullet using the built-in :shot label. Be aware that player, enemy, and object-spawned bullets can trigger this label. Also, the player is unable to shoot objects immediately adjacent to them.

Statless bullets are like damaging forest tiles. They hurt the player when stepped on, but act like solid walls to everything else.