summaryrefslogtreecommitdiff
path: root/src/fldeff_cut.c
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2020-02-25 16:52:16 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2020-02-25 16:52:16 -0500
commit41644b283ad2d4fb5e30b61271c5820c1ccbc499 (patch)
tree61295f91521e9f60e21f9ebbc7cec5b1ef04810a /src/fldeff_cut.c
parent565114625f3e8505b157c0c444c5d40caba150ee (diff)
through sub_8097A20
Diffstat (limited to 'src/fldeff_cut.c')
-rw-r--r--src/fldeff_cut.c44
1 files changed, 43 insertions, 1 deletions
diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c
index c30eb2d80..d79eec7a4 100644
--- a/src/fldeff_cut.c
+++ b/src/fldeff_cut.c
@@ -1,19 +1,24 @@
#include "global.h"
#include "gflib.h"
+#include "event_scripts.h"
#include "fieldmap.h"
#include "field_specials.h"
#include "fldeff.h"
#include "field_effect.h"
#include "field_player_avatar.h"
#include "metatile_behavior.h"
+#include "overworld.h"
#include "party_menu.h"
+#include "script.h"
#include "constants/event_objects.h"
EWRAM_DATA u8 *sCutGrassSpriteArrayPtr = NULL;
EWRAM_DATA bool8 sScheduleOpenDottedHole = FALSE;
-void FieldCallback_CutTree(void);
void FieldCallback_CutGrass(void);
+void FieldCallback_CutTree(void);
+void sub_8097A20(void);
+void sub_8097C6C(void);
u8 MetatileAtCoordsIsGrassTile(s16 x, s16 y)
{
@@ -66,3 +71,40 @@ bool8 SetUpFieldMove_Cut(void)
return FALSE;
}
}
+
+void FieldCallback_CutGrass(void)
+{
+ FieldEffectStart(FLDEFF_USE_CUT_ON_GRASS);
+ gFieldEffectArguments[0] = GetCursorSelectionMonId();
+}
+
+bool8 sub_80979A0(void)
+{
+ u8 taskId = oei_task_add();
+ FLDEFF_SET_FUNC_TO_DATA(sub_8097A20);
+ IncrementGameStat(GAME_STAT_USED_CUT);
+ return FALSE;
+}
+
+void FieldCallback_CutTree(void)
+{
+ gFieldEffectArguments[0] = GetCursorSelectionMonId();
+ ScriptContext1_SetupScript(EventScript_FldEffCut);
+}
+
+bool8 sub_80979F0(void)
+{
+ u8 taskId = oei_task_add();
+ FLDEFF_SET_FUNC_TO_DATA(sub_8097C6C);
+ IncrementGameStat(GAME_STAT_USED_CUT);
+ return FALSE;
+}
+
+void sub_8097A20(void)
+{
+ FieldEffectActiveListRemove(FLDEFF_USE_CUT_ON_GRASS);
+ if (sScheduleOpenDottedHole == TRUE)
+ CutMoveOpenDottedHoleDoor();
+ else
+ FieldEffectStart(FLDEFF_CUT_GRASS);
+}