World Decomp & Dedupe (#604)

* two new funcs

* UnkFunc53

* more cleanup & dedupe

* UnkEffect0FFuncs

* tst funcs

* anotha one

* UnkNpcAIFunc42

* UnkNpcAIFunc43

* UnkNpcAIFunc44

* UnkNpcAIFunc45

* UnkNpcAIMainFunc4

* UnkNpcAIMainFunc5

* UnkNpcAIMainFunc6

* warnings
This commit is contained in:
Ethan Roseman 2022-01-06 08:40:01 -05:00 committed by GitHub
parent 4c90997d54
commit ccd3b17322
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
212 changed files with 1157 additions and 16205 deletions

View File

@ -100,6 +100,7 @@ void func_80266684(void);
void func_802667F0(s32, Actor*, f32, f32, f32);
void func_802591EC(s32, ActorPart*, s32, Matrix4f*, s32);
HeapNode* general_heap_create(void);
void* general_heap_malloc(s32 size);
s32 general_heap_free(void* data);
@ -534,7 +535,7 @@ void func_8004A73C(Evt* script);
typedef union {
void (*func1)(Evt*, s32);
void (*func2)(void);
} WorldArgs __attribute__ ((__transparent_union__));
} WorldArgs TRANSPARENT_UNION;
s32 create_generic_entity_world(WorldArgs, WorldArgs);
@ -557,6 +558,7 @@ s32 is_actor_hp_bar_visible(Actor*);
void sin_cos_rad(f32 rad, f32* outSinTheta, f32* outCosTheta);
void load_font(s32 font);
void* load_asset_by_name(const char* assetName, u32* decompressedSize);

View File

@ -6,8 +6,10 @@
#ifndef M2CTX
#define BSS __attribute__ ((section (".bss")))
#define TRANSPARENT_UNION __attribute__ ((__transparent_union__))
#else
#define BSS static
#define TRANSPARENT_UNION
#endif
#define ALIGN16(val) (((val) + 0xF) & ~0xF)

View File

