You've already forked Microtransactions64
mirror of
https://github.com/Print-and-Panic/Microtransactions64.git
synced 2026-01-21 10:17:19 -08:00
Merge branch 'master' of https://github.com/Reonu/HackerSM64 into puppycamera2
This commit is contained in:
@@ -5,39 +5,39 @@ const GeoLayout chilly_chief_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0, 0x7333),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 75, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 75, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 146, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 146, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, chilly_chief_seg6_dl_06002B30),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, chilly_chief_seg6_dl_06002B30),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, -75, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, -75, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 146, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 146, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, chilly_chief_seg6_dl_06002BC8),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, chilly_chief_seg6_dl_06002BC8),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_BILLBOARD(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_DISPLAY_LIST(LAYER_ALPHA, chilly_chief_seg6_dl_06002D88),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, chilly_chief_seg6_dl_06002C60),
|
||||
GEO_ANIMATED_PART(4, 0, 0, 0, chilly_chief_seg6_dl_06003010),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, chilly_chief_seg6_dl_06002C60),
|
||||
GEO_ANIMATED_PART(LAYER_ALPHA, 0, 0, 0, chilly_chief_seg6_dl_06003010),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
@@ -51,39 +51,39 @@ const GeoLayout chilly_chief_big_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0, 0xE666),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 75, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 75, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 146, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 146, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, chilly_chief_seg6_dl_06002B30),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, chilly_chief_seg6_dl_06002B30),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, -75, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, -75, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 146, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 146, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, chilly_chief_seg6_dl_06002BC8),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, chilly_chief_seg6_dl_06002BC8),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_BILLBOARD(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_DISPLAY_LIST(LAYER_ALPHA, chilly_chief_seg6_dl_06002EF0),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, chilly_chief_seg6_dl_06002C60),
|
||||
GEO_ANIMATED_PART(4, 0, 0, 0, chilly_chief_seg6_dl_06003010),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, chilly_chief_seg6_dl_06002C60),
|
||||
GEO_ANIMATED_PART(LAYER_ALPHA, 0, 0, 0, chilly_chief_seg6_dl_06003010),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
@@ -13,7 +13,6 @@ UNUSED static const u64 binid_0 = 0;
|
||||
|
||||
#include "wiggler_body/model.inc.c"
|
||||
#include "wiggler_body/anims/data.inc.c"
|
||||
#include "wiggler_body/geo.inc.c"
|
||||
#include "wiggler_body/anims/table.inc.c"
|
||||
|
||||
#include "wiggler_head/model.inc.c"
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
#include "group11.h"
|
||||
|
||||
#include "bubba/geo.inc.c"
|
||||
#include "wiggler_body/geo.inc.c"
|
||||
#include "wiggler_head/geo.inc.c"
|
||||
#include "lakitu_enemy/geo.inc.c"
|
||||
#include "spiny_egg/geo.inc.c"
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
|
||||
#include "chillychief/model.inc.c"
|
||||
#include "chillychief/anims/data.inc.c"
|
||||
#include "chillychief/geo.inc.c"
|
||||
#include "chillychief/anims/table.inc.c"
|
||||
UNUSED static const u64 binid_0 = 0;
|
||||
|
||||
|
||||
@@ -7,4 +7,5 @@
|
||||
#include "common1.h"
|
||||
#include "group16.h"
|
||||
|
||||
#include "chillychief/geo.inc.c"
|
||||
#include "moneybag/geo.inc.c"
|
||||
|
||||
@@ -14,7 +14,6 @@ UNUSED static const u64 binid_0 = 0;
|
||||
|
||||
#include "manta/model.inc.c"
|
||||
#include "manta/anims/data.inc.c"
|
||||
#include "manta/geo.inc.c"
|
||||
#include "manta/anims/table.inc.c"
|
||||
UNUSED static const u64 binid_1 = 1;
|
||||
|
||||
|
||||
@@ -8,5 +8,6 @@
|
||||
#include "group4.h"
|
||||
|
||||
#include "clam_shell/geo.inc.c"
|
||||
#include "manta/geo.inc.c"
|
||||
#include "sushi/geo.inc.c"
|
||||
#include "unagi/geo.inc.c"
|
||||
|
||||
@@ -2,56 +2,56 @@
|
||||
const GeoLayout manta_seg5_geo_05008D14[] = {
|
||||
GEO_SCALE(0, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, manta_seg5_dl_05006750),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, manta_seg5_dl_05006750),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 440, 220, 6, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 440, 220, 6, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, manta_seg5_dl_05005358),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, manta_seg5_dl_05005358),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 220, 0, 0, manta_seg5_dl_050055A8),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 220, 0, 0, manta_seg5_dl_050055A8),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 180, 0, 0, manta_seg5_dl_05005768),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 180, 0, 0, manta_seg5_dl_05005768),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 440, -220, 6, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 440, -220, 6, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, manta_seg5_dl_05005C38),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, manta_seg5_dl_05005C38),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 220, 0, 0, manta_seg5_dl_05005E88),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 220, 0, 0, manta_seg5_dl_05005E88),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 180, 0, 0, manta_seg5_dl_05006048),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 180, 0, 0, manta_seg5_dl_05006048),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, manta_seg5_dl_05006C08),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, manta_seg5_dl_05006C08),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 168, 0, 0, manta_seg5_dl_05006B70),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 168, 0, 0, manta_seg5_dl_05006B70),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 236, 0, 0, manta_seg5_dl_05006B08),
|
||||
GEO_ANIMATED_PART(1, 236, 0, 0, manta_seg5_dl_05004E90),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 236, 0, 0, manta_seg5_dl_05006B08),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 236, 0, 0, manta_seg5_dl_05004E90),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 688, 120, -6, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 688, 120, -6, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, manta_seg5_dl_05005038),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, manta_seg5_dl_05005038),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 668, 170, 6, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 668, 170, 6, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, manta_seg5_dl_05004DB8),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, manta_seg5_dl_05004DB8),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 688, -120, -6, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 688, -120, -6, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, manta_seg5_dl_05005918),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, manta_seg5_dl_05005918),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, 668, -170, 6, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 668, -170, 6, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, manta_seg5_dl_05004A70),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, manta_seg5_dl_05004A70),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
@@ -4,9 +4,9 @@ const GeoLayout wiggler_body_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_BILLBOARD(),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -14,23 +14,23 @@ const GeoLayout wiggler_body_geo[] = {
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, -31, 0, 51, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, -31, 0, 51, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, wiggler_seg5_dl_0500BE98),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, wiggler_seg5_dl_0500BE98),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 39, 0, 0, wiggler_seg5_dl_0500BE10),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 39, 0, 0, wiggler_seg5_dl_0500BE10),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 41, 0, 0, wiggler_seg5_dl_0500BCB8),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 41, 0, 0, wiggler_seg5_dl_0500BCB8),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(1, -31, 0, -49, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, -31, 0, -49, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 0, 0, 0, wiggler_seg5_dl_0500C100),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, wiggler_seg5_dl_0500C100),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 39, 0, 0, wiggler_seg5_dl_0500C078),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 39, 0, 0, wiggler_seg5_dl_0500C078),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(1, 41, 0, 0, wiggler_seg5_dl_0500BF20),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 41, 0, 0, wiggler_seg5_dl_0500BF20),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
@@ -3507,7 +3507,7 @@ UNUSED static const u64 behavior_data_unused_0 = 0;
|
||||
const BehaviorScript bhvMario[] = {
|
||||
BEGIN(OBJ_LIST_PLAYER),
|
||||
SET_INT(oIntangibleTimer, 0),
|
||||
OR_INT(oFlags, OBJ_FLAG_0100),
|
||||
OR_INT(oFlags, OBJ_FLAG_PLAYER),
|
||||
OR_INT(oUnk94, 0x0001),
|
||||
SET_HITBOX(/*Radius*/ 37, /*Height*/ 160),
|
||||
BEGIN_LOOP(),
|
||||
@@ -3631,7 +3631,7 @@ const BehaviorScript bhvMenuButton[] = {
|
||||
|
||||
const BehaviorScript bhvMenuButtonManager[] = {
|
||||
BEGIN(OBJ_LIST_LEVEL),
|
||||
OR_INT(oFlags, (OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM | OBJ_FLAG_0020 | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),
|
||||
OR_INT(oFlags, (OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM | OBJ_FLAG_UPDATE_TRANSFORM_FOR_THROW_MATRIX | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),
|
||||
CALL_NATIVE(bhv_menu_button_manager_init),
|
||||
BEGIN_LOOP(),
|
||||
SET_INT(oIntangibleTimer, 0),
|
||||
@@ -4828,7 +4828,7 @@ const BehaviorScript bhvHidden1upInPoleSpawner[] = {
|
||||
|
||||
const BehaviorScript bhvControllablePlatform[] = {
|
||||
BEGIN(OBJ_LIST_SURFACE),
|
||||
OR_INT(oFlags, (OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM | OBJ_FLAG_0020 | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),
|
||||
OR_INT(oFlags, (OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM | OBJ_FLAG_UPDATE_TRANSFORM_FOR_THROW_MATRIX | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),
|
||||
LOAD_COLLISION_DATA(hmc_seg7_collision_controllable_platform),
|
||||
SET_HOME(),
|
||||
CALL_NATIVE(bhv_controllable_platform_init),
|
||||
|
||||
@@ -28,23 +28,23 @@
|
||||
#define RESPAWN_INFO_DONT_RESPAWN 0xFF
|
||||
|
||||
/* oFlags */
|
||||
#define OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE (1 << 0) // 0x00000001
|
||||
#define OBJ_FLAG_MOVE_XZ_USING_FVEL (1 << 1) // 0x00000002
|
||||
#define OBJ_FLAG_MOVE_Y_WITH_TERMINAL_VEL (1 << 2) // 0x00000004
|
||||
#define OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW (1 << 3) // 0x00000008
|
||||
#define OBJ_FLAG_SET_FACE_ANGLE_TO_MOVE_ANGLE (1 << 4) // 0x00000010
|
||||
#define OBJ_FLAG_0020 (1 << 5) // 0x00000020
|
||||
#define OBJ_FLAG_COMPUTE_DIST_TO_MARIO (1 << 6) // 0x00000040
|
||||
#define OBJ_FLAG_ACTIVE_FROM_AFAR (1 << 7) // 0x00000080
|
||||
#define OBJ_FLAG_0100 (1 << 8) // 0x00000100
|
||||
#define OBJ_FLAG_TRANSFORM_RELATIVE_TO_PARENT (1 << 9) // 0x00000200
|
||||
#define OBJ_FLAG_HOLDABLE (1 << 10) // 0x00000400
|
||||
#define OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM (1 << 11) // 0x00000800
|
||||
#define OBJ_FLAG_1000 (1 << 12) // 0x00001000
|
||||
#define OBJ_FLAG_COMPUTE_ANGLE_TO_MARIO (1 << 13) // 0x00002000
|
||||
#define OBJ_FLAG_PERSISTENT_RESPAWN (1 << 14) // 0x00004000
|
||||
#define OBJ_FLAG_8000 (1 << 15) // 0x00008000
|
||||
#define OBJ_FLAG_30 (1 << 30) // 0x40000000
|
||||
#define OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE (1 << 0) // 0x00000001
|
||||
#define OBJ_FLAG_MOVE_XZ_USING_FVEL (1 << 1) // 0x00000002
|
||||
#define OBJ_FLAG_MOVE_Y_WITH_TERMINAL_VEL (1 << 2) // 0x00000004
|
||||
#define OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW (1 << 3) // 0x00000008
|
||||
#define OBJ_FLAG_SET_FACE_ANGLE_TO_MOVE_ANGLE (1 << 4) // 0x00000010
|
||||
#define OBJ_FLAG_UPDATE_TRANSFORM_FOR_THROW_MATRIX (1 << 5) // 0x00000020
|
||||
#define OBJ_FLAG_COMPUTE_DIST_TO_MARIO (1 << 6) // 0x00000040
|
||||
#define OBJ_FLAG_ACTIVE_FROM_AFAR (1 << 7) // 0x00000080
|
||||
#define OBJ_FLAG_PLAYER (1 << 8) // 0x00000100
|
||||
#define OBJ_FLAG_TRANSFORM_RELATIVE_TO_PARENT (1 << 9) // 0x00000200
|
||||
#define OBJ_FLAG_HOLDABLE (1 << 10) // 0x00000400
|
||||
#define OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM (1 << 11) // 0x00000800
|
||||
#define OBJ_FLAG_1000 (1 << 12) // 0x00001000
|
||||
#define OBJ_FLAG_COMPUTE_ANGLE_TO_MARIO (1 << 13) // 0x00002000
|
||||
#define OBJ_FLAG_PERSISTENT_RESPAWN (1 << 14) // 0x00004000
|
||||
#define OBJ_FLAG_8000 (1 << 15) // 0x00008000
|
||||
#define OBJ_FLAG_HITBOX_WAS_SET (1 << 30) // 0x40000000
|
||||
|
||||
/* oHeldState */
|
||||
#define HELD_FREE 0
|
||||
|
||||
@@ -17,9 +17,6 @@
|
||||
// Whether the node type has a function pointer of type GraphNodeFunc
|
||||
#define GRAPH_NODE_TYPE_FUNCTIONAL 0x100
|
||||
|
||||
// Type used for Bowser and an unused geo function in obj_behaviors.c
|
||||
#define GRAPH_NODE_TYPE_400 0x400
|
||||
|
||||
// The discriminant for different types of geo nodes
|
||||
#define GRAPH_NODE_TYPE_ROOT 0x001
|
||||
#define GRAPH_NODE_TYPE_ORTHO_PROJECTION 0x002
|
||||
|
||||
@@ -98,8 +98,7 @@ void bobomb_act_chase_mario(void) {
|
||||
}
|
||||
|
||||
void bobomb_act_launched(void) {
|
||||
s16 collisionFlags = 0;
|
||||
collisionFlags = object_step();
|
||||
s16 collisionFlags = object_step();
|
||||
if ((collisionFlags & OBJ_COL_FLAG_GROUNDED) == OBJ_COL_FLAG_GROUNDED)
|
||||
o->oAction = BOBOMB_ACT_EXPLODE; /* bit 0 */
|
||||
}
|
||||
@@ -203,7 +202,7 @@ void bobomb_thrown_loop(void) {
|
||||
|
||||
o->header.gfx.node.flags &= ~GRAPH_RENDER_INVISIBLE;
|
||||
o->oHeldState = 0;
|
||||
o->oFlags &= ~0x8; /* bit 3 */
|
||||
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW; /* bit 3 */
|
||||
o->oForwardVel = 25.0;
|
||||
o->oVelY = 20.0;
|
||||
o->oAction = BOBOMB_ACT_LAUNCHED;
|
||||
|
||||
@@ -11,10 +11,8 @@ void bhv_big_boulder_init(void) {
|
||||
}
|
||||
|
||||
void boulder_act_1(void) {
|
||||
s16 sp1E;
|
||||
|
||||
sp1E = object_step_without_floor_orient();
|
||||
if ((sp1E & 0x09) == 0x01 && o->oVelY > 10.0f) {
|
||||
s16 collisionFlags = object_step_without_floor_orient();
|
||||
if ((collisionFlags & OBJ_COL_FLAGS_LANDED) == OBJ_COL_FLAG_GROUNDED && o->oVelY > 10.0f) {
|
||||
cur_obj_play_sound_2(SOUND_GENERAL_GRINDEL_ROLL);
|
||||
spawn_mist_particles();
|
||||
}
|
||||
|
||||
@@ -29,19 +29,19 @@ void small_breakable_box_spawn_dust(void) {
|
||||
}
|
||||
|
||||
void small_breakable_box_act_move(void) {
|
||||
s16 sp1E = object_step();
|
||||
s16 collisionFlags = object_step();
|
||||
|
||||
obj_attack_collided_from_other_object(o);
|
||||
if (sp1E == 1)
|
||||
if (collisionFlags == OBJ_COL_FLAG_GROUNDED)
|
||||
cur_obj_play_sound_2(SOUND_GENERAL_BOX_LANDING_2);
|
||||
if (sp1E & 1) {
|
||||
if (collisionFlags & OBJ_COL_FLAG_GROUNDED) {
|
||||
if (o->oForwardVel > 20.0f) {
|
||||
cur_obj_play_sound_2(SOUND_ENV_SLIDING);
|
||||
small_breakable_box_spawn_dust();
|
||||
}
|
||||
}
|
||||
|
||||
if (sp1E & 2) {
|
||||
if (collisionFlags & OBJ_COL_FLAG_HIT_WALL) {
|
||||
spawn_mist_particles();
|
||||
spawn_triangle_break_particles(20, MODEL_DIRT_ANIMATION, 0.7f, 3);
|
||||
obj_spawn_yellow_coins(o, 3);
|
||||
@@ -49,7 +49,7 @@ void small_breakable_box_act_move(void) {
|
||||
o->activeFlags = ACTIVE_FLAG_DEACTIVATED;
|
||||
}
|
||||
|
||||
obj_check_floor_death(sp1E, sObjFloor);
|
||||
obj_check_floor_death(collisionFlags, sObjFloor);
|
||||
}
|
||||
|
||||
void breakable_box_small_released_loop(void) {
|
||||
@@ -106,7 +106,7 @@ void breakable_box_small_get_thrown(void) {
|
||||
cur_obj_enable_rendering();
|
||||
o->header.gfx.node.flags &= ~GRAPH_RENDER_INVISIBLE;
|
||||
o->oHeldState = 0;
|
||||
o->oFlags &= ~0x08;
|
||||
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
|
||||
o->oForwardVel = 40.0f;
|
||||
o->oVelY = 20.0f;
|
||||
o->oBreakableBoxSmallReleased = 1;
|
||||
|
||||
@@ -64,7 +64,7 @@ void bully_check_mario_collision(void) {
|
||||
|
||||
o->oInteractStatus &= ~INT_STATUS_INTERACTED;
|
||||
o->oAction = BULLY_ACT_KNOCKBACK;
|
||||
o->oFlags &= ~0x8; /* bit 3 */
|
||||
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW; /* bit 3 */
|
||||
cur_obj_init_animation(3);
|
||||
o->oBullyMarioCollisionAngle = o->oMoveAngleYaw;
|
||||
}
|
||||
@@ -98,7 +98,7 @@ void bully_act_knockback(void) {
|
||||
if (o->oForwardVel < 10.0 && (s32) o->oVelY == 0) {
|
||||
o->oForwardVel = 1.0;
|
||||
o->oBullyKBTimerAndMinionKOCounter++;
|
||||
o->oFlags |= 0x8; /* bit 3 */
|
||||
o->oFlags |= OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW; /* bit 3 */
|
||||
o->oMoveAngleYaw = o->oFaceAngleYaw;
|
||||
obj_turn_toward_object(o, gMarioObject, 16, 1280);
|
||||
} else
|
||||
@@ -113,7 +113,7 @@ void bully_act_knockback(void) {
|
||||
|
||||
void bully_act_back_up(void) {
|
||||
if (o->oTimer == 0) {
|
||||
o->oFlags &= ~0x8; /* bit 3 */
|
||||
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW; /* bit 3 */
|
||||
o->oMoveAngleYaw += 0x8000;
|
||||
}
|
||||
|
||||
@@ -128,13 +128,13 @@ void bully_act_back_up(void) {
|
||||
|
||||
if (o->oTimer == 15) {
|
||||
o->oMoveAngleYaw = o->oFaceAngleYaw;
|
||||
o->oFlags |= 0x8; /* bit 3 */
|
||||
o->oFlags |= OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW; /* bit 3 */
|
||||
o->oAction = BULLY_ACT_PATROL;
|
||||
}
|
||||
}
|
||||
|
||||
void bully_backup_check(s16 collisionFlags) {
|
||||
if (!(collisionFlags & 0x8) && o->oAction != BULLY_ACT_KNOCKBACK) /* bit 3 */
|
||||
if (!(collisionFlags & OBJ_COL_FLAG_NO_Y_VEL) && o->oAction != BULLY_ACT_KNOCKBACK) /* bit 3 */
|
||||
{
|
||||
o->oPosX = o->oBullyPrevX;
|
||||
o->oPosZ = o->oBullyPrevZ;
|
||||
@@ -346,10 +346,10 @@ void bhv_big_bully_with_minions_loop(void) {
|
||||
|
||||
case BULLY_ACT_ACTIVATE_AND_FALL:
|
||||
collisionFlags = object_step();
|
||||
if ((collisionFlags & 0x9) == 0x9) /* bits 0 and 3 */
|
||||
if ((collisionFlags & OBJ_COL_FLAGS_LANDED) == OBJ_COL_FLAGS_LANDED) /* bits 0 and 3 */
|
||||
o->oAction = BULLY_ACT_PATROL;
|
||||
|
||||
if (collisionFlags == 1) {
|
||||
if (collisionFlags == OBJ_COL_FLAG_GROUNDED) {
|
||||
cur_obj_play_sound_2(SOUND_OBJ_THWOMP);
|
||||
set_camera_shake_from_point(SHAKE_POS_SMALL, o->oPosX, o->oPosY, o->oPosZ);
|
||||
spawn_mist_particles();
|
||||
|
||||
@@ -118,11 +118,11 @@ void cap_scale_vertically(void) {
|
||||
}
|
||||
|
||||
void wing_vanish_cap_act_0(void) {
|
||||
s16 sp1E;
|
||||
s16 collisionFlags;
|
||||
|
||||
o->oFaceAngleYaw += o->oForwardVel * 128.0f;
|
||||
sp1E = object_step();
|
||||
if (sp1E & 0x01) {
|
||||
collisionFlags = object_step();
|
||||
if (collisionFlags & OBJ_COL_FLAG_GROUNDED) {
|
||||
cap_check_quicksand();
|
||||
if (o->oVelY != 0.0f) {
|
||||
o->oCapUnkF4 = 1;
|
||||
@@ -161,11 +161,11 @@ void bhv_metal_cap_init(void) {
|
||||
}
|
||||
|
||||
void metal_cap_act_0(void) {
|
||||
s16 sp1E;
|
||||
s16 collisionFlags;
|
||||
|
||||
o->oFaceAngleYaw += o->oForwardVel * 128.0f;
|
||||
sp1E = object_step();
|
||||
if (sp1E & 0x01)
|
||||
collisionFlags = object_step();
|
||||
if (collisionFlags & OBJ_COL_FLAG_GROUNDED)
|
||||
cap_check_quicksand();
|
||||
}
|
||||
|
||||
@@ -220,12 +220,12 @@ void normal_cap_set_save_flags(void) {
|
||||
}
|
||||
|
||||
void normal_cap_act_0(void) {
|
||||
s16 sp1E;
|
||||
s16 collisionFlags;
|
||||
|
||||
o->oFaceAngleYaw += o->oForwardVel * 128.0f;
|
||||
o->oFaceAnglePitch += o->oForwardVel * 80.0f;
|
||||
sp1E = object_step();
|
||||
if (sp1E & 0x01) {
|
||||
collisionFlags = object_step();
|
||||
if (collisionFlags & OBJ_COL_FLAG_GROUNDED) {
|
||||
cap_check_quicksand();
|
||||
|
||||
if (o->oVelY != 0.0f) {
|
||||
|
||||
@@ -6,7 +6,7 @@ struct DoorAction
|
||||
s32 action;
|
||||
};
|
||||
|
||||
static struct DoorAction sDoorActions[] = { { 0x40000, 3 }, { 0x80000, 4 }, { 0x10000, 1 }, { 0x20000, 2 }, { -1, 0 }, };
|
||||
static struct DoorAction sDoorActions[] = { { INT_STATUS_WARP_DOOR_PULLED, 3 }, { INT_STATUS_WARP_DOOR_PUSHED, 4 }, { INT_STATUS_DOOR_PULLED, 1 }, { INT_STATUS_DOOR_PUSHED, 2 }, { -1, 0 }, };
|
||||
|
||||
static s32 sDoorOpenSounds[] = { SOUND_GENERAL_OPEN_WOOD_DOOR, SOUND_GENERAL_OPEN_IRON_DOOR };
|
||||
|
||||
|
||||
@@ -113,8 +113,8 @@ void exclamation_box_spawn_contents(struct Struct802C0DF0 *a0, u8 a1) {
|
||||
sp1C->oForwardVel = 3.0f;
|
||||
sp1C->oMoveAngleYaw = gMarioObject->oMoveAngleYaw;
|
||||
o->oBehParams |= a0->unk2 << 24;
|
||||
if (a0->model == 122)
|
||||
o->oFlags |= 0x4000;
|
||||
if (a0->model == MODEL_STAR)
|
||||
o->oFlags |= OBJ_FLAG_PERSISTENT_RESPAWN;
|
||||
break;
|
||||
}
|
||||
a0++;
|
||||
|
||||
@@ -35,7 +35,7 @@ void bhv_fire_piranha_plant_init(void) {
|
||||
obj_set_hitbox(o, &sFirePiranhaPlantHitbox);
|
||||
|
||||
if ((u16)(o->oBehParams >> 16) != 0) {
|
||||
o->oFlags |= 0x00004000;
|
||||
o->oFlags |= OBJ_FLAG_PERSISTENT_RESPAWN;
|
||||
o->oHealth = 1;
|
||||
|
||||
if (o->oBehParams & 0x0000FF00) {
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user