mirror of
https://github.com/pret/pmd-sky.git
synced 2026-04-26 00:26:19 -05:00
up to TryInflictParalysisStatus
This commit is contained in:
parent
ba2816bf9f
commit
801ac7c93a
|
|
@ -17,7 +17,7 @@
|
|||
.public LogMessageByIdWithPopupCheckUserTarget
|
||||
.public MultiplyByFixedPoint
|
||||
.public gCringeTurnRange
|
||||
.public ov10_022C4894
|
||||
.public gParalysisTurnRange
|
||||
.public ov29_022E4240
|
||||
.public ov29_022E4338
|
||||
.public PlayOffensiveStatMultiplierUpEffect
|
||||
|
|
|
|||
|
|
@ -440,8 +440,8 @@ ov10_022C488C:
|
|||
.global ov10_022C4890
|
||||
ov10_022C4890:
|
||||
.byte 0x06, 0x00, 0x0C, 0x00
|
||||
.global ov10_022C4894
|
||||
ov10_022C4894:
|
||||
.global gParalysisTurnRange
|
||||
gParalysisTurnRange:
|
||||
.byte 0x01, 0x00, 0x02, 0x00
|
||||
.global ov10_022C4898
|
||||
ov10_022C4898:
|
||||
|
|
|
|||
|
|
@ -1,302 +0,0 @@
|
|||
.include "asm/macros.inc"
|
||||
.include "overlay_29_02313CE4.inc"
|
||||
|
||||
.text
|
||||
|
||||
|
||||
|
||||
arm_func_start TryInflictCringeStatus
|
||||
TryInflictCringeStatus: ; 0x023143E8
|
||||
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
||||
mov r6, r1
|
||||
mov r7, r0
|
||||
mov r5, r2
|
||||
mov r4, r3
|
||||
bl AllocateTemp1024ByteBufferFromPool
|
||||
mov r0, r6
|
||||
bl EntityIsValid__023118B4
|
||||
cmp r0, #0
|
||||
moveq r0, #0
|
||||
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
||||
mov r0, r7
|
||||
mov r1, r6
|
||||
mov r2, r5
|
||||
bl SafeguardIsActive
|
||||
cmp r0, #0
|
||||
movne r0, #0
|
||||
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
|
||||
mov r0, r7
|
||||
mov r1, r6
|
||||
mov r2, r5
|
||||
bl IsProtectedFromNegativeStatus
|
||||
cmp r0, #0
|
||||
movne r0, #0
|
||||
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
|
||||
mov r0, r7
|
||||
mov r1, r6
|
||||
mov r2, #0x1f
|
||||
#ifndef JAPAN
|
||||
mov r3, #1
|
||||
#endif
|
||||
bl DefenderAbilityIsActive__02311B94
|
||||
cmp r0, #0
|
||||
beq _02314498
|
||||
mov r0, #0
|
||||
mov r1, r6
|
||||
mov r2, r0
|
||||
bl SubstitutePlaceholderStringTags
|
||||
cmp r5, #0
|
||||
beq _02314490
|
||||
ldr r2, _02314534 ; =0x00000DA2
|
||||
mov r0, r7
|
||||
mov r1, r6
|
||||
bl LogMessageByIdWithPopupCheckUserTarget
|
||||
_02314490:
|
||||
mov r0, #0
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
||||
_02314498:
|
||||
cmp r4, #0
|
||||
movne r0, #1
|
||||
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
|
||||
mov r0, #0
|
||||
ldr r4, [r6, #0xb4]
|
||||
mov r1, r6
|
||||
mov r2, r0
|
||||
bl SubstitutePlaceholderStringTags
|
||||
ldrb r0, [r4, #0xd0]
|
||||
cmp r0, #1
|
||||
beq _02314514
|
||||
ldr r1, _02314538 ; =gCringeTurnRange
|
||||
mov r2, #1
|
||||
mov r0, r6
|
||||
strb r2, [r4, #0xd0]
|
||||
bl CalcStatusDuration
|
||||
add r1, r0, #1
|
||||
mov r0, r6
|
||||
strb r1, [r4, #0xd1]
|
||||
bl PlayCringeExclamationPointEffect
|
||||
ldr r2, _0231453C ; =0x00000D02
|
||||
mov r0, r7
|
||||
mov r1, r6
|
||||
bl LogMessageByIdWithPopupCheckUserTarget
|
||||
mov r0, r7
|
||||
mov r1, r6
|
||||
bl TryActivateSteadfast
|
||||
mov r0, r7
|
||||
mov r1, r6
|
||||
bl TryActivateQuickFeet
|
||||
b _02314524
|
||||
_02314514:
|
||||
ldr r2, _02314540 ; =0x00000D03
|
||||
mov r0, r7
|
||||
mov r1, r6
|
||||
bl LogMessageByIdWithPopupCheckUserTarget
|
||||
_02314524:
|
||||
mov r0, r6
|
||||
bl UpdateStatusIconFlags
|
||||
mov r0, #1
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
#ifdef JAPAN
|
||||
#define TRY_INFLICT_CRINGE_STATUS_OFFSET -0x2C0
|
||||
#else
|
||||
#define TRY_INFLICT_CRINGE_STATUS_OFFSET 0
|
||||
#endif
|
||||
_02314534: .word 0x00000DA2 + TRY_INFLICT_CRINGE_STATUS_OFFSET
|
||||
_02314538: .word gCringeTurnRange
|
||||
_0231453C: .word 0x00000D02 + TRY_INFLICT_CRINGE_STATUS_OFFSET
|
||||
_02314540: .word 0x00000D03 + TRY_INFLICT_CRINGE_STATUS_OFFSET
|
||||
arm_func_end TryInflictCringeStatus
|
||||
|
||||
arm_func_start TryInflictParalysisStatus
|
||||
TryInflictParalysisStatus: ; 0x02314544
|
||||
#ifdef JAPAN
|
||||
#define TRY_INFLICT_PARALYSIS_STATUS_OFFSET -0x2C0
|
||||
#else
|
||||
#define TRY_INFLICT_PARALYSIS_STATUS_OFFSET 0
|
||||
#endif
|
||||
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
||||
sub sp, sp, #0xc
|
||||
mov sb, r1
|
||||
mov sl, r0
|
||||
mov r0, sb
|
||||
mov r8, r2
|
||||
mov r4, r3
|
||||
bl EntityIsValid__023118B4
|
||||
cmp r0, #0
|
||||
moveq r0, #0
|
||||
beq _023147D0
|
||||
mov r0, sl
|
||||
mov r1, sb
|
||||
mov r2, r8
|
||||
bl SafeguardIsActive
|
||||
cmp r0, #0
|
||||
movne r0, #0
|
||||
bne _023147D0
|
||||
mov r0, sl
|
||||
mov r1, sb
|
||||
mov r2, r8
|
||||
bl IsProtectedFromNegativeStatus
|
||||
cmp r0, #0
|
||||
movne r0, #0
|
||||
bne _023147D0
|
||||
mov r0, sl
|
||||
mov r1, sb
|
||||
mov r2, #0x16
|
||||
#ifndef JAPAN
|
||||
mov r3, #1
|
||||
#endif
|
||||
bl DefenderAbilityIsActive__02311B94
|
||||
cmp r0, #0
|
||||
beq _023145F4
|
||||
mov r0, #0
|
||||
mov r1, sb
|
||||
mov r2, r0
|
||||
bl SubstitutePlaceholderStringTags
|
||||
cmp r8, #0
|
||||
beq _023145EC
|
||||
mov r0, sl
|
||||
mov r1, sb
|
||||
mov r2, #0xda0 + TRY_INFLICT_PARALYSIS_STATUS_OFFSET
|
||||
bl LogMessageByIdWithPopupCheckUserTarget
|
||||
_023145EC:
|
||||
mov r0, #0
|
||||
b _023147D0
|
||||
_023145F4:
|
||||
mov r0, sb
|
||||
mov r1, #1
|
||||
bl ExclusiveItemEffectIsActive__023147EC
|
||||
cmp r0, #0
|
||||
beq _02314654
|
||||
cmp r8, #0
|
||||
beq _0231464C
|
||||
mov r0, #0
|
||||
mov r1, sb
|
||||
mov r2, r0
|
||||
bl SubstitutePlaceholderStringTags
|
||||
add r2, sp, #4
|
||||
mov r0, sb
|
||||
mov r1, #1
|
||||
bl GetExclusiveItemWithEffectFromBag
|
||||
add r1, sp, #4
|
||||
mov r0, #1
|
||||
bl PrepareItemForPrinting__02345728
|
||||
ldr r2, _023147D8 ; =0x00000DA1
|
||||
mov r0, sl
|
||||
mov r1, sb
|
||||
bl LogMessageByIdWithPopupCheckUserTarget
|
||||
_0231464C:
|
||||
mov r0, #0
|
||||
b _023147D0
|
||||
_02314654:
|
||||
cmp r4, #0
|
||||
movne r0, #1
|
||||
bne _023147D0
|
||||
mov r0, #0
|
||||
ldr r7, [sb, #0xb4]
|
||||
mov r1, sb
|
||||
mov r2, r0
|
||||
mov r4, #1
|
||||
bl SubstitutePlaceholderStringTags
|
||||
ldrb r0, [r7, #0xbf]
|
||||
cmp r0, #4
|
||||
beq _023146E0
|
||||
ldr r1, _023147DC ; =ov10_022C4894
|
||||
mov r3, #4
|
||||
mov r0, sb
|
||||
mov r2, r4
|
||||
strb r3, [r7, #0xbf]
|
||||
bl CalcStatusDuration
|
||||
add r0, r0, #1
|
||||
strb r0, [r7, #0xc0]
|
||||
mov r4, #0
|
||||
strb r4, [r7, #0xc1]
|
||||
mov r0, sl
|
||||
mov r1, sb
|
||||
mov r2, #0xd00 + TRY_INFLICT_PARALYSIS_STATUS_OFFSET
|
||||
strb r4, [r7, #0xc2]
|
||||
bl LogMessageByIdWithPopupCheckUserTarget
|
||||
mov r0, sb
|
||||
bl ov29_022E4240
|
||||
mov r0, sb
|
||||
bl CalcSpeedStageWrapper
|
||||
mov r0, sl
|
||||
mov r1, sb
|
||||
bl TryActivateQuickFeet
|
||||
b _023146F0
|
||||
_023146E0:
|
||||
ldr r2, _023147E0 ; =0x00000D01
|
||||
mov r0, sl
|
||||
mov r1, sb
|
||||
bl LogMessageByIdWithPopupCheckUserTarget
|
||||
_023146F0:
|
||||
mov r0, sb
|
||||
mov r1, #0x19
|
||||
bl AbilityIsActiveVeneer
|
||||
cmp r0, #0
|
||||
beq _023147C4
|
||||
cmp r4, #0
|
||||
bne _023147C4
|
||||
mov r5, #0
|
||||
ldr fp, _023147E4 ; =DIRECTIONS_XY
|
||||
mov r4, r5
|
||||
_02314718:
|
||||
mov r1, r4, lsl #2
|
||||
add r0, fp, r4, lsl #2
|
||||
ldrsh r6, [sb, #4]
|
||||
ldrsh r3, [fp, r1]
|
||||
ldrsh r1, [r0, #2]
|
||||
ldrsh r2, [sb, #6]
|
||||
add r0, r6, r3
|
||||
add r1, r2, r1
|
||||
bl GetTile
|
||||
ldr r6, [r0, #0xc]
|
||||
mov r0, r6
|
||||
bl EntityIsValid__023118B4
|
||||
cmp r0, #0
|
||||
beq _023147B8
|
||||
ldr r0, [r6]
|
||||
cmp r0, #1
|
||||
bne _023147B8
|
||||
cmp r5, #0
|
||||
bne _02314790
|
||||
mov r5, #1
|
||||
bl GetMessageLogPreprocessorArgs
|
||||
mov r1, #0
|
||||
mov r2, r7
|
||||
mov r3, r1
|
||||
str r1, [sp]
|
||||
bl SetPreprocessorArgsStringToName
|
||||
ldr r2, _023147E8 ; =0x00000DC5
|
||||
mov r0, sl
|
||||
mov r1, sb
|
||||
bl LogMessageByIdWithPopupCheckUserTarget
|
||||
_02314790:
|
||||
mov r0, sb
|
||||
mov r1, r6
|
||||
bl GetTreatmentBetweenMonstersIgnoreStatus
|
||||
cmp r0, #1
|
||||
bne _023147B8
|
||||
mov r0, sl
|
||||
mov r1, r6
|
||||
mov r2, r8
|
||||
mov r3, #0
|
||||
bl TryInflictParalysisStatus
|
||||
_023147B8:
|
||||
add r4, r4, #1
|
||||
cmp r4, #8
|
||||
blt _02314718
|
||||
_023147C4:
|
||||
mov r0, sb
|
||||
bl UpdateStatusIconFlags
|
||||
mov r0, #1
|
||||
_023147D0:
|
||||
add sp, sp, #0xc
|
||||
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
||||
.align 2, 0
|
||||
_023147D8: .word 0x00000DA1 + TRY_INFLICT_PARALYSIS_STATUS_OFFSET
|
||||
_023147DC: .word ov10_022C4894
|
||||
_023147E0: .word 0x00000D01 + TRY_INFLICT_PARALYSIS_STATUS_OFFSET
|
||||
_023147E4: .word DIRECTIONS_XY
|
||||
_023147E8: .word 0x00000DC5 + TRY_INFLICT_PARALYSIS_STATUS_OFFSET
|
||||
arm_func_end TryInflictParalysisStatus
|
||||
|
|
@ -32,6 +32,9 @@ void ApplyOffensiveStatMultiplier(struct entity *user, struct entity *target, st
|
|||
void ApplyDefensiveStatMultiplier(struct entity *user, struct entity *target, struct StatIndex stat, fx32_8 multiplier, bool8 displayMessage);
|
||||
void BoostHitChanceStat(struct entity *user, struct entity *target, struct StatIndex stat);
|
||||
void LowerHitChanceStat(struct entity *user, struct entity *target, struct StatIndex stat, bool8 displayMessage);
|
||||
bool8 CringeStatusTarget(struct entity *user ,struct entity *target, bool8 displayMessage, bool8 onlyCheck);
|
||||
bool8 TryInflictCringeStatus(struct entity *user ,struct entity *target, bool8 displayMessage, bool8 onlyCheck);
|
||||
bool8 TryInflictParalysisStatus(struct entity *user, struct entity *target, bool8 displayMessage, bool8 onlyCheck);
|
||||
// Checks if a monster is a team member under the effects of a certain exclusive item effect.
|
||||
bool8 ExclusiveItemEffectIsActive__023147EC(struct entity *entity, enum exclusive_item_effect_id effect_id);
|
||||
|
||||
#endif //PMDSKY_OVERLAY_29_02313814_H
|
||||
|
|
|
|||
|
|
@ -1,9 +0,0 @@
|
|||
#ifndef PMDSKY_OVERLAY_29_023147EC_H
|
||||
#define PMDSKY_OVERLAY_29_023147EC_H
|
||||
|
||||
#include "dungeon_mode.h"
|
||||
|
||||
// Checks if a monster is a team member under the effects of a certain exclusive item effect.
|
||||
bool8 ExclusiveItemEffectIsActive__023147EC(struct entity *entity, enum exclusive_item_effect_id effect_id);
|
||||
|
||||
#endif //PMDSKY_OVERLAY_29_023147EC_H
|
||||
2
main.lsf
2
main.lsf
|
|
@ -542,8 +542,6 @@ Overlay OVY_29
|
|||
Object src/overlay_29_02311BF8.o
|
||||
Object asm/overlay_29_02311C28.o
|
||||
Object src/overlay_29_02313814.o
|
||||
Object asm/overlay_29_02313CE4.o
|
||||
Object src/overlay_29_023147EC.o
|
||||
Object asm/overlay_29_02314810.o
|
||||
Object src/overlay_29_02315118.o
|
||||
Object asm/overlay_29_0231516C.o
|
||||
|
|
|
|||
|
|
@ -3,7 +3,10 @@
|
|||
#include "overlay_29_023118B4.h"
|
||||
#include "overlay_29_02313814.h"
|
||||
#include "overlay_29_02311BF8.h"
|
||||
#include "overlay_29_023018AC.h"
|
||||
#include "math.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_item.h"
|
||||
|
||||
extern u8* AllocateTemp1024ByteBufferFromPool(void);
|
||||
extern void CopyStringFromId(u8* buf, u32 string_id);
|
||||
|
|
@ -24,14 +27,22 @@ extern void LogMessageByIdWithPopupCheckUserTarget(struct entity *user, struct e
|
|||
extern void UpdateStatusIconFlags(struct entity *);
|
||||
extern void ov29_022E4338(struct entity *);
|
||||
extern void PlayCringeExclamationPointEffect(struct entity *);
|
||||
extern void ov29_022E4240(struct entity *);
|
||||
extern fx32_8 MultiplyByFixedPoint(fx32_8 a, fx32_8 b);
|
||||
extern bool8 IsProtectedFromNegativeStatus(struct entity *user ,struct entity *target, bool8 displayMessage);
|
||||
extern bool8 SafeguardIsActive(struct entity *user ,struct entity *target, bool8 displayMessage);
|
||||
extern void TryActivateSteadfast(struct entity *user ,struct entity *target);
|
||||
extern void TryActivateQuickFeet(struct entity *user ,struct entity *target);
|
||||
extern s32 CalcStatusDuration(struct entity *target, const s16 *turnRange, bool8 factorCurerSkills);
|
||||
extern struct tile* GetTile(int x, int y);
|
||||
extern bool8 GetExclusiveItemWithEffectFromBag(struct entity *, enum exclusive_item_effect_id effect_id, struct item *);
|
||||
extern struct preprocessor_args* GetMessageLogPreprocessorArgs(void);
|
||||
extern void SetPreprocessorArgsStringToName(struct preprocessor_args* preprocessor_args, u8 pos,struct monster* monster, u8 param_4, u8 name_type);
|
||||
extern void PrepareItemForPrinting__02345728(u8, struct item*);
|
||||
extern int CalcSpeedStageWrapper(struct entity* entity);
|
||||
|
||||
extern const s16 gCringeTurnRange[2];
|
||||
extern const s16 gCringeTurnRange[];
|
||||
extern const s16 gParalysisTurnRange[];
|
||||
|
||||
#ifdef JAPAN
|
||||
#define JPN_MSG_OFFSET -0x2C0
|
||||
|
|
@ -542,7 +553,7 @@ void LowerHitChanceStat(struct entity *user, struct entity *target, struct StatI
|
|||
UpdateStatusIconFlags(target);
|
||||
}
|
||||
|
||||
bool8 CringeStatusTarget(struct entity *user ,struct entity *target, bool8 displayMessage, bool8 onlyCheck)
|
||||
bool8 TryInflictCringeStatus(struct entity *user ,struct entity *target, bool8 displayMessage, bool8 onlyCheck)
|
||||
{
|
||||
struct monster *entityInfo;
|
||||
u8 *buffer1 = AllocateTemp1024ByteBufferFromPool();
|
||||
|
|
@ -586,3 +597,94 @@ bool8 CringeStatusTarget(struct entity *user ,struct entity *target, bool8 displ
|
|||
UpdateStatusIconFlags(target);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 TryInflictParalysisStatus(struct entity *user, struct entity *target, bool8 displayMessage, bool8 onlyCheck)
|
||||
{
|
||||
struct monster *entityInfo;
|
||||
bool8 alreadyParalyzed;
|
||||
|
||||
if (!EntityIsValid__023118B4(target))
|
||||
return FALSE;
|
||||
|
||||
if (SafeguardIsActive(user, target, displayMessage))
|
||||
return FALSE;
|
||||
|
||||
if (IsProtectedFromNegativeStatus(user, target, displayMessage))
|
||||
return FALSE;
|
||||
|
||||
#ifdef JAPAN
|
||||
if (DefenderAbilityIsActive__02311B94(user, target, ABILITY_LIMBER)) {
|
||||
#else
|
||||
if (DefenderAbilityIsActive__02311B94(user, target, ABILITY_LIMBER, TRUE)) {
|
||||
#endif
|
||||
SubstitutePlaceholderStringTags(0,target,0);
|
||||
if (displayMessage)
|
||||
LogMessageByIdWithPopupCheckUserTarget(user,target,0xda0 + JPN_MSG_OFFSET);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (ExclusiveItemEffectIsActive__023147EC(target, EXCLUSIVE_EFF_NO_PARALYSIS)) {
|
||||
if (displayMessage) {
|
||||
struct item item;
|
||||
|
||||
SubstitutePlaceholderStringTags(0,target,0);
|
||||
GetExclusiveItemWithEffectFromBag(target, EXCLUSIVE_EFF_NO_PARALYSIS, &item);
|
||||
PrepareItemForPrinting__02345728(1, &item);
|
||||
LogMessageByIdWithPopupCheckUserTarget(user,target,0xda1 + JPN_MSG_OFFSET);
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (onlyCheck)
|
||||
return TRUE;
|
||||
|
||||
alreadyParalyzed = TRUE;
|
||||
entityInfo = GetEntInfo(target);
|
||||
SubstitutePlaceholderStringTags(0,target,0);
|
||||
if (entityInfo->burn_class_status.burn != STATUS_BURN_PARALYSIS) {
|
||||
entityInfo->burn_class_status.burn = STATUS_BURN_PARALYSIS;
|
||||
entityInfo->burn_class_status.burn_turns = CalcStatusDuration(target,gParalysisTurnRange,TRUE) + 1;
|
||||
entityInfo->burn_class_status.burn_damage_countdown = 0;
|
||||
entityInfo->burn_class_status.badly_poisoned_damage_count = 0;
|
||||
alreadyParalyzed = FALSE;
|
||||
LogMessageByIdWithPopupCheckUserTarget(user,target,0xd00 + JPN_MSG_OFFSET);
|
||||
ov29_022E4240(target);
|
||||
CalcSpeedStageWrapper(target);
|
||||
TryActivateQuickFeet(user, target);
|
||||
}
|
||||
else {
|
||||
LogMessageByIdWithPopupCheckUserTarget(user,target,0xd01 + JPN_MSG_OFFSET);
|
||||
}
|
||||
|
||||
if (AbilityIsActiveVeneer(target, ABILITY_SYNCHRONIZE) && !alreadyParalyzed) {
|
||||
s32 i;
|
||||
bool8 synchronizePrinted = FALSE;
|
||||
|
||||
for (i = 0; i < NUM_DIRECTIONS; i++) {
|
||||
const struct tile *mapTile = GetTile(target->pos.x + DIRECTIONS_XY[i].x,target->pos.y + DIRECTIONS_XY[i].y);
|
||||
struct entity *mapMonster = mapTile->monster;
|
||||
if (EntityIsValid__023118B4(mapMonster) && GetEntityType(mapMonster) == ENTITY_MONSTER) {
|
||||
if (!synchronizePrinted) {
|
||||
synchronizePrinted = TRUE;
|
||||
SetPreprocessorArgsStringToName(GetMessageLogPreprocessorArgs(),0,entityInfo,0,0);
|
||||
LogMessageByIdWithPopupCheckUserTarget(user,target,0xdc5 + JPN_MSG_OFFSET);
|
||||
}
|
||||
if (GetTreatmentBetweenMonstersIgnoreStatus(target,mapMonster) == TREATMENT_TREAT_AS_ENEMY) {
|
||||
TryInflictParalysisStatus(user, mapMonster, displayMessage, FALSE);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
UpdateStatusIconFlags(target);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 ExclusiveItemEffectIsActive__023147EC(struct entity *entity, enum exclusive_item_effect_id effect_id)
|
||||
{
|
||||
struct monster *monster = GetEntInfo(entity);
|
||||
if (!monster->is_not_team_member)
|
||||
return ExclusiveItemEffectFlagTest(monster->exclusive_item_effect_flags, effect_id);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,12 +0,0 @@
|
|||
#include "overlay_29_023147EC.h"
|
||||
#include "dungeon_util_static.h"
|
||||
#include "exclusive_item.h"
|
||||
|
||||
bool8 ExclusiveItemEffectIsActive__023147EC(struct entity *entity, enum exclusive_item_effect_id effect_id)
|
||||
{
|
||||
struct monster *monster = GetEntInfo(entity);
|
||||
if (!monster->is_not_team_member)
|
||||
return ExclusiveItemEffectFlagTest(monster->exclusive_item_effect_flags, effect_id);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user