summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/data/effect_commands.asm2
-rw-r--r--src/engine/bank03.asm59
-rw-r--r--src/engine/effect_functions.asm33
3 files changed, 90 insertions, 4 deletions
diff --git a/src/data/effect_commands.asm b/src/data/effect_commands.asm
index 171c241..7360aff 100644
--- a/src/data/effect_commands.asm
+++ b/src/data/effect_commands.asm
@@ -1491,7 +1491,7 @@ FullHealEffectCommands:
db $00
ImposterProfessorOakEffectCommands:
- dbw EFFECTCMDTYPE_BEFORE_DAMAGE, $74e1
+ dbw EFFECTCMDTYPE_BEFORE_DAMAGE, ImposterProfessorOakEffect
db $00
ComputerSearchEffectCommands:
diff --git a/src/engine/bank03.asm b/src/engine/bank03.asm
index 07e903e..1f1e690 100644
--- a/src/engine/bank03.asm
+++ b/src/engine/bank03.asm
@@ -3416,7 +3416,50 @@ Script_d827: ; d827 (3:5827)
run_command ScriptCommand_QuitScriptFully
; 0xd82d
- INCROM $d82d, $d880
+ INCROM $d82d, $d834
+
+AfterTutorialBattleScript: ; d834 (3:5834)
+ start_script
+ run_command ScriptCommand_PrintTextString
+ tx Text05eb
+ run_command ScriptCommand_PrintTextString
+ tx Text05ef
+ run_command ScriptCommand_CloseTextBox
+ run_command ScriptCommand_MoveActiveNPC
+ dw NPCMovement_d896
+ run_command ScriptCommand_SetPlayerDirection
+ db NORTH
+ run_command ScriptCommand_MovePlayer
+ db NORTH
+ db $01
+ run_command ScriptCommand_MovePlayer
+ db NORTH
+ db $01
+ run_command ScriptCommand_MovePlayer
+ db NORTH
+ db $01
+ run_command ScriptCommand_SetPlayerDirection
+ db EAST
+ run_command ScriptCommand_MovePlayer
+ db EAST
+ db $01
+ run_command ScriptCommand_MovePlayer
+ db EAST
+ db $01
+ run_command ScriptCommand_SetPlayerDirection
+ db NORTH
+ run_command ScriptCommand_PrintTextString
+ tx Text05f0
+ run_command ScriptCommand_CloseTextBox
+ run_command Func_ccdc
+ tx Text05f1
+ run_command ScriptCommand_CloseTextBox
+ run_command ScriptCommand_PrintTextString
+ tx Text05f2
+ run_command Func_d271
+; 0xd860
+
+ INCROM $d860, $d880
NPCMovement_d880: ; d880 (3:5880)
db EAST
@@ -3447,8 +3490,20 @@ NPCMovement_d88b: ; d88b (3:588b)
NPCMovement_d894: ; d894 (4:5894)
db SOUTH | NO_MOVE
db $ff
+
+NPCMovement_d896: ; d896 (3:5896)
+ db NORTH
+ db NORTH
+ db NORTH
+ db EAST
+ db EAST
+ db EAST
+ db EAST
+ db SOUTH | NO_MOVE
+ db $ff
+; 0xd89f
- INCROM $d896, $d932
+ INCROM $d89f, $d932
Script_d932: ; d932 (3:5932)
start_script
diff --git a/src/engine/effect_functions.asm b/src/engine/effect_functions.asm
index 75b0f76..dae33a0 100644
--- a/src/engine/effect_functions.asm
+++ b/src/engine/effect_functions.asm
@@ -763,4 +763,35 @@ Func_2cbfb: ; 2cbfb (b:4bfb)
ret
; 0x2cc0a
- INCROM $2cc0a, $30000
+ INCROM $2cc0a, $2f4e1
+
+ImposterProfessorOakEffect: ; 2f4e1 (b:74e1)
+ call SwapTurn
+ call CreateHandCardList
+ call SortCardsInDuelTempListByID
+ ld hl, wDuelTempList
+.return_hand_to_deck_loop
+ ld a, [hli]
+ cp $ff
+ jr z, .shuffle
+ call RemoveCardFromHand
+ call ReturnCardToDeck
+ jr .return_hand_to_deck_loop
+.shuffle
+ call Func_2c0bd
+ ld a, $07
+ bank1call $4935
+ ld c, $07
+.draw_loop
+ call DrawCardFromDeck
+ jr c, .revert_turn_to_user
+ call AddCardToHand
+ dec c
+ jr nz, .draw_loop
+.revert_turn_to_user
+ call SwapTurn
+ ret
+; 0x2f513
+
+
+ INCROM $2f513, $30000