More work on slots; WRAM cleanup, Move Deleter

This commit is contained in:
PikalaxALT
2015-12-19 14:48:30 -05:00
parent 3d36f1a837
commit 987ed1fafb
37 changed files with 477 additions and 492 deletions

View File

@@ -267,7 +267,7 @@ endr
call SetPalettes
call HOF_SlideBackpic
xor a
ld [wc2c6], a
ld [wBoxAlignment], a
hlcoord 0, 0
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
ld a, " "
@@ -486,7 +486,7 @@ DisplayHOFMon: ; 86748
ld hl, TempMonDVs
predef GetUnownLetter
xor a
ld [wc2c6], a
ld [wBoxAlignment], a
hlcoord 6, 5
call _PrepMonFrontpic
ld a, [CurPartySpecies]
@@ -566,7 +566,7 @@ Function86810: ; 86810
call SetPalettes
call HOF_SlideBackpic
xor a
ld [wc2c6], a
ld [wBoxAlignment], a
hlcoord 0, 0
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
ld a, " "

View File

@@ -1,113 +1,113 @@
MoveDeletion:
ld hl, UnknownText_0x2c5ef
ld hl, .IntroText
call PrintText
call YesNoBox
jr c, .asm_2c5c3
ld hl, UnknownText_0x2c5f4
jr c, .declined
ld hl, .AskWhichMonText
call PrintText
callba SelectMonFromParty
jr c, .asm_2c5c3
jr c, .declined
ld a, [CurPartySpecies]
cp EGG
jr z, .asm_2c5bc
jr z, .egg
ld a, [CurPartyMon]
ld hl, PartyMon1Moves + 1
ld bc, PARTYMON_STRUCT_LENGTH
call AddNTimes
ld a, [hl]
and a
jr z, .asm_2c5ca
ld hl, UnknownText_0x2c5ea
jr z, .onlyonemove
ld hl, .AskWhichMoveText
call PrintText
call LoadStandardMenuDataHeader
callba ChooseMoveToDelete
push af
call ReturnToMapWithSpeechTextbox
pop af
jr c, .asm_2c5c3
jr c, .declined
ld a, [wMenuCursorY]
push af
ld a, [CurSpecies]
ld [wd265], a
call GetMoveName
ld hl, UnknownText_0x2c5d6
ld hl, .ConfirmDeleteText
call PrintText
call YesNoBox
pop bc
jr c, .asm_2c5c3
call Function2c5f9
jr c, .declined
call .DeleteMove
call WaitSFX
ld de, SFX_MOVE_DELETED
call PlaySFX
call WaitSFX
ld hl, UnknownText_0x2c5db
ld hl, .MoveDeletedText
call PrintText
ret
.asm_2c5bc
ld hl, UnknownText_0x2c5e0
.egg
ld hl, .EggText
call PrintText
ret
.asm_2c5c3
ld hl, UnknownText_0x2c5e5
.declined
ld hl, .DeclinedDeletionText
call PrintText
ret
.asm_2c5ca
ld hl, UnknownText_0x2c5d1
.onlyonemove
ld hl, .OnlyOneMoveText
call PrintText
ret
UnknownText_0x2c5d1: ; 0x2c5d1
.OnlyOneMoveText: ; 0x2c5d1
; That #MON knows only one move.
text_jump UnknownText_0x1c5eba
db "@"
; 0x2c5d6
UnknownText_0x2c5d6: ; 0x2c5d6
.ConfirmDeleteText: ; 0x2c5d6
; Oh, make it forget @ ?
text_jump UnknownText_0x1c5eda
db "@"
; 0x2c5db
UnknownText_0x2c5db: ; 0x2c5db
.MoveDeletedText: ; 0x2c5db
; Done! Your #MON forgot the move.
text_jump UnknownText_0x1c5ef5
db "@"
; 0x2c5e0
UnknownText_0x2c5e0: ; 0x2c5e0
.EggText: ; 0x2c5e0
; An EGG doesn't know any moves!
text_jump UnknownText_0x1c5f17
db "@"
; 0x2c5e5
UnknownText_0x2c5e5: ; 0x2c5e5
.DeclinedDeletionText: ; 0x2c5e5
; No? Come visit me again.
text_jump UnknownText_0x1c5f36
db "@"
; 0x2c5ea
UnknownText_0x2c5ea: ; 0x2c5ea
.AskWhichMoveText: ; 0x2c5ea
; Which move should it forget, then?
text_jump UnknownText_0x1c5f50
db "@"
; 0x2c5ef
UnknownText_0x2c5ef: ; 0x2c5ef
.IntroText: ; 0x2c5ef
; Um… Oh, yes, I'm the MOVE DELETER. I can make #MON forget moves. Shall I make a #MON forget?
text_jump UnknownText_0x1c5f74
db "@"
; 0x2c5f4
UnknownText_0x2c5f4: ; 0x2c5f4
.AskWhichMonText: ; 0x2c5f4
; Which #MON?
text_jump UnknownText_0x1c5fd1
db "@"
; 0x2c5f9
Function2c5f9: ; 2c5f9
.DeleteMove: ; 2c5f9
ld a, b
push bc
dec a
@@ -121,18 +121,18 @@ Function2c5f9: ; 2c5f9
pop bc
push bc
inc b
.asm_2c60f
.loop
ld a, b
cp NUM_MOVES + 1
jr z, .asm_2c61b
jr z, .okay
inc hl
ld a, [hld]
ld [hl], a
inc hl
inc b
jr .asm_2c60f
jr .loop
.asm_2c61b
.okay
xor a
ld [hl], a
pop bc
@@ -149,18 +149,18 @@ Function2c5f9: ; 2c5f9
call AddNTimes
pop bc
inc b
.asm_2c633
.loop2
ld a, b
cp NUM_MOVES + 1
jr z, .asm_2c63f
jr z, .done
inc hl
ld a, [hld]
ld [hl], a
inc hl
inc b
jr .asm_2c633
jr .loop2
.asm_2c63f
.done
xor a
ld [hl], a
ret

