Mr. Blizzard: Difference between revisions
(Created page with "{{object_infobox_2 |title= Mr. Blizzard |image= STROOP- Mr. Blizzard.png |group=General Actor |group2 = Group 7 |tangibility= |draw= |gravity=-4 |friction=100 |buoyancy=2 |int...") |
m (corrected a typo) |
||
Line 1: | Line 1: | ||
{{object_infobox_2 | {{object_infobox_2 | ||
|title= Mr. | |title= Mr. Glizzard | ||
|image= STROOP- Mr. Blizzard.png | |image= STROOP- Mr. Blizzard.png | ||
|group=General Actor | |group=General Actor | ||
Line 20: | Line 20: | ||
}} | }} | ||
Mr. | Mr. Glizzard is a snowman enemy appearing in [[Snowman's Land]] and [[Cool, Cool Mountain]]. They come in two varieties; one that jumps back and forth, and one that throws snowballs at Mario. A total of 4 appear in the game. | ||
==Behavior== | ==Behavior== | ||
Mr. | Mr. Glizzard is initialized according to what type it is. If it is the jumping kind, its action is set to the jumping action and its target angle is set to its current movement angle. Otherwise, the game checks if it is the Mr. Glizzard in Snowman’s Land. If it is, it checks whether or not it should be wearing Mario’s cap. Then, the game sets it to begin its action loop. | ||
===Snowball Type=== | ===Snowball Type=== | ||
This Mr. | This Mr. Glizzard is hidden 200 units beneath the floor until Mario comes near. If Mr. Glizzard is not already set to hold a snowball, one is spawned. When Mario gets within 1000 units of Mr. Glizzard , a sound plays, its moving angle is set to face Mario, it becomes visible and tangible, its pop-up speed is set to 42 and its action is set to pop-up. | ||
Mr. | Mr. Glizzard's stored position begins increasing from -200. It increases by 42, then 32, then 22, then 12, then 2. Once the stored position reaches -90, its head pops up, its cooldown timer is set to 5, and its pop-up velocity is set to 47. While the cooldown timer is above 0, Mr. Glizzard remains in place. Once it reaches 0, Mr. Glizzard's stored position is increased by 47, then 37, then 27. On the next frame, Mr. Glizzard's Y-position is increased by 14 units, its stored position is set to 24, its Y-velocity is set to 17 (gravity instantly changes it to 13) and it moves on to its next action. | ||
Mr. | Mr. Glizzard rotates towards Mario at 8.44 degrees/frame. Mr. Glizzard's facing angle in the roll direction is set equal to a “dizziness” value every frame. If the difference between the angle to Mario and Mr. Glizzard's angle is less than 0, Mr. Glizzard's change in dizziness will be increased or decreased by a value of 8. This dizziness change is then applied to Mr. Glizzard's dizziness value. Otherwise, the dizziness value is stored and the change in dizziness value approaches 1000 for a dizziness value below 0 and -1000 for a value above 0. The game then increments the dizziness value by this amount and if it has the opposite sign of the previously stored dizziness value, the dizziness change and dizziness value are both set to 0. If the dizziness value is not 0 and Mr. Glizzard's rolling angle is greater than 67.5 degrees, Mr. Glizzard dies and disappears unless the distance between Mario and Mr. Glizzard is greater than 1000 units. Otherwise, if the distance between Mario and Mr. Glizzard is greater than 1500 units, Mr. Glizzard goes back into the ground. Otherwise, if 60 frames have elapsed since Mr. Glizzard's last action and the difference between Mario and Mr. Glizzard's angles is less than 11.25 degrees, Mr. Glizzard throws a snowball. After throwing the snowball, another one is generated and Mr. Glizzard goes back to following Mario by rotating. | ||
===Jumping Type=== | ===Jumping Type=== | ||
Jumping Mr. | Jumping Mr. Glizzard has a cooldown timer set to 15 after it completes a jump and set to 30 after it begins turning around. When the cooldown reaches 0, if Mr. Glizzard is not more than 700 units from its home laterally, Mr. Glizzard jumps with an initial Y-velocity of 50 units/frame and a forward velocity of 10 units/frame. It takes 25 frames for Mr. Glizzard to complete a jump. When Mr. Glizzard reaches a position more than 700 units away from its home laterally, Mr. Glizzard's target angle is increased by 180 degrees, Mr, Blizzard’s cooldown is set to 30 frames, its distance from its home is set to 0, and it jumps into the air with a Y-velocity of 25 units/frame. Then, Mr. Glizzard rotates towards its target angle at 3400 angular units (18.68 degrees)/frame and begins jumping again. | ||
==References== | ==References== | ||
[https://github.com/n64decomp/sm64/blob/06ec56df7f951f88da05f468cdcacecba496145a/src/game/behaviors/mr_blizzard.inc.c Behavior] | [https://github.com/n64decomp/sm64/blob/06ec56df7f951f88da05f468cdcacecba496145a/src/game/behaviors/mr_blizzard.inc.c Behavior] | ||
[[Category:Enemies]] | [[Category:Enemies]] |
Revision as of 08:41, 15 September 2020
Mr. Glizzard | |
Technical Constants | |
Object Group | General Actor |
Actor Group | Group 7 |
Physical Constants | |
Gravity | -4 |
Friction | 100 |
Buoyancy | 2 |
Hitbox | |
Interaction Type | Damage |
Damage | 2 |
Radius | 65 |
Height | 170 |
Down Offset | 24 |
Mr. Glizzard is a snowman enemy appearing in Snowman's Land and Cool, Cool Mountain. They come in two varieties; one that jumps back and forth, and one that throws snowballs at Mario. A total of 4 appear in the game.
Behavior
Mr. Glizzard is initialized according to what type it is. If it is the jumping kind, its action is set to the jumping action and its target angle is set to its current movement angle. Otherwise, the game checks if it is the Mr. Glizzard in Snowman’s Land. If it is, it checks whether or not it should be wearing Mario’s cap. Then, the game sets it to begin its action loop.
Snowball Type
This Mr. Glizzard is hidden 200 units beneath the floor until Mario comes near. If Mr. Glizzard is not already set to hold a snowball, one is spawned. When Mario gets within 1000 units of Mr. Glizzard , a sound plays, its moving angle is set to face Mario, it becomes visible and tangible, its pop-up speed is set to 42 and its action is set to pop-up.
Mr. Glizzard's stored position begins increasing from -200. It increases by 42, then 32, then 22, then 12, then 2. Once the stored position reaches -90, its head pops up, its cooldown timer is set to 5, and its pop-up velocity is set to 47. While the cooldown timer is above 0, Mr. Glizzard remains in place. Once it reaches 0, Mr. Glizzard's stored position is increased by 47, then 37, then 27. On the next frame, Mr. Glizzard's Y-position is increased by 14 units, its stored position is set to 24, its Y-velocity is set to 17 (gravity instantly changes it to 13) and it moves on to its next action.
Mr. Glizzard rotates towards Mario at 8.44 degrees/frame. Mr. Glizzard's facing angle in the roll direction is set equal to a “dizziness” value every frame. If the difference between the angle to Mario and Mr. Glizzard's angle is less than 0, Mr. Glizzard's change in dizziness will be increased or decreased by a value of 8. This dizziness change is then applied to Mr. Glizzard's dizziness value. Otherwise, the dizziness value is stored and the change in dizziness value approaches 1000 for a dizziness value below 0 and -1000 for a value above 0. The game then increments the dizziness value by this amount and if it has the opposite sign of the previously stored dizziness value, the dizziness change and dizziness value are both set to 0. If the dizziness value is not 0 and Mr. Glizzard's rolling angle is greater than 67.5 degrees, Mr. Glizzard dies and disappears unless the distance between Mario and Mr. Glizzard is greater than 1000 units. Otherwise, if the distance between Mario and Mr. Glizzard is greater than 1500 units, Mr. Glizzard goes back into the ground. Otherwise, if 60 frames have elapsed since Mr. Glizzard's last action and the difference between Mario and Mr. Glizzard's angles is less than 11.25 degrees, Mr. Glizzard throws a snowball. After throwing the snowball, another one is generated and Mr. Glizzard goes back to following Mario by rotating.
Jumping Type
Jumping Mr. Glizzard has a cooldown timer set to 15 after it completes a jump and set to 30 after it begins turning around. When the cooldown reaches 0, if Mr. Glizzard is not more than 700 units from its home laterally, Mr. Glizzard jumps with an initial Y-velocity of 50 units/frame and a forward velocity of 10 units/frame. It takes 25 frames for Mr. Glizzard to complete a jump. When Mr. Glizzard reaches a position more than 700 units away from its home laterally, Mr. Glizzard's target angle is increased by 180 degrees, Mr, Blizzard’s cooldown is set to 30 frames, its distance from its home is set to 0, and it jumps into the air with a Y-velocity of 25 units/frame. Then, Mr. Glizzard rotates towards its target angle at 3400 angular units (18.68 degrees)/frame and begins jumping again.