Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions config/RSBE01_02/rels/sora_enemy/splits.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,11 @@ mo_enemy/sora_enemy/em_extend_param_accesser.cpp:
.data start:0x00003200 end:0x00003280
.bss start:0x000000B8 end:0x000001B0

mo_enemy/sora_enemy/em_target_search_unit.cpp:
.text start:0x0002893C end:0x00028B30
.rodata start:0x00000D88 end:0x00000D98
.data start:0x000036B0 end:0x00003710

mo_enemy/sora_enemy/wnem/wn_em_resource_module_impl.cpp:
.text start:0x0002CF98 end:0x0002D038
.data start:0x00003EA8 end:0x00003F20
Expand Down
30 changes: 15 additions & 15 deletions config/RSBE01_02/rels/sora_enemy/symbols.txt
Original file line number Diff line number Diff line change
Expand Up @@ -862,11 +862,11 @@ fn_41_23328 = .text:0x00023328; // type:function size:0x114
fn_41_2343C = .text:0x0002343C; // type:function size:0xCC
fn_41_23508 = .text:0x00023508; // type:function size:0x14
fn_41_2351C = .text:0x0002351C; // type:function size:0x34
fn_41_23550 = .text:0x00023550; // type:function size:0x244
checkArea__16emAreaModuleImplFP16soModuleAccesserUlUl = .text:0x00023550; // type:function size:0x244
fn_41_23794 = .text:0x00023794; // type:function size:0x14
fn_41_237A8 = .text:0x000237A8; // type:function size:0x168
fn_41_23910 = .text:0x00023910; // type:function size:0xFC
fn_41_23A0C = .text:0x00023A0C; // type:function size:0x1C8
isExistTarget__16emAreaModuleImplFP16soModuleAccesserUl = .text:0x00023910; // type:function size:0xFC
getTargetPos__16emAreaModuleImplFP16soModuleAccesserUlb = .text:0x00023A0C; // type:function size:0x1C8
fn_41_23BD4 = .text:0x00023BD4; // type:function size:0x100
fn_41_23CD4 = .text:0x00023CD4; // type:function size:0x138
fn_41_23E0C = .text:0x00023E0C; // type:function size:0x130
Expand Down Expand Up @@ -972,13 +972,13 @@ fn_41_28884 = .text:0x00028884; // type:function size:0x40
fn_41_288C4 = .text:0x000288C4; // type:function size:0x3C
fn_41_28900 = .text:0x00028900; // type:function size:0x4
fn_41_28904 = .text:0x00028904; // type:function size:0x38
fn_41_2893C = .text:0x0002893C; // type:function size:0x3C
fn_41_28978 = .text:0x00028978; // type:function size:0x5C
fn_41_289D4 = .text:0x000289D4; // type:function size:0xAC
fn_41_28A80 = .text:0x00028A80; // type:function size:0xC
fn_41_28A8C = .text:0x00028A8C; // type:function size:0x84
fn_41_28B10 = .text:0x00028B10; // type:function size:0x10
fn_41_28B20 = .text:0x00028B20; // type:function size:0x10
__ct__18emTargetSearchUnitFv = .text:0x0002893C; // type:function size:0x3C
__dt__18emTargetSearchUnitFv = .text:0x00028978; // type:function size:0x5C
initInterval__18emTargetSearchUnitFP16soModuleAccesser = .text:0x000289D4; // type:function size:0xAC
checkTargetExist__18emTargetSearchUnitFP16soModuleAccesserUl = .text:0x00028A80; // type:function size:0xC
checkTargetInArea__18emTargetSearchUnitFP16soModuleAccesserUlUl = .text:0x00028A8C; // type:function size:0x84
getTargetPos__18emTargetSearchUnitFP16soModuleAccesserUl = .text:0x00028B10; // type:function size:0x10
getSelfPos__18emTargetSearchUnitFP16soModuleAccesser = .text:0x00028B20; // type:function size:0x10
fn_41_28B30 = .text:0x00028B30; // type:function size:0x160
fn_41_28C90 = .text:0x00028C90; // type:function size:0x14
fn_41_28CA4 = .text:0x00028CA4; // type:function size:0x40
Expand Down Expand Up @@ -2885,13 +2885,13 @@ lbl_41_data_4D8 = .data:0x000004D8; // type:object size:0x28 data:string
lbl_41_data_500 = .data:0x00000500; // type:object size:0x8
lbl_41_data_508 = .data:0x00000508; // type:object size:0x14
lbl_41_data_51C = .data:0x0000051C; // type:object size:0x54
lbl_41_data_570 = .data:0x00000570; // type:object size:0x8
__RTTI__16emAreaModuleImpl = .data:0x00000570; // type:object size:0x8
lbl_41_data_578 = .data:0x00000578; // type:object size:0x14
lbl_41_data_58C = .data:0x0000058C; // type:object size:0x4C
lbl_41_data_5D8 = .data:0x000005D8; // type:object size:0x8
lbl_41_data_5E0 = .data:0x000005E0; // type:object size:0x10
lbl_41_data_5F0 = .data:0x000005F0; // type:object size:0xC
lbl_41_data_5FC = .data:0x000005FC; // type:object size:0x8
__RTTI__12soAreaModule = .data:0x000005FC; // type:object size:0x8
lbl_41_data_604 = .data:0x00000604; // type:object size:0x14 data:string
lbl_41_data_618 = .data:0x00000618; // type:object size:0x2C
lbl_41_data_644 = .data:0x00000644; // type:object size:0x8
Expand Down Expand Up @@ -3270,12 +3270,12 @@ lbl_41_data_349C = .data:0x0000349C; // type:object size:0x14
lbl_41_data_34B0 = .data:0x000034B0; // type:object size:0xC
lbl_41_data_34BC = .data:0x000034BC; // type:object size:0xC
lbl_41_data_34C8 = .data:0x000034C8; // type:object size:0x1E8
lbl_41_data_36B0 = .data:0x000036B0; // type:object size:0x1C
__vt__18emTargetSearchUnit = .data:0x000036B0; // type:object size:0x1C
lbl_41_data_36CC = .data:0x000036CC; // type:object size:0x14
lbl_41_data_36E0 = .data:0x000036E0; // type:object size:0xC
lbl_41_data_36EC = .data:0x000036EC; // type:object size:0x8
__RTTI__18emTargetSearchUnit = .data:0x000036EC; // type:object size:0x8
lbl_41_data_36F4 = .data:0x000036F4; // type:object size:0x14
lbl_41_data_3708 = .data:0x00003708; // type:object size:0x8
__RTTI__18soTargetSearchUnit = .data:0x00003708; // type:object size:0x8
lbl_41_data_3710 = .data:0x00003710; // type:object size:0x30
lbl_41_data_3740 = .data:0x00003740; // type:object size:0x10
lbl_41_data_3750 = .data:0x00003750; // type:object size:0x24
Expand Down
6 changes: 3 additions & 3 deletions config/RSBE01_02/rels/sora_melee/symbols.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6342,10 +6342,10 @@ fn_27_A901C = .text:0x000A901C; // type:function size:0x24
fn_27_A9040 = .text:0x000A9040; // type:function size:0x8
fn_27_A9048 = .text:0x000A9048; // type:function size:0x8
fn_27_A9050 = .text:0x000A9050; // type:function size:0x8
fn_27_A9058 = .text:0x000A9058; // type:function size:0x60
fn_27_A90B8 = .text:0x000A90B8; // type:function size:0x40
__ct__18soTargetSearchUnitFv = .text:0x000A9058; // type:function size:0x60
__dt__18soTargetSearchUnitFv = .text:0x000A90B8; // type:function size:0x40
fn_27_A90F8 = .text:0x000A90F8; // type:function size:0x60
fn_27_A9158 = .text:0x000A9158; // type:function size:0x10
initInterval__18soTargetSearchUnitFP16soModuleAccesser = .text:0x000A9158; // type:function size:0x10
fn_27_A9168 = .text:0x000A9168; // type:function size:0x38
fn_27_A91A0 = .text:0x000A91A0; // type:function size:0x4DC
fn_27_A967C = .text:0x000A967C; // type:function size:0x94
Expand Down
1 change: 1 addition & 0 deletions configure.py
Original file line number Diff line number Diff line change
Expand Up @@ -696,6 +696,7 @@ def MatchingFor(*versions):
Object(Matching, "mo_enemy/sora_enemy/resource/em_resource_module_impl.cpp"),
Object(Matching, "mo_enemy/sora_enemy/stop/em_stop_module_impl.cpp"),
Object(Matching, "mo_enemy/sora_enemy/em_extend_param_accesser.cpp"),
Object(Matching, "mo_enemy/sora_enemy/em_target_search_unit.cpp"),
Object(Matching, "mo_enemy/sora_enemy/wnem/wn_em_resource_module_impl.cpp"),
Object(Matching, "mo_enemy/sora_enemy/wnem/wn_em_heap_module_impl.cpp"),
Object(Matching, "mo_enemy/sora_enemy/boobas/em_boobas_param_accesser.cpp"),
Expand Down
41 changes: 41 additions & 0 deletions src/mo_enemy/sora_enemy/em_target_search_unit.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#include <em/em_area_module_impl.h>
#include <em/em_target_search_unit.h>
#include <so/so_value_accesser.h>

