From d09d78dca303386dd5d7fae0ec8e3f6c59d227bc Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Sat, 29 Jun 2019 03:30:48 +0800 Subject: finished fldeff_strength + lots of clean up --- src/fldeff_strength.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/fldeff_strength.c (limited to 'src/fldeff_strength.c') diff --git a/src/fldeff_strength.c b/src/fldeff_strength.c new file mode 100644 index 000000000..95ba95061 --- /dev/null +++ b/src/fldeff_strength.c @@ -0,0 +1,46 @@ +#include "global.h" +#include "field_player_avatar.h" +#include "field_effect.h" +#include "party_menu.h" +#include "event_data.h" +#include "script.h" +#include "fldeff.h" +#include "event_scripts.h" + +static void FldEff_UseStrength(void); +static void sub_80D08A8(void); + +bool8 SetUpFieldMove_Strength(void) +{ + if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING) || CheckObjectGraphicsInFrontOfPlayer(0x61) != TRUE) + { + return FALSE; + } + else + { + gSpecialVar_Result = GetCursorSelectionMonId(); + gFieldCallback2 = FieldCallback_PrepareFadeInFromMenu; + gPostMenuFieldCallback = FldEff_UseStrength; + return TRUE; + } +} +static void FldEff_UseStrength(void) +{ + gFieldEffectArguments[0] = GetCursorSelectionMonId(); + ScriptContext1_SetupScript(EventScript_FldEffStrength); +} + +bool8 sub_80D0860(void) +{ + u8 taskId = oei_task_add(); + gTasks[taskId].data[8] = (u32)sub_80D08A8 >> 16; + gTasks[taskId].data[9] = (u32)sub_80D08A8; + GetMonNickname(&gPlayerParty[gFieldEffectArguments[0]], gStringVar1); + return FALSE; +} + +static void sub_80D08A8(void) +{ + FieldEffectActiveListRemove(FLDEFF_USE_STRENGTH); + EnableBothScriptContexts(); +} -- cgit v1.2.3