@ -190,7 +190,7 @@ INCLUDE_ASM(s32, "EF2680", func_80241C90_EF42A0);
INCLUDE_ASM(s32, "EF2680", func_80242530_EF4B40);
// This should be roughly like this and is a copy from CD7350 (func_80242918_CD9BF8), but with the little extra block
// This should be roughly like this and is a copy from CD7350 (UnkNpcAIMainFunc6), but with the little extra block
// at the beginning. I have to assume that is has to roughly look like below, but I can't get it to match.
#ifdef NON_EQUIVALENT
ApiStatus func_8024299C_EF4FAC(Evt* script, s32 isInitialCall) {

View File

@ -0,0 +1,119 @@
#include "battle/battle.h"
#include "effects.h"
ApiStatus N(UnkEffect0FFunc2)(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
f32 var0 = evt_get_float_variable(script, *args++);
f32 var1 = evt_get_float_variable(script, *args++);
f32 var2 = evt_get_float_variable(script, *args++);
f32 var3 = evt_get_float_variable(script, *args++);
f32 var4 = evt_get_float_variable(script, *args++);
f32 var5 = evt_get_float_variable(script, *args++);
f32 var6 = evt_get_float_variable(script, *args++);
f32 var7 = evt_get_float_variable(script, *args++);
playFX_0F(var0, var1, var2, var3, var4, var5, var6, var7);
return ApiStatus_DONE2;
}
ApiStatus N(UnkEffect0FFunc)(Evt* script, s32 isInitialCall) {
PlayerStatus* playerStatus = &gPlayerStatus;
f32 yaw = gCameras[0].currentYaw / 180.0f * PI;
f32 yawPlus = yaw + 1.570796;
f32 yawMinus = yaw - 1.570796;
f32 temp_f30;
f32 var1;
f32 var2;
f32 rand1 = rand_int(500) - 250;
f32 rand2 = rand_int(500) - 250;
f32 rand3 = rand_int(100) + 600;
f32 var3;
f32 var4;
f32 var5;
f32 var6;
temp_f30 = playerStatus->position.x + (rand3 * sin_rad(yaw));
var1 = temp_f30 + (rand1 * sin_rad(yawPlus));
var2 = playerStatus->position.y + 200.0f;
var3 = playerStatus->position.z - (rand3 * cos_rad(yaw));
var3 = var3 - (rand1 * cos_rad(yawPlus));
var4 = playerStatus->position.x + (rand3 * sin_rad(yaw));
var4 = var4 + (rand2 * sin_rad(yawMinus));
var5 = playerStatus->position.y;
var6 = playerStatus->position.z - (rand3 * cos_rad(yaw));
var6 = var6 - (rand2 * cos_rad(yawMinus));
playFX_0F(0, var1, var2, var3, var4, var5, var6, rand_int(10) + 10);
return ApiStatus_DONE2;
}
ApiStatus N(UnkEffect0FFunc3)(Evt* script, s32 isInitialCall) {
PlayerStatus* playerStatus = &gPlayerStatus;
f32 yaw = gCameras[0].currentYaw / 180.0f * PI;
f32 yawPlus = yaw + 1.570796;
f32 yawMinus = yaw - 1.570796;
f32 temp_f30;
f32 var1;
f32 var2;
f32 rand1 = rand_int(300) - 150;
f32 rand2 = rand_int(300) - 150;
f32 rand3 = rand_int(100) + 50;
f32 var3;
f32 var4;
f32 var5;
f32 var6;
if ((playerStatus->position.y >= 250.0f)) {
return ApiStatus_DONE2;
}
temp_f30 = playerStatus->position.x - (rand3 * sin_rad(yaw));
var1 = temp_f30 + (rand1 * sin_rad(yawPlus));
var2 = playerStatus->position.y + 200.0f;
var3 = playerStatus->position.z + (rand3 * cos_rad(yaw));
var3 = var3 - (rand1 * cos_rad(yawPlus));
var4 = playerStatus->position.x - (rand3 * sin_rad(yaw));
var4 = var4 + (rand2 * sin_rad(yawMinus));
var5 = playerStatus->position.y;
var6 = playerStatus->position.z + (rand3 * cos_rad(yaw));
var6 = var6 - (rand2 * cos_rad(yawMinus));
playFX_0F(1, var1, var2, var3, var4, var5, var6, rand_int(10) + 10);
return ApiStatus_DONE2;
}
ApiStatus N(UnkEffect0FFunc4)(Evt* script, s32 isInitialCall) {
PlayerStatus* playerStatus = &gPlayerStatus;
f32 yaw = gCameras[0].currentYaw / 180.0f * PI;
f32 yawPlus = yaw + 1.570796;
f32 yawMinus = yaw - 1.570796;
f32 temp_f30;
f32 var1;
f32 var2;
f32 rand1 = rand_int(150);
f32 rand2 = rand_int(150);
f32 rand3 = rand_int(100) - 50;
f32 var3;
f32 var4;
f32 var5;
f32 var6;
if ((playerStatus->position.z < 200.0f)) {
return ApiStatus_DONE2;
}
temp_f30 = playerStatus->position.x - (rand3 * sin_rad(yaw));
var1 = temp_f30 + (rand1 * sin_rad(yawPlus));
var2 = playerStatus->position.y + 200.0f;
var3 = playerStatus->position.z + (rand3 * cos_rad(yaw));
var3 = var3 - (rand1 * cos_rad(yawPlus));
script->varTable[1] = var1;
script->varTable[2] = var2;
script->varTable[3] = var3;
var4 = playerStatus->position.x - (rand3 * sin_rad(yaw));
var4 = var4 + (rand2 * sin_rad(yawMinus));
var5 = playerStatus->position.y;
var6 = playerStatus->position.z + (rand3 * cos_rad(yaw));
var6 = var6 - (rand2 * cos_rad(yawMinus));
playFX_0F(2, var1, var2, var3, var4, var5, var6, rand_int(4) + 10);
return ApiStatus_DONE2;
}

View File

@ -93,12 +93,12 @@ void state_step_demo(void) {
gGameStatusPtr->demoState = 0;
gGameStatusPtr->peachFlags = 0;
func_80056204();
gGameStatusPtr->isBattle = 0;
gGameStatusPtr->isBattle = FALSE;
gGameStatusPtr->unk_76 = 0;
gGameStatusPtr->disableScripts = 0;
gGameStatusPtr->keepUsingPartnerOnMapChange = 0;
gOverrideFlags &= -9;
general_heap_create(&gOverrideFlags);
gOverrideFlags &= ~0x8;
general_heap_create();
clear_render_tasks();
clear_generic_entity_list();
clear_script_list();

View File

@ -167,7 +167,7 @@ EvtSource N(80240860) = {
EVT_IF_NE(EVT_VAR(2), EVT_ARRAY(3))
EVT_GOTO(2)
EVT_END_IF
EVT_CALL(N(func_802400A0_C4C430))
EVT_CALL(N(UnkDistFunc2))
EVT_IF_EQ(EVT_VAR(0), 1)
EVT_EXEC_WAIT(N(80240AF4))
EVT_END_IF
@ -313,22 +313,7 @@ ApiStatus N(func_80240000_C4C390)(Evt* script, s32 isInitialCall) {
return ApiStatus_DONE2;
}
ApiStatus N(func_802400A0_C4C430)(Evt* script, s32 isInitialCall) {
PlayerStatus* playerStatus = &gPlayerStatus;
f32 distance;
s32* array = script->array;
distance = dist2D(playerStatus->position.x, playerStatus->position.z, array[2], array[4]);
script->varTable[0] = 0;
if (distance < 112.5f) {
script->varTable[0] = 2;
}
if (distance < 37.5f) {
script->varTable[0] = 1;
}
return ApiStatus_DONE2;
}
#include "world/common/UnkDistFunc2.inc.c"
ApiStatus N(func_8024013C_C4C4CC)(Evt* script, s32 isInitialCall) {
PlayerStatus* playerStatus = &gPlayerStatus;

View File

@ -7,7 +7,7 @@
#define NAMESPACE dgb_10
ApiStatus N(func_80240000_C4C390)(Evt* script, s32 isInitialCall);
ApiStatus N(func_802400A0_C4C430)(Evt* script, s32 isInitialCall);
ApiStatus N(UnkDistFunc2)(Evt* script, s32 isInitialCall);
ApiStatus N(func_8024013C_C4C4CC)(Evt* script, s32 isInitialCall);
ApiStatus N(func_802401C0_C4C550)(Evt* script, s32 isInitialCall);

View File

@ -67,12 +67,9 @@ ApiStatus func_802427D8_DF91D8(Evt* script, s32 isInitialCall) {
}
ApiStatus N(SetNpcShadowScale)(Evt* script, s32 isInitialCall) {
s32 npcID;
f32 newShadowScale;
Bytecode* args = script->ptrReadPos;
npcID = evt_get_variable(script, *args++);
newShadowScale = evt_get_float_variable(script, *args++);
s32 npcID = evt_get_variable(script, *args++);
f32 newShadowScale = evt_get_float_variable(script, *args++);
resolve_npc(script, npcID)->shadowScale = newShadowScale;
return ApiStatus_DONE2;
@ -80,7 +77,7 @@ ApiStatus N(SetNpcShadowScale)(Evt* script, s32 isInitialCall) {
ApiStatus func_80242898_DF9298(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Npc** npc = &script->functionTemp[1];
Npc** npc = (Npc**)&script->functionTemp[1];
if (isInitialCall) {
*npc = get_npc_unsafe(evt_get_variable(script, *args++));

View File

@ -286,7 +286,7 @@ EvtSource N(npcAI_80244240) = {
EVT_CALL(SetSelfVar, 3, 18)
EVT_CALL(SetSelfVar, 5, 3)
EVT_CALL(SetSelfVar, 7, 4)
EVT_CALL(N(func_80242A6C_CC627C), EVT_PTR(N(npcAISettings_80244210)))
EVT_CALL(N(UnkNpcAIMainFunc6), EVT_PTR(N(npcAISettings_80244210)))
EVT_RETURN
EVT_END
};
@ -1594,361 +1594,9 @@ INCLUDE_ASM(ApiStatus, "world/area_flo/flo_13/CC3850", flo_13_func_80241DB8_CC55
#include "world/common/set_script_owner_npc_col_height.inc.c"
ApiStatus N(func_8024262C_CC5E3C)(Evt* script, s32 isInitialCall) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
Bytecode* args = script->ptrReadPos;
EnemyTerritoryThing territory;
EnemyTerritoryThing* territoryPtr = &territory;
NpcAISettings* aiSettings = (NpcAISettings*) evt_get_variable(script, *args);
s32 var;
#include "world/common/UnkNpcAIMainFunc5.inc.c"
territory.unk_00 = 0;
territory.shape = enemy->territory->wander.detectShape;
territory.pointX = enemy->territory->wander.detect.x;
territory.pointZ = enemy->territory->wander.detect.z;
territory.sizeX = enemy->territory->wander.detectSizeX;
territory.sizeZ = enemy->territory->wander.detectSizeZ;
territory.unk_18 = 100.0f;
territory.unk_1C = 0;
if (isInitialCall) {
enemy->varTable[6] = npc->collisionHeight;
enemy->varTable[8] = 0;
enemy->unk_B5 = 0;
enemy->unk_B0 |= 8;
}
if (isInitialCall || (enemy->unk_B0 & 4)) {
script->functionTemp[0] = 0;
npc->duration = 0;
enemy->unk_07 = 0;
npc->currentAnim.w = enemy->animList[0];
npc->flags &= ~0x800;
npc->collisionHeight = enemy->varTable[6];
enemy->varTable[9] = 0;
if (!enemy->territory->wander.isFlying) {
npc->flags = (npc->flags | 0x200) & ~8;
} else {
npc->flags = (npc->flags & ~0x200) | 8;
}
if (enemy->unk_B0 & 4) {
script->functionTemp[0] = 99;
script->functionTemp[1] = 0;
fx_emote(2, npc, 0.0f, npc->collisionHeight, 1.0f, 2.0f, -20.0f, 0x28, &var);
enemy->unk_B0 &= ~4;
} else if (enemy->flags & ENEMY_FLAGS_40000000) {
script->functionTemp[0] = 12;
enemy->flags &= ~ENEMY_FLAGS_40000000;
}
}
if (enemy->varTable[9] > 0) {
enemy->varTable[9]--;
if (enemy->varTable[9] == 0) {
if ((npc->currentAnim.w + 0xFFAAFFD2) < 2) {
npc->currentAnim.w = 0x55000C;
}
} else {
return ApiStatus_BLOCK;
}
}
switch (script->functionTemp[0]) {
case 0:
func_800495A0(script, aiSettings, territoryPtr);
npc->collisionHeight = enemy->varTable[6];
case 1:
func_800496B8(script, aiSettings, territoryPtr);
break;
case 2:
base_UnkNpcAIFunc1(script, aiSettings, territoryPtr);
if (enemy->varTable[7] == 6) {
if (rand_int(100) < 0x21) {
if (enemy->varTable[8] != 0) {
enemy->varTable[8] = 0;
enemy->unk_B5 = 0;
npc->currentAnim.w = 0x55002F;
} else {
enemy->varTable[8] = 1;
enemy->unk_B5 = 1;
npc->currentAnim.w = 0x55002E;
}
enemy->varTable[9] = 7;
return ApiStatus_BLOCK;
}
}
case 3:
func_80049C04(script, aiSettings, territoryPtr);
break;
case 12:
N(set_script_owner_npc_anim)(script, aiSettings, territoryPtr);
case 13:
N(UnkDistFunc)(script, aiSettings, territoryPtr);
break;
case 14:
N(UnkNpcAIFunc12)(script, aiSettings, territoryPtr);
break;
case 15:
N(set_script_owner_npc_col_height)(script, aiSettings, territoryPtr);
break;
case 99:
func_8004A73C(script);
break;
}
if (enemy->varTable[7] == 6) {
if (enemy->varTable[8] != 0) {
enemy->unk_B5 = 1;
} else {
enemy->unk_B5 = 0;
}
if (enemy->varTable[8] != 0) {
switch (npc->currentAnim.w + 0xFFAAFFFC) {
case 0:
case 8:
case 10:
case 12:
case 14:
case 18:
case 20:
npc->currentAnim.w++;
break;
}
}
}
return ApiStatus_BLOCK;
}
ApiStatus N(func_80242A6C_CC627C)(Evt* script, s32 isInitialCall) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
Bytecode* args = script->ptrReadPos;
EnemyTerritoryThing territory;
EnemyTerritoryThing* territoryPtr = &territory;
NpcAISettings* aiSettings = (NpcAISettings*) evt_get_variable(script, *args);
s32 var;
u32 x, y, z;
f32 x2, y2, z2, w2;
Npc* npc2;
territory.unk_00 = 0;
territory.shape = enemy->territory->wander.detectShape;
territory.pointX = enemy->territory->wander.detect.x;
territory.pointZ = enemy->territory->wander.detect.z;
territory.sizeX = enemy->territory->wander.detectSizeX;
territory.sizeZ = enemy->territory->wander.detectSizeZ;
territory.unk_18 = 65.0f;
territory.unk_1C = 0;
if (isInitialCall) {
enemy->varTable[6] = npc->collisionHeight;
enemy->unk_B0 |= 8;
}
if (isInitialCall || (enemy->varTable[10] == 100)) {
script->functionTemp[0] = 100;
npc->duration = 0;
npc->currentAnim.w = enemy->animList[0];
npc->flags &= ~0x800;
enemy->flags |= ENEMY_FLAGS_200000;
npc->flags = (npc->flags & ~0x200) | 8;
enemy->varTable[10] = 0;
enemy->varTable[11] = -1;
npc->pos.x = 0.0f;
npc->pos.y = -1000.0f;
npc->pos.z = 0.0f;
}
if (enemy->unk_B0 & 4) {
npc->duration = 0;
npc->collisionHeight = enemy->varTable[6];
enemy->unk_B0 &= ~4;
if (npc->flags & 0x800) {
npc->currentAnim.w = 0x4A0018;
npc->moveSpeed = 0.0f;
npc->jumpVelocity = 0.0f;
npc->jumpScale = 1.0f;
script->functionTemp[0] = 102;
} else {
fx_emote(2, npc, 0.0f, npc->collisionHeight, 1.0f, 2.0f, -20.0f, 0x28, &var);
npc->currentAnim.w = enemy->animList[0];
script->functionTemp[1] = 0;
script->functionTemp[0] = 200;
}
}
get_screen_coords(0, npc->pos.x, npc->pos.y, npc->pos.z, &x, &y, &z);
if ((script->functionTemp[0] < 100) && ((x + 50) >= 421)) {
script->functionTemp[0] = 110;
}
switch (script->functionTemp[0]) {
case 0:
func_800495A0(script, aiSettings, territoryPtr);
npc->collisionHeight = enemy->varTable[6];
if (enemy->varTable[13] != 0) {
if (npc->pos.y <= 0.0) {
npc->flags = (npc->flags & ~0x200) | 8;
} else {
npc->flags = (npc->flags | 0x200) & ~8;
}
}
func_800496B8(script, aiSettings, territoryPtr);
break;
case 1:
func_800496B8(script, aiSettings, territoryPtr);
break;
case 2:
base_UnkNpcAIFunc1(script, aiSettings, territoryPtr);
case 3:
func_80049C04(script, aiSettings, territoryPtr);
break;
case 12:
N(set_script_owner_npc_anim)(script, aiSettings, territoryPtr);
case 13:
N(UnkDistFunc)(script, aiSettings, territoryPtr);
npc->collisionHeight = enemy->varTable[6];
break;
case 14:
N(UnkNpcAIFunc12)(script, aiSettings, territoryPtr);
break;
case 15:
N(set_script_owner_npc_col_height)(script, aiSettings, territoryPtr);
break;
case 100:
if (enemy->varTable[10] != 2) {
break;
}
npc2 = get_npc_unsafe(get_enemy(enemy->varTable[11])->npcID);
if (npc2->yaw < 180.0) {
npc->pos.x = npc2->pos.x + 12.0;
} else {
npc->pos.x = npc2->pos.x - 12.0;
}
npc->pos.y = npc2->pos.y + 25.0;
npc->pos.z = npc2->pos.z + 1.0;
npc->rotation.y = 0.0f;
npc->flags |= 8;
npc->flags &= ~2;
npc->flags &= ~0x200;
npc->renderYaw = 0.0f;
npc->currentAnim.w = 0x4A0018;
script->functionTemp[0] = 101;
case 101:
if (enemy->varTable[10] != 3) {
break;
}
enemy->varTable[10] = 4;
npc->yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
npc->moveSpeed = 2.5f;
npc->jumpVelocity = 8.0f;
npc->jumpScale = 0.8f;
npc->flags |= 0x800;
script->functionTemp[0] = 102;
case 102:
if (npc->moveSpeed > 0.0) {
x2 = npc->pos.x;
y2 = npc->pos.y;
z2 = npc->pos.z;
if (npc_test_move_simple_with_slipping(npc->collisionChannel, &x2, &y2, &z2, npc->moveSpeed, npc->yaw, npc->collisionHeight,
npc->collisionRadius) == 0) {
npc_move_heading(npc, npc->moveSpeed, npc->yaw);
} else {
npc->moveSpeed = 0.0f;
}
}
if (npc->jumpVelocity < 0.0) {
x2 = npc->pos.x;
y2 = npc->pos.y + 13.0;
z2 = npc->pos.z;
w2 = fabsf(npc->jumpVelocity) + 16.0;
if ((npc_raycast_down_sides(npc->collisionChannel, &x2, &y2, &z2, &w2) != 0) && (w2 <= (fabsf(npc->jumpVelocity) + 13.0))) {
npc->pos.y = y2;
enemy->territory->wander.point.x = npc->pos.x;
enemy->territory->wander.point.y = npc->pos.y;
enemy->territory->wander.point.z = npc->pos.z;
enemy->territory->wander.detect.x = npc->pos.x;
enemy->territory->wander.detect.y = npc->pos.y;
enemy->territory->wander.detect.z = npc->pos.z;
enemy->varTable[10] = 5;
if (enemy->varTable[13] != 0) {
if (npc->pos.y <= 0.0) {
npc->flags = (npc->flags & ~0x200) | 8;
} else {
npc->flags = (npc->flags | 0x200) & ~8;
}
} else if (!enemy->territory->wander.isFlying) {
npc->flags = (npc->flags | 0x200) & ~8;
} else {
npc->flags = (npc->flags & ~0x200) | 8;
}
npc->flags = (npc->flags | 0x40000) & ~0x800;
npc->jumpVelocity = 0.0f;
npc->yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
npc->currentAnim.w = 0x4A001A;
npc->duration = 3;
script->functionTemp[0] = 103;
break;
}
}
npc->pos.y += npc->jumpVelocity;
npc->jumpVelocity -= npc->jumpScale;
break;
case 103:
npc->duration--;
if (npc->duration <= 0) {
npc->flags &= 0xFFFBFFFF;
npc->currentAnim.w = 0x4A0001;
script->functionTemp[0] = 0;
}
break;
case 110:
npc->duration = 30;
npc->pos.x = 0.0f;
npc->pos.z = 0.0f;
npc->pos.y = -1000.0f;
npc->flags = (npc->flags | 0xA) & ~0x200;
script->functionTemp[0] = 111;
case 111:
npc->duration--;
if (npc->duration <= 0) {
enemy->varTable[10] = 0;
script->functionTemp[0] = 100;
}
break;
case 200:
func_8004A73C(script);
break;
}
return ApiStatus_BLOCK;
}
#include "world/common/UnkNpcAIMainFunc6.inc.c"
#include "world/common/UnkFunc42.inc.c"

View File

@ -9,7 +9,7 @@
ApiStatus N(func_80240000_CC3810)(Evt* script, s32 isInitialCall);
ApiStatus N(UnkFunc41)(Evt* script, s32 isInitialCall);
ApiStatus N(func_80241DB8_CC55C8)(Evt* script, s32 isInitialCall);
ApiStatus N(func_80242A6C_CC627C)(Evt* script, s32 isInitialCall);
ApiStatus N(UnkNpcAIMainFunc6)(Evt* script, s32 isInitialCall);
ApiStatus N(UnkFunc42)(Evt* script, s32 isInitialCall);
ApiStatus N(func_802433C0_CC6BD0)(Evt* script, s32 isInitialCall);
ApiStatus N(func_802434D4_CC6CE4)(Evt* script, s32 isInitialCall);

View File

@ -366,7 +366,7 @@ EvtSource N(npcAI_80244520) = {
EVT_CALL(SetSelfVar, 3, 18)
EVT_CALL(SetSelfVar, 5, 3)
EVT_CALL(SetSelfVar, 7, 4)
EVT_CALL(N(func_80242918_CD9BF8), EVT_PTR(N(npcAISettings_802444F0)))
EVT_CALL(N(UnkNpcAIMainFunc6), EVT_PTR(N(npcAISettings_802444F0)))
EVT_RETURN
EVT_END
};
@ -998,358 +998,6 @@ INCLUDE_ASM(ApiStatus, "world/area_flo/flo_17/CD7350", flo_17_func_80241C64_CD8F
#include "world/common/set_script_owner_npc_col_height.inc.c"
ApiStatus N(func_802424D8_CD97B8)(Evt* script, s32 isInitialCall) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
Bytecode* args = script->ptrReadPos;
EnemyTerritoryThing territory;
EnemyTerritoryThing* territoryPtr = &territory;
NpcAISettings* aiSettings = (NpcAISettings*) evt_get_variable(script, *args);
s32 var;
#include "world/common/UnkNpcAIMainFunc5.inc.c"
territory.unk_00 = 0;
territory.shape = enemy->territory->wander.detectShape;
territory.pointX = enemy->territory->wander.detect.x;
territory.pointZ = enemy->territory->wander.detect.z;
territory.sizeX = enemy->territory->wander.detectSizeX;
territory.sizeZ = enemy->territory->wander.detectSizeZ;
territory.unk_18 = 100.0f;
territory.unk_1C = 0;
if (isInitialCall) {
enemy->varTable[6] = npc->collisionHeight;
enemy->varTable[8] = 0;
enemy->unk_B5 = 0;
enemy->unk_B0 |= 8;
}
if (isInitialCall || (enemy->unk_B0 & 4)) {
script->functionTemp[0] = 0;
npc->duration = 0;
enemy->unk_07 = 0;
npc->currentAnim.w = enemy->animList[0];
npc->flags &= ~0x800;
npc->collisionHeight = enemy->varTable[6];
enemy->varTable[9] = 0;
if (!enemy->territory->wander.isFlying) {
npc->flags = (npc->flags | 0x200) & ~8;
} else {
npc->flags = (npc->flags & ~0x200) | 8;
}
if (enemy->unk_B0 & 4) {
script->functionTemp[0] = 99;
script->functionTemp[1] = 0;
fx_emote(2, npc, 0.0f, npc->collisionHeight, 1.0f, 2.0f, -20.0f, 0x28, &var);
enemy->unk_B0 &= ~4;
} else if (enemy->flags & ENEMY_FLAGS_40000000) {
script->functionTemp[0] = 12;
enemy->flags &= ~ENEMY_FLAGS_40000000;
}
}
if (enemy->varTable[9] > 0) {
enemy->varTable[9]--;
if (enemy->varTable[9] == 0) {
if ((npc->currentAnim.w + 0xFFAAFFD2) < 2) {
npc->currentAnim.w = 0x55000C;
}
} else {
return ApiStatus_BLOCK;
}
}
switch (script->functionTemp[0]) {
case 0:
func_800495A0(script, aiSettings, territoryPtr);
npc->collisionHeight = enemy->varTable[6];
case 1:
func_800496B8(script, aiSettings, territoryPtr);
break;
case 2:
base_UnkNpcAIFunc1(script, aiSettings, territoryPtr);
if (enemy->varTable[7] == 6) {
if (rand_int(100) < 0x21) {
if (enemy->varTable[8] != 0) {
enemy->varTable[8] = 0;
enemy->unk_B5 = 0;
npc->currentAnim.w = 0x55002F;
} else {
enemy->varTable[8] = 1;
enemy->unk_B5 = 1;
npc->currentAnim.w = 0x55002E;
}
enemy->varTable[9] = 7;
return ApiStatus_BLOCK;
}
}
case 3:
func_80049C04(script, aiSettings, territoryPtr);
break;
case 12:
N(set_script_owner_npc_anim)(script, aiSettings, territoryPtr);
case 13:
N(UnkDistFunc)(script, aiSettings, territoryPtr);
break;
case 14:
N(UnkNpcAIFunc12)(script, aiSettings, territoryPtr);
break;
case 15:
N(set_script_owner_npc_col_height)(script, aiSettings, territoryPtr);
break;
case 99:
func_8004A73C(script);
break;
}
if (enemy->varTable[7] == 6) {
if (enemy->varTable[8] != 0) {
enemy->unk_B5 = 1;
} else {
enemy->unk_B5 = 0;
}
if (enemy->varTable[8] != 0) {
switch (npc->currentAnim.w + 0xFFAAFFFC) {
case 0:
case 8:
case 10:
case 12:
case 14:
case 18:
case 20:
npc->currentAnim.w++;
break;
}
}
}
return ApiStatus_BLOCK;
}
ApiStatus N(func_80242918_CD9BF8)(Evt* script, s32 isInitialCall) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
Bytecode* args = script->ptrReadPos;
EnemyTerritoryThing territory;
EnemyTerritoryThing* territoryPtr = &territory;
NpcAISettings* aiSettings = (NpcAISettings*) evt_get_variable(script, *args);
s32 var;
u32 x, y, z;
f32 x2, y2, z2, w2;
Npc* npc2;
territory.unk_00 = 0;
territory.shape = enemy->territory->wander.detectShape;
territory.pointX = enemy->territory->wander.detect.x;
territory.pointZ = enemy->territory->wander.detect.z;
territory.sizeX = enemy->territory->wander.detectSizeX;
territory.sizeZ = enemy->territory->wander.detectSizeZ;
territory.unk_18 = 65.0f;
territory.unk_1C = 0;
if (isInitialCall) {
enemy->varTable[6] = npc->collisionHeight;
enemy->unk_B0 |= 8;
}
if (isInitialCall || (enemy->varTable[10] == 100)) {
script->functionTemp[0] = 100;
npc->duration = 0;
npc->currentAnim.w = enemy->animList[0];
npc->flags &= ~0x800;
enemy->flags |= ENEMY_FLAGS_200000;
npc->flags = (npc->flags & ~0x200) | 8;
enemy->varTable[10] = 0;
enemy->varTable[11] = -1;
npc->pos.x = 0.0f;
npc->pos.y = -1000.0f;
npc->pos.z = 0.0f;
}
if (enemy->unk_B0 & 4) {
npc->duration = 0;
npc->collisionHeight = enemy->varTable[6];
enemy->unk_B0 &= ~4;
if (npc->flags & 0x800) {
npc->currentAnim.w = 0x4A0018;
npc->moveSpeed = 0.0f;
npc->jumpVelocity = 0.0f;
npc->jumpScale = 1.0f;
script->functionTemp[0] = 102;
} else {
fx_emote(2, npc, 0.0f, npc->collisionHeight, 1.0f, 2.0f, -20.0f, 0x28, &var);
npc->currentAnim.w = enemy->animList[0];
script->functionTemp[1] = 0;
script->functionTemp[0] = 200;
}
}
get_screen_coords(0, npc->pos.x, npc->pos.y, npc->pos.z, &x, &y, &z);
if ((script->functionTemp[0] < 100) && ((x + 50) >= 421)) {
script->functionTemp[0] = 110;
}
switch (script->functionTemp[0]) {
case 0:
func_800495A0(script, aiSettings, territoryPtr);
npc->collisionHeight = enemy->varTable[6];
if (enemy->varTable[13] != 0) {
if (npc->pos.y <= 0.0) {
npc->flags = (npc->flags & ~0x200) | 8;
} else {
npc->flags = (npc->flags | 0x200) & ~8;
}
}
func_800496B8(script, aiSettings, territoryPtr);
break;
case 1:
func_800496B8(script, aiSettings, territoryPtr);
break;
case 2:
base_UnkNpcAIFunc1(script, aiSettings, territoryPtr);
case 3:
func_80049C04(script, aiSettings, territoryPtr);
break;
case 12:
N(set_script_owner_npc_anim)(script, aiSettings, territoryPtr);
case 13:
N(UnkDistFunc)(script, aiSettings, territoryPtr);
npc->collisionHeight = enemy->varTable[6];
break;
case 14:
N(UnkNpcAIFunc12)(script, aiSettings, territoryPtr);
break;
case 15:
N(set_script_owner_npc_col_height)(script, aiSettings, territoryPtr);
break;
case 100:
if (enemy->varTable[10] != 2) {
break;
}
npc2 = get_npc_unsafe(get_enemy(enemy->varTable[11])->npcID);
if (npc2->yaw < 180.0) {
npc->pos.x = npc2->pos.x + 12.0;
} else {
npc->pos.x = npc2->pos.x - 12.0;
}
npc->pos.y = npc2->pos.y + 25.0;
npc->pos.z = npc2->pos.z + 1.0;
npc->rotation.y = 0.0f;
npc->flags |= 8;
npc->flags &= ~2;
npc->flags &= ~0x200;
npc->renderYaw = 0.0f;
npc->currentAnim.w = 0x4A0018;
script->functionTemp[0] = 101;
case 101:
if (enemy->varTable[10] != 3) {
break;
}
enemy->varTable[10] = 4;
npc->yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
npc->moveSpeed = 2.5f;
npc->jumpVelocity = 8.0f;
npc->jumpScale = 0.8f;
npc->flags |= 0x800;
script->functionTemp[0] = 102;
case 102:
if (npc->moveSpeed > 0.0) {
x2 = npc->pos.x;
y2 = npc->pos.y;
z2 = npc->pos.z;
if (npc_test_move_simple_with_slipping(npc->collisionChannel, &x2, &y2, &z2, npc->moveSpeed, npc->yaw, npc->collisionHeight,
npc->collisionRadius) == 0) {
npc_move_heading(npc, npc->moveSpeed, npc->yaw);
} else {
npc->moveSpeed = 0.0f;
}
}
if (npc->jumpVelocity < 0.0) {
x2 = npc->pos.x;
y2 = npc->pos.y + 13.0;
z2 = npc->pos.z;
w2 = fabsf(npc->jumpVelocity) + 16.0;
if ((npc_raycast_down_sides(npc->collisionChannel, &x2, &y2, &z2, &w2) != 0) && (w2 <= (fabsf(npc->jumpVelocity) + 13.0))) {
npc->pos.y = y2;
enemy->territory->wander.point.x = npc->pos.x;
enemy->territory->wander.point.y = npc->pos.y;
enemy->territory->wander.point.z = npc->pos.z;
enemy->territory->wander.detect.x = npc->pos.x;
enemy->territory->wander.detect.y = npc->pos.y;
enemy->territory->wander.detect.z = npc->pos.z;
enemy->varTable[10] = 5;
if (enemy->varTable[13] != 0) {
if (npc->pos.y <= 0.0) {
npc->flags = (npc->flags & ~0x200) | 8;
} else {
npc->flags = (npc->flags | 0x200) & ~8;
}
} else if (!enemy->territory->wander.isFlying) {
npc->flags = (npc->flags | 0x200) & ~8;
} else {
npc->flags = (npc->flags & ~0x200) | 8;
}
npc->flags = (npc->flags | 0x40000) & ~0x800;
npc->jumpVelocity = 0.0f;
npc->yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
npc->currentAnim.w = 0x4A001A;
npc->duration = 3;
script->functionTemp[0] = 103;
break;
}
}
npc->pos.y += npc->jumpVelocity;
npc->jumpVelocity -= npc->jumpScale;
break;
case 103:
npc->duration--;
if (npc->duration <= 0) {
npc->flags &= 0xFFFBFFFF;
npc->currentAnim.w = 0x4A0001;
script->functionTemp[0] = 0;
}
break;
case 110:
npc->duration = 30;
npc->pos.x = 0.0f;
npc->pos.z = 0.0f;
npc->pos.y = -1000.0f;
npc->flags = (npc->flags | 0xA) & ~0x200;
script->functionTemp[0] = 111;
case 111:
npc->duration--;
if (npc->duration <= 0) {
enemy->varTable[10] = 0;
script->functionTemp[0] = 100;
}
break;
case 200:
func_8004A73C(script);
break;
}
return ApiStatus_BLOCK;
}
#include "world/common/UnkNpcAIMainFunc6.inc.c"

View File

@ -8,7 +8,7 @@
ApiStatus N(func_80240000_CD72E0)(Evt* script, s32 isInitialCall);
ApiStatus N(func_80241C64_CD8F44)(Evt* script, s32 isInitialCall);
ApiStatus N(func_80242918_CD9BF8)(Evt* script, s32 isInitialCall);
ApiStatus N(UnkNpcAIMainFunc6)(Evt* script, s32 isInitialCall);
ApiStatus N(func_80240040_CD7320)(Evt *script, s32 isInitialCall);
extern NpcGroupList N(npcGroupList_80245228);

View File

@ -186,7 +186,7 @@ EvtSource N(npcAI_802414C8) = {
EVT_CALL(SetSelfVar, 3, 18)
EVT_CALL(SetSelfVar, 5, 3)
EVT_CALL(SetSelfVar, 7, 4)
EVT_CALL(N(func_80240728_CEE988), EVT_PTR(N(npcAISettings_80241498)))
EVT_CALL(N(UnkNpcAIMainFunc5), EVT_PTR(N(npcAISettings_80241498)))
EVT_RETURN
EVT_END
};
@ -520,141 +520,7 @@ ApiStatus N(func_802402F8_CEE558)(Evt* script, s32 isInitialCall) {
#include "world/common/set_script_owner_npc_col_height.inc.c"
ApiStatus N(func_80240728_CEE988)(Evt* script, s32 isInitialCall) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
Bytecode* args = script->ptrReadPos;
EnemyTerritoryThing territory;
EnemyTerritoryThing* territoryPtr = &territory;
NpcAISettings* aiSettings = (NpcAISettings*) evt_get_variable(script, *args);
s32 var;
territory.unk_00 = 0;
territory.shape = enemy->territory->wander.detectShape;
territory.pointX = enemy->territory->wander.detect.x;
territory.pointZ = enemy->territory->wander.detect.z;
territory.sizeX = enemy->territory->wander.detectSizeX;
territory.sizeZ = enemy->territory->wander.detectSizeZ;
territory.unk_18 = 100.0f;
territory.unk_1C = 0;
if (isInitialCall) {
enemy->varTable[6] = npc->collisionHeight;
enemy->varTable[8] = 0;
enemy->unk_B5 = 0;
enemy->unk_B0 |= 8;
}
if (isInitialCall || (enemy->unk_B0 & 4)) {
script->functionTemp[0] = 0;
npc->duration = 0;
enemy->unk_07 = 0;
npc->currentAnim.w = enemy->animList[0];
npc->flags &= ~0x800;
npc->collisionHeight = enemy->varTable[6];
enemy->varTable[9] = 0;
if (!enemy->territory->wander.isFlying) {
npc->flags = (npc->flags | 0x200) & ~8;
} else {
npc->flags = (npc->flags & ~0x200) | 8;
}
if (enemy->unk_B0 & 4) {
script->functionTemp[0] = 99;
script->functionTemp[1] = 0;
fx_emote(2, npc, 0.0f, npc->collisionHeight, 1.0f, 2.0f, -20.0f, 0x28, &var);
enemy->unk_B0 &= ~4;
} else if (enemy->flags & ENEMY_FLAGS_40000000) {
script->functionTemp[0] = 12;
enemy->flags &= ~ENEMY_FLAGS_40000000;
}
}
if (enemy->varTable[9] > 0) {
enemy->varTable[9]--;
if (enemy->varTable[9] == 0) {
if ((npc->currentAnim.w + 0xFFAAFFD2) < 2) {
npc->currentAnim.w = 0x55000C;
}
} else {
return ApiStatus_BLOCK;
}
}
switch (script->functionTemp[0]) {
case 0:
func_800495A0(script, aiSettings, territoryPtr);
npc->collisionHeight = enemy->varTable[6];
case 1:
func_800496B8(script, aiSettings, territoryPtr);
break;
case 2:
base_UnkNpcAIFunc1(script, aiSettings, territoryPtr);
if (enemy->varTable[7] == 6) {
if (rand_int(100) < 0x21) {
if (enemy->varTable[8] != 0) {
enemy->varTable[8] = 0;
enemy->unk_B5 = 0;
npc->currentAnim.w = 0x55002F;
} else {
enemy->varTable[8] = 1;
enemy->unk_B5 = 1;
npc->currentAnim.w = 0x55002E;
}
enemy->varTable[9] = 7;
return ApiStatus_BLOCK;
}
}
case 3:
func_80049C04(script, aiSettings, territoryPtr);
break;
case 12:
N(set_script_owner_npc_anim)(script, aiSettings, territoryPtr);
case 13:
N(UnkDistFunc)(script, aiSettings, territoryPtr);
break;
case 14:
N(UnkNpcAIFunc12)(script, aiSettings, territoryPtr);
break;
case 15:
N(set_script_owner_npc_col_height)(script, aiSettings, territoryPtr);
break;
case 99:
func_8004A73C(script);
break;
}
if (enemy->varTable[7] == 6) {
if (enemy->varTable[8] != 0) {
enemy->unk_B5 = 1;
} else {
enemy->unk_B5 = 0;
}
if (enemy->varTable[8] != 0) {
switch (npc->currentAnim.w + 0xFFAAFFFC) {
case 0:
case 8:
case 10:
case 12:
case 14:
case 18:
case 20:
npc->currentAnim.w++;
break;
}
}
}
return ApiStatus_BLOCK;
}
#include "world/common/UnkNpcAIMainFunc5.inc.c"
ApiStatus N(func_80240B68_CEEDC8)(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;

View File

@ -13,7 +13,7 @@ ApiStatus N(func_80240000_CEE260)(Evt* script, s32 isInitialCall);
ApiStatus N(func_8024026C_CEE4CC)(Evt* script, s32 isInitialCall);
ApiStatus N(func_802402C0_CEE520)(Evt* script, s32 isInitialCall);
ApiStatus N(func_802402F8_CEE558)(Evt* script, s32 isInitialCall);
ApiStatus N(func_80240728_CEE988)(Evt* script, s32 isInitialCall);
ApiStatus N(UnkNpcAIMainFunc5)(Evt* script, s32 isInitialCall);
ApiStatus N(func_80240B68_CEEDC8)(Evt* script, s32 isInitialCall);
ApiStatus N(func_80240C2C_CEEE8C)(Evt* script, s32 isInitialCall);
ApiStatus N(func_80240C9C_CEEEFC)(Evt* script, s32 isInitialCall);

View File

@ -1,4 +1,5 @@
#include "gv_01.h"
#include "sprite.h"
#include "world/common/SetPlayerStatusAnimFlags100000.inc.c"
@ -34,4 +35,39 @@ ApiStatus func_802405EC_E1EA4C(Evt* script, s32 isInitialCall) {
return script->functionTemp[0] == 255;
}
INCLUDE_ASM(s32, "world/area_gv/gv_01/E1E460", func_80240688_E1EAE8);
ApiStatus func_80240688_E1EAE8(Evt* script, s32 isInitialCall) {
gGameStatusPtr->isBattle = FALSE;
gGameStatusPtr->unk_76 = 0;
gGameStatusPtr->disableScripts = 0;
gGameStatusPtr->keepUsingPartnerOnMapChange = 0;
gOverrideFlags &= ~0x8;
general_heap_create();
clear_render_tasks();
clear_generic_entity_list();
clear_script_list();
create_cameras_a();
spr_init_sprites(0);
clear_entity_models();
clear_animator_list();
clear_model_data();
clear_sprite_shading_data();
reset_background_settings();
clear_hud_element_cache();
clear_trigger_data();
clear_printers();
clear_entity_data(0);
clear_screen_overlays();
clear_player_status();
clear_npcs();
clear_player_data();
reset_battle_status();
init_encounter_status();
clear_effect_data();
clear_item_entity_data();
clear_saved_variables();
initialize_collision();
intro_logos_set_fade_alpha(255);
intro_logos_set_fade_color(208);
set_game_mode(2);
return ApiStatus_FINISH;
}

View File

@ -1,3 +1,10 @@
#include "hos_00.h"
INCLUDE_ASM(s32, "world/area_hos/hos_00/A0BCF0", func_80240000_A0BCF0);
extern char D_800D9668[];
ApiStatus func_80240000_A0BCF0(Evt* script, s32 isInitialCall) {
if (gGameStatusPtr->entryID == 3) {
sprintf(&D_800D9668, "hos_bg\0\0\0\0\0\0\0\0\0");
}
return ApiStatus_BLOCK;
}

View File

@ -1,12 +1,7 @@
#include "hos_00.h"
#include "effects.h"
INCLUDE_ASM(s32, "world/area_hos/hos_00/A0BD40", func_80240050_A0BD40);
INCLUDE_ASM(s32, "world/area_hos/hos_00/A0BD40", func_80240170_A0BE60);
INCLUDE_ASM(s32, "world/area_hos/hos_00/A0BD40", func_8024036C_A0C05C);
INCLUDE_ASM(s32, "world/area_hos/hos_00/A0BD40", func_80240584_A0C274);
#include "common/UnkEffect0FFuncs.inc.c"
static char* N(exit_str_0) = "osr_00";
static char* N(exit_str_1) = "osr_01";

View File

@ -1,11 +1,9 @@
#include "hos_01.h"
INCLUDE_ASM(s32, "world/area_hos/hos_01/A10880", func_80240000_A10880);
INCLUDE_ASM(s32, "world/area_hos/hos_01/A10880", func_80240120_A109A0);
INCLUDE_ASM(s32, "world/area_hos/hos_01/A10880", func_8024031C_A10B9C);
INCLUDE_ASM(s32, "world/area_hos/hos_01/A10880", func_80240534_A10DB4);
#include "common/UnkEffect0FFuncs.inc.c"
#include "world/common/GetFloorCollider.inc.c"
static char* N(exit_str_0) = "kmr_24";
static char* N(exit_str_1) = "hos_00";
static char* N(exit_str_2) = "hos_02";

View File

@ -8,8 +8,10 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_04/97B670", func_802403D4_97BA04);
static char* N(exit_str_0) = "isk_04";
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/AwaitPlayerNearNpc.inc.c"
static const f32 padding = 0.0f;
static char* N(exit_str_0) = "isk_04";

View File

@ -19,15 +19,11 @@ static char* N(exit_str_1) = "";
#include "world/common/UnkNpcAIMainFunc2.inc.c"
static const f32 padding = 0.0f; // remove when all functions here are decompiled
#include "world/common/UnkNpcAIFunc40.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_05/97DAD0", func_80240E14_97E8E4);
#include "world/common/UnkNpcAIMainFunc3.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_05/97DAD0", func_80240EA8_97E978);
INCLUDE_ASM(s32, "world/area_isk/isk_05/97DAD0", func_80240F3C_97EA0C);
INCLUDE_ASM(s32, "world/area_isk/isk_05/97DAD0", func_80241108_97EBD8);
#include "world/common/UnkFunc53.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_05/97DAD0", func_802411F8_97ECC8);
@ -46,4 +42,3 @@ INCLUDE_ASM(s32, "world/area_isk/isk_05/97DAD0", func_80241D44_97F814);
INCLUDE_ASM(s32, "world/area_isk/isk_05/97DAD0", func_80241DF8_97F8C8);
INCLUDE_ASM(s32, "world/area_isk/isk_05/97DAD0", func_80241E24_97F8F4);

View File

@ -13,6 +13,6 @@ static char* N(exit_str_3) = "isk_11";
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_08/984E30", func_80240394_9851C4);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/AwaitPlayerNearNpc.inc.c"

View File

@ -19,15 +19,11 @@ static char* N(exit_str_1) = "";
#include "world/common/UnkNpcAIMainFunc2.inc.c"
static const f32 padding = 0.0f; // remove when all functions here are decompiled
#include "world/common/UnkNpcAIFunc40.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_13/98F7E0", func_80240E14_9905F4);
#include "world/common/UnkNpcAIMainFunc3.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_13/98F7E0", func_80240EA8_990688);
INCLUDE_ASM(s32, "world/area_isk/isk_13/98F7E0", func_80240F3C_99071C);
INCLUDE_ASM(s32, "world/area_isk/isk_13/98F7E0", func_80241108_9908E8);
#include "world/common/UnkFunc53.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_13/98F7E0", func_802411F8_9909D8);

View File

@ -19,15 +19,11 @@ static char* N(exit_str_1) = "";
#include "world/common/UnkNpcAIMainFunc2.inc.c"
static const f32 padding = 0.0f; // remove when all functions here are decompiled
#include "world/common/UnkNpcAIFunc40.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_14/992730", func_80240E14_993544);
#include "world/common/UnkNpcAIMainFunc3.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_14/992730", func_80240EA8_9935D8);
INCLUDE_ASM(s32, "world/area_isk/isk_14/992730", func_80240F3C_99366C);
INCLUDE_ASM(s32, "world/area_isk/isk_14/992730", func_80241108_993838);
#include "world/common/UnkFunc53.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_14/992730", func_802411F8_993928);

View File

@ -11,6 +11,6 @@ static char* N(exit_str_1) = "isk_12";
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_18/997F70", func_80240394_998304);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/AwaitPlayerNearNpc.inc.c"

View File

@ -65,9 +65,9 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_80241388_8B13F8);
INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_802413F4_8B1464);
INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_80241424_8B1494);
#include "world/common/UnkNpcAIFunc43.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_802414D8_8B1548);
#include "world/common/UnkNpcAIFunc44.inc.c"
#include "world/common/NpcJumpFunc3.inc.c"
@ -79,11 +79,11 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_802414D8_8B1548);
#include "world/common/UnkNpcAIFunc10.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_80241964_8B19D4);
#include "world/common/UnkNpcAIFunc42.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_80241A10_8B1A80);
#include "world/common/UnkNpcAIFunc45.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_80241C18_8B1C88);
#include "world/common/UnkNpcAIMainFunc4.inc.c"
static char* N(exit_str_4) = "nok_02";
static char* N(exit_str_5) = "kmr_03";

View File

@ -3,9 +3,9 @@
static char* N(exit_str_0) = "kmr_06";
static char* N(exit_str_1) = "kmr_12";
INCLUDE_ASM(s32, "world/area_kmr/kmr_07/8D3DC0", func_80240000_8D3DC0);
#include "world/common/UnkNpcAIFunc43.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_07/8D3DC0", func_802400B4_8D3E74);
#include "world/common/UnkNpcAIFunc44.inc.c"
#include "world/common/NpcJumpFunc3.inc.c"
@ -17,11 +17,11 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_07/8D3DC0", func_802400B4_8D3E74);
#include "world/common/UnkNpcAIFunc10.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_07/8D3DC0", func_80240540_8D4300);
#include "world/common/UnkNpcAIFunc42.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_07/8D3DC0", func_802405EC_8D43AC);
#include "world/common/UnkNpcAIFunc45.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_07/8D3DC0", func_802407F4_8D45B4);
#include "world/common/UnkNpcAIMainFunc4.inc.c"
// see func_802402BC_8D878C
#ifdef NON_MATCHING

View File

@ -4,9 +4,9 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_11/8DA3A0", func_802402A0_8DA3A0);
INCLUDE_ASM(s32, "world/area_kmr/kmr_11/8DA3A0", func_80240344_8DA444);
INCLUDE_ASM(s32, "world/area_kmr/kmr_11/8DA3A0", func_80240370_8DA470);
#include "world/common/UnkNpcAIFunc43.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_11/8DA3A0", func_80240424_8DA524);
#include "world/common/UnkNpcAIFunc44.inc.c"
#include "world/common/NpcJumpFunc3.inc.c"
@ -18,10 +18,10 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_11/8DA3A0", func_80240424_8DA524);
#include "world/common/UnkNpcAIFunc10.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_11/8DA3A0", func_802408B0_8DA9B0);
#include "world/common/UnkNpcAIFunc42.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_11/8DA3A0", func_8024095C_8DAA5C);
#include "world/common/UnkNpcAIFunc45.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_11/8DA3A0", func_80240B64_8DAC64);
#include "world/common/UnkNpcAIMainFunc4.inc.c"
INCLUDE_ASM(s32, "world/area_kmr/kmr_11/8DA3A0", func_80240DDC_8DAEDC);

View File

@ -8,6 +8,6 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_01/A470C0", func_802404F4_A47454);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/AwaitPlayerNearNpc.inc.c"

View File

@ -8,7 +8,7 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_03/A48720", func_802404F4_A48AB4);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/AwaitPlayerNearNpc.inc.c"

View File

@ -28,7 +28,7 @@ INCLUDE_ASM(s32, "world/area_kpa/kpa_102/A93A50", func_80241204_A94944);
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_102/A93A50", func_802418F0_A95030);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_102/A93A50", func_80241D30_A95470);

View File

@ -8,4 +8,4 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_11/A52BD0", func_802406A4_A52F64);
#include "world/common/UnkNpcAIMainFunc5.inc.c"

View File

@ -12,6 +12,6 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_113/A9CC70", func_80240544_A9D174);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/AwaitPlayerNearNpc.inc.c"

View File

@ -31,4 +31,4 @@ INCLUDE_ASM(s32, "world/area_kpa/kpa_50/A609D0", func_80240EF4_A618C4);
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_50/A609D0", func_802415E0_A61FB0);
#include "world/common/UnkNpcAIMainFunc5.inc.c"

View File

@ -44,4 +44,4 @@ INCLUDE_ASM(s32, "world/area_kpa/kpa_51/A640E0", func_80241404_A65494);
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_51/A640E0", func_802417E0_A65870);
#include "world/common/UnkNpcAIMainFunc5.inc.c"

View File

@ -8,7 +8,7 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_61/A6E6F0", func_802406A4_A6EA84);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_61/A6E6F0", func_80240AE4_A6EEC4);

View File

@ -8,4 +8,4 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kpa/kpa_70/A74B80", func_802406A4_A74F14);
#include "world/common/UnkNpcAIMainFunc5.inc.c"

View File

@ -8,7 +8,7 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kzn/kzn_03/C61020", func_802406A4_C613B4);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/AwaitPlayerNearNpc.inc.c"

View File

@ -38,7 +38,7 @@ INCLUDE_ASM(s32, "world/area_kzn/kzn_09/C77D00", func_80242774_C79454);
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kzn/kzn_09/C77D00", func_80242D58_C79A38);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/AwaitPlayerNearNpc.inc.c"

View File

@ -38,7 +38,7 @@ INCLUDE_ASM(s32, "world/area_kzn/kzn_17/C85DC0", func_80241A64_C87514);
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_kzn/kzn_17/C85DC0", func_80242048_C87AF8);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/AwaitPlayerNearNpc.inc.c"

View File

@ -5,9 +5,9 @@ static char* N(exit_str_1) = "nok_02";
#define UNK_ALPHA_FUNC_NPC 15
INCLUDE_ASM(s32, "world/area_nok/nok_01/9C53E0", func_80240000_9C53E0);
#include "world/common/UnkNpcAIFunc43.inc.c"
INCLUDE_ASM(s32, "world/area_nok/nok_01/9C53E0", func_802400B4_9C5494);
#include "world/common/UnkNpcAIFunc44.inc.c"
#include "world/common/NpcJumpFunc3.inc.c"
@ -19,11 +19,11 @@ INCLUDE_ASM(s32, "world/area_nok/nok_01/9C53E0", func_802400B4_9C5494);
#include "world/common/UnkNpcAIFunc10.inc.c"
INCLUDE_ASM(s32, "world/area_nok/nok_01/9C53E0", func_80240540_9C5920);
#include "world/common/UnkNpcAIFunc42.inc.c"
INCLUDE_ASM(s32, "world/area_nok/nok_01/9C53E0", func_802405EC_9C59CC);
#include "world/common/UnkNpcAIFunc45.inc.c"
INCLUDE_ASM(s32, "world/area_nok/nok_01/9C53E0", func_802407F4_9C5BD4);
#include "world/common/UnkNpcAIMainFunc4.inc.c"
#include "world/common/Call800E9894.inc.c"

View File

@ -11,7 +11,7 @@ static char* N(exit_str_1) = "nok_12";
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_nok/nok_11/9F4A40", func_80240394_9F4DD4);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/UnkNpcAIFunc23.inc.c"

View File

@ -8,7 +8,7 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_nok/nok_12/9FAD60", func_80240904_9FB0F4);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/UnkNpcAIFunc24.inc.c"

View File

@ -8,7 +8,7 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_nok/nok_14/A02A00", func_80240554_A02D94);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/UnkNpcAIFunc23.inc.c"

View File

@ -25,7 +25,7 @@ static char* N(exit_str_3) = "";
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_nok/nok_15/A06F00", func_80240674_A07574);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/UnkNpcAIFunc23.inc.c"

View File

@ -16,9 +16,9 @@ INCLUDE_ASM(s32, "world/area_omo/omo_02/D9D510", func_80240AB0_D9DF80);
INCLUDE_ASM(s32, "world/area_omo/omo_02/D9D510", func_80240BA8_D9E078);
INCLUDE_ASM(s32, "world/area_omo/omo_02/D9D510", func_80240EDC_D9E3AC);
#include "world/common/UnkNpcAIFunc43.inc.c"
INCLUDE_ASM(s32, "world/area_omo/omo_02/D9D510", func_80240F90_D9E460);
#include "world/common/UnkNpcAIFunc44.inc.c"
#include "world/common/NpcJumpFunc3.inc.c"
@ -30,11 +30,11 @@ INCLUDE_ASM(s32, "world/area_omo/omo_02/D9D510", func_80240F90_D9E460);
#include "world/common/UnkNpcAIFunc10.inc.c"
INCLUDE_ASM(s32, "world/area_omo/omo_02/D9D510", func_8024141C_D9E8EC);
#include "world/common/UnkNpcAIFunc42.inc.c"
INCLUDE_ASM(s32, "world/area_omo/omo_02/D9D510", func_802414C8_D9E998);
#include "world/common/UnkNpcAIFunc45.inc.c"
INCLUDE_ASM(s32, "world/area_omo/omo_02/D9D510", func_802416D0_D9EBA0);
#include "world/common/UnkNpcAIMainFunc4.inc.c"
INCLUDE_ASM(s32, "world/area_omo/omo_02/D9D510", func_80241948_D9EE18);

View File

@ -15,9 +15,9 @@ INCLUDE_ASM(s32, "world/area_sbk/sbk_30/93F5B0", func_80240000_93F5B0);
#include "world/common/SpawnSunEffect.inc.c"
INCLUDE_ASM(s32, "world/area_sbk/sbk_30/93F5B0", func_80240370_93F920);
#include "world/common/UnkNpcAIFunc43.inc.c"
INCLUDE_ASM(s32, "world/area_sbk/sbk_30/93F5B0", func_80240424_93F9D4);
#include "world/common/UnkNpcAIFunc44.inc.c"
#include "world/common/NpcJumpFunc3.inc.c"
@ -29,11 +29,11 @@ INCLUDE_ASM(s32, "world/area_sbk/sbk_30/93F5B0", func_80240424_93F9D4);
#include "world/common/UnkNpcAIFunc10.inc.c"
INCLUDE_ASM(s32, "world/area_sbk/sbk_30/93F5B0", func_802408B0_93FE60);
#include "world/common/UnkNpcAIFunc42.inc.c"
INCLUDE_ASM(s32, "world/area_sbk/sbk_30/93F5B0", func_8024095C_93FF0C);
#include "world/common/UnkNpcAIFunc45.inc.c"
INCLUDE_ASM(s32, "world/area_sbk/sbk_30/93F5B0", func_80240B64_940114);
#include "world/common/UnkNpcAIMainFunc4.inc.c"
INCLUDE_ASM(s32, "world/area_sbk/sbk_30/93F5B0", func_80240DDC_94038C);

View File

@ -8,6 +8,6 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_09/882BF0", func_80240DC4_882F84);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_09/882BF0", func_80241204_8833C4);

