Bomp: Difference between revisions

3 bytes removed ,  5 March 2020
no edit summary
(Created page. I don't know if anyone actually wanted this to be made but I made it because I didn't realize those things were called Bomps and it got me curious about them.)
 
No edit summary
Line 19: Line 19:
|coins=NA
|coins=NA
}}
}}
'''Bomp''' is an obstacle that appears in [[Whomp's Fortress]]. They come in small and large varieties. Exactly 3 appear in the game, all in Whomp's Fortress. One of these is large and the other two are small.
'''Bomp''' is an enemy that appears in [[Whomp's Fortress]]. They come in small and large varieties. Exactly 3 appear in the game, all in Whomp's Fortress. One of these is large and the other two are small.
==Behavior==
==Behavior==
When Small Bomp is initialized, its facing angle is decreased by 90 degrees and its initial position is set equal to its current position. Small Bomp’s timer attribute is set by multiplying a random float from 0 to 1 by 100. Bomp has four actions: WAIT, POKE_OUT, EXTEND and RETRACT. When Bomp is in the WAIT action, Bomp does nothing until Bomp’s timer reaches a value of at least 101. When this happens, Bomp’s action is set to POKE_OUT and its forward velocity is set to 30 units/frame. When Bomp is in the POKE_OUT action, Bomp continues moving forward until Bomp’s X-position is greater than 3450. At this point, Bomp’s X-position is set to 3450 and its forward velocity is set to 0. Separately, after an additional 15 frames from POKE_OUT being set, Bomp’s action is set to EXTEND, its forward velocity is set to 40 units/frame, and a sound is played. When Bomp is in the EXTEND action, Bomp moves forward until its X-position is greater than 3830. At this point, Bomp’s X-position is set to 3830 and its forward velocity is set to 0. Separately, after an additional 60 frames from EXTEND being set, Bomp’s action is set to RETRACT, Bomp’s forward velocity is set to 10 units/frame, a sound plays, and Bomp’s moving angle is decreased by 180 degrees. When Bomp is in the RETRACT action, Bomp continues moving backwards until its X-position is less than 3330. At this point, Bomp’s X-position is set to 3330 and its forward velocity is set to 0. Separately, after an additional 90 frames from RETRACT being set, Bomp’s action is set to POKE_OUT, its forward velocity is set to 25 units/frame, and its moving angle is decreased by 180 degrees.
When Small Bomp is initialized, its facing angle is decreased by 90 degrees and its initial position is set equal to its current position. Small Bomp’s timer attribute is set by multiplying a random float from 0 to 1 by 100. Bomp has four actions: WAIT, POKE_OUT, EXTEND and RETRACT. When Bomp is in the WAIT action, Bomp does nothing until Bomp’s timer reaches a value of at least 101. When this happens, Bomp’s action is set to POKE_OUT and its forward velocity is set to 30 units/frame. When Bomp is in the POKE_OUT action, Bomp continues moving forward until Bomp’s X-position is greater than 3450. At this point, Bomp’s X-position is set to 3450 and its forward velocity is set to 0. Separately, after an additional 15 frames from POKE_OUT being set, Bomp’s action is set to EXTEND, its forward velocity is set to 40 units/frame, and a sound is played. When Bomp is in the EXTEND action, Bomp moves forward until its X-position is greater than 3830. At this point, Bomp’s X-position is set to 3830 and its forward velocity is set to 0. Separately, after an additional 60 frames from EXTEND being set, Bomp’s action is set to RETRACT, Bomp’s forward velocity is set to 10 units/frame, a sound plays, and Bomp’s moving angle is decreased by 180 degrees. When Bomp is in the RETRACT action, Bomp continues moving backwards until its X-position is less than 3330. At this point, Bomp’s X-position is set to 3330 and its forward velocity is set to 0. Separately, after an additional 90 frames from RETRACT being set, Bomp’s action is set to POKE_OUT, its forward velocity is set to 25 units/frame, and its moving angle is decreased by 180 degrees.
Line 27: Line 27:
==References==
==References==
[https://github.com/n64decomp/sm64/blob/06ec56df7f951f88da05f468cdcacecba496145a/src/game/behaviors/bomp.inc.c Bomp Behavior File]
[https://github.com/n64decomp/sm64/blob/06ec56df7f951f88da05f468cdcacecba496145a/src/game/behaviors/bomp.inc.c Bomp Behavior File]
[[Category:Objects]]
[[Category:Enemies]]