Advertisement
Guest User

envfx_snow.h

a guest
Apr 1st, 2019
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.70 KB | None | 0 0
  1. #ifndef INGAME_MENU_2_H
  2. #define INGAME_MENU_2_H
  3.  
  4. #include <ultra64.h>
  5. #include "types.h"
  6.  
  7. #define ENVFX_MODE_NONE 0 // no effects
  8. #define ENVFX_SNOW_NORMAL 1 // CCM, SL
  9. #define ENVFX_SNOW_WATER 2 // Secret Aquarium, Sunken Ship
  10. #define ENVFX_SNOW_BLIZZARD 3 // unused
  11.  
  12. #define ENVFX_BUBBLE_START 10 // Separates snow effects and flower/bubble effects
  13.  
  14. #define ENVFX_FLOWERS 11 // unused
  15. #define ENVFX_LAVA_BUBBLES 12 // LLL, BitFS, Bowser 2
  16. #define ENVFX_WHIRLPOOL_BUBBLES 13 // DDD
  17. #define ENVFX_JETSTREAM_BUBBLES 14 // JRB, DDD (submarine area)
  18.  
  19. struct EnvFxParticle {
  20. s8 isAlive;
  21. //s8 filler01;
  22. s16 animFrame; // lava bubbles and flowers have frame animations
  23. s32 xPos;
  24. s32 yPos;
  25. s32 zPos;
  26. s32 angleAndDist[2]; // for whirpools, [0] = angle from center, [1] = distance from center
  27. s32 unusedBubbleVar; // set to zero for bubbles when respawning, never used elsewhere
  28. s32 bubbleY; // for Bubbles, yPos is always set to this
  29. s8 filler20[56 - 0x20];
  30. };
  31.  
  32. extern s8 gEnvFxMode;
  33. extern UNUSED s32 D_80330644;
  34. extern Vtx_t gSnowTempVtx[3];
  35. extern struct SnowFlakeVertex gSnowFlakeVertex1;
  36. extern struct SnowFlakeVertex gSnowFlakeVertex2;
  37. extern struct SnowFlakeVertex gSnowFlakeVertex3;
  38.  
  39. extern struct EnvFxParticle *gEnvFxBuffer;
  40. extern Vec3i gSnowCylinderLastPos;
  41. extern s16 gSnowParticleCount;
  42. extern s16 gSnowParticleMaxCount;
  43.  
  44. Gfx *envfx_update_particles(int snowMode, Vec3s marioPos, Vec3s camTo, Vec3s camFrom);
  45. void orbit_from_positions(Vec3s from, Vec3s to, s16 *radius, s16 *pitch, s16 *yaw);
  46. void rotate_triangle_vertices(Vec3s vertex1, Vec3s vertex2, Vec3s vertex3, s16 pitch, s16 yaw);
  47.  
  48. #endif // INGAME_MENU_2_H
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement