diff options
| -rw-r--r-- | constants.asm | 13 | ||||
| -rw-r--r-- | main.asm | 90 | 
2 files changed, 84 insertions, 19 deletions
| diff --git a/constants.asm b/constants.asm index 3ef503d6..a4e046eb 100644 --- a/constants.asm +++ b/constants.asm @@ -1911,7 +1911,8 @@ SAFFRON_MART EQU $B4  SILPH_CO_1F EQU $B5  SAFFRON_POKECENTER EQU $B6  SAFFRON_HOUSE_2 EQU $B7 -ROUTE_15_GATE EQU $B8 +ROUTE_15_GATE_1F EQU $B8 +ROUTE_15_GATE_2F EQU $B9  ROUTE_16_GATE_1F EQU $BA  ROUTE_16_GATE_2F EQU $BB  ROUTE_16_HOUSE EQU $BC @@ -2774,9 +2775,13 @@ SAFFRON_POKECENTER_WIDTH  EQU $07  SAFFRON_HOUSE_2_HEIGHT EQU $04  SAFFRON_HOUSE_2_WIDTH  EQU $04 -; Route15Gate_h map_id=184 -ROUTE_15_GATE_HEIGHT EQU $05 -ROUTE_15_GATE_WIDTH  EQU $04 +; Route15Gate1F_h map_id=184 +ROUTE_15_GATE_1F_HEIGHT EQU $05 +ROUTE_15_GATE_1F_WIDTH  EQU $04 + +; Route15GateUpstairs_h map_id=185 +ROUTE_15_GATE_2F_HEIGHT EQU 4 +ROUTE_15_GATE_2F_WIDTH  EQU 4  ; Route16GateMap_h map_id=186  ROUTE_16_GATE_1F_HEIGHT EQU $07 @@ -368,7 +368,7 @@ MapHeaderPointers: ; $01AE  	dw SaffronPokecenter_h  	dw SaffronHouse2_h  	dw Route15Gate_h -	dw $563e +	dw Route15GateUpstairs_h  	dw Route16GateMap_h  	dw Route16GateUpstairs_h  	dw Route16House_h @@ -10731,7 +10731,7 @@ MapHeaderBanks: ; 423D  	db BANK(SaffronPokecenter_h)  	db BANK(SaffronHouse2_h)  	db BANK(Route15Gate_h) -	db $12 +	db BANK(Route15GateUpstairs_h)  	db BANK(Route16GateMap_h)  	db BANK(Route16GateUpstairs_h)  	db BANK(Route16House_h) @@ -47015,6 +47015,7 @@ Route11GateBlocks: ; 40c7 20  Route18GateHeaderBlocks:  Route16GateUpstairsBlocks:  Route12GateUpstairsBlocks: +Route15GateUpstairsBlocks:  Route11GateUpstairsBlocks: ; 40db 16  	INCBIN "maps/route11gateupstairs.blk" @@ -49366,7 +49367,7 @@ Route12GateUpstairsObject: ; 0x495de (size=24)  Route15Gate_h: ; 0x495f6 to 0x49602 (12 bytes) (id=184)  	db $0c ; tileset -	db ROUTE_15_GATE_HEIGHT, ROUTE_15_GATE_WIDTH ; dimensions (y, x) +	db ROUTE_15_GATE_1F_HEIGHT, ROUTE_15_GATE_1F_WIDTH ; dimensions (y, x)  	dw Route15GateBlocks, Route15GateTexts, Route15GateScript ; blocks, texts, scripts  	db $00 ; connections @@ -49391,7 +49392,7 @@ Route15GateObject: ; 0x4960c (size=50)  	db $5, $0, $1, $ff  	db $4, $7, $2, $ff  	db $5, $7, $3, $ff -	db $8, $6, $0, $b9 +	db $8, $6, $0, ROUTE_15_GATE_2F  	db $0 ; signs @@ -49405,21 +49406,80 @@ Route15GateObject: ; 0x4960c (size=50)  	EVENT_DISP $4, $5, $7  	EVENT_DISP $4, $8, $6 -INCBIN "baserom.gbc",$4963e,$4968c - $4963e +Route15GateUpstairs_h: ; 0x4963e +	db $0c ; tileset +	db ROUTE_15_GATE_2F_HEIGHT, ROUTE_15_GATE_2F_WIDTH ; dimensions (y, x) +	dw Route15GateUpstairsBlocks, Route15GateUpstairsTexts, Route15GateUpstairsScript ; blocks, texts, scripts +	;dw 40db, 564d, 564a ; blocks, texts, scripts +	db $00 ; connections +	dw Route15GateUpstairsObject ; objects + +Route15GateUpstairsScript: ; 0x4964a +	jp $3c3f + +Route15GateUpstairsTexts: ; 0x4964d +	dw Route15GateUpstairsText1 +	dw Route15GateUpstairsText2 + +Route15GateUpstairsText1: ; 0x49651 +	db $8 +	ld a, [$d7dd] +	bit 0, a +	jr nz, .asm_49683 ; 0x49657 $2a +	ld a, $32 +	ld [$ff00+$db], a +	ld a, $4b +	ld [$ff00+$dc], a +	ld [$d11e], a +	call GetItemName +	ld hl, $cd6d +	ld de, $cc5b +	ld bc, $000d +	call CopyData +	ld a, $62 +	call Predef +	ld a, [$ff00+$db] +	cp $1 +	jr nz, .asm_49689 ; 0x4967c $b +	ld hl, $d7dd +	set 0, [hl] +.asm_49683 +	ld hl, UnnamedText_4968c +	call PrintText +.asm_49689 +	jp $24d7 +; 0x4968c  UnnamedText_4968c: ; 0x4968c  	TX_FAR _UnnamedText_4968c  	db $50  ; 0x4968c + 5 bytes -INCBIN "baserom.gbc",$49691,$49698 - $49691 +Route15GateUpstairsText2: +	db $8 +	ld hl, UnnamedText_49698 +	jp Unnamed_55c9 +; 0x49698  UnnamedText_49698: ; 0x49698  	TX_FAR _UnnamedText_49698  	db $50  ; 0x49698 + 5 bytes -INCBIN "baserom.gbc",$4969d,$15 +Route15GateUpstairsObject: ; 0x4969d +	db $a ; border tile + +	db $1 ; warps +	db $7, $7, $4, ROUTE_15_GATE_1F + +	db $1 ; signs +	db $2, $6, $2 ; Route15GateUpstairsText2 + +	db $1 ; people +	db SPRITE_OAK_AIDE, $2 + 4, $4 + 4, $ff, $d0, $1 + +	; warp-to +	EVENT_DISP $4, $7, $7 ; ROUTE_15_GATE_1F  Route16GateMap_h: ; 0x496b2 to 0x496be (12 bytes) (id=186)  	db $0c ; tileset @@ -58038,10 +58098,10 @@ Route15Object: ; 0x5894e (size=126)  	db $43 ; border tile  	db $4 ; warps -	db $8, $7, $0, ROUTE_15_GATE -	db $9, $7, $1, ROUTE_15_GATE -	db $8, $e, $2, ROUTE_15_GATE -	db $9, $e, $3, ROUTE_15_GATE +	db $8, $7, $0, ROUTE_15_GATE_1F +	db $9, $7, $1, ROUTE_15_GATE_1F +	db $8, $e, $2, ROUTE_15_GATE_1F +	db $9, $e, $3, ROUTE_15_GATE_1F  	db $1 ; signs  	db $9, $27, $c ; Route15Text12 @@ -58060,10 +58120,10 @@ Route15Object: ; 0x5894e (size=126)  	db SPRITE_BALL, $5 + 4, $12 + 4, $ff, $ff, $8b, TM_20 ; item  	; warp-to -	EVENT_DISP $1e, $8, $7 ; ROUTE_15_GATE -	EVENT_DISP $1e, $9, $7 ; ROUTE_15_GATE -	EVENT_DISP $1e, $8, $e ; ROUTE_15_GATE -	EVENT_DISP $1e, $9, $e ; ROUTE_15_GATE +	EVENT_DISP $1e, $8, $7 ; ROUTE_15_GATE_1F +	EVENT_DISP $1e, $9, $7 ; ROUTE_15_GATE_1F +	EVENT_DISP $1e, $8, $e ; ROUTE_15_GATE_1F +	EVENT_DISP $1e, $9, $e ; ROUTE_15_GATE_1F  Route15Blocks: ; 0x589cc 270  	INCBIN "maps/route15.blk" | 
