shithub: pokecrystal

Download patch

ref: 7a3a4f913b32784480dc297e8a4794934ec87b06
parent: 801861458537ce88a7b5b608af25401989bab20a
author: yenatch <yenatch@gmail.com>
date: Sat Sep 7 19:26:28 EDT 2013

split fruit tree asm out into engine/fruit_trees.asm

--- /dev/null
+++ b/engine/fruit_trees.asm
@@ -1,0 +1,165 @@
+FruitTreeScript: ; 44000
+	3callasm BANK(GetCurTreeFruit), GetCurTreeFruit
+	loadfont
+	copybytetovar CurFruit
+	itemtotext $0, $0
+	2writetext FruitBearingTreeText
+	keeptextopen
+	3callasm BANK(TryResetFruitTrees), TryResetFruitTrees
+	3callasm BANK(CheckFruitTree), CheckFruitTree
+	iffalse .fruit
+	2writetext NothingHereText
+	closetext
+	2jump .end
+
+.fruit
+	2writetext HeyItsFruitText
+	copybytetovar CurFruit
+	giveitem $ff, 1
+	iffalse .packisfull
+	keeptextopen
+	2writetext ObtainedFruitText
+	3callasm BANK(PickedFruitTree), PickedFruitTree
+	specialsound
+	itemnotify
+	2jump .end
+
+.packisfull
+	keeptextopen
+	2writetext FruitPackIsFullText
+	closetext
+
+.end
+	loadmovesprites
+	end
+; 44041
+
+GetCurTreeFruit: ; 44041
+	ld a, [CurFruitTree]
+	dec a
+	call GetFruitTreeItem
+	ld [CurFruit], a
+	ret
+; 4404c
+
+TryResetFruitTrees: ; 4404c
+	ld hl, $dc1e
+	bit 4, [hl]
+	ret nz
+	jp ResetFruitTrees
+; 44055
+
+CheckFruitTree: ; 44055
+	ld b, 2
+	call GetFruitTreeFlag
+	ld a, c
+	ld [ScriptVar], a
+	ret
+; 4405f
+
+PickedFruitTree: ; 4405f
+	ld a, $41
+	ld hl, $609b
+	rst FarCall ; empty function
+
+	ld b, 1
+	jp GetFruitTreeFlag
+; 4406a
+
+ResetFruitTrees: ; 4406a
+	xor a
+	ld hl, FruitTreeFlags
+	ld [hli], a
+	ld [hli], a
+	ld [hli], a
+	ld [hl], a
+	ld hl, $dc1e
+	set 4, [hl]
+	ret
+; 44078
+
+GetFruitTreeFlag: ; 44078
+	push hl
+	push de
+	ld a, [CurFruitTree]
+	dec a
+	ld e, a
+	ld d, 0
+	ld hl, FruitTreeFlags
+	call FlagAction
+	pop de
+	pop hl
+	ret
+; 4408a
+
+GetFruitTreeItem: ; 4408a
+	push hl
+	push de
+	ld e, a
+	ld d, 0
+	ld hl, FruitTreeItems
+	add hl, de
+	ld a, [hl]
+	pop de
+	pop hl
+	ret
+; 44097
+
+FruitTreeItems: ; 44097
+	db BERRY
+	db BERRY
+	db BERRY
+	db BERRY
+	db PSNCUREBERRY
+	db PSNCUREBERRY
+	db BITTER_BERRY
+	db BITTER_BERRY
+	db PRZCUREBERRY
+	db PRZCUREBERRY
+	db MYSTERYBERRY
+	db MYSTERYBERRY
+	db ICE_BERRY
+	db ICE_BERRY
+	db MINT_BERRY
+	db BURNT_BERRY
+	db RED_APRICORN
+	db BLU_APRICORN
+	db BLK_APRICORN
+	db WHT_APRICORN
+	db PNK_APRICORN
+	db GRN_APRICORN
+	db YLW_APRICORN
+	db BERRY
+	db PSNCUREBERRY
+	db BITTER_BERRY
+	db PRZCUREBERRY
+	db ICE_BERRY
+	db MINT_BERRY
+	db BURNT_BERRY
+; 440b5
+
+FruitBearingTreeText: ; 440b5
+	text_jump _FruitBearingTreeText, BANK(_FruitBearingTreeText)
+	db "@"
+; 440ba
+
+HeyItsFruitText: ; 440ba
+	text_jump _HeyItsFruitText, BANK(_HeyItsFruitText)
+	db "@"
+; 440bf
+
+ObtainedFruitText: ; 440bf
+	text_jump _ObtainedFruitText, BANK(_ObtainedFruitText)
+	db "@"
+; 440c4
+
+FruitPackIsFullText: ; 440c4
+	text_jump _FruitPackIsFullText, BANK(_FruitPackIsFullText)
+	db "@"
+; 440c9
+
+NothingHereText: ; 440c9
+	text_jump _NothingHereText, BANK(_NothingHereText)
+	db "@"
+; 440ce
+
--- a/main.asm
+++ b/main.asm
@@ -51896,171 +51896,7 @@
 
 SECTION "bank11",ROMX,BANK[$11]
 
