decompile ActorAddMovePos

This commit is contained in:
brotenko@gmail.com 2021-02-12 23:45:21 +01:00
parent 4bd2f51b14
commit 10a7efd1ae
2 changed files with 13 additions and 8 deletions

View File

@ -787,7 +787,7 @@ typedef struct EffectInstance {
/* 0x00 */ s32 flags;
/* 0x04 */ s32 effectIndex;
/* 0x08 */ s32 totalMatricies;
/* 0x0C */ void* unk_0C;
/* 0x0C */ Vec4f* unk_0C; // Correct Type?
/* 0x10 */ struct Effect* effect;
} EffectInstance;
@ -1723,10 +1723,4 @@ typedef struct {
/* 0x11630 */ Matrix4s matrixStack[0x200];
} DisplayContext; // size = 0x19630
// Size and purpose unknown
typedef struct ScriptOwner {
/* 0x000 */ u16 unk_00; // ActorID??
/* 0x003 */ u8 unk_03; // ActorPartIndex??
} ScriptOwner;
#endif

View File

@ -13,4 +13,15 @@ ApiStatus GetDamageIntensity(ScriptInstance* script, s32 isInitialCall) {
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_1AF120", ActorAddMovePos);
// TODO: Rename to AddEffectOffset
ApiStatus ActorAddMovePos(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
EffectInstance* effect = get_variable(script, *args++);
// TODO: Figure out the actual type of unk_0C
effect->unk_0C->y += get_variable(script, *args++);
effect->unk_0C->z += get_variable(script, *args++);
effect->unk_0C->yaw += get_variable(script, *args++);
return ApiStatus_DONE2;
}