Update ET_WaterEffects extension + function names (#488)

This commit is contained in:
Alejandro Asenjo Nitti 2023-08-20 22:38:18 -03:00 committed by GitHub
parent 9c33911758
commit 7e24eceeeb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 36 additions and 24 deletions

View File

@ -119,11 +119,11 @@ EntityWarg = 0x801CF740;
EntityUnkId4B = 0x801D04A4;
EntityWargExplosionPuffTransparent = 0x801D0624;
EntityAlucardWaterEffect = 0x801D0B34;
EntityLargeUpwardsSplash = 0x801D16B4;
EntityAlucardSplash = 0x801D1FC0;
EntitySidewaysWaterDroplets = 0x801D24AC;
EntitySmallUpwardsSplash = 0x801D2840;
EntitySmallWaterSplash = 0x801D2A9C;
EntitySplashWater = 0x801D16B4;
EntitySurfacingWater = 0x801D1FC0;
EntitySideWaterSplash = 0x801D24AC;
EntitySmallWaterDrop = 0x801D2840;
EntityWaterDrop = 0x801D2A9C;
EntityMerman3 = 0x801D2E4C;
EntityExplosion2 = 0x801D3F38;
EntityMediumWaterSplash = 0x801D4168;

View File

@ -81,6 +81,11 @@ EntityStageNamePopup = 0x801C2860;
EntitySoulStealOrb = 0x801C34E4;
EntityEnemyBlood = 0x801C3878;
EntityRoomForeground = 0x801C3D28;
EntitySplashWater = 0x801C4DCC;
EntitySurfacingWater = 0x801C56D8;
EntitySideWaterSplash = 0x801C5BC4;
EntitySmallWaterDrop = 0x801C5F58;
EntityWaterDrop = 0x801C61B4;
EntityMerman2 = 0x801C6564;
EntityExplosion2 = 0x801C7650;
EntityMediumWaterSplash = 0x801C7880;

View File

@ -341,9 +341,17 @@ typedef struct {
typedef struct {
/* 0x7C */ s32 unk7C;
/* 0x80 */ char pad_80[0x2];
/* 0x80 */ s16 unk80;
/* 0x82 */ s16 unk82;
} ET_SplashWater;
union {
/* 0x84 */ s32 val;
struct {
/* 0x84 */ s16 unk0;
/* 0x86 */ s16 unk2;
} modeS16;
} unk84; // size = 0x4
/* 0x88 */ u16 unk88;
} ET_WaterEffects;
typedef struct {
/* 0x7C */ char pad_0[0x20];
@ -401,7 +409,7 @@ typedef union {
/* 0x7C */ ET_Elevator elevator;
/* 0x7C */ ET_801D1BB8 et_801D1BB8;
/* 0x7C */ ET_801D0B78 et_801D0B78;
/* 0x7C */ ET_SplashWater splashWater;
/* 0x7C */ ET_WaterEffects waterEffects;
/* 0x7C */ ET_GurkhaHammer GH_Props;
/* 0x7C */ ET_801CE4CC et_801CE4CC;
/* 0x7C */ ET_801CDFD8 et_801CDFD8;

View File

@ -1263,20 +1263,19 @@ INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", func_801D0A2C);
// Alucard says "ahh" and turns blue from water contact
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntityAlucardWaterEffect);
// large splash going upwards
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntityLargeUpwardsSplash);
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntitySplashWater);
// splash animation and sound when Alucard touches water
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntityAlucardSplash);
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntitySurfacingWater);
// small water droplets go to the side
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntitySidewaysWaterDroplets);
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntitySideWaterSplash);
// small water droplets go upwards
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntitySmallUpwardsSplash);
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntitySmallWaterDrop);
// particle effect, part of merman splash
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntitySmallWaterSplash);
INCLUDE_ASM("asm/us/st/no3/nonmatchings/46684", EntityWaterDrop);
s32 func_801D2D40(s16 yVector) {
s16 newY = yVector + g_CurrentEntity->posY.i.hi;

View File

@ -33,20 +33,20 @@ typedef enum {
MERMAN2_SPIT_FIRE_ATTACK,
} Merman2SpitFireSubSteps;
// EntitySplashWater ID 0x2D
INCLUDE_ASM("asm/us/st/np3/nonmatchings/44DCC", func_801C4DCC);
// ID 0x2D
INCLUDE_ASM("asm/us/st/np3/nonmatchings/44DCC", EntitySplashWater);
// EntitySurfacingWater ID 0x2E
INCLUDE_ASM("asm/us/st/np3/nonmatchings/44DCC", func_801C56D8);
// ID 0x2E
INCLUDE_ASM("asm/us/st/np3/nonmatchings/44DCC", EntitySurfacingWater);
// EntitySideWaterSplash ID 0x2F
INCLUDE_ASM("asm/us/st/np3/nonmatchings/44DCC", func_801C5BC4);
// ID 0x2F
INCLUDE_ASM("asm/us/st/np3/nonmatchings/44DCC", EntitySideWaterSplash);
// EntitySmallWaterDrop ID 0x30
INCLUDE_ASM("asm/us/st/np3/nonmatchings/44DCC", func_801C5F58);
// ID 0x30
INCLUDE_ASM("asm/us/st/np3/nonmatchings/44DCC", EntitySmallWaterDrop);
// EntityWaterDrop ID 0x31
INCLUDE_ASM("asm/us/st/np3/nonmatchings/44DCC", func_801C61B4);
// ID 0x31
INCLUDE_ASM("asm/us/st/np3/nonmatchings/44DCC", EntityWaterDrop);
s32 func_801C6458(s16 yOffset) {
s16 newY = yOffset + g_CurrentEntity->posY.i.hi;