shithub: pokecrystal

Download patch

ref: 956cb507128a65cb83abd33263bdb109c08921b0
parent: e384a889cc1b4b645f6d73182428c2d81a7f6acf
author: yenatch <[email protected]>
date: Mon May 13 16:51:45 EDT 2013

EnterMapConnection

--- a/main.asm
+++ b/main.asm
@@ -16797,7 +16797,159 @@
 
 INCBIN "gfx/ow/misc.2bpp"
 
-INCBIN "baserom.gbc", $1045b0, $105258 - $1045b0
+
+INCBIN "baserom.gbc", $1045b0, $1045d6 - $1045b0
+
+
+EnterMapConnection: ; 1045d6
+; Return carry if a connection has been entered.
+	ld a, [$d151]
+	and a
+	jp z, EnterSouthConnection
+	cp 1
+	jp z, EnterNorthConnection
+	cp 2
+	jp z, EnterWestConnection
+	cp 3
+	jp z, EnterEastConnection
+	ret
+; 1045ed
+
+
+EnterWestConnection: ; 1045ed
+	ld a, [WestConnectedMapGroup]
+	ld [MapGroup], a
+	ld a, [WestConnectedMapNumber]
+	ld [MapNumber], a
+	ld a, [WestConnectionStripYOffset]
+	ld [XCoord], a
+	ld a, [WestConnectionStripXOffset]
+	ld hl, YCoord
+	add [hl]
+	ld [hl], a
+	ld c, a
+	ld hl, WestConnectionWindow
+	ld a, [hli]
+	ld h, [hl]
+	ld l, a
+	srl c
+	jr z, .asm_10461e
+	ld a, [WestConnectedMapWidth]
+	add 6
+	ld e, a
+	ld d, 0
+
+.asm_10461a
+	add hl, de
+	dec c
+	jr nz, .asm_10461a
+
+.asm_10461e
+	ld a, l
+	ld [$d194], a
+	ld a, h
+	ld [$d195], a
+	jp EnteredConnection
+; 104629
+
+
+EnterEastConnection: ; 104629
+	ld a, [EastConnectedMapGroup]
+	ld [MapGroup], a
+	ld a, [EastConnectedMapNumber]
+	ld [MapNumber], a
+	ld a, [EastConnectionStripYOffset]
+	ld [XCoord], a
+	ld a, [EastConnectionStripXOffset]
+	ld hl, YCoord
+	add [hl]
+	ld [hl], a
+	ld c, a
+	ld hl, EastConnectionWindow
+	ld a, [hli]
+	ld h, [hl]
+	ld l, a
+	srl c
+	jr z, .asm_10465a
+	ld a, [EastConnectedMapWidth]
+	add 6
+	ld e, a
+	ld d, 0
+
+.asm_104656
+	add hl, de
+	dec c
+	jr nz, .asm_104656
+
+.asm_10465a
+	ld a, l
+	ld [$d194], a
+	ld a, h
+	ld [$d195], a
+	jp EnteredConnection
+; 104665
+
+
+EnterNorthConnection: ; 104665
+	ld a, [NorthConnectedMapGroup]
+	ld [MapGroup], a
+	ld a, [NorthConnectedMapNumber]
+	ld [MapNumber], a
+	ld a, [NorthConnectionStripXOffset]
+	ld [YCoord], a
+	ld a, [NorthConnectionStripYOffset]
+	ld hl, XCoord
+	add [hl]
+	ld [hl], a
+	ld c, a
+	ld hl, NorthConnectionWindow
+	ld a, [hli]
+	ld h, [hl]
+	ld l, a
+	ld b, 0
+	srl c
+	add hl, bc
+	ld a, l
+	ld [$d194], a
+	ld a, h
+	ld [$d195], a
+	jp EnteredConnection
+; 104696
+
+
+EnterSouthConnection: ; 104696
+	ld a, [SouthConnectedMapGroup]
+	ld [MapGroup], a
+	ld a, [SouthConnectedMapNumber]
+	ld [MapNumber], a
+	ld a, [SouthConnectionStripXOffset]
+	ld [YCoord], a
+	ld a, [SouthConnectionStripYOffset]
+	ld hl, XCoord
+	add [hl]
+	ld [hl], a
+	ld c, a
+	ld hl, SouthConnectionWindow
+	ld a, [hli]
+	ld h, [hl]
+	ld l, a
+	ld b, 0
+	srl c
+	add hl, bc
+	ld a, l
+	ld [$d194], a
+	ld a, h
+	ld [$d195], a
+	; fallthrough
+; 1046c4
+
+EnteredConnection: ; 1046c4
+	scf
+	ret
+; 1046c6
+
+
+INCBIN "baserom.gbc", $1046c6, $105258 - $1046c6
 
 MysteryGiftGFX:
 INCBIN "gfx/misc/mystery_gift.2bpp"