mirror of
https://github.com/pret/pmd-red.git
synced 2026-08-23 09:14:55 -05:00
move orb effects 3
This commit is contained in:
@@ -7,8 +7,6 @@
|
||||
|
||||
|
||||
|
||||
void SetChargeStatusTarget(Entity *pokemon, Entity *target, u8 newStatus, Move *move, const u8 *message);
|
||||
void sub_8079764(Entity * pokemon);
|
||||
void CounterStatusTarget(Entity * pokemon, Entity * target, u8 newStatus);
|
||||
void SafeguardStatusTarget(Entity * pokemon, Entity * target);
|
||||
void MistStatusTarget(Entity * pokemon, Entity * target);
|
||||
|
||||
11
include/move_orb_effects_3.h
Normal file
11
include/move_orb_effects_3.h
Normal file
@@ -0,0 +1,11 @@
|
||||
#ifndef GUARD_MOVE_ORB_EFFECTS_3_H
|
||||
#define GUARD_MOVE_ORB_EFFECTS_3_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
#include "structs/str_moves.h"
|
||||
|
||||
void SetChargeStatusTarget(Entity *pokemon, Entity *target, u8 newStatus, Move *move, const u8 *message);
|
||||
void sub_8079764(Entity * pokemon);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -39,6 +39,7 @@
|
||||
#include "dungeon_map_access.h"
|
||||
#include "warp_target.h"
|
||||
#include "move_orb_effects_1.h"
|
||||
#include "move_orb_effects_3.h"
|
||||
|
||||
void sub_8075BA4(Entity *param_1, u8 param_2);
|
||||
void sub_804178C(u8 param_1);
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_mon_spawn.h"
|
||||
#include "move_orb_effects_3.h"
|
||||
|
||||
static EWRAM_DATA s32 sNewAtkStats[2] = {0, 0};
|
||||
static EWRAM_DATA s32 sNewDefStats[2] = {0, 0};
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
#include "sprite.h"
|
||||
#include "move_orb_actions_4.h"
|
||||
#include "move_orb_effects_2.h"
|
||||
#include "move_orb_effects_3.h"
|
||||
#include "weather.h"
|
||||
#include "targeting_flags.h"
|
||||
#include "pokemon_types.h"
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_damage.h"
|
||||
#include "move_util.h"
|
||||
#include "move_orb_effects_3.h"
|
||||
|
||||
bool8 IronTailMoveAction(Entity *pokemon, Entity *target, Move *move, s32 itemId)
|
||||
{
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
#include "dungeon_damage.h"
|
||||
#include "warp_target.h"
|
||||
#include "explosion.h"
|
||||
#include "move_orb_effects_3.h"
|
||||
|
||||
extern void nullsub_92(Entity *);
|
||||
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
#include "dungeon_kecleon_shop.h"
|
||||
#include "blow_away.h"
|
||||
#include "warp_target.h"
|
||||
#include "move_orb_effects_3.h"
|
||||
|
||||
static void sub_805A7D4(Entity *, Entity *, Item *, DungeonPos *);
|
||||
|
||||
|
||||
@@ -49,6 +49,7 @@
|
||||
#include "drought_orb.h"
|
||||
#include "switcher_orb.h"
|
||||
#include "trawl_orb.h"
|
||||
#include "move_orb_effects_3.h"
|
||||
|
||||
bool8 ProtectMoveAction(Entity * pokemon,Entity * target,Move *move, s32 itemId)
|
||||
{
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "move_orb_effects_3.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
|
||||
@@ -9,19 +9,12 @@
|
||||
#include "constants/dungeon_action.h"
|
||||
#include "constants/status.h"
|
||||
#include "dungeon_action.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_ai_attack.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "moves.h"
|
||||
|
||||
extern const char *gPtrFrozenMessage[];
|
||||
extern const char *gPtrWrappedAroundMessage[];
|
||||
extern const char *gPtrWrappedByMessage[];
|
||||
extern const char *gPtrBideMessage[];
|
||||
extern const char *gPtrPausedMessage[];
|
||||
extern const char *gPtrInfatuatedMessage[];
|
||||
extern u8 *gUnknown_80F95EC[];
|
||||
extern char *gPtrMoveInterruptedMessage[];
|
||||
#include "move_orb_effects_3.h"
|
||||
|
||||
bool8 HasStatusThatPreventsActing(Entity *pokemon)
|
||||
{
|
||||
@@ -38,13 +31,13 @@ bool8 HasStatusThatPreventsActing(Entity *pokemon)
|
||||
switch (pokemonInfo->frozenClassStatus.status)
|
||||
{
|
||||
case STATUS_FROZEN:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gPtrFrozenMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gPtrFrozenMessage);
|
||||
return TRUE;
|
||||
case STATUS_WRAP:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gPtrWrappedAroundMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gPtrWrappedAroundMessage);
|
||||
return TRUE;
|
||||
case STATUS_WRAPPED:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gPtrWrappedByMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gPtrWrappedByMessage);
|
||||
return TRUE;
|
||||
case STATUS_PETRIFIED:
|
||||
return TRUE;
|
||||
@@ -52,15 +45,15 @@ bool8 HasStatusThatPreventsActing(Entity *pokemon)
|
||||
switch (pokemonInfo->cringeClassStatus.status)
|
||||
{
|
||||
case STATUS_PAUSED:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gPtrPausedMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gPtrPausedMessage);
|
||||
return TRUE;
|
||||
case STATUS_INFATUATED:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gPtrInfatuatedMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gPtrInfatuatedMessage);
|
||||
return TRUE;
|
||||
}
|
||||
if (pokemonInfo->bideClassStatus.status == STATUS_BIDE)
|
||||
{
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gPtrBideMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gPtrBideMessage);
|
||||
return TRUE;
|
||||
}
|
||||
if (pokemonInfo->curseClassStatus.status == STATUS_DECOY)
|
||||
@@ -123,20 +116,20 @@ bool8 sub_80701A4(Entity *pokemon)
|
||||
case STATUS_SLEEP:
|
||||
case STATUS_NIGHTMARE:
|
||||
case STATUS_NAPPING:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gUnknown_80F95EC);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gUnknown_80F95EC);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
switch(pokemonInfo->frozenClassStatus.status)
|
||||
{
|
||||
case STATUS_FROZEN:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gPtrFrozenMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gPtrFrozenMessage);
|
||||
return TRUE;
|
||||
case STATUS_WRAP:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gPtrWrappedAroundMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gPtrWrappedAroundMessage);
|
||||
return TRUE;
|
||||
case STATUS_WRAPPED:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gPtrWrappedByMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gPtrWrappedByMessage);
|
||||
return TRUE;
|
||||
case STATUS_PETRIFIED:
|
||||
return TRUE;
|
||||
@@ -147,10 +140,10 @@ bool8 sub_80701A4(Entity *pokemon)
|
||||
flag = TRUE;
|
||||
goto _0807026C;
|
||||
case STATUS_PAUSED:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gPtrPausedMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gPtrPausedMessage);
|
||||
return TRUE;
|
||||
case STATUS_INFATUATED:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gPtrInfatuatedMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gPtrInfatuatedMessage);
|
||||
return TRUE;
|
||||
default:
|
||||
case STATUS_NONE:
|
||||
@@ -158,12 +151,12 @@ bool8 sub_80701A4(Entity *pokemon)
|
||||
case 8:
|
||||
_0807026C:
|
||||
if (pokemonInfo->bideClassStatus.status == STATUS_BIDE) {
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gPtrBideMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gPtrBideMessage);
|
||||
return TRUE;
|
||||
}
|
||||
else if (((pokemonInfo->bideClassStatus.status != STATUS_NONE) && (pokemonInfo->bideClassStatus.status != STATUS_CHARGING)) && (pokemonInfo->bideClassStatus.status != STATUS_ENRAGED)) {
|
||||
if (flag) {
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gPtrMoveInterruptedMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gPtrMoveInterruptedMessage);
|
||||
}
|
||||
else {
|
||||
for(index = 0, move = pokemonInfo->moves.moves; index < MAX_MON_MOVES; move++, index++) {
|
||||
|
||||
Reference in New Issue
Block a user