diff options
author | luckytyphlosion <alan.rj.huang@gmail.com> | 2015-08-30 17:55:02 -0400 |
---|---|---|
committer | luckytyphlosion <alan.rj.huang@gmail.com> | 2015-08-30 17:55:02 -0400 |
commit | d2ed7674f499b1fd6c4059da40b8b42c6bf96995 (patch) | |
tree | f581489b522fc647477d7b36dee072d553c44fd1 /scripts/viridiangym.asm | |
parent | 3394d8320f35f524231aa13bd9cae34e22246a6d (diff) | |
parent | 1a987d1e1ab96ca9553d4253c72858057332a03a (diff) |
Merge branch 'master' of https://github.com/iimarckus/pokered
Doesn't build.
Diffstat (limited to 'scripts/viridiangym.asm')
-rwxr-xr-x | scripts/viridiangym.asm | 221 |
1 files changed, 102 insertions, 119 deletions
diff --git a/scripts/viridiangym.asm b/scripts/viridiangym.asm index 6ced7d82..6cded55d 100755 --- a/scripts/viridiangym.asm +++ b/scripts/viridiangym.asm @@ -30,9 +30,9 @@ ViridianGymScriptPointers: ; 748e1 (1d:48e1) dw ViridianGymScript4 ViridianGymScript0: ; 748eb (1d:48eb) - ld a, [W_YCOORD] ; wd361 + ld a, [W_YCOORD] ld b, a - ld a, [W_XCOORD] ; wd362 + ld a, [W_XCOORD] ld c, a ld hl, ViridianGymArrowTilePlayerMovement call DecodeArrowMovementRLE @@ -41,7 +41,7 @@ ViridianGymScript0: ; 748eb (1d:48eb) call StartSimulatingJoypadStates ld hl, wd736 set 7, [hl] - ld a, (SFX_02_52 - SFX_Headers_02) / 3 + ld a, SFX_ARROW_TILES call PlaySound ld a, $ff ld [wJoyIgnore], a @@ -80,45 +80,41 @@ ViridianGymArrowTilePlayerMovement: ; 74916 (1d:4916) db $FF ;format: direction, count -;right: $10 -;left: $20 -;up: $40 -;down: $80 ViridianGymArrowMovement1: ; 74947 (1d:4947) - db $40,$09,$FF + db D_UP,$09,$FF ViridianGymArrowMovement2: ; 7494a (1d:494a) - db $20,$08,$FF + db D_LEFT,$08,$FF ViridianGymArrowMovement3: ; 7494d (1d:494d) - db $80,$09,$FF + db D_DOWN,$09,$FF ViridianGymArrowMovement4: ; 74950 (1d:4950) - db $10,$06,$FF + db D_RIGHT,$06,$FF ViridianGymArrowMovement5: ; 74953 (1d:4953) - db $80,$02,$FF + db D_DOWN,$02,$FF ViridianGymArrowMovement6: ; 74956 (1d:4956) - db $80,$07,$FF + db D_DOWN,$07,$FF ViridianGymArrowMovement7: ; 74959 (1d:4959) - db $10,$08,$FF + db D_RIGHT,$08,$FF ViridianGymArrowMovement8: ; 7495c (1d:495c) - db $10,$09,$FF + db D_RIGHT,$09,$FF ViridianGymArrowMovement9: ; 7495f (1d:495f) - db $40,$08,$FF + db D_UP,$08,$FF ViridianGymArrowMovement10: ; 74962 (1d:4962) - db $40,$06,$FF + db D_UP,$06,$FF ViridianGymArrowMovement11: ; 74965 (1d:4965) - db $20,$06,$FF + db D_LEFT,$06,$FF ViridianGymArrowMovement12: ; 74968 (1d:4968) - db $20,$0C,$FF + db D_LEFT,$0C,$FF ViridianGymScript4: ; 7496b (1d:496b) ld a, [wSimulatedJoypadStatesIndex] @@ -132,55 +128,44 @@ ViridianGymScript4: ; 7496b (1d:496b) ld [W_CURMAPSCRIPT], a ret .asm_74980 - ld b, BANK(LoadSpinnerArrowTiles) - ld hl, LoadSpinnerArrowTiles - jp Bankswitch + jpba LoadSpinnerArrowTiles ViridianGymScript3: ; 74988 (1d:4988) - ld a, [W_ISINBATTLE] ; W_ISINBATTLE + ld a, [W_ISINBATTLE] cp $ff jp z, ViridianGymScript_748d6 ld a, $f0 ld [wJoyIgnore], a ViridianGymScript3_74995: ; 74995 (1d:4995) ld a, $c - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + ld [hSpriteIndexOrTextID], a call DisplayTextID - ld hl, wd751 - set 1, [hl] - ld bc, (TM_27 << 8) | 1 + SetEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI + lb bc, TM_27, 1 call GiveItem jr nc, .BagFull ld a, $d - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + ld [hSpriteIndexOrTextID], a call DisplayTextID - ld hl, wd751 - set 0, [hl] + SetEvent EVENT_GOT_TM27 jr .asm_749be .BagFull ld a, $e - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + ld [hSpriteIndexOrTextID], a call DisplayTextID .asm_749be ld hl, W_OBTAINEDBADGES set 7, [hl] - ld hl, wd72a + ld hl, wBeatGymFlags set 7, [hl] ; deactivate gym trainers - ld a, [wd751] - or %11111100 - ld [wd751], a - ld a, [wd752] - or %00000011 - ld [wd752], a + SetEventRange EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0, EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7 ld a, HS_ROUTE_22_RIVAL_2 - ld [wcc4d], a + ld [wMissableObjectIndex], a predef ShowObject - ld hl, wd7eb - set 1, [hl] - set 7, [hl] + SetEvents EVENT_2ND_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE jp ViridianGymScript_748d6 ViridianGymTextPointers: ; 749ec (1d:49ec) @@ -194,110 +179,109 @@ ViridianGymTextPointers: ; 749ec (1d:49ec) dw ViridianGymText8 dw ViridianGymText9 dw ViridianGymText10 - dw Predef5CText + dw PickUpItemText dw ViridianGymText12 dw ViridianGymText13 dw ViridianGymText14 ViridianGymTrainerHeaders: ; 74a08 (1d:4a08) ViridianGymTrainerHeader0: ; 74a08 (1d:4a08) - db $2 ; flag's bit + dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0 db ($4 << 4) ; trainer's view range - dw wd751 ; flag's byte - dw ViridianGymBattleText1 ; 0x4afd TextBeforeBattle - dw ViridianGymAfterBattleText1 ; 0x4b07 TextAfterBattle - dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle - dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle + dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0 + dw ViridianGymBattleText1 ; TextBeforeBattle + dw ViridianGymAfterBattleText1 ; TextAfterBattle + dw ViridianGymEndBattleText1 ; TextEndBattle + dw ViridianGymEndBattleText1 ; TextEndBattle ViridianGymTrainerHeader1: ; 74a14 (1d:4a14) - db $3 ; flag's bit + dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_1 db ($4 << 4) ; trainer's view range - dw wd751 ; flag's byte - dw ViridianGymBattleText2 ; 0x4b16 TextBeforeBattle - dw ViridianGymAfterBattleText2 ; 0x4b20 TextAfterBattle - dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle - dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle + dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_1 + dw ViridianGymBattleText2 ; TextBeforeBattle + dw ViridianGymAfterBattleText2 ; TextAfterBattle + dw ViridianGymEndBattleText2 ; TextEndBattle + dw ViridianGymEndBattleText2 ; TextEndBattle ViridianGymTrainerHeader2: ; 74a20 (1d:4a20) - db $4 ; flag's bit + dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_2 db ($4 << 4) ; trainer's view range - dw wd751 ; flag's byte - dw ViridianGymBattleText3 ; 0x4b2f TextBeforeBattle - dw ViridianGymAfterBattleText3 ; 0x4b39 TextAfterBattle - dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle - dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle + dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_2 + dw ViridianGymBattleText3 ; TextBeforeBattle + dw ViridianGymAfterBattleText3 ; TextAfterBattle + dw ViridianGymEndBattleText3 ; TextEndBattle + dw ViridianGymEndBattleText3 ; TextEndBattle ViridianGymTrainerHeader3: ; 74a2c (1d:4a2c) - db $5 ; flag's bit + dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_3 db ($2 << 4) ; trainer's view range - dw wd751 ; flag's byte - dw ViridianGymBattleText4 ; 0x4b48 TextBeforeBattle - dw ViridianGymAfterBattleText4 ; 0x4b52 TextAfterBattle - dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle - dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle + dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_3 + dw ViridianGymBattleText4 ; TextBeforeBattle + dw ViridianGymAfterBattleText4 ; TextAfterBattle + dw ViridianGymEndBattleText4 ; TextEndBattle + dw ViridianGymEndBattleText4 ; TextEndBattle ViridianGymTrainerHeader4: ; 74a38 (1d:4a38) - db $6 ; flag's bit + dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_4 db ($3 << 4) ; trainer's view range - dw wd751 ; flag's byte - dw ViridianGymBattleText5 ; 0x4b61 TextBeforeBattle - dw ViridianGymAfterBattleText5 ; 0x4b6b TextAfterBattle - dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle - dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle + dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_4 + dw ViridianGymBattleText5 ; TextBeforeBattle + dw ViridianGymAfterBattleText5 ; TextAfterBattle + dw ViridianGymEndBattleText5 ; TextEndBattle + dw ViridianGymEndBattleText5 ; TextEndBattle ViridianGymTrainerHeader5: ; 74a44 (1d:4a44) - db $7 ; flag's bit + dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_5 db ($4 << 4) ; trainer's view range - dw wd751 ; flag's byte - dw ViridianGymBattleText6 ; 0x4b7a TextBeforeBattle - dw ViridianGymAfterBattleText6 ; 0x4b84 TextAfterBattle - dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle - dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle + dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_5 + dw ViridianGymBattleText6 ; TextBeforeBattle + dw ViridianGymAfterBattleText6 ; TextAfterBattle + dw ViridianGymEndBattleText6 ; TextEndBattle + dw ViridianGymEndBattleText6 ; TextEndBattle ViridianGymTrainerHeader6: ; 74a50 (1d:4a50) - db $8 ; flag's bit + dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_6, 1 db ($3 << 4) ; trainer's view range - dw wd751 ; flag's byte - dw ViridianGymBattleText7 ; 0x4b93 TextBeforeBattle - dw ViridianGymAfterBattleText7 ; 0x4b9d TextAfterBattle - dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle - dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle + dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_6, 1 + dw ViridianGymBattleText7 ; TextBeforeBattle + dw ViridianGymAfterBattleText7 ; TextAfterBattle + dw ViridianGymEndBattleText7 ; TextEndBattle + dw ViridianGymEndBattleText7 ; TextEndBattle ViridianGymTrainerHeader7: ; 74a5c (1d:4a5c) - db $9 ; flag's bit + dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7, 1 db ($4 << 4) ; trainer's view range - dw wd751 ; flag's byte - dw ViridianGymBattleText8 ; 0x4bac TextBeforeBattle - dw ViridianGymAfterBattleText8 ; 0x4bb6 TextAfterBattle - dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle - dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle + dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7, 1 + dw ViridianGymBattleText8 ; TextBeforeBattle + dw ViridianGymAfterBattleText8 ; TextAfterBattle + dw ViridianGymEndBattleText8 ; TextEndBattle + dw ViridianGymEndBattleText8 ; TextEndBattle db $ff ViridianGymText1: ; 74a69 (1d:4a69) - db $08 ; asm - ld a, [wd751] - bit 1, a - jr z, .asm_6de66 ; 0x74a6f - bit 0, a - jr nz, .asm_9fc95 ; 0x74a73 + TX_ASM + CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI + jr z, .asm_6de66 + CheckEventReuseA EVENT_GOT_TM27 + jr nz, .asm_9fc95 call z, ViridianGymScript3_74995 call DisableWaitingAfterTextDisplay - jr .asm_6dff7 ; 0x74a7b -.asm_9fc95 ; 0x74a7d + jr .asm_6dff7 +.asm_9fc95 ld a, $1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a ld hl, ViridianGymText_74ad9 call PrintText call GBFadeOutToBlack ld a, HS_VIRIDIAN_GYM_GIOVANNI - ld [wcc4d], a + ld [wMissableObjectIndex], a predef HideObject call UpdateSprites call Delay3 call GBFadeInFromBlack - jr .asm_6dff7 ; 0x74a9e -.asm_6de66 ; 0x74aa0 + jr .asm_6dff7 +.asm_6de66 ld hl, ViridianGymText_74ace call PrintText ld hl, wd72d @@ -306,7 +290,7 @@ ViridianGymText1: ; 74a69 (1d:4a69) ld hl, ViridianGymText_74ad3 ld de, ViridianGymText_74ad3 call SaveEndBattleTextPointers - ldh a, [$8c] + ld a, [H_SPRITEINDEX] ld [wSpriteIndex], a call EngageMapTrainer call InitBattleEnemyParameters @@ -314,7 +298,7 @@ ViridianGymText1: ; 74a69 (1d:4a69) ld [W_GYMLEADERNO], a ld a, $3 ld [W_VIRIDIANGYMCURSCRIPT], a -.asm_6dff7 ; 0x74acb +.asm_6dff7 jp TextScriptEnd ViridianGymText_74ace: ; 74ace (1d:4ace) @@ -346,7 +330,7 @@ ViridianGymText14: ; 74aee (1d:4aee) db "@" ViridianGymText2: ; 74af3 (1d:4af3) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -364,7 +348,7 @@ ViridianGymAfterBattleText1: ; 74b07 (1d:4b07) db "@" ViridianGymText3: ; 74b0c (1d:4b0c) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -382,7 +366,7 @@ ViridianGymAfterBattleText2: ; 74b20 (1d:4b20) db "@" ViridianGymText4: ; 74b25 (1d:4b25) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -400,7 +384,7 @@ ViridianGymAfterBattleText3: ; 74b39 (1d:4b39) db "@" ViridianGymText5: ; 74b3e (1d:4b3e) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -418,7 +402,7 @@ ViridianGymAfterBattleText4: ; 74b52 (1d:4b52) db "@" ViridianGymText6: ; 74b57 (1d:4b57) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -436,7 +420,7 @@ ViridianGymAfterBattleText5: ; 74b6b (1d:4b6b) db "@" ViridianGymText7: ; 74b70 (1d:4b70) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -454,7 +438,7 @@ ViridianGymAfterBattleText6: ; 74b84 (1d:4b84) db "@" ViridianGymText8: ; 74b89 (1d:4b89) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader6 call TalkToTrainer jp TextScriptEnd @@ -472,7 +456,7 @@ ViridianGymAfterBattleText7: ; 74b9d (1d:4b9d) db "@" ViridianGymText9: ; 74ba2 (1d:4ba2) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader7 call TalkToTrainer jp TextScriptEnd @@ -490,17 +474,16 @@ ViridianGymAfterBattleText8: ; 74bb6 (1d:4bb6) db "@" ViridianGymText10: ; 74bbb (1d:4bbb) - db $08 ; asm - ld a, [wd751] - bit 1, a - jr nz, .asm_1abd1 ; 0x74bc1 + TX_ASM + CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI + jr nz, .asm_1abd1 ld hl, ViridianGymText_74bd4 call PrintText - jr .asm_6064d ; 0x74bc9 -.asm_1abd1 ; 0x74bcb + jr .asm_6064d +.asm_1abd1 ld hl, ViridianGymText_74bd9 call PrintText -.asm_6064d ; 0x74bd1 +.asm_6064d jp TextScriptEnd ViridianGymText_74bd4: ; 74bd4 (1d:4bd4) |