View File

@ -8,6 +8,6 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_12/88A530", func_80241CF4_88A8C4);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/AwaitPlayerNearNpc.inc.c"

View File

@ -8,4 +8,4 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_20/89ACB0", func_80240CF4_89B044);
#include "world/common/UnkNpcAIMainFunc5.inc.c"

View File

@ -8,4 +8,4 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_23/8A2D30", func_80240CF4_8A30C4);
#include "world/common/UnkNpcAIMainFunc5.inc.c"

View File

@ -10,4 +10,4 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_24/8A5DE0", func_80240A64_8A64E4);
#include "world/common/UnkNpcAIMainFunc5.inc.c"

View File

@ -8,11 +8,11 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_01/99CD80", func_80240784_99D114);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_01/99CD80", func_80240BC4_99D554);
#include "world/common/UnkNpcAIFunc43.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_01/99CD80", func_80240C78_99D608);
#include "world/common/UnkNpcAIFunc44.inc.c"
#include "world/common/NpcJumpFunc3.inc.c"
@ -24,10 +24,21 @@ INCLUDE_ASM(s32, "world/area_trd/trd_01/99CD80", func_80240C78_99D608);
#include "world/common/UnkNpcAIFunc10.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_01/99CD80", func_80241104_99DA94);
#include "world/common/UnkNpcAIFunc42.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_01/99CD80", func_802411B0_99DB40);
#include "world/common/UnkNpcAIFunc45.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_01/99CD80", func_802413B8_99DD48);
#include "world/common/UnkNpcAIMainFunc4.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_01/99CD80", func_80241630_99DFC0);
ApiStatus func_80241630_99DFC0(Evt* script, s32 isInitialCall) {
Enemy* owner1 = script->owner1.enemy;
Npc* npc = get_npc_safe(script->owner2.npcID);
owner1->territory->wander.point.x = npc->pos.x;
owner1->territory->wander.point.y = npc->pos.y;
owner1->territory->wander.point.z = npc->pos.z;
owner1->territory->wander.detect.x = npc->pos.x;
owner1->territory->wander.detect.y = npc->pos.y;
owner1->territory->wander.detect.z = npc->pos.z;
return ApiStatus_DONE2;
}

