Merge branch 'master' into rme-update
@@ -31,6 +31,7 @@ build/
|
|||||||
*.ddump
|
*.ddump
|
||||||
.idea/
|
.idea/
|
||||||
porymap.project.cfg
|
porymap.project.cfg
|
||||||
|
prefabs.json
|
||||||
.vscode/
|
.vscode/
|
||||||
*.a
|
*.a
|
||||||
.fuse_hidden*
|
.fuse_hidden*
|
||||||
|
|||||||
@@ -418,21 +418,16 @@ If you aren't in the pokeemerald directory already, then **change directory** to
|
|||||||
```bash
|
```bash
|
||||||
cd pokeemerald
|
cd pokeemerald
|
||||||
```
|
```
|
||||||
To build **pokeemerald.gba** for the first time and confirm it matches the official ROM image (Note: to speed up builds, see [Parallel builds](#parallel-builds)):
|
To build **pokeemerald.gba** (Note: to speed up builds, see [Parallel builds](#parallel-builds)):
|
||||||
```bash
|
```bash
|
||||||
make compare
|
make
|
||||||
```
|
```
|
||||||
If an OK is returned, then the installation went smoothly.
|
If it has built successfully you will have the output file **pokeemerald.gba** in your project folder.
|
||||||
<details>
|
<details>
|
||||||
<summary>Note for Windows...</summary>
|
<summary>Note for Windows...</summary>
|
||||||
> If you switched terminals since the last build (e.g. from msys2 to WSL1), you must run `make clean-tools` once before any subsequent `make` commands.
|
> If you switched terminals since the last build (e.g. from msys2 to WSL1), you must run `make clean-tools` once before any subsequent `make` commands.
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
To build **pokeemerald.gba** with your changes:
|
|
||||||
```bash
|
|
||||||
make
|
|
||||||
```
|
|
||||||
|
|
||||||
# Building guidance
|
# Building guidance
|
||||||
|
|
||||||
## Parallel builds
|
## Parallel builds
|
||||||
@@ -451,6 +446,22 @@ Replace `<output of nproc>` with the number that the `nproc` command returned.
|
|||||||
|
|
||||||
`nproc` is not available on macOS. The alternative is `sysctl -n hw.ncpu` ([relevant Stack Overflow thread](https://stackoverflow.com/questions/1715580)).
|
`nproc` is not available on macOS. The alternative is `sysctl -n hw.ncpu` ([relevant Stack Overflow thread](https://stackoverflow.com/questions/1715580)).
|
||||||
|
|
||||||
|
## Compare ROM to the original
|
||||||
|
|
||||||
|
For contributing, or if you'd simply like to verify that your ROM is identical to the original game, run:
|
||||||
|
```bash
|
||||||
|
make compare
|
||||||
|
```
|
||||||
|
If it matches, you will see the following at the end of the output:
|
||||||
|
```bash
|
||||||
|
pokeemerald.gba: OK
|
||||||
|
```
|
||||||
|
If there are any changes from the original game, you will instead see:
|
||||||
|
```bash
|
||||||
|
pokeemerald.gba: FAILED
|
||||||
|
shasum: WARNING: 1 computed checksum did NOT match
|
||||||
|
```
|
||||||
|
|
||||||
## devkitARM's C compiler
|
## devkitARM's C compiler
|
||||||
|
|
||||||
This project supports the `arm-none-eabi-gcc` compiler included with devkitARM. If devkitARM (a.k.a. gba-dev) has already been installed as part of the platform-specific instructions, simply run:
|
This project supports the `arm-none-eabi-gcc` compiler included with devkitARM. If devkitARM (a.k.a. gba-dev) has already been installed as part of the platform-specific instructions, simply run:
|
||||||
|
|||||||
@@ -668,7 +668,7 @@
|
|||||||
.byte 0x77
|
.byte 0x77
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro faintifabilitynotdamp
|
.macro tryexplosion
|
||||||
.byte 0x78
|
.byte 0x78
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
@@ -1031,7 +1031,7 @@
|
|||||||
.byte 0xc8
|
.byte 0xc8
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro jumpifattackandspecialattackcannotfall ptr:req
|
.macro trymemento ptr:req
|
||||||
.byte 0xc9
|
.byte 0xc9
|
||||||
.4byte \ptr
|
.4byte \ptr
|
||||||
.endm
|
.endm
|
||||||
|
|||||||
@@ -277,7 +277,7 @@
|
|||||||
.endm
|
.endm
|
||||||
|
|
||||||
@ Blocks script execution until a command or C code manually unblocks it. Generally used with specific
|
@ Blocks script execution until a command or C code manually unblocks it. Generally used with specific
|
||||||
@ commands and specials. Calling EnableBothScriptContexts for instance will allow execution to continue.
|
@ commands and specials. Calling ScriptContext_Enable for instance will allow execution to continue.
|
||||||
.macro waitstate
|
.macro waitstate
|
||||||
.byte 0x27
|
.byte 0x27
|
||||||
.endm
|
.endm
|
||||||
|
|||||||
@@ -152,8 +152,8 @@
|
|||||||
create_movement_action walk_slow_diag_northeast, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_UP_RIGHT
|
create_movement_action walk_slow_diag_northeast, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_UP_RIGHT
|
||||||
create_movement_action walk_slow_diag_southwest, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_LEFT
|
create_movement_action walk_slow_diag_southwest, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_LEFT
|
||||||
create_movement_action walk_slow_diag_southeast, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_RIGHT
|
create_movement_action walk_slow_diag_southeast, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_RIGHT
|
||||||
create_movement_action store_lock_anim, MOVEMENT_ACTION_STORE_AND_LOCK_ANIM
|
create_movement_action lock_anim, MOVEMENT_ACTION_LOCK_ANIM
|
||||||
create_movement_action free_unlock_anim, MOVEMENT_ACTION_FREE_AND_UNLOCK_ANIM
|
create_movement_action unlock_anim, MOVEMENT_ACTION_UNLOCK_ANIM
|
||||||
create_movement_action walk_left_affine, MOVEMENT_ACTION_WALK_LEFT_AFFINE
|
create_movement_action walk_left_affine, MOVEMENT_ACTION_WALK_LEFT_AFFINE
|
||||||
create_movement_action walk_right_affine, MOVEMENT_ACTION_WALK_RIGHT_AFFINE
|
create_movement_action walk_right_affine, MOVEMENT_ACTION_WALK_RIGHT_AFFINE
|
||||||
create_movement_action levitate, MOVEMENT_ACTION_LEVITATE
|
create_movement_action levitate, MOVEMENT_ACTION_LEVITATE
|
||||||
|
|||||||
@@ -798,14 +798,14 @@ Move_DOUBLE_EDGE:
|
|||||||
createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 4, -10, 0, ANIM_TARGET, 0
|
createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 4, -10, 0, ANIM_TARGET, 0
|
||||||
createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -32, 0, 0, 3
|
createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -32, 0, 0, 3
|
||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 0, 0
|
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_ATTACKER, 0
|
||||||
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 1, 0
|
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_TARGET, 0
|
||||||
createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 4, 0, 12, 1
|
createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 4, 0, 12, 1
|
||||||
createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1
|
createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1
|
||||||
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 16, 0, RGB_WHITE
|
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 16, 0, RGB_WHITE
|
||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 0, 1
|
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_ATTACKER, 1
|
||||||
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 1, 1
|
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_TARGET, 1
|
||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 5
|
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 5
|
||||||
delay 3
|
delay 3
|
||||||
@@ -2441,7 +2441,7 @@ Move_HORN_ATTACK:
|
|||||||
Move_FURY_ATTACK:
|
Move_FURY_ATTACK:
|
||||||
loadspritegfx ANIM_TAG_IMPACT
|
loadspritegfx ANIM_TAG_IMPACT
|
||||||
loadspritegfx ANIM_TAG_HORN_HIT
|
loadspritegfx ANIM_TAG_HORN_HIT
|
||||||
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 4, 256, 0, 2
|
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 4, 256, ANIM_ATTACKER, 2
|
||||||
choosetwoturnanim FuryAttackRight, FuryAttackLeft
|
choosetwoturnanim FuryAttackRight, FuryAttackLeft
|
||||||
FuryAttackContinue:
|
FuryAttackContinue:
|
||||||
createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1
|
createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1
|
||||||
@@ -2590,7 +2590,7 @@ Move_LOW_KICK:
|
|||||||
createsprite gSlidingKickSpriteTemplate, ANIM_TARGET, 2, -24, 28, 40, 8, 160, 0
|
createsprite gSlidingKickSpriteTemplate, ANIM_TARGET, 2, -24, 28, 40, 8, 160, 0
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, -8, 8, ANIM_TARGET, 2
|
createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, -8, 8, ANIM_TARGET, 2
|
||||||
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 6, 384, 1, 2
|
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 6, 384, ANIM_TARGET, 2
|
||||||
playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET
|
playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET
|
||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 1, 4
|
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 1, 4
|
||||||
@@ -2835,7 +2835,7 @@ SkullBashSetUpHeadDown:
|
|||||||
createsprite gSlideMonToOffsetAndBackSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -24, 0, 0, 10, 0
|
createsprite gSlideMonToOffsetAndBackSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -24, 0, 0, 10, 0
|
||||||
playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER
|
playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER
|
||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 16, 96, 0, 2
|
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 16, 96, ANIM_ATTACKER, 2
|
||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
createsprite gSlideMonToOffsetAndBackSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 24, 0, 0, 10, 1
|
createsprite gSlideMonToOffsetAndBackSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 24, 0, 0, 10, 1
|
||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
@@ -3958,7 +3958,7 @@ Move_MIST_BALL:
|
|||||||
createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_BG, 1, 1, RGB(23, 16, 31), 16, RGB_WHITE, 16
|
createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_BG, 1, 1, RGB(23, 16, 31), 16, RGB_WHITE, 16
|
||||||
delay 0
|
delay 0
|
||||||
playsewithpan SE_M_HAZE, 0
|
playsewithpan SE_M_HAZE, 0
|
||||||
createvisualtask AnimTask_LoadMistTiles, 5
|
createvisualtask AnimTask_MistBallFog, 5
|
||||||
createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 3, 0, 16, RGB_WHITE
|
createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 3, 0, 16, RGB_WHITE
|
||||||
delay 8
|
delay 8
|
||||||
createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 4, 0, 70, 0
|
createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 4, 0, 70, 0
|
||||||
@@ -8570,14 +8570,14 @@ Move_ARM_THRUST:
|
|||||||
loadspritegfx ANIM_TAG_IMPACT
|
loadspritegfx ANIM_TAG_IMPACT
|
||||||
splitbgprio ANIM_TARGET
|
splitbgprio ANIM_TARGET
|
||||||
setalpha 12, 8
|
setalpha 12, 8
|
||||||
createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, 0, 0
|
createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, ANIM_ATTACKER, 0
|
||||||
delay 6
|
delay 6
|
||||||
createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 3
|
createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 3
|
||||||
delay 4
|
delay 4
|
||||||
playsewithpan SE_M_SWAGGER, SOUND_PAN_TARGET
|
playsewithpan SE_M_SWAGGER, SOUND_PAN_TARGET
|
||||||
createsprite gArmThrustHandSpriteTemplate, ANIM_TARGET, 2, 10, -8, 14, 3
|
createsprite gArmThrustHandSpriteTemplate, ANIM_TARGET, 2, 10, -8, 14, 3
|
||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, 0, 1
|
createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, ANIM_ATTACKER, 1
|
||||||
playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET
|
playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET
|
||||||
choosetwoturnanim ArmThrustRight, ArmThrustLeft
|
choosetwoturnanim ArmThrustRight, ArmThrustLeft
|
||||||
ArmThrustContinue:
|
ArmThrustContinue:
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
#include "constants/global.h"
|
#include "constants/global.h"
|
||||||
#include "constants/battle.h"
|
#include "constants/battle.h"
|
||||||
#include "constants/pokemon.h"
|
#include "constants/pokemon.h"
|
||||||
|
#include "constants/battle_arena.h"
|
||||||
#include "constants/battle_script_commands.h"
|
#include "constants/battle_script_commands.h"
|
||||||
#include "constants/battle_anim.h"
|
#include "constants/battle_anim.h"
|
||||||
#include "constants/battle_string_ids.h"
|
#include "constants/battle_string_ids.h"
|
||||||
@@ -374,7 +375,8 @@ BattleScript_EffectExplosion::
|
|||||||
attackcanceler
|
attackcanceler
|
||||||
attackstring
|
attackstring
|
||||||
ppreduce
|
ppreduce
|
||||||
faintifabilitynotdamp
|
@ Below jumps to BattleScript_DampStopsExplosion if it fails (only way it can)
|
||||||
|
tryexplosion
|
||||||
setatkhptozero
|
setatkhptozero
|
||||||
waitstate
|
waitstate
|
||||||
jumpifbyte CMP_NO_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_MISSED, BattleScript_ExplosionDoAnimStartLoop
|
jumpifbyte CMP_NO_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_MISSED, BattleScript_ExplosionDoAnimStartLoop
|
||||||
@@ -489,7 +491,7 @@ BattleScript_EffectStatUp::
|
|||||||
BattleScript_EffectStatUpAfterAtkCanceler::
|
BattleScript_EffectStatUpAfterAtkCanceler::
|
||||||
attackstring
|
attackstring
|
||||||
ppreduce
|
ppreduce
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_StatUpEnd
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_StatUpEnd
|
||||||
jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_StatUpAttackAnim
|
jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_StatUpAttackAnim
|
||||||
pause B_WAIT_TIME_SHORT
|
pause B_WAIT_TIME_SHORT
|
||||||
goto BattleScript_StatUpPrintString
|
goto BattleScript_StatUpPrintString
|
||||||
@@ -535,7 +537,7 @@ BattleScript_EffectStatDown::
|
|||||||
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
||||||
attackstring
|
attackstring
|
||||||
ppreduce
|
ppreduce
|
||||||
statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_StatDownEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_StatDownEnd
|
||||||
jumpifbyte CMP_LESS_THAN, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_StatDownDoAnim
|
jumpifbyte CMP_LESS_THAN, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_StatDownDoAnim
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_FELL_EMPTY, BattleScript_StatDownEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_FELL_EMPTY, BattleScript_StatDownEnd
|
||||||
pause B_WAIT_TIME_SHORT
|
pause B_WAIT_TIME_SHORT
|
||||||
@@ -1491,17 +1493,17 @@ BattleScript_CurseTrySpeed::
|
|||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
setstatchanger STAT_SPEED, 1, TRUE
|
setstatchanger STAT_SPEED, 1, TRUE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseTryAttack
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CurseTryAttack
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_CurseTryAttack::
|
BattleScript_CurseTryAttack::
|
||||||
setstatchanger STAT_ATK, 1, FALSE
|
setstatchanger STAT_ATK, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseTryDefense
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CurseTryDefense
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_CurseTryDefense::
|
BattleScript_CurseTryDefense::
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseEnd
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CurseEnd
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_CurseEnd::
|
BattleScript_CurseEnd::
|
||||||
@@ -1613,7 +1615,7 @@ BattleScript_EffectSwagger::
|
|||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
setstatchanger STAT_ATK, 2, FALSE
|
setstatchanger STAT_ATK, 2, FALSE
|
||||||
statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_SwaggerTryConfuse
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_SwaggerTryConfuse
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_SwaggerTryConfuse
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_SwaggerTryConfuse
|
||||||
setgraphicalstatchangevalues
|
setgraphicalstatchangevalues
|
||||||
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||||
@@ -1812,7 +1814,7 @@ BattleScript_EffectSkullBash::
|
|||||||
setbyte sTWOTURN_STRINGID, B_MSG_TURN1_SKULL_BASH
|
setbyte sTWOTURN_STRINGID, B_MSG_TURN1_SKULL_BASH
|
||||||
call BattleScriptFirstChargingTurn
|
call BattleScriptFirstChargingTurn
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_SkullBashEnd
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_SkullBashEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_SkullBashEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_SkullBashEnd
|
||||||
setgraphicalstatchangevalues
|
setgraphicalstatchangevalues
|
||||||
playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||||
@@ -1926,8 +1928,8 @@ BattleScript_EffectTeleport::
|
|||||||
ppreduce
|
ppreduce
|
||||||
jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_ButItFailed
|
jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_ButItFailed
|
||||||
getifcantrunfrombattle BS_ATTACKER
|
getifcantrunfrombattle BS_ATTACKER
|
||||||
jumpifbyte CMP_EQUAL, gBattleCommunication, 1, BattleScript_ButItFailed
|
jumpifbyte CMP_EQUAL, gBattleCommunication, BATTLE_RUN_FORBIDDEN, BattleScript_ButItFailed
|
||||||
jumpifbyte CMP_EQUAL, gBattleCommunication, 2, BattleScript_PrintAbilityMadeIneffective
|
jumpifbyte CMP_EQUAL, gBattleCommunication, BATTLE_RUN_FAILURE, BattleScript_PrintAbilityMadeIneffective
|
||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
printstring STRINGID_PKMNFLEDFROMBATTLE
|
printstring STRINGID_PKMNFLEDFROMBATTLE
|
||||||
@@ -2015,7 +2017,7 @@ BattleScript_EffectDefenseCurl::
|
|||||||
ppreduce
|
ppreduce
|
||||||
setdefensecurlbit
|
setdefensecurlbit
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DefenseCurlDoStatUpAnim
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_DefenseCurlDoStatUpAnim
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_StatUpPrintString
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_StatUpPrintString
|
||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
@@ -2156,7 +2158,7 @@ BattleScript_EffectFlatter::
|
|||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
setstatchanger STAT_SPATK, 1, FALSE
|
setstatchanger STAT_SPATK, 1, FALSE
|
||||||
statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_FlatterTryConfuse
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_FlatterTryConfuse
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_FlatterTryConfuse
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_FlatterTryConfuse
|
||||||
setgraphicalstatchangevalues
|
setgraphicalstatchangevalues
|
||||||
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||||
@@ -2201,10 +2203,10 @@ BattleScript_AlreadyBurned::
|
|||||||
|
|
||||||
BattleScript_EffectMemento::
|
BattleScript_EffectMemento::
|
||||||
attackcanceler
|
attackcanceler
|
||||||
jumpifbyte CMP_EQUAL, cMISS_TYPE, B_MSG_PROTECTED, BattleScript_MementoFailProtect
|
jumpifbyte CMP_EQUAL, cMISS_TYPE, B_MSG_PROTECTED, BattleScript_MementoTargetProtect
|
||||||
attackstring
|
attackstring
|
||||||
ppreduce
|
ppreduce
|
||||||
jumpifattackandspecialattackcannotfall BattleScript_ButItFailed
|
trymemento BattleScript_ButItFailed
|
||||||
setatkhptozero
|
setatkhptozero
|
||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
@@ -2213,16 +2215,16 @@ BattleScript_EffectMemento::
|
|||||||
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO | STAT_CHANGE_MULTIPLE_STATS
|
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO | STAT_CHANGE_MULTIPLE_STATS
|
||||||
playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO
|
playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO
|
||||||
setstatchanger STAT_ATK, 2, TRUE
|
setstatchanger STAT_ATK, 2, TRUE
|
||||||
statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_EffectMementoTrySpAtk
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_EffectMementoTrySpAtk
|
||||||
@ Greater than STAT_FELL is checking if the stat cannot decrease
|
@ Greater than B_MSG_DEFENDER_STAT_FELL is checking if the stat cannot decrease
|
||||||
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, B_MSG_DEFENDER_STAT_FELL, BattleScript_EffectMementoTrySpAtk
|
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, B_MSG_DEFENDER_STAT_FELL, BattleScript_EffectMementoTrySpAtk
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_EffectMementoTrySpAtk:
|
BattleScript_EffectMementoTrySpAtk:
|
||||||
playstatchangeanimation BS_TARGET, BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO
|
playstatchangeanimation BS_TARGET, BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO
|
||||||
setstatchanger STAT_SPATK, 2, TRUE
|
setstatchanger STAT_SPATK, 2, TRUE
|
||||||
statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_EffectMementoTryFaint
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_EffectMementoTryFaint
|
||||||
@ Greater than STAT_FELL is checking if the stat cannot decrease
|
@ Greater than B_MSG_DEFENDER_STAT_FELL is checking if the stat cannot decrease
|
||||||
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, B_MSG_DEFENDER_STAT_FELL, BattleScript_EffectMementoTryFaint
|
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, B_MSG_DEFENDER_STAT_FELL, BattleScript_EffectMementoTryFaint
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
@@ -2233,11 +2235,12 @@ BattleScript_EffectMementoPrintNoEffect:
|
|||||||
printstring STRINGID_BUTNOEFFECT
|
printstring STRINGID_BUTNOEFFECT
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
goto BattleScript_EffectMementoTryFaint
|
goto BattleScript_EffectMementoTryFaint
|
||||||
BattleScript_MementoFailProtect:
|
@ If the target is protected there's no need to check the target's stats or animate, the user will just faint
|
||||||
|
BattleScript_MementoTargetProtect:
|
||||||
attackstring
|
attackstring
|
||||||
ppreduce
|
ppreduce
|
||||||
jumpifattackandspecialattackcannotfall BattleScript_MementoFailEnd
|
trymemento BattleScript_MementoTargetProtectEnd
|
||||||
BattleScript_MementoFailEnd:
|
BattleScript_MementoTargetProtectEnd:
|
||||||
setatkhptozero
|
setatkhptozero
|
||||||
pause B_WAIT_TIME_LONG
|
pause B_WAIT_TIME_LONG
|
||||||
effectivenesssound
|
effectivenesssound
|
||||||
@@ -2660,14 +2663,14 @@ BattleScript_TickleDoMoveAnim::
|
|||||||
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_DEF, STAT_CHANGE_NEGATIVE | STAT_CHANGE_MULTIPLE_STATS
|
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_DEF, STAT_CHANGE_NEGATIVE | STAT_CHANGE_MULTIPLE_STATS
|
||||||
playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE
|
playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE
|
||||||
setstatchanger STAT_ATK, 1, TRUE
|
setstatchanger STAT_ATK, 1, TRUE
|
||||||
statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_TickleTryLowerDef
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_TickleTryLowerDef
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_TickleTryLowerDef
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_TickleTryLowerDef
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_TickleTryLowerDef::
|
BattleScript_TickleTryLowerDef::
|
||||||
playstatchangeanimation BS_TARGET, BIT_DEF, STAT_CHANGE_NEGATIVE
|
playstatchangeanimation BS_TARGET, BIT_DEF, STAT_CHANGE_NEGATIVE
|
||||||
setstatchanger STAT_DEF, 1, TRUE
|
setstatchanger STAT_DEF, 1, TRUE
|
||||||
statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_TickleEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_TickleEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_TickleEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_TickleEnd
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
@@ -2693,13 +2696,13 @@ BattleScript_CosmicPowerDoMoveAnim::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, FALSE
|
setbyte sSTAT_ANIM_PLAYED, FALSE
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_SPDEF, 0
|
playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_SPDEF, 0
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CosmicPowerTrySpDef
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CosmicPowerTrySpDef
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CosmicPowerTrySpDef
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CosmicPowerTrySpDef
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_CosmicPowerTrySpDef::
|
BattleScript_CosmicPowerTrySpDef::
|
||||||
setstatchanger STAT_SPDEF, 1, FALSE
|
setstatchanger STAT_SPDEF, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CosmicPowerEnd
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CosmicPowerEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CosmicPowerEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CosmicPowerEnd
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
@@ -2722,13 +2725,13 @@ BattleScript_BulkUpDoMoveAnim::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, FALSE
|
setbyte sSTAT_ANIM_PLAYED, FALSE
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, 0
|
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, 0
|
||||||
setstatchanger STAT_ATK, 1, FALSE
|
setstatchanger STAT_ATK, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BulkUpTryDef
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_BulkUpTryDef
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_BulkUpTryDef
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_BulkUpTryDef
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_BulkUpTryDef::
|
BattleScript_BulkUpTryDef::
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BulkUpEnd
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_BulkUpEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_BulkUpEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_BulkUpEnd
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
@@ -2747,13 +2750,13 @@ BattleScript_CalmMindDoMoveAnim::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, FALSE
|
setbyte sSTAT_ANIM_PLAYED, FALSE
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_SPATK | BIT_SPDEF, 0
|
playstatchangeanimation BS_ATTACKER, BIT_SPATK | BIT_SPDEF, 0
|
||||||
setstatchanger STAT_SPATK, 1, FALSE
|
setstatchanger STAT_SPATK, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CalmMindTrySpDef
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CalmMindTrySpDef
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CalmMindTrySpDef
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CalmMindTrySpDef
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_CalmMindTrySpDef::
|
BattleScript_CalmMindTrySpDef::
|
||||||
setstatchanger STAT_SPDEF, 1, FALSE
|
setstatchanger STAT_SPDEF, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CalmMindEnd
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CalmMindEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CalmMindEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CalmMindEnd
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
@@ -2779,13 +2782,13 @@ BattleScript_DragonDanceDoMoveAnim::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, FALSE
|
setbyte sSTAT_ANIM_PLAYED, FALSE
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_SPEED, 0
|
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_SPEED, 0
|
||||||
setstatchanger STAT_ATK, 1, FALSE
|
setstatchanger STAT_ATK, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DragonDanceTrySpeed
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_DragonDanceTrySpeed
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_DragonDanceTrySpeed
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_DragonDanceTrySpeed
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_DragonDanceTrySpeed::
|
BattleScript_DragonDanceTrySpeed::
|
||||||
setstatchanger STAT_SPEED, 1, FALSE
|
setstatchanger STAT_SPEED, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DragonDanceEnd
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_DragonDanceEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_DragonDanceEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_DragonDanceEnd
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
@@ -3456,27 +3459,27 @@ BattleScript_AllStatsUpAtk::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, FALSE
|
setbyte sSTAT_ANIM_PLAYED, FALSE
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF | BIT_SPEED | BIT_SPATK | BIT_SPDEF, 0
|
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF | BIT_SPEED | BIT_SPATK | BIT_SPDEF, 0
|
||||||
setstatchanger STAT_ATK, 1, FALSE
|
setstatchanger STAT_ATK, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpDef
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_AllStatsUpDef
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_AllStatsUpDef::
|
BattleScript_AllStatsUpDef::
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpeed
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_AllStatsUpSpeed
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_AllStatsUpSpeed::
|
BattleScript_AllStatsUpSpeed::
|
||||||
setstatchanger STAT_SPEED, 1, FALSE
|
setstatchanger STAT_SPEED, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpAtk
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_AllStatsUpSpAtk
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_AllStatsUpSpAtk::
|
BattleScript_AllStatsUpSpAtk::
|
||||||
setstatchanger STAT_SPATK, 1, FALSE
|
setstatchanger STAT_SPATK, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpDef
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_AllStatsUpSpDef
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_AllStatsUpSpDef::
|
BattleScript_AllStatsUpSpDef::
|
||||||
setstatchanger STAT_SPDEF, 1, FALSE
|
setstatchanger STAT_SPDEF, 1, FALSE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpRet
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_AllStatsUpRet
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_AllStatsUpRet::
|
BattleScript_AllStatsUpRet::
|
||||||
@@ -3623,14 +3626,14 @@ BattleScript_AtkDefDown::
|
|||||||
playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_ATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE | STAT_CHANGE_MULTIPLE_STATS
|
playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_ATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE | STAT_CHANGE_MULTIPLE_STATS
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_ATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE
|
playstatchangeanimation BS_ATTACKER, BIT_ATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE
|
||||||
setstatchanger STAT_ATK, 1, TRUE
|
setstatchanger STAT_ATK, 1, TRUE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_AtkDefDown_TryDef
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_CHANGE_ALLOW_PTR, BattleScript_AtkDefDown_TryDef
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_AtkDefDown_TryDef
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_AtkDefDown_TryDef
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_AtkDefDown_TryDef::
|
BattleScript_AtkDefDown_TryDef::
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_DEF, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE
|
playstatchangeanimation BS_ATTACKER, BIT_DEF, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE
|
||||||
setstatchanger STAT_DEF, 1, TRUE
|
setstatchanger STAT_DEF, 1, TRUE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_AtkDefDown_End
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_CHANGE_ALLOW_PTR, BattleScript_AtkDefDown_End
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_AtkDefDown_End
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_AtkDefDown_End
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
@@ -3696,7 +3699,7 @@ BattleScript_SAtkDown2::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, FALSE
|
setbyte sSTAT_ANIM_PLAYED, FALSE
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_SPATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO
|
playstatchangeanimation BS_ATTACKER, BIT_SPATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO
|
||||||
setstatchanger STAT_SPATK, 2, TRUE
|
setstatchanger STAT_SPATK, 2, TRUE
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_SAtkDown2End
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_CHANGE_ALLOW_PTR, BattleScript_SAtkDown2End
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_SAtkDown2End
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_SAtkDown2End
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
@@ -4027,7 +4030,7 @@ BattleScript_IntimidateActivatesLoop:
|
|||||||
jumpifability BS_TARGET, ABILITY_CLEAR_BODY, BattleScript_IntimidatePrevented
|
jumpifability BS_TARGET, ABILITY_CLEAR_BODY, BattleScript_IntimidatePrevented
|
||||||
jumpifability BS_TARGET, ABILITY_HYPER_CUTTER, BattleScript_IntimidatePrevented
|
jumpifability BS_TARGET, ABILITY_HYPER_CUTTER, BattleScript_IntimidatePrevented
|
||||||
jumpifability BS_TARGET, ABILITY_WHITE_SMOKE, BattleScript_IntimidatePrevented
|
jumpifability BS_TARGET, ABILITY_WHITE_SMOKE, BattleScript_IntimidatePrevented
|
||||||
statbuffchange STAT_BUFF_NOT_PROTECT_AFFECTED | STAT_BUFF_ALLOW_PTR, BattleScript_IntimidateActivatesLoopIncrement
|
statbuffchange STAT_CHANGE_NOT_PROTECT_AFFECTED | STAT_CHANGE_ALLOW_PTR, BattleScript_IntimidateActivatesLoopIncrement
|
||||||
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_IntimidateActivatesLoopIncrement
|
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_IntimidateActivatesLoopIncrement
|
||||||
setgraphicalstatchangevalues
|
setgraphicalstatchangevalues
|
||||||
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||||
@@ -4406,7 +4409,7 @@ BattleScript_BerryConfuseHealEnd2::
|
|||||||
|
|
||||||
BattleScript_BerryStatRaiseEnd2::
|
BattleScript_BerryStatRaiseEnd2::
|
||||||
playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT
|
playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT
|
||||||
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BerryStatRaiseDoStatUp
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_BerryStatRaiseDoStatUp
|
||||||
BattleScript_BerryStatRaiseDoStatUp::
|
BattleScript_BerryStatRaiseDoStatUp::
|
||||||
setbyte cMULTISTRING_CHOOSER, B_MSG_STAT_ROSE_ITEM
|
setbyte cMULTISTRING_CHOOSER, B_MSG_STAT_ROSE_ITEM
|
||||||
call BattleScript_StatUp
|
call BattleScript_StatUp
|
||||||
@@ -4480,7 +4483,7 @@ BattleScript_ArenaDoJudgment::
|
|||||||
arenajudgmentstring B_MSG_REF_THATS_IT
|
arenajudgmentstring B_MSG_REF_THATS_IT
|
||||||
arenawaitmessage B_MSG_REF_THATS_IT
|
arenawaitmessage B_MSG_REF_THATS_IT
|
||||||
pause B_WAIT_TIME_LONG
|
pause B_WAIT_TIME_LONG
|
||||||
setbyte gBattleCommunication, 0
|
setbyte gBattleCommunication, 0 @ Reset state for arenajudgmentwindow
|
||||||
arenajudgmentwindow
|
arenajudgmentwindow
|
||||||
pause B_WAIT_TIME_LONG
|
pause B_WAIT_TIME_LONG
|
||||||
arenajudgmentwindow
|
arenajudgmentwindow
|
||||||
@@ -4493,8 +4496,9 @@ BattleScript_ArenaDoJudgment::
|
|||||||
arenajudgmentstring B_MSG_REF_JUDGE_BODY
|
arenajudgmentstring B_MSG_REF_JUDGE_BODY
|
||||||
arenawaitmessage B_MSG_REF_JUDGE_BODY
|
arenawaitmessage B_MSG_REF_JUDGE_BODY
|
||||||
arenajudgmentwindow
|
arenajudgmentwindow
|
||||||
jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 3, BattleScript_ArenaJudgmentPlayerLoses
|
jumpifbyte CMP_EQUAL, gBattleCommunication + 1, ARENA_RESULT_PLAYER_LOST, BattleScript_ArenaJudgmentPlayerLoses
|
||||||
jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 4, BattleScript_ArenaJudgmentDraw
|
jumpifbyte CMP_EQUAL, gBattleCommunication + 1, ARENA_RESULT_TIE, BattleScript_ArenaJudgmentDraw
|
||||||
|
@ ARENA_RESULT_PLAYER_WON
|
||||||
arenajudgmentstring B_MSG_REF_PLAYER_WON
|
arenajudgmentstring B_MSG_REF_PLAYER_WON
|
||||||
arenawaitmessage B_MSG_REF_PLAYER_WON
|
arenawaitmessage B_MSG_REF_PLAYER_WON
|
||||||
arenajudgmentwindow
|
arenajudgmentwindow
|
||||||
|
|||||||
@@ -435,11 +435,15 @@ AI_CGM_BetterWhenAudienceExcited:
|
|||||||
AI_CGM_BetterWhenAudienceExcited_1stUp:
|
AI_CGM_BetterWhenAudienceExcited_1stUp:
|
||||||
@ BUG: Should be if_appeal_num_eq 0
|
@ BUG: Should be if_appeal_num_eq 0
|
||||||
@ 1st up on 1st appeal excitement will always be 0
|
@ 1st up on 1st appeal excitement will always be 0
|
||||||
if_appeal_num_not_eq 0, AI_CGM_BetterWhenAudienceExcited_Not1stAppeal
|
.ifdef BUGFIX
|
||||||
|
if_appeal_num_eq 0, AI_CGM_BetterWhenAudienceExcited_1stAppeal
|
||||||
|
.else
|
||||||
|
if_appeal_num_not_eq 0, AI_CGM_BetterWhenAudienceExcited_1stAppeal
|
||||||
|
.endif
|
||||||
if_excitement_eq 4, AI_CGM_BetterWhenAudienceExcited_1AwayFromMax
|
if_excitement_eq 4, AI_CGM_BetterWhenAudienceExcited_1AwayFromMax
|
||||||
if_excitement_eq 3, AI_CGM_BetterWhenAudienceExcited_2AwayFromMax
|
if_excitement_eq 3, AI_CGM_BetterWhenAudienceExcited_2AwayFromMax
|
||||||
end
|
end
|
||||||
AI_CGM_BetterWhenAudienceExcited_Not1stAppeal:
|
AI_CGM_BetterWhenAudienceExcited_1stAppeal:
|
||||||
if_random_less_than 125, AI_CGM_End
|
if_random_less_than 125, AI_CGM_End
|
||||||
score -15
|
score -15
|
||||||
end
|
end
|
||||||
@@ -542,7 +546,11 @@ AI_CGM_TargetMonWithJudgesAttention:
|
|||||||
end
|
end
|
||||||
AI_CGM_TargetMonWithJudgesAttention_CheckMon1:
|
AI_CGM_TargetMonWithJudgesAttention_CheckMon1:
|
||||||
if_cannot_participate MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
if_cannot_participate MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
||||||
|
.ifdef BUGFIX
|
||||||
|
if_not_used_combo_starter MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
||||||
|
.else
|
||||||
if_used_combo_starter MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
if_used_combo_starter MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
||||||
|
.endif
|
||||||
if_random_less_than 125, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
if_random_less_than 125, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
||||||
score +2
|
score +2
|
||||||
if_not_completed_combo MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
if_not_completed_combo MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2
|
||||||
@@ -551,7 +559,11 @@ AI_CGM_TargetMonWithJudgesAttention_CheckMon1:
|
|||||||
AI_CGM_TargetMonWithJudgesAttention_CheckMon2:
|
AI_CGM_TargetMonWithJudgesAttention_CheckMon2:
|
||||||
if_user_order_eq MON_2, AI_CGM_End
|
if_user_order_eq MON_2, AI_CGM_End
|
||||||
if_cannot_participate MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
if_cannot_participate MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
||||||
|
.ifdef BUGFIX
|
||||||
|
if_not_used_combo_starter MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
||||||
|
.else
|
||||||
if_used_combo_starter MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
if_used_combo_starter MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
||||||
|
.endif
|
||||||
if_random_less_than 125, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
if_random_less_than 125, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
||||||
score +2
|
score +2
|
||||||
if_not_completed_combo MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
if_not_completed_combo MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3
|
||||||
@@ -560,7 +572,11 @@ AI_CGM_TargetMonWithJudgesAttention_CheckMon2:
|
|||||||
AI_CGM_TargetMonWithJudgesAttention_CheckMon3:
|
AI_CGM_TargetMonWithJudgesAttention_CheckMon3:
|
||||||
if_user_order_eq MON_3, AI_CGM_End
|
if_user_order_eq MON_3, AI_CGM_End
|
||||||
if_cannot_participate MON_3, AI_CGM_End
|
if_cannot_participate MON_3, AI_CGM_End
|
||||||
|
.ifdef BUGFIX
|
||||||
|
if_not_used_combo_starter MON_3, AI_CGM_End
|
||||||
|
.else
|
||||||
if_used_combo_starter MON_3, AI_CGM_End
|
if_used_combo_starter MON_3, AI_CGM_End
|
||||||
|
.endif
|
||||||
if_random_less_than 125, AI_CGM_End
|
if_random_less_than 125, AI_CGM_End
|
||||||
score +2
|
score +2
|
||||||
if_not_completed_combo MON_3, AI_CGM_End
|
if_not_completed_combo MON_3, AI_CGM_End
|
||||||
|
|||||||
@@ -51,7 +51,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "AbandonedShip_HiddenFloorRooms_EventScript_ItemTM18",
|
"script": "AbandonedShip_HiddenFloorRooms_EventScript_ItemTM18",
|
||||||
"flag": "FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM_18"
|
"flag": "FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM18"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
|
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "AbandonedShip_Room_B1F_EventScript_ItemTM13",
|
"script": "AbandonedShip_Room_B1F_EventScript_ItemTM13",
|
||||||
"flag": "FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM_13"
|
"flag": "FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM13"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"warp_events": [
|
"warp_events": [
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "MeteorFalls_1F_1R_EventScript_ItemTM23",
|
"script": "MeteorFalls_1F_1R_EventScript_ItemTM23",
|
||||||
"flag": "FLAG_ITEM_METEOR_FALLS_1F_1R_TM_23"
|
"flag": "FLAG_ITEM_METEOR_FALLS_1F_1R_TM23"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
|
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "MeteorFalls_B1F_2R_EventScript_ItemTM02",
|
"script": "MeteorFalls_B1F_2R_EventScript_ItemTM02",
|
||||||
"flag": "FLAG_ITEM_METEOR_FALLS_B1F_2R_TM_02"
|
"flag": "FLAG_ITEM_METEOR_FALLS_B1F_2R_TM02"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"warp_events": [
|
"warp_events": [
|
||||||
|
|||||||
@@ -38,7 +38,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "MtPyre_6F_EventScript_ItemTM30",
|
"script": "MtPyre_6F_EventScript_ItemTM30",
|
||||||
"flag": "FLAG_ITEM_MT_PYRE_6F_TM_30"
|
"flag": "FLAG_ITEM_MT_PYRE_6F_TM30"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"graphics_id": "OBJ_EVENT_GFX_PSYCHIC_M",
|
"graphics_id": "OBJ_EVENT_GFX_PSYCHIC_M",
|
||||||
|
|||||||
@@ -38,7 +38,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "MtPyre_Exterior_EventScript_ItemTM48",
|
"script": "MtPyre_Exterior_EventScript_ItemTM48",
|
||||||
"flag": "FLAG_ITEM_MT_PYRE_EXTERIOR_TM_48"
|
"flag": "FLAG_ITEM_MT_PYRE_EXTERIOR_TM48"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"warp_events": [
|
"warp_events": [
|
||||||
|
|||||||
@@ -158,7 +158,7 @@
|
|||||||
"y": 9,
|
"y": 9,
|
||||||
"elevation": 0,
|
"elevation": 0,
|
||||||
"player_facing_dir": "BG_EVENT_PLAYER_FACING_ANY",
|
"player_facing_dir": "BG_EVENT_PLAYER_FACING_ANY",
|
||||||
"script": "OldaleTown_EventScript_CitySign"
|
"script": "OldaleTown_EventScript_TownSign"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "sign",
|
"type": "sign",
|
||||||
|
|||||||
@@ -29,8 +29,8 @@ OldaleTown_EventScript_MoveMartEmployee::
|
|||||||
setobjectmovementtype LOCALID_MART_EMPLOYEE, MOVEMENT_TYPE_FACE_DOWN
|
setobjectmovementtype LOCALID_MART_EMPLOYEE, MOVEMENT_TYPE_FACE_DOWN
|
||||||
return
|
return
|
||||||
|
|
||||||
OldaleTown_EventScript_CitySign::
|
OldaleTown_EventScript_TownSign::
|
||||||
msgbox OldaleTown_Text_CitySign, MSGBOX_SIGN
|
msgbox OldaleTown_Text_TownSign, MSGBOX_SIGN
|
||||||
end
|
end
|
||||||
|
|
||||||
OldaleTown_EventScript_Girl::
|
OldaleTown_EventScript_Girl::
|
||||||
@@ -395,7 +395,7 @@ OldaleTown_Text_BrendanLetsGoBack:
|
|||||||
.string "LAB now.\l"
|
.string "LAB now.\l"
|
||||||
.string "{PLAYER}, you should hustle back, too.$"
|
.string "{PLAYER}, you should hustle back, too.$"
|
||||||
|
|
||||||
OldaleTown_Text_CitySign:
|
OldaleTown_Text_TownSign:
|
||||||
.string "OLDALE TOWN\n"
|
.string "OLDALE TOWN\n"
|
||||||
.string "“Where things start off scarce.”$"
|
.string "“Where things start off scarce.”$"
|
||||||
|
|
||||||
|
|||||||
@@ -11,9 +11,9 @@ PacifidlogTown_House2_EventScript_FanClubYoungerBrother::
|
|||||||
call_if_unset FLAG_MET_FANCLUB_YOUNGER_BROTHER, PacifidlogTown_House2_EventScript_FirstMonAssessment
|
call_if_unset FLAG_MET_FANCLUB_YOUNGER_BROTHER, PacifidlogTown_House2_EventScript_FirstMonAssessment
|
||||||
setflag FLAG_MET_FANCLUB_YOUNGER_BROTHER
|
setflag FLAG_MET_FANCLUB_YOUNGER_BROTHER
|
||||||
specialvar VAR_RESULT, GetLeadMonFriendshipScore
|
specialvar VAR_RESULT, GetLeadMonFriendshipScore
|
||||||
goto_if_ge VAR_RESULT, 4, PacifidlogTown_House2_EventScript_GiveReturn
|
goto_if_ge VAR_RESULT, FRIENDSHIP_150_TO_199, PacifidlogTown_House2_EventScript_GiveReturn
|
||||||
specialvar VAR_RESULT, GetLeadMonFriendshipScore
|
specialvar VAR_RESULT, GetLeadMonFriendshipScore
|
||||||
goto_if_ge VAR_RESULT, 2, PacifidlogTown_House2_EventScript_PutInEffort
|
goto_if_ge VAR_RESULT, FRIENDSHIP_50_TO_99, PacifidlogTown_House2_EventScript_PutInEffort
|
||||||
goto PacifidlogTown_House2_EventScript_GiveFrustration
|
goto PacifidlogTown_House2_EventScript_GiveFrustration
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -262,7 +262,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "Route111_EventScript_ItemTM37",
|
"script": "Route111_EventScript_ItemTM37",
|
||||||
"flag": "FLAG_ITEM_ROUTE_111_TM_37"
|
"flag": "FLAG_ITEM_ROUTE_111_TM37"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"graphics_id": "OBJ_EVENT_GFX_BERRY_TREE",
|
"graphics_id": "OBJ_EVENT_GFX_BERRY_TREE",
|
||||||
|
|||||||
@@ -144,7 +144,7 @@ Route111_EventScript_RootFossilDisappeared::
|
|||||||
|
|
||||||
@ Unused
|
@ Unused
|
||||||
Route111_Movement_PlayerFall::
|
Route111_Movement_PlayerFall::
|
||||||
store_lock_anim
|
lock_anim
|
||||||
walk_fast_down
|
walk_fast_down
|
||||||
walk_fast_down
|
walk_fast_down
|
||||||
walk_fast_down
|
walk_fast_down
|
||||||
|
|||||||
@@ -451,7 +451,7 @@
|
|||||||
"y": 5,
|
"y": 5,
|
||||||
"elevation": 3,
|
"elevation": 3,
|
||||||
"item": "ITEM_TM32",
|
"item": "ITEM_TM32",
|
||||||
"flag": "FLAG_HIDDEN_ITEM_ROUTE_113_TM_32"
|
"flag": "FLAG_HIDDEN_ITEM_ROUTE_113_TM32"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "hidden_item",
|
"type": "hidden_item",
|
||||||
|
|||||||
@@ -166,7 +166,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "Route115_EventScript_ItemTM01",
|
"script": "Route115_EventScript_ItemTM01",
|
||||||
"flag": "FLAG_ITEM_ROUTE_115_TM_01"
|
"flag": "FLAG_ITEM_ROUTE_115_TM01"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
|
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
|
||||||
|
|||||||
@@ -49,7 +49,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "SafariZone_Northwest_EventScript_ItemTM22",
|
"script": "SafariZone_Northwest_EventScript_ItemTM22",
|
||||||
"flag": "FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM_22"
|
"flag": "FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM22"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"warp_events": [],
|
"warp_events": [],
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "ScorchedSlab_EventScript_ItemTM11",
|
"script": "ScorchedSlab_EventScript_ItemTM11",
|
||||||
"flag": "FLAG_ITEM_SCORCHED_SLAB_TM_11"
|
"flag": "FLAG_ITEM_SCORCHED_SLAB_TM11"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"warp_events": [
|
"warp_events": [
|
||||||
|
|||||||
@@ -90,7 +90,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "SeafloorCavern_Room9_EventScript_ItemTM26",
|
"script": "SeafloorCavern_Room9_EventScript_ItemTM26",
|
||||||
"flag": "FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM_26"
|
"flag": "FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM26"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"graphics_id": "OBJ_EVENT_GFX_KYOGRE_ASLEEP",
|
"graphics_id": "OBJ_EVENT_GFX_KYOGRE_ASLEEP",
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "ShoalCave_LowTideIceRoom_EventScript_ItemTM07",
|
"script": "ShoalCave_LowTideIceRoom_EventScript_ItemTM07",
|
||||||
"flag": "FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_TM_07"
|
"flag": "FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_TM07"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
|
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
"x": 14,
|
"x": 14,
|
||||||
"y": 9,
|
"y": 9,
|
||||||
"elevation": 3,
|
"elevation": 3,
|
||||||
"var": "VAR_SKY_PILLAR_RAQUAZA_CRY_DONE",
|
"var": "VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE",
|
||||||
"var_value": "0",
|
"var_value": "0",
|
||||||
"script": "SkyPillar_Top_EventScript_AwakenRayquaza"
|
"script": "SkyPillar_Top_EventScript_AwakenRayquaza"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -128,7 +128,7 @@ SkyPillar_Top_EventScript_AwakenRayquaza::
|
|||||||
special RemoveCameraObject
|
special RemoveCameraObject
|
||||||
setvar VAR_SOOTOPOLIS_CITY_STATE, 5
|
setvar VAR_SOOTOPOLIS_CITY_STATE, 5
|
||||||
setvar VAR_SKY_PILLAR_STATE, 1
|
setvar VAR_SKY_PILLAR_STATE, 1
|
||||||
setvar VAR_SKY_PILLAR_RAQUAZA_CRY_DONE, 1
|
setvar VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE, 1
|
||||||
releaseall
|
releaseall
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -192,7 +192,7 @@ SlateportCity_PokemonFanClub_EventScript_SootheBellWoman::
|
|||||||
goto_if_set FLAG_RECEIVED_SOOTHE_BELL, SlateportCity_PokemonFanClub_EventScript_ReceivedSootheBell
|
goto_if_set FLAG_RECEIVED_SOOTHE_BELL, SlateportCity_PokemonFanClub_EventScript_ReceivedSootheBell
|
||||||
msgbox SlateportCity_PokemonFanClub_Text_ShowMePokemonThatLoveYou, MSGBOX_DEFAULT
|
msgbox SlateportCity_PokemonFanClub_Text_ShowMePokemonThatLoveYou, MSGBOX_DEFAULT
|
||||||
specialvar VAR_RESULT, GetLeadMonFriendshipScore
|
specialvar VAR_RESULT, GetLeadMonFriendshipScore
|
||||||
goto_if_ge VAR_RESULT, 4, SlateportCity_PokemonFanClub_EventScript_GiveSootheBell
|
goto_if_ge VAR_RESULT, FRIENDSHIP_150_TO_199, SlateportCity_PokemonFanClub_EventScript_GiveSootheBell
|
||||||
release
|
release
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -7,13 +7,13 @@ VerdanturfTown_FriendshipRatersHouse_EventScript_FriendshipRater::
|
|||||||
msgbox VerdanturfTown_FriendshipRatersHouse_Text_SeeHowMuchPokemonLikesYou, MSGBOX_DEFAULT
|
msgbox VerdanturfTown_FriendshipRatersHouse_Text_SeeHowMuchPokemonLikesYou, MSGBOX_DEFAULT
|
||||||
specialvar VAR_RESULT, GetLeadMonFriendshipScore
|
specialvar VAR_RESULT, GetLeadMonFriendshipScore
|
||||||
switch VAR_RESULT
|
switch VAR_RESULT
|
||||||
case 0, VerdanturfTown_FriendshipRatersHouse_EventScript_DetestsYou
|
case FRIENDSHIP_NONE, VerdanturfTown_FriendshipRatersHouse_EventScript_DetestsYou
|
||||||
case 1, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryWary
|
case FRIENDSHIP_1_TO_49, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryWary
|
||||||
case 2, VerdanturfTown_FriendshipRatersHouse_EventScript_NotUsedToYou
|
case FRIENDSHIP_50_TO_99, VerdanturfTown_FriendshipRatersHouse_EventScript_NotUsedToYou
|
||||||
case 3, VerdanturfTown_FriendshipRatersHouse_EventScript_GettingUsedToYou
|
case FRIENDSHIP_100_TO_149, VerdanturfTown_FriendshipRatersHouse_EventScript_GettingUsedToYou
|
||||||
case 4, VerdanturfTown_FriendshipRatersHouse_EventScript_LikesYouQuiteALot
|
case FRIENDSHIP_150_TO_199, VerdanturfTown_FriendshipRatersHouse_EventScript_LikesYouQuiteALot
|
||||||
case 5, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryHappy
|
case FRIENDSHIP_200_TO_254, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryHappy
|
||||||
case 6, VerdanturfTown_FriendshipRatersHouse_EventScript_AdoresYou
|
case FRIENDSHIP_MAX, VerdanturfTown_FriendshipRatersHouse_EventScript_AdoresYou
|
||||||
release
|
release
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -246,7 +246,7 @@
|
|||||||
"trainer_type": "TRAINER_TYPE_NONE",
|
"trainer_type": "TRAINER_TYPE_NONE",
|
||||||
"trainer_sight_or_berry_tree_id": "0",
|
"trainer_sight_or_berry_tree_id": "0",
|
||||||
"script": "VictoryRoad_B1F_EventScript_ItemTM29",
|
"script": "VictoryRoad_B1F_EventScript_ItemTM29",
|
||||||
"flag": "FLAG_ITEM_VICTORY_ROAD_B1F_TM_29"
|
"flag": "FLAG_ITEM_VICTORY_ROAD_B1F_TM29"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
|
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ struct BgConfig2
|
|||||||
u32 basePalette:4;
|
u32 basePalette:4;
|
||||||
u32 unk_3:18;
|
u32 unk_3:18;
|
||||||
|
|
||||||
void* tilemap;
|
void *tilemap;
|
||||||
s32 bg_x;
|
s32 bg_x;
|
||||||
s32 bg_y;
|
s32 bg_y;
|
||||||
};
|
};
|
||||||
@@ -183,14 +183,14 @@ u8 LoadBgVram(u8 bg, const void *src, u16 size, u16 destOffset, u8 mode)
|
|||||||
case 0x1:
|
case 0x1:
|
||||||
offset = sGpuBgConfigs.configs[bg].charBaseIndex * BG_CHAR_SIZE;
|
offset = sGpuBgConfigs.configs[bg].charBaseIndex * BG_CHAR_SIZE;
|
||||||
offset = destOffset + offset;
|
offset = destOffset + offset;
|
||||||
cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, 0);
|
cursor = RequestDma3Copy(src, (void *)(offset + BG_VRAM), size, 0);
|
||||||
if (cursor == -1)
|
if (cursor == -1)
|
||||||
return -1;
|
return -1;
|
||||||
break;
|
break;
|
||||||
case 0x2:
|
case 0x2:
|
||||||
offset = sGpuBgConfigs.configs[bg].mapBaseIndex * BG_SCREEN_SIZE;
|
offset = sGpuBgConfigs.configs[bg].mapBaseIndex * BG_SCREEN_SIZE;
|
||||||
offset = destOffset + offset;
|
offset = destOffset + offset;
|
||||||
cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, 0);
|
cursor = RequestDma3Copy(src, (void *)(offset + BG_VRAM), size, 0);
|
||||||
if (cursor == -1)
|
if (cursor == -1)
|
||||||
return -1;
|
return -1;
|
||||||
break;
|
break;
|
||||||
@@ -372,7 +372,7 @@ void SetBgMode(u8 bgMode)
|
|||||||
SetBgModeInternal(bgMode);
|
SetBgModeInternal(bgMode);
|
||||||
}
|
}
|
||||||
|
|
||||||
u16 LoadBgTiles(u8 bg, const void* src, u16 size, u16 destOffset)
|
u16 LoadBgTiles(u8 bg, const void *src, u16 size, u16 destOffset)
|
||||||
{
|
{
|
||||||
u16 tileOffset;
|
u16 tileOffset;
|
||||||
u8 cursor;
|
u8 cursor;
|
||||||
@@ -422,7 +422,7 @@ u16 Unused_LoadBgPalette(u8 bg, const void *src, u16 size, u16 destOffset)
|
|||||||
if (!IsInvalidBg32(bg))
|
if (!IsInvalidBg32(bg))
|
||||||
{
|
{
|
||||||
u16 paletteOffset = (sGpuBgConfigs2[bg].basePalette * 0x20) + (destOffset * 2);
|
u16 paletteOffset = (sGpuBgConfigs2[bg].basePalette * 0x20) + (destOffset * 2);
|
||||||
cursor = RequestDma3Copy(src, (void*)(paletteOffset + BG_PLTT), size, 0);
|
cursor = RequestDma3Copy(src, (void *)(paletteOffset + BG_PLTT), size, 0);
|
||||||
|
|
||||||
if (cursor == -1)
|
if (cursor == -1)
|
||||||
{
|
{
|
||||||
@@ -863,7 +863,7 @@ void UnsetBgTilemapBuffer(u8 bg)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void* GetBgTilemapBuffer(u8 bg)
|
void *GetBgTilemapBuffer(u8 bg)
|
||||||
{
|
{
|
||||||
if (IsInvalidBg32(bg))
|
if (IsInvalidBg32(bg))
|
||||||
return NULL;
|
return NULL;
|
||||||
@@ -906,7 +906,7 @@ void CopyBgTilemapBufferToVram(u8 bg)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 width, u8 height)
|
void CopyToBgTilemapBufferRect(u8 bg, const void *src, u8 destX, u8 destY, u8 width, u8 height)
|
||||||
{
|
{
|
||||||
u16 destX16;
|
u16 destX16;
|
||||||
u16 destY16;
|
u16 destY16;
|
||||||
@@ -923,7 +923,7 @@ void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 wi
|
|||||||
{
|
{
|
||||||
for (destX16 = destX; destX16 < (destX + width); destX16++)
|
for (destX16 = destX; destX16 < (destX + width); destX16++)
|
||||||
{
|
{
|
||||||
((u16*)sGpuBgConfigs2[bg].tilemap)[((destY16 * 0x20) + destX16)] = *srcCopy++;
|
((u16 *)sGpuBgConfigs2[bg].tilemap)[((destY16 * 0x20) + destX16)] = *srcCopy++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -936,7 +936,7 @@ void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 wi
|
|||||||
{
|
{
|
||||||
for (destX16 = destX; destX16 < (destX + width); destX16++)
|
for (destX16 = destX; destX16 < (destX + width); destX16++)
|
||||||
{
|
{
|
||||||
((u8*)sGpuBgConfigs2[bg].tilemap)[((destY16 * mode) + destX16)] = *srcCopy++;
|
((u8 *)sGpuBgConfigs2[bg].tilemap)[((destY16 * mode) + destX16)] = *srcCopy++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -984,7 +984,7 @@ void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8
|
|||||||
{
|
{
|
||||||
for (j = destX; j < (destX + rectWidth); j++)
|
for (j = destX; j < (destX + rectWidth); j++)
|
||||||
{
|
{
|
||||||
*(u8*)(sGpuBgConfigs2[bg].tilemap + ((var * i) + j)) = *(u8*)(srcPtr) + tileOffset;
|
*(u8 *)(sGpuBgConfigs2[bg].tilemap + ((var * i) + j)) = *(u8 *)(srcPtr) + tileOffset;
|
||||||
srcPtr++;
|
srcPtr++;
|
||||||
}
|
}
|
||||||
srcPtr += (srcWidth - rectWidth);
|
srcPtr += (srcWidth - rectWidth);
|
||||||
@@ -1009,7 +1009,7 @@ void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width,
|
|||||||
{
|
{
|
||||||
for (x16 = x; x16 < (x + width); x16++)
|
for (x16 = x; x16 < (x + width); x16++)
|
||||||
{
|
{
|
||||||
((u16*)sGpuBgConfigs2[bg].tilemap)[((y16 * 0x20) + x16)] = tileNum;
|
((u16 *)sGpuBgConfigs2[bg].tilemap)[((y16 * 0x20) + x16)] = tileNum;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1019,7 +1019,7 @@ void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width,
|
|||||||
{
|
{
|
||||||
for (x16 = x; x16 < (x + width); x16++)
|
for (x16 = x; x16 < (x + width); x16++)
|
||||||
{
|
{
|
||||||
((u8*)sGpuBgConfigs2[bg].tilemap)[((y16 * mode) + x16)] = tileNum;
|
((u8 *)sGpuBgConfigs2[bg].tilemap)[((y16 * mode) + x16)] = tileNum;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1052,7 +1052,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt
|
|||||||
{
|
{
|
||||||
for (x16 = x; x16 < (x + width); x16++)
|
for (x16 = x; x16 < (x + width); x16++)
|
||||||
{
|
{
|
||||||
CopyTileMapEntry(&firstTileNum, &((u16*)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0);
|
CopyTileMapEntry(&firstTileNum, &((u16 *)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0);
|
||||||
firstTileNum = (firstTileNum & (MAPGRID_COLLISION_MASK | MAPGRID_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & MAPGRID_METATILE_ID_MASK);
|
firstTileNum = (firstTileNum & (MAPGRID_COLLISION_MASK | MAPGRID_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & MAPGRID_METATILE_ID_MASK);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1063,7 +1063,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt
|
|||||||
{
|
{
|
||||||
for (x16 = x; x16 < (x + width); x16++)
|
for (x16 = x; x16 < (x + width); x16++)
|
||||||
{
|
{
|
||||||
((u8*)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum;
|
((u8 *)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum;
|
||||||
firstTileNum = (firstTileNum & (MAPGRID_COLLISION_MASK | MAPGRID_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & MAPGRID_METATILE_ID_MASK);
|
firstTileNum = (firstTileNum & (MAPGRID_COLLISION_MASK | MAPGRID_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & MAPGRID_METATILE_ID_MASK);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1240,7 +1240,7 @@ bool32 IsInvalidBg32(u8 bg)
|
|||||||
|
|
||||||
bool32 IsTileMapOutsideWram(u8 bg)
|
bool32 IsTileMapOutsideWram(u8 bg)
|
||||||
{
|
{
|
||||||
if (sGpuBgConfigs2[bg].tilemap > (void*)IWRAM_END)
|
if (sGpuBgConfigs2[bg].tilemap > (void *)IWRAM_END)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
else if (sGpuBgConfigs2[bg].tilemap == NULL)
|
else if (sGpuBgConfigs2[bg].tilemap == NULL)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ void ResetBgsAndClearDma3BusyFlags(u32 leftoverFireRedLeafGreenVariable);
|
|||||||
void InitBgsFromTemplates(u8 bgMode, const struct BgTemplate *templates, u8 numTemplates);
|
void InitBgsFromTemplates(u8 bgMode, const struct BgTemplate *templates, u8 numTemplates);
|
||||||
void InitBgFromTemplate(const struct BgTemplate *template);
|
void InitBgFromTemplate(const struct BgTemplate *template);
|
||||||
void SetBgMode(u8 bgMode);
|
void SetBgMode(u8 bgMode);
|
||||||
u16 LoadBgTiles(u8 bg, const void* src, u16 size, u16 destOffset);
|
u16 LoadBgTiles(u8 bg, const void *src, u16 size, u16 destOffset);
|
||||||
u16 LoadBgTilemap(u8 bg, const void *src, u16 size, u16 destOffset);
|
u16 LoadBgTilemap(u8 bg, const void *src, u16 size, u16 destOffset);
|
||||||
u16 Unused_LoadBgPalette(u8 bg, const void *src, u16 size, u16 destOffset);
|
u16 Unused_LoadBgPalette(u8 bg, const void *src, u16 size, u16 destOffset);
|
||||||
bool8 IsDma3ManagerBusyWithBgCopy(void);
|
bool8 IsDma3ManagerBusyWithBgCopy(void);
|
||||||
@@ -79,10 +79,10 @@ void SetBgAffine(u8 bg, s32 srcCenterX, s32 srcCenterY, s16 dispCenterX, s16 dis
|
|||||||
u8 Unused_AdjustBgMosaic(u8 val, u8 mode);
|
u8 Unused_AdjustBgMosaic(u8 val, u8 mode);
|
||||||
void SetBgTilemapBuffer(u8 bg, void *tilemap);
|
void SetBgTilemapBuffer(u8 bg, void *tilemap);
|
||||||
void UnsetBgTilemapBuffer(u8 bg);
|
void UnsetBgTilemapBuffer(u8 bg);
|
||||||
void* GetBgTilemapBuffer(u8 bg);
|
void *GetBgTilemapBuffer(u8 bg);
|
||||||
void CopyToBgTilemapBuffer(u8 bg, const void *src, u16 mode, u16 destOffset);
|
void CopyToBgTilemapBuffer(u8 bg, const void *src, u16 mode, u16 destOffset);
|
||||||
void CopyBgTilemapBufferToVram(u8 bg);
|
void CopyBgTilemapBufferToVram(u8 bg);
|
||||||
void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 width, u8 height);
|
void CopyToBgTilemapBufferRect(u8 bg, const void *src, u8 destX, u8 destY, u8 width, u8 height);
|
||||||
void CopyToBgTilemapBufferRect_ChangePalette(u8 bg, const void *src, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette);
|
void CopyToBgTilemapBufferRect_ChangePalette(u8 bg, const void *src, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette);
|
||||||
void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, s16 tileOffset, s16 palette2);
|
void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, s16 tileOffset, s16 palette2);
|
||||||
void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height);
|
void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height);
|
||||||
|
|||||||
@@ -2,13 +2,10 @@
|
|||||||
#define GUARD_ALLOC_H
|
#define GUARD_ALLOC_H
|
||||||
|
|
||||||
#define HEAP_SIZE 0x1C000
|
#define HEAP_SIZE 0x1C000
|
||||||
#define malloc Alloc
|
|
||||||
#define calloc(ct, sz) AllocZeroed((ct) * (sz))
|
|
||||||
#define free Free
|
|
||||||
|
|
||||||
#define FREE_AND_SET_NULL(ptr) \
|
#define FREE_AND_SET_NULL(ptr) \
|
||||||
{ \
|
{ \
|
||||||
free(ptr); \
|
Free(ptr); \
|
||||||
ptr = NULL; \
|
ptr = NULL; \
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ static void ApplyAffineAnimFrame(u8 matrixNum, struct AffineAnimFrameCmd *frameC
|
|||||||
static u8 IndexOfSpriteTileTag(u16 tag);
|
static u8 IndexOfSpriteTileTag(u16 tag);
|
||||||
static void AllocSpriteTileRange(u16 tag, u16 start, u16 count);
|
static void AllocSpriteTileRange(u16 tag, u16 start, u16 count);
|
||||||
static void DoLoadSpritePalette(const u16 *src, u16 paletteOffset);
|
static void DoLoadSpritePalette(const u16 *src, u16 paletteOffset);
|
||||||
static void UpdateSpriteMatrixAnchorPos(struct Sprite*, s32, s32);
|
static void UpdateSpriteMatrixAnchorPos(struct Sprite *, s32, s32);
|
||||||
|
|
||||||
typedef void (*AnimFunc)(struct Sprite *);
|
typedef void (*AnimFunc)(struct Sprite *);
|
||||||
typedef void (*AnimCmdFunc)(struct Sprite *);
|
typedef void (*AnimCmdFunc)(struct Sprite *);
|
||||||
@@ -103,9 +103,9 @@ typedef void (*AffineAnimCmdFunc)(u8 matrixNum, struct Sprite *);
|
|||||||
#define DUMMY_OAM_DATA \
|
#define DUMMY_OAM_DATA \
|
||||||
{ \
|
{ \
|
||||||
.y = DISPLAY_HEIGHT, \
|
.y = DISPLAY_HEIGHT, \
|
||||||
.affineMode = 0, \
|
.affineMode = ST_OAM_AFFINE_OFF, \
|
||||||
.objMode = 0, \
|
.objMode = 0, \
|
||||||
.mosaic = 0, \
|
.mosaic = FALSE, \
|
||||||
.bpp = 0, \
|
.bpp = 0, \
|
||||||
.shape = SPRITE_SHAPE(8x8), \
|
.shape = SPRITE_SHAPE(8x8), \
|
||||||
.x = DISPLAY_WIDTH + 64, \
|
.x = DISPLAY_WIDTH + 64, \
|
||||||
@@ -1201,7 +1201,7 @@ u8 GetSpriteMatrixNum(struct Sprite *sprite)
|
|||||||
|
|
||||||
// Used to shift a sprite's position as it scales.
|
// Used to shift a sprite's position as it scales.
|
||||||
// Only used by the minigame countdown, so that for instance the numbers don't slide up as they squish down before jumping.
|
// Only used by the minigame countdown, so that for instance the numbers don't slide up as they squish down before jumping.
|
||||||
void SetSpriteMatrixAnchor(struct Sprite* sprite, s16 x, s16 y)
|
void SetSpriteMatrixAnchor(struct Sprite *sprite, s16 x, s16 y)
|
||||||
{
|
{
|
||||||
sprite->sAnchorX = x;
|
sprite->sAnchorX = x;
|
||||||
sprite->sAnchorY = y;
|
sprite->sAnchorY = y;
|
||||||
|
|||||||
@@ -282,7 +282,7 @@ void FreeSpritePalette(struct Sprite *sprite);
|
|||||||
void FreeSpriteOamMatrix(struct Sprite *sprite);
|
void FreeSpriteOamMatrix(struct Sprite *sprite);
|
||||||
void DestroySpriteAndFreeResources(struct Sprite *sprite);
|
void DestroySpriteAndFreeResources(struct Sprite *sprite);
|
||||||
void AnimateSprite(struct Sprite *sprite);
|
void AnimateSprite(struct Sprite *sprite);
|
||||||
void SetSpriteMatrixAnchor(struct Sprite* sprite, s16 x, s16 y);
|
void SetSpriteMatrixAnchor(struct Sprite *sprite, s16 x, s16 y);
|
||||||
void StartSpriteAnim(struct Sprite *sprite, u8 animNum);
|
void StartSpriteAnim(struct Sprite *sprite, u8 animNum);
|
||||||
void StartSpriteAnimIfDifferent(struct Sprite *sprite, u8 animNum);
|
void StartSpriteAnimIfDifferent(struct Sprite *sprite, u8 animNum);
|
||||||
void SeekSpriteAnim(struct Sprite *sprite, u8 animCmdIndex);
|
void SeekSpriteAnim(struct Sprite *sprite, u8 animCmdIndex);
|
||||||
|
|||||||
@@ -387,7 +387,7 @@ u8 *StringBraille(u8 *dest, const u8 *src)
|
|||||||
const u8 setBrailleFont[] = {
|
const u8 setBrailleFont[] = {
|
||||||
EXT_CTRL_CODE_BEGIN,
|
EXT_CTRL_CODE_BEGIN,
|
||||||
EXT_CTRL_CODE_FONT,
|
EXT_CTRL_CODE_FONT,
|
||||||
6,
|
FONT_BRAILLE,
|
||||||
EOS
|
EOS
|
||||||
};
|
};
|
||||||
const u8 gotoLine2[] = {
|
const u8 gotoLine2[] = {
|
||||||
|
|||||||
@@ -652,7 +652,7 @@ void ClearTextSpan(struct TextPrinter *textPrinter, u32 width)
|
|||||||
struct Window *window;
|
struct Window *window;
|
||||||
struct Bitmap pixels_data;
|
struct Bitmap pixels_data;
|
||||||
struct TextGlyph *glyph;
|
struct TextGlyph *glyph;
|
||||||
u8* glyphHeight;
|
u8 *glyphHeight;
|
||||||
|
|
||||||
if (sLastTextBgColor != TEXT_COLOR_TRANSPARENT)
|
if (sLastTextBgColor != TEXT_COLOR_TRANSPARENT)
|
||||||
{
|
{
|
||||||
@@ -1684,7 +1684,7 @@ u8 GetMenuCursorDimensionByFont(u8 fontId, u8 whichDimension)
|
|||||||
|
|
||||||
static void DecompressGlyph_Small(u16 glyphId, bool32 isJapanese)
|
static void DecompressGlyph_Small(u16 glyphId, bool32 isJapanese)
|
||||||
{
|
{
|
||||||
const u16* glyphs;
|
const u16 *glyphs;
|
||||||
|
|
||||||
if (isJapanese == 1)
|
if (isJapanese == 1)
|
||||||
{
|
{
|
||||||
@@ -1726,7 +1726,7 @@ static u32 GetGlyphWidth_Small(u16 glyphId, bool32 isJapanese)
|
|||||||
|
|
||||||
static void DecompressGlyph_Narrow(u16 glyphId, bool32 isJapanese)
|
static void DecompressGlyph_Narrow(u16 glyphId, bool32 isJapanese)
|
||||||
{
|
{
|
||||||
const u16* glyphs;
|
const u16 *glyphs;
|
||||||
|
|
||||||
if (isJapanese == TRUE)
|
if (isJapanese == TRUE)
|
||||||
{
|
{
|
||||||
@@ -1768,7 +1768,7 @@ static u32 GetGlyphWidth_Narrow(u16 glyphId, bool32 isJapanese)
|
|||||||
|
|
||||||
static void DecompressGlyph_SmallNarrow(u16 glyphId, bool32 isJapanese)
|
static void DecompressGlyph_SmallNarrow(u16 glyphId, bool32 isJapanese)
|
||||||
{
|
{
|
||||||
const u16* glyphs;
|
const u16 *glyphs;
|
||||||
|
|
||||||
if (isJapanese == TRUE)
|
if (isJapanese == TRUE)
|
||||||
{
|
{
|
||||||
@@ -1810,7 +1810,7 @@ static u32 GetGlyphWidth_SmallNarrow(u16 glyphId, bool32 isJapanese)
|
|||||||
|
|
||||||
static void DecompressGlyph_Short(u16 glyphId, bool32 isJapanese)
|
static void DecompressGlyph_Short(u16 glyphId, bool32 isJapanese)
|
||||||
{
|
{
|
||||||
const u16* glyphs;
|
const u16 *glyphs;
|
||||||
|
|
||||||
if (isJapanese == TRUE)
|
if (isJapanese == TRUE)
|
||||||
{
|
{
|
||||||
@@ -1854,7 +1854,7 @@ static u32 GetGlyphWidth_Short(u16 glyphId, bool32 isJapanese)
|
|||||||
|
|
||||||
static void DecompressGlyph_Normal(u16 glyphId, bool32 isJapanese)
|
static void DecompressGlyph_Normal(u16 glyphId, bool32 isJapanese)
|
||||||
{
|
{
|
||||||
const u16* glyphs;
|
const u16 *glyphs;
|
||||||
|
|
||||||
if (isJapanese == TRUE)
|
if (isJapanese == TRUE)
|
||||||
{
|
{
|
||||||
@@ -1896,7 +1896,7 @@ static u32 GetGlyphWidth_Normal(u16 glyphId, bool32 isJapanese)
|
|||||||
|
|
||||||
static void DecompressGlyph_Bold(u16 glyphId)
|
static void DecompressGlyph_Bold(u16 glyphId)
|
||||||
{
|
{
|
||||||
const u16* glyphs;
|
const u16 *glyphs;
|
||||||
|
|
||||||
glyphs = sFontBoldJapaneseGlyphs + (0x100 * (glyphId >> 4)) + (0x8 * (glyphId & 0xF));
|
glyphs = sFontBoldJapaneseGlyphs + (0x100 * (glyphId >> 4)) + (0x8 * (glyphId & 0xF));
|
||||||
DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop);
|
DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop);
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ struct TextPrinterSubStruct
|
|||||||
|
|
||||||
struct TextPrinterTemplate
|
struct TextPrinterTemplate
|
||||||
{
|
{
|
||||||
const u8* currentChar;
|
const u8 *currentChar;
|
||||||
u8 windowId;
|
u8 windowId;
|
||||||
u8 fontId;
|
u8 fontId;
|
||||||
u8 x;
|
u8 x;
|
||||||
@@ -148,7 +148,6 @@ void RestoreTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor);
|
|||||||
void DecompressGlyphTile(const void *src_, void *dest_);
|
void DecompressGlyphTile(const void *src_, void *dest_);
|
||||||
void CopyGlyphToWindow(struct TextPrinter *x);
|
void CopyGlyphToWindow(struct TextPrinter *x);
|
||||||
void ClearTextSpan(struct TextPrinter *textPrinter, u32 width);
|
void ClearTextSpan(struct TextPrinter *textPrinter, u32 width);
|
||||||
u8 GetMenuCursorDimensionByFont(u8, u8);
|
|
||||||
|
|
||||||
void TextPrinterInitDownArrowCounters(struct TextPrinter *textPrinter);
|
void TextPrinterInitDownArrowCounters(struct TextPrinter *textPrinter);
|
||||||
void TextPrinterDrawDownArrow(struct TextPrinter *textPrinter);
|
void TextPrinterDrawDownArrow(struct TextPrinter *textPrinter);
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ bool16 InitWindows(const struct WindowTemplate *templates)
|
|||||||
int j;
|
int j;
|
||||||
u8 bgLayer;
|
u8 bgLayer;
|
||||||
u16 attrib;
|
u16 attrib;
|
||||||
u8* allocatedTilemapBuffer;
|
u8 *allocatedTilemapBuffer;
|
||||||
int allocatedBaseBlock;
|
int allocatedBaseBlock;
|
||||||
|
|
||||||
for (i = 0; i < NUM_BACKGROUNDS; ++i)
|
for (i = 0; i < NUM_BACKGROUNDS; ++i)
|
||||||
@@ -405,7 +405,7 @@ void BlitBitmapRectToWindow(u8 windowId, const u8 *pixels, u16 srcX, u16 srcY, u
|
|||||||
struct Bitmap sourceRect;
|
struct Bitmap sourceRect;
|
||||||
struct Bitmap destRect;
|
struct Bitmap destRect;
|
||||||
|
|
||||||
sourceRect.pixels = (u8*)pixels;
|
sourceRect.pixels = (u8 *)pixels;
|
||||||
sourceRect.width = srcWidth;
|
sourceRect.width = srcWidth;
|
||||||
sourceRect.height = srcHeight;
|
sourceRect.height = srcHeight;
|
||||||
|
|
||||||
@@ -421,7 +421,7 @@ static void BlitBitmapRectToWindowWithColorKey(u8 windowId, const u8 *pixels, u1
|
|||||||
struct Bitmap sourceRect;
|
struct Bitmap sourceRect;
|
||||||
struct Bitmap destRect;
|
struct Bitmap destRect;
|
||||||
|
|
||||||
sourceRect.pixels = (u8*)pixels;
|
sourceRect.pixels = (u8 *)pixels;
|
||||||
sourceRect.width = srcWidth;
|
sourceRect.width = srcWidth;
|
||||||
sourceRect.height = srcHeight;
|
sourceRect.height = srcHeight;
|
||||||
|
|
||||||
@@ -463,9 +463,9 @@ void FillWindowPixelBuffer(u8 windowId, u8 fillValue)
|
|||||||
destOffset = i + (a); \
|
destOffset = i + (a); \
|
||||||
srcOffset = i + (((width * (distanceLoop & ~7)) | (distanceLoop & 7)) * 4); \
|
srcOffset = i + (((width * (distanceLoop & ~7)) | (distanceLoop & 7)) * 4); \
|
||||||
if (srcOffset < size) \
|
if (srcOffset < size) \
|
||||||
*(u32*)(tileData + destOffset) = *(u32*)(tileData + srcOffset); \
|
*(u32 *)(tileData + destOffset) = *(u32 *)(tileData + srcOffset); \
|
||||||
else \
|
else \
|
||||||
*(u32*)(tileData + destOffset) = fillValue32; \
|
*(u32 *)(tileData + destOffset) = fillValue32; \
|
||||||
distanceLoop++; \
|
distanceLoop++; \
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -474,9 +474,9 @@ void FillWindowPixelBuffer(u8 windowId, u8 fillValue)
|
|||||||
destOffset = i + (a); \
|
destOffset = i + (a); \
|
||||||
srcOffset = i + (((width * (distanceLoop & ~7)) | (distanceLoop & 7)) * 4); \
|
srcOffset = i + (((width * (distanceLoop & ~7)) | (distanceLoop & 7)) * 4); \
|
||||||
if (srcOffset < size) \
|
if (srcOffset < size) \
|
||||||
*(u32*)(tileData - destOffset) = *(u32*)(tileData - srcOffset); \
|
*(u32 *)(tileData - destOffset) = *(u32 *)(tileData - srcOffset); \
|
||||||
else \
|
else \
|
||||||
*(u32*)(tileData - destOffset) = fillValue32; \
|
*(u32 *)(tileData - destOffset) = fillValue32; \
|
||||||
distanceLoop++; \
|
distanceLoop++; \
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -550,7 +550,7 @@ bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value)
|
|||||||
gWindows[windowId].window.baseBlock = value;
|
gWindows[windowId].window.baseBlock = value;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
case WINDOW_TILE_DATA:
|
case WINDOW_TILE_DATA:
|
||||||
gWindows[windowId].tileData = (u8*)(value);
|
gWindows[windowId].tileData = (u8 *)(value);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
case WINDOW_BG:
|
case WINDOW_BG:
|
||||||
case WINDOW_WIDTH:
|
case WINDOW_WIDTH:
|
||||||
@@ -605,7 +605,7 @@ static void DummyWindowBgTilemap8Bit(void)
|
|||||||
u16 AddWindow8Bit(const struct WindowTemplate *template)
|
u16 AddWindow8Bit(const struct WindowTemplate *template)
|
||||||
{
|
{
|
||||||
u16 windowId;
|
u16 windowId;
|
||||||
u8* memAddress;
|
u8 *memAddress;
|
||||||
u8 bgLayer;
|
u8 bgLayer;
|
||||||
|
|
||||||
for (windowId = 0; windowId < WINDOWS_MAX; windowId++)
|
for (windowId = 0; windowId < WINDOWS_MAX; windowId++)
|
||||||
@@ -675,7 +675,7 @@ void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, const u8 *pixels, u16 srcX, u
|
|||||||
struct Bitmap sourceRect;
|
struct Bitmap sourceRect;
|
||||||
struct Bitmap destRect;
|
struct Bitmap destRect;
|
||||||
|
|
||||||
sourceRect.pixels = (u8*) pixels;
|
sourceRect.pixels = (u8 *) pixels;
|
||||||
sourceRect.width = srcWidth;
|
sourceRect.width = srcWidth;
|
||||||
sourceRect.height = srcHeight;
|
sourceRect.height = srcHeight;
|
||||||
|
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, const u8 *pixels, u16 srcX, u
|
|||||||
void CopyWindowToVram8Bit(u8 windowId, u8 mode);
|
void CopyWindowToVram8Bit(u8 windowId, u8 mode);
|
||||||
|
|
||||||
extern struct Window gWindows[];
|
extern struct Window gWindows[];
|
||||||
extern void* gWindowBgTilemapBuffers[];
|
extern void *gWindowBgTilemapBuffers[];
|
||||||
extern u32 gUnusedWindowVar1;
|
extern u32 gUnusedWindowVar1;
|
||||||
extern u32 gUnusedWindowVar2;
|
extern u32 gUnusedWindowVar2;
|
||||||
extern u32 gUnusedWindowVar3;
|
extern u32 gUnusedWindowVar3;
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 277 B After Width: | Height: | Size: 277 B |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 231 B After Width: | Height: | Size: 256 B |
|
After Width: | Height: | Size: 285 B |
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
106 156 213
|
||||||
|
255 255 255
|
||||||
|
57 57 57
|
||||||
|
139 139 131
|
||||||
|
197 189 180
|
||||||
|
230 222 213
|
||||||
|
74 115 139
|
||||||
|
123 172 197
|
||||||
|
172 115 74
|
||||||
|
213 156 115
|
||||||
|
98 156 57
|
||||||
|
148 189 106
|
||||||
|
189 164 32
|
||||||
|
230 222 90
|
||||||
|
57 57 57
|
||||||
|
57 57 57
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
106 156 213
|
||||||
|
255 8 8
|
||||||
|
222 57 74
|
||||||
|
180 65 82
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
230 222 213
|
||||||
|
0 0 0
|
||||||
|
230 222 213
|
||||||
|
0 0 0
|
||||||
|
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 159 B |
|
After Width: | Height: | Size: 166 B |
|
After Width: | Height: | Size: 164 B |
|
Before Width: | Height: | Size: 95 B After Width: | Height: | Size: 153 B |
@@ -1,6 +1,6 @@
|
|||||||
JASC-PAL
|
JASC-PAL
|
||||||
0100
|
0100
|
||||||
96
|
16
|
||||||
106 156 213
|
106 156 213
|
||||||
255 255 255
|
255 255 255
|
||||||
115 115 115
|
115 115 115
|
||||||
@@ -17,83 +17,3 @@ JASC-PAL
|
|||||||
230 222 90
|
230 222 90
|
||||||
238 230 139
|
238 230 139
|
||||||
246 238 197
|
246 238 197
|
||||||
106 156 213
|
|
||||||
255 255 255
|
|
||||||
57 57 57
|
|
||||||
115 115 115
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 255
|
|
||||||
0 0 255
|
|
||||||
0 0 255
|
|
||||||
0 0 255
|
|
||||||
74 115 139
|
|
||||||
98 139 164
|
|
||||||
123 172 197
|
|
||||||
156 205 230
|
|
||||||
180 222 246
|
|
||||||
106 156 213
|
|
||||||
255 255 255
|
|
||||||
57 57 57
|
|
||||||
115 115 115
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 255
|
|
||||||
0 0 255
|
|
||||||
0 0 255
|
|
||||||
0 0 255
|
|
||||||
172 115 74
|
|
||||||
189 131 90
|
|
||||||
213 156 115
|
|
||||||
246 205 164
|
|
||||||
255 230 197
|
|
||||||
106 156 213
|
|
||||||
255 255 255
|
|
||||||
57 57 57
|
|
||||||
115 115 115
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 255
|
|
||||||
0 0 255
|
|
||||||
0 0 255
|
|
||||||
0 0 255
|
|
||||||
98 156 57
|
|
||||||
123 172 82
|
|
||||||
148 189 106
|
|
||||||
197 230 156
|
|
||||||
213 238 189
|
|
||||||
106 156 213
|
|
||||||
255 255 255
|
|
||||||
57 57 57
|
|
||||||
139 139 131
|
|
||||||
197 189 180
|
|
||||||
230 222 213
|
|
||||||
74 115 139
|
|
||||||
123 172 197
|
|
||||||
172 115 74
|
|
||||||
213 156 115
|
|
||||||
98 156 57
|
|
||||||
148 189 106
|
|
||||||
189 164 32
|
|
||||||
230 222 90
|
|
||||||
57 57 57
|
|
||||||
57 57 57
|
|
||||||
106 156 213
|
|
||||||
255 8 8
|
|
||||||
222 57 74
|
|
||||||
180 65 82
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
0 0 0
|
|
||||||
230 222 213
|
|
||||||
0 0 0
|
|
||||||
230 222 213
|
|
||||||
0 0 0
|
|
||||||
|
|||||||
|
After Width: | Height: | Size: 271 B |
|
Before Width: | Height: | Size: 89 B |
|
After Width: | Height: | Size: 145 B |
|
After Width: | Height: | Size: 253 B |
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
106 156 213
|
||||||
|
255 255 255
|
||||||
|
57 57 57
|
||||||
|
115 115 115
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 255
|
||||||
|
0 0 255
|
||||||
|
0 0 255
|
||||||
|
0 0 255
|
||||||
|
172 115 74
|
||||||
|
189 131 90
|
||||||
|
213 156 115
|
||||||
|
246 205 164
|
||||||
|
255 230 197
|
||||||
|
After Width: | Height: | Size: 186 B |
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
106 156 213
|
||||||
|
255 255 255
|
||||||
|
57 57 57
|
||||||
|
115 115 115
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 255
|
||||||
|
0 0 255
|
||||||
|
0 0 255
|
||||||
|
0 0 255
|
||||||
|
98 156 57
|
||||||
|
123 172 82
|
||||||
|
148 189 106
|
||||||
|
197 230 156
|
||||||
|
213 238 189
|
||||||
|
After Width: | Height: | Size: 192 B |
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
106 156 213
|
||||||
|
255 255 255
|
||||||
|
57 57 57
|
||||||
|
115 115 115
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 255
|
||||||
|
0 0 255
|
||||||
|
0 0 255
|
||||||
|
0 0 255
|
||||||
|
74 115 139
|
||||||
|
98 139 164
|
||||||
|
123 172 197
|
||||||
|
156 205 230
|
||||||
|
180 222 246
|
||||||
|
After Width: | Height: | Size: 194 B |
|
Before Width: | Height: | Size: 192 B After Width: | Height: | Size: 192 B |
|
Before Width: | Height: | Size: 203 B After Width: | Height: | Size: 203 B |
|
Before Width: | Height: | Size: 309 B |
|
Before Width: | Height: | Size: 480 B |
|
Before Width: | Height: | Size: 81 B After Width: | Height: | Size: 137 B |
|
Before Width: | Height: | Size: 666 B After Width: | Height: | Size: 719 B |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 838 B After Width: | Height: | Size: 838 B |
|
Before Width: | Height: | Size: 800 B After Width: | Height: | Size: 800 B |
|
Before Width: | Height: | Size: 722 B After Width: | Height: | Size: 722 B |
|
Before Width: | Height: | Size: 726 B After Width: | Height: | Size: 726 B |
|
Before Width: | Height: | Size: 684 B After Width: | Height: | Size: 684 B |
|
Before Width: | Height: | Size: 702 B After Width: | Height: | Size: 702 B |
|
Before Width: | Height: | Size: 619 B After Width: | Height: | Size: 619 B |
|
Before Width: | Height: | Size: 702 B After Width: | Height: | Size: 702 B |
|
Before Width: | Height: | Size: 662 B After Width: | Height: | Size: 662 B |
|
Before Width: | Height: | Size: 698 B After Width: | Height: | Size: 698 B |
|
Before Width: | Height: | Size: 735 B After Width: | Height: | Size: 735 B |
|
Before Width: | Height: | Size: 698 B After Width: | Height: | Size: 698 B |
|
Before Width: | Height: | Size: 688 B After Width: | Height: | Size: 688 B |
|
Before Width: | Height: | Size: 682 B After Width: | Height: | Size: 682 B |
|
Before Width: | Height: | Size: 932 B After Width: | Height: | Size: 932 B |
|
Before Width: | Height: | Size: 629 B After Width: | Height: | Size: 629 B |
|
Before Width: | Height: | Size: 978 B After Width: | Height: | Size: 978 B |
|
Before Width: | Height: | Size: 852 B After Width: | Height: | Size: 852 B |
|
Before Width: | Height: | Size: 681 B After Width: | Height: | Size: 681 B |
|
Before Width: | Height: | Size: 627 B After Width: | Height: | Size: 627 B |
|
Before Width: | Height: | Size: 890 B After Width: | Height: | Size: 890 B |
|
Before Width: | Height: | Size: 900 B After Width: | Height: | Size: 900 B |
|
Before Width: | Height: | Size: 906 B After Width: | Height: | Size: 906 B |
|
Before Width: | Height: | Size: 710 B After Width: | Height: | Size: 710 B |