emTargetSearchUnit::emTargetSearchUnit() : soTargetSearchUnit() { }

emTargetSearchUnit::~emTargetSearchUnit() { }

void emTargetSearchUnit::initInterval(soModuleAccesser* acc) {
soTargetSearchUnit::initInterval(acc);
if (unk14 > 0) {
float f1 = soValueAccesser::getValueFloat(acc, 0x1100000C, 0);
float f3 = unk4->unk14;
if (0.0f != f3) {
float f0, f2;
f2 = unk14;
f0 = f3 * f1;
unk14 = f2 + f0;
}
}
}

bool emTargetSearchUnit::checkTargetExist(soModuleAccesser* acc, u32 p2) {
return emAreaModuleImpl::isExistTarget(acc, p2);
}

bool emTargetSearchUnit::checkTargetInArea(soModuleAccesser* acc, u32 p2, u32 p3) {
if (p2 == -1) {
return false;
}
emAreaModuleImpl& areaMod = dynamic_cast<emAreaModuleImpl&>(acc->getAreaModule());
return areaMod.checkArea(acc, p2, p3);
}

Vec3f emTargetSearchUnit::getTargetPos(soModuleAccesser* acc, u32 p2) {
return emAreaModuleImpl::getTargetPos(acc, p2, true);
}

Vec3f emTargetSearchUnit::getSelfPos(soModuleAccesser* acc) {
return emAreaModuleImpl::getTargetPos(acc, 4, true);
}