mirror of
https://github.com/pret/pokeruby.git
synced 2026-08-08 10:34:12 -05:00
259 lines
8.3 KiB
C
259 lines
8.3 KiB
C
#ifndef GUARD_FIELD_EFFECT_H
|
|
#define GUARD_FIELD_EFFECT_H
|
|
|
|
#include "sprite.h"
|
|
#include "task.h"
|
|
|
|
enum FieldEffectScriptIdx
|
|
{
|
|
FLDEFF_EXCLAMATION_MARK_ICON_1,
|
|
FLDEFF_USE_CUT_ON_GRASS,
|
|
FLDEFF_USE_CUT_ON_TREE,
|
|
FLDEFF_SHADOW,
|
|
FLDEFF_TALL_GRASS,
|
|
FLDEFF_RIPPLE,
|
|
FLDEFF_FIELD_MOVE_SHOW_MON,
|
|
FLDEFF_ASH,
|
|
FLDEFF_SURF_BLOB,
|
|
FLDEFF_USE_SURF,
|
|
FLDEFF_DUST,
|
|
FLDEFF_USE_SECRET_POWER_CAVE,
|
|
FLDEFF_JUMP_TALL_GRASS,
|
|
FLDEFF_SAND_FOOTPRINTS,
|
|
FLDEFF_JUMP_BIG_SPLASH,
|
|
FLDEFF_SPLASH,
|
|
FLDEFF_JUMP_SMALL_SPLASH,
|
|
FLDEFF_LONG_GRASS,
|
|
FLDEFF_JUMP_LONG_GRASS,
|
|
FLDEFF_UNKNOWN_19,
|
|
FLDEFF_UNKNOWN_20,
|
|
FLDEFF_UNKNOWN_21,
|
|
FLDEFF_UNKNOWN_22,
|
|
FLDEFF_BERRY_TREE_GROWTH_SPARKLE,
|
|
FLDEFF_DEEP_SAND_FOOTPRINTS,
|
|
FLDEFF_POKECENTER_HEAL,
|
|
FLDEFF_USE_SECRET_POWER_TREE,
|
|
FLDEFF_USE_SECRET_POWER_SHRUB,
|
|
FLDEFF_TREE_DISGUISE,
|
|
FLDEFF_MOUNTAIN_DISGUISE,
|
|
FLDEFF_NPCFLY_OUT,
|
|
FLDEFF_USE_FLY,
|
|
FLDEFF_FLY_IN,
|
|
FLDEFF_EXCLAMATION_MARK_ICON_2,
|
|
FLDEFF_FEET_IN_FLOWING_WATER,
|
|
FLDEFF_BIKE_TIRE_TRACKS,
|
|
FLDEFF_SAND_DISGUISE,
|
|
FLDEFF_USE_ROCK_SMASH,
|
|
FLDEFF_USE_DIG,
|
|
FLDEFF_SAND_PILE,
|
|
FLDEFF_USE_STRENGTH,
|
|
FLDEFF_SHORT_GRASS,
|
|
FLDEFF_HOT_SPRINGS_WATER,
|
|
FLDEFF_USE_WATERFALL,
|
|
FLDEFF_USE_DIVE,
|
|
FLDEFF_POKEBALL,
|
|
FLDEFF_HEART_ICON,
|
|
FLDEFF_NOP_47,
|
|
FLDEFF_NOP_48,
|
|
FLDEFF_POP_OUT_OF_ASH,
|
|
FLDEFF_LAVARIDGE_GYM_WARP,
|
|
FLDEFF_SWEET_SCENT,
|
|
FLDEFF_SAND_PILLAR,
|
|
FLDEFF_BUBBLES,
|
|
FLDEFF_SPARKLE,
|
|
FLDEFF_SECRET_POWER_CAVE,
|
|
FLDEFF_SECRET_POWER_TREE,
|
|
FLDEFF_SECRET_POWER_SHRUB,
|
|
FLDEFF_CUT_GRASS,
|
|
FLDEFF_FIELD_MOVE_SHOW_MON_INIT,
|
|
FLDEFF_USE_FLY_ANCIENT_TOMB,
|
|
FLDEFF_PCTURN_ON,
|
|
FLDEFF_HALL_OF_FAME_RECORD,
|
|
FLDEFF_USE_TELEPORT
|
|
};
|
|
|
|
extern const struct CompressedSpritePalette gTrainerFrontPicPaletteTable[2];
|
|
extern const struct SpritePalette gUnknown_0839F114;
|
|
extern const struct CompressedSpriteSheet gTrainerFrontPicTable[2];
|
|
extern const struct SpriteTemplate gSpriteTemplate_839F128;
|
|
extern const struct OamData gOamData_839F0F4;
|
|
extern struct SpriteTemplate gUnknown_02024E8C;
|
|
|
|
extern u8 gLastFieldPokeMenuOpened;
|
|
|
|
u32 FieldEffectStart(u8 id);
|
|
bool8 FieldEffectCmd_loadtiles(u8 **script, u32 *val);
|
|
bool8 FieldEffectCmd_loadfadedpal(u8 **script, u32 *val);
|
|
bool8 FieldEffectCmd_loadpal(u8 **script, u32 *val);
|
|
bool8 FieldEffectCmd_callnative(u8 **script, u32 *val);
|
|
bool8 FieldEffectCmd_end(u8 **script, u32 *val);
|
|
bool8 FieldEffectCmd_loadgfx_callnative(u8 **script, u32 *val);
|
|
bool8 FieldEffectCmd_loadtiles_callnative(u8 **script, u32 *val);
|
|
bool8 FieldEffectCmd_loadfadedpal_callnative(u8 **script, u32 *val);
|
|
u32 FieldEffectScript_ReadWord(u8 **script);
|
|
void FieldEffectScript_LoadTiles(u8 **script);
|
|
void FieldEffectScript_LoadFadedPalette(u8 **script);
|
|
void FieldEffectScript_LoadPalette(u8 **script);
|
|
void FieldEffectScript_CallNative(u8 **script, u32 *val);
|
|
void FieldEffectFreeGraphicsResources(struct Sprite *sprite);
|
|
void FieldEffectStop(struct Sprite *sprite, u8 id);
|
|
void FieldEffectFreeTilesIfUnused(u16 tileStart);
|
|
void FieldEffectFreePaletteIfUnused(u8 paletteNum);
|
|
void FieldEffectActiveListClear(void);
|
|
void FieldEffectActiveListAdd(u8 id);
|
|
void FieldEffectActiveListRemove(u8 id);
|
|
bool8 FieldEffectActiveListContains(u8 id);
|
|
void sub_807DE38(u8 index);
|
|
|
|
void SpriteCB_PokeballGlow(struct Sprite *);
|
|
void SpriteCB_PokecenterMonitor(struct Sprite *);
|
|
void SpriteCB_HallOfFameMonitor(struct Sprite *);
|
|
|
|
void sub_80865BC(void);
|
|
|
|
void PokecenterHealEffect_0(struct Task *);
|
|
void PokecenterHealEffect_1(struct Task *);
|
|
void PokecenterHealEffect_2(struct Task *);
|
|
void PokecenterHealEffect_3(struct Task *);
|
|
|
|
void HallOfFameRecordEffect_0(struct Task *);
|
|
void HallOfFameRecordEffect_1(struct Task *);
|
|
void HallOfFameRecordEffect_2(struct Task *);
|
|
void HallOfFameRecordEffect_3(struct Task *);
|
|
|
|
void PokeballGlowEffect_0(struct Sprite *);
|
|
void PokeballGlowEffect_1(struct Sprite *);
|
|
void PokeballGlowEffect_2(struct Sprite *);
|
|
void PokeballGlowEffect_3(struct Sprite *);
|
|
void PokeballGlowEffect_4(struct Sprite *);
|
|
void PokeballGlowEffect_5(struct Sprite *);
|
|
void PokeballGlowEffect_6(struct Sprite *);
|
|
void PokeballGlowEffect_7(struct Sprite *);
|
|
|
|
void sub_8086748(void);
|
|
|
|
bool8 sub_80867AC(struct Task *);
|
|
bool8 sub_8086854(struct Task *);
|
|
bool8 sub_8086870(struct Task *);
|
|
bool8 sub_80868E4(struct Task *);
|
|
bool8 sub_808699C(struct Task *);
|
|
bool8 sub_80869B8(struct Task *);
|
|
bool8 sub_80869F8(struct Task *);
|
|
|
|
void sub_8086A2C(u8, u8);
|
|
|
|
bool8 sub_8086AA0(struct Task *);
|
|
bool8 sub_8086AC0(struct Task *);
|
|
bool8 sub_8086B30(struct Task *);
|
|
bool8 sub_8086B54(struct Task *);
|
|
bool8 sub_8086B64(struct Task *);
|
|
bool8 sub_8086B88(struct Task *);
|
|
|
|
bool8 sub_8086CF4(struct Task *);
|
|
bool8 sub_8086D70(struct Task *);
|
|
bool8 sub_8086DB0(struct Task *);
|
|
bool8 sub_8086E10(struct Task *);
|
|
bool8 sub_8086E50(struct Task *);
|
|
bool8 sub_8086EB0(struct Task *);
|
|
bool8 sub_8086ED4(struct Task *);
|
|
|
|
bool8 sub_8086FB0(struct Task *, struct MapObject *);
|
|
bool8 waterfall_1_do_anim_probably(struct Task *, struct MapObject *);
|
|
bool8 waterfall_2_wait_anim_finish_probably(struct Task *, struct MapObject *);
|
|
bool8 sub_8087030(struct Task *, struct MapObject *);
|
|
bool8 sub_8087058(struct Task *, struct MapObject *);
|
|
|
|
bool8 sub_8087124(struct Task *);
|
|
bool8 dive_2_unknown(struct Task *);
|
|
bool8 dive_3_unknown(struct Task *);
|
|
|
|
void sub_80871B8(u8);
|
|
|
|
bool8 sub_808722C(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_8087264(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_8087298(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_80872E4(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_80873D8(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_80873F4(struct Task *, struct MapObject *, struct Sprite *);
|
|
|
|
bool8 sub_80874CC(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_80874FC(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_8087548(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_808759C(struct Task *, struct MapObject *, struct Sprite *);
|
|
|
|
void sub_8087654(u8);
|
|
|
|
bool8 sub_80876C8(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_80876F8(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_8087774(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_80877AC(struct Task *, struct MapObject *, struct Sprite *);
|
|
bool8 sub_80877D4(struct Task *, struct MapObject *, struct Sprite *);
|
|
|
|
void sub_80878F4(struct Task *);
|
|
void sub_8087914(struct Task *);
|
|
|
|
void sub_8087AA4(struct Task *);
|
|
void sub_8087AC8(struct Task *);
|
|
|
|
void sub_8087BEC(struct Task *);
|
|
void sub_8087C14(struct Task *);
|
|
void sub_8087CA4(struct Task *);
|
|
void sub_8087D78(struct Task *);
|
|
|
|
void sub_8087E4C(struct Task *);
|
|
void sub_8087ED8(struct Task *);
|
|
void sub_8087FDC(struct Task *);
|
|
|
|
void sub_8088150(struct Task *);
|
|
void sub_80881C0(struct Task *);
|
|
void sub_8088228(struct Task *);
|
|
void sub_80882B4(struct Task *);
|
|
void sub_80882E4(struct Task *);
|
|
void sub_8088338(struct Task *);
|
|
void sub_8088380(struct Task *);
|
|
|
|
void sub_80884AC(struct Task *);
|
|
void sub_80884E8(struct Task *);
|
|
void sub_8088554(struct Task *);
|
|
void sub_80885A8(struct Task *);
|
|
void sub_80885D8(struct Task *);
|
|
void sub_808860C(struct Task *);
|
|
void sub_808862C(struct Task *);
|
|
|
|
void sub_8088984(struct Task *);
|
|
void sub_80889E4(struct Task *);
|
|
void sub_8088A30(struct Task *);
|
|
void sub_8088A78(struct Task *);
|
|
void sub_8088AF4(struct Task *);
|
|
|
|
void sub_8088CA0(struct Task *);
|
|
void sub_8088CF8(struct Task *);
|
|
void sub_8088D3C(struct Task *);
|
|
void sub_8088D94(struct Task *);
|
|
void sub_8088DD8(struct Task *);
|
|
void sub_8088E2C(struct Task *);
|
|
void sub_8088EB4(struct Task *);
|
|
void sub_8088F10(struct Task *);
|
|
void sub_8088F30(struct Task *);
|
|
|
|
void sub_80892A0(struct Task *);
|
|
void sub_8089354(struct Task *);
|
|
void sub_80893C0(struct Task *);
|
|
void sub_8089414(struct Task *);
|
|
void sub_808948C(struct Task *);
|
|
void sub_80894C4(struct Task *);
|
|
void fishE(struct Task *);
|
|
|
|
u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer);
|
|
void LoadTrainerGfx_TrainerCard(u8 gender, u16 palOffset, u8 *dest);
|
|
u8 CreateBirchSprite(s16 x, s16 y, u8 subpriority);
|
|
u8 CreateMonSprite_PicBox(u16, s16, s16, u8);
|
|
void FreeResourcesAndDestroySprite(struct Sprite *sprite);
|
|
void MultiplyInvertedPaletteRGBComponents(u16, u8, u8, u8);
|
|
void sub_80878A8(void);
|
|
void sub_8087BA8(void);
|
|
|
|
extern u32 gFieldEffectArguments[8];
|
|
|
|
#endif // GUARD_FIELD_EFFECT_H
|