mirror of
https://github.com/zeldaret/mm.git
synced 2026-08-20 05:36:55 -04:00
@@ -11,7 +11,9 @@ typedef struct BgCraceMovebg {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x0144 */ char unk_144[0x18];
|
||||
/* 0x015C */ BgCraceMovebgActionFunc actionFunc;
|
||||
/* 0x0160 */ char unk_160[0x34];
|
||||
/* 0x0160 */ char unk_160[0x10];
|
||||
/* 0x0170 */ s32 unk_170;
|
||||
/* 0x0174 */ char unk_174[0x20];
|
||||
} BgCraceMovebg; // size = 0x194
|
||||
|
||||
extern const ActorInit Bg_Crace_Movebg_InitVars;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -5,12 +5,55 @@
|
||||
|
||||
struct EnDno;
|
||||
|
||||
typedef void (*EnDnoActionFunc)(struct EnDno* this, GlobalContext* globalCtx);
|
||||
typedef void (*EnDnoActionFunc)(struct EnDno*, GlobalContext*);
|
||||
|
||||
#define ENDNO_GET_F(thisx) (u32)((thisx)->params & 0xF)
|
||||
#define ENDNO_GET_7F(thisx) ((thisx)->params & 0x7F)
|
||||
#define ENDNO_GET_7F0(thisx) (((thisx)->params >> 4) & 0x7F)
|
||||
#define ENDNO_GET_3F80(thisx) (((thisx)->params >> 7) & 0x7F)
|
||||
#define ENDNO_GET_C000(thisx) (((thisx)->params >> 0xE) & 0x3)
|
||||
|
||||
enum {
|
||||
/* 0x0 */ ENDNO_GET_F_0,
|
||||
/* 0x1 */ ENDNO_GET_F_1,
|
||||
};
|
||||
|
||||
enum {
|
||||
/* 0x0 */ ENDNO_GET_C000_0,
|
||||
/* 0x1 */ ENDNO_GET_C000_1,
|
||||
};
|
||||
|
||||
typedef struct EnDno {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x0144 */ EnDnoActionFunc actionFunc;
|
||||
/* 0x0148 */ char unk_144[0x324];
|
||||
/* 0x000 */ Actor actor;
|
||||
/* 0x144 */ EnDnoActionFunc actionFunc;
|
||||
/* 0x148 */ SkelAnime skelAnime;
|
||||
/* 0x18C */ ColliderCylinder collider;
|
||||
/* 0x1D8 */ Vec3s jointTable[28];
|
||||
/* 0x280 */ Vec3s morphTable[28];
|
||||
/* 0x328 */ s32 unk_328;
|
||||
/* 0x32C */ s32 unk_32C;
|
||||
/* 0x330 */ UNK_TYPE1 unk_330[0x4];
|
||||
/* 0x334 */ Vec3f unk_334;
|
||||
/* 0x340 */ EnDno_ActorUnkStruct unk_340;
|
||||
/* 0x3AC */ s16 unk_3AC;
|
||||
/* 0x3AE */ s16 unk_3AE;
|
||||
/* 0x3B0 */ u16 unk_3B0;
|
||||
/* 0x3B2 */ UNK_TYPE1 unk_3B2[0xC];
|
||||
/* 0x3BE */ s16 unk_3BE;
|
||||
/* 0x3C0 */ f32 unk_3C0;
|
||||
/* 0x3C4 */ UNK_TYPE1 unk_3C4[0x78];
|
||||
/* 0x43C */ LightNode* lightNode;
|
||||
/* 0x440 */ LightInfo lightInfo;
|
||||
/* 0x44E */ u8 unk_44E;
|
||||
/* 0x44F */ UNK_TYPE1 unk_44F[0x3];
|
||||
/* 0x452 */ s16 unk_452;
|
||||
/* 0x454 */ f32 unk_454;
|
||||
/* 0x458 */ s32 unk_458;
|
||||
/* 0x45C */ s16 unk_45C;
|
||||
/* 0x460 */ Actor* unk_460;
|
||||
/* 0x464 */ u16 unk_464;
|
||||
/* 0x466 */ s16 unk_466;
|
||||
/* 0x468 */ u8 unk_468;
|
||||
} EnDno; // size = 0x46C
|
||||
|
||||
extern const ActorInit En_Dno_InitVars;
|
||||
|
||||
@@ -1003,7 +1003,7 @@ void EnFsn_GiveItem(EnFsn* this, GlobalContext* globalCtx) {
|
||||
}
|
||||
|
||||
void EnFsn_SetupResumeInteraction(EnFsn* this, GlobalContext* globalCtx) {
|
||||
if (((void)0, gSaveContext.inventory.questItems) & gBitFlags[18]) {
|
||||
if (CHECK_QUEST_ITEM(18)) {
|
||||
if (globalCtx->msgCtx.unk120B1 == 0) {
|
||||
EnFsn_HandleSetupResumeInteraction(this, globalCtx);
|
||||
}
|
||||
@@ -1183,7 +1183,7 @@ void EnFsn_SetupEndInteraction(EnFsn* this, GlobalContext* globalCtx) {
|
||||
u8 talkState = func_80152498(&globalCtx->msgCtx);
|
||||
|
||||
if ((talkState == 5 || talkState == 6) && func_80147624(globalCtx)) {
|
||||
if (((void)0, gSaveContext.inventory.questItems) & gBitFlags[18]) {
|
||||
if (CHECK_QUEST_ITEM(18)) {
|
||||
if (globalCtx->msgCtx.unk120B1 == 0) {
|
||||
EnFsn_EndInteraction(this, globalCtx);
|
||||
} else {
|
||||
@@ -1255,7 +1255,7 @@ void EnFsn_AskCanBuyMore(EnFsn* this, GlobalContext* globalCtx) {
|
||||
}
|
||||
}
|
||||
} else if ((talkState == 5 || talkState == 6) && func_80147624(globalCtx)) {
|
||||
if (((void)0, gSaveContext.inventory.questItems) & gBitFlags[18]) {
|
||||
if (CHECK_QUEST_ITEM(18)) {
|
||||
if (globalCtx->msgCtx.unk120B1 == 0) {
|
||||
EnFsn_EndInteraction(this, globalCtx);
|
||||
} else {
|
||||
@@ -1302,7 +1302,7 @@ void EnFsn_AskCanBuyAterRunningOutOfItems(EnFsn* this, GlobalContext* globalCtx)
|
||||
}
|
||||
}
|
||||
} else if ((talkState == 5 || talkState == 6) && func_80147624(globalCtx)) {
|
||||
if (((void)0, gSaveContext.inventory.questItems) & gBitFlags[18]) {
|
||||
if (CHECK_QUEST_ITEM(18)) {
|
||||
if (globalCtx->msgCtx.unk120B1 == 0) {
|
||||
EnFsn_EndInteraction(this, globalCtx);
|
||||
} else {
|
||||
|
||||
@@ -439,7 +439,7 @@ void EnMa4_HandlePlayerChoice(EnMa4* this, GlobalContext* globalCtx) {
|
||||
func_8019F208();
|
||||
func_801518B0(globalCtx, 0x334E, &this->actor);
|
||||
this->textId = 0x334E;
|
||||
if ((aux = gSaveContext.inventory.questItems) & gBitFlags[0xE]) {
|
||||
if (CHECK_QUEST_ITEM(14)) {
|
||||
func_80151BB4(globalCtx, 0x1C);
|
||||
}
|
||||
func_80151BB4(globalCtx, 5);
|
||||
@@ -611,7 +611,7 @@ void EnMa4_ChooseNextDialogue(EnMa4* this, GlobalContext* globalCtx) {
|
||||
EnMa4_SetFaceExpression(this, 0, 0);
|
||||
|
||||
// Check if player has Epona's song
|
||||
if ((aux = gSaveContext.inventory.questItems) & gBitFlags[0xE]) {
|
||||
if (CHECK_QUEST_ITEM(14)) {
|
||||
func_801518B0(globalCtx, 0x334C, &this->actor);
|
||||
this->textId = 0x334C;
|
||||
} else {
|
||||
@@ -624,7 +624,7 @@ void EnMa4_ChooseNextDialogue(EnMa4* this, GlobalContext* globalCtx) {
|
||||
|
||||
case 0x3358:
|
||||
if ((gSaveContext.playerForm != PLAYER_FORM_HUMAN) ||
|
||||
!((aux = gSaveContext.inventory.questItems) & gBitFlags[0xE])) {
|
||||
!(CHECK_QUEST_ITEM(14))) {
|
||||
func_801518B0(globalCtx, 0x335C, &this->actor);
|
||||
this->textId = 0x335C;
|
||||
func_80151BB4(globalCtx, 5);
|
||||
@@ -664,7 +664,7 @@ void EnMa4_DialogueHandler(EnMa4* this, GlobalContext* globalCtx) {
|
||||
case 6: // End conversation
|
||||
if (func_80147624(globalCtx) != 0) {
|
||||
if ((globalCtx->msgCtx.unk120B1 == 0) ||
|
||||
(((temp_v0 = gSaveContext.inventory.questItems) & gBitFlags[0x12]) == 0)) {
|
||||
!CHECK_QUEST_ITEM(18)) {
|
||||
EnMa4_SetupWait(this);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user