-FruitTreeScript: ; 44000
-	3callasm BANK(GetCurTreeFruit), GetCurTreeFruit
-	loadfont
-	copybytetovar CurFruit
-	itemtotext $0, $0
-	2writetext FruitBearingTreeText
-	keeptextopen
-	3callasm BANK(TryResetFruitTrees), TryResetFruitTrees
-	3callasm BANK(CheckFruitTree), CheckFruitTree
-	iffalse .fruit
-	2writetext NothingHereText
-	closetext
-	2jump .end
-
-.fruit
-	2writetext HeyItsFruitText
-	copybytetovar CurFruit
-	giveitem $ff, 1
-	iffalse .packisfull
-	keeptextopen
-	2writetext ObtainedFruitText
-	3callasm BANK(PickedFruitTree), PickedFruitTree
-	specialsound
-	itemnotify
-	2jump .end
-
-.packisfull
-	keeptextopen
-	2writetext FruitPackIsFullText
-	closetext
-
-.end
-	loadmovesprites
-	end
-; 44041
-
-GetCurTreeFruit: ; 44041
-	ld a, [CurFruitTree]
-	dec a
-	call GetFruitTreeItem
-	ld [CurFruit], a
-	ret
-; 4404c
-
-TryResetFruitTrees: ; 4404c
-	ld hl, $dc1e
-	bit 4, [hl]
-	ret nz
-	jp ResetFruitTrees
-; 44055
-
-CheckFruitTree: ; 44055
-	ld b, 2
-	call GetFruitTreeFlag
-	ld a, c
-	ld [ScriptVar], a
-	ret
-; 4405f
-
-PickedFruitTree: ; 4405f
-	ld a, $41
-	ld hl, $609b
-	rst FarCall ; empty function
-
-	ld b, 1
-	jp GetFruitTreeFlag
-; 4406a
-
-ResetFruitTrees: ; 4406a
-	xor a
-	ld hl, FruitTreeFlags
-	ld [hli], a
-	ld [hli], a
-	ld [hli], a
-	ld [hl], a
-	ld hl, $dc1e
-	set 4, [hl]
-	ret
-; 44078
-
-GetFruitTreeFlag: ; 44078
-	push hl
-	push de
-	ld a, [CurFruitTree]
-	dec a
-	ld e, a
-	ld d, 0
-	ld hl, FruitTreeFlags
-	call FlagAction
-	pop de
-	pop hl
-	ret
-; 4408a
-
-GetFruitTreeItem: ; 4408a
-	push hl
-	push de
-	ld e, a
-	ld d, 0
-	ld hl, FruitTreeItems
-	add hl, de
-	ld a, [hl]
-	pop de
-	pop hl
-	ret
-; 44097
-
-FruitTreeItems: ; 44097
-	db BERRY
-	db BERRY
-	db BERRY
-	db BERRY
-	db PSNCUREBERRY
-	db PSNCUREBERRY
-	db BITTER_BERRY
-	db BITTER_BERRY
-	db PRZCUREBERRY
-	db PRZCUREBERRY
-	db MYSTERYBERRY
-	db MYSTERYBERRY
-	db ICE_BERRY
-	db ICE_BERRY
-	db MINT_BERRY
-	db BURNT_BERRY
-	db RED_APRICORN
-	db BLU_APRICORN
-	db BLK_APRICORN
-	db WHT_APRICORN
-	db PNK_APRICORN
-	db GRN_APRICORN
-	db YLW_APRICORN
-	db BERRY
-	db PSNCUREBERRY
-	db BITTER_BERRY
-	db PRZCUREBERRY
-	db ICE_BERRY
-	db MINT_BERRY
-	db BURNT_BERRY
-; 440b5
-
-FruitBearingTreeText: ; 440b5
-	text_jump _FruitBearingTreeText, BANK(_FruitBearingTreeText)
-	db "@"
-; 440ba
-
-HeyItsFruitText: ; 440ba
-	text_jump _HeyItsFruitText, BANK(_HeyItsFruitText)
-	db "@"
-; 440bf
-
-ObtainedFruitText: ; 440bf
-	text_jump _ObtainedFruitText, BANK(_ObtainedFruitText)
-	db "@"
-; 440c4
-
-FruitPackIsFullText: ; 440c4
-	text_jump _FruitPackIsFullText, BANK(_FruitPackIsFullText)
-	db "@"
-; 440c9
-
-NothingHereText: ; 440c9
-	text_jump _NothingHereText, BANK(_NothingHereText)
-	db "@"
-; 440ce
-
+INCLUDE "engine/fruit_trees.asm"
 
 
 AIChooseMove: ; 440ce
--