summaryrefslogtreecommitdiff
path: root/engine/scripting.asm
diff options
context:
space:
mode:
authorPikalaxALT <PikalaxALT@gmail.com>2015-07-17 17:17:10 -0400
committerPikalaxALT <PikalaxALT@gmail.com>2015-07-17 17:17:10 -0400
commit0fcef5fc087dc30817410d7692d53e2c382828d5 (patch)
tree2306ef7f1a090b277a3874f72e66481ba6032baa /engine/scripting.asm
parent894955f9d922de5fc33e6c0aa7af9795dbcbc158 (diff)
More annotations and interpretations of functions and scripts
Diffstat (limited to 'engine/scripting.asm')
-rw-r--r--engine/scripting.asm100
1 files changed, 51 insertions, 49 deletions
diff --git a/engine/scripting.asm b/engine/scripting.asm
index 6fd683fb7..ea620e6f8 100644
--- a/engine/scripting.asm
+++ b/engine/scripting.asm
@@ -2450,7 +2450,7 @@ GetMoneyAccount: ; 0x97861
; 0x9786d
LoadMoneyAmountToMem: ; 0x9786d
- ld bc, $ffc3
+ ld bc, hMoneyTemp
push bc
call GetScriptByte
ld [bc], a
@@ -2498,8 +2498,8 @@ LoadCoinAmountToMem: ; 978a0
call GetScriptByte
ld [$ffc4], a
call GetScriptByte
- ld [$ffc3], a
- ld bc, $ffc3
+ ld [hMoneyTemp], a
+ ld bc, hMoneyTemp
ret
; 0x978ae
@@ -2572,6 +2572,7 @@ Script_checkcellnum: ; 0x97904
; script command 0x2a
; parameters:
; person (SingleByteParam)
+; returns false if the cell number is not in your phone
xor a
ld [ScriptVar], a
@@ -2590,16 +2591,17 @@ Script_specialphonecall: ; 0x97919
; call_id (MultiByteParam)
call GetScriptByte
- ld [wdc31], a
+ ld [wSpecialPhoneCallID], a
call GetScriptByte
- ld [wdc31 + 1], a
+ ld [wSpecialPhoneCallID + 1], a
ret
; 0x97926
Script_checkphonecall: ; 0x97926
; script command 0x9d
+; returns false if no special phone call is stored
- ld a, [wdc31]
+ ld a, [wSpecialPhoneCallID]
and a
jr z, .ok
ld a, 1
@@ -2648,6 +2650,7 @@ Script_giveegg: ; 0x97968
; parameters:
; pkmn (PokemonParam)
; level (DecimalParam)
+; if no room in the party, return 0 in ScriptVar; else, return 2
xor a
ld [ScriptVar], a
@@ -2658,7 +2661,7 @@ Script_giveegg: ; 0x97968
ld [CurPartyLevel], a
callba GiveEgg
ret nc
- ld a, $2
+ ld a, 2
ld [ScriptVar], a
ret
; 0x97988
@@ -2672,7 +2675,7 @@ Script_setevent: ; 0x97988
ld e, a
call GetScriptByte
ld d, a
- ld b, $1
+ ld b, 1 ; set
call EventFlagAction
ret
; 0x97996
@@ -2686,7 +2689,7 @@ Script_clearevent: ; 0x97996
ld e, a
call GetScriptByte
ld d, a
- ld b, $0
+ ld b, 0 ; clear
call EventFlagAction
ret
; 0x979a4
@@ -2700,13 +2703,13 @@ Script_checkevent: ; 0x979a4
ld e, a
call GetScriptByte
ld d, a
- ld b, $2
+ ld b, 2 ; check
call EventFlagAction
ld a, c
and a
- jr z, .asm_979b7 ; 0x979b3 $2
- ld a, $1
-.asm_979b7
+ jr z, .false ; 0x979b3 $2
+ ld a, 1
+.false
ld [ScriptVar], a
ret
; 0x979bb
@@ -2720,7 +2723,7 @@ Script_setflag: ; 0x979bb
ld e, a
call GetScriptByte
ld d, a
- ld b, $1
+ ld b, 1 ; set
call _EngineFlagAction
ret
; 0x979c9
@@ -2734,7 +2737,7 @@ Script_clearflag: ; 0x979c9
ld e, a
call GetScriptByte
ld d, a
- ld b, $0
+ ld b, 0 ; clear
call _EngineFlagAction
ret
; 0x979d7
@@ -2748,13 +2751,13 @@ Script_checkflag: ; 0x979d7
ld e, a
call GetScriptByte
ld d, a
- ld b, $2
+ ld b, 2 ; check
call _EngineFlagAction
ld a, c
and a
- jr z, .asm_979ea ; 0x979e6 $2
- ld a, $1
-.asm_979ea
+ jr z, .false ; 0x979e6 $2
+ ld a, 1
+.false
ld [ScriptVar], a
ret
; 0x979ee
@@ -2808,7 +2811,7 @@ Script_warpfacing: ; 0x97a0e
set 5, a
or c
ld [wd45b], a
-; 0x97a1d
+; fall through
Script_warp: ; 0x97a1d
; script command 0x3c
@@ -2818,6 +2821,7 @@ Script_warp: ; 0x97a1d
; x (SingleByteParam)
; y (SingleByteParam)
+; This seems to be some sort of error handling case.
call GetScriptByte
and a
jr z, .not_ok ; 0x97a21 $27
@@ -2828,11 +2832,11 @@ Script_warp: ; 0x97a1d
ld [XCoord], a
call GetScriptByte
ld [YCoord], a
- ld a, $ff
+ ld a, -1
ld [wd001], a
- ld a, $f1
+ ld a, -15
ld [$ff9f], a
- ld a, $1
+ ld a, 1
call LoadMapStatus
call StopScript
ret
@@ -2840,11 +2844,11 @@ Script_warp: ; 0x97a1d
call GetScriptByte
call GetScriptByte
call GetScriptByte
- ld a, $ff
+ ld a, -1
ld [wd001], a
- ld a, $fb
+ ld a, -5
ld [$ff9f], a
- ld a, $1
+ ld a, 1
call LoadMapStatus
call StopScript
ret
@@ -2882,7 +2886,7 @@ Script_blackoutmod: ; 0x97a78
Script_reloadmapmusic: ; 0x97a85
; script command 0x83
- ld a, $1
+ ld a, 1
ld [wc2c1], a
ret
; 0x97a8b
@@ -2913,7 +2917,7 @@ Script_delcmdqueue: ; 0x97a9e
ld b, a
callba Function97e5c
ret c
- ld a, $1
+ ld a, 1
ld [ScriptVar], a
ret
; 0x97ab3
@@ -2942,10 +2946,10 @@ Script_changeblock: ; 0x97acc
; block (SingleByteParam)
call GetScriptByte
- add $4
+ add 4
ld d, a
call GetScriptByte
- add $4
+ add 4
ld e, a
call GetBlockLocation
call GetScriptByte
@@ -2987,7 +2991,7 @@ Script_newloadmap: ; 0x97b08
call GetScriptByte
ld [$ff9f], a
- ld a, $1
+ ld a, 1
call LoadMapStatus
call StopScript
ret
@@ -3064,14 +3068,14 @@ Script_pause: ; 0x97b47
call GetScriptByte
and a
- jr z, .asm_97b50 ; 0x97b4b $3
+ jr z, .loop ; 0x97b4b $3
ld [ScriptDelay], a
-.asm_97b50
+.loop
ld c, 2
call DelayFrames
ld hl, ScriptDelay
dec [hl]
- jr nz, .asm_97b50 ; 0x97b59 $f5
+ jr nz, .loop ; 0x97b59 $f5
ret
; 0x97b5c
@@ -3082,9 +3086,9 @@ Script_deactivatefacing: ; 0x97b5c
call GetScriptByte
and a
- jr z, .asm_97b65 ; 0x97b60 $3
+ jr z, .no_time ; 0x97b60 $3
ld [ScriptDelay], a
-.asm_97b65
+.no_time
ld a, SCRIPT_WAIT
ld [ScriptMode], a
call StopScript
@@ -3104,9 +3108,9 @@ Script_end: ; 0x97b74
; script command 0x91
call ExitScriptSubroutine
- jr c, .asm_97b7a
+ jr c, .resume
ret
-.asm_97b7a
+.resume
xor a
ld [ScriptRunning], a
ld a, SCRIPT_OFF
@@ -3121,8 +3125,8 @@ Script_return: ; 0x97b8c
; script command 0x90
call ExitScriptSubroutine
- jr c, .asm_97b91
-.asm_97b91
+ jr c, .dummy
+.dummy
ld hl, ScriptFlags
res 0, [hl]
call StopScript
@@ -3135,17 +3139,15 @@ ExitScriptSubroutine: ; 0x97b9a
ld hl, wd43c
ld a, [hl]
and a
- jr z, .asm_97bbe ; 0x97b9f $1d
+ jr z, .done ; 0x97b9f $1d
dec [hl]
ld e, [hl]
ld d, $0
ld hl, wd43d
- add hl, de
- add hl, de
- add hl, de
+ add_n_times hl, de, 3
ld a, [hli]
ld b, a
- and $7f
+ and " "
ld [ScriptBank], a
ld a, [hli]
ld e, a
@@ -3155,7 +3157,7 @@ ExitScriptSubroutine: ; 0x97b9a
ld [ScriptPos + 1], a
and a
ret
-.asm_97bbe
+.done
scf
ret
; 0x97bc0
@@ -3208,13 +3210,13 @@ Script_wait: ; 0x97c05
push bc
call GetScriptByte
-.asm_97c09
+.loop
push af
ld c, 6
call DelayFrames
pop af
dec a
- jr nz, .asm_97c09 ; 0x97c11 $f6
+ jr nz, .loop ; 0x97c11 $f6
pop bc
ret
; 0x97c15
@@ -3229,7 +3231,7 @@ Script_unknown0xa9: ; 0x97c15
; 0x97c20
-Function97c20: ; 97c20
+Function97c20: ; 97c20 unreferenced
ld a, [.byte]
ld [ScriptVar], a
ret