mirror of https://github.com/zeldaret/tp.git
area_check
This commit is contained in:
parent
a28fbeb310
commit
18b96dd20e
|
|
@ -23,7 +23,9 @@ class do_class : public fopAc_ac_c {
|
|||
public:
|
||||
/* 0x56C */ u8 field_0x56c[68];
|
||||
/* 0x5AC */ request_of_phase_process_class mPhase;
|
||||
/* 0x5B4 */ u8 field_0x5b4[20];
|
||||
/* 0x5B4 */ u8 field_0x5b4[2];
|
||||
/* 0x5B6 */ u8 field_0x5b6;
|
||||
/* 0x5B7 */ u8 field_0x5b7[17];
|
||||
/* 0x5C8 */ float field_0x5c8;
|
||||
/* 0x5CC */ u8 field_0x5cc[4];
|
||||
/* 0x5D8 */ mDoExt_McaMorf* mpMorf;
|
||||
|
|
@ -35,10 +37,12 @@ public:
|
|||
/* 0x5F0 */ u8 field_0x5f0[2];
|
||||
/* 0x5F2 */ s16 field_0x5f2;
|
||||
/* 0x5F4 */ u8 field_0x5f4[2];
|
||||
/* 0x5F6 */ u16 field_0x5f6;
|
||||
/* 0x5F6 */ s16 field_0x5f6;
|
||||
/* 0x5F8 */ u8 field_0x5f8[4];
|
||||
/* 0x5FC */ u16 field_0x5fc;
|
||||
/* 0x5FE */ u8 field_0x5fe[6];
|
||||
/* 0x5FE */ u8 field_0x5fe[2];
|
||||
/* 0x600 */ s16 field_0x600;
|
||||
/* 0x602 */ u8 field_0x602[2];
|
||||
/* 0x604 */ u16 field_0x604;
|
||||
/* 0x606 */ u8 field_0x606[2];
|
||||
/* 0x608 */ float field_0x608;
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@
|
|||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "f_pc/f_pc_executor.h"
|
||||
#include "SSystem/SComponent/c_math.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
|
|
@ -1048,6 +1049,20 @@ COMPILER_STRIP_GATE(0x8066EE58, &lit_4138);
|
|||
#pragma pop
|
||||
|
||||
/* 80668BA0-80668D5C 000F40 01BC+00 5/5 0/0 0/0 .text area_check__FP8do_class */
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals
|
||||
static void area_check(do_class* i_dogP) {
|
||||
cXyz pos_delta = i_dogP->orig.pos - i_dogP->current.pos;
|
||||
|
||||
if (i_dogP->field_0x5b6 != 255) {
|
||||
if ((i_dogP->field_0x5b6 * 100.f * 2.0f) > pos_delta.abs()) {
|
||||
i_dogP->field_0x5f2 = 1;
|
||||
i_dogP->field_0x5f6 = -1;
|
||||
i_dogP->field_0x600 = cM_rndF(100.0f) + 100.0f; // random value between 100 and 200
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
|
|
@ -1056,6 +1071,7 @@ static asm void area_check(do_class* i_dogP) {
|
|||
#include "asm/rel/d/a/d_a_do/d_a_do/area_check__FP8do_class.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8066EE60-8066EE64 000078 0004+00 0/5 0/0 0/0 .rodata @4189 */
|
||||
|
|
|
|||
Loading…
Reference in New Issue