This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
kirby64_the_crystal_shards:level_settings_blocks [2020/02/26 14:08] jesusyoshi54 Added a lot of sections and made structs valid C |
kirby64_the_crystal_shards:level_settings_blocks [2020/03/05 18:21] jesusyoshi54 [Path Nodes] |
||
---|---|---|---|
Line 55: | Line 55: | ||
/*0x0*/ u16 Vertex[3]; | /*0x0*/ u16 Vertex[3]; | ||
/*0x6*/ u16 Polygon_Number; | /*0x6*/ u16 Polygon_Number; | ||
- | /*0x8*/ u16 Collision_Type_1; //(1 forward norm, 2 back norm, 4 no shadow, 8 non solid/warp related?) | + | /*0x8*/ u16 Solidty_Type; //(1 forward norm, 2 back norm, 4 no shadow, 8 non solid) |
/*0xA*/ u16 Destructable_Group_Index; | /*0xA*/ u16 Destructable_Group_Index; | ||
/*0xC*/ u16 Break_Particle; //(seen in DEDEDE hammer break) | /*0xC*/ u16 Break_Particle; //(seen in DEDEDE hammer break) | ||
/*0xE*/ u16 Halt_Movement; //warp related? Maybe dest (kirby cant move while on top of this if 1) | /*0xE*/ u16 Halt_Movement; //warp related? Maybe dest (kirby cant move while on top of this if 1) | ||
/*0x10*/ s16 Col_Param1; //Amount to move kirby while on certain col types or Break Condition | /*0x10*/ s16 Col_Param1; //Amount to move kirby while on certain col types or Break Condition | ||
- | /*0x12*/ u16 Collision_Type_2; //see col type list | + | /*0x12*/ u16 Collision_Type; //see col type list |
}; | }; | ||
</code> | </code> | ||
- | The following is a list of Collision_Type_2 values known. | + | The following is a list of Collision_Type values known. |
* 0x1 - wall ladder | * 0x1 - wall ladder | ||
* 0x2 - rope | * 0x2 - rope | ||
Line 210: | Line 210: | ||
/*0x0*/ u32 Num_Path_Nodes; | /*0x0*/ u32 Num_Path_Nodes; | ||
/*0x4*/ struct Path_Node_Header (*Path_Node_Header)[]; | /*0x4*/ struct Path_Node_Header (*Path_Node_Header)[]; | ||
- | /*0x8*/ u8 *Unk_Bytes; | + | /*0x8*/ u8 (*Unk_Bytes)[]; |
- | /*0xC*/ f32 *Unk_Floats; | + | /*0xC*/ f32 (*Unk_Floats)[]; |
}; | }; | ||
</code> | </code> | ||
Line 228: | Line 228: | ||
/*0x8*/ struct Node_Connecters (*Node_Connections)[]; | /*0x8*/ struct Node_Connecters (*Node_Connections)[]; | ||
/*0xC*/ u16 Num_Connections; | /*0xC*/ u16 Num_Connections; | ||
- | /*0xE*/ u16 unk; | + | /*0xE*/ u16 Self_Connected; |
}; | }; | ||
</code> | </code> | ||
Line 255: | Line 255: | ||
/*0x0C*/ f32 Inverse_H_Speed; | /*0x0C*/ f32 Inverse_H_Speed; | ||
/*0x10*/ f32 (*Boundary_Matrix)[]; | /*0x10*/ f32 (*Boundary_Matrix)[]; | ||
- | /*0x14*/ f32 *Unk; | + | /*0x14*/ f32 (*Unk)[][5]; |
}; | }; | ||
</code> | </code> | ||
- | The unknown section is almost always null. All that is known is that it follows the boundary matrix and is 4 sets if 5 floats. | + | The unknown section is almost always null. All that is known is that it follows the boundary matrix and is an areay of 5 floats, with length of Num_Node_Sections-1. |
==== Camera&Kirby Nodes ==== | ==== Camera&Kirby Nodes ==== |