sm64

A Super Mario 64 decompilation
Log | Files | Refs | README | LICENSE

moving_texture_macros.h (1838B)


      1 #ifndef MOVING_TEXTURE_MACROS_H
      2 #define MOVING_TEXTURE_MACROS_H
      3 
      4 #include "game/moving_texture.h"
      5 
      6 // From gMovingTextureIdList
      7 #define TEXTURE_WATER            0
      8 #define TEXTURE_MIST             1
      9 #define TEXTURE_JRB_WATER        2
     10 #define TEXTURE_UNK_WATER        3
     11 #define TEXTURE_LAVA             4
     12 #define TEX_QUICKSAND_SSL        5
     13 #define TEX_PYRAMID_SAND_SSL     6
     14 #define TEX_YELLOW_TRI_TTC       7
     15 
     16 // Moving Texture rotations
     17 #define ROTATE_CLOCKWISE         0
     18 #define ROTATE_COUNTER_CLOCKWISE 1
     19 
     20 // Moving texture load quad tris start
     21 #define MOV_TEX_INIT_LOAD(amount) \
     22     amount, 0
     23 
     24 // Short Triangle of moving texture with only 4 triangles with x and z
     25 #define MOV_TEX_4_BOX_TRIS(x, z) \
     26     x, z
     27 
     28 // Moving texture miniTri define texture from MovingTextureList
     29 #define MOV_TEX_DEFINE(text) \
     30     text
     31 
     32 // Moving texture start with speed
     33 #define MOV_TEX_SPD(speed) \
     34     speed
     35 
     36 // Rotation speed of moving texture
     37 #define MOV_TEX_ROT_SPEED(rotspeed) \
     38     rotspeed
     39 
     40 // Rotation scale of moving texture that goes back and forth
     41 #define MOV_TEX_ROT_SCALE(rotscale) \
     42     rotscale
     43 
     44 // Rotation of moving texture
     45 #define MOV_TEX_ROT(rot) \
     46     rot
     47 
     48 // Alpha of moving texture
     49 #define MOV_TEX_ALPHA(alpha) \
     50     alpha
     51 
     52 // Triangle of moving texture
     53 #define MOV_TEX_TRIS(x, y, z, param1, param2) \
     54     x, y, z, param1, param2
     55 
     56 // 2 Triangles of moving texture
     57 #define MOV_TEX_ROT_TRIS(x, y, z, rotx, roty, rotz, param1, param2) \
     58     x, y, z, rotx, roty, rotz, param1, param2
     59 
     60 // Triangle of moving texture with light
     61 #define MOV_TEX_LIGHT_TRIS(x, y, z, light, param1, param2) \
     62     x, y, z, 0, light, 0, param1, param2
     63 
     64 // End of moving texture load
     65 #define MOV_TEX_END() \
     66     0
     67 
     68 // End of moving texture load if movTexRotTris was used, only used in SSL
     69 #define MOV_TEX_ROT_END() \
     70     0, 0
     71 
     72 #endif // MOVING_TEXTURE_MACROS_H