mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-26 11:44:17 +01:00
Implemented Cud Chew's effect
This commit is contained in:
parent
7c67f1ac27
commit
f96137eb5e
@ -7656,6 +7656,17 @@ BattleScript_BallFetch::
|
|||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
end3
|
end3
|
||||||
|
|
||||||
|
BattleScript_CudChewActivates::
|
||||||
|
pause B_WAIT_TIME_SHORTEST
|
||||||
|
call BattleScript_AbilityPopUp
|
||||||
|
setbyte sBERRY_OVERRIDE, 1 @ override the requirements for eating berries
|
||||||
|
consumeberry BS_TARGET, FALSE
|
||||||
|
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||||
|
healthbarupdate BS_ATTACKER
|
||||||
|
datahpupdate BS_ATTACKER
|
||||||
|
setbyte sBERRY_OVERRIDE, 0
|
||||||
|
end3
|
||||||
|
|
||||||
BattleScript_TargetFormChange::
|
BattleScript_TargetFormChange::
|
||||||
pause 5
|
pause 5
|
||||||
copybyte gBattlerAbility, gBattlerTarget
|
copybyte gBattlerAbility, gBattlerTarget
|
||||||
|
@ -104,6 +104,7 @@ struct DisableStruct
|
|||||||
u8 noRetreat:1;
|
u8 noRetreat:1;
|
||||||
u8 tarShot:1;
|
u8 tarShot:1;
|
||||||
u8 octolock:1;
|
u8 octolock:1;
|
||||||
|
u8 cudChew:1;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct ProtectStruct
|
struct ProtectStruct
|
||||||
|
@ -444,6 +444,7 @@ extern const u8 BattleScript_ProtosynthesisActivates[];
|
|||||||
extern const u8 BattleScript_QuarkDriveActivates[];
|
extern const u8 BattleScript_QuarkDriveActivates[];
|
||||||
extern const u8 BattleScript_GoodAsGoldActivates[];
|
extern const u8 BattleScript_GoodAsGoldActivates[];
|
||||||
extern const u8 BattleScript_RuinAbilityActivates[];
|
extern const u8 BattleScript_RuinAbilityActivates[];
|
||||||
|
extern const u8 BattleScript_CudChewActivates[];
|
||||||
|
|
||||||
// zmoves
|
// zmoves
|
||||||
extern const u8 BattleScript_ZMoveActivateDamaging[];
|
extern const u8 BattleScript_ZMoveActivateDamaging[];
|
||||||
|
@ -2696,6 +2696,7 @@ enum
|
|||||||
ENDTURN_THROAT_CHOP,
|
ENDTURN_THROAT_CHOP,
|
||||||
ENDTURN_SLOW_START,
|
ENDTURN_SLOW_START,
|
||||||
ENDTURN_PLASMA_FISTS,
|
ENDTURN_PLASMA_FISTS,
|
||||||
|
ENDTURN_CUD_CHEW,
|
||||||
ENDTURN_BATTLER_COUNT
|
ENDTURN_BATTLER_COUNT
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -3238,6 +3239,11 @@ u8 DoBattlerEndTurnEffects(void)
|
|||||||
gStatuses4[i] &= ~STATUS4_PLASMA_FISTS;
|
gStatuses4[i] &= ~STATUS4_PLASMA_FISTS;
|
||||||
gBattleStruct->turnEffectsTracker++;
|
gBattleStruct->turnEffectsTracker++;
|
||||||
break;
|
break;
|
||||||
|
case ENDTURN_CUD_CHEW:
|
||||||
|
if (GetBattlerAbility(gActiveBattler) == ABILITY_CUD_CHEW && !gDisableStructs[gActiveBattler].cudChew && GetUsedHeldItem(gActiveBattler) != ITEM_NONE)
|
||||||
|
gDisableStructs[gActiveBattler].cudChew = TRUE;
|
||||||
|
gBattleStruct->turnEffectsTracker++;
|
||||||
|
break;
|
||||||
case ENDTURN_BATTLER_COUNT: // done
|
case ENDTURN_BATTLER_COUNT: // done
|
||||||
gBattleStruct->turnEffectsTracker = 0;
|
gBattleStruct->turnEffectsTracker = 0;
|
||||||
gBattleStruct->turnEffectsBattlerId++;
|
gBattleStruct->turnEffectsBattlerId++;
|
||||||
@ -5154,6 +5160,15 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u16 ability, u8 special, u16 move
|
|||||||
effect++;
|
effect++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case ABILITY_CUD_CHEW:
|
||||||
|
if (ItemId_GetPocket(GetUsedHeldItem(battler)) == POCKET_BERRIES && gDisableStructs[gActiveBattler].cudChew == TRUE)
|
||||||
|
{
|
||||||
|
gLastUsedItem = gBattleStruct->usedHeldItems[battler][GetBattlerSide(battler)];
|
||||||
|
gBattleStruct->usedHeldItems[battler][GetBattlerSide(battler)] = ITEM_NONE;
|
||||||
|
BattleScriptPushCursorAndCallback(BattleScript_CudChewActivates);
|
||||||
|
effect++;
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user