Reformat to something more readable for me :3
This commit is contained in:
+113
-57
@@ -9,17 +9,24 @@
|
||||
|
||||
struct WarpNode
|
||||
{
|
||||
/*00*/ u8 id;
|
||||
/*01*/ u8 destLevel;
|
||||
/*02*/ u8 destArea;
|
||||
/*03*/ u8 destNode;
|
||||
/*00*/
|
||||
u8 id;
|
||||
/*01*/
|
||||
u8 destLevel;
|
||||
/*02*/
|
||||
u8 destArea;
|
||||
/*03*/
|
||||
u8 destNode;
|
||||
};
|
||||
|
||||
struct ObjectWarpNode
|
||||
{
|
||||
/*0x00*/ struct WarpNode node;
|
||||
/*0x04*/ struct Object *object;
|
||||
/*0x08*/ struct ObjectWarpNode *next;
|
||||
/*0x00*/
|
||||
struct WarpNode node;
|
||||
/*0x04*/
|
||||
struct Object *object;
|
||||
/*0x08*/
|
||||
struct ObjectWarpNode *next;
|
||||
};
|
||||
|
||||
// From Surface 0x1B to 0x1E
|
||||
@@ -28,74 +35,118 @@ struct ObjectWarpNode
|
||||
|
||||
struct InstantWarp
|
||||
{
|
||||
/*0x00*/ u8 id; // 0 = 0x1B / 1 = 0x1C / 2 = 0x1D / 3 = 0x1E
|
||||
/*0x01*/ u8 area;
|
||||
/*0x02*/ Vec3s displacement;
|
||||
/*0x00*/
|
||||
u8 id; // 0 = 0x1B / 1 = 0x1C / 2 = 0x1D / 3 = 0x1E
|
||||
/*0x01*/
|
||||
u8 area;
|
||||
/*0x02*/
|
||||
Vec3s displacement;
|
||||
};
|
||||
|
||||
struct SpawnInfo
|
||||
{
|
||||
/*0x00*/ Vec3f startPos;
|
||||
/*0x06*/ Vec3s startAngle;
|
||||
/*0x0C*/ s8 areaIndex;
|
||||
/*0x0D*/ s8 activeAreaIndex;
|
||||
/*0x10*/ u32 behaviorArg;
|
||||
/*0x14*/ void *behaviorScript;
|
||||
/*0x18*/ struct GraphNode *unk18;
|
||||
/*0x1C*/ struct SpawnInfo *next;
|
||||
/*0x00*/
|
||||
Vec3f startPos;
|
||||
/*0x06*/
|
||||
Vec3s startAngle;
|
||||
/*0x0C*/
|
||||
s8 areaIndex;
|
||||
/*0x0D*/
|
||||
s8 activeAreaIndex;
|
||||
/*0x10*/
|
||||
u32 behaviorArg;
|
||||
/*0x14*/
|
||||
void *behaviorScript;
|
||||
/*0x18*/
|
||||
struct GraphNode *unk18;
|
||||
/*0x1C*/
|
||||
struct SpawnInfo *next;
|
||||
};
|
||||
|
||||
struct UnusedArea28
|
||||
{
|
||||
/*0x00*/ s16 unk00;
|
||||
/*0x02*/ s16 unk02;
|
||||
/*0x04*/ s16 unk04;
|
||||
/*0x06*/ s16 unk06;
|
||||
/*0x08*/ s16 unk08;
|
||||
/*0x00*/
|
||||
s16 unk00;
|
||||
/*0x02*/
|
||||
s16 unk02;
|
||||
/*0x04*/
|
||||
s16 unk04;
|
||||
/*0x06*/
|
||||
s16 unk06;
|
||||
/*0x08*/
|
||||
s16 unk08;
|
||||
};
|
||||
|
||||
struct Whirlpool
|
||||
{
|
||||
/*0x00*/ Vec3s pos;
|
||||
/*0x03*/ s16 strength;
|
||||
/*0x00*/
|
||||
Vec3s pos;
|
||||
/*0x03*/
|
||||
s16 strength;
|
||||
};
|
||||
|
||||
struct Area
|
||||
{
|
||||
/*0x00*/ s8 index;
|
||||
/*0x01*/ s8 flags; // Only has 1 flag: 0x01 = Is this the active area?
|
||||
// /*0x02*/ u16 terrainType; // default terrain of the level (set from level script cmd 0x31) ; in libsm64 terrain is defined in the Surface struct
|
||||
/*0x04*/ struct GraphNodeRoot *unk04; // geometry layout data
|
||||
/*0x08*/ s16 *terrainData; // collision data (set from level script cmd 0x2E)
|
||||
/*0x0C*/ s8 *surfaceRooms; // (set from level script cmd 0x2F)
|
||||
/*0x10*/ s16 *macroObjects; // Macro Objects Ptr (set from level script cmd 0x39)
|
||||
/*0x14*/ struct ObjectWarpNode *warpNodes;
|
||||
/*0x18*/ struct WarpNode *paintingWarpNodes;
|
||||
/*0x1C*/ struct InstantWarp *instantWarps;
|
||||
/*0x20*/ struct SpawnInfo *objectSpawnInfos;
|
||||
/*0x24*/ struct Camera *camera;
|
||||
/*0x28*/ struct UnusedArea28 *unused28; // Filled by level script 0x3A, but is unused.
|
||||
/*0x2C*/ struct Whirlpool *whirlpools[2];
|
||||
/*0x34*/ u8 dialog[2]; // Level start dialog number (set by level script cmd 0x30)
|
||||
/*0x36*/ u16 musicParam;
|
||||
/*0x38*/ u16 musicParam2;
|
||||
/*0x00*/
|
||||
s8 index;
|
||||
/*0x01*/
|
||||
s8 flags; // Only has 1 flag: 0x01 = Is this the active area?
|
||||
// /*0x02*/ u16 terrainType; // default terrain of the level (set from level script cmd 0x31) ; in libsm64 terrain is defined in the Surface struct
|
||||
/*0x04*/
|
||||
struct GraphNodeRoot *unk04; // geometry layout data
|
||||
/*0x08*/
|
||||
s16 *terrainData; // collision data (set from level script cmd 0x2E)
|
||||
/*0x0C*/
|
||||
s8 *surfaceRooms; // (set from level script cmd 0x2F)
|
||||
/*0x10*/
|
||||
s16 *macroObjects; // Macro Objects Ptr (set from level script cmd 0x39)
|
||||
/*0x14*/
|
||||
struct ObjectWarpNode *warpNodes;
|
||||
/*0x18*/
|
||||
struct WarpNode *paintingWarpNodes;
|
||||
/*0x1C*/
|
||||
struct InstantWarp *instantWarps;
|
||||
/*0x20*/
|
||||
struct SpawnInfo *objectSpawnInfos;
|
||||
/*0x24*/
|
||||
struct Camera *camera;
|
||||
/*0x28*/
|
||||
struct UnusedArea28 *unused28; // Filled by level script 0x3A, but is unused.
|
||||
/*0x2C*/
|
||||
struct Whirlpool *whirlpools[2];
|
||||
/*0x34*/
|
||||
u8 dialog[2]; // Level start dialog number (set by level script cmd 0x30)
|
||||
/*0x36*/
|
||||
u16 musicParam;
|
||||
/*0x38*/
|
||||
u16 musicParam2;
|
||||
};
|
||||
|
||||
// All the transition data to be used in screen_transition.c
|
||||
struct WarpTransitionData
|
||||
{
|
||||
/*0x00*/ u8 red;
|
||||
/*0x01*/ u8 green;
|
||||
/*0x02*/ u8 blue;
|
||||
/*0x00*/
|
||||
u8 red;
|
||||
/*0x01*/
|
||||
u8 green;
|
||||
/*0x02*/
|
||||
u8 blue;
|
||||
|
||||
/*0x04*/ s16 startTexRadius;
|
||||
/*0x06*/ s16 endTexRadius;
|
||||
/*0x08*/ s16 startTexX;
|
||||
/*0x0A*/ s16 startTexY;
|
||||
/*0x0C*/ s16 endTexX;
|
||||
/*0x0E*/ s16 endTexY;
|
||||
/*0x04*/
|
||||
s16 startTexRadius;
|
||||
/*0x06*/
|
||||
s16 endTexRadius;
|
||||
/*0x08*/
|
||||
s16 startTexX;
|
||||
/*0x0A*/
|
||||
s16 startTexY;
|
||||
/*0x0C*/
|
||||
s16 endTexX;
|
||||
/*0x0E*/
|
||||
s16 endTexY;
|
||||
|
||||
/*0x10*/ s16 texTimer; // always 0, does seems to affect transition when disabled
|
||||
/*0x10*/
|
||||
s16 texTimer; // always 0, does seems to affect transition when disabled
|
||||
};
|
||||
|
||||
#define WARP_TRANSITION_FADE_FROM_COLOR 0x00
|
||||
@@ -111,11 +162,16 @@ struct WarpTransitionData
|
||||
|
||||
struct WarpTransition
|
||||
{
|
||||
/*0x00*/ u8 isActive; // Is the transition active. (either TRUE or FALSE)
|
||||
/*0x01*/ u8 type; // Determines the type of transition to use (circle, star, etc.)
|
||||
/*0x02*/ u8 time; // Amount of time to complete the transition (in frames)
|
||||
/*0x03*/ u8 pauseRendering; // Should the game stop rendering. (either TRUE or FALSE)
|
||||
/*0x04*/ struct WarpTransitionData data;
|
||||
/*0x00*/
|
||||
u8 isActive; // Is the transition active. (either TRUE or FALSE)
|
||||
/*0x01*/
|
||||
u8 type; // Determines the type of transition to use (circle, star, etc.)
|
||||
/*0x02*/
|
||||
u8 time; // Amount of time to complete the transition (in frames)
|
||||
/*0x03*/
|
||||
u8 pauseRendering; // Should the game stop rendering. (either TRUE or FALSE)
|
||||
/*0x04*/
|
||||
struct WarpTransitionData data;
|
||||
};
|
||||
|
||||
// extern struct GraphNode **gLoadedGraphNodes;
|
||||
|
||||
Reference in New Issue
Block a user