mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-07-27 06:44:48 -04:00
Decompile func0f06a170
This commit is contained in:
+17
-38
@@ -497,14 +497,14 @@ bool objCanPickupFromSafe(struct defaultobj *obj)
|
||||
return true;
|
||||
}
|
||||
|
||||
void objUpdateLinkedScenery(struct defaultobj *obj)
|
||||
void objUpdateLinkedScenery(struct defaultobj *obj, s32 arg1)
|
||||
{
|
||||
if ((obj->hidden & OBJHFLAG_CONDITIONALSCENERY) && (obj->flags & OBJFLAG_INVINCIBLE) == 0) {
|
||||
struct linksceneryobj *link = g_LinkedScenery;
|
||||
|
||||
while (link) {
|
||||
if (link->trigger == obj) {
|
||||
func0f06a170();
|
||||
func0f06a170(obj, arg1);
|
||||
|
||||
link->trigger->flags2 |= OBJFLAG2_INVISIBLE;
|
||||
link->trigger->hidden |= OBJHFLAG_REAPABLE;
|
||||
@@ -5112,42 +5112,21 @@ glabel var7f1aa1fc
|
||||
);
|
||||
#endif
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f06a170
|
||||
/* f06a170: 27bdffd0 */ addiu $sp,$sp,-48
|
||||
/* f06a174: afb40028 */ sw $s4,0x28($sp)
|
||||
/* f06a178: afb30024 */ sw $s3,0x24($sp)
|
||||
/* f06a17c: afb1001c */ sw $s1,0x1c($sp)
|
||||
/* f06a180: afb00018 */ sw $s0,0x18($sp)
|
||||
/* f06a184: afbf002c */ sw $ra,0x2c($sp)
|
||||
/* f06a188: afb20020 */ sw $s2,0x20($sp)
|
||||
/* f06a18c: 00809825 */ or $s3,$a0,$zero
|
||||
/* f06a190: 00a0a025 */ or $s4,$a1,$zero
|
||||
/* f06a194: 8c920018 */ lw $s2,0x18($a0)
|
||||
/* f06a198: 00008025 */ or $s0,$zero,$zero
|
||||
/* f06a19c: 24110014 */ addiu $s1,$zero,0x14
|
||||
/* f06a1a0: 8e440008 */ lw $a0,0x8($s2)
|
||||
.L0f06a1a4:
|
||||
/* f06a1a4: 0c006a47 */ jal modelGetPart
|
||||
/* f06a1a8: 260500c9 */ addiu $a1,$s0,0xc9
|
||||
/* f06a1ac: 10400007 */ beqz $v0,.L0f06a1cc
|
||||
/* f06a1b0: 02602025 */ or $a0,$s3,$zero
|
||||
/* f06a1b4: 02002825 */ or $a1,$s0,$zero
|
||||
/* f06a1b8: 0fc1a74e */ jal func0f069d38
|
||||
/* f06a1bc: 02803025 */ or $a2,$s4,$zero
|
||||
/* f06a1c0: 26100001 */ addiu $s0,$s0,0x1
|
||||
/* f06a1c4: 5611fff7 */ bnel $s0,$s1,.L0f06a1a4
|
||||
/* f06a1c8: 8e440008 */ lw $a0,0x8($s2)
|
||||
.L0f06a1cc:
|
||||
/* f06a1cc: 8fbf002c */ lw $ra,0x2c($sp)
|
||||
/* f06a1d0: 8fb00018 */ lw $s0,0x18($sp)
|
||||
/* f06a1d4: 8fb1001c */ lw $s1,0x1c($sp)
|
||||
/* f06a1d8: 8fb20020 */ lw $s2,0x20($sp)
|
||||
/* f06a1dc: 8fb30024 */ lw $s3,0x24($sp)
|
||||
/* f06a1e0: 8fb40028 */ lw $s4,0x28($sp)
|
||||
/* f06a1e4: 03e00008 */ jr $ra
|
||||
/* f06a1e8: 27bd0030 */ addiu $sp,$sp,0x30
|
||||
);
|
||||
void func0f06a170(struct defaultobj *obj, s32 arg1)
|
||||
{
|
||||
struct model *model = obj->model;
|
||||
s32 i;
|
||||
|
||||
if (arg1);
|
||||
|
||||
for (i = 0; i < 20; i++) {
|
||||
if (modelGetPart(model->filedata, 201 + i) == NULL) {
|
||||
break;
|
||||
}
|
||||
|
||||
func0f069d38(obj, i, arg1);
|
||||
}
|
||||
}
|
||||
|
||||
struct prop *objInit(struct defaultobj *obj, struct modelfiledata *filedata, struct prop *prop, struct model *model)
|
||||
{
|
||||
|
||||
@@ -29,7 +29,7 @@ void countdownTimerTick(void);
|
||||
bool doorCallLift(struct prop *doorprop, bool allowclose);
|
||||
bool doorIsPadlockFree(struct doorobj *door);
|
||||
bool objCanPickupFromSafe(struct defaultobj *obj);
|
||||
void objUpdateLinkedScenery(struct defaultobj *obj);
|
||||
void objUpdateLinkedScenery(struct defaultobj *obj, s32 arg1);
|
||||
u32 func0f0667ac(void);
|
||||
u32 func0f0667b4(void);
|
||||
f32 modelBboxGetYMin(struct modelrodata_bbox *bbox);
|
||||
@@ -94,8 +94,8 @@ void func0f069b4c(struct defaultobj *obj);
|
||||
void func0f069c1c(struct defaultobj *obj);
|
||||
void func0f069c70(struct defaultobj *obj, bool arg1, bool arg2);
|
||||
void objInitToggleNodes(struct defaultobj *obj);
|
||||
u32 func0f069d38(void);
|
||||
u32 func0f06a170(void);
|
||||
void func0f069d38(struct defaultobj *obj, s32 arg1, s32 arg2);
|
||||
void func0f06a170(struct defaultobj *obj, s32 arg1);
|
||||
struct prop *objInit(struct defaultobj *obj, struct modelfiledata *filedata, struct prop *prop, struct model *model);
|
||||
struct prop *objInitWithModelDef(struct defaultobj *obj, struct modelfiledata *modelfiledata);
|
||||
struct prop *objInitWithAutoModel(struct defaultobj *obj);
|
||||
|
||||
Reference in New Issue
Block a user