View File

@@ -50,7 +50,7 @@ UnownPrinter: ; 16be4
xor a
ld [wJumptableIndex], a
call Function16cc8
call .UpdateUnownFrontpic
call WaitBGMap
ld a, UNOWN
@@ -74,7 +74,7 @@ UnownPrinter: ; 16be4
and A_BUTTON
jr nz, .pressed_a
call Function16ca0
call .LeftRight
call DelayFrame
jr .joy_loop
@@ -96,7 +96,7 @@ UnownPrinter: ; 16be4
ret
; 16ca0
Function16ca0: ; 16ca0
.LeftRight: ; 16ca0
ld a, [hJoyLast]
and D_RIGHT
jr nz, .press_right
@@ -110,8 +110,7 @@ Function16ca0: ; 16ca0
ld a, [hl]
and a
jr nz, .wrap_around_left
ld [hl], $1b
ld [hl], 26 + 1
.wrap_around_left
dec [hl]
jr .return
@@ -119,19 +118,18 @@ Function16ca0: ; 16ca0
.press_right
ld hl, wJumptableIndex
ld a, [hl]
cp $1a
cp 26
jr c, .wrap_around_right
ld [hl], $ff
ld [hl], -1
.wrap_around_right
inc [hl]
.return
call Function16cc8
call .UpdateUnownFrontpic
ret
; 16cc8
Function16cc8: ; 16cc8
.UpdateUnownFrontpic: ; 16cc8
ld a, [wJumptableIndex]
cp 26
jr z, Function16d20
@@ -140,7 +138,7 @@ Function16cc8: ; 16cc8
ld a, UNOWN
ld [CurPartySpecies], a
xor a
ld [wc2c6], a
ld [wBoxAlignment], a
ld de, VTiles2
predef GetFrontpic
call Function16cff
@@ -162,7 +160,7 @@ Function16cff: ; 16cff
ld a, BANK(sScratch)
call GetSRAMBank
ld de, wBackupTilemap
ld de, wDecompressScratch
ld hl, sScratch
ld a, [hROMBank]
ld b, a