View File

@ -8,7 +8,7 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_02/9A10C0", func_80240474_9A1454);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/UnkNpcAIFunc24.inc.c"

View File

@ -8,4 +8,4 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_03/9A46F0", func_80240434_9A4A84);
#include "world/common/UnkNpcAIMainFunc5.inc.c"

View File

@ -8,7 +8,7 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_04/9A88A0", func_80240844_9A8C34);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/UnkNpcAIFunc24.inc.c"

View File

@ -8,7 +8,7 @@
#include "world/common/set_script_owner_npc_col_height.inc.c"
INCLUDE_ASM(s32, "world/area_trd/trd_07/9B6C90", func_802406A4_9B7024);
#include "world/common/UnkNpcAIMainFunc5.inc.c"
#include "world/common/UnkNpcAIFunc23.inc.c"

View File

@ -1,11 +1,12 @@
#include "tst_04.h"
#include "sprite.h"
#include "model.h"
static char* N(exit_str_0) = "tst_03";
static char* N(exit_str_1) = "";
void func_8024029C_B1B80C(void);
void func_80240360_B1B8D0(PlayerStatus* playerStatus);
void func_80240360_B1B8D0(void* data);
void func_80240574_B1BAE4(void);
// BSS
@ -34,36 +35,38 @@ ApiStatus func_80240000_B1B570(Evt* script, s32 isInitialCall) {
// float shenanigans
#ifdef NON_EQUIVALENT
ApiStatus func_802400FC_B1B66C(Evt* script, s32 isInitialCall) {
ApiStatus func_802400FC_B1B66C(Evt* script, s32 isInitialCall) {
Npc* npc = get_npc_safe(NPC_PARTNER);
f32 angle;
f32 dist;
f32 product1;
f32 product2;
f32 cos1;
f32 sin1;
f32 sin2;
f32 cos2;
f32 var1;
if (npc != NULL) {
f32 dist = dist2D(npc->pos.x, npc->pos.z, -250.0f, -100.0f);
f32 sinTemp;
f32 cosTemp;
f32 theta1;
f32 sin1;
f32 cos1;
f32 theta2;
f32 sin2;
f32 cos2;
theta1 = (evt_get_variable(script, EVT_VAR(0)) - 1) * TAU / 360.0f;
sinTemp = sin_rad(theta1);
cosTemp = cos_rad(theta1);
sin1 = -sinTemp * dist;
cos1 = cosTemp * dist;
theta2 = (evt_get_variable(script, EVT_VAR(0)) * TAU) / 360.0f;
sin2 = sin_rad(theta2);
cos2 = cos_rad(theta2);
npc->pos.x += (dist * cos2) - cos1;
npc->pos.z += (dist * -sin2) - sin1;
if (npc == NULL) {
return ApiStatus_DONE2;
}
dist = dist2D(npc->pos.x, npc->pos.z, -250.0f, -100.0f);
var1 = evt_get_variable(script, 0 - 30000000) - 1;
angle = var1 * TAU / 360.0f;
sin1 = sin_rad(angle);
cos1 = cos_rad(angle);
product1 = dist * cos1;
product2 = dist * -sin1;
var1 = evt_get_variable(script, EVT_VAR(0));
angle = (var1 * TAU) / 360.0f;
sin2 = sin_rad(angle);
cos2 = cos_rad(angle);
npc->pos.x += (dist * cos2) - product1;
npc->pos.z += (dist * -sin2) - product2;
return ApiStatus_DONE2;
}
#else
@ -99,7 +102,8 @@ void func_8024029C_B1B80C(void) {
}
}
void func_80240360_B1B8D0(PlayerStatus* playerStatus) {
void func_80240360_B1B8D0(void* data) {
PlayerStatus* playerStatus = data;
f32 yaw = -gCameras[gCurrentCamID].currentYaw;
Matrix4f main;
Matrix4f translation;
@ -154,11 +158,11 @@ void func_802405D4_B1BB44(void) {
Matrix4f m1;
Matrix4f m2;
Matrix4f m3;
Matrix4f m4;
Mtx m4;
guTranslateF(m1, -484.0f, 25.0f, -40.0f);
guMtxF2L(m1, m4);
render_animated_model(B_80240FD0_tst_04, m4);
guMtxF2L(m1, &m4);
render_animated_model(B_80240FD0_tst_04, &m4);
}
ApiStatus func_80240628_B1BB98(Evt* script, s32 isInitialCall) {

View File

@ -2,9 +2,9 @@
#include "sprite.h"
void func_8024003C_B1CA8C(void);
void func_80240100_B1CB50(PlayerStatus*);
void func_80240100_B1CB50(void*);
void func_802402F4_B1CD44(void);
void func_802403B8_B1CE08(RenderTask*);
void func_802403B8_B1CE08(void*);
void N(SetPartnerFlagsA0000)(void);
ApiStatus func_80240000_B1CA50(Evt* script, s32 isInitialCall) {
@ -36,7 +36,8 @@ void func_8024003C_B1CA8C(void) {
}
}
void func_80240100_B1CB50(PlayerStatus* playerStatus) {
void func_80240100_B1CB50(void* data) {
PlayerStatus* playerStatus = data;
f32 yaw = -gCameras[gCurrentCamID].currentYaw;
Matrix4f main;
Matrix4f translation;
@ -87,7 +88,43 @@ void func_802402F4_B1CD44(void) {
}
}
INCLUDE_ASM(void, "world/area_tst/tst_11/B1CA50", func_802403B8_B1CE08, RenderTask* arg0);
void func_802403B8_B1CE08(void* data) {
PlayerStatus* playerStatus = data;
f32 yaw = -gCameras[gCurrentCamID].currentYaw;
s32 trueAnimation;
Matrix4f sp20;
Matrix4f sp60;
Matrix4f spA0;
Matrix4f spE0;
guRotateF(spA0, yaw, 0.0f, -1.0f, 0.0f);
guRotateF(sp20, clamp_angle(playerStatus->unk_8C), 0.0f, 0.0f, 1.0f);
guMtxCatF(spA0, sp20, sp20);
guRotateF(spA0, yaw, 0.0f, 1.0f, 0.0f);
guMtxCatF(sp20, spA0, sp20);
guRotateF(spA0, playerStatus->spriteFacingAngle, 0.0f, 1.0f, 0.0f);
guMtxCatF(sp20, spA0, sp20);
guScaleF(spE0, SPRITE_PIXEL_SCALE, -SPRITE_PIXEL_SCALE, SPRITE_PIXEL_SCALE);
guMtxCatF(sp20, spE0, sp20);
guTranslateF(sp60, playerStatus->position.x, -playerStatus->position.y, playerStatus->position.z);
guMtxCatF(sp20, sp60, sp20);
spr_draw_player_sprite(1, 0, 0, 0, sp20);
guRotateF(spA0, yaw, 0.0f, -1.0f, 0.0f);
guRotateF(sp20, clamp_angle(playerStatus->unk_8C), 0.0f, 0.0f, 1.0f);
guMtxCatF(spA0, sp20, sp20);
guRotateF(spA0, yaw, 0.0f, 1.0f, 0.0f);
guMtxCatF(sp20, spA0, sp20);
guRotateF(spA0, playerStatus->spriteFacingAngle, 0.0f, 1.0f, 0.0f);
guMtxCatF(sp20, spA0, sp20);
guScaleF(spE0, SPRITE_PIXEL_SCALE, SPRITE_PIXEL_SCALE, SPRITE_PIXEL_SCALE);
guMtxCatF(sp20, spE0, sp20);
guTranslateF(sp60, playerStatus->position.x, playerStatus->position.y, 0.0f);
guMtxCatF(sp20, sp60, sp20);
trueAnimation = playerStatus->trueAnimation;
func_802DDFF8(trueAnimation, 7, 0xFF, 0xFF, 0xFF, 0x14, 0);
spr_draw_player_sprite(1, 0, 0, 0, sp20);
func_802DDFF8(trueAnimation, 0, 0, 0, 0, 0, 0);
}
ApiStatus func_802406D4_B1D124(Evt* script, s32 isInitialCall) {
Npc* npc;

View File

@ -1,21 +1,49 @@
#include "tst_13.h"
extern Gfx D_80242860_B1FFC0[];
extern s32 D_80242BF8_B20358;
ApiStatus func_80240000_B1D760(Evt* script, s32 isInitialCall) {
PlayerStatus* playerStatus = &gPlayerStatus;
s32* array = script->array;
f32 distance = dist2D(playerStatus->position.x, playerStatus->position.z, array[2], array[3]);
f32 dist = dist2D(playerStatus->position.x, playerStatus->position.z, script->array[2], script->array[3]);
script->varTable[0] = 1;
if ((playerStatus->actionState != 14) && (playerStatus->actionState != 16)) {
if (playerStatus->actionState != ACTION_STATE_GROUND_POUND && playerStatus->actionState != ACTION_STATE_ULTRA_POUND) {
script->varTable[0] = 0;
}
if (script->array[4] <= distance) {
if (script->array[4] <= dist) {
script->varTable[0] = 0;
}
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "world/area_tst/tst_13/B1D760", func_802400A0_B1D800);
#include "world/common/UnkDistFunc2.inc.c"
INCLUDE_ASM(s32, "world/area_tst/tst_13/B1D760", func_8024013C_B1D89C);
void func_8024013C_B1D89C(void) {
Matrix4f sp10;
Matrix4f sp50;
f32 x;
f32 y;
f32 z;
D_80242BF8_B20358 += 1;
guTranslateF(sp10, gPlayerStatus.position.x, 0.0f, gPlayerStatus.position.z);
x = (sin_rad(D_80242BF8_B20358 / 50.0f) * 0.5) + 0.5;
y = SQ(cos_rad(D_80242BF8_B20358 / 50.0f)) + 0.1;
z = (sin_rad(D_80242BF8_B20358 / 50.0f) * 0.5) + 0.5;
guScaleF(sp50, x, y, z);
guMtxCatF(sp50, sp10, sp10);
guMtxF2L(sp10, &gDisplayContext->matrixStack[gMatrixListPos]);
mdl_project_tex_coords(1, D_80242860_B1FFC0, &sp10, NULL);
gDPPipeSync(gMasterGfxPos++);
gDPSetCycleType(gMasterGfxPos++, G_CYC_1CYCLE);
gDPSetRenderMode(gMasterGfxPos++, G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2);
mdl_draw_hidden_panel_surface(&gMasterGfxPos, 1);
gSPMatrix(gMasterGfxPos++, &gDisplayContext->matrixStack[gMatrixListPos++], G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(gMasterGfxPos++, D_80242860_B1FFC0);
gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW);
}

View File

@ -1,7 +1,7 @@
#include "common.h"
#include "npc.h"
void N(NpcJumpFunc3)(Evt* script) {
void N(NpcJumpFunc3)(Evt* script, NpcAISettings* aiSettings, EnemyTerritoryThing* territory) {
Npc* npc = get_npc_unsafe(script->owner1.enemy->npcID);
npc->jumpVelocity = 10.0f;

View File

@ -0,0 +1,18 @@
#include "common.h"
ApiStatus N(UnkDistFunc2)(Evt* script, s32 isInitialCall) {
PlayerStatus* playerStatus = &gPlayerStatus;
f32 distance;
s32* array = script->array;
distance = dist2D(playerStatus->position.x, playerStatus->position.z, array[2], array[4]);
script->varTable[0] = 0;
if (distance < 112.5f) {
script->varTable[0] = 2;
}
if (distance < 37.5f) {
script->varTable[0] = 1;
}
return ApiStatus_DONE2;
}

View File

@ -1,7 +1,6 @@
#include "common.h"
#include "battle/battle.h"
ApiStatus N(UnkFunc52)(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Actor* actor;

View File

@ -0,0 +1,40 @@
#include "common.h"
#include "battle/battle.h"
typedef struct UnkNPC {
/* 0x00 */ Npc* unk_00;
/* 0x04 */ s32 unk_04;
/* 0x08 */ s32 unk_08;
/* 0x0C */ s32 unk_0C;
} UnkNPC; // size = 0x10;
ApiStatus N(UnkFunc53)(Evt* script, s32 isInitialCall) {
NpcBlueprint bp;
NpcBlueprint* bpPtr = &bp;
UnkNPC* unkIt;
Npc* npc;
Npc* newNpc;
s32 i;
npc = get_npc_safe(script->owner2.npcID);
npc->blurBuf = unkIt = heap_malloc(8 * sizeof(*unkIt));
bp.flags = 0x8000 | 0x100 | 0x40 | 0x8 | 0x2;
bp.initialAnim = 0x350002;
bp.onUpdate = NULL;
bp.onRender = NULL;
for (i = 0; i < 8; i++, unkIt++) {
unkIt->unk_00 = newNpc = get_npc_by_index(_create_npc_basic(bpPtr));
newNpc->pos.x = npc->pos.x;
newNpc->pos.y = npc->pos.y;
newNpc->pos.z = npc->pos.z;
newNpc->yaw = npc->yaw;
newNpc->unk_AB = 3;
disable_npc_shadow(newNpc);
unkIt->unk_04 = 0;
unkIt->unk_08 = 0;
unkIt->unk_0C = 0;
}
return ApiStatus_DONE2;
}

View File

@ -1,7 +1,7 @@
#include "common.h"
#include "npc.h"
void N(UnkNpcAIFunc10)(Evt* script) {
void N(UnkNpcAIFunc10)(Evt* script, NpcAISettings* aiSettings, EnemyTerritoryThing* territory) {
Npc* npc = get_npc_unsafe(script->owner1.enemy->npcID);
npc->duration--;

View File

@ -1,7 +1,7 @@
#include "common.h"
#include "npc.h"
void N(UnkNpcAIFunc13_2)(Evt* script, NpcAISettings* aiSettings, s32 arg2) {
void N(UnkNpcAIFunc13_2)(Evt* script, NpcAISettings* aiSettings, EnemyTerritoryThing* territory) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
f32 tempAngle;

View File

@ -12,8 +12,8 @@ void N(UnkNpcAIFunc39)(Evt* script, NpcAISettings* aiSettings, EnemyTerritoryThi
posX = npc->pos.x;
posY = npc->pos.y;
posZ = npc->pos.z;
if (npc_test_move_simple_with_slipping(npc->collisionChannel, &posX, &posY, &posZ, npc->moveSpeed, npc->yaw,
npc->collisionHeight, npc->collisionRadius))
if (npc_test_move_simple_with_slipping(npc->collisionChannel, &posX, &posY, &posZ, npc->moveSpeed, npc->yaw,
npc->collisionHeight, npc->collisionRadius))
{
npc->moveSpeed = 0.0f;
} else {

View File

@ -0,0 +1,18 @@
#include "common.h"
#include "npc.h"
void N(UnkNpcAIFunc40)(Evt* script, NpcAISettings* aiSettings, EnemyTerritoryThing* territory) {
Npc* npc = get_npc_unsafe(script->owner1.enemy->npcID);
func_800495A0(script, aiSettings, territory);
npc->jumpVelocity = rand_int(5) + 8.0;
npc->jumpScale = 1.5f;
}
void N(UnkNpcAIFunc41)(Evt* script, NpcAISettings* aiSettings, EnemyTerritoryThing* territory) {
Npc* npc = get_npc_unsafe(script->owner1.enemy->npcID);
func_80049F7C(script, aiSettings, territory);
npc->jumpVelocity = rand_int(5) + 5.0;
npc->jumpScale = 1.5f;
}

View File

@ -0,0 +1,16 @@
#include "common.h"
#include "npc.h"
void N(UnkNpcAIFunc42)(Evt* script, NpcAISettings* aiSettings, EnemyTerritoryThing* territory) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
npc->currentAnim.w = enemy->animList[1];
if (enemy->territory->wander.moveSpeedOverride < 0) {
npc->moveSpeed = aiSettings->alertRadius * 0.3;
} else {
npc->moveSpeed = enemy->territory->wander.moveSpeedOverride / 32767.0;
}
script->functionTemp[1] = 0;
script->functionTemp[0] = 16;
}

View File

@ -0,0 +1,20 @@
#include "common.h"
#include "npc.h"
void N(UnkNpcAIFunc43)(Evt* script, NpcAISettings* aiSettings, EnemyTerritoryThing* territory) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
npc->currentAnim.w = enemy->animList[0];
script->functionTemp[0] = 1;
if (enemy->flags & ENEMY_FLAGS_100000) {
npc->yaw = enemy->varTable[0];
}
if (enemy->territory->wander.moveSpeedOverride <= 0) {
npc->moveSpeed = aiSettings->alertRadius;
} else {
npc->moveSpeed = enemy->territory->wander.moveSpeedOverride / 32767.0;
}
}

View File

@ -0,0 +1,22 @@
#include "common.h"
#include "npc.h"
#include "effects.h"
void N(UnkNpcAIFunc44)(Evt* script, NpcAISettings* aiSettings, EnemyTerritoryThing* territory) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
if (aiSettings->waitTime >= 0 && (func_800490B4(territory, enemy, aiSettings->chaseSpeed, aiSettings->unk_1C.f, 0) != 0)) {
s32 emoteTemp;
fx_emote(0, npc, 0.0f, npc->collisionHeight, 1.0f, 2.0f, -20.0f, 0xF, &emoteTemp);
ai_enemy_play_sound(npc, 0x2F4, 0x200000);
npc->yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
if (!(enemy->npcSettings->unk_2A & 1)) {
script->functionTemp[0] = 12;
} else {
script->functionTemp[0] = 10;
}
}
}

View File

@ -0,0 +1,41 @@
#include "common.h"
#include "npc.h"
#include "effects.h"
void N(UnkNpcAIFunc45)(Evt* script, NpcAISettings* aiSettings, EnemyTerritoryThing* territory) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
if (aiSettings->waitTime >= 0) {
if (script->functionTemp[1] <= 0) {
script->functionTemp[1] = aiSettings->waitTime;
if (func_800490B4(territory, enemy, aiSettings->chaseSpeed, aiSettings->unk_1C.f, 0) != 0) {
s32 emoteTemp;
fx_emote(0, npc, 0.0f, (f32) npc->collisionHeight, 1.0f, 2.0f, -20.0f, 0xF, &emoteTemp);
ai_enemy_play_sound(npc, 0x2F4, 0x200000);
npc->yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
if (enemy->npcSettings->unk_2A & 1) {
script->functionTemp[0] = 10;
} else {
script->functionTemp[0] = 12;
}
return;
}
}
script->functionTemp[1]--;
}
if (dist2D(npc->pos.x, npc->pos.z, enemy->territory->wander.point.x, enemy->territory->wander.point.z) < npc->moveSpeed) {
npc->pos.x = enemy->territory->wander.point.x;
npc->pos.z = enemy->territory->wander.point.z;
npc->yaw = enemy->territory->wander.wanderSizeX;
script->functionTemp[0] = 0;
}
if (npc->turnAroundYawAdjustment == 0) {
npc->yaw = atan2(npc->pos.x, npc->pos.z, enemy->territory->wander.point.x, enemy->territory->wander.point.z);
npc_move_heading(npc, npc->moveSpeed, npc->yaw);
}
}

View File

@ -8,7 +8,7 @@ ApiStatus N(UnkNpcAIMainFunc2)(Evt* script, s32 isInitialCall) {
NpcAISettings* aiSettings = (NpcAISettings*)evt_get_variable(script, *args++);
EnemyTerritoryThing territory;
EnemyTerritoryThing* territoryPtr;
enemy->varTable[10] = evt_get_variable(script, *args++);
territory.unk_00 = 0;
territory.shape = enemy->territory->wander.detectShape;

View File

@ -0,0 +1,55 @@
#include "common.h"
#include "npc.h"
ApiStatus N(UnkNpcAIMainFunc3)(Evt* script, s32 isInitialCall) {
Enemy* enemy = script->owner1.enemy;
Bytecode* args = script->ptrReadPos;
Npc* npc = get_npc_unsafe(enemy->npcID);
EnemyTerritoryThing territory;
EnemyTerritoryThing* territoryPtr = &territory;
NpcAISettings* aiSettings = (NpcAISettings*)evt_get_variable(script, *args);
territory.unk_00 = 0;
territory.shape = enemy->territory->wander.detectShape;
territory.pointX = enemy->territory->wander.detect.x;
territory.pointZ = enemy->territory->wander.detect.z;
territory.sizeX = enemy->territory->wander.detectSizeX;
territory.sizeZ = enemy->territory->wander.detectSizeZ;
territory.unk_18 = 100.0f;
territory.unk_1C = 0;
if (isInitialCall) {
npc->duration = 0;
npc->flags &= ~NPC_FLAG_NO_Y_MOVEMENT;
npc->flags &= ~NPC_FLAG_GRAVITY;
npc->flags |= NPC_FLAG_ENABLE_HIT_SCRIPT;
script->functionTemp[1] = 0;
script->functionTemp[0] = 0;
if (enemy->flags & ENEMY_FLAGS_40000000) {
script->functionTemp[0] = 12;
enemy->flags &= ~ENEMY_FLAGS_40000000;
}
}
switch (script->functionTemp[0]) {
case 0:
N(UnkNpcAIFunc40)(script, aiSettings, territoryPtr);
case 1:
N(UnkNpcAIFunc37)(script, aiSettings, territoryPtr);
break;
case 2:
N(UnkNpcAIFunc1)(script, aiSettings, territoryPtr);
case 3:
N(UnkNpcAIFunc38)(script, aiSettings, territoryPtr);
break;
case 12:
N(UnkNpcAIFunc41)(script, aiSettings, territoryPtr);
case 13:
N(UnkNpcAIFunc39)(script, aiSettings, territoryPtr);
break;
case 14:
N(UnkDurationCheck)(script, aiSettings, territoryPtr);
break;
}
return 0;
}

View File

@ -0,0 +1,75 @@
#include "common.h"
#include "npc.h"
ApiStatus N(UnkNpcAIMainFunc4)(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
EnemyTerritoryThing territory;
EnemyTerritoryThing* territoryPtr = &territory;
NpcAISettings* aiSettings = (NpcAISettings*)evt_get_variable(script, *args++);
territory.unk_00 = 0;
territory.shape = enemy->territory->wander.detectShape;
territory.pointX = enemy->territory->wander.detect.x;
territory.pointZ = enemy->territory->wander.detect.z;
territory.sizeX = enemy->territory->wander.detectSizeX;
territory.sizeZ = enemy->territory->wander.detectSizeZ;
territory.unk_18 = 65.0f;
territory.unk_1C = 0;
if (isInitialCall || (enemy->unk_B0 & 4)) {
script->functionTemp[0] = 0;
npc->duration = 0;
enemy->varTable[0] = npc->yaw;
npc->currentAnim.w = enemy->animList[0];
npc->flags &= ~NPC_FLAG_NO_Y_MOVEMENT;
if (!(enemy->territory->wander.isFlying)) {
npc->flags |= NPC_FLAG_GRAVITY;
npc->flags &= ~NPC_FLAG_ENABLE_HIT_SCRIPT;
} else {
npc->flags &= ~NPC_FLAG_GRAVITY;
npc->flags |= NPC_FLAG_ENABLE_HIT_SCRIPT;
}
if (enemy->unk_B0 & 4) {
script->functionTemp[0] = 99;
script->functionTemp[1] = 15;
enemy->unk_B0 &= ~4;
} else if (enemy->flags & ENEMY_FLAGS_40000000) {
script->functionTemp[0] = 12;
enemy->flags &= ~ENEMY_FLAGS_40000000;
}
}
switch (script->functionTemp[0]) {
case 0:
N(UnkNpcAIFunc43)(script, aiSettings, territoryPtr);
case 1:
N(UnkNpcAIFunc44)(script, aiSettings, territoryPtr);
break;
case 10:
N(NpcJumpFunc3)(script, aiSettings, territoryPtr);
case 11:
N(NpcJumpFunc)(script, aiSettings, territoryPtr);
break;
case 12:
N(UnkNpcAIFunc13_2)(script, aiSettings, territoryPtr);
case 13:
N(UnkNpcAIFunc11)(script, aiSettings, territoryPtr);
break;
case 14:
N(UnkNpcAIFunc10)(script, aiSettings, territoryPtr);
break;
case 15:
N(UnkNpcAIFunc42)(script, aiSettings, territoryPtr);
case 16:
N(UnkNpcAIFunc45)(script, aiSettings, territoryPtr);
break;
case 99:
func_8004A73C(script);
break;
}
return ApiStatus_BLOCK;
}

View File

@ -0,0 +1,135 @@
#include "common.h"
#include "npc.h"
#include "effects.h"
ApiStatus N(UnkNpcAIMainFunc5)(Evt* script, s32 isInitialCall) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
Bytecode* args = script->ptrReadPos;
EnemyTerritoryThing territory;
EnemyTerritoryThing* territoryPtr = &territory;
NpcAISettings* aiSettings = (NpcAISettings*)evt_get_variable(script, *args++);
territory.unk_00 = 0;
territory.shape = enemy->territory->wander.detectShape;
territory.pointX = enemy->territory->wander.detect.x;
territory.pointZ = enemy->territory->wander.detect.z;
territory.sizeX = enemy->territory->wander.detectSizeX;
territory.sizeZ = enemy->territory->wander.detectSizeZ;
territory.unk_18 = 100.0f;
territory.unk_1C = 0;
if (isInitialCall) {
enemy->varTable[6] = npc->collisionHeight;
enemy->varTable[8] = 0;
enemy->unk_B5 = 0;
enemy->unk_B0 |= 8;
}
if (isInitialCall || (enemy->unk_B0 & 4)) {
script->functionTemp[0] = 0;
npc->duration = 0;
enemy->unk_07 = 0;
npc->currentAnim.w = enemy->animList[0];
npc->flags &= ~NPC_FLAG_NO_Y_MOVEMENT;
npc->collisionHeight = enemy->varTable[6];
enemy->varTable[9] = 0;
if (!enemy->territory->wander.isFlying) {
npc->flags |= NPC_FLAG_GRAVITY;
npc->flags &= ~NPC_FLAG_ENABLE_HIT_SCRIPT;
} else {
npc->flags &= ~NPC_FLAG_GRAVITY;
npc->flags |= NPC_FLAG_ENABLE_HIT_SCRIPT;
}
if (enemy->unk_B0 & 4) {
s32 emoteTemp;
script->functionTemp[0] = 99;
script->functionTemp[1] = 0;
fx_emote(2, npc, 0.0f, npc->collisionHeight, 1.0f, 2.0f, -20.0f, 0x28, &emoteTemp);
enemy->unk_B0 &= ~4;
} else if (enemy->flags & ENEMY_FLAGS_40000000) {
script->functionTemp[0] = 12;
enemy->flags &= ~ENEMY_FLAGS_40000000;
}
}
if (enemy->varTable[9] > 0) {
enemy->varTable[9]--;
if (enemy->varTable[9] == 0) {
if (npc->currentAnim.w == 0x55002E || npc->currentAnim.w == 0x55002F) {
npc->currentAnim.w = 0x55000C;
}
} else {
return ApiStatus_BLOCK;
}
}
switch (script->functionTemp[0]) {
case 0:
func_800495A0(script, aiSettings, territoryPtr);
npc->collisionHeight = enemy->varTable[6];
case 1:
func_800496B8(script, aiSettings, territoryPtr);
break;
case 2:
base_UnkNpcAIFunc1(script, aiSettings, territoryPtr);
if (enemy->varTable[7] == 6) {
if (rand_int(100) < 33) {
if (enemy->varTable[8] != 0) {
enemy->varTable[8] = 0;
enemy->unk_B5 = 0;
npc->currentAnim.w = 0x55002F;
} else {
enemy->varTable[8] = 1;
enemy->unk_B5 = 1;
npc->currentAnim.w = 0x55002E;
}
enemy->varTable[9] = 7;
return ApiStatus_BLOCK;
}
}
case 3:
func_80049C04(script, aiSettings, territoryPtr);
break;
case 12:
N(set_script_owner_npc_anim)(script, aiSettings, territoryPtr);
case 13:
N(UnkDistFunc)(script, aiSettings, territoryPtr);
break;
case 14:
N(UnkNpcAIFunc12)(script, aiSettings, territoryPtr);
break;
case 15:
N(set_script_owner_npc_col_height)(script, aiSettings, territoryPtr);
break;
case 99:
func_8004A73C(script);
break;
}
if (enemy->varTable[7] == 6) {
if (enemy->varTable[8] != 0) {
enemy->unk_B5 = 1;
} else {
enemy->unk_B5 = 0;
}
if (enemy->varTable[8] != 0) {
switch (npc->currentAnim.w - 0x550004) {
case 0:
case 8:
case 10:
case 12:
case 14:
case 18:
case 20:
npc->currentAnim.w++;
break;
}
}
}
return ApiStatus_BLOCK;
}

View File

@ -0,0 +1,216 @@
#include "common.h"
#include "npc.h"
#include "effects.h"
ApiStatus N(UnkNpcAIMainFunc6)(Evt* script, s32 isInitialCall) {
Enemy* enemy = script->owner1.enemy;
Npc* npc = get_npc_unsafe(enemy->npcID);
Bytecode* args = script->ptrReadPos;
EnemyTerritoryThing territory;
EnemyTerritoryThing* territoryPtr = &territory;
NpcAISettings* aiSettings = (NpcAISettings*)evt_get_variable(script, *args);
u32 x, y, z;
f32 x2, y2, z2, w2;
Npc* npc2;
territory.unk_00 = 0;
territory.shape = enemy->territory->wander.detectShape;
territory.pointX = enemy->territory->wander.detect.x;
territory.pointZ = enemy->territory->wander.detect.z;
territory.sizeX = enemy->territory->wander.detectSizeX;
territory.sizeZ = enemy->territory->wander.detectSizeZ;
territory.unk_18 = 65.0f;
territory.unk_1C = 0;
if (isInitialCall) {
enemy->varTable[6] = npc->collisionHeight;
enemy->unk_B0 |= 8;
}
if (isInitialCall || (enemy->varTable[10] == 100)) {
script->functionTemp[0] = 100;
npc->duration = 0;
npc->currentAnim.w = enemy->animList[0];
npc->flags &= ~NPC_FLAG_NO_Y_MOVEMENT;
enemy->flags |= ENEMY_FLAGS_200000;
npc->flags &= ~NPC_FLAG_GRAVITY;
npc->flags |= NPC_FLAG_ENABLE_HIT_SCRIPT;
enemy->varTable[10] = 0;
enemy->varTable[11] = -1;
npc->pos.x = 0.0f;
npc->pos.y = -1000.0f;
npc->pos.z = 0.0f;
}
if (enemy->unk_B0 & 4) {
npc->duration = 0;
npc->collisionHeight = enemy->varTable[6];
enemy->unk_B0 &= ~4;
if (npc->flags & NPC_FLAG_NO_Y_MOVEMENT) {
npc->currentAnim.w = 0x4A0018;
npc->moveSpeed = 0.0f;
npc->jumpVelocity = 0.0f;
npc->jumpScale = 1.0f;
script->functionTemp[0] = 102;
} else {
s32 emoteTemp;
fx_emote(2, npc, 0.0f, npc->collisionHeight, 1.0f, 2.0f, -20.0f, 0x28, &emoteTemp);
npc->currentAnim.w = enemy->animList[0];
script->functionTemp[1] = 0;
script->functionTemp[0] = 200;
}
}
get_screen_coords(0, npc->pos.x, npc->pos.y, npc->pos.z, &x, &y, &z);
if (script->functionTemp[0] < 100 && x + 50 >= 421) {
script->functionTemp[0] = 110;
}
switch (script->functionTemp[0]) {
case 0:
func_800495A0(script, aiSettings, territoryPtr);
npc->collisionHeight = enemy->varTable[6];
if (enemy->varTable[13] != 0) {
if (npc->pos.y <= 0.0) {
npc->flags &= ~NPC_FLAG_GRAVITY;
npc->flags |= NPC_FLAG_ENABLE_HIT_SCRIPT;
} else {
npc->flags |= NPC_FLAG_GRAVITY;
npc->flags &= ~NPC_FLAG_ENABLE_HIT_SCRIPT;
}
}
func_800496B8(script, aiSettings, territoryPtr);
break;
case 1:
func_800496B8(script, aiSettings, territoryPtr);
break;
case 2:
base_UnkNpcAIFunc1(script, aiSettings, territoryPtr);
case 3:
func_80049C04(script, aiSettings, territoryPtr);
break;
case 12:
N(set_script_owner_npc_anim)(script, aiSettings, territoryPtr);
case 13:
N(UnkDistFunc)(script, aiSettings, territoryPtr);
npc->collisionHeight = enemy->varTable[6];
break;
case 14:
N(UnkNpcAIFunc12)(script, aiSettings, territoryPtr);
break;
case 15:
N(set_script_owner_npc_col_height)(script, aiSettings, territoryPtr);
break;
case 100:
if (enemy->varTable[10] != 2) {
break;
}
npc2 = get_npc_unsafe(get_enemy(enemy->varTable[11])->npcID);
if (npc2->yaw < 180.0) {
npc->pos.x = npc2->pos.x + 12.0;
} else {
npc->pos.x = npc2->pos.x - 12.0;
}
npc->pos.y = npc2->pos.y + 25.0;
npc->pos.z = npc2->pos.z + 1.0;
npc->rotation.y = 0.0f;
npc->flags |= NPC_FLAG_ENABLE_HIT_SCRIPT;
npc->flags &= ~NPC_FLAG_2;
npc->flags &= ~NPC_FLAG_GRAVITY;
npc->renderYaw = 0.0f;
npc->currentAnim.w = 0x4A0018;
script->functionTemp[0] = 101;
case 101:
if (enemy->varTable[10] != 3) {
break;
}
enemy->varTable[10] = 4;
npc->yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
npc->moveSpeed = 2.5f;
npc->jumpVelocity = 8.0f;
npc->jumpScale = 0.8f;
npc->flags |= NPC_FLAG_NO_Y_MOVEMENT;
script->functionTemp[0] = 102;
case 102:
if (npc->moveSpeed > 0.0) {
x2 = npc->pos.x;
y2 = npc->pos.y;
z2 = npc->pos.z;
if (npc_test_move_simple_with_slipping(npc->collisionChannel, &x2, &y2, &z2, npc->moveSpeed, npc->yaw, npc->collisionHeight,
npc->collisionRadius) == 0) {
npc_move_heading(npc, npc->moveSpeed, npc->yaw);
} else {
npc->moveSpeed = 0.0f;
}
}
if (npc->jumpVelocity < 0.0) {
x2 = npc->pos.x;
y2 = npc->pos.y + 13.0;
z2 = npc->pos.z;
w2 = fabsf(npc->jumpVelocity) + 16.0;
if ((npc_raycast_down_sides(npc->collisionChannel, &x2, &y2, &z2, &w2) != 0) && (w2 <= (fabsf(npc->jumpVelocity) + 13.0))) {
npc->pos.y = y2;
enemy->territory->wander.point.x = npc->pos.x;
enemy->territory->wander.point.y = npc->pos.y;
enemy->territory->wander.point.z = npc->pos.z;
enemy->territory->wander.detect.x = npc->pos.x;
enemy->territory->wander.detect.y = npc->pos.y;
enemy->territory->wander.detect.z = npc->pos.z;
enemy->varTable[10] = 5;
if (enemy->varTable[13] != 0) {
if (npc->pos.y <= 0.0) {
npc->flags &= ~NPC_FLAG_GRAVITY;
npc->flags |= NPC_FLAG_ENABLE_HIT_SCRIPT;
} else {
npc->flags |= NPC_FLAG_GRAVITY;
npc->flags &= ~NPC_FLAG_ENABLE_HIT_SCRIPT;
}
} else if (!enemy->territory->wander.isFlying) {
npc->flags |= NPC_FLAG_GRAVITY;
npc->flags &= ~NPC_FLAG_ENABLE_HIT_SCRIPT;
} else {
npc->flags &= ~NPC_FLAG_GRAVITY;
npc->flags |= NPC_FLAG_ENABLE_HIT_SCRIPT;
}
npc->flags |= NPC_FLAG_40000;
npc->flags &= ~NPC_FLAG_NO_Y_MOVEMENT;
npc->jumpVelocity = 0.0f;
npc->yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
npc->currentAnim.w = 0x4A001A;
npc->duration = 3;
script->functionTemp[0] = 103;
break;
}
}
npc->pos.y += npc->jumpVelocity;
npc->jumpVelocity -= npc->jumpScale;
break;
case 103:
npc->duration--;
if (npc->duration <= 0) {
npc->flags &= ~NPC_FLAG_40000;
npc->currentAnim.w = 0x4A0001;
script->functionTemp[0] = 0;
}
break;
case 110:
npc->duration = 30;
npc->pos.x = 0.0f;
npc->pos.z = 0.0f;
npc->pos.y = -1000.0f;
npc->flags |= NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_2;
npc->flags &= ~NPC_FLAG_GRAVITY;
script->functionTemp[0] = 111;
case 111:
npc->duration--;
if (npc->duration <= 0) {
enemy->varTable[10] = 0;
script->functionTemp[0] = 100;
}
break;
case 200:
func_8004A73C(script);
break;
}
return ApiStatus_BLOCK;
}

View File

@ -1,6 +0,0 @@
.include "macro.inc"
.section .data
dlabel D_8024E8C0_E052C0
.word 0x80241C14, 0x80241C44, 0x80241C44, 0x80241C08, 0x80241C08, 0x80241C08, 0x80241C44, 0x80241C44, 0x80241C44, 0x80241C44, 0x80241C44, 0x80241C44, 0x80241C44, 0x80241C14, 0x80241C44, 0x80241C1C

View File

@ -21,7 +21,7 @@ dlabel D_802444F0_CDB7D0
.word 0x3FC00000, 0x0000001E, 0x00000032, 0x42700000, 0x41F00000, 0x00000003, 0x40C00000, 0x00000000, 0x00000000, 0x42C80000, 0x41F00000, 0x00000003
dlabel D_80244520_CDB800
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000012, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000004, 0x00000043, 0x00000002, func_80242918_CD9BF8, D_802444F0_CDB7D0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000012, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000004, 0x00000043, 0x00000002, flo_17_UnkNpcAIMainFunc6, D_802444F0_CDB7D0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80244590_CDB870
.word 0x00000043, 0x00000005, SetNpcRotation, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000002, GetBattleOutcome, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x0000000A, 0x00000064, 0x00000043, 0x00000001, DoNpcDefeat, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000002, func_80045900, 0x00000000, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000004, SetEnemyFlagBits, 0xFFFFFFFF, 0x00000010, 0x00000001, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000

View File

@ -21,7 +21,7 @@ dlabel D_80241498_CEF6F8
.word 0x3FC00000, 0x0000001E, 0x00000032, 0x42700000, 0x41F00000, 0x00000003, 0x40C00000, 0x00000000, 0x00000000, 0x42C80000, 0x41F00000, 0x00000003
dlabel D_802414C8_CEF728
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000012, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000004, 0x00000043, 0x00000002, func_80240728_CEE988, D_80241498_CEF6F8, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000012, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000004, 0x00000043, 0x00000002, flo_23_UnkNpcAIMainFunc5, D_80241498_CEF6F8, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80241538_CEF798
.word 0x00000000, 0x00150016, 0x00000000, 0x00000000, D_802414C8_CEF728, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00130000

View File

@ -15,7 +15,7 @@ dlabel D_8024101C_A0CD0C
.word 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000003, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000062, 0x00000000, 0x00000008, 0x00000012, 0x00000000, 0x00000044, 0x00000001, D_80240E04_A0CAF4, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000046, 0x00000000, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_802410B0_A0CDA0
.word 0x0000004D, 0x00000001, 0x0000000B, 0x00000024, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C81, 0xFFFFFFCE, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C88, 0x000003E8, 0x00000028, 0x00000002, 0xFE363C88, 0xFE363C81, 0x0000002A, 0x00000002, 0xFE363C88, 0x0000000A, 0x0000000C, 0x00000002, 0xFE363C88, 0x00000014, 0x00000024, 0x00000002, 0xFE363C88, 0x00000014, 0x00000013, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000043, 0x00000003, RandInt, 0x00000190, 0xFE363C8A, 0x00000024, 0x00000002, 0xFE363C8B, 0x000000C8, 0x00000043, 0x00000003, RandInt, 0x00000190, 0xFE363C8C, 0x00000028, 0x00000002, 0xFE363C8C, 0x000000C8, 0x00000027, 0x00000002, 0xFE363C81, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C82, 0xFE363C8B, 0x00000027, 0x00000002, 0xFE363C83, 0xFE363C8C, 0x00000024, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000043, 0x00000003, RandInt, 0x00000064, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C8A, 0x00000032, 0x00000028, 0x00000002, 0xFE363C84, 0xFE363C8A, 0x00000024, 0x00000002, 0xFE363C85, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0xFE363C83, 0x00000043, 0x00000003, RandInt, 0x00000004, 0xFE363C87, 0x00000027, 0x00000002, 0xFE363C87, 0x0000000A, 0x00000014, 0x00000001, 0xFE363C83, 0x00000018, 0x00000001, 0xFFFFFEDE, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000018, 0x00000001, 0x00000028, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x0000001B, 0x00000001, 0x00000028, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000023, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C8E, 0x00000002, 0x00000043, 0x00000006, PlaySoundAt, 0xB0000015, 0x00000000, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8D, 0xFE363C88, 0x0000000D, 0x00000002, 0xFE363C8D, 0x0000001E, 0x00000024, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000009, func_80240050_A0BD40, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0xFE363C87, 0x00000008, 0x00000001, 0xFE363C88, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000004D, 0x00000001, 0x0000000B, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000001, func_80240170_A0BE60, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000001, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000014, 0x00000043, 0x00000001, func_8024036C_A0C05C, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000001, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000002, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000014, 0x00000043, 0x00000001, func_80240584_A0C274, 0x00000043, 0x00000006, PlaySoundAt, 0xB0000015, 0x00000000, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000002, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x0000004D, 0x00000001, 0x0000000B, 0x00000024, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C81, 0xFFFFFFCE, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C88, 0x000003E8, 0x00000028, 0x00000002, 0xFE363C88, 0xFE363C81, 0x0000002A, 0x00000002, 0xFE363C88, 0x0000000A, 0x0000000C, 0x00000002, 0xFE363C88, 0x00000014, 0x00000024, 0x00000002, 0xFE363C88, 0x00000014, 0x00000013, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000043, 0x00000003, RandInt, 0x00000190, 0xFE363C8A, 0x00000024, 0x00000002, 0xFE363C8B, 0x000000C8, 0x00000043, 0x00000003, RandInt, 0x00000190, 0xFE363C8C, 0x00000028, 0x00000002, 0xFE363C8C, 0x000000C8, 0x00000027, 0x00000002, 0xFE363C81, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C82, 0xFE363C8B, 0x00000027, 0x00000002, 0xFE363C83, 0xFE363C8C, 0x00000024, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000043, 0x00000003, RandInt, 0x00000064, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C8A, 0x00000032, 0x00000028, 0x00000002, 0xFE363C84, 0xFE363C8A, 0x00000024, 0x00000002, 0xFE363C85, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0xFE363C83, 0x00000043, 0x00000003, RandInt, 0x00000004, 0xFE363C87, 0x00000027, 0x00000002, 0xFE363C87, 0x0000000A, 0x00000014, 0x00000001, 0xFE363C83, 0x00000018, 0x00000001, 0xFFFFFEDE, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000018, 0x00000001, 0x00000028, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x0000001B, 0x00000001, 0x00000028, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000023, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C8E, 0x00000002, 0x00000043, 0x00000006, PlaySoundAt, 0xB0000015, 0x00000000, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8D, 0xFE363C88, 0x0000000D, 0x00000002, 0xFE363C8D, 0x0000001E, 0x00000024, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000009, hos_00_UnkEffect0FFunc2, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0xFE363C87, 0x00000008, 0x00000001, 0xFE363C88, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000004D, 0x00000001, 0x0000000B, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000001, hos_00_UnkEffect0FFunc, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000001, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000014, 0x00000043, 0x00000001, hos_00_UnkEffect0FFunc3, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000001, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000002, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000014, 0x00000043, 0x00000001, hos_00_UnkEffect0FFunc4, 0x00000043, 0x00000006, PlaySoundAt, 0xB0000015, 0x00000000, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000002, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80241554_A0D244
.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000000, 0x00000044, 0x00000001, ExitWalk, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000021, 0x00000002, 0xFFFFFF81, 0x0000005F, 0x00000043, 0x00000003, GotoMap, 0x80244B60, 0x00000001, 0x0000001C, 0x00000000, 0x00000043, 0x00000003, GotoMap, 0x80244B58, 0x00000001, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000

View File

@ -3,10 +3,10 @@
.section .data
dlabel D_80240EE0_A11760
.word 0x0000004D, 0x00000001, 0x0000000B, 0x00000024, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C81, 0xFFFFFFCE, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C88, 0x000003E8, 0x00000028, 0x00000002, 0xFE363C88, 0xFE363C81, 0x0000002A, 0x00000002, 0xFE363C88, 0x0000000A, 0x0000000C, 0x00000002, 0xFE363C88, 0x00000014, 0x00000024, 0x00000002, 0xFE363C88, 0x00000014, 0x00000013, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000043, 0x00000003, RandInt, 0x00000190, 0xFE363C8A, 0x00000024, 0x00000002, 0xFE363C8B, 0x000000C8, 0x00000043, 0x00000003, RandInt, 0x00000190, 0xFE363C8C, 0x00000028, 0x00000002, 0xFE363C8C, 0x000000C8, 0x00000027, 0x00000002, 0xFE363C81, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C82, 0xFE363C8B, 0x00000027, 0x00000002, 0xFE363C83, 0xFE363C8C, 0x00000024, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000043, 0x00000003, RandInt, 0x00000064, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C8A, 0x00000032, 0x00000028, 0x00000002, 0xFE363C84, 0xFE363C8A, 0x00000024, 0x00000002, 0xFE363C85, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0xFE363C83, 0x00000043, 0x00000003, RandInt, 0x00000004, 0xFE363C87, 0x00000027, 0x00000002, 0xFE363C87, 0x0000000A, 0x00000014, 0x00000001, 0xFE363C83, 0x00000018, 0x00000001, 0xFFFFFEDE, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000018, 0x00000001, 0x00000028, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x0000001B, 0x00000001, 0x00000028, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000023, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C8E, 0x00000002, 0x00000043, 0x00000006, PlaySoundAt, 0xB0000015, 0x00000000, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8D, 0xFE363C88, 0x0000000D, 0x00000002, 0xFE363C8D, 0x0000001E, 0x00000024, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000009, func_80240000_A10880, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0xFE363C87, 0x00000008, 0x00000001, 0xFE363C88, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x0000004D, 0x00000001, 0x0000000B, 0x00000024, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C81, 0xFFFFFFCE, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C88, 0x000003E8, 0x00000028, 0x00000002, 0xFE363C88, 0xFE363C81, 0x0000002A, 0x00000002, 0xFE363C88, 0x0000000A, 0x0000000C, 0x00000002, 0xFE363C88, 0x00000014, 0x00000024, 0x00000002, 0xFE363C88, 0x00000014, 0x00000013, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000043, 0x00000003, RandInt, 0x00000190, 0xFE363C8A, 0x00000024, 0x00000002, 0xFE363C8B, 0x000000C8, 0x00000043, 0x00000003, RandInt, 0x00000190, 0xFE363C8C, 0x00000028, 0x00000002, 0xFE363C8C, 0x000000C8, 0x00000027, 0x00000002, 0xFE363C81, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C82, 0xFE363C8B, 0x00000027, 0x00000002, 0xFE363C83, 0xFE363C8C, 0x00000024, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000043, 0x00000003, RandInt, 0x00000064, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C8A, 0x00000032, 0x00000028, 0x00000002, 0xFE363C84, 0xFE363C8A, 0x00000024, 0x00000002, 0xFE363C85, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0xFE363C83, 0x00000043, 0x00000003, RandInt, 0x00000004, 0xFE363C87, 0x00000027, 0x00000002, 0xFE363C87, 0x0000000A, 0x00000014, 0x00000001, 0xFE363C83, 0x00000018, 0x00000001, 0xFFFFFEDE, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000018, 0x00000001, 0x00000028, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x0000001B, 0x00000001, 0x00000028, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000023, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C8E, 0x00000002, 0x00000043, 0x00000006, PlaySoundAt, 0xB0000015, 0x00000000, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8D, 0xFE363C88, 0x0000000D, 0x00000002, 0xFE363C8D, 0x0000001E, 0x00000024, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000009, hos_01_UnkEffect0FFunc2, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0xFE363C87, 0x00000008, 0x00000001, 0xFE363C88, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_8024121C_A11A9C
.word 0x0000004D, 0x00000001, 0x0000000B, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000001, func_80240120_A109A0, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000001, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000014, 0x00000043, 0x00000001, func_8024031C_A10B9C, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000001, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000002, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000014, 0x00000043, 0x00000001, func_80240534_A10DB4, 0x00000043, 0x00000006, PlaySoundAt, 0xB0000015, 0x00000000, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000002, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x0000004D, 0x00000001, 0x0000000B, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000001, hos_01_UnkEffect0FFunc, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000001, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000014, 0x00000043, 0x00000001, hos_01_UnkEffect0FFunc3, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000001, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000003, 0x00000001, 0x00000002, 0x00000043, 0x00000003, RandInt, 0x00000032, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000014, 0x00000043, 0x00000001, hos_01_UnkEffect0FFunc4, 0x00000043, 0x00000006, PlaySoundAt, 0xB0000015, 0x00000000, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0xFE363C80, 0x00000004, 0x00000001, 0x00000002, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80241384_A11C04
.word 0x00000043, 0x00000003, FadeOutMusic, 0x00000000, 0x000005DC, 0x00000043, 0x00000004, GotoMapSpecial, 0x80245988, 0x00000000, 0x0000000B, 0x00000008, 0x00000001, 0x00000064

View File

@ -6,22 +6,22 @@ dlabel D_80241530_97CB60
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40900000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80241560_97CB90
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_802403D4_97BA04, D_80241530_97CB60, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, isk_04_UnkNpcAIMainFunc5, D_80241530_97CB60, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_802415D0_97CC00
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40E00000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80241600_97CC30
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, func_802403D4_97BA04, D_802415D0_97CC00, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, isk_04_UnkNpcAIMainFunc5, D_802415D0_97CC00, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80241670_97CCA0
.word 0x3F800000, 0x00000014, 0x00000005, 0x42F00000, 0x00000000, 0x00000003, 0x40C00000, 0x00000000, 0x00000000, 0x43160000, 0x00000000, 0x00000001
dlabel D_802416A0_97CCD0
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, func_802403D4_97BA04, D_80241670_97CCA0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, isk_04_UnkNpcAIMainFunc5, D_80241670_97CCA0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80241710_97CD40
.word 0x00000043, 0x00000001, isk_04_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, isk_04_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, isk_04_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_802403D4_97BA04, D_80241530_97CB60, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000001, isk_04_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, isk_04_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, isk_04_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, isk_04_UnkNpcAIMainFunc5, D_80241530_97CB60, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80241804_97CE34
.word 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80241560_97CB90, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80241710_97CD40, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80241600_97CC30, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00110000, 0x00000000, 0x00180018, 0x00000000, 0x00000000, D_802416A0_97CCD0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -3,13 +3,13 @@
.section .data
dlabel D_80242380_97FE50
.word 0x00000043, 0x00000001, func_80241108_97EBD8, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000001, isk_05_UnkFunc53, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_8024239C_97FE6C
.word 0x40000000, 0x0000001E, 0x0000001E, 0x42C80000, 0x00000000, 0x0000000A, 0x40A9999A, 0x00000046, 0x0000000A, 0x43FA0000, 0x00000000, 0x00000001
dlabel D_802423CC_97FE9C
.word 0x00000058, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_802411F8_97ECC8, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000043, 0x00000003, GetSelfVar, 0x00000000, 0xFE363C80, 0x00000043, 0x00000002, func_80240F3C_97EA0C, D_8024239C_97FE6C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000058, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_802411F8_97ECC8, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000043, 0x00000003, GetSelfVar, 0x00000000, 0xFE363C80, 0x00000043, 0x00000002, isk_05_UnkNpcAIMainFunc3, D_8024239C_97FE6C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_8024243C_97FF0C
.word 0x00000043, 0x00000002, SetBattleMusic, 0x00000003, 0x00000043, 0x00000002, GetOwnerEncounterTrigger, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000002, 0x0000001D, 0x00000001, 0x00000004, 0x0000001D, 0x00000001, 0x00000006, 0x00000043, 0x00000003, GetSelfAnimationFromTable, 0x00000007, 0xFE363C80, 0x00000046, 0x00000001, 0x800936DC, 0x00000016, 0x00000001, 0x00000003, 0x00000056, 0x00000000, 0x00000043, 0x00000002, func_800458CC, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000005, 0x00000001, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C8A, 0x00000028, 0x00000043, 0x00000005, SetNpcRotation, 0xFFFFFFFF, 0x00000000, 0xFE363C8A, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000

View File

@ -6,22 +6,22 @@ dlabel D_80240CD0_985B00
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40900000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80240D00_985B30
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_80240394_9851C4, D_80240CD0_985B00, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, isk_08_UnkNpcAIMainFunc5, D_80240CD0_985B00, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240D70_985BA0
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40E00000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80240DA0_985BD0
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, func_80240394_9851C4, D_80240D70_985BA0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, isk_08_UnkNpcAIMainFunc5, D_80240D70_985BA0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240E10_985C40
.word 0x3F800000, 0x00000014, 0x00000005, 0x42F00000, 0x00000000, 0x00000003, 0x40C00000, 0x00000000, 0x00000000, 0x43160000, 0x00000000, 0x00000001
dlabel D_80240E40_985C70
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, func_80240394_9851C4, D_80240E10_985C40, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, isk_08_UnkNpcAIMainFunc5, D_80240E10_985C40, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240EB0_985CE0
.word 0x00000043, 0x00000001, isk_08_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, isk_08_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, isk_08_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_80240394_9851C4, D_80240CD0_985B00, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000001, isk_08_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, isk_08_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, isk_08_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, isk_08_UnkNpcAIMainFunc5, D_80240CD0_985B00, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240FA4_985DD4
.word 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80240D00_985B30, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80240EB0_985CE0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80240DA0_985BD0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00110000, 0x00000000, 0x00180018, 0x00000000, 0x00000000, D_80240E40_985C70, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -6,13 +6,13 @@ dlabel D_802422B0_991A90
.word 0x00000024, 0x00000002, 0xF8405F02, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000015, 0x000001CC, 0xFFFFFDC8, 0xFFFFFEAA, 0x00000000, 0xF8405EF1, 0x0000000A, 0x00000002, 0xF8405F02, 0x00000000, 0x00000043, 0x00000007, MakeEntity, 0x802EA1C0, 0x00000238, 0xFFFFFD76, 0xFFFFFED2, 0x00000019, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_802422B0_991A90, 0x00000013, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0xFFFFFE3B, 0xFFFFFEDD, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0xFFFFFDB9, 0xFFFFFEDD, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x000001E9, 0xFFFFFE3B, 0xFFFFFF7D, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x000001E9, 0xFFFFFDB9, 0xFFFFFF7D, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80242460_991C40
.word 0x00000043, 0x00000001, func_80241108_9908E8, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000001, isk_13_UnkFunc53, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_8024247C_991C5C
.word 0x40000000, 0x0000001E, 0x0000001E, 0x42C80000, 0x00000000, 0x0000000A, 0x40A9999A, 0x00000046, 0x0000000A, 0x43FA0000, 0x00000000, 0x00000001
dlabel D_802424AC_991C8C
.word 0x00000058, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_802411F8_9909D8, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000043, 0x00000003, GetSelfVar, 0x00000000, 0xFE363C80, 0x00000043, 0x00000002, func_80240F3C_99071C, D_8024247C_991C5C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000058, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_802411F8_9909D8, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000043, 0x00000003, GetSelfVar, 0x00000000, 0xFE363C80, 0x00000043, 0x00000002, isk_13_UnkNpcAIMainFunc3, D_8024247C_991C5C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_8024251C_991CFC
.word 0x00000043, 0x00000002, SetBattleMusic, 0x00000003, 0x00000043, 0x00000002, GetOwnerEncounterTrigger, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000002, 0x0000001D, 0x00000001, 0x00000004, 0x0000001D, 0x00000001, 0x00000006, 0x00000043, 0x00000003, GetSelfAnimationFromTable, 0x00000007, 0xFE363C80, 0x00000046, 0x00000001, 0x800936DC, 0x00000016, 0x00000001, 0x00000003, 0x00000056, 0x00000000, 0x00000043, 0x00000002, func_800458CC, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000005, 0x00000001, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C8A, 0x00000028, 0x00000043, 0x00000005, SetNpcRotation, 0xFFFFFFFF, 0x00000000, 0xFE363C8A, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000

View File

@ -3,13 +3,13 @@
.section .data
dlabel D_80242130_994860
.word 0x00000043, 0x00000001, func_80241108_993838, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000001, isk_14_UnkFunc53, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_8024214C_99487C
.word 0x40000000, 0x0000001E, 0x0000001E, 0x42C80000, 0x00000000, 0x0000000A, 0x40A9999A, 0x00000046, 0x0000000A, 0x43FA0000, 0x00000000, 0x00000001
dlabel D_8024217C_9948AC
.word 0x00000058, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_802411F8_993928, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000043, 0x00000003, GetSelfVar, 0x00000000, 0xFE363C80, 0x00000043, 0x00000002, func_80240F3C_99366C, D_8024214C_99487C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000058, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_802411F8_993928, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000043, 0x00000003, GetSelfVar, 0x00000000, 0xFE363C80, 0x00000043, 0x00000002, isk_14_UnkNpcAIMainFunc3, D_8024214C_99487C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_802421EC_99491C
.word 0x00000043, 0x00000002, SetBattleMusic, 0x00000003, 0x00000043, 0x00000002, GetOwnerEncounterTrigger, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000002, 0x0000001D, 0x00000001, 0x00000004, 0x0000001D, 0x00000001, 0x00000006, 0x00000043, 0x00000003, GetSelfAnimationFromTable, 0x00000007, 0xFE363C80, 0x00000046, 0x00000001, 0x800936DC, 0x00000016, 0x00000001, 0x00000003, 0x00000056, 0x00000000, 0x00000043, 0x00000002, func_800458CC, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000005, 0x00000001, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C8A, 0x00000028, 0x00000043, 0x00000005, SetNpcRotation, 0xFFFFFFFF, 0x00000000, 0xFE363C8A, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000

View File

@ -6,22 +6,22 @@ dlabel D_80240C20_998B90
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40900000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80240C50_998BC0
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_80240394_998304, D_80240C20_998B90, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, isk_18_UnkNpcAIMainFunc5, D_80240C20_998B90, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240CC0_998C30
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40E00000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80240CF0_998C60
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, func_80240394_998304, D_80240CC0_998C30, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, isk_18_UnkNpcAIMainFunc5, D_80240CC0_998C30, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240D60_998CD0
.word 0x3F800000, 0x00000014, 0x00000005, 0x42F00000, 0x00000000, 0x00000003, 0x40C00000, 0x00000000, 0x00000000, 0x43160000, 0x00000000, 0x00000001
dlabel D_80240D90_998D00
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, func_80240394_998304, D_80240D60_998CD0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, isk_18_UnkNpcAIMainFunc5, D_80240D60_998CD0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240E00_998D70
.word 0x00000043, 0x00000001, isk_18_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, isk_18_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, isk_18_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_80240394_998304, D_80240C20_998B90, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000001, isk_18_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, isk_18_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, isk_18_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, isk_18_UnkNpcAIMainFunc5, D_80240C20_998B90, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240EF4_998E64
.word 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80240C50_998BC0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000

View File

@ -78,7 +78,7 @@ dlabel D_80247BF8_8B7C68
.word 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000, 0x43960000, 0x00000000, 0x0000001E
dlabel D_80247C1C_8B7C8C
.word 0x00000043, 0x00000002, func_80241C18_8B1C88, D_80247BF8_8B7C68, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000002, kmr_02_UnkNpcAIMainFunc4, D_80247BF8_8B7C68, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80247C3C_8B7CAC
.word 0x00000000, 0x001E0018, 0x00000000, 0x00000000, D_80247C1C_8B7C8C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000, 0x00000000, 0x00170013, 0x00000000, 0x00000000, D_80247C1C_8B7C8C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000
@ -99,7 +99,7 @@ dlabel D_80247D3C_8B7DAC
.word 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000, 0x43960000, 0x00000000, 0x0000001E
dlabel D_80247D60_8B7DD0
.word 0x00000043, 0x00000002, func_80241C18_8B1C88, D_80247D3C_8B7DAC, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000002, kmr_02_UnkNpcAIMainFunc4, D_80247D3C_8B7DAC, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80247D80_8B7DF0
.word 0x00000000, 0x0028001E, 0x00000000, 0x00000000, D_80247D60_8B7DD0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x001A0000

View File

@ -18,7 +18,7 @@ dlabel D_80240E90_8D4C50
.word 0x43020000, 0x00000000, 0x00000001, 0x40200000, 0x000000B4, 0x00000003, 0x43160000, 0x00000000, 0x00000001
dlabel D_80240EB4_8D4C74
.word 0x00000043, 0x00000002, func_802407F4_8D45B4, D_80240E90_8D4C50, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000002, kmr_07_UnkNpcAIMainFunc4, D_80240E90_8D4C50, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240ED4_8D4C94
.word 0x00000000, 0x00140017, 0x00000000, 0x00000000, D_80240EB4_8D4C74, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00050000

View File

@ -6,7 +6,7 @@ dlabel D_80244300_8DE400
.word 0x43020000, 0x00000000, 0x00000001, 0x40200000, 0x000000B4, 0x00000003, 0x43160000, 0x00000000, 0x00000001
dlabel D_80244324_8DE424
.word 0x00000043, 0x00000002, func_80240B64_8DAC64, D_80244300_8DE400, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000002, kmr_11_UnkNpcAIMainFunc4, D_80244300_8DE400, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80244344_8DE444
.word 0x00000000, 0x00140017, 0x00000000, 0x00000000, D_80244324_8DE424, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00050000

View File

@ -6,22 +6,22 @@ dlabel D_80240E10_A47D70
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40900000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80240E40_A47DA0
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_802404F4_A47454, D_80240E10_A47D70, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, kpa_01_UnkNpcAIMainFunc5, D_80240E10_A47D70, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240EB0_A47E10
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40E00000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80240EE0_A47E40
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, func_802404F4_A47454, D_80240EB0_A47E10, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, kpa_01_UnkNpcAIMainFunc5, D_80240EB0_A47E10, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240F50_A47EB0
.word 0x3F800000, 0x00000014, 0x00000005, 0x42F00000, 0x00000000, 0x00000003, 0x40C00000, 0x00000000, 0x00000000, 0x43160000, 0x00000000, 0x00000001
dlabel D_80240F80_A47EE0
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, func_802404F4_A47454, D_80240F50_A47EB0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, kpa_01_UnkNpcAIMainFunc5, D_80240F50_A47EB0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80240FF0_A47F50
.word 0x00000043, 0x00000001, kpa_01_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, kpa_01_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, kpa_01_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_802404F4_A47454, D_80240E10_A47D70, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80240E40_A47DA0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80240FF0_A47F50, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80240EE0_A47E40, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00110000
.word 0x00000043, 0x00000001, kpa_01_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, kpa_01_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, kpa_01_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, kpa_01_UnkNpcAIMainFunc5, D_80240E10_A47D70, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80240E40_A47DA0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80240FF0_A47F50, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80240EE0_A47E40, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00110000
dlabel D_80241168_A480C8
.word 0x00000000, 0x00180018, 0x00000000, 0x00000000, D_80240F80_A47EE0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -6,7 +6,7 @@ dlabel D_80242190_A4A750
.word 0x3F800000, 0x0000001E, 0x00000032, 0x42B40000, 0x42200000, 0x00000002, 0x41300000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_802421C0_A4A780
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, func_802404F4_A48AB4, D_80242190_A4A750, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, kpa_03_UnkNpcAIMainFunc5, D_80242190_A4A750, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80242230_A4A7F0
.word 0x00000000, 0x00280018, 0x00000000, 0x00000000, D_802421C0_A4A780, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000
@ -15,22 +15,22 @@ dlabel D_8024225C_A4A81C
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40900000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_8024228C_A4A84C
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_802404F4_A48AB4, D_8024225C_A4A81C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, kpa_03_UnkNpcAIMainFunc5, D_8024225C_A4A81C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_802422FC_A4A8BC
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40E00000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_8024232C_A4A8EC
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, func_802404F4_A48AB4, D_802422FC_A4A8BC, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, kpa_03_UnkNpcAIMainFunc5, D_802422FC_A4A8BC, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_8024239C_A4A95C
.word 0x3F800000, 0x00000014, 0x00000005, 0x42F00000, 0x00000000, 0x00000003, 0x40C00000, 0x00000000, 0x00000000, 0x43160000, 0x00000000, 0x00000001
dlabel D_802423CC_A4A98C
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, func_802404F4_A48AB4, D_8024239C_A4A95C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, kpa_03_UnkNpcAIMainFunc5, D_8024239C_A4A95C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_8024243C_A4A9FC
.word 0x00000043, 0x00000001, kpa_03_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, kpa_03_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, kpa_03_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_802404F4_A48AB4, D_8024225C_A4A81C, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_8024228C_A4A84C, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_8024243C_A4A9FC, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_8024232C_A4A8EC, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00110000
.word 0x00000043, 0x00000001, kpa_03_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, kpa_03_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, kpa_03_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, kpa_03_UnkNpcAIMainFunc5, D_8024225C_A4A81C, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_8024228C_A4A84C, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_8024243C_A4A9FC, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_8024232C_A4A8EC, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00110000
dlabel D_802425B4_A4AB74
.word 0x00000000, 0x00180018, 0x00000000, 0x00000000, D_802423CC_A4A98C, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -36,7 +36,7 @@ dlabel D_80244384_A97AC4
.word 0x3F800000, 0x0000001E, 0x00000032, 0x42B40000, 0x42200000, 0x00000002, 0x41300000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_802443B4_A97AF4
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, func_802418F0_A95030, D_80244384_A97AC4, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, kpa_102_UnkNpcAIMainFunc5, D_80244384_A97AC4, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80244424_A97B64
.word 0x00000000, 0x00280018, 0x00000000, 0x00000000, D_802443B4_A97AF4, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -6,7 +6,7 @@ dlabel D_80241570_A53E30
.word 0x3F800000, 0x0000001E, 0x00000032, 0x42B40000, 0x42200000, 0x00000002, 0x41300000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_802415A0_A53E60
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, func_802406A4_A52F64, D_80241570_A53E30, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, kpa_11_UnkNpcAIMainFunc5, D_80241570_A53E30, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80241610_A53ED0
.word 0x00000000, 0x00280018, 0x00000000, 0x00000000, D_802415A0_A53E60, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -15,22 +15,22 @@ dlabel D_80241740_A9E370
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40900000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80241770_A9E3A0
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_80240544_A9D174, D_80241740_A9E370, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, kpa_113_UnkNpcAIMainFunc5, D_80241740_A9E370, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_802417E0_A9E410
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40E00000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80241810_A9E440
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, func_80240544_A9D174, D_802417E0_A9E410, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, kpa_113_UnkNpcAIMainFunc5, D_802417E0_A9E410, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80241880_A9E4B0
.word 0x3F800000, 0x00000014, 0x00000005, 0x42F00000, 0x00000000, 0x00000003, 0x40C00000, 0x00000000, 0x00000000, 0x43160000, 0x00000000, 0x00000001
dlabel D_802418B0_A9E4E0
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, func_80240544_A9D174, D_80241880_A9E4B0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, kpa_113_UnkNpcAIMainFunc5, D_80241880_A9E4B0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80241920_A9E550
.word 0x00000043, 0x00000001, kpa_113_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, kpa_113_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, kpa_113_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_80240544_A9D174, D_80241740_A9E370, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80241770_A9E3A0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80241920_A9E550, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80241810_A9E440, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00110000
.word 0x00000043, 0x00000001, kpa_113_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, kpa_113_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, kpa_113_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, kpa_113_UnkNpcAIMainFunc5, D_80241740_A9E370, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80241770_A9E3A0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80241920_A9E550, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80241810_A9E440, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00110000
dlabel D_80241A98_A9E6C8
.word 0x00000000, 0x00180018, 0x00000000, 0x00000000, D_802418B0_A9E4E0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -48,7 +48,7 @@ dlabel D_80242224_A62BF4
.word 0x3F800000, 0x0000001E, 0x00000032, 0x42B40000, 0x42200000, 0x00000002, 0x41300000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80242254_A62C24
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, func_802415E0_A61FB0, D_80242224_A62BF4, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, kpa_50_UnkNpcAIMainFunc5, D_80242224_A62BF4, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_802422C4_A62C94
.word 0x00000000, 0x00280018, 0x00000000, 0x00000000, D_80242254_A62C24, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -51,7 +51,7 @@ dlabel D_80242470_A66500
.word 0x3F800000, 0x0000001E, 0x00000032, 0x42B40000, 0x42200000, 0x00000002, 0x41300000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_802424A0_A66530
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, func_802417E0_A65870, D_80242470_A66500, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, kpa_51_UnkNpcAIMainFunc5, D_80242470_A66500, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80242510_A665A0
.word 0x00000000, 0x00280018, 0x00000000, 0x00000000, D_802424A0_A66530, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -6,7 +6,7 @@ dlabel D_80242C00_A70FE0
.word 0x3F800000, 0x0000001E, 0x00000032, 0x42B40000, 0x42200000, 0x00000002, 0x41300000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80242C30_A71010
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, func_802406A4_A6EA84, D_80242C00_A70FE0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, kpa_61_UnkNpcAIMainFunc5, D_80242C00_A70FE0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80242CA0_A71080
.word 0x00000000, 0x00280018, 0x00000000, 0x00000000, D_80242C30_A71010, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -6,7 +6,7 @@ dlabel D_80241300_A75B70
.word 0x3F800000, 0x0000001E, 0x00000032, 0x42B40000, 0x42200000, 0x00000002, 0x41300000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80241330_A75BA0
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, func_802406A4_A74F14, D_80241300_A75B70, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000005, 0x00000043, 0x00000002, kpa_70_UnkNpcAIMainFunc5, D_80241300_A75B70, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_802413A0_A75C10
.word 0x00000000, 0x00280018, 0x00000000, 0x00000000, D_80241330_A75BA0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

View File

@ -6,22 +6,22 @@ dlabel D_80243AA0_C647B0
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40900000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80243AD0_C647E0
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_802406A4_C613B4, D_80243AA0_C647B0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, kzn_03_UnkNpcAIMainFunc5, D_80243AA0_C647B0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80243B40_C64850
.word 0x3F800000, 0x0000003C, 0x0000003C, 0x42B40000, 0x42200000, 0x00000001, 0x40E00000, 0x00000000, 0x00000000, 0x42C80000, 0x42200000, 0x00000001
dlabel D_80243B70_C64880
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, func_802406A4_C613B4, D_80243B40_C64850, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x0000000A, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000004, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000003, 0x00000043, 0x00000002, kzn_03_UnkNpcAIMainFunc5, D_80243B40_C64850, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80243BE0_C648F0
.word 0x3F800000, 0x00000014, 0x00000005, 0x42F00000, 0x00000000, 0x00000003, 0x40C00000, 0x00000000, 0x00000000, 0x43160000, 0x00000000, 0x00000001
dlabel D_80243C10_C64920
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, func_802406A4_C613B4, D_80243BE0_C648F0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
.word 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000008, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000006, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000006, 0x00000043, 0x00000002, kzn_03_UnkNpcAIMainFunc5, D_80243BE0_C648F0, 0x00000002, 0x00000000, 0x00000001, 0x00000000
dlabel D_80243C80_C64990
.word 0x00000043, 0x00000001, kzn_03_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, kzn_03_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, kzn_03_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, func_802406A4_C613B4, D_80243AA0_C647B0, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80243AD0_C647E0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80243C80_C64990, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000
.word 0x00000043, 0x00000001, kzn_03_func_80240814_97BE44, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0033000F, 0x00000043, 0x00000001, kzn_03_AwaitPlayerNearNpc, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00330000, 0x00000043, 0x00000001, kzn_03_func_802408B4_97BEE4, 0x00000043, 0x00000002, SyncOverrideEnemyPos, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000005, 0x00000005, 0x00000043, 0x00000003, SetSelfVar, 0x00000007, 0x00000002, 0x00000043, 0x00000002, kzn_03_UnkNpcAIMainFunc5, D_80243AA0_C647B0, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80243AD0_C647E0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000, 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80243C80_C64990, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000
dlabel D_80243DCC_C64ADC
.word 0x00000000, 0x00140016, 0x00000000, 0x00000000, D_80243B70_C64880, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00110000, 0x00000000, 0x00180018, 0x00000000, 0x00000000, D_80243C10_C64920, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00190000

Some files were not shown because too many files have changed in this diff Show More