diff options
Diffstat (limited to 'engine/events/fruit_trees.asm')
-rw-r--r-- | engine/events/fruit_trees.asm | 132 |
1 files changed, 132 insertions, 0 deletions
diff --git a/engine/events/fruit_trees.asm b/engine/events/fruit_trees.asm new file mode 100644 index 000000000..595e41824 --- /dev/null +++ b/engine/events/fruit_trees.asm @@ -0,0 +1,132 @@ +FruitTreeScript:: ; 44000 + callasm GetCurTreeFruit + opentext + copybytetovar CurFruit + itemtotext $0, $0 + writetext FruitBearingTreeText + buttonsound + callasm TryResetFruitTrees + callasm CheckFruitTree + iffalse .fruit + writetext NothingHereText + waitbutton + jump .end + +.fruit + writetext HeyItsFruitText + copybytetovar CurFruit + giveitem ITEM_FROM_MEM + iffalse .packisfull + buttonsound + writetext ObtainedFruitText + callasm PickedFruitTree + specialsound + itemnotify + jump .end + +.packisfull + buttonsound + writetext FruitPackIsFullText + waitbutton + +.end + closetext + end +; 44041 + +GetCurTreeFruit: ; 44041 + ld a, [CurFruitTree] + dec a + call GetFruitTreeItem + ld [CurFruit], a + ret +; 4404c + +TryResetFruitTrees: ; 4404c + ld hl, DailyFlags + 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 + farcall TrainerRankings_FruitPicked + 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, DailyFlags + 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 + + +INCLUDE "data/items/fruit_trees.asm" + + +FruitBearingTreeText: ; 440b5 + text_jump _FruitBearingTreeText + db "@" +; 440ba + +HeyItsFruitText: ; 440ba + text_jump _HeyItsFruitText + db "@" +; 440bf + +ObtainedFruitText: ; 440bf + text_jump _ObtainedFruitText + db "@" +; 440c4 + +FruitPackIsFullText: ; 440c4 + text_jump _FruitPackIsFullText + db "@" +; 440c9 + +NothingHereText: ; 440c9 + text_jump _NothingHereText + db "@" +; 440ce |