summaryrefslogtreecommitdiff
path: root/include/dungeon_ai_attack.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/dungeon_ai_attack.h')
-rw-r--r--include/dungeon_ai_attack.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/include/dungeon_ai_attack.h b/include/dungeon_ai_attack.h
index 1878889..cd8d9d8 100644
--- a/include/dungeon_ai_attack.h
+++ b/include/dungeon_ai_attack.h
@@ -3,6 +3,8 @@
#include "dungeon_entity.h"
+#define RANGED_ATTACK_RANGE 10
+
struct MoveTargetResults
{
bool8 moveUsable;
@@ -10,9 +12,13 @@ struct MoveTargetResults
s32 moveWeight;
};
-// 0x7BB94
void DecideAttack(struct DungeonEntity *pokemon);
-// 0x7C04C
s32 FindMoveTarget(struct MoveTargetResults *moveTargetResults, struct DungeonEntity *pokemon, struct PokemonMove *move);
+bool8 IsTargetInLineRange(struct DungeonEntity *user, struct DungeonEntity *target, s32 range);
+s32 WeightMoveIfUsable(s32 numPotentialTargets, s32 targetingFlags, struct DungeonEntity *user, struct DungeonEntity *target, struct PokemonMove *move, u32 hasStatusChecker);
+bool8 CanUseStatusMove(s32 targetingFlags, struct DungeonEntity *user, struct DungeonEntity *target, struct PokemonMove *move, bool32 hasStatusChecker);
+s32 WeightMove(struct DungeonEntity *user, s32 targetingFlags, struct DungeonEntity *target, u32 moveType);
+bool8 TargetRegularAttack(struct DungeonEntity *pokemon, u32 *targetDir, bool8 checkPetrified);
+bool8 IsTargetStraightAhead(struct DungeonEntity *pokemon, struct DungeonEntity *targetPokemon, s32 facingDir, s32 maxRange);
#endif