Merge branch 'master' into map-script-end
@@ -150,9 +150,9 @@ Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert.
|
||||
<details>
|
||||
<summary><i>Notes...</i></summary>
|
||||
|
||||
> Note 1: While not shown, msys uses forward slashes `/` instead of backwards slashes `\` as the directory separator.
|
||||
> Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Downloads/My Downloads"`.
|
||||
> Note 3: Windows path names are case-insensitive so adhering to capitalization isn’t needed.
|
||||
> Note 1: While not shown, msys uses forward slashes `/` instead of backwards slashes `\` as the directory separator.
|
||||
> Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Downloads/My Downloads"`.
|
||||
> Note 3: Windows path names are case-insensitive so adhering to capitalization isn’t needed.
|
||||
> Note 4: If libpng was saved elsewhere, you will need to specify the full path to where libpng was downloaded, e.g. `cd c:/devkitpro/msys2` if it was saved there.
|
||||
</details>
|
||||
|
||||
|
||||
3
Makefile
@@ -236,8 +236,7 @@ clean-tools:
|
||||
@$(foreach tooldir,$(TOOLDIRS),$(MAKE) clean -C $(tooldir);)
|
||||
|
||||
mostlyclean: tidynonmodern tidymodern
|
||||
rm -f $(SAMPLE_SUBDIR)/*.bin
|
||||
rm -f $(CRY_SUBDIR)/*.bin
|
||||
find sound -iname '*.bin' -exec rm {} +
|
||||
rm -f $(MID_SUBDIR)/*.s
|
||||
find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.rl' -o -iname '*.latfont' -o -iname '*.hwjpnfont' -o -iname '*.fwjpnfont' \) -exec rm {} +
|
||||
rm -f $(DATA_ASM_SUBDIR)/layouts/layouts.inc $(DATA_ASM_SUBDIR)/layouts/layouts_table.inc
|
||||
|
||||
22
README.md
@@ -8,24 +8,4 @@ It builds the following ROM:
|
||||
|
||||
To set up the repository, see [INSTALL.md](INSTALL.md).
|
||||
|
||||
|
||||
## See also
|
||||
|
||||
Other disassembly and/or decompilation projects:
|
||||
* [**Pokémon Red and Blue**](https://github.com/pret/pokered)
|
||||
* [**Pokémon Gold and Silver (Space World '97 demo)**](https://github.com/pret/pokegold-spaceworld)
|
||||
* [**Pokémon Yellow**](https://github.com/pret/pokeyellow)
|
||||
* [**Pokémon Trading Card Game**](https://github.com/pret/poketcg)
|
||||
* [**Pokémon Pinball**](https://github.com/pret/pokepinball)
|
||||
* [**Pokémon Stadium**](https://github.com/pret/pokestadium)
|
||||
* [**Pokémon Gold and Silver**](https://github.com/pret/pokegold)
|
||||
* [**Pokémon Crystal**](https://github.com/pret/pokecrystal)
|
||||
* [**Pokémon Ruby and Sapphire**](https://github.com/pret/pokeruby)
|
||||
* [**Pokémon Pinball: Ruby & Sapphire**](https://github.com/pret/pokepinballrs)
|
||||
* [**Pokémon FireRed and LeafGreen**](https://github.com/pret/pokefirered)
|
||||
* [**Pokémon Mystery Dungeon: Red Rescue Team**](https://github.com/pret/pmd-red)
|
||||
|
||||
|
||||
## Contacts
|
||||
|
||||
You can find us on [Discord](https://discord.gg/d5dubZ3) and [IRC](https://web.libera.chat/?#pret).
|
||||
For contacts and other pret projects, see [pret.github.io](https://pret.github.io/).
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
@ Get the status (CHALLENGE_STATUS_*) of the current challenge and store the result in VAR_TEMP_0
|
||||
@ Get the status (CHALLENGE_STATUS_*) of the current challenge and store the result in VAR_TEMP_CHALLENGE_STATUS
|
||||
.macro frontier_getstatus
|
||||
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_GET_STATUS
|
||||
special CallFrontierUtilFunc
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#ifndef GUARD_CONSTANTS_GBA_CONSTANTS_INC
|
||||
#define GUARD_CONSTANTS_GBA_CONSTANTS_INC
|
||||
|
||||
.set PSR_USR_MODE, 0x00000010
|
||||
.set PSR_FIQ_MODE, 0x00000011
|
||||
.set PSR_IRQ_MODE, 0x00000012
|
||||
@@ -511,3 +514,5 @@
|
||||
.set BLDCNT_TGT2_OBJ, 1 << 12
|
||||
.set BLDCNT_TGT2_BD, 1 << 13
|
||||
.set BLDCNT_TGT2_ALL, BLDCNT_TGT2_BG0 | BLDCNT_TGT2_BG1 | BLDCNT_TGT2_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BD
|
||||
|
||||
#endif @ GUARD_CONSTANTS_GBA_CONSTANTS_INC
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#ifndef GUARD_CONSTANTS_GLOBAL_INC
|
||||
#define GUARD_CONSTANTS_GLOBAL_INC
|
||||
|
||||
.set TRUE, 1
|
||||
.set FALSE, 0
|
||||
|
||||
@@ -20,3 +23,5 @@
|
||||
|
||||
.set OBJ_IMAGE_ANIM_H_FLIP, 1 << 6
|
||||
.set OBJ_IMAGE_ANIM_V_FLIP, 1 << 7
|
||||
|
||||
#endif @ GUARD_CONSTANTS_GLOBAL_INC
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#ifndef GUARD_CONSTANTS_M4A_CONSTANTS_INC
|
||||
#define GUARD_CONSTANTS_M4A_CONSTANTS_INC
|
||||
|
||||
.equiv ID_NUMBER, 0x68736d53
|
||||
|
||||
.equiv PCM_DMA_BUF_SIZE, 1584
|
||||
@@ -250,3 +253,5 @@
|
||||
struct_field o_CgbChannel_nextChannelPointer, 4
|
||||
struct_field o_CgbChannel_dummy4, 8
|
||||
struct_field CgbChannel_size, 0
|
||||
|
||||
#endif @ GUARD_CONSTANTS_M4A_CONSTANTS_INC
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#ifndef GUARD_CONSTANTS_TMS_HMS_INC
|
||||
#define GUARD_CONSTANTS_TMS_HMS_INC
|
||||
|
||||
#include "constants/tms_hms.h"
|
||||
|
||||
/* Expands to:
|
||||
@@ -15,3 +18,5 @@ FOREACH_TM(EQUIV_TM)
|
||||
FOREACH_HM(EQUIV_HM)
|
||||
#undef EQUIV_TM
|
||||
#undef EQUIV_HM
|
||||
|
||||
#endif @ GUARD_CONSTANTS_TMS_HMS_INC
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#include "config.h"
|
||||
#include "constants/battle.h"
|
||||
#include "constants/battle_ai.h"
|
||||
#include "constants/abilities.h"
|
||||
@@ -1926,19 +1927,19 @@ AI_CV_Protect_End:
|
||||
@ BUG: Foresight is only encouraged if the user is Ghost type or
|
||||
@ has high evasion, but should check target instead
|
||||
AI_CV_Foresight:
|
||||
.ifdef BUGFIX
|
||||
#ifdef BUGFIX
|
||||
get_target_type1
|
||||
if_equal TYPE_GHOST, AI_CV_Foresight2
|
||||
get_target_type2
|
||||
if_equal TYPE_GHOST, AI_CV_Foresight2
|
||||
if_stat_level_more_than AI_TARGET, STAT_EVASION, 8, AI_CV_Foresight3
|
||||
.else
|
||||
#else
|
||||
get_user_type1
|
||||
if_equal TYPE_GHOST, AI_CV_Foresight2
|
||||
get_user_type2
|
||||
if_equal TYPE_GHOST, AI_CV_Foresight2
|
||||
if_stat_level_more_than AI_USER, STAT_EVASION, 8, AI_CV_Foresight3
|
||||
.endif
|
||||
#endif
|
||||
score -2
|
||||
goto AI_CV_Foresight_End
|
||||
|
||||
@@ -2183,13 +2184,13 @@ AI_CV_SemiInvulnerable2:
|
||||
if_status2 AI_TARGET, STATUS2_CURSED, AI_CV_SemiInvulnerable_TryEncourage
|
||||
if_status3 AI_TARGET, STATUS3_LEECHSEED, AI_CV_SemiInvulnerable_TryEncourage
|
||||
get_weather
|
||||
.ifdef BUGFIX
|
||||
#ifdef BUGFIX
|
||||
if_equal AI_WEATHER_HAIL, AI_CV_SemiInvulnerable_CheckIceType
|
||||
if_equal AI_WEATHER_SANDSTORM, AI_CV_SemiInvulnerable_CheckSandstormTypes
|
||||
.else
|
||||
#else
|
||||
if_equal AI_WEATHER_HAIL, AI_CV_SemiInvulnerable_CheckSandstormTypes
|
||||
if_equal AI_WEATHER_SANDSTORM, AI_CV_SemiInvulnerable_CheckIceType
|
||||
.endif
|
||||
#endif
|
||||
goto AI_CV_SemiInvulnerable5
|
||||
|
||||
AI_CV_SemiInvulnerable_CheckSandstormTypes:
|
||||
@@ -2254,11 +2255,11 @@ AI_CV_Hail_End:
|
||||
|
||||
@ BUG: Facade score is increased if the target is statused, but should be if the user is
|
||||
AI_CV_Facade:
|
||||
.ifdef BUGFIX
|
||||
#ifdef BUGFIX
|
||||
if_not_status AI_USER, STATUS1_POISON | STATUS1_BURN | STATUS1_PARALYSIS | STATUS1_TOXIC_POISON, AI_CV_Facade_End
|
||||
.else
|
||||
#else
|
||||
if_not_status AI_TARGET, STATUS1_POISON | STATUS1_BURN | STATUS1_PARALYSIS | STATUS1_TOXIC_POISON, AI_CV_Facade_End
|
||||
.endif
|
||||
#endif
|
||||
score +1
|
||||
AI_CV_Facade_End:
|
||||
end
|
||||
@@ -3176,9 +3177,9 @@ AI_HPAware_DiscouragedEffectsWhenTargetLowHP:
|
||||
AI_TrySunnyDayStart:
|
||||
if_target_is_ally AI_TryOnAlly
|
||||
if_not_effect EFFECT_SUNNY_DAY, AI_TrySunnyDayStart_End
|
||||
.ifndef BUGFIX @ funcResult has not been set in this script yet, below call is nonsense
|
||||
#ifndef BUGFIX @ funcResult has not been set in this script yet, below call is nonsense
|
||||
if_equal FALSE, AI_TrySunnyDayStart_End
|
||||
.endif
|
||||
#endif
|
||||
is_first_turn_for AI_USER
|
||||
if_equal FALSE, AI_TrySunnyDayStart_End
|
||||
score +5
|
||||
|
||||
@@ -533,7 +533,7 @@ BattleScript_EffectEvasionDown::
|
||||
setstatchanger STAT_EVASION, 1, TRUE
|
||||
BattleScript_EffectStatDown::
|
||||
attackcanceler
|
||||
jumpifstatus2 BS_TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailedAtkStringPpReduce
|
||||
jumpifstatus2 BS_TARGET, STATUS2_SUBSTITUTE, BattleScript_FailedFromAtkString
|
||||
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
||||
attackstring
|
||||
ppreduce
|
||||
@@ -1216,7 +1216,7 @@ BattleScript_EffectPsywave::
|
||||
|
||||
BattleScript_EffectCounter::
|
||||
attackcanceler
|
||||
counterdamagecalculator BattleScript_ButItFailedAtkStringPpReduce
|
||||
counterdamagecalculator BattleScript_FailedFromAtkString
|
||||
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
||||
attackstring
|
||||
ppreduce
|
||||
@@ -1543,7 +1543,7 @@ BattleScript_EffectEndure::
|
||||
|
||||
BattleScript_EffectSpikes::
|
||||
attackcanceler
|
||||
trysetspikes BattleScript_ButItFailedAtkStringPpReduce
|
||||
trysetspikes BattleScript_FailedFromAtkString
|
||||
attackstring
|
||||
ppreduce
|
||||
attackanimation
|
||||
@@ -1800,7 +1800,7 @@ BattleScript_EffectPsychUp::
|
||||
|
||||
BattleScript_EffectMirrorCoat::
|
||||
attackcanceler
|
||||
mirrorcoatdamagecalculator BattleScript_ButItFailedAtkStringPpReduce
|
||||
mirrorcoatdamagecalculator BattleScript_FailedFromAtkString
|
||||
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
||||
attackstring
|
||||
ppreduce
|
||||
@@ -2047,13 +2047,13 @@ BattleScript_AlreadyAtFullHp::
|
||||
|
||||
BattleScript_EffectFakeOut::
|
||||
attackcanceler
|
||||
jumpifnotfirstturn BattleScript_ButItFailedAtkStringPpReduce
|
||||
jumpifnotfirstturn BattleScript_FailedFromAtkString
|
||||
setmoveeffect MOVE_EFFECT_FLINCH | MOVE_EFFECT_CERTAIN
|
||||
goto BattleScript_EffectHit
|
||||
|
||||
BattleScript_ButItFailedAtkStringPpReduce::
|
||||
BattleScript_FailedFromAtkString::
|
||||
attackstring
|
||||
BattleScript_ButItFailedPpReduce::
|
||||
BattleScript_FailedFromPpReduce::
|
||||
ppreduce
|
||||
BattleScript_ButItFailed::
|
||||
pause B_WAIT_TIME_SHORT
|
||||
@@ -2367,7 +2367,7 @@ BattleScript_EffectWish::
|
||||
BattleScript_EffectAssist::
|
||||
attackcanceler
|
||||
attackstring
|
||||
assistattackselect BattleScript_ButItFailedPpReduce
|
||||
assistattackselect BattleScript_FailedFromPpReduce
|
||||
attackanimation
|
||||
waitanimation
|
||||
setbyte sB_ANIM_TURN, 0
|
||||
@@ -2391,7 +2391,7 @@ BattleScript_EffectSuperpower::
|
||||
|
||||
BattleScript_EffectMagicCoat::
|
||||
attackcanceler
|
||||
trysetmagiccoat BattleScript_ButItFailedAtkStringPpReduce
|
||||
trysetmagiccoat BattleScript_FailedFromAtkString
|
||||
attackstring
|
||||
ppreduce
|
||||
attackanimation
|
||||
@@ -2542,7 +2542,7 @@ BattleScript_EffectGrudge::
|
||||
|
||||
BattleScript_EffectSnatch::
|
||||
attackcanceler
|
||||
trysetsnatch BattleScript_ButItFailedAtkStringPpReduce
|
||||
trysetsnatch BattleScript_FailedFromAtkString
|
||||
attackstring
|
||||
ppreduce
|
||||
attackanimation
|
||||
@@ -3208,7 +3208,7 @@ BattleScript_DamagingWeatherLoop::
|
||||
jumpifword CMP_EQUAL, gBattleMoveDamage, 0, BattleScript_DamagingWeatherLoopIncrement
|
||||
printfromtable gSandStormHailDmgStringIds
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
effectivenesssound
|
||||
hitanimation BS_ATTACKER
|
||||
healthbarupdate BS_ATTACKER
|
||||
@@ -3220,7 +3220,7 @@ BattleScript_DamagingWeatherLoopIncrement::
|
||||
addbyte gBattleCommunication, 1
|
||||
jumpifbytenotequal gBattleCommunication, gBattlersCount, BattleScript_DamagingWeatherLoop
|
||||
BattleScript_DamagingWeatherContinuesEnd::
|
||||
bicword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
bicword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
end2
|
||||
|
||||
BattleScript_SandStormHailEnds::
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#include "config.h"
|
||||
#include "constants/global.h"
|
||||
#include "constants/contest.h"
|
||||
.include "asm/macros.inc"
|
||||
@@ -435,11 +436,11 @@ AI_CGM_BetterWhenAudienceExcited:
|
||||
AI_CGM_BetterWhenAudienceExcited_1stUp:
|
||||
@ BUG: Should be if_appeal_num_eq 0
|
||||
@ 1st up on 1st appeal excitement will always be 0
|
||||
.ifdef BUGFIX
|
||||
#ifdef BUGFIX
|
||||
if_appeal_num_eq 0, AI_CGM_BetterWhenAudienceExcited_1stAppeal
|
||||
.else
|
||||
#else
|
||||
if_appeal_num_not_eq 0, AI_CGM_BetterWhenAudienceExcited_1stAppeal
|
||||
.endif
|
||||
#endif
|
||||
if_excitement_eq 4, AI_CGM_BetterWhenAudienceExcited_1AwayFromMax
|
||||
if_excitement_eq 3, AI_CGM_BetterWhenAudienceExcited_2AwayFromMax
|
||||
end
|
||||
@@ -546,11 +547,11 @@ AI_CGM_TargetMonWithJudgesAttention:
|
||||
end
|
||||
AI_CGM_TargetMonWithJudgesAttention_CheckMon1:
|
||||
if_cannot_participate MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
||||
.ifdef BUGFIX
|
||||
#ifdef BUGFIX
|
||||
if_not_used_combo_starter MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
||||
.else
|
||||
#else
|
||||
if_used_combo_starter MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
||||
.endif
|
||||
#endif
|
||||
if_random_less_than 125, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
||||
score +2
|
||||
if_not_completed_combo MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
||||
@@ -559,11 +560,11 @@ AI_CGM_TargetMonWithJudgesAttention_CheckMon1:
|
||||
AI_CGM_TargetMonWithJudgesAttention_CheckMon2:
|
||||
if_user_order_eq MON_2, AI_CGM_End
|
||||
if_cannot_participate MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
||||
.ifdef BUGFIX
|
||||
#ifdef BUGFIX
|
||||
if_not_used_combo_starter MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
||||
.else
|
||||
#else
|
||||
if_used_combo_starter MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
||||
.endif
|
||||
#endif
|
||||
if_random_less_than 125, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
||||
score +2
|
||||
if_not_completed_combo MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
||||
@@ -572,11 +573,11 @@ AI_CGM_TargetMonWithJudgesAttention_CheckMon2:
|
||||
AI_CGM_TargetMonWithJudgesAttention_CheckMon3:
|
||||
if_user_order_eq MON_3, AI_CGM_End
|
||||
if_cannot_participate MON_3, AI_CGM_End
|
||||
.ifdef BUGFIX
|
||||
#ifdef BUGFIX
|
||||
if_not_used_combo_starter MON_3, AI_CGM_End
|
||||
.else
|
||||
#else
|
||||
if_used_combo_starter MON_3, AI_CGM_End
|
||||
.endif
|
||||
#endif
|
||||
if_random_less_than 125, AI_CGM_End
|
||||
score +2
|
||||
if_not_completed_combo MON_3, AI_CGM_End
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#include "config.h"
|
||||
#include "constants/global.h"
|
||||
#include "constants/apprentice.h"
|
||||
#include "constants/battle.h"
|
||||
|
||||
@@ -15,11 +15,11 @@ BattleFrontier_BattleArenaLobby_EventScript_TurnPlayerNorth::
|
||||
end
|
||||
|
||||
BattleFrontier_BattleArenaLobby_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleArenaLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleArenaLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleArenaLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, BattleFrontier_BattleArenaLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattleArenaLobby_EventScript_LostChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, BattleFrontier_BattleArenaLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleArenaLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleArenaLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_WON, BattleFrontier_BattleArenaLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST, BattleFrontier_BattleArenaLobby_EventScript_LostChallenge
|
||||
end_map_script_table
|
||||
|
||||
BattleFrontier_BattleArenaLobby_EventScript_GetChallengeStatus::
|
||||
@@ -33,7 +33,7 @@ BattleFrontier_BattleArenaLobby_EventScript_QuitWithoutSaving::
|
||||
arena_set ARENA_DATA_WIN_STREAK, 0
|
||||
arena_set ARENA_DATA_WIN_STREAK_ACTIVE, FALSE
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -55,7 +55,7 @@ BattleFrontier_BattleArenaLobby_EventScript_GiveBattlePoints::
|
||||
call BattleFrontier_BattleArenaLobby_EventScript_SaveAfterChallenge
|
||||
msgbox BattleFrontier_BattleArenaLobby_Text_AwaitAnotherChallenge2, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -67,7 +67,7 @@ BattleFrontier_BattleArenaLobby_EventScript_LostChallenge::
|
||||
call BattleFrontier_BattleArenaLobby_EventScript_SaveAfterChallenge
|
||||
msgbox BattleFrontier_BattleArenaLobby_Text_AwaitAnotherChallenge2, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -101,7 +101,7 @@ BattleFrontier_BattleArenaLobby_EventScript_ResumeChallenge::
|
||||
playse SE_SAVE
|
||||
waitse
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto BattleFrontier_BattleArenaLobby_EventScript_EnterChallenge
|
||||
|
||||
BattleFrontier_BattleArenaLobby_EventScript_Attendant::
|
||||
@@ -146,7 +146,7 @@ BattleFrontier_BattleArenaLobby_EventScript_TryEnterChallenge::
|
||||
case MULTI_B_PRESSED, BattleFrontier_BattleArenaLobby_EventScript_LoadPartyAndCancelChallenge
|
||||
|
||||
BattleFrontier_BattleArenaLobby_EventScript_SaveBeforeChallenge::
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
arena_init
|
||||
arena_set ARENA_DATA_WIN_STREAK_ACTIVE, TRUE
|
||||
@@ -156,7 +156,7 @@ BattleFrontier_BattleArenaLobby_EventScript_SaveBeforeChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleArenaLobby_EventScript_CancelChallengeSaveFailed
|
||||
BattleFrontier_BattleArenaLobby_EventScript_EnterChallenge::
|
||||
special SavePlayerParty
|
||||
@@ -167,7 +167,7 @@ BattleFrontier_BattleArenaLobby_EventScript_EnterChallenge::
|
||||
call_if_eq VAR_RESULT, FRONTIER_LVL_50, BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLv50
|
||||
call_if_eq VAR_RESULT, FRONTIER_LVL_OPEN, BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLvOpen
|
||||
warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR, 9, 13
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
|
||||
@@ -21,11 +21,11 @@ BattleFrontier_BattleDomeLobby_EventScript_TurnPlayerNorth::
|
||||
end
|
||||
|
||||
BattleFrontier_BattleDomeLobby_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleDomeLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleDomeLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleDomeLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, BattleFrontier_BattleDomeLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattleDomeLobby_EventScript_LostChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, BattleFrontier_BattleDomeLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleDomeLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleDomeLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_WON, BattleFrontier_BattleDomeLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST, BattleFrontier_BattleDomeLobby_EventScript_LostChallenge
|
||||
end_map_script_table
|
||||
|
||||
BattleFrontier_BattleDomeLobby_EventScript_GetChallengeStatus::
|
||||
@@ -40,7 +40,7 @@ BattleFrontier_BattleDomeLobby_EventScript_QuitWithoutSaving::
|
||||
dome_set DOME_DATA_WIN_STREAK_ACTIVE, FALSE
|
||||
dome_set DOME_DATA_ATTEMPTED_CHALLENGE, TRUE
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -101,7 +101,7 @@ BattleFrontier_BattleDomeLobby_EventScript_RecordBattle::
|
||||
BattleFrontier_BattleDomeLobby_EventScript_EndChallenge::
|
||||
msgbox BattleFrontier_BattleDomeLobby_Text_HopeToSeeYouAgain, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -114,7 +114,7 @@ BattleFrontier_BattleDomeLobby_EventScript_ResumeChallenge::
|
||||
playse SE_SAVE
|
||||
waitse
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto BattleFrontier_BattleDomeLobby_EventScript_EnterChallenge
|
||||
|
||||
BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendant::
|
||||
@@ -173,7 +173,7 @@ BattleFrontier_BattleDomeLobby_EventScript_TryEnterChallenge::
|
||||
case MULTI_B_PRESSED, BattleFrontier_BattleDomeLobby_EventScript_LoadPartyCancelChallenge
|
||||
|
||||
BattleFrontier_BattleDomeLobby_EventScript_SaveBeforeChallenge::
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
dome_init
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING
|
||||
@@ -182,7 +182,7 @@ BattleFrontier_BattleDomeLobby_EventScript_SaveBeforeChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleDomeLobby_EventScript_CancelChallengeSaveFailed
|
||||
dome_inittrainers
|
||||
BattleFrontier_BattleDomeLobby_EventScript_EnterChallenge::
|
||||
@@ -194,7 +194,7 @@ BattleFrontier_BattleDomeLobby_EventScript_EnterChallenge::
|
||||
call BattleFrontier_BattleDomeLobby_EventScript_WalkToDoor
|
||||
special HealPlayerParty
|
||||
warp MAP_BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR, 23, 6
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
|
||||
@@ -16,11 +16,11 @@ BattleFrontier_BattleFactoryLobby_EventScript_TurnPlayerNorth::
|
||||
end
|
||||
|
||||
BattleFrontier_BattleFactoryLobby_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleFactoryLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleFactoryLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleFactoryLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, BattleFrontier_BattleFactoryLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattleFactoryLobby_EventScript_LostChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, BattleFrontier_BattleFactoryLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleFactoryLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleFactoryLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_WON, BattleFrontier_BattleFactoryLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST, BattleFrontier_BattleFactoryLobby_EventScript_LostChallenge
|
||||
end_map_script_table
|
||||
|
||||
BattleFrontier_BattleFactoryLobby_EventScript_GetChallengeStatus::
|
||||
@@ -36,7 +36,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_QuitWithoutSaving::
|
||||
factory_set FACTORY_DATA_WIN_STREAK, 0
|
||||
factory_set FACTORY_DATA_WIN_STREAK_ACTIVE, FALSE
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -92,7 +92,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_RecordBattle::
|
||||
BattleFrontier_BattleFactoryLobby_EventScript_EndRecordBattle::
|
||||
msgbox BattleFrontier_BattleFactoryLobby_Text_LookForwardToNextVisit, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -104,7 +104,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_ResumeChallenge::
|
||||
playse SE_SAVE
|
||||
waitse
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
setvar VAR_0x8006, 2
|
||||
goto BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge
|
||||
|
||||
@@ -152,7 +152,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_TryEnterChallenge::
|
||||
case MULTI_B_PRESSED, BattleFrontier_BattleFactoryLobby_EventScript_LoadPartyAndCancelChallenge
|
||||
|
||||
BattleFrontier_BattleFactoryLobby_EventScript_SaveBeforeChallenge::
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
factory_init
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING
|
||||
factory_set FACTORY_DATA_WIN_STREAK_ACTIVE, TRUE
|
||||
@@ -160,7 +160,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_SaveBeforeChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleFactoryLobby_EventScript_CancelChallengeSaveFailed
|
||||
setvar VAR_0x8006, 0
|
||||
BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge::
|
||||
@@ -173,7 +173,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge::
|
||||
applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryLobby_Movement_PlayerEnterDoor
|
||||
waitmovement 0
|
||||
warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM, 8, 13
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
|
||||
@@ -16,11 +16,11 @@ BattleFrontier_BattlePalaceLobby_EventScript_TurnPlayerNorth::
|
||||
end
|
||||
|
||||
BattleFrontier_BattlePalaceLobby_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePalaceLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePalaceLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePalaceLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, BattleFrontier_BattlePalaceLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattlePalaceLobby_EventScript_LostChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, BattleFrontier_BattlePalaceLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePalaceLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePalaceLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_WON, BattleFrontier_BattlePalaceLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST, BattleFrontier_BattlePalaceLobby_EventScript_LostChallenge
|
||||
end_map_script_table
|
||||
|
||||
BattleFrontier_BattlePalaceLobby_EventScript_GetChallengeStatus::
|
||||
@@ -34,7 +34,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_QuitWithoutSaving::
|
||||
palace_set PALACE_DATA_WIN_STREAK, 0
|
||||
palace_set PALACE_DATA_WIN_STREAK_ACTIVE, FALSE
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -56,7 +56,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_GiveBattlePoints::
|
||||
call BattleFrontier_BattlePalaceLobby_EventScript_SaveAfterChallenge
|
||||
msgbox BattleFrontier_BattlePalaceLobby_Text_ReturnWhenFortified, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -68,7 +68,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_LostChallenge::
|
||||
call BattleFrontier_BattlePalaceLobby_EventScript_SaveAfterChallenge
|
||||
msgbox BattleFrontier_BattlePalaceLobby_Text_ReturnWhenFortified, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -103,7 +103,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_ResumeChallenge::
|
||||
playse SE_SAVE
|
||||
waitse
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto BattleFrontier_BattlePalaceLobby_EventScript_EnterChallenge
|
||||
|
||||
BattleFrontier_BattlePalaceLobby_EventScript_SinglesAttendant::
|
||||
@@ -164,7 +164,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_TryEnterChallenge::
|
||||
case MULTI_B_PRESSED, BattleFrontier_BattlePalaceLobby_EventScript_LoadPartyAndCancelChallenge
|
||||
|
||||
BattleFrontier_BattlePalaceLobby_EventScript_SaveBeforeChallenge::
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
palace_init
|
||||
palace_set PALACE_DATA_WIN_STREAK_ACTIVE, TRUE
|
||||
@@ -174,7 +174,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_SaveBeforeChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePalaceLobby_EventScript_CancelChallengeSaveFailed
|
||||
BattleFrontier_BattlePalaceLobby_EventScript_EnterChallenge::
|
||||
special SavePlayerParty
|
||||
@@ -183,7 +183,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_EnterChallenge::
|
||||
closemessage
|
||||
call BattleFrontier_BattlePalaceLobby_EventScript_WalkToDoor
|
||||
warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR, 8, 13
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@ BattleFrontier_BattlePikeLobby_MapScripts::
|
||||
end_map_scripts
|
||||
|
||||
BattleFrontier_BattlePikeLobby_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePikeLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePikeLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, BattleFrontier_BattlePikeLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattlePikeLobby_EventScript_LostChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, BattleFrontier_BattlePikeLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePikeLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_WON, BattleFrontier_BattlePikeLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST, BattleFrontier_BattlePikeLobby_EventScript_LostChallenge
|
||||
end_map_script_table
|
||||
|
||||
BattleFrontier_BattlePikeLobby_OnWarp:
|
||||
@@ -34,7 +34,7 @@ BattleFrontier_BattlePikeLobby_EventScript_QuitWithoutSaving::
|
||||
pike_set PIKE_DATA_WIN_STREAK, 0
|
||||
pike_set PIKE_DATA_WIN_STREAK_ACTIVE, FALSE
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -67,7 +67,7 @@ BattleFrontier_BattlePikeLobby_EventScript_GiveBattlePoints::
|
||||
waitse
|
||||
msgbox BattleFrontier_BattlePikeLobby_Text_LookForwardToSeeingYou, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -86,7 +86,7 @@ BattleFrontier_BattlePikeLobby_EventScript_LostChallenge::
|
||||
waitse
|
||||
msgbox BattleFrontier_BattlePikeLobby_Text_LookForwardToSeeingYou, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -132,7 +132,7 @@ BattleFrontier_BattlePikeLobby_EventScript_TryEnterChallenge::
|
||||
case MULTI_B_PRESSED, BattleFrontier_BattlePikeLobby_EventScript_LoadPartyAndCancelChallenge
|
||||
|
||||
BattleFrontier_BattlePikeLobby_EventScript_SaveBeforeChallenge::
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_1, 0
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
pike_init
|
||||
@@ -144,7 +144,7 @@ BattleFrontier_BattlePikeLobby_EventScript_SaveBeforeChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
pike_savehelditems
|
||||
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePikeLobby_EventScript_CancelChallengeSaveFailed
|
||||
special SavePlayerParty
|
||||
@@ -156,7 +156,7 @@ BattleFrontier_BattlePikeLobby_EventScript_SaveBeforeChallenge::
|
||||
special HealPlayerParty
|
||||
call BattleFrontier_BattlePike_EventScript_CloseCurtain
|
||||
warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR, 6, 7
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
|
||||
@@ -7,9 +7,9 @@ BattleFrontier_BattlePikeThreePathRoom_MapScripts::
|
||||
end_map_scripts
|
||||
|
||||
BattleFrontier_BattlePikeThreePathRoom_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePikeThreePathRoom_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpToLobby
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePikeThreePathRoom_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, BattleFrontier_BattlePikeThreePathRoom_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpToLobby
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePikeThreePathRoom_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_5, 0, BattleFrontier_BattlePikeThreePathRoom_EventScript_SetHintRoom
|
||||
map_script_2 VAR_TEMP_5, 1, BattleFrontier_BattlePikeThreePathRoom_EventScript_GivePikeQueenHint
|
||||
end_map_script_table
|
||||
@@ -40,7 +40,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_ResumeChallenge::
|
||||
playse SE_SAVE
|
||||
waitse
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
special SavePlayerParty
|
||||
frontier_setpartyorder FRONTIER_PARTY_SIZE
|
||||
msgbox BattleFrontier_BattlePikeThreePathRoom_Text_PleaseEnjoyChallenge, MSGBOX_DEFAULT
|
||||
|
||||
@@ -6,7 +6,7 @@ BattleFrontier_BattlePyramidFloor_MapScripts::
|
||||
|
||||
BattleFrontier_BattlePyramidFloor_OnFrame:
|
||||
map_script_2 VAR_TEMP_D, 1, BattleFrontier_BattlePyramidFloor_EventScript_UpdateLight
|
||||
map_script_2 VAR_TEMP_E, 0, BattleFrontier_BattlePyramidFloor_EventScript_PlayPyramidMusic
|
||||
map_script_2 VAR_TEMP_PLAYING_PYRAMID_MUSIC, 0, BattleFrontier_BattlePyramidFloor_EventScript_PlayPyramidMusic
|
||||
map_script_2 VAR_TEMP_F, 1, BattleFrontier_BattlePyramidFloor_EventScript_ShowMapName
|
||||
end_map_script_table
|
||||
|
||||
@@ -33,13 +33,13 @@ BattleFrontier_BattlePyramidFloor_EventScript_ShowMapName::
|
||||
|
||||
BattleFrontier_BattlePyramidFloor_EventScript_PlayPyramidMusic::
|
||||
playbgm MUS_B_PYRAMID, FALSE
|
||||
setvar VAR_TEMP_E, 1
|
||||
setvar VAR_TEMP_PLAYING_PYRAMID_MUSIC, 1
|
||||
end
|
||||
|
||||
BattleFrontier_BattlePyramidFloor_OnResume:
|
||||
pyramid_setfloorpal
|
||||
frontier_getstatus
|
||||
switch VAR_TEMP_0
|
||||
switch VAR_TEMP_CHALLENGE_STATUS
|
||||
case 0, BattleFrontier_BattlePyramidFloor_EventScript_ReadyChallenge
|
||||
case CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePyramid_EventScript_WarpToLobby
|
||||
case CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePyramidFloor_EventScript_ReadyChallenge
|
||||
|
||||
@@ -17,11 +17,11 @@ BattleFrontier_BattlePyramidLobby_EventScript_TurnPlayerNorth:
|
||||
end
|
||||
|
||||
BattleFrontier_BattlePyramidLobby_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePyramidLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePyramidLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePyramidLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, BattleFrontier_BattlePyramidLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattlePyramidLobby_EventScript_LostChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, BattleFrontier_BattlePyramidLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePyramidLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePyramidLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_WON, BattleFrontier_BattlePyramidLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST, BattleFrontier_BattlePyramidLobby_EventScript_LostChallenge
|
||||
end_map_script_table
|
||||
|
||||
BattleFrontier_BattlePyramidLobby_EventScript_GetChallengeStatus::
|
||||
@@ -38,7 +38,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_QuitWithoutSaving::
|
||||
pyramid_set PYRAMID_DATA_WIN_STREAK, 0
|
||||
pyramid_set PYRAMID_DATA_WIN_STREAK_ACTIVE, FALSE
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -74,7 +74,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_GiveBattlePoints::
|
||||
waitse
|
||||
msgbox BattleFrontier_BattlePyramidLobby_Text_LookForwardToNextChallenge, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -96,7 +96,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_LostChallenge::
|
||||
waitse
|
||||
msgbox BattleFrontier_BattlePyramidLobby_Text_LookForwardToNextChallenge, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -145,7 +145,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_TryEnterChallenge::
|
||||
case MULTI_B_PRESSED, BattleFrontier_BattlePyramidLobby_EventScript_LoadPartyAndCancelChallenge
|
||||
|
||||
BattleFrontier_BattlePyramidLobby_EventScript_SaveBeforeChallenge::
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
pyramid_init
|
||||
pyramid_set PYRAMID_DATA_WIN_STREAK_ACTIVE, TRUE
|
||||
@@ -157,7 +157,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_SaveBeforeChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePyramidLobby_EventScript_CancelChallengeSaveFailed
|
||||
BattleFrontier_BattlePyramidLobby_EventScript_EnterChallenge::
|
||||
special SavePlayerParty
|
||||
@@ -169,7 +169,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_EnterChallenge::
|
||||
setvar VAR_RESULT, 0
|
||||
special HealPlayerParty
|
||||
warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR, 1, 1
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ BattleFrontier_BattlePyramidTop_OnResume:
|
||||
BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus::
|
||||
copyvar VAR_TEMP_C, VAR_RESULT
|
||||
frontier_getstatus
|
||||
switch VAR_TEMP_0
|
||||
switch VAR_TEMP_CHALLENGE_STATUS
|
||||
case 0, BattleFrontier_BattlePyramidTop_EventScript_ReadyChallenge
|
||||
case CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePyramid_EventScript_WarpToLobby
|
||||
case CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePyramidTop_EventScript_ReadyChallenge
|
||||
@@ -43,13 +43,13 @@ BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus::
|
||||
end
|
||||
|
||||
BattleFrontier_BattlePyramidTop_OnFrame:
|
||||
map_script_2 VAR_TEMP_E, 0, BattleFrontier_BattlePyramidTop_EventScript_PlayPyramidMusic
|
||||
map_script_2 VAR_TEMP_PLAYING_PYRAMID_MUSIC, 0, BattleFrontier_BattlePyramidTop_EventScript_PlayPyramidMusic
|
||||
map_script_2 VAR_TEMP_F, 1, BattleFrontier_BattlePyramidTop_EventScript_ShowMapName
|
||||
end_map_script_table
|
||||
|
||||
BattleFrontier_BattlePyramidTop_EventScript_PlayPyramidMusic::
|
||||
playbgm MUS_B_PYRAMID_TOP, FALSE
|
||||
setvar VAR_TEMP_E, 1
|
||||
setvar VAR_TEMP_PLAYING_PYRAMID_MUSIC, 1
|
||||
end
|
||||
|
||||
BattleFrontier_BattlePyramidTop_EventScript_ShowMapName::
|
||||
|
||||
@@ -41,11 +41,11 @@ BattleFrontier_BattleTowerLobby_EventScript_PlayerFaceNorth::
|
||||
end
|
||||
|
||||
BattleFrontier_BattleTowerLobby_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleTowerLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleTowerLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleTowerLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, BattleFrontier_BattleTowerLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattleTowerLobby_EventScript_LostChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, BattleFrontier_BattleTowerLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleTowerLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleTowerLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_WON, BattleFrontier_BattleTowerLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST, BattleFrontier_BattleTowerLobby_EventScript_LostChallenge
|
||||
end_map_script_table
|
||||
|
||||
BattleFrontier_BattleTowerLobby_EventScript_GetChallengeStatus::
|
||||
@@ -60,7 +60,7 @@ BattleFrontier_BattleTowerLobby_EventScript_QuitWithoutSaving::
|
||||
tower_set TOWER_DATA_WIN_STREAK, 0
|
||||
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, FALSE
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
release
|
||||
end
|
||||
|
||||
@@ -94,7 +94,7 @@ BattleFrontier_BattleTowerLobby_EventScript_GiveBattlePoints::
|
||||
BattleFrontier_BattleTowerLobby_EventScript_LookForwardToChallenge::
|
||||
msgbox BattleFrontier_BattleTowerLobby_Text_LookForwardToAnotherChallenge, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
release
|
||||
end
|
||||
|
||||
@@ -113,7 +113,7 @@ BattleFrontier_BattleTowerLobby_EventScript_LostThanksForPlaying::
|
||||
call BattleFrontier_BattleTowerLobby_EventScript_AskSaveBattle
|
||||
msgbox BattleFrontier_BattleTowerLobby_Text_LookForwardToAnotherChallenge, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
release
|
||||
end
|
||||
|
||||
@@ -214,7 +214,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterSinglesChallenge::
|
||||
|
||||
BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeSinglesChallenge::
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
tower_init
|
||||
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, TRUE
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
@@ -222,7 +222,7 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeSinglesChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed
|
||||
incrementgamestat GAME_STAT_ENTERED_BATTLE_TOWER
|
||||
setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, TRUE
|
||||
@@ -277,7 +277,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterDoublesChallenge::
|
||||
|
||||
BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeDoublesChallenge::
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
tower_init
|
||||
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, TRUE
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
@@ -285,7 +285,7 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeDoublesChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed
|
||||
incrementgamestat GAME_STAT_ENTERED_BATTLE_TOWER
|
||||
setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, FALSE
|
||||
@@ -341,7 +341,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterMultisChallenge::
|
||||
|
||||
BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeMultisChallenge::
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
tower_init
|
||||
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, TRUE
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
@@ -349,7 +349,7 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeMultisChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed
|
||||
incrementgamestat GAME_STAT_ENTERED_BATTLE_TOWER
|
||||
setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, FALSE
|
||||
@@ -404,7 +404,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterLinkMultisChallenge::
|
||||
|
||||
BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeLinkMultisChallenge::
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
tower_init
|
||||
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, TRUE
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
@@ -415,18 +415,18 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeLinkMultisChallenge::
|
||||
@ to the flash, but not data in PokemonStorage. The SaveGame script that follows asks the player to do a full save,
|
||||
@ which they can opt out of. As a result the player can save their party and quit without having saved the PC.
|
||||
@ This allows players to clone pokemon and their held items by withdrawing them (or erase them by despositing).
|
||||
.ifndef BUGFIX
|
||||
#ifndef BUGFIX
|
||||
tower_save 0
|
||||
.endif
|
||||
#endif
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed
|
||||
@ GAME_STAT_ENTERED_BATTLE_TOWER should not be incremented here, for two reasons:
|
||||
@ 1. It is incremented again in BattleFrontier_BattleTowerLobby_EventScript_CableLinkSuccessful or BattleFrontier_BattleTowerLobby_EventScript_WirelessLinkSuccessful
|
||||
@ 2. If the player tries to save, but fails, the counter will still be incremented even if the player never enters the tower.
|
||||
.ifndef BUGFIX
|
||||
@ 2. If the player tries to connect, but fails, the counter will still be incremented even if the player never enters the tower.
|
||||
#ifndef BUGFIX
|
||||
incrementgamestat GAME_STAT_ENTERED_BATTLE_TOWER
|
||||
.endif
|
||||
#endif
|
||||
specialvar VAR_RESULT, IsWirelessAdapterConnected
|
||||
goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleTowerLobby_EventScript_TryWirelessLink
|
||||
goto BattleFrontier_BattleTowerLobby_EventScript_TryCableLink
|
||||
@@ -602,7 +602,7 @@ BattleFrontier_BattleTowerLobby_EventScript_WaitForLinkOpponentLoad::
|
||||
call BattleFrontier_BattleTowerLobby_EventScript_ShowYouToBattleRoom
|
||||
clearflag FLAG_CANCEL_BATTLE_ROOM_CHALLENGE
|
||||
warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR, 1, 6
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
|
||||
@@ -20,12 +20,12 @@ BattleFrontier_Lounge7_EventScript_ChooseLeftTutorMove::
|
||||
message BattleFrontier_Lounge7_Text_TeachWhichMove
|
||||
waitmessage
|
||||
special ShowBattlePointsWindow
|
||||
setvar VAR_TEMP_E, 0
|
||||
setvar VAR_TEMP_FRONTIER_TUTOR_ID, 0
|
||||
setvar VAR_0x8004, SCROLL_MULTI_BF_MOVE_TUTOR_1
|
||||
setvar VAR_0x8006, 0
|
||||
special ShowScrollableMultichoice
|
||||
waitstate
|
||||
copyvar VAR_TEMP_D, VAR_RESULT
|
||||
copyvar VAR_TEMP_FRONTIER_TUTOR_SELECTION, VAR_RESULT
|
||||
switch VAR_RESULT
|
||||
case 0, BattleFrontier_Lounge7_EventScript_Softboiled
|
||||
case 1, BattleFrontier_Lounge7_EventScript_SeismicToss
|
||||
@@ -44,12 +44,12 @@ BattleFrontier_Lounge7_EventScript_ChooseLeftTutorMove::
|
||||
BattleFrontier_Lounge7_EventScript_ChooseNewLeftTutorMove::
|
||||
message BattleFrontier_Lounge7_Text_TeachWhichMove
|
||||
waitmessage
|
||||
setvar VAR_TEMP_E, 0
|
||||
setvar VAR_TEMP_FRONTIER_TUTOR_ID, 0
|
||||
setvar VAR_0x8004, SCROLL_MULTI_BF_MOVE_TUTOR_1
|
||||
setvar VAR_0x8006, 1
|
||||
special ShowScrollableMultichoice
|
||||
waitstate
|
||||
copyvar VAR_TEMP_D, VAR_RESULT
|
||||
copyvar VAR_TEMP_FRONTIER_TUTOR_SELECTION, VAR_RESULT
|
||||
switch VAR_RESULT
|
||||
case 0, BattleFrontier_Lounge7_EventScript_Softboiled
|
||||
case 1, BattleFrontier_Lounge7_EventScript_SeismicToss
|
||||
@@ -134,12 +134,12 @@ BattleFrontier_Lounge7_EventScript_ChooseRightTutorMove::
|
||||
message BattleFrontier_Lounge7_Text_TeachWhichMove
|
||||
waitmessage
|
||||
special ShowBattlePointsWindow
|
||||
setvar VAR_TEMP_E, 1
|
||||
setvar VAR_TEMP_FRONTIER_TUTOR_ID, 1
|
||||
setvar VAR_0x8004, SCROLL_MULTI_BF_MOVE_TUTOR_2
|
||||
setvar VAR_0x8006, 0
|
||||
special ShowScrollableMultichoice
|
||||
waitstate
|
||||
copyvar VAR_TEMP_D, VAR_RESULT
|
||||
copyvar VAR_TEMP_FRONTIER_TUTOR_SELECTION, VAR_RESULT
|
||||
switch VAR_RESULT
|
||||
case 0, BattleFrontier_Lounge7_EventScript_DefenseCurl
|
||||
case 1, BattleFrontier_Lounge7_EventScript_Snore
|
||||
@@ -158,12 +158,12 @@ BattleFrontier_Lounge7_EventScript_ChooseRightTutorMove::
|
||||
BattleFrontier_Lounge7_EventScript_ChooseNewRightTutorMove::
|
||||
message BattleFrontier_Lounge7_Text_TeachWhichMove
|
||||
waitmessage
|
||||
setvar VAR_TEMP_E, 1
|
||||
setvar VAR_TEMP_FRONTIER_TUTOR_ID, 1
|
||||
setvar VAR_0x8004, SCROLL_MULTI_BF_MOVE_TUTOR_2
|
||||
setvar VAR_0x8006, 1
|
||||
special ShowScrollableMultichoice
|
||||
waitstate
|
||||
copyvar VAR_TEMP_D, VAR_RESULT
|
||||
copyvar VAR_TEMP_FRONTIER_TUTOR_SELECTION, VAR_RESULT
|
||||
switch VAR_RESULT
|
||||
case 0, BattleFrontier_Lounge7_EventScript_DefenseCurl
|
||||
case 1, BattleFrontier_Lounge7_EventScript_Snore
|
||||
@@ -243,11 +243,11 @@ BattleFrontier_Lounge7_EventScript_CancelChooseMon::
|
||||
|
||||
@ VAR_0x8008 is the price
|
||||
@ VAR_TEMP_C is the scroll multichoice ID
|
||||
@ VAR_TEMP_D is the move selection
|
||||
@ VAR_TEMP_E is which move tutor was spoken to
|
||||
@ VAR_TEMP_FRONTIER_TUTOR_SELECTION is the move selection
|
||||
@ VAR_TEMP_FRONTIER_TUTOR_ID is which move tutor was spoken to
|
||||
BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection::
|
||||
copyvar VAR_0x8004, VAR_TEMP_D
|
||||
copyvar VAR_0x8005, VAR_TEMP_E
|
||||
copyvar VAR_0x8004, VAR_TEMP_FRONTIER_TUTOR_SELECTION
|
||||
copyvar VAR_0x8005, VAR_TEMP_FRONTIER_TUTOR_ID
|
||||
special BufferBattleFrontierTutorMoveName
|
||||
buffernumberstring STR_VAR_2, VAR_0x8008
|
||||
copyvar VAR_0x8004, VAR_TEMP_C
|
||||
@@ -275,7 +275,7 @@ BattleFrontier_Lounge7_EventScript_TeachTutorMove::
|
||||
end
|
||||
|
||||
BattleFrontier_Lounge7_EventScript_ChooseNewMove::
|
||||
goto_if_eq VAR_TEMP_E, 0, BattleFrontier_Lounge7_EventScript_ChooseNewLeftTutorMove
|
||||
goto_if_eq VAR_TEMP_FRONTIER_TUTOR_ID, 0, BattleFrontier_Lounge7_EventScript_ChooseNewLeftTutorMove
|
||||
goto BattleFrontier_Lounge7_EventScript_ChooseNewRightTutorMove
|
||||
end
|
||||
|
||||
|
||||
@@ -15,11 +15,11 @@ FallarborTown_BattleTentLobby_EventScript_TurnPlayerNorth::
|
||||
end
|
||||
|
||||
FallarborTown_BattleTentLobby_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, FallarborTown_BattleTentLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, FallarborTown_BattleTentLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, FallarborTown_BattleTentLobby_EventScript_LostChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, FallarborTown_BattleTentLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_PAUSED, FallarborTown_BattleTentLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_WON, FallarborTown_BattleTentLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST, FallarborTown_BattleTentLobby_EventScript_LostChallenge
|
||||
end_map_script_table
|
||||
|
||||
FallarborTown_BattleTentLobby_EventScript_GetChallengeStatus::
|
||||
@@ -31,7 +31,7 @@ FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving::
|
||||
msgbox FallarborTown_BattleTentLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
|
||||
releaseall
|
||||
end
|
||||
@@ -59,7 +59,7 @@ FallarborTown_BattleTentLobby_EventScript_GivePrize::
|
||||
waitfanfare
|
||||
msgbox FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge2, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -67,7 +67,7 @@ FallarborTown_BattleTentLobby_EventScript_NoRoomForPrize::
|
||||
msgbox FallarborTown_BattleTentLobby_Text_BagFullReturnForPrize, MSGBOX_DEFAULT
|
||||
waitmessage
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -87,7 +87,7 @@ FallarborTown_BattleTentLobby_EventScript_LostChallenge::
|
||||
waitse
|
||||
msgbox FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge2, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -99,7 +99,7 @@ FallarborTown_BattleTentLobby_EventScript_ResumeChallenge::
|
||||
playse SE_SAVE
|
||||
waitse
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto FallarborTown_BattleTentLobby_EventScript_EnterChallenge
|
||||
|
||||
FallarborTown_BattleTentLobby_EventScript_Attendant::
|
||||
@@ -140,7 +140,7 @@ FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge::
|
||||
case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge
|
||||
|
||||
FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge::
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
fallarbortent_init
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING
|
||||
@@ -149,7 +149,7 @@ FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, FallarborTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed
|
||||
FallarborTown_BattleTentLobby_EventScript_EnterChallenge::
|
||||
special SavePlayerParty
|
||||
@@ -158,7 +158,7 @@ FallarborTown_BattleTentLobby_EventScript_EnterChallenge::
|
||||
closemessage
|
||||
call FallarborTown_BattleTentLobby_EventScript_WalkToDoor
|
||||
warp MAP_FALLARBOR_TOWN_BATTLE_TENT_CORRIDOR, 2, 7
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ FortreeCity_Gym_OnWarp:
|
||||
map_script_2 VAR_TEMP_0, VAR_TEMP_0, FortreeCity_Gym_EventScript_InitRotatingGates
|
||||
end_map_script_table
|
||||
|
||||
@ NOTE: This rotating gate puzzle makes use of VAR_TEMP_0 - VAR_TEMP_3
|
||||
FortreeCity_Gym_EventScript_InitRotatingGates::
|
||||
special RotatingGate_InitPuzzleAndGraphics
|
||||
end
|
||||
|
||||
@@ -51,10 +51,10 @@ IslandCave_EventScript_OpenRegiEntrance::
|
||||
|
||||
IslandCave_EventScript_CaveEntranceMiddle::
|
||||
lockall
|
||||
call_if_set FLAG_TEMP_3, IslandCave_EventScript_ClearSteps
|
||||
call_if_set FLAG_TEMP_REGICE_PUZZLE_FAILED, IslandCave_EventScript_ClearSteps
|
||||
goto_if_set FLAG_SYS_BRAILLE_REGICE_COMPLETED, IslandCave_EventScript_BigHoleInWall
|
||||
braillemessage IslandCave_Braille_RunLapAroundWall
|
||||
setflag FLAG_TEMP_2
|
||||
setflag FLAG_TEMP_REGICE_PUZZLE_STARTED
|
||||
special ShouldDoBrailleRegicePuzzle
|
||||
goto IslandCave_EventScript_CloseBrailleMsg
|
||||
end
|
||||
@@ -66,10 +66,10 @@ IslandCave_EventScript_BigHoleInWall::
|
||||
|
||||
IslandCave_EventScript_CaveEntranceSide::
|
||||
lockall
|
||||
call_if_set FLAG_TEMP_3, IslandCave_EventScript_ClearSteps
|
||||
call_if_set FLAG_TEMP_REGICE_PUZZLE_FAILED, IslandCave_EventScript_ClearSteps
|
||||
braillemessage IslandCave_Braille_RunLapAroundWall
|
||||
goto_if_set FLAG_SYS_BRAILLE_REGICE_COMPLETED, IslandCave_EventScript_CloseBrailleMsg
|
||||
setflag FLAG_TEMP_2
|
||||
setflag FLAG_TEMP_REGICE_PUZZLE_STARTED
|
||||
special ShouldDoBrailleRegicePuzzle
|
||||
goto IslandCave_EventScript_CloseBrailleMsg
|
||||
end
|
||||
@@ -84,7 +84,7 @@ IslandCave_EventScript_ClearSteps::
|
||||
setvar VAR_REGICE_STEPS_1, 0
|
||||
setvar VAR_REGICE_STEPS_2, 0
|
||||
setvar VAR_REGICE_STEPS_3, 0
|
||||
clearflag FLAG_TEMP_3
|
||||
clearflag FLAG_TEMP_REGICE_PUZZLE_FAILED
|
||||
return
|
||||
|
||||
IslandCave_EventScript_Regice::
|
||||
|
||||
@@ -339,7 +339,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime::
|
||||
|
||||
LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil::
|
||||
bufferspeciesname STR_VAR_1, SPECIES_CYNDAQUIL
|
||||
setvar VAR_TEMP_1, SPECIES_CYNDAQUIL
|
||||
setvar VAR_TEMP_TRANSFERRED_SPECIES, SPECIES_CYNDAQUIL
|
||||
givemon SPECIES_CYNDAQUIL, 5
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC
|
||||
@@ -380,7 +380,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil::
|
||||
|
||||
LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile::
|
||||
bufferspeciesname STR_VAR_1, SPECIES_TOTODILE
|
||||
setvar VAR_TEMP_1, SPECIES_TOTODILE
|
||||
setvar VAR_TEMP_TRANSFERRED_SPECIES, SPECIES_TOTODILE
|
||||
givemon SPECIES_TOTODILE, 5
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC
|
||||
@@ -421,7 +421,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile::
|
||||
|
||||
LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita::
|
||||
bufferspeciesname STR_VAR_1, SPECIES_CHIKORITA
|
||||
setvar VAR_TEMP_1, SPECIES_CHIKORITA
|
||||
setvar VAR_TEMP_TRANSFERRED_SPECIES, SPECIES_CHIKORITA
|
||||
givemon SPECIES_CHIKORITA, 5
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC
|
||||
|
||||
@@ -229,11 +229,11 @@ MossdeepCity_SpaceCenter_1F_EventScript_Grunt2::
|
||||
copyobjectxytoperm LOCALID_STAIR_GRUNT
|
||||
switch VAR_FACING
|
||||
case DIR_WEST, MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsWest
|
||||
#ifdef BUGFIX
|
||||
#ifdef BUGFIX
|
||||
case DIR_EAST, MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast
|
||||
#else
|
||||
#else
|
||||
case DIR_WEST, MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast
|
||||
#endif
|
||||
#endif
|
||||
applymovement LOCALID_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairs
|
||||
waitmovement 0
|
||||
setvar VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 2
|
||||
|
||||
@@ -85,7 +85,7 @@ MossdeepCity_StevensHouse_EventScript_LeaveBeldum::
|
||||
end
|
||||
|
||||
MossdeepCity_StevensHouse_EventScript_GiveBeldum::
|
||||
setvar VAR_TEMP_1, SPECIES_BELDUM
|
||||
setvar VAR_TEMP_TRANSFERRED_SPECIES, SPECIES_BELDUM
|
||||
givemon SPECIES_BELDUM, 5
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, MossdeepCity_StevensHouse_EventScript_SendBeldumParty
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, MossdeepCity_StevensHouse_EventScript_SendBeldumPC
|
||||
|
||||
@@ -11,6 +11,7 @@ Route110_TrickHousePuzzle6_OnWarp:
|
||||
map_script_2 VAR_TEMP_0, VAR_TEMP_0, Route110_TrickHousePuzzle6_EventScript_InitPuzzle
|
||||
end_map_script_table
|
||||
|
||||
@ NOTE: This rotating gate puzzle makes use of VAR_TEMP_0 - VAR_TEMP_5
|
||||
Route110_TrickHousePuzzle6_EventScript_InitPuzzle::
|
||||
special RotatingGate_InitPuzzleAndGraphics
|
||||
end
|
||||
|
||||
@@ -88,7 +88,7 @@ Route119_WeatherInstitute_2F_EventScript_ShellyDefeated::
|
||||
|
||||
Route119_WeatherInstitute_2F_EventScript_ReceiveCastform::
|
||||
msgbox Route119_WeatherInstitute_2F_Text_ThanksPleaseTakePokemon, MSGBOX_DEFAULT
|
||||
setvar VAR_TEMP_1, SPECIES_CASTFORM
|
||||
setvar VAR_TEMP_TRANSFERRED_SPECIES, SPECIES_CASTFORM
|
||||
givemon SPECIES_CASTFORM, 25, ITEM_MYSTIC_WATER
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, Route119_WeatherInstitute_2F_EventScript_ReceiveCastformParty
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, Route119_WeatherInstitute_2F_EventScript_ReceiveCastformPC
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
"trainer_type": "TRAINER_TYPE_NONE",
|
||||
"trainer_sight_or_berry_tree_id": "BERRY_TREE_ROUTE_130_LIECHI",
|
||||
"script": "BerryTreeScript",
|
||||
"flag": "FLAG_TEMP_11"
|
||||
"flag": "FLAG_TEMP_HIDE_MIRAGE_ISLAND_BERRY_TREE"
|
||||
},
|
||||
{
|
||||
"graphics_id": "OBJ_EVENT_GFX_SWIMMER_M",
|
||||
|
||||
@@ -6,7 +6,8 @@ Route130_OnTransition:
|
||||
call_if_ge VAR_SOOTOPOLIS_CITY_STATE, 4, Route130_EventScript_CheckSetAbnormalWeather
|
||||
specialvar VAR_RESULT, IsMirageIslandPresent
|
||||
goto_if_eq VAR_RESULT, TRUE, Route130_EventScript_SetMirageIslandLayout
|
||||
setflag FLAG_TEMP_11
|
||||
@ Mirage Island isn't currently visible, hide any objects on the island. Only the first flag is actually associated with anything.
|
||||
setflag FLAG_TEMP_HIDE_MIRAGE_ISLAND_BERRY_TREE
|
||||
setflag FLAG_TEMP_12
|
||||
setflag FLAG_TEMP_13
|
||||
setflag FLAG_TEMP_14
|
||||
|
||||
@@ -144,7 +144,7 @@ RustboroCity_DevonCorp_2F_EventScript_AnorithReady::
|
||||
end
|
||||
|
||||
RustboroCity_DevonCorp_2F_EventScript_ReceiveLileep::
|
||||
setvar VAR_TEMP_1, SPECIES_LILEEP
|
||||
setvar VAR_TEMP_TRANSFERRED_SPECIES, SPECIES_LILEEP
|
||||
givemon SPECIES_LILEEP, 20
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepPC
|
||||
@@ -189,7 +189,7 @@ RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep::
|
||||
end
|
||||
|
||||
RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorith::
|
||||
setvar VAR_TEMP_1, SPECIES_ANORITH
|
||||
setvar VAR_TEMP_TRANSFERRED_SPECIES, SPECIES_ANORITH
|
||||
givemon SPECIES_ANORITH, 20
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty
|
||||
goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithPC
|
||||
|
||||
@@ -33,9 +33,9 @@ ShoalCave_LowTideEntranceRoom_EventScript_ShellBellExpert::
|
||||
removeitem ITEM_SHOAL_SALT, 4
|
||||
removeitem ITEM_SHOAL_SHELL, 4
|
||||
giveitem ITEM_SHELL_BELL
|
||||
goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull
|
||||
goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull @ Never FALSE, we already made sure there will be room in the bag.
|
||||
msgbox ShoalCave_LowTideEntranceRoom_Text_ExplainShellBell, MSGBOX_DEFAULT
|
||||
setflag FLAG_TEMP_2
|
||||
setflag FLAG_TEMP_2 @ Not read. Perhaps meant to stop him from re-explaining the Shell Bell if multiple are received in one sitting.
|
||||
release
|
||||
end
|
||||
|
||||
|
||||
@@ -15,11 +15,11 @@ SlateportCity_BattleTentLobby_EventScript_TurnPlayerNorth::
|
||||
end
|
||||
|
||||
SlateportCity_BattleTentLobby_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, SlateportCity_BattleTentLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, SlateportCity_BattleTentLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, SlateportCity_BattleTentLobby_EventScript_LostChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, SlateportCity_BattleTentLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_PAUSED, SlateportCity_BattleTentLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_WON, SlateportCity_BattleTentLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST, SlateportCity_BattleTentLobby_EventScript_LostChallenge
|
||||
end_map_script_table
|
||||
|
||||
SlateportCity_BattleTentLobby_EventScript_GetChallengeStatus::
|
||||
@@ -31,7 +31,7 @@ SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving::
|
||||
msgbox SlateportCity_BattleTentLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
|
||||
releaseall
|
||||
end
|
||||
@@ -73,7 +73,7 @@ SlateportCity_BattleTentLobby_EventScript_LostChallenge::
|
||||
SlateportCity_BattleTentLobby_EventScript_EndGivePrize::
|
||||
msgbox SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -85,7 +85,7 @@ SlateportCity_BattleTentLobby_EventScript_ResumeChallenge::
|
||||
playse SE_SAVE
|
||||
waitse
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
setvar VAR_0x8006, 2
|
||||
goto SlateportCity_BattleTentLobby_EventScript_EnterChallenge
|
||||
|
||||
@@ -117,7 +117,7 @@ SlateportCity_BattleTentLobby_EventScript_TryEnterChallenge::
|
||||
case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_LoadPartyCancelChallenge
|
||||
|
||||
SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge::
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
slateporttent_init
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING
|
||||
@@ -125,7 +125,7 @@ SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, SlateportCity_BattleTentLobby_EventScript_CancelChallengeSaveFailed
|
||||
setvar VAR_0x8006, 0
|
||||
SlateportCity_BattleTentLobby_EventScript_EnterChallenge::
|
||||
@@ -133,7 +133,7 @@ SlateportCity_BattleTentLobby_EventScript_EnterChallenge::
|
||||
closemessage
|
||||
call SlateportCity_BattleTentLobby_EventScript_WalkToDoor
|
||||
warp MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR, 2, 7
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
|
||||
@@ -15,11 +15,11 @@ VerdanturfTown_BattleTentLobby_EventScript_TurnPlayerNorth::
|
||||
end
|
||||
|
||||
VerdanturfTown_BattleTentLobby_OnFrame:
|
||||
map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, VerdanturfTown_BattleTentLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, VerdanturfTown_BattleTentLobby_EventScript_LostChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, 0, VerdanturfTown_BattleTentLobby_EventScript_GetChallengeStatus
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING, VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_PAUSED, VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_WON, VerdanturfTown_BattleTentLobby_EventScript_WonChallenge
|
||||
map_script_2 VAR_TEMP_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST, VerdanturfTown_BattleTentLobby_EventScript_LostChallenge
|
||||
end_map_script_table
|
||||
|
||||
VerdanturfTown_BattleTentLobby_EventScript_GetChallengeStatus::
|
||||
@@ -31,7 +31,7 @@ VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving::
|
||||
msgbox BattleFrontier_BattlePalaceLobby_Text_FailedToSaveBeforeEndingChallenge, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
|
||||
releaseall
|
||||
end
|
||||
@@ -59,7 +59,7 @@ VerdanturfTown_BattleTentLobby_EventScript_GivePrize::
|
||||
waitfanfare
|
||||
msgbox VerdanturfTown_BattleTentLobby_Text_ReturnFortified, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -67,7 +67,7 @@ VerdanturfTown_BattleTentLobby_EventScript_NoRoomForPrize::
|
||||
msgbox BattleFrontier_BattlePalaceLobby_Text_NoSpaceForPrize, MSGBOX_DEFAULT
|
||||
waitmessage
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -87,7 +87,7 @@ VerdanturfTown_BattleTentLobby_EventScript_LostChallenge::
|
||||
waitse
|
||||
msgbox VerdanturfTown_BattleTentLobby_Text_ReturnFortified, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
releaseall
|
||||
end
|
||||
|
||||
@@ -100,7 +100,7 @@ VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge::
|
||||
playse SE_SAVE
|
||||
waitse
|
||||
frontier_set FRONTIER_DATA_PAUSED, FALSE
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge
|
||||
|
||||
VerdanturfTown_BattleTentLobby_EventScript_Attendant::
|
||||
@@ -141,7 +141,7 @@ VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge::
|
||||
case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge
|
||||
|
||||
VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge::
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
verdanturftent_init
|
||||
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING
|
||||
@@ -150,7 +150,7 @@ VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge::
|
||||
closemessage
|
||||
delay 2
|
||||
call Common_EventScript_SaveGame
|
||||
setvar VAR_TEMP_0, 255
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 255
|
||||
goto_if_eq VAR_RESULT, 0, VerdanturfTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed
|
||||
VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge::
|
||||
special SavePlayerParty
|
||||
@@ -159,7 +159,7 @@ VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge::
|
||||
closemessage
|
||||
call VerdanturfTown_BattleTentLobby_EventScript_WalkToDoor
|
||||
warp MAP_VERDANTURF_TOWN_BATTLE_TENT_CORRIDOR, 2, 7
|
||||
setvar VAR_TEMP_0, 0
|
||||
setvar VAR_TEMP_CHALLENGE_STATUS, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
|
||||
@@ -743,37 +743,36 @@ EventScript_TradeCenter_Chair3::
|
||||
waitstate
|
||||
end
|
||||
|
||||
@ VAR_TEMP_1 for below scripts set by ReceiveGiftItem
|
||||
EventScript_RecordCenter_Spot0::
|
||||
setvar VAR_0x8005, 0
|
||||
special RecordMixingPlayerSpotTriggered
|
||||
waitstate
|
||||
goto_if_ne VAR_TEMP_1, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem
|
||||
goto_if_ne VAR_TEMP_RECORD_MIX_GIFT_ITEM, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem
|
||||
end
|
||||
|
||||
EventScript_RecordCenter_Spot1::
|
||||
setvar VAR_0x8005, 1
|
||||
special RecordMixingPlayerSpotTriggered
|
||||
waitstate
|
||||
goto_if_ne VAR_TEMP_1, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem
|
||||
goto_if_ne VAR_TEMP_RECORD_MIX_GIFT_ITEM, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem
|
||||
end
|
||||
|
||||
EventScript_RecordCenter_Spot2::
|
||||
setvar VAR_0x8005, 2
|
||||
special RecordMixingPlayerSpotTriggered
|
||||
waitstate
|
||||
goto_if_ne VAR_TEMP_1, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem
|
||||
goto_if_ne VAR_TEMP_RECORD_MIX_GIFT_ITEM, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem
|
||||
end
|
||||
|
||||
EventScript_RecordCenter_Spot3::
|
||||
setvar VAR_0x8005, 3
|
||||
special RecordMixingPlayerSpotTriggered
|
||||
waitstate
|
||||
goto_if_ne VAR_TEMP_1, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem
|
||||
goto_if_ne VAR_TEMP_RECORD_MIX_GIFT_ITEM, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem
|
||||
end
|
||||
|
||||
RecordCorner_EventScript_ReceivedGiftItem::
|
||||
bufferitemname STR_VAR_2, VAR_TEMP_1
|
||||
bufferitemname STR_VAR_2, VAR_TEMP_RECORD_MIX_GIFT_ITEM
|
||||
message RecordCorner_Text_PlayerSentOverOneX
|
||||
waitmessage
|
||||
waitbuttonpress
|
||||
@@ -814,7 +813,7 @@ TradeCenter_EventScript_Attendant::
|
||||
end
|
||||
|
||||
RecordCorner_EventScript_Attendant::
|
||||
goto_if_ne VAR_TEMP_0, 0, RecordCorner_EventScript_AlreadyMixed
|
||||
goto_if_ne VAR_TEMP_MIXED_RECORDS, 0, RecordCorner_EventScript_AlreadyMixed
|
||||
special Script_FacePlayer
|
||||
message RecordCorner_Text_TakeSeatAndWait
|
||||
waitmessage
|
||||
|
||||
@@ -202,7 +202,7 @@ GabbyAndTy_EventScript_FirstInterview::
|
||||
call_if_eq VAR_FACING, DIR_NORTH, GabbyAndTy_EventScript_FacePlayerNorth
|
||||
call_if_eq VAR_FACING, DIR_SOUTH, GabbyAndTy_EventScript_FacePlayerSouth
|
||||
call_if_eq VAR_FACING, DIR_EAST, GabbyAndTy_EventScript_FacePlayerEast
|
||||
goto_if_set FLAG_TEMP_1, GabbyAndTy_EventScript_KeepingAnEyeOutForYou
|
||||
goto_if_set FLAG_TEMP_SKIP_GABBY_INTERVIEW, GabbyAndTy_EventScript_KeepingAnEyeOutForYou
|
||||
msgbox GabbyAndTy_Text_WhoAreYouInterview, MSGBOX_YESNO
|
||||
goto GabbyAndTy_EventScript_Interview
|
||||
end
|
||||
@@ -230,7 +230,7 @@ GabbyAndTy_EventScript_RequestInterview::
|
||||
call_if_eq VAR_FACING, DIR_NORTH, GabbyAndTy_EventScript_FacePlayerNorth
|
||||
call_if_eq VAR_FACING, DIR_SOUTH, GabbyAndTy_EventScript_FacePlayerSouth
|
||||
call_if_eq VAR_FACING, DIR_EAST, GabbyAndTy_EventScript_FacePlayerEast
|
||||
goto_if_set FLAG_TEMP_1, GabbyAndTy_EventScript_KeepingAnEyeOutForYou
|
||||
goto_if_set FLAG_TEMP_SKIP_GABBY_INTERVIEW, GabbyAndTy_EventScript_KeepingAnEyeOutForYou
|
||||
specialvar VAR_RESULT, GabbyAndTyGetLastQuote
|
||||
goto_if_eq VAR_RESULT, 0, GabbyAndTy_EventScript_DidntInterviewLastTime
|
||||
msgbox GabbyAndTy_Text_QuoteFromLastInterview, MSGBOX_DEFAULT
|
||||
@@ -295,13 +295,13 @@ GabbyAndTy_EventScript_Interview::
|
||||
goto_if_eq VAR_RESULT, 0, GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut
|
||||
msgbox GabbyAndTy_Text_PerfectWellBeSeeingYou, MSGBOX_DEFAULT
|
||||
special GabbyAndTyAfterInterview
|
||||
setflag FLAG_TEMP_1
|
||||
setflag FLAG_TEMP_SKIP_GABBY_INTERVIEW
|
||||
release
|
||||
end
|
||||
|
||||
GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut::
|
||||
msgbox GabbyAndTy_Text_DontGiveUpKeepingEyeOut, MSGBOX_DEFAULT
|
||||
setflag FLAG_TEMP_1
|
||||
setflag FLAG_TEMP_SKIP_GABBY_INTERVIEW
|
||||
release
|
||||
end
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ Common_EventScript_NameReceivedBoxMon::
|
||||
|
||||
Common_EventScript_TransferredToPC::
|
||||
bufferboxname STR_VAR_1, VAR_PC_BOX_TO_SEND_MON
|
||||
bufferspeciesname STR_VAR_2, VAR_TEMP_1
|
||||
bufferspeciesname STR_VAR_2, VAR_TEMP_TRANSFERRED_SPECIES
|
||||
call_if_unset FLAG_SYS_PC_LANETTE, EventScript_TransferredSomeonesPC
|
||||
call_if_set FLAG_SYS_PC_LANETTE, EventScript_TransferredLanettesPC
|
||||
return
|
||||
|
||||
@@ -13,9 +13,9 @@ TrainerHill_OnWarp:
|
||||
|
||||
TrainerHill_1F_EventScript_DummyOnWarp::
|
||||
setvar VAR_TEMP_3, 1
|
||||
.ifdef BUGFIX
|
||||
#ifdef BUGFIX
|
||||
end @ Missing end. By chance, the next byte (0x02 of VAR_TEMP_2) is also the id for the end cmd
|
||||
.endif
|
||||
#endif
|
||||
|
||||
TrainerHill_OnFrame:
|
||||
map_script_2 VAR_TEMP_2, 0, TrainerHill_1F_EventScript_DummyWarpToEntranceCounter
|
||||
|
||||
@@ -298,7 +298,7 @@ u8 *ConvertIntToHexStringN(u8 *dest, s32 value, enum StringConvertMode mode, u8
|
||||
|
||||
if (state == WRITING_DIGITS)
|
||||
{
|
||||
char *out = dest++;
|
||||
u8 *out = dest++;
|
||||
|
||||
if (digit <= 0xF)
|
||||
c = sDigits[digit];
|
||||
@@ -309,7 +309,7 @@ u8 *ConvertIntToHexStringN(u8 *dest, s32 value, enum StringConvertMode mode, u8
|
||||
}
|
||||
else if (digit != 0 || powerOfSixteen == 1)
|
||||
{
|
||||
char *out;
|
||||
u8 *out;
|
||||
state = WRITING_DIGITS;
|
||||
out = dest++;
|
||||
|
||||
|
||||
@@ -554,8 +554,7 @@ void DecompressGlyphTile(const void *src_, void *dest_)
|
||||
*(dest++) = ((sFontHalfRowLookupTable[sFontHalfRowOffsets[temp & 0xFF]]) << 16) | (sFontHalfRowLookupTable[sFontHalfRowOffsets[temp >> 8]]);
|
||||
}
|
||||
|
||||
// Unused
|
||||
static u8 GetLastTextColor(u8 colorType)
|
||||
static u8 UNUSED GetLastTextColor(u8 colorType)
|
||||
{
|
||||
switch (colorType)
|
||||
{
|
||||
@@ -1224,8 +1223,7 @@ static u16 RenderText(struct TextPrinter *textPrinter)
|
||||
return RENDER_FINISH;
|
||||
}
|
||||
|
||||
// Unused
|
||||
static u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing)
|
||||
static u32 UNUSED GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing)
|
||||
{
|
||||
int i;
|
||||
u8 width;
|
||||
|
||||
@@ -411,7 +411,7 @@ void BlitBitmapRectToWindow(u8 windowId, const u8 *pixels, u16 srcX, u16 srcY, u
|
||||
BlitBitmapRect4Bit(&sourceRect, &destRect, srcX, srcY, destX, destY, rectWidth, rectHeight, 0);
|
||||
}
|
||||
|
||||
static void BlitBitmapRectToWindowWithColorKey(u8 windowId, const u8 *pixels, u16 srcX, u16 srcY, u16 srcWidth, int srcHeight, u16 destX, u16 destY, u16 rectWidth, u16 rectHeight, u8 colorKey)
|
||||
static void UNUSED BlitBitmapRectToWindowWithColorKey(u8 windowId, const u8 *pixels, u16 srcX, u16 srcY, u16 srcWidth, int srcHeight, u16 destX, u16 destY, u16 rectWidth, u16 rectHeight, u8 colorKey)
|
||||
{
|
||||
struct Bitmap sourceRect;
|
||||
struct Bitmap destRect;
|
||||
|
||||
|
Before Width: | Height: | Size: 430 B After Width: | Height: | Size: 430 B |
|
Before Width: | Height: | Size: 309 B |
|
Before Width: | Height: | Size: 234 B |
BIN
graphics/battle_frontier/factory_screen/menu.png
Normal file
|
After Width: | Height: | Size: 3.8 KiB |
@@ -1,259 +0,0 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
256
|
||||
0 0 0
|
||||
255 172 65
|
||||
255 255 131
|
||||
222 213 180
|
||||
255 255 255
|
||||
230 222 222
|
||||
197 197 197
|
||||
213 57 49
|
||||
230 230 213
|
||||
255 246 205
|
||||
255 82 49
|
||||
164 24 0
|
||||
0 0 0
|
||||
106 106 106
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
90 172 131
|
||||
106 156 123
|
||||
123 222 139
|
||||
246 255 255
|
||||
0 0 0
|
||||
246 255 246
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
230 238 246
|
||||
222 255 238
|
||||
189 238 197
|
||||
123 123 123
|
||||
115 197 156
|
||||
0 0 0
|
||||
0 0 0
|
||||
197 205 230
|
||||
32 115 139
|
||||
255 255 255
|
||||
222 238 222
|
||||
0 0 0
|
||||
131 197 139
|
||||
0 0 0
|
||||
139 156 197
|
||||
115 139 189
|
||||
0 90 82
|
||||
106 164 139
|
||||
57 115 90
|
||||
189 222 197
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
205 205 246
|
||||
230 238 230
|
||||
213 213 255
|
||||
156 156 222
|
||||
238 238 255
|
||||
189 189 238
|
||||
230 230 255
|
||||
222 222 255
|
||||
197 197 246
|
||||
189 189 238
|
||||
180 180 230
|
||||
172 172 230
|
||||
164 164 222
|
||||
156 156 222
|
||||
0 0 0
|
||||
0 0 0
|
||||
131 148 180
|
||||
213 230 246
|
||||
189 189 222
|
||||
90 98 115
|
||||
230 238 255
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
197 238 222
|
||||
255 205 205
|
||||
205 222 255
|
||||
222 255 255
|
||||
246 230 164
|
||||
0 0 0
|
||||
189 246 180
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
255 255 255
|
||||
0 0 0
|
||||
0 255 0
|
||||
164 180 180
|
||||
255 74 0
|
||||
246 255 246
|
||||
246 255 255
|
||||
0 0 0
|
||||
246 255 246
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
230 238 246
|
||||
0 0 0
|
||||
189 238 197
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
255 213 106
|
||||
255 74 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
246 255 255
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
|
Before Width: | Height: | Size: 983 B After Width: | Height: | Size: 7.2 KiB |
@@ -54,6 +54,9 @@
|
||||
|
||||
#define BATTLE_BUFFER_LINK_SIZE 0x1000
|
||||
|
||||
// Special indicator value for shellBellDmg in SpecialStatus
|
||||
#define IGNORE_SHELL_BELL 0xFFFF
|
||||
|
||||
struct ResourceFlags
|
||||
{
|
||||
u32 flags[MAX_BATTLERS_COUNT];
|
||||
@@ -133,7 +136,7 @@ struct SpecialStatus
|
||||
u32 ppNotAffectedByPressure:1;
|
||||
u32 faintedHasReplacement:1;
|
||||
u32 focusBanded:1;
|
||||
s32 dmg;
|
||||
s32 shellBellDmg;
|
||||
s32 physicalDmg;
|
||||
s32 specialDmg;
|
||||
u8 physicalBattlerId;
|
||||
@@ -392,7 +395,7 @@ struct BattleStruct
|
||||
u8 expGetterBattlerId;
|
||||
u8 unused_5;
|
||||
u8 absentBattlerFlags;
|
||||
u8 palaceFlags; // First 4 bits are "is < 50% HP and not asleep" for each battler, last 4 bits are selected moves to pass to AI
|
||||
u8 palaceFlags; // First 4 bits are "is <= 50% HP and not asleep" for each battler, last 4 bits are selected moves to pass to AI
|
||||
u8 field_93; // related to choosing pokemon?
|
||||
u8 wallyBattleState;
|
||||
u8 wallyMovesState;
|
||||
@@ -440,9 +443,14 @@ struct BattleStruct
|
||||
u8 alreadyStatusedMoveAttempt; // As bits for battlers; For example when using Thunder Wave on an already paralyzed pokemon.
|
||||
};
|
||||
|
||||
#define F_DYNAMIC_TYPE_1 (1 << 6)
|
||||
#define F_DYNAMIC_TYPE_2 (1 << 7)
|
||||
#define DYNAMIC_TYPE_MASK (F_DYNAMIC_TYPE_1 - 1)
|
||||
// The palaceFlags member of struct BattleStruct contains 1 flag per move to indicate which moves the AI should consider,
|
||||
// and 1 flag per battler to indicate whether the battler is awake and at <= 50% HP (which affects move choice).
|
||||
// The assert below is to ensure palaceFlags is large enough to store these flags without overlap.
|
||||
STATIC_ASSERT(sizeof(((struct BattleStruct *)0)->palaceFlags) * 8 >= MAX_BATTLERS_COUNT + MAX_MON_MOVES, PalaceFlagsTooSmall)
|
||||
|
||||
#define DYNAMIC_TYPE_MASK ((1 << 6) - 1)
|
||||
#define F_DYNAMIC_TYPE_IGNORE_PHYSICALITY (1 << 6) // If set, the dynamic type's physicality won't be used for certain move effects.
|
||||
#define F_DYNAMIC_TYPE_SET (1 << 7) // Set for all dynamic types to distinguish a dynamic type of Normal (0) from no dynamic type.
|
||||
|
||||
#define GET_MOVE_TYPE(move, typeArg) \
|
||||
{ \
|
||||
@@ -642,7 +650,7 @@ extern u16 gChosenMove;
|
||||
extern u16 gCalledMove;
|
||||
extern s32 gBattleMoveDamage;
|
||||
extern s32 gHpDealt;
|
||||
extern s32 gTakenDmg[MAX_BATTLERS_COUNT];
|
||||
extern s32 gBideDmg[MAX_BATTLERS_COUNT];
|
||||
extern u16 gLastUsedItem;
|
||||
extern u8 gLastUsedAbility;
|
||||
extern u8 gBattlerAttacker;
|
||||
@@ -668,7 +676,7 @@ extern u8 gLastHitBy[MAX_BATTLERS_COUNT];
|
||||
extern u16 gChosenMoveByBattler[MAX_BATTLERS_COUNT];
|
||||
extern u8 gMoveResultFlags;
|
||||
extern u32 gHitMarker;
|
||||
extern u8 gTakenDmgByBattler[MAX_BATTLERS_COUNT];
|
||||
extern u8 gBideTarget[MAX_BATTLERS_COUNT];
|
||||
extern u8 gUnusedFirstBattleVar2;
|
||||
extern u16 gSideStatuses[NUM_BATTLE_SIDES];
|
||||
extern struct SideTimer gSideTimers[NUM_BATTLE_SIDES];
|
||||
|
||||
@@ -192,14 +192,26 @@ u8 GetBattlerSpriteDefault_Y(u8 battlerId);
|
||||
u8 GetSubstituteSpriteDefault_Y(u8 battlerId);
|
||||
|
||||
// battle_anim_status_effects.c
|
||||
#define STAT_ANIM_PLUS1 15
|
||||
#define STAT_ANIM_PLUS2 39
|
||||
#define STAT_ANIM_MINUS1 22
|
||||
#define STAT_ANIM_MINUS2 46
|
||||
#define STAT_ANIM_PLUS1 14
|
||||
#define STAT_ANIM_PLUS2 38
|
||||
#define STAT_ANIM_MINUS1 21
|
||||
#define STAT_ANIM_MINUS2 45
|
||||
#define STAT_ANIM_MULTIPLE_PLUS1 55
|
||||
#define STAT_ANIM_MULTIPLE_PLUS2 56
|
||||
#define STAT_ANIM_MULTIPLE_MINUS1 57
|
||||
#define STAT_ANIM_MULTIPLE_MINUS2 58
|
||||
|
||||
enum {
|
||||
STAT_ANIM_PAL_ATK,
|
||||
STAT_ANIM_PAL_DEF,
|
||||
STAT_ANIM_PAL_ACC,
|
||||
STAT_ANIM_PAL_SPEED,
|
||||
STAT_ANIM_PAL_EVASION,
|
||||
STAT_ANIM_PAL_SPATK,
|
||||
STAT_ANIM_PAL_SPDEF,
|
||||
STAT_ANIM_PAL_MULTIPLE = 0xFF
|
||||
};
|
||||
|
||||
void LaunchStatusAnimation(u8 battlerId, u8 statusAnimId);
|
||||
|
||||
// battle_anim_ground.c
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
#ifndef GUARD_BATTLE_MESSAGE_H
|
||||
#define GUARD_BATTLE_MESSAGE_H
|
||||
|
||||
#define TEXT_BUFF_ARRAY_COUNT 16
|
||||
// This buffer can hold many different things. Some of the things it can hold
|
||||
// that have explicit sizes are listed below to ensure it can contain them.
|
||||
#define TEXT_BUFF_ARRAY_COUNT max(16, \
|
||||
max(MOVE_NAME_LENGTH + 2, /* +2 to hold the "!" and EOS. */ \
|
||||
POKEMON_NAME_LENGTH + 1))
|
||||
|
||||
// for 0xFD
|
||||
#define B_TXT_BUFF1 0x0
|
||||
|
||||
@@ -168,7 +168,7 @@
|
||||
|
||||
// Not really sure what a "hitmarker" is.
|
||||
#define HITMARKER_WAKE_UP_CLEAR (1 << 4) // Cleared when waking up. Never set or checked.
|
||||
#define HITMARKER_SKIP_DMG_TRACK (1 << 5)
|
||||
#define HITMARKER_IGNORE_BIDE (1 << 5)
|
||||
#define HITMARKER_DESTINYBOND (1 << 6)
|
||||
#define HITMARKER_NO_ANIMATIONS (1 << 7)
|
||||
#define HITMARKER_IGNORE_SUBSTITUTE (1 << 8)
|
||||
|
||||
@@ -6,6 +6,8 @@
|
||||
#define CONTEST_LAST_APPEAL (CONTEST_NUM_APPEALS - 1)
|
||||
#define MAX_CONTEST_MOVE_HEARTS 8
|
||||
|
||||
#define CONTESTANT_NONE 0xFF
|
||||
|
||||
#define LINK_CONTEST_FLAG_IS_LINK (1 << 0)
|
||||
#define LINK_CONTEST_FLAG_IS_WIRELESS (1 << 1)
|
||||
#define LINK_CONTEST_FLAG_HAS_RS_PLAYER (1 << 2)
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
#define FLAG_TEMP_1E (TEMP_FLAGS_START + 0x1E)
|
||||
#define FLAG_TEMP_1F (TEMP_FLAGS_START + 0x1F)
|
||||
#define TEMP_FLAGS_END FLAG_TEMP_1F
|
||||
#define NUM_TEMP_FLAGS (TEMP_FLAGS_END - TEMP_FLAGS_START + 1)
|
||||
|
||||
#define FLAG_UNUSED_0x020 0x20 // Unused Flag
|
||||
#define FLAG_UNUSED_0x021 0x21 // Unused Flag
|
||||
@@ -1631,6 +1632,7 @@
|
||||
#define FLAG_UNUSED_0x95E (DAILY_FLAGS_START + 0x3E) // Unused Flag
|
||||
#define FLAG_UNUSED_0x95F (DAILY_FLAGS_START + 0x3F) // Unused Flag
|
||||
#define DAILY_FLAGS_END (FLAG_UNUSED_0x95F + (7 - FLAG_UNUSED_0x95F % 8))
|
||||
#define NUM_DAILY_FLAGS (DAILY_FLAGS_END - DAILY_FLAGS_START + 1)
|
||||
|
||||
#define FLAGS_COUNT (DAILY_FLAGS_END + 1)
|
||||
|
||||
@@ -1643,5 +1645,12 @@
|
||||
#define FLAG_STORING_ITEMS_IN_PYRAMID_BAG (SPECIAL_FLAGS_START + 0x4)
|
||||
// FLAG_SPECIAL_FLAG_0x4005 - 0x407F also exist and are unused
|
||||
#define SPECIAL_FLAGS_END (SPECIAL_FLAGS_START + 0x7F)
|
||||
#define NUM_SPECIAL_FLAGS (SPECIAL_FLAGS_END - SPECIAL_FLAGS_START + 1)
|
||||
|
||||
// Temp flag aliases
|
||||
#define FLAG_TEMP_SKIP_GABBY_INTERVIEW FLAG_TEMP_1
|
||||
#define FLAG_TEMP_REGICE_PUZZLE_STARTED FLAG_TEMP_2
|
||||
#define FLAG_TEMP_REGICE_PUZZLE_FAILED FLAG_TEMP_3
|
||||
#define FLAG_TEMP_HIDE_MIRAGE_ISLAND_BERRY_TREE FLAG_TEMP_11
|
||||
|
||||
#endif // GUARD_CONSTANTS_FLAGS_H
|
||||
|
||||
@@ -80,6 +80,7 @@
|
||||
|
||||
#define TRAINER_ID_LENGTH 4
|
||||
#define MAX_MON_MOVES 4
|
||||
#define ALL_MOVES_MASK ((1 << MAX_MON_MOVES) - 1)
|
||||
|
||||
#define CONTESTANT_COUNT 4
|
||||
#define CONTEST_CATEGORY_COOL 0
|
||||
@@ -92,6 +93,7 @@
|
||||
// string lengths
|
||||
#define ITEM_NAME_LENGTH 14
|
||||
#define POKEMON_NAME_LENGTH 10
|
||||
#define POKEMON_NAME_BUFFER_SIZE max(20, POKEMON_NAME_LENGTH + 1) // Frequently used buffer size. Larger than necessary
|
||||
#define PLAYER_NAME_LENGTH 7
|
||||
#define MAIL_WORDS_COUNT 9
|
||||
#define EASY_CHAT_BATTLE_WORDS_COUNT 6
|
||||
|
||||
@@ -24,24 +24,24 @@
|
||||
#define NUMBER_OF_MON_TYPES 18
|
||||
|
||||
// Pokemon egg groups
|
||||
#define EGG_GROUP_NONE 0
|
||||
#define EGG_GROUP_MONSTER 1
|
||||
#define EGG_GROUP_WATER_1 2
|
||||
#define EGG_GROUP_BUG 3
|
||||
#define EGG_GROUP_FLYING 4
|
||||
#define EGG_GROUP_FIELD 5
|
||||
#define EGG_GROUP_FAIRY 6
|
||||
#define EGG_GROUP_GRASS 7
|
||||
#define EGG_GROUP_HUMAN_LIKE 8
|
||||
#define EGG_GROUP_WATER_3 9
|
||||
#define EGG_GROUP_MINERAL 10
|
||||
#define EGG_GROUP_AMORPHOUS 11
|
||||
#define EGG_GROUP_WATER_2 12
|
||||
#define EGG_GROUP_DITTO 13
|
||||
#define EGG_GROUP_DRAGON 14
|
||||
#define EGG_GROUP_UNDISCOVERED 15
|
||||
#define EGG_GROUP_NONE 0
|
||||
#define EGG_GROUP_MONSTER 1
|
||||
#define EGG_GROUP_WATER_1 2
|
||||
#define EGG_GROUP_BUG 3
|
||||
#define EGG_GROUP_FLYING 4
|
||||
#define EGG_GROUP_FIELD 5
|
||||
#define EGG_GROUP_FAIRY 6
|
||||
#define EGG_GROUP_GRASS 7
|
||||
#define EGG_GROUP_HUMAN_LIKE 8
|
||||
#define EGG_GROUP_WATER_3 9
|
||||
#define EGG_GROUP_MINERAL 10
|
||||
#define EGG_GROUP_AMORPHOUS 11
|
||||
#define EGG_GROUP_WATER_2 12
|
||||
#define EGG_GROUP_DITTO 13
|
||||
#define EGG_GROUP_DRAGON 14
|
||||
#define EGG_GROUP_NO_EGGS_DISCOVERED 15
|
||||
|
||||
#define EGG_GROUPS_PER_MON 2
|
||||
#define EGG_GROUPS_PER_MON 2
|
||||
|
||||
// Pokemon natures
|
||||
#define NATURE_HARDY 0
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
#define TRAINER_HILL_OTID 0x10000000
|
||||
|
||||
// The full map of each Trainer Hill floor is 16x21.
|
||||
// The first 5x21 at the top is the entrance/exit area,
|
||||
// The first 16x5 at the top is the entrance/exit area,
|
||||
// and the remaining 16x16 is the randomized portion of
|
||||
// the room where the trainers are.
|
||||
#define HILL_FLOOR_WIDTH 16
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#define VAR_TEMP_0 (TEMP_VARS_START + 0x0)
|
||||
#define VAR_TEMP_1 (TEMP_VARS_START + 0x1)
|
||||
#define VAR_TEMP_2 (TEMP_VARS_START + 0x2)
|
||||
#define VAR_TEMP_3 (TEMP_VARS_START + 0x3)
|
||||
#define VAR_TEMP_3 (TEMP_VARS_START + 0x3) // Note: Used when the player checks a TV
|
||||
#define VAR_TEMP_4 (TEMP_VARS_START + 0x4)
|
||||
#define VAR_TEMP_5 (TEMP_VARS_START + 0x5)
|
||||
#define VAR_TEMP_6 (TEMP_VARS_START + 0x6)
|
||||
@@ -23,6 +23,7 @@
|
||||
#define VAR_TEMP_E (TEMP_VARS_START + 0xE)
|
||||
#define VAR_TEMP_F (TEMP_VARS_START + 0xF)
|
||||
#define TEMP_VARS_END VAR_TEMP_F
|
||||
#define NUM_TEMP_VARS (TEMP_VARS_END - TEMP_VARS_START + 1)
|
||||
|
||||
// object gfx id vars
|
||||
// These 0x10 vars are used to dynamically control a map object's sprite.
|
||||
@@ -310,4 +311,17 @@
|
||||
// cutscenes nor call a wait command. Used for weather effects in vanilla.
|
||||
#define TRIGGER_RUN_IMMEDIATELY 0
|
||||
|
||||
// Temp var aliases
|
||||
#define VAR_TEMP_CHALLENGE_STATUS VAR_TEMP_0
|
||||
|
||||
#define VAR_TEMP_MIXED_RECORDS VAR_TEMP_0
|
||||
#define VAR_TEMP_RECORD_MIX_GIFT_ITEM VAR_TEMP_1
|
||||
|
||||
#define VAR_TEMP_PLAYING_PYRAMID_MUSIC VAR_TEMP_E
|
||||
|
||||
#define VAR_TEMP_FRONTIER_TUTOR_SELECTION VAR_TEMP_D
|
||||
#define VAR_TEMP_FRONTIER_TUTOR_ID VAR_TEMP_E
|
||||
|
||||
#define VAR_TEMP_TRANSFERRED_SPECIES VAR_TEMP_1
|
||||
|
||||
#endif // GUARD_CONSTANTS_VARS_H
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef GUARD_CREDITS_H
|
||||
#define GUARD_CREDITS_H
|
||||
|
||||
extern EWRAM_DATA bool8 gHasHallOfFameRecords;
|
||||
extern bool8 gHasHallOfFameRecords;
|
||||
|
||||
void CB2_StartCreditsSequence(void);
|
||||
|
||||
|
||||
@@ -53,8 +53,8 @@ struct Decoration
|
||||
};
|
||||
|
||||
extern const struct Decoration gDecorations[];
|
||||
extern EWRAM_DATA u8 *gCurDecorationItems;
|
||||
extern EWRAM_DATA u8 gCurDecorationIndex;
|
||||
extern u8 *gCurDecorationItems;
|
||||
extern u8 gCurDecorationIndex;
|
||||
|
||||
void InitDecorationContextItems(void);
|
||||
void DoSecretBaseDecorationMenu(u8 taskId);
|
||||
|
||||
@@ -707,7 +707,7 @@
|
||||
#define R_BUTTON 0x0100
|
||||
#define L_BUTTON 0x0200
|
||||
#define KEYS_MASK 0x03FF
|
||||
#define KEY_INTR_ENABLE 0x0400
|
||||
#define KEY_INTR_ENABLE 0x4000
|
||||
#define KEY_OR_INTR 0x0000
|
||||
#define KEY_AND_INTR 0x8000
|
||||
#define DPAD_ANY ((DPAD_RIGHT | DPAD_LEFT | DPAD_UP | DPAD_DOWN))
|
||||
|
||||
@@ -85,6 +85,12 @@
|
||||
#define SAFE_DIV(a, b) ((a) / (b))
|
||||
#endif
|
||||
|
||||
// The below macro does a%n, but (to match) will switch to a&(n-1) if n is a power of 2.
|
||||
// There are cases where GF does a&(n-1) where we would really like to have a%n, because
|
||||
// if n is changed to a value that isn't a power of 2 then a&(n-1) is unlikely to work as
|
||||
// intended, and a%n for powers of 2 isn't always optimized to use &.
|
||||
#define MOD(a, n)(((n) & ((n)-1)) ? ((a) % (n)) : ((a) & ((n)-1)))
|
||||
|
||||
// Extracts the upper 16 bits of a 32-bit number
|
||||
#define HIHALF(n) (((n) & 0xFFFF0000) >> 16)
|
||||
|
||||
|
||||
@@ -881,13 +881,13 @@ extern const u32 gMonShinyPalette_Starmie[];
|
||||
extern const u32 gMonStillFrontPic_Starmie[];
|
||||
extern const u8 gMonIcon_Starmie[];
|
||||
extern const u8 gMonFootprint_Starmie[];
|
||||
extern const u32 gMonFrontPic_Mrmime[];
|
||||
extern const u32 gMonPalette_Mrmime[];
|
||||
extern const u32 gMonBackPic_Mrmime[];
|
||||
extern const u32 gMonShinyPalette_Mrmime[];
|
||||
extern const u32 gMonStillFrontPic_Mrmime[];
|
||||
extern const u8 gMonIcon_Mrmime[];
|
||||
extern const u8 gMonFootprint_Mrmime[];
|
||||
extern const u32 gMonFrontPic_MrMime[];
|
||||
extern const u32 gMonPalette_MrMime[];
|
||||
extern const u32 gMonBackPic_MrMime[];
|
||||
extern const u32 gMonShinyPalette_MrMime[];
|
||||
extern const u32 gMonStillFrontPic_MrMime[];
|
||||
extern const u8 gMonIcon_MrMime[];
|
||||
extern const u8 gMonFootprint_MrMime[];
|
||||
extern const u32 gMonFrontPic_Scyther[];
|
||||
extern const u32 gMonPalette_Scyther[];
|
||||
extern const u32 gMonBackPic_Scyther[];
|
||||
@@ -4769,17 +4769,18 @@ extern const u32 gMetalShineTilemap[];
|
||||
|
||||
extern const u32 gBattleAnimMaskImage_Curse[];
|
||||
extern const u32 gBattleAnimMaskTilemap_Curse[];
|
||||
extern const u32 gBattleStatMask_Gfx[];
|
||||
extern const u32 gBattleStatMask1_Tilemap[];
|
||||
extern const u32 gBattleStatMask2_Tilemap[];
|
||||
extern const u32 gBattleStatMask1_Pal[];
|
||||
extern const u32 gBattleStatMask2_Pal[];
|
||||
extern const u32 gBattleStatMask3_Pal[];
|
||||
extern const u32 gBattleStatMask4_Pal[];
|
||||
extern const u32 gBattleStatMask5_Pal[];
|
||||
extern const u32 gBattleStatMask6_Pal[];
|
||||
extern const u32 gBattleStatMask7_Pal[];
|
||||
extern const u32 gBattleStatMask8_Pal[];
|
||||
|
||||
extern const u32 gStatAnim_Gfx[];
|
||||
extern const u32 gStatAnim_Increase_Tilemap[];
|
||||
extern const u32 gStatAnim_Decrease_Tilemap[];
|
||||
extern const u32 gStatAnim_Defense_Pal[];
|
||||
extern const u32 gStatAnim_Attack_Pal[];
|
||||
extern const u32 gStatAnim_Accuracy_Pal[];
|
||||
extern const u32 gStatAnim_Speed_Pal[];
|
||||
extern const u32 gStatAnim_Multiple_Pal[];
|
||||
extern const u32 gStatAnim_Evasion_Pal[];
|
||||
extern const u32 gStatAnim_SpAttack_Pal[];
|
||||
extern const u32 gStatAnim_SpDefense_Pal[];
|
||||
|
||||
extern const u32 gContestInterfaceGfx[];
|
||||
extern const u32 gContestAudienceGfx[];
|
||||
@@ -5018,9 +5019,9 @@ extern const u32 gPokenavOptions_Gfx[];
|
||||
extern const u16 gPokenavOptions_Pal[];
|
||||
|
||||
// Battle Factory Screen
|
||||
extern const u16 gFrontierFactorySelectMenu_Gfx[];
|
||||
extern const u16 gFrontierFactorySelectMenu_Tilemap[];
|
||||
extern const u16 gFrontierFactorySelectMenu_Pal[];
|
||||
extern const u16 gFrontierFactoryMenu_Gfx[34 * TILE_SIZE_4BPP / 2];
|
||||
extern const u16 gFrontierFactoryMenu_Tilemap[];
|
||||
extern const u16 gFrontierFactoryMenu_Pal[];
|
||||
|
||||
// Object event pals
|
||||
extern const u16 gObjectEventPal_Brendan[];
|
||||
|
||||
@@ -202,7 +202,8 @@ struct BoxPokemon
|
||||
u8 isBadEgg:1;
|
||||
u8 hasSpecies:1;
|
||||
u8 isEgg:1;
|
||||
u8 unused:5;
|
||||
u8 blockBoxRS:1; // Unused, but Pokémon Box Ruby & Sapphire will refuse to deposit a Pokémon with this flag set
|
||||
u8 unused:4;
|
||||
u8 otName[PLAYER_NAME_LENGTH];
|
||||
u8 markings;
|
||||
u16 checksum;
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#ifndef GUARD_SCRIPT_MENU_H
|
||||
#define GUARD_SCRIPT_MENU_H
|
||||
|
||||
#include "constants/script_menu.h"
|
||||
|
||||
extern const u8 *const gStdStrings[];
|
||||
|
||||
bool8 ScriptMenu_Multichoice(u8 left, u8 top, u8 multichoiceId, bool8 ignoreBPress);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef GUARD_SHOP_H
|
||||
#define GUARD_SHOP_H
|
||||
|
||||
extern EWRAM_DATA struct ItemSlot gMartPurchaseHistory[3];
|
||||
extern struct ItemSlot gMartPurchaseHistory[3];
|
||||
|
||||
void CreatePokemartMenu(const u16 *);
|
||||
void CreateDecorationShop1Menu(const u16 *);
|
||||
|
||||
@@ -9,6 +9,10 @@
|
||||
#define SIIRTCINFO_24HOUR 0x40 // 0: 12-hour mode, 1: 24-hour mode
|
||||
#define SIIRTCINFO_POWER 0x80 // power on or power failure occurred
|
||||
|
||||
#define HOURS_PER_DAY 24
|
||||
#define MINUTES_PER_HOUR 60
|
||||
#define SECONDS_PER_MINUTE 60
|
||||
|
||||
enum
|
||||
{
|
||||
MONTH_JAN = 1,
|
||||
@@ -22,7 +26,8 @@ enum
|
||||
MONTH_SEP,
|
||||
MONTH_OCT,
|
||||
MONTH_NOV,
|
||||
MONTH_DEC
|
||||
MONTH_DEC,
|
||||
MONTH_COUNT = MONTH_DEC
|
||||
};
|
||||
|
||||
struct SiiRtcInfo
|
||||
|
||||
@@ -229,7 +229,7 @@ u8 rfu_LMAN_CHILD_connectParent(u16 parentId, u16 connect_period)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void rfu_LMAN_PARENT_stopWaitLinkRecoveryAndDisconnect(u8 bm_targetSlot)
|
||||
static void UNUSED rfu_LMAN_PARENT_stopWaitLinkRecoveryAndDisconnect(u8 bm_targetSlot)
|
||||
{
|
||||
u8 i;
|
||||
|
||||
@@ -1295,7 +1295,7 @@ void rfu_LMAN_setMSCCallback(void (*MSC_callback_p)(u16))
|
||||
rfu_setMSCCallback(rfu_LMAN_MSC_callback);
|
||||
}
|
||||
|
||||
static void rfu_LMAN_setLMANCallback(void (*func)(u8, u8))
|
||||
static void UNUSED rfu_LMAN_setLMANCallback(void (*func)(u8, u8))
|
||||
{
|
||||
lman.LMAN_callback = func;
|
||||
}
|
||||
@@ -1315,7 +1315,7 @@ u8 rfu_LMAN_setLinkRecovery(u8 enable_flag, u16 recovery_period)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static u8 rfu_LMAN_setNIFailCounterLimit(u16 NI_failCounter_limit)
|
||||
static u8 UNUSED rfu_LMAN_setNIFailCounterLimit(u16 NI_failCounter_limit)
|
||||
{
|
||||
if (gRfuLinkStatus->sendSlotNIFlag | gRfuLinkStatus->recvSlotNIFlag)
|
||||
{
|
||||
@@ -1327,7 +1327,7 @@ static u8 rfu_LMAN_setNIFailCounterLimit(u16 NI_failCounter_limit)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static u8 rfu_LMAN_setFastSearchParent(u8 enable_flag)
|
||||
static u8 UNUSED rfu_LMAN_setFastSearchParent(u8 enable_flag)
|
||||
{
|
||||
if (lman.state == LMAN_STATE_START_SEARCH_PARENT || lman.state == LMAN_STATE_POLL_SEARCH_PARENT || lman.state == LMAN_STATE_END_SEARCH_PARENT)
|
||||
{
|
||||
|
||||
@@ -123,7 +123,7 @@ const u32 gMonFrontPic_Goldeen[] = INCBIN_U32("graphics/pokemon/goldeen/anim_fro
|
||||
const u32 gMonFrontPic_Seaking[] = INCBIN_U32("graphics/pokemon/seaking/anim_front.4bpp.lz");
|
||||
const u32 gMonFrontPic_Staryu[] = INCBIN_U32("graphics/pokemon/staryu/anim_front.4bpp.lz");
|
||||
const u32 gMonFrontPic_Starmie[] = INCBIN_U32("graphics/pokemon/starmie/anim_front.4bpp.lz");
|
||||
const u32 gMonFrontPic_Mrmime[] = INCBIN_U32("graphics/pokemon/mr_mime/anim_front.4bpp.lz");
|
||||
const u32 gMonFrontPic_MrMime[] = INCBIN_U32("graphics/pokemon/mr_mime/anim_front.4bpp.lz");
|
||||
const u32 gMonFrontPic_Scyther[] = INCBIN_U32("graphics/pokemon/scyther/anim_front.4bpp.lz");
|
||||
const u32 gMonFrontPic_Jynx[] = INCBIN_U32("graphics/pokemon/jynx/anim_front.4bpp.lz");
|
||||
const u32 gMonFrontPic_Electabuzz[] = INCBIN_U32("graphics/pokemon/electabuzz/anim_front.4bpp.lz");
|
||||
|
||||
@@ -346,11 +346,10 @@ static u16 GetRandomAlternateMove(u8 monId)
|
||||
learnset = gLevelUpLearnsets[species];
|
||||
j = 0;
|
||||
|
||||
// Despite being open level, level up moves are only read up to level 60
|
||||
if (PLAYER_APPRENTICE.lvlMode == APPRENTICE_LVL_MODE_50)
|
||||
level = 50;
|
||||
level = FRONTIER_MAX_LEVEL_50;
|
||||
else // == APPRENTICE_LVL_MODE_OPEN
|
||||
level = 60;
|
||||
level = 60; // Despite being open level, level up moves are only read up to level 60
|
||||
|
||||
for (j = 0; learnset[j] != LEVEL_UP_END; j++)
|
||||
{
|
||||
@@ -464,7 +463,7 @@ static void GetLatestLearnedMoves(u16 species, u16 *moves)
|
||||
const u16 *learnset;
|
||||
|
||||
if (PLAYER_APPRENTICE.lvlMode == APPRENTICE_LVL_MODE_50)
|
||||
level = 50;
|
||||
level = FRONTIER_MAX_LEVEL_50;
|
||||
else // == APPRENTICE_LVL_MODE_OPEN
|
||||
level = 60;
|
||||
|
||||
@@ -624,6 +623,9 @@ static void CreateApprenticeMenu(u8 menu)
|
||||
default:
|
||||
left = 0;
|
||||
top = 0;
|
||||
#ifdef UBFIX
|
||||
return;
|
||||
#endif
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -666,11 +668,12 @@ static void Task_ChooseAnswer(u8 taskId)
|
||||
case MENU_NOTHING_CHOSEN:
|
||||
return;
|
||||
case MENU_B_PRESSED:
|
||||
// Only ever true. Answering Apprentice questions is required.
|
||||
if (tNoBButton)
|
||||
return;
|
||||
|
||||
PlaySE(SE_SELECT);
|
||||
gSpecialVar_Result = 0x7F;
|
||||
gSpecialVar_Result = MULTI_B_PRESSED;
|
||||
break;
|
||||
default:
|
||||
gSpecialVar_Result = input;
|
||||
@@ -1278,8 +1281,7 @@ const u8 *GetApprenticeNameInLanguage(u32 apprenticeId, s32 language)
|
||||
}
|
||||
}
|
||||
|
||||
// Functionally unused
|
||||
static void Task_SwitchToFollowupFuncAfterButtonPress(u8 taskId)
|
||||
static void UNUSED Task_SwitchToFollowupFuncAfterButtonPress(u8 taskId)
|
||||
{
|
||||
if (JOY_NEW(A_BUTTON) || JOY_NEW(B_BUTTON))
|
||||
SwitchTaskToFollowupFunc(taskId);
|
||||
@@ -1302,8 +1304,7 @@ static void ExecuteFuncAfterButtonPress(void (*func)(void))
|
||||
gTasks[taskId].data[1] = (u32)(func) >> 16;
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void ExecuteFollowupFuncAfterButtonPress(TaskFunc task)
|
||||
static void UNUSED ExecuteFollowupFuncAfterButtonPress(TaskFunc task)
|
||||
{
|
||||
u8 taskId = CreateTask(Task_SwitchToFollowupFuncAfterButtonPress, 1);
|
||||
SetTaskFuncWithFollowupFunc(taskId, Task_SwitchToFollowupFuncAfterButtonPress, task);
|
||||
|
||||
@@ -13,16 +13,13 @@
|
||||
#include "constants/abilities.h"
|
||||
#include "constants/battle_ai.h"
|
||||
#include "constants/battle_move_effects.h"
|
||||
#include "constants/items.h"
|
||||
#include "constants/moves.h"
|
||||
|
||||
#define AI_ACTION_DONE 0x0001
|
||||
#define AI_ACTION_FLEE 0x0002
|
||||
#define AI_ACTION_WATCH 0x0004
|
||||
#define AI_ACTION_DO_NOT_ATTACK 0x0008
|
||||
#define AI_ACTION_UNK5 0x0010
|
||||
#define AI_ACTION_UNK6 0x0020
|
||||
#define AI_ACTION_UNK7 0x0040
|
||||
#define AI_ACTION_UNK8 0x0080
|
||||
#define AI_ACTION_DONE (1 << 0)
|
||||
#define AI_ACTION_FLEE (1 << 1)
|
||||
#define AI_ACTION_WATCH (1 << 2)
|
||||
#define AI_ACTION_DO_NOT_ATTACK (1 << 3)
|
||||
|
||||
#define AI_THINKING_STRUCT ((struct AI_ThinkingStruct *)(gBattleResources->ai))
|
||||
#define BATTLE_HISTORY ((struct BattleHistory *)(gBattleResources->battleHistory))
|
||||
@@ -283,7 +280,6 @@ static const u16 sIgnoredPowerfulMoveEffects[] =
|
||||
IGNORED_MOVES_END
|
||||
};
|
||||
|
||||
// code
|
||||
void BattleAI_HandleItemUseBeforeAISetup(u8 defaultScoreMoves)
|
||||
{
|
||||
s32 i;
|
||||
@@ -302,7 +298,7 @@ void BattleAI_HandleItemUseBeforeAISetup(u8 defaultScoreMoves)
|
||||
{
|
||||
for (i = 0; i < MAX_TRAINER_ITEMS; i++)
|
||||
{
|
||||
if (gTrainers[gTrainerBattleOpponent_A].items[i] != 0)
|
||||
if (gTrainers[gTrainerBattleOpponent_A].items[i] != ITEM_NONE)
|
||||
{
|
||||
BATTLE_HISTORY->trainerItems[BATTLE_HISTORY->itemsNo] = gTrainers[gTrainerBattleOpponent_A].items[i];
|
||||
BATTLE_HISTORY->itemsNo++;
|
||||
@@ -482,9 +478,9 @@ static u8 ChooseMoveOrAction_Doubles(void)
|
||||
else
|
||||
{
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_PALACE)
|
||||
BattleAI_SetupAIData(gBattleStruct->palaceFlags >> 4);
|
||||
BattleAI_SetupAIData(gBattleStruct->palaceFlags >> MAX_BATTLERS_COUNT);
|
||||
else
|
||||
BattleAI_SetupAIData((1 << MAX_MON_MOVES) - 1);
|
||||
BattleAI_SetupAIData(ALL_MOVES_MASK);
|
||||
|
||||
gBattlerTarget = i;
|
||||
|
||||
@@ -1488,7 +1484,13 @@ static void Cmd_get_highest_type_effectiveness(void)
|
||||
|
||||
if (gCurrentMove != MOVE_NONE)
|
||||
{
|
||||
// TypeCalc does not assign to gMoveResultFlags, Cmd_typecalc does
|
||||
// This makes the check for gMoveResultFlags below always fail
|
||||
#ifdef BUGFIX
|
||||
gMoveResultFlags = TypeCalc(gCurrentMove, sBattler_AI, gBattlerTarget);
|
||||
#else
|
||||
TypeCalc(gCurrentMove, sBattler_AI, gBattlerTarget);
|
||||
#endif
|
||||
|
||||
if (gBattleMoveDamage == 120) // Super effective STAB.
|
||||
gBattleMoveDamage = AI_EFFECTIVENESS_x2;
|
||||
@@ -1523,7 +1525,16 @@ static void Cmd_if_type_effectiveness(void)
|
||||
gBattleMoveDamage = AI_EFFECTIVENESS_x1;
|
||||
gCurrentMove = AI_THINKING_STRUCT->moveConsidered;
|
||||
|
||||
// TypeCalc does not assign to gMoveResultFlags, Cmd_typecalc does
|
||||
// This makes the check for gMoveResultFlags below always fail
|
||||
// This is how you get the "dual non-immunity" glitch, where AI
|
||||
// will use ineffective moves on immune pokémon if the second type
|
||||
// has a non-neutral, non-immune effectiveness
|
||||
#ifdef BUGFIX
|
||||
gMoveResultFlags = TypeCalc(gCurrentMove, sBattler_AI, gBattlerTarget);
|
||||
#else
|
||||
TypeCalc(gCurrentMove, sBattler_AI, gBattlerTarget);
|
||||
#endif
|
||||
|
||||
if (gBattleMoveDamage == 120) // Super effective STAB.
|
||||
gBattleMoveDamage = AI_EFFECTIVENESS_x2;
|
||||
@@ -2256,7 +2267,7 @@ static void AIStackPushVar(const u8 *var)
|
||||
gBattleResources->AI_ScriptsStack->ptr[gBattleResources->AI_ScriptsStack->size++] = var;
|
||||
}
|
||||
|
||||
static void AIStackPushVar_cursor(void)
|
||||
static void UNUSED AIStackPushVar_cursor(void)
|
||||
{
|
||||
gBattleResources->AI_ScriptsStack->ptr[gBattleResources->AI_ScriptsStack->size++] = gAIScriptPtr;
|
||||
}
|
||||
|
||||
@@ -687,7 +687,7 @@ u8 GetMostSuitableMonToSwitchInto(void)
|
||||
|
||||
invalidMons = 0;
|
||||
|
||||
while (invalidMons != 0x3F) // All mons are invalid.
|
||||
while (invalidMons != (1 << PARTY_SIZE) - 1) // All mons are invalid.
|
||||
{
|
||||
bestDmg = TYPE_MUL_NO_EFFECT;
|
||||
bestMonId = PARTY_SIZE;
|
||||
@@ -741,7 +741,7 @@ u8 GetMostSuitableMonToSwitchInto(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
invalidMons = 0x3F; // No viable mon to switch.
|
||||
invalidMons = (1 << PARTY_SIZE) - 1; // No viable mon to switch.
|
||||
}
|
||||
}
|
||||
|
||||
@@ -862,7 +862,7 @@ static bool8 ShouldUseItem(void)
|
||||
shouldUse = TRUE;
|
||||
break;
|
||||
case AI_ITEM_HEAL_HP:
|
||||
paramOffset = GetItemEffectParamOffset(item, 4, 4);
|
||||
paramOffset = GetItemEffectParamOffset(item, 4, ITEM4_HEAL_HP);
|
||||
if (paramOffset == 0)
|
||||
break;
|
||||
if (gBattleMons[gActiveBattler].hp == 0)
|
||||
@@ -935,7 +935,7 @@ static bool8 ShouldUseItem(void)
|
||||
{
|
||||
BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_ITEM, 0);
|
||||
*(gBattleStruct->chosenItem + (gActiveBattler / 2) * 2) = item;
|
||||
gBattleResources->battleHistory->trainerItems[i] = 0;
|
||||
gBattleResources->battleHistory->trainerItems[i] = ITEM_NONE;
|
||||
return shouldUse;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -443,7 +443,7 @@ static void AnimMissileArc_Step(struct Sprite *sprite)
|
||||
else
|
||||
{
|
||||
s16 tempData[8];
|
||||
u16 *data = sprite->data;
|
||||
s16 *data = sprite->data;
|
||||
u16 x1 = sprite->x;
|
||||
s16 x2 = sprite->x2;
|
||||
u16 y1 = sprite->y;
|
||||
|
||||
@@ -2765,7 +2765,7 @@ static void AnimConstrictBinding(struct Sprite *sprite)
|
||||
|
||||
static void AnimConstrictBinding_Step1(struct Sprite *sprite)
|
||||
{
|
||||
u8 spriteId;
|
||||
u8 UNUSED spriteId;
|
||||
|
||||
if ((u16)gBattleAnimArgs[7] == 0xFFFF)
|
||||
{
|
||||
@@ -2778,7 +2778,7 @@ static void AnimConstrictBinding_Step1(struct Sprite *sprite)
|
||||
|
||||
static void AnimConstrictBinding_Step2(struct Sprite *sprite)
|
||||
{
|
||||
u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET);
|
||||
u8 UNUSED spriteId = GetAnimBattlerSpriteId(ANIM_TARGET);
|
||||
if (!sprite->data[2])
|
||||
sprite->data[0] += 11;
|
||||
else
|
||||
@@ -3578,13 +3578,13 @@ static void AnimFlyingParticle(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[4] = 0;
|
||||
sprite->data[2] = gBattleAnimArgs[3];
|
||||
sprite->x = 0xFFF0;
|
||||
sprite->x = -16;
|
||||
}
|
||||
else
|
||||
{
|
||||
sprite->data[4] = 1;
|
||||
sprite->data[2] = -gBattleAnimArgs[3];
|
||||
sprite->x = 0x100;
|
||||
sprite->x = DISPLAY_WIDTH + 16;
|
||||
}
|
||||
|
||||
sprite->data[1] = gBattleAnimArgs[1];
|
||||
@@ -3623,7 +3623,7 @@ static void AnimFlyingParticle_Step(struct Sprite *sprite)
|
||||
sprite->data[0] = (sprite->data[3] * a) & 0xFF;
|
||||
if (!sprite->data[4])
|
||||
{
|
||||
if (sprite->x2 + sprite->x <= 0xF7)
|
||||
if (sprite->x2 + sprite->x < DISPLAY_WIDTH + 8)
|
||||
return;
|
||||
}
|
||||
else
|
||||
@@ -3884,7 +3884,7 @@ static void AnimSlice_Step(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void UnusedFlickerAnim(struct Sprite *sprite)
|
||||
static void UNUSED UnusedFlickerAnim(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[2] > 1)
|
||||
{
|
||||
@@ -4734,7 +4734,7 @@ static void AnimFalseSwipeSlice(struct Sprite *sprite)
|
||||
|
||||
static void AnimFalseSwipePositionedSlice(struct Sprite *sprite)
|
||||
{
|
||||
sprite->x = sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + 0xFFD0 + gBattleAnimArgs[0];
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) - 48 + gBattleAnimArgs[0];
|
||||
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
|
||||
StartSpriteAnim(sprite, 1);
|
||||
sprite->data[0] = 0;
|
||||
@@ -4917,8 +4917,7 @@ void AnimTask_Conversion2AlphaBlend(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void AnimTask_HideBattlersHealthbox(u8 taskId)
|
||||
static void UNUSED AnimTask_HideBattlersHealthbox(u8 taskId)
|
||||
{
|
||||
u8 i;
|
||||
for (i = 0; i < gBattlersCount; i++)
|
||||
@@ -4933,8 +4932,7 @@ static void AnimTask_HideBattlersHealthbox(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void AnimTask_ShowBattlersHealthbox(u8 taskId)
|
||||
static void UNUSED AnimTask_ShowBattlersHealthbox(u8 taskId)
|
||||
{
|
||||
u8 i;
|
||||
for (i = 0; i < gBattlersCount; i++)
|
||||
|
||||
@@ -2551,8 +2551,8 @@ static void AnimPencil_Step(struct Sprite *sprite)
|
||||
static void AnimBlendThinRing(struct Sprite *sprite)
|
||||
{
|
||||
u8 battler = 0;
|
||||
u16 sp0 = 0;
|
||||
u16 sp1 = 0;
|
||||
s16 x = 0;
|
||||
s16 y = 0;
|
||||
u8 r4;
|
||||
|
||||
if (gBattleAnimArgs[2] == 0)
|
||||
@@ -2563,16 +2563,16 @@ static void AnimBlendThinRing(struct Sprite *sprite)
|
||||
r4 = gBattleAnimArgs[3] ^ 1;
|
||||
if (IsDoubleBattle() && IsBattlerSpriteVisible(BATTLE_PARTNER(battler)))
|
||||
{
|
||||
SetAverageBattlerPositions(battler, r4, &sp0, &sp1);
|
||||
SetAverageBattlerPositions(battler, r4, &x, &y);
|
||||
if (r4 == 0)
|
||||
r4 = GetBattlerSpriteCoord(battler, BATTLER_COORD_X);
|
||||
else
|
||||
r4 = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2);
|
||||
|
||||
if (GetBattlerSide(battler) != B_SIDE_PLAYER)
|
||||
gBattleAnimArgs[0] -= (sp0 - r4) - gBattleAnimArgs[0]; // This is weird.
|
||||
gBattleAnimArgs[0] -= (x - r4) - gBattleAnimArgs[0]; // This is weird.
|
||||
else
|
||||
gBattleAnimArgs[0] = sp0 - r4;
|
||||
gBattleAnimArgs[0] = x - r4;
|
||||
}
|
||||
|
||||
sprite->callback = AnimSpriteOnMonPos;
|
||||
|
||||
@@ -1428,8 +1428,7 @@ static void FadeScreenToWhite_Step(u8 taskId)
|
||||
|
||||
static void AnimSpikes(struct Sprite *sprite)
|
||||
{
|
||||
u16 x;
|
||||
u16 y;
|
||||
s16 x, y;
|
||||
|
||||
InitSpritePosToAnimAttacker(sprite, TRUE);
|
||||
SetAverageBattlerPositions(gBattleAnimTarget, FALSE, &x, &y);
|
||||
@@ -3056,7 +3055,7 @@ static void AnimFlatterConfetti(struct Sprite *sprite)
|
||||
if (sprite->data[2] == ANIM_ATTACKER)
|
||||
sprite->x = -8;
|
||||
else
|
||||
sprite->x = 248;
|
||||
sprite->x = DISPLAY_WIDTH + 8;
|
||||
|
||||
sprite->y = 104;
|
||||
sprite->callback = AnimFlatterConfetti_Step;
|
||||
@@ -3414,8 +3413,8 @@ static void AnimTask_AcidArmor_Step(u8 taskId)
|
||||
var0 *= 2;
|
||||
while (var0 >= 0)
|
||||
{
|
||||
gScanlineEffectRegBuffers[0][var0] = bgX + 240;
|
||||
gScanlineEffectRegBuffers[1][var0] = bgX + 240;
|
||||
gScanlineEffectRegBuffers[0][var0] = bgX + DISPLAY_WIDTH;
|
||||
gScanlineEffectRegBuffers[1][var0] = bgX + DISPLAY_WIDTH;
|
||||
var0 -= 2;
|
||||
}
|
||||
|
||||
@@ -4758,8 +4757,8 @@ static void AnimMeteorMashStar_Step(struct Sprite *sprite)
|
||||
// arg 4: duration
|
||||
static void AnimMeteorMashStar(struct Sprite *sprite)
|
||||
{
|
||||
s16 y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); // unused local variable
|
||||
s16 x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); // unused local variable
|
||||
s16 UNUSED y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
|
||||
s16 UNUSED x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
|
||||
|
||||
if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER || IsContest())
|
||||
{
|
||||
|
||||
@@ -1220,8 +1220,7 @@ void AnimSkyAttackBird_Step(struct Sprite *sprite)
|
||||
DestroySpriteAndMatrix(sprite);
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void AnimTask_SetAttackerVisibility(u8 taskId)
|
||||
static void UNUSED AnimTask_SetAttackerVisibility(u8 taskId)
|
||||
{
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
{
|
||||
|
||||
@@ -481,10 +481,10 @@ static void SetDigScanlineEffect(u8 useBG1, s16 y, s16 endY)
|
||||
y++;
|
||||
}
|
||||
|
||||
while (y < 160)
|
||||
while (y < DISPLAY_HEIGHT)
|
||||
{
|
||||
gScanlineEffectRegBuffers[0][y] = bgX + 240;
|
||||
gScanlineEffectRegBuffers[1][y] = bgX + 240;
|
||||
gScanlineEffectRegBuffers[0][y] = bgX + DISPLAY_WIDTH;
|
||||
gScanlineEffectRegBuffers[1][y] = bgX + DISPLAY_WIDTH;
|
||||
y++;
|
||||
}
|
||||
|
||||
|
||||
@@ -1305,11 +1305,11 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
|
||||
sprite->data[3] = sprite->y += sprite->y2;
|
||||
sprite->data[4] = sprite->y + 4;
|
||||
if (IsContest())
|
||||
sprite->data[2] = -0x10;
|
||||
sprite->data[2] = -16;
|
||||
else if (GET_BATTLER_SIDE2(gBattleAnimTarget) != B_SIDE_PLAYER)
|
||||
sprite->data[2] = 0x100;
|
||||
sprite->data[2] = DISPLAY_WIDTH + 16;
|
||||
else
|
||||
sprite->data[2] = -0x10;
|
||||
sprite->data[2] = -16;
|
||||
|
||||
sprite->data[7]++;
|
||||
sprite->x2 = sprite->y2 = 0;
|
||||
|
||||
@@ -485,9 +485,8 @@ void TranslateSpriteInGrowingCircle(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
// Unused
|
||||
// Exact shape depends on arguments. Can move in a figure-8-like pattern, or circular, etc.
|
||||
static void TranslateSpriteInLissajousCurve(struct Sprite *sprite)
|
||||
static void UNUSED TranslateSpriteInLissajousCurve(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->sDuration)
|
||||
{
|
||||
@@ -639,8 +638,7 @@ static void TranslateSpriteLinearFixedPointIconFrame(struct Sprite *sprite)
|
||||
UpdateMonIconFrame(sprite);
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void TranslateSpriteToBattleTargetPos(struct Sprite *sprite)
|
||||
static void UNUSED TranslateSpriteToBattleTargetPos(struct Sprite *sprite)
|
||||
{
|
||||
sprite->sStartX = sprite->x + sprite->x2;
|
||||
sprite->sStartY = sprite->y + sprite->y2;
|
||||
@@ -707,8 +705,7 @@ void DestroySpriteAndMatrix(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void TranslateSpriteToBattleAttackerPos(struct Sprite *sprite)
|
||||
static void UNUSED TranslateSpriteToBattleAttackerPos(struct Sprite *sprite)
|
||||
{
|
||||
sprite->sStartX = sprite->x + sprite->x2;
|
||||
sprite->sStartY = sprite->y + sprite->y2;
|
||||
@@ -723,8 +720,7 @@ static void TranslateSpriteToBattleAttackerPos(struct Sprite *sprite)
|
||||
#undef sStartY
|
||||
#undef sTargetY
|
||||
|
||||
// Unused
|
||||
static void EndUnkPaletteAnim(struct Sprite *sprite)
|
||||
static void UNUSED EndUnkPaletteAnim(struct Sprite *sprite)
|
||||
{
|
||||
PaletteStruct_ResetById(sprite->data[5]);
|
||||
DestroySpriteAndMatrix(sprite);
|
||||
@@ -1103,8 +1099,7 @@ void StartAnimLinearTranslation(struct Sprite *sprite)
|
||||
sprite->callback(sprite);
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void StartAnimLinearTranslation_SetCornerVecX(struct Sprite *sprite)
|
||||
static void UNUSED StartAnimLinearTranslation_SetCornerVecX(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[1] = sprite->x;
|
||||
sprite->data[3] = sprite->y;
|
||||
@@ -1512,8 +1507,7 @@ u8 GetSpritePalIdxByBattler(u8 battler)
|
||||
return battler;
|
||||
}
|
||||
|
||||
// Unused
|
||||
static u8 GetSpritePalIdxByPosition(u8 position)
|
||||
static u8 UNUSED GetSpritePalIdxByPosition(u8 position)
|
||||
{
|
||||
return GetBattlerAtPosition(position);
|
||||
}
|
||||
@@ -2012,8 +2006,7 @@ void AnimTask_GetFrustrationPowerLevel(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void SetPriorityForVisibleBattlers(u8 priority)
|
||||
static void UNUSED SetPriorityForVisibleBattlers(u8 priority)
|
||||
{
|
||||
if (IsBattlerSpriteVisible(gBattleAnimTarget))
|
||||
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].oam.priority = priority;
|
||||
|
||||
@@ -270,8 +270,7 @@ static const struct SpriteTemplate sFlashingCircleImpactSpriteTemplate =
|
||||
.callback = AnimFlashingCircleImpact,
|
||||
};
|
||||
|
||||
// Unused
|
||||
static u8 Task_FlashingCircleImpacts(u8 battlerId, bool8 red)
|
||||
static u8 UNUSED Task_FlashingCircleImpacts(u8 battlerId, bool8 red)
|
||||
{
|
||||
u8 battlerSpriteId = gBattlerSpriteIds[battlerId];
|
||||
u8 taskId = CreateTask(Task_UpdateFlashingCircleImpacts, 10);
|
||||
@@ -480,8 +479,6 @@ static void AnimTask_FrozenIceCube_Step4(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
#define CASE(by, stat) case (STAT_ANIM_##by + stat - 1)
|
||||
|
||||
void AnimTask_StatsChange(u8 taskId)
|
||||
{
|
||||
bool16 goesDown = FALSE;
|
||||
@@ -490,42 +487,42 @@ void AnimTask_StatsChange(u8 taskId)
|
||||
|
||||
switch (gBattleSpritesDataPtr->animationData->animArg)
|
||||
{
|
||||
CASE(PLUS1, STAT_ATK): goesDown = FALSE; animStatId = 0; break;
|
||||
CASE(PLUS1, STAT_DEF): goesDown = FALSE; animStatId = 1; break;
|
||||
CASE(PLUS1, STAT_SPEED): goesDown = FALSE; animStatId = 3; break;
|
||||
CASE(PLUS1, STAT_SPATK): goesDown = FALSE; animStatId = 5; break;
|
||||
CASE(PLUS1, STAT_SPDEF): goesDown = FALSE; animStatId = 6; break;
|
||||
CASE(PLUS1, STAT_ACC): goesDown = FALSE; animStatId = 2; break;
|
||||
CASE(PLUS1, STAT_EVASION): goesDown = FALSE; animStatId = 4; break;
|
||||
case STAT_ANIM_PLUS1 + STAT_ATK: goesDown = FALSE; animStatId = STAT_ANIM_PAL_ATK; break;
|
||||
case STAT_ANIM_PLUS1 + STAT_DEF: goesDown = FALSE; animStatId = STAT_ANIM_PAL_DEF; break;
|
||||
case STAT_ANIM_PLUS1 + STAT_SPEED: goesDown = FALSE; animStatId = STAT_ANIM_PAL_SPEED; break;
|
||||
case STAT_ANIM_PLUS1 + STAT_SPATK: goesDown = FALSE; animStatId = STAT_ANIM_PAL_SPATK; break;
|
||||
case STAT_ANIM_PLUS1 + STAT_SPDEF: goesDown = FALSE; animStatId = STAT_ANIM_PAL_SPDEF; break;
|
||||
case STAT_ANIM_PLUS1 + STAT_ACC: goesDown = FALSE; animStatId = STAT_ANIM_PAL_ACC; break;
|
||||
case STAT_ANIM_PLUS1 + STAT_EVASION: goesDown = FALSE; animStatId = STAT_ANIM_PAL_EVASION; break;
|
||||
|
||||
CASE(MINUS1, STAT_ATK): goesDown = TRUE; animStatId = 0; break;
|
||||
CASE(MINUS1, STAT_DEF): goesDown = TRUE; animStatId = 1; break;
|
||||
CASE(MINUS1, STAT_SPEED): goesDown = TRUE; animStatId = 3; break;
|
||||
CASE(MINUS1, STAT_SPATK): goesDown = TRUE; animStatId = 5; break;
|
||||
CASE(MINUS1, STAT_SPDEF): goesDown = TRUE; animStatId = 6; break;
|
||||
CASE(MINUS1, STAT_ACC): goesDown = TRUE; animStatId = 2; break;
|
||||
CASE(MINUS1, STAT_EVASION): goesDown = TRUE; animStatId = 4; break;
|
||||
case STAT_ANIM_MINUS1 + STAT_ATK: goesDown = TRUE; animStatId = STAT_ANIM_PAL_ATK; break;
|
||||
case STAT_ANIM_MINUS1 + STAT_DEF: goesDown = TRUE; animStatId = STAT_ANIM_PAL_DEF; break;
|
||||
case STAT_ANIM_MINUS1 + STAT_SPEED: goesDown = TRUE; animStatId = STAT_ANIM_PAL_SPEED; break;
|
||||
case STAT_ANIM_MINUS1 + STAT_SPATK: goesDown = TRUE; animStatId = STAT_ANIM_PAL_SPATK; break;
|
||||
case STAT_ANIM_MINUS1 + STAT_SPDEF: goesDown = TRUE; animStatId = STAT_ANIM_PAL_SPDEF; break;
|
||||
case STAT_ANIM_MINUS1 + STAT_ACC: goesDown = TRUE; animStatId = STAT_ANIM_PAL_ACC; break;
|
||||
case STAT_ANIM_MINUS1 + STAT_EVASION: goesDown = TRUE; animStatId = STAT_ANIM_PAL_EVASION; break;
|
||||
|
||||
CASE(PLUS2, STAT_ATK): goesDown = FALSE; animStatId = 0; sharply = TRUE; break;
|
||||
CASE(PLUS2, STAT_DEF): goesDown = FALSE; animStatId = 1; sharply = TRUE; break;
|
||||
CASE(PLUS2, STAT_SPEED): goesDown = FALSE; animStatId = 3; sharply = TRUE; break;
|
||||
CASE(PLUS2, STAT_SPATK): goesDown = FALSE; animStatId = 5; sharply = TRUE; break;
|
||||
CASE(PLUS2, STAT_SPDEF): goesDown = FALSE; animStatId = 6; sharply = TRUE; break;
|
||||
CASE(PLUS2, STAT_ACC): goesDown = FALSE; animStatId = 2; sharply = TRUE; break;
|
||||
CASE(PLUS2, STAT_EVASION): goesDown = FALSE; animStatId = 4; sharply = TRUE; break;
|
||||
case STAT_ANIM_PLUS2 + STAT_ATK: goesDown = FALSE; animStatId = STAT_ANIM_PAL_ATK; sharply = TRUE; break;
|
||||
case STAT_ANIM_PLUS2 + STAT_DEF: goesDown = FALSE; animStatId = STAT_ANIM_PAL_DEF; sharply = TRUE; break;
|
||||
case STAT_ANIM_PLUS2 + STAT_SPEED: goesDown = FALSE; animStatId = STAT_ANIM_PAL_SPEED; sharply = TRUE; break;
|
||||
case STAT_ANIM_PLUS2 + STAT_SPATK: goesDown = FALSE; animStatId = STAT_ANIM_PAL_SPATK; sharply = TRUE; break;
|
||||
case STAT_ANIM_PLUS2 + STAT_SPDEF: goesDown = FALSE; animStatId = STAT_ANIM_PAL_SPDEF; sharply = TRUE; break;
|
||||
case STAT_ANIM_PLUS2 + STAT_ACC: goesDown = FALSE; animStatId = STAT_ANIM_PAL_ACC; sharply = TRUE; break;
|
||||
case STAT_ANIM_PLUS2 + STAT_EVASION: goesDown = FALSE; animStatId = STAT_ANIM_PAL_EVASION; sharply = TRUE; break;
|
||||
|
||||
CASE(MINUS2, STAT_ATK): goesDown = TRUE; animStatId = 0; sharply = TRUE; break;
|
||||
CASE(MINUS2, STAT_DEF): goesDown = TRUE; animStatId = 1; sharply = TRUE; break;
|
||||
CASE(MINUS2, STAT_SPEED): goesDown = TRUE; animStatId = 3; sharply = TRUE; break;
|
||||
CASE(MINUS2, STAT_SPATK): goesDown = TRUE; animStatId = 5; sharply = TRUE; break;
|
||||
CASE(MINUS2, STAT_SPDEF): goesDown = TRUE; animStatId = 6; sharply = TRUE; break;
|
||||
CASE(MINUS2, STAT_ACC): goesDown = TRUE; animStatId = 2; sharply = TRUE; break;
|
||||
CASE(MINUS2, STAT_EVASION): goesDown = TRUE; animStatId = 4; sharply = TRUE; break;
|
||||
case STAT_ANIM_MINUS2 + STAT_ATK: goesDown = TRUE; animStatId = STAT_ANIM_PAL_ATK; sharply = TRUE; break;
|
||||
case STAT_ANIM_MINUS2 + STAT_DEF: goesDown = TRUE; animStatId = STAT_ANIM_PAL_DEF; sharply = TRUE; break;
|
||||
case STAT_ANIM_MINUS2 + STAT_SPEED: goesDown = TRUE; animStatId = STAT_ANIM_PAL_SPEED; sharply = TRUE; break;
|
||||
case STAT_ANIM_MINUS2 + STAT_SPATK: goesDown = TRUE; animStatId = STAT_ANIM_PAL_SPATK; sharply = TRUE; break;
|
||||
case STAT_ANIM_MINUS2 + STAT_SPDEF: goesDown = TRUE; animStatId = STAT_ANIM_PAL_SPDEF; sharply = TRUE; break;
|
||||
case STAT_ANIM_MINUS2 + STAT_ACC: goesDown = TRUE; animStatId = STAT_ANIM_PAL_ACC; sharply = TRUE; break;
|
||||
case STAT_ANIM_MINUS2 + STAT_EVASION: goesDown = TRUE; animStatId = STAT_ANIM_PAL_EVASION; sharply = TRUE; break;
|
||||
|
||||
case STAT_ANIM_MULTIPLE_PLUS1: goesDown = FALSE; animStatId = 0xFF; sharply = FALSE; break;
|
||||
case STAT_ANIM_MULTIPLE_PLUS2: goesDown = FALSE; animStatId = 0xFF; sharply = TRUE; break;
|
||||
case STAT_ANIM_MULTIPLE_MINUS1: goesDown = TRUE; animStatId = 0xFF; sharply = FALSE; break;
|
||||
case STAT_ANIM_MULTIPLE_MINUS2: goesDown = TRUE; animStatId = 0xFF; sharply = TRUE; break;
|
||||
case STAT_ANIM_MULTIPLE_PLUS1: goesDown = FALSE; animStatId = STAT_ANIM_PAL_MULTIPLE; sharply = FALSE; break;
|
||||
case STAT_ANIM_MULTIPLE_PLUS2: goesDown = FALSE; animStatId = STAT_ANIM_PAL_MULTIPLE; sharply = TRUE; break;
|
||||
case STAT_ANIM_MULTIPLE_MINUS1: goesDown = TRUE; animStatId = STAT_ANIM_PAL_MULTIPLE; sharply = FALSE; break;
|
||||
case STAT_ANIM_MULTIPLE_MINUS2: goesDown = TRUE; animStatId = STAT_ANIM_PAL_MULTIPLE; sharply = TRUE; break;
|
||||
|
||||
default:
|
||||
DestroyAnimVisualTask(taskId);
|
||||
@@ -534,11 +531,11 @@ void AnimTask_StatsChange(u8 taskId)
|
||||
|
||||
gBattleAnimArgs[0] = goesDown;
|
||||
gBattleAnimArgs[1] = animStatId;
|
||||
gBattleAnimArgs[2] = 0;
|
||||
gBattleAnimArgs[3] = 0;
|
||||
gBattleAnimArgs[2] = FALSE; // Whether it's the target, rather than attacker
|
||||
gBattleAnimArgs[3] = FALSE; // Whether it hits multiple battlers
|
||||
gBattleAnimArgs[4] = sharply;
|
||||
gTasks[taskId].func = InitStatsChangeAnimation;
|
||||
InitStatsChangeAnimation(taskId);
|
||||
gTasks[taskId].func(taskId);
|
||||
}
|
||||
|
||||
#undef CASE
|
||||
|
||||
@@ -2117,7 +2117,7 @@ void AnimTask_SwapMonSpriteToFromSubstitute(u8 taskId)
|
||||
|
||||
gTasks[taskId].data[0] &= 0xFF;
|
||||
x = gSprites[spriteId].x + gSprites[spriteId].x2 + 32;
|
||||
if (x > 304)
|
||||
if (x > DISPLAY_WIDTH + 64)
|
||||
gTasks[taskId].data[10]++;
|
||||
break;
|
||||
case 1:
|
||||
@@ -2386,11 +2386,11 @@ static void SpriteCB_ShinyStars_Diagonal(struct Sprite *sprite)
|
||||
|
||||
void AnimTask_LoadPokeblockGfx(u8 taskId)
|
||||
{
|
||||
u8 paletteIndex;
|
||||
u8 UNUSED paletteIndex;
|
||||
|
||||
LoadCompressedSpriteSheetUsingHeap(&gBattleAnimPicTable[ANIM_TAG_POKEBLOCK - ANIM_SPRITES_START]);
|
||||
LoadCompressedSpritePaletteUsingHeap(&gBattleAnimPaletteTable[ANIM_TAG_POKEBLOCK - ANIM_SPRITES_START]);
|
||||
paletteIndex = IndexOfSpritePaletteTag(ANIM_TAG_POKEBLOCK); // unused
|
||||
paletteIndex = IndexOfSpritePaletteTag(ANIM_TAG_POKEBLOCK);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ struct AnimStatsChangeData
|
||||
{
|
||||
u8 battler1;
|
||||
u8 battler2;
|
||||
u8 higherPriority;
|
||||
bool8 hidBattler2;
|
||||
s16 data[8];
|
||||
u16 species;
|
||||
};
|
||||
@@ -69,6 +69,9 @@ void AnimTask_BlendBattleAnimPalExclude(u8 taskId)
|
||||
selectedPalettes = 0;
|
||||
// fall through
|
||||
case ANIM_ATTACKER:
|
||||
#ifdef UBFIX
|
||||
default:
|
||||
#endif
|
||||
animBattlers[0] = gBattleAnimAttacker;
|
||||
break;
|
||||
case 3:
|
||||
@@ -388,12 +391,33 @@ static void AnimTask_DrawFallingWhiteLinesOnAttacker_Step(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
// Defines for data array in sAnimStatsChangeData
|
||||
#define aDecrease data[0]
|
||||
#define aAnimStatId data[1]
|
||||
#define aIsTarget data[2]
|
||||
#define aMultipleBattlers data[3] // Always false. Changes for multiple battlers are instead run sequentially.
|
||||
#define aSharply data[4]
|
||||
|
||||
// Task data defines for InitStatsChangeAnimation
|
||||
#define tAnimSpriteId1 data[0]
|
||||
#define tVelocity data[1]
|
||||
#define tMultipleBattlers data[2]
|
||||
#define tAnimSpriteId2 data[3]
|
||||
#define tTargetBlend data[4]
|
||||
#define tWaitTime data[5]
|
||||
#define tHidBattler2 data[6]
|
||||
#define tBattler2SpriteId data[7]
|
||||
#define tWaitTimer data[10]
|
||||
#define tFadeTimer data[11]
|
||||
#define tBlend data[12]
|
||||
#define tState data[15]
|
||||
|
||||
void InitStatsChangeAnimation(u8 taskId)
|
||||
{
|
||||
u8 i;
|
||||
|
||||
sAnimStatsChangeData = AllocZeroed(sizeof(struct AnimStatsChangeData));
|
||||
for (i = 0; i < 8; i++)
|
||||
for (i = 0; i < ARRAY_COUNT(sAnimStatsChangeData->data); i++)
|
||||
sAnimStatsChangeData->data[i] = gBattleAnimArgs[i];
|
||||
|
||||
gTasks[taskId].func = StatsChangeAnimation_Step1;
|
||||
@@ -401,21 +425,19 @@ void InitStatsChangeAnimation(u8 taskId)
|
||||
|
||||
static void StatsChangeAnimation_Step1(u8 taskId)
|
||||
{
|
||||
if (sAnimStatsChangeData->data[2] == 0)
|
||||
if (!sAnimStatsChangeData->aIsTarget)
|
||||
sAnimStatsChangeData->battler1 = gBattleAnimAttacker;
|
||||
else
|
||||
sAnimStatsChangeData->battler1 = gBattleAnimTarget;
|
||||
|
||||
sAnimStatsChangeData->battler2 = BATTLE_PARTNER(sAnimStatsChangeData->battler1);
|
||||
if (IsContest() || (sAnimStatsChangeData->data[3] && !IsBattlerSpriteVisible(sAnimStatsChangeData->battler2)))
|
||||
sAnimStatsChangeData->data[3] = 0;
|
||||
if (IsContest() || (sAnimStatsChangeData->aMultipleBattlers && !IsBattlerSpriteVisible(sAnimStatsChangeData->battler2)))
|
||||
sAnimStatsChangeData->aMultipleBattlers = FALSE;
|
||||
|
||||
gBattle_WIN0H = 0;
|
||||
gBattle_WIN0V = 0;
|
||||
SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR
|
||||
| WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR);
|
||||
SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG0 | WINOUT_WIN01_BG2 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR
|
||||
| WINOUT_WINOBJ_BG_ALL | WINOUT_WINOBJ_OBJ | WINOUT_WINOBJ_CLR);
|
||||
SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_ALL | WININ_WIN1_ALL);
|
||||
SetGpuReg(REG_OFFSET_WINOUT, (WINOUT_WIN01_ALL & ~WINOUT_WIN01_BG1) | WINOUT_WINOBJ_ALL);
|
||||
SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJWIN_ON);
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG1 | BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND);
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0, 16));
|
||||
@@ -424,16 +446,17 @@ static void StatsChangeAnimation_Step1(u8 taskId)
|
||||
if (!IsContest())
|
||||
SetAnimBgAttribute(1, BG_ANIM_CHAR_BASE_BLOCK, 1);
|
||||
|
||||
if (IsDoubleBattle() && sAnimStatsChangeData->data[3] == 0)
|
||||
if (IsDoubleBattle() && !sAnimStatsChangeData->aMultipleBattlers)
|
||||
{
|
||||
if (GetBattlerPosition(sAnimStatsChangeData->battler1) == B_POSITION_OPPONENT_RIGHT
|
||||
|| GetBattlerPosition(sAnimStatsChangeData->battler1) == B_POSITION_PLAYER_LEFT)
|
||||
{
|
||||
if (IsBattlerSpriteVisible(sAnimStatsChangeData->battler2) == TRUE)
|
||||
{
|
||||
gSprites[gBattlerSpriteIds[sAnimStatsChangeData->battler2]].oam.priority -= 1;
|
||||
// Push the battler not being animated back so it doesn't receive the animation.
|
||||
gSprites[gBattlerSpriteIds[sAnimStatsChangeData->battler2]].oam.priority--;
|
||||
SetAnimBgAttribute(1, BG_ANIM_PRIORITY, 1);
|
||||
sAnimStatsChangeData->higherPriority = 1;
|
||||
sAnimStatsChangeData->hidBattler2 = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -462,79 +485,80 @@ static void StatsChangeAnimation_Step2(u8 taskId)
|
||||
spriteId2 = 0;
|
||||
battlerSpriteId = gBattlerSpriteIds[sAnimStatsChangeData->battler1];
|
||||
spriteId = CreateInvisibleSpriteCopy(sAnimStatsChangeData->battler1, battlerSpriteId, sAnimStatsChangeData->species);
|
||||
if (sAnimStatsChangeData->data[3])
|
||||
if (sAnimStatsChangeData->aMultipleBattlers)
|
||||
{
|
||||
battlerSpriteId = gBattlerSpriteIds[sAnimStatsChangeData->battler2];
|
||||
spriteId2 = CreateInvisibleSpriteCopy(sAnimStatsChangeData->battler2, battlerSpriteId, sAnimStatsChangeData->species);
|
||||
}
|
||||
|
||||
GetBattleAnimBg1Data(&animBgData);
|
||||
if (sAnimStatsChangeData->data[0] == 0)
|
||||
AnimLoadCompressedBgTilemapHandleContest(&animBgData, gBattleStatMask1_Tilemap, FALSE);
|
||||
if (!sAnimStatsChangeData->aDecrease)
|
||||
AnimLoadCompressedBgTilemapHandleContest(&animBgData, gStatAnim_Increase_Tilemap, FALSE);
|
||||
else
|
||||
AnimLoadCompressedBgTilemapHandleContest(&animBgData, gBattleStatMask2_Tilemap, FALSE);
|
||||
AnimLoadCompressedBgTilemapHandleContest(&animBgData, gStatAnim_Decrease_Tilemap, FALSE);
|
||||
|
||||
AnimLoadCompressedBgGfx(animBgData.bgId, gBattleStatMask_Gfx, animBgData.tilesOffset);
|
||||
switch (sAnimStatsChangeData->data[1])
|
||||
AnimLoadCompressedBgGfx(animBgData.bgId, gStatAnim_Gfx, animBgData.tilesOffset);
|
||||
switch (sAnimStatsChangeData->aAnimStatId)
|
||||
{
|
||||
case 0:
|
||||
LoadCompressedPalette(gBattleStatMask2_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
case STAT_ANIM_PAL_ATK:
|
||||
LoadCompressedPalette(gStatAnim_Attack_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 1:
|
||||
LoadCompressedPalette(gBattleStatMask1_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
case STAT_ANIM_PAL_DEF:
|
||||
LoadCompressedPalette(gStatAnim_Defense_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 2:
|
||||
LoadCompressedPalette(gBattleStatMask3_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
case STAT_ANIM_PAL_ACC:
|
||||
LoadCompressedPalette(gStatAnim_Accuracy_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 3:
|
||||
LoadCompressedPalette(gBattleStatMask4_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
case STAT_ANIM_PAL_SPEED:
|
||||
LoadCompressedPalette(gStatAnim_Speed_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 4:
|
||||
LoadCompressedPalette(gBattleStatMask6_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
case STAT_ANIM_PAL_EVASION:
|
||||
LoadCompressedPalette(gStatAnim_Evasion_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 5:
|
||||
LoadCompressedPalette(gBattleStatMask7_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
case STAT_ANIM_PAL_SPATK:
|
||||
LoadCompressedPalette(gStatAnim_SpAttack_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 6:
|
||||
LoadCompressedPalette(gBattleStatMask8_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
case STAT_ANIM_PAL_SPDEF:
|
||||
LoadCompressedPalette(gStatAnim_SpDefense_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
default:
|
||||
LoadCompressedPalette(gBattleStatMask5_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
// case STAT_ANIM_PAL_MULTIPLE:
|
||||
LoadCompressedPalette(gStatAnim_Multiple_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
}
|
||||
|
||||
gBattle_BG1_X = 0;
|
||||
gBattle_BG1_Y = 0;
|
||||
|
||||
if (sAnimStatsChangeData->data[0] == 1)
|
||||
if (sAnimStatsChangeData->aDecrease == TRUE)
|
||||
{
|
||||
gBattle_BG1_X = 64;
|
||||
gTasks[taskId].data[1] = -3;
|
||||
gTasks[taskId].tVelocity = -3;
|
||||
}
|
||||
else
|
||||
{
|
||||
gTasks[taskId].data[1] = 3;
|
||||
gTasks[taskId].tVelocity = 3;
|
||||
}
|
||||
|
||||
if (sAnimStatsChangeData->data[4] == 0)
|
||||
if (!sAnimStatsChangeData->aSharply)
|
||||
{
|
||||
gTasks[taskId].data[4] = 10;
|
||||
gTasks[taskId].data[5] = 20;
|
||||
gTasks[taskId].tTargetBlend = 10;
|
||||
gTasks[taskId].tWaitTime = 20;
|
||||
}
|
||||
else
|
||||
{
|
||||
gTasks[taskId].data[4] = 13;
|
||||
gTasks[taskId].data[5] = 30;
|
||||
gTasks[taskId].tTargetBlend = 13;
|
||||
gTasks[taskId].tWaitTime = 30;
|
||||
}
|
||||
|
||||
gTasks[taskId].data[0] = spriteId;
|
||||
gTasks[taskId].data[2] = sAnimStatsChangeData->data[3];
|
||||
gTasks[taskId].data[3] = spriteId2;
|
||||
gTasks[taskId].data[6] = sAnimStatsChangeData->higherPriority;
|
||||
gTasks[taskId].data[7] = gBattlerSpriteIds[sAnimStatsChangeData->battler2];
|
||||
gTasks[taskId].tAnimSpriteId1 = spriteId;
|
||||
gTasks[taskId].tMultipleBattlers = sAnimStatsChangeData->aMultipleBattlers;
|
||||
gTasks[taskId].tAnimSpriteId2 = spriteId2;
|
||||
gTasks[taskId].tHidBattler2 = sAnimStatsChangeData->hidBattler2;
|
||||
gTasks[taskId].tBattler2SpriteId = gBattlerSpriteIds[sAnimStatsChangeData->battler2];
|
||||
gTasks[taskId].func = StatsChangeAnimation_Step3;
|
||||
|
||||
if (sAnimStatsChangeData->data[0] == 0)
|
||||
if (!sAnimStatsChangeData->aDecrease)
|
||||
PlaySE12WithPanning(SE_M_STAT_INCREASE, BattleAnimAdjustPanning2(SOUND_PAN_ATTACKER));
|
||||
else
|
||||
PlaySE12WithPanning(SE_M_STAT_DECREASE, BattleAnimAdjustPanning2(SOUND_PAN_ATTACKER));
|
||||
@@ -542,44 +566,46 @@ static void StatsChangeAnimation_Step2(u8 taskId)
|
||||
|
||||
static void StatsChangeAnimation_Step3(u8 taskId)
|
||||
{
|
||||
gBattle_BG1_Y += gTasks[taskId].data[1];
|
||||
gBattle_BG1_Y += gTasks[taskId].tVelocity;
|
||||
|
||||
switch (gTasks[taskId].data[15])
|
||||
switch (gTasks[taskId].tState)
|
||||
{
|
||||
case 0:
|
||||
if (gTasks[taskId].data[11]++ > 0)
|
||||
// Fade in
|
||||
if (gTasks[taskId].tFadeTimer++ > 0)
|
||||
{
|
||||
gTasks[taskId].data[11] = 0;
|
||||
gTasks[taskId].data[12]++;
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[12], 16 - gTasks[taskId].data[12]));
|
||||
if (gTasks[taskId].data[12] == gTasks[taskId].data[4])
|
||||
gTasks[taskId].data[15]++;
|
||||
gTasks[taskId].tFadeTimer = 0;
|
||||
gTasks[taskId].tBlend++;
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].tBlend, 16 - gTasks[taskId].tBlend));
|
||||
if (gTasks[taskId].tBlend == gTasks[taskId].tTargetBlend)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (++gTasks[taskId].data[10] == gTasks[taskId].data[5])
|
||||
gTasks[taskId].data[15]++;
|
||||
// Wait
|
||||
if (++gTasks[taskId].tWaitTimer == gTasks[taskId].tWaitTime)
|
||||
gTasks[taskId].tState++;
|
||||
break;
|
||||
case 2:
|
||||
if (gTasks[taskId].data[11]++ > 0)
|
||||
// Fade out
|
||||
if (gTasks[taskId].tFadeTimer++ > 0)
|
||||
{
|
||||
gTasks[taskId].data[11] = 0;
|
||||
gTasks[taskId].data[12]--;
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[12], 16 - gTasks[taskId].data[12]));
|
||||
if (gTasks[taskId].data[12] == 0)
|
||||
gTasks[taskId].tFadeTimer = 0;
|
||||
gTasks[taskId].tBlend--;
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].tBlend, 16 - gTasks[taskId].tBlend));
|
||||
if (gTasks[taskId].tBlend == 0)
|
||||
{
|
||||
ResetBattleAnimBg(FALSE);
|
||||
gTasks[taskId].data[15]++;
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
// Reset
|
||||
gBattle_WIN0H = 0;
|
||||
gBattle_WIN0V = 0;
|
||||
SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR
|
||||
| WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR);
|
||||
SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR
|
||||
| WINOUT_WINOBJ_BG_ALL | WINOUT_WINOBJ_OBJ | WINOUT_WINOBJ_CLR);
|
||||
SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_ALL | WININ_WIN1_ALL);
|
||||
SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_ALL | WINOUT_WINOBJ_ALL);
|
||||
|
||||
if (!IsContest())
|
||||
SetAnimBgAttribute(1, BG_ANIM_CHAR_BASE_BLOCK, 0);
|
||||
@@ -587,12 +613,14 @@ static void StatsChangeAnimation_Step3(u8 taskId)
|
||||
SetGpuReg(REG_OFFSET_DISPCNT, GetGpuReg(REG_OFFSET_DISPCNT) ^ DISPCNT_OBJWIN_ON);
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, 0);
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, 0);
|
||||
DestroySprite(&gSprites[gTasks[taskId].data[0]]);
|
||||
if (gTasks[taskId].data[2])
|
||||
DestroySprite(&gSprites[gTasks[taskId].data[3]]);
|
||||
|
||||
if (gTasks[taskId].data[6] == 1)
|
||||
gSprites[gTasks[taskId].data[7]].oam.priority++;
|
||||
DestroySprite(&gSprites[gTasks[taskId].tAnimSpriteId1]);
|
||||
if (gTasks[taskId].tMultipleBattlers)
|
||||
DestroySprite(&gSprites[gTasks[taskId].tAnimSpriteId2]);
|
||||
|
||||
// Restore battler 2's priority
|
||||
if (gTasks[taskId].tHidBattler2 == TRUE)
|
||||
gSprites[gTasks[taskId].tBattler2SpriteId].oam.priority++;
|
||||
|
||||
FREE_AND_SET_NULL(sAnimStatsChangeData);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
@@ -600,6 +628,24 @@ static void StatsChangeAnimation_Step3(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
#undef aDecrease
|
||||
#undef aAnimStatId
|
||||
#undef aIsTarget
|
||||
#undef aMultipleBattlers
|
||||
#undef aSharply
|
||||
#undef tAnimSpriteId1
|
||||
#undef tVelocity
|
||||
#undef tMultipleBattlers
|
||||
#undef tAnimSpriteId2
|
||||
#undef tTargetBlend
|
||||
#undef tWaitTime
|
||||
#undef tHidBattler2
|
||||
#undef tBattler2SpriteId
|
||||
#undef tWaitTimer
|
||||
#undef tFadeTimer
|
||||
#undef tBlend
|
||||
#undef tState
|
||||
|
||||
void AnimTask_Flash(u8 taskId)
|
||||
{
|
||||
u32 selectedPalettes = GetBattleMonSpritePalettesMask(1, 1, 1, 1);
|
||||
@@ -763,7 +809,7 @@ void AnimTask_SetAllNonAttackersInvisiblity(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void StartMonScrollingBgMask(u8 taskId, int unused, u16 scrollSpeed, u8 battler, bool8 includePartner, u8 numFadeSteps, u8 fadeStepDelay, u8 duration, const u32 *gfx, const u32 *tilemap, const u32 *palette)
|
||||
void StartMonScrollingBgMask(u8 taskId, int UNUSED unused, u16 scrollSpeed, u8 battler, bool8 includePartner, u8 numFadeSteps, u8 fadeStepDelay, u8 duration, const u32 *gfx, const u32 *tilemap, const u32 *palette)
|
||||
{
|
||||
u16 species;
|
||||
u8 spriteId, spriteId2;
|
||||
|
||||
@@ -651,8 +651,7 @@ void BattleArena_DeductSkillPoints(u8 battler, u16 stringId)
|
||||
}
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void UpdateHPAtStart(u8 battler)
|
||||
static void UNUSED UpdateHPAtStart(u8 battler)
|
||||
{
|
||||
u16 *hpAtStart = gBattleStruct->arenaStartHp;
|
||||
|
||||
@@ -737,7 +736,7 @@ static void SetArenaData(void)
|
||||
static void SaveArenaChallenge(void)
|
||||
{
|
||||
gSaveBlock2Ptr->frontier.challengeStatus = gSpecialVar_0x8005;
|
||||
VarSet(VAR_TEMP_0, 0);
|
||||
VarSet(VAR_TEMP_CHALLENGE_STATUS, 0);
|
||||
gSaveBlock2Ptr->frontier.challengePaused = TRUE;
|
||||
SaveGameFrontier();
|
||||
}
|
||||
|
||||
@@ -692,9 +692,9 @@ static const struct BattleBackground sBattleTerrainTable[] =
|
||||
},
|
||||
};
|
||||
|
||||
static void CB2_UnusedBattleInit(void);
|
||||
static void UNUSED CB2_UnusedBattleInit(void);
|
||||
|
||||
static void UnusedBattleInit(void)
|
||||
static void UNUSED UnusedBattleInit(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
|
||||
@@ -704,7 +704,7 @@ static void UnusedBattleInit(void)
|
||||
SetMainCallback2(CB2_UnusedBattleInit);
|
||||
}
|
||||
|
||||
static void CB2_UnusedBattleInit(void)
|
||||
static void UNUSED CB2_UnusedBattleInit(void)
|
||||
{
|
||||
AnimateSprites();
|
||||
BuildOamBuffer();
|
||||
|
||||
@@ -556,7 +556,7 @@ static u32 CopyLinkOpponentMonData(u8 monId, u8 *dst)
|
||||
{
|
||||
struct BattlePokemon battleMon;
|
||||
struct MovePpInfo moveData;
|
||||
u8 nickname[20];
|
||||
u8 nickname[POKEMON_NAME_BUFFER_SIZE];
|
||||
u8 *src;
|
||||
s16 data16;
|
||||
u32 data32;
|
||||
|
||||
@@ -450,7 +450,7 @@ static u32 CopyLinkPartnerMonData(u8 monId, u8 *dst)
|
||||
{
|
||||
struct BattlePokemon battleMon;
|
||||
struct MovePpInfo moveData;
|
||||
u8 nickname[20];
|
||||
u8 nickname[POKEMON_NAME_BUFFER_SIZE];
|
||||
u8 *src;
|
||||
s16 data16;
|
||||
u32 data32;
|
||||
|
||||