matched AbilityBattleEffects

This commit is contained in:
jiangzhengwenjz
2019-08-01 12:25:38 +08:00
parent c88c9c6edf
commit 3eb1f1bc78
13 changed files with 1349 additions and 5083 deletions
+19 -19
View File
@@ -5266,7 +5266,7 @@ _080127B0:
ldrb r7, [r7]
cmp r5, r7
bge _08012824
ldr r0, _080128E0 @ =gChosenMoveByBattler
ldr r0, _080128E0 @ =gUnknown_2023C34
mov r8, r0
ldr r3, _080128C4 @ =gDisableStructs
ldr r4, _080128D4 @ =gStatuses3
@@ -5403,7 +5403,7 @@ _080128D0: .4byte gCurrentMove
_080128D4: .4byte gStatuses3
_080128D8: .4byte gBattleMons
_080128DC: .4byte gBattlersCount
_080128E0: .4byte gChosenMoveByBattler
_080128E0: .4byte gUnknown_2023C34
_080128E4: .4byte 0xfbffffff
_080128E8: .4byte 0x15100007
_080128EC: .4byte 0x0003043f
@@ -5431,7 +5431,7 @@ _0801290C:
ldrb r6, [r6]
cmp r5, r6
bge _0801296C
ldr r0, _08012B8C @ =gChosenMoveByBattler
ldr r0, _08012B8C @ =gUnknown_2023C34
mov r8, r0
ldr r6, _08012B90 @ =gBitTable
ldr r4, _08012B94 @ =gActiveBattler
@@ -5749,7 +5749,7 @@ _08012B7C: .4byte gBattleMons
_08012B80: .4byte gBattleStruct
_08012B84: .4byte gActionSelectionCursor
_08012B88: .4byte gBattlersCount
_08012B8C: .4byte gChosenMoveByBattler
_08012B8C: .4byte gUnknown_2023C34
_08012B90: .4byte gBitTable
_08012B94: .4byte gActiveBattler
_08012B98: .4byte 0xffff1fff
@@ -7571,7 +7571,7 @@ _08013A22:
mov r8, r1
movs r7, 0x6
ldr r6, _08013AF4 @ =gUnknown_2023D7C
ldr r2, _08013AF8 @ =gUnknown_2023DC4
ldr r2, _08013AF8 @ =gChosenMoveByBattler
movs r4, 0xFF
movs r3, 0
_08013A32:
@@ -7671,7 +7671,7 @@ _08013AE8: .4byte gBattleStruct
_08013AEC: .4byte gBattlersCount
_08013AF0: .4byte gBattlerByTurnOrder
_08013AF4: .4byte gUnknown_2023D7C
_08013AF8: .4byte gUnknown_2023DC4
_08013AF8: .4byte gChosenMoveByBattler
_08013AFC: .4byte gAbsentBattlerFlags
_08013B00: .4byte gBattleMainFunc
_08013B04: .4byte sub_8014040
@@ -7894,7 +7894,7 @@ _08013CBC:
ldr r7, _08013D48 @ =gUnknown_2023D7C
movs r6, 0xFF
movs r5, 0
ldr r3, _08013D4C @ =gUnknown_2023DC4
ldr r3, _08013D4C @ =gChosenMoveByBattler
_08013CDE:
adds r1, r2, r7
ldrb r0, [r1]
@@ -7946,7 +7946,7 @@ _08013D3C: .4byte gBattleMainFunc
_08013D40: .4byte gAbsentBattlerFlags
_08013D44: .4byte sub_8014040
_08013D48: .4byte gUnknown_2023D7C
_08013D4C: .4byte gUnknown_2023DC4
_08013D4C: .4byte gChosenMoveByBattler
_08013D50: .4byte gUnknown_2023E80
thumb_func_end BattleTurnPassed
@@ -8631,7 +8631,7 @@ _080142D8:
ldrh r2, [r0, 0x6]
cmp r2, 0
beq _0801432C
ldr r1, _08014320 @ =gUnknown_2023DC4
ldr r1, _08014320 @ =gChosenMoveByBattler
lsls r0, r4, 1
adds r0, r1
strh r2, [r0]
@@ -8655,7 +8655,7 @@ _080142D8:
.align 2, 0
_08014318: .4byte gDisableStructs
_0801431C: .4byte gActiveBattler
_08014320: .4byte gUnknown_2023DC4
_08014320: .4byte gChosenMoveByBattler
_08014324: .4byte gBattleStruct
_08014328: .4byte gBattleCommunication
_0801432C:
@@ -9300,7 +9300,7 @@ _0801487C:
adds r0, r6
ldrb r0, [r0]
strb r0, [r1]
ldr r0, _080148CC @ =gUnknown_2023DC4
ldr r0, _080148CC @ =gChosenMoveByBattler
ldrb r2, [r2]
lsls r5, r2, 1
adds r5, r0
@@ -9329,7 +9329,7 @@ _0801487C:
b _08014B30
.align 2, 0
_080148C8: .4byte gBattleStruct
_080148CC: .4byte gUnknown_2023DC4
_080148CC: .4byte gChosenMoveByBattler
_080148D0: .4byte gBattleMons
_080148D4: .4byte gBattleCommunication
_080148D8:
@@ -10662,7 +10662,7 @@ TurnValuesCleanUp: @ 8015330
beq _08015428
ldr r7, _08015390 @ =gProtectStructs
adds r6, r5, 0
ldr r0, _08015394 @ =gChosenMoveByBattler
ldr r0, _08015394 @ =gUnknown_2023C34
mov r12, r0
ldr r1, _08015398 @ =gDisableStructs
mov r8, r1
@@ -10692,7 +10692,7 @@ _0801535E:
_08015388: .4byte gActiveBattler
_0801538C: .4byte gBattlersCount
_08015390: .4byte gProtectStructs
_08015394: .4byte gChosenMoveByBattler
_08015394: .4byte gUnknown_2023C34
_08015398: .4byte gDisableStructs
_0801539C:
ldrb r0, [r6]
@@ -10866,7 +10866,7 @@ _080154CC:
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
ldr r1, _0801553C @ =gUnknown_2023DC4
ldr r1, _0801553C @ =gChosenMoveByBattler
ldrb r3, [r5]
lsls r0, r3, 1
adds r0, r1
@@ -10909,7 +10909,7 @@ _0801552C: .4byte gBattleStruct
_08015530: .4byte gBattlersCount
_08015534: .4byte gActiveBattler
_08015538: .4byte gBattlerAttacker
_0801553C: .4byte gUnknown_2023DC4
_0801553C: .4byte gChosenMoveByBattler
_08015540: .4byte gBattleMons
_08015544: .4byte gDisableStructs
_08015548: .4byte gProtectStructs
@@ -12046,7 +12046,7 @@ _08015EBC:
mov r1, r10
adds r1, 0xC
adds r0, r1
ldr r1, _08015F00 @ =gUnknown_2023DC4
ldr r1, _08015F00 @ =gChosenMoveByBattler
lsls r2, 1
adds r2, r1
ldrh r3, [r0]
@@ -12069,7 +12069,7 @@ _08015EF6:
b _08015F18
.align 2, 0
_08015EFC: .4byte gBattlerAttacker
_08015F00: .4byte gUnknown_2023DC4
_08015F00: .4byte gChosenMoveByBattler
_08015F04: .4byte gCurrentMove
_08015F08: .4byte gChosenMove
_08015F0C: .4byte gBattleStruct
@@ -12402,7 +12402,7 @@ _080161AA:
adds r1, r2
adds r1, 0x20
ldrb r1, [r1]
bl sub_80C71D0
bl RecordAbilityBattle
ldr r2, _080161F0 @ =gSpecialStatuses
ldrb r1, [r4]
lsls r0, r1, 2
+32 -32
View File
@@ -290,7 +290,7 @@ _0801D98E:
mov r1, r8
ldrb r0, [r1]
ldrb r1, [r4]
bl sub_80C71D0
bl RecordAbilityBattle
b _0801DAFC
.align 2, 0
_0801D9C8: .4byte gBattlersCount
@@ -2198,7 +2198,7 @@ _0801E8C0:
strb r1, [r0, 0x6]
ldrb r0, [r4]
ldrb r1, [r3]
bl sub_80C71D0
bl RecordAbilityBattle
b _0801E9D4
.align 2, 0
_0801E910: .4byte gBattleMoves
@@ -2355,7 +2355,7 @@ _0801EA10:
strb r0, [r1, 0x6]
ldrb r0, [r5]
ldrb r1, [r3]
bl sub_80C71D0
bl RecordAbilityBattle
_0801EA52:
ldr r0, _0801EA98 @ =gMoveResultFlags
ldrb r1, [r0]
@@ -2465,7 +2465,7 @@ _0801EB08:
strb r1, [r0, 0x6]
ldrb r0, [r3]
movs r1, 0x1A
bl sub_80C71D0
bl RecordAbilityBattle
b _0801ED18
.align 2, 0
_0801EB3C: .4byte gBattleMons
@@ -2710,7 +2710,7 @@ _0801ECC2:
mov r1, r8
ldrb r0, [r1]
movs r1, 0x19
bl sub_80C71D0
bl RecordAbilityBattle
_0801ED18:
pop {r3,r4}
mov r8, r3
@@ -5342,7 +5342,7 @@ _080201A6:
mov r3, r9
ldrb r0, [r3]
movs r1, 0x11
bl sub_80C71D0
bl RecordAbilityBattle
ldr r4, _080201D8 @ =gBattlescriptCurrInstr
ldr r0, [r4]
adds r0, 0x1
@@ -5465,7 +5465,7 @@ _0802028A:
mov r3, r9
ldrb r0, [r3]
movs r1, 0x29
bl sub_80C71D0
bl RecordAbilityBattle
ldr r4, _080202AC @ =gBattlescriptCurrInstr
ldr r0, [r4]
adds r0, 0x1
@@ -5656,7 +5656,7 @@ _08020402:
mov r3, r9
ldrb r0, [r3]
movs r1, 0x7
bl sub_80C71D0
bl RecordAbilityBattle
ldr r4, _08020424 @ =gBattlescriptCurrInstr
ldr r0, [r4]
adds r0, 0x1
@@ -5699,7 +5699,7 @@ _0802045A:
mov r1, r9
ldrb r0, [r1]
movs r1, 0x11
bl sub_80C71D0
bl RecordAbilityBattle
ldr r4, _08020498 @ =gBattlescriptCurrInstr
ldr r0, [r4]
adds r0, 0x1
@@ -6128,7 +6128,7 @@ _0802084C:
mov r1, r9
ldrb r0, [r1]
movs r1, 0x27
bl sub_80C71D0
bl RecordAbilityBattle
ldr r1, _08020868 @ =gBattlescriptCurrInstr
ldr r0, _0802086C @ =gUnknown_81D9452
str r0, [r1]
@@ -6737,7 +6737,7 @@ _08020D26:
strb r0, [r1]
ldrb r0, [r7]
ldrb r1, [r1]
bl sub_80C71D0
bl RecordAbilityBattle
b _0802110A
.align 2, 0
_08020D64: .4byte gBattleTypeFlags
@@ -7075,7 +7075,7 @@ _08021018:
str r0, [r1]
ldrb r0, [r5]
movs r1, 0x3C
bl sub_80C71D0
bl RecordAbilityBattle
b _0802110A
.align 2, 0
_0802104C: .4byte gLastUsedAbility
@@ -8017,7 +8017,7 @@ _080217C8:
ldrb r1, [r0]
adds r0, r4, 0
_080217EC:
bl sub_80C71D0
bl RecordAbilityBattle
ldr r0, _08021800 @ =gBattleScripting
strb r4, [r0, 0x15]
b _0802180A
@@ -12164,7 +12164,7 @@ _0802381C:
ldr r2, _08023854 @ =gDisableStructs
ldr r5, _08023858 @ =0xfeffffff
adds r3, r0, 0
ldr r1, _0802385C @ =gChosenMoveByBattler
ldr r1, _0802385C @ =gUnknown_2023C34
_0802382E:
ldrb r0, [r2, 0xA]
cmp r0, 0
@@ -12189,7 +12189,7 @@ _08023846:
_08023850: .4byte gBattlersCount
_08023854: .4byte gDisableStructs
_08023858: .4byte 0xfeffffff
_0802385C: .4byte gChosenMoveByBattler
_0802385C: .4byte gUnknown_2023C34
_08023860:
ldr r1, _08023914 @ =gHitMarker
ldr r3, [r1]
@@ -12709,7 +12709,7 @@ atk4A_typecalc2: @ 8023C38
strb r2, [r0, 0x6]
ldrb r0, [r7]
ldrb r1, [r3]
bl sub_80C71D0
bl RecordAbilityBattle
b _08023DAE
.align 2, 0
_08023C9C: .4byte gBattleMoves
@@ -12910,7 +12910,7 @@ _08023DF0:
strb r0, [r1, 0x6]
ldrb r0, [r2]
ldrb r1, [r3]
bl sub_80C71D0
bl RecordAbilityBattle
_08023E2A:
ldr r0, _08023E74 @ =gMoveResultFlags
ldrb r1, [r0]
@@ -18090,7 +18090,7 @@ atk70_recordlastability: @ 8026844
ldrb r0, [r1]
ldr r1, _08026874 @ =gLastUsedAbility
ldrb r1, [r1]
bl sub_80C71D0
bl RecordAbilityBattle
ldr r0, [r4]
adds r0, 0x1
str r0, [r4]
@@ -19248,7 +19248,7 @@ _0802718C:
adds r1, r6
adds r1, 0x20
ldrb r1, [r1]
bl sub_80C71D0
bl RecordAbilityBattle
ldr r1, _080271B8 @ =gBattlescriptCurrInstr
ldr r0, _080271BC @ =gUnknown_81D93AF
str r0, [r1]
@@ -20232,7 +20232,7 @@ _08027918:
str r4, [r5]
ldrb r1, [r2]
adds r0, r3, 0
bl sub_80C71D0
bl RecordAbilityBattle
b _08027942
.align 2, 0
_08027930: .4byte gBattleMons
@@ -20820,7 +20820,7 @@ _08027DB4:
strb r0, [r1]
ldrb r0, [r2]
ldrb r1, [r1]
bl sub_80C71D0
bl RecordAbilityBattle
ldr r6, _08027DFC @ =gActiveBattler
ldrb r1, [r6]
lsls r0, r1, 2
@@ -20873,7 +20873,7 @@ _08027E0C:
strb r0, [r1]
ldrb r0, [r3]
ldrb r1, [r1]
bl sub_80C71D0
bl RecordAbilityBattle
b _08027D48
.align 2, 0
_08027E58: .4byte gActiveBattler
@@ -20918,7 +20918,7 @@ _08027E8E:
strb r0, [r1]
ldrb r0, [r2]
ldrb r1, [r1]
bl sub_80C71D0
bl RecordAbilityBattle
b _08027D48
.align 2, 0
_08027EBC: .4byte gActiveBattler
@@ -22333,7 +22333,7 @@ _08028998:
mov r1, r9
ldrb r0, [r1]
movs r1, 0x5
bl sub_80C71D0
bl RecordAbilityBattle
b _08028C48
.align 2, 0
_080289D4: .4byte gPotentialItemEffectBattler
@@ -23030,7 +23030,7 @@ _08028F1C:
strb r2, [r0]
ldrb r0, [r5]
movs r1, 0xC
bl sub_80C71D0
bl RecordAbilityBattle
b _0802902C
.align 2, 0
_08028F78: .4byte gBattlerPartyIndexes
@@ -26040,7 +26040,7 @@ _0802A738: .4byte 0xf7ffffff
_0802A73C:
ldrb r1, [r1]
adds r0, r3, 0
bl sub_80C71D0
bl RecordAbilityBattle
ldrb r0, [r6, 0x5]
movs r1, 0x1
orrs r0, r1
@@ -26113,7 +26113,7 @@ _0802A7DC: .4byte 0xf7ffffff
_0802A7E0:
ldrb r1, [r1]
adds r0, r3, 0
bl sub_80C71D0
bl RecordAbilityBattle
ldr r1, _0802A838 @ =gBattleCommunication
ldrb r0, [r1, 0x5]
mov r2, r9
@@ -27382,7 +27382,7 @@ _0802B1A2:
lsls r0, 31
cmp r0, 0
bne _0802B2A8
ldr r0, _0802B27C @ =gUnknown_2023DC4
ldr r0, _0802B27C @ =gChosenMoveByBattler
lsls r1, r3, 1
adds r1, r0
ldrh r0, [r1]
@@ -27454,7 +27454,7 @@ _0802B26C: .4byte gBattlerAttacker
_0802B270: .4byte gBattleStruct
_0802B274: .4byte gBattleMons
_0802B278: .4byte gDisableStructs
_0802B27C: .4byte gUnknown_2023DC4
_0802B27C: .4byte gChosenMoveByBattler
_0802B280: .4byte gBattlersCount
_0802B284: .4byte gCurrentMove
_0802B288: .4byte gUnknown_2023D48
@@ -29442,7 +29442,7 @@ _0802C224:
strb r0, [r1]
ldrb r0, [r7]
ldrb r1, [r1]
bl sub_80C71D0
bl RecordAbilityBattle
b _0802C37A
.align 2, 0
_0802C24C: .4byte gBattlescriptCurrInstr
@@ -31575,7 +31575,7 @@ atkEC_pursuitrelated: @ 802D2A0
ldrb r0, [r0]
cmp r0, 0
bne _0802D340
ldr r1, _0802D32C @ =gUnknown_2023DC4
ldr r1, _0802D32C @ =gChosenMoveByBattler
lsls r0, r3, 1
adds r0, r1
ldrh r2, [r0]
@@ -31606,7 +31606,7 @@ _0802D31C: .4byte gBattleTypeFlags
_0802D320: .4byte gAbsentBattlerFlags
_0802D324: .4byte gBitTable
_0802D328: .4byte gUnknown_2023D7C
_0802D32C: .4byte gUnknown_2023DC4
_0802D32C: .4byte gChosenMoveByBattler
_0802D330: .4byte gUnknown_2023BDA
_0802D334: .4byte gCurrentMove
_0802D338: .4byte gBattlescriptCurrInstr
+29 -4943
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -2561,8 +2561,8 @@ _0807AF92:
bx r0
thumb_func_end sub_807AF00
thumb_func_start weather_get_current
weather_get_current: @ 807AF98
thumb_func_start GetCurrentWeather
GetCurrentWeather: @ 807AF98
ldr r0, _0807AFA4 @ =gUnknown_2037F34
movs r1, 0xDA
lsls r1, 3
@@ -2571,7 +2571,7 @@ weather_get_current: @ 807AF98
bx lr
.align 2, 0
_0807AFA4: .4byte gUnknown_2037F34
thumb_func_end weather_get_current
thumb_func_end GetCurrentWeather
thumb_func_start SetRainStrengthFromSoundEffect
SetRainStrengthFromSoundEffect: @ 807AFA8
+7 -7
View File
@@ -254,25 +254,25 @@ gUnknown_8250038:: @ 8250038
gUnknown_8250070:: @ 8250070
.incbin "baserom.gba", 0x250070, 0x24
gUnknown_8250094:: @ 8250094
gStatusConditionString_PoisonJpn:: @ 8250094
.incbin "baserom.gba", 0x250094, 0x8
gUnknown_825009C:: @ 825009C
gStatusConditionString_SleepJpn:: @ 825009C
.incbin "baserom.gba", 0x25009C, 0x8
gUnknown_82500A4:: @ 82500A4
gStatusConditionString_ParalysisJpn:: @ 82500A4
.incbin "baserom.gba", 0x2500A4, 0x8
gUnknown_82500AC:: @ 82500AC
gStatusConditionString_BurnJpn:: @ 82500AC
.incbin "baserom.gba", 0x2500AC, 0x8
gUnknown_82500B4:: @ 82500B4
gStatusConditionString_IceJpn:: @ 82500B4
.incbin "baserom.gba", 0x2500B4, 0x8
gUnknown_82500BC:: @ 82500BC
gStatusConditionString_ConfusionJpn:: @ 82500BC
.incbin "baserom.gba", 0x2500BC, 0x8
gUnknown_82500C4:: @ 82500C4
gStatusConditionString_LoveJpn:: @ 82500C4
.incbin "baserom.gba", 0x2500C4, 0x8
gUnknown_82500CC:: @ 82500CC
+24 -28
View File
@@ -241,7 +241,7 @@ struct ResourceFlags
u32 flags[4];
};
#define UNKNOWN_FLAG_FLASH_FIRE 1
#define RESOURCE_FLAG_FLASH_FIRE 1
struct DisableStruct
{
@@ -274,7 +274,7 @@ struct DisableStruct
/*0x18*/ u8 truantSwitchInHack : 1;
/*0x18*/ u8 unk18_a_2 : 2;
/*0x18*/ u8 mimickedMoves : 4;
/*0x19*/ u8 rechargeCounter;
/*0x19*/ u8 rechargeTimer;
/*0x1A*/ u8 unk1A[2];
};
@@ -559,13 +559,16 @@ struct BattleStruct
u16 hpOnSwitchout[2];
u8 abilityPreventingSwitchout;
u8 hpScale;
u8 synchronizeMoveEffect;
u8 field_AE;
u8 field_AF;
u32 savedBattleTypeFlags; // TODO: Is it correct to place it here? Or simply not used?
u8 field_B4;
u8 field_B0;
u8 field_B1;
u8 field_B2;
u8 field_B3;
u8 synchronizeMoveEffect;
u8 field_B5;
u8 field_B6;
u8 field_B7;
u8 atkCancellerTracker;
// void (*savedCallback)(void);
u16 usedHeldItems[MAX_BATTLERS_COUNT];
u8 chosenItem[4]; // why is this an u8?
@@ -581,31 +584,11 @@ struct BattleStruct
u8 givenExpMons;
u8 lastTakenMoveFrom[MAX_BATTLERS_COUNT * MAX_BATTLERS_COUNT * 2];
u16 castformPalette[MAX_BATTLERS_COUNT][16];
/*
// EM fields
u8 field_180;
u8 field_181;
u8 field_182;
u8 field_183;
struct BattleEnigmaBerry battleEnigmaBerry;
u8 wishPerishSongState;
u8 wishPerishSongBattlerId;
bool8 overworldWeatherDone;
u8 atkCancellerTracker;
u8 field_1A4[96];
u8 field_204[104];
u8 field_26C[40];
u8 AI_monToSwitchIntoId[BATTLE_BANKS_COUNT];
u8 field_298[8];
u8 field_2A0;
u8 field_2A1;
u8 field_2A2;
*/
u8 wishPerishSongState;
u8 wishPerishSongBattlerId;
u8 field_182; // overworldWeatherDone?
u8 field_183; // atkCancellerTracker?
u8 field_184[124]; // only for padding
u8 field_183;
u8 field_184[124]; // currently unknown
}; // size == 0x200 bytes
extern struct BattleStruct *gBattleStruct;
@@ -620,6 +603,13 @@ extern struct BattleStruct *gBattleStruct;
#define IS_TYPE_PHYSICAL(moveType)(moveType < TYPE_MYSTERY)
#define IS_TYPE_SPECIAL(moveType)(moveType > TYPE_MYSTERY)
#define TARGET_TURN_DAMAGED ((gSpecialStatuses[gBattlerTarget].physicalDmg != 0 || gSpecialStatuses[gBattlerTarget].specialDmg != 0))
#define IS_BATTLER_OF_TYPE(battlerId, type)((gBattleMons[battlerId].type1 == type || gBattleMons[battlerId].type2 == type))
#define SET_BATTLER_TYPE(battlerId, type) \
{ \
gBattleMons[battlerId].type1 = type; \
gBattleMons[battlerId].type2 = type; \
}
#define MOVE_EFFECT_SLEEP 0x1
#define MOVE_EFFECT_POISON 0x2
@@ -734,6 +724,7 @@ extern struct BattleStruct *gBattleStruct;
#define B_ANIM_STATUS_WRAPPED 0x9
#define GET_STAT_BUFF_ID(n)((n & 0xF)) // first four bits 0x1, 0x2, 0x4, 0x8
#define GET_STAT_BUFF_VALUE2(n)((n & 0xF0))
#define GET_STAT_BUFF_VALUE(n)(((n >> 4) & 7)) // 0x10, 0x20, 0x40
#define STAT_BUFF_NEGATIVE 0x80 // 0x80, the sign bit
@@ -992,5 +983,10 @@ extern u8 gBattlerByTurnOrder[MAX_BATTLERS_COUNT];
extern u8 gBattleCommunication[BATTLE_COMMUNICATION_ENTRIES_COUNT];
extern u16 gSideStatuses[2];
extern u32 gHitMarker;
extern u16 gChosenMoveByBattler[MAX_BATTLERS_COUNT];
extern u8 gMoveResultFlags;
extern s32 gTakenDmg[MAX_BATTLERS_COUNT];
extern u8 gTakenDmgByBattler[MAX_BATTLERS_COUNT];
#endif // GUARD_BATTLE_H
+5
View File
@@ -156,6 +156,7 @@ extern const u8 BattleScript_PrintPayDayMoneyString[];
extern const u8 BattleScript_WrapTurnDmg[];
extern const u8 BattleScript_WrapEnds[];
extern const u8 BattleScript_MoveUsedIsInLove[];
extern const u8 BattleScript_MoveUsedIsInLoveCantAttack[];
extern const u8 BattleScript_MoveUsedIsParalyzedCantAttack[];
extern const u8 BattleScript_NightmareTurnDmg[];
extern const u8 BattleScript_CurseTurnDmg[];
@@ -288,5 +289,9 @@ extern const u8 BattleScript_ActionWatchesCarefully[];
extern const u8 BattleScript_ActionGetNear[];
extern const u8 BattleScript_ActionThrowPokeblock[];
extern const u8 BattleScript_82DBEE3[];
extern const u8 gUnknown_81D9192[];
extern const u8 gUnknown_81D9180[];
extern const u8 BattleScript_IntimidateActivates[];
extern const u8 BattleScript_IntimidateActivatesEnd3[];
#endif // GUARD_BATTLE_SCRIPTS_H
+21 -21
View File
@@ -10,27 +10,27 @@
#define MOVE_LIMITATION_TAUNT (1 << 4)
#define MOVE_LIMITATION_IMPRISON (1 << 5)
#define ABILITYEFFECT_ON_SWITCHIN 0x0
#define ABILITYEFFECT_ENDTURN 0x1
#define ABILITYEFFECT_MOVES_BLOCK 0x2
#define ABILITYEFFECT_ABSORBING 0x3
#define ABILITYEFFECT_CONTACT 0x4
#define ABILITYEFFECT_IMMUNITY 0x5
#define ABILITYEFFECT_FORECAST 0x6
#define ABILITYEFFECT_SYNCHRONIZE 0x7
#define ABILITYEFFECT_ATK_SYNCHRONIZE 0x8
#define ABILITYEFFECT_INTIMIDATE1 0x9
#define ABILITYEFFECT_INTIMIDATE2 0xA
#define ABILITYEFFECT_TRACE 0xB
#define ABILITYEFFECT_CHECK_OTHER_SIDE 0xC
#define ABILITYEFFECT_CHECK_BANK_SIDE 0xD
#define ABILITYEFFECT_FIELD_SPORT 0xE
#define ABILITYEFFECT_CHECK_FIELD_EXCEPT_BANK 0xF
#define ABILITYEFFECT_COUNT_OTHER_SIDE 0x10
#define ABILITYEFFECT_COUNT_BANK_SIDE 0x11
#define ABILITYEFFECT_COUNT_ON_FIELD 0x12
#define ABILITYEFFECT_CHECK_ON_FIELD 0x13
#define ABILITYEFFECT_SWITCH_IN_WEATHER 0xFF
#define ABILITYEFFECT_ON_SWITCHIN 0x0
#define ABILITYEFFECT_ENDTURN 0x1
#define ABILITYEFFECT_MOVES_BLOCK 0x2
#define ABILITYEFFECT_ABSORBING 0x3
#define ABILITYEFFECT_MOVE_END 0x4
#define ABILITYEFFECT_IMMUNITY 0x5
#define ABILITYEFFECT_FORECAST 0x6
#define ABILITYEFFECT_SYNCHRONIZE 0x7
#define ABILITYEFFECT_ATK_SYNCHRONIZE 0x8
#define ABILITYEFFECT_INTIMIDATE1 0x9
#define ABILITYEFFECT_INTIMIDATE2 0xA
#define ABILITYEFFECT_TRACE 0xB
#define ABILITYEFFECT_CHECK_OTHER_SIDE 0xC
#define ABILITYEFFECT_CHECK_BATTLER_SIDE 0xD
#define ABILITYEFFECT_FIELD_SPORT 0xE
#define ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER 0xF // TODO: Is it correct?
#define ABILITYEFFECT_COUNT_OTHER_SIDE 0x10
#define ABILITYEFFECT_COUNT_BATTLER_SIDE 0x11
#define ABILITYEFFECT_COUNT_ON_FIELD 0x12
#define ABILITYEFFECT_CHECK_ON_FIELD 0x13
#define ABILITYEFFECT_SWITCH_IN_WEATHER 0xFF
#define ABILITY_ON_OPPOSING_FIELD(battlerId, abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_OTHER_SIDE, battlerId, abilityId, 0, 0))
#define ABILITY_ON_FIELD(abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, abilityId, 0, 0))
+1
View File
@@ -16,5 +16,6 @@ void PlayRainStoppingSoundEffect(void);
bool8 sub_807AA70(void);
void SetWeatherScreenFadeOut(void);
void sub_807B070(void);
u8 GetCurrentWeather(void);
#endif // GUARD_WEATHER_H
+1 -1
View File
@@ -479,7 +479,7 @@ void sub_80C71A8(u8 a)
BATTLE_HISTORY->usedMoves[a / 2][i] = 0;
}
void sub_80C71D0(u8 a, u8 b)
void RecordAbilityBattle(u8 a, u8 b)
{
if (GetBattlerSide(a) == 0)
BATTLE_HISTORY->abilities[GetBattlerPosition(a) & 1] = b;
+1204 -26
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2567,7 +2567,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de
}
// flash fire triggered
if ((gBattleResources->flags->flags[battlerIdAtk] & UNKNOWN_FLAG_FLASH_FIRE) && type == TYPE_FIRE)
if ((gBattleResources->flags->flags[battlerIdAtk] & RESOURCE_FLAG_FLASH_FIRE) && type == TYPE_FIRE)
damage = (15 * damage) / 10;
}
+2 -2
View File
@@ -216,7 +216,7 @@ gUnknown_2023C0C: @ 2023C0C
gUnknown_2023C30: @ 2023C30
.space 0x4
gChosenMoveByBattler: @ 2023C34
gUnknown_2023C34: @ 2023C34
.space 0x110
gBattlerSpriteIds: @ 2023D44
@@ -306,7 +306,7 @@ gUnknown_2023DB8: @ 2023DB8
gUnknown_2023DC0: @ 2023DC0
.space 0x4
gUnknown_2023DC4: @ 2023DC4
gChosenMoveByBattler: @ 2023DC4
.space 0x8
gMoveResultFlags: @ 2023DCC