Adds OnIncomingHit hook to Angelscript.
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
This commit is contained in:
parent
d59ee9d869
commit
1d90360efe
|
@ -347,3 +347,11 @@ void AngelScriptScript::BlockWeather(CreatureLib::Battling::Battle* battle, bool
|
||||||
void AngelScriptScript::OnSwitchIn(CreatureLib::Battling::Creature* creature) {
|
void AngelScriptScript::OnSwitchIn(CreatureLib::Battling::Creature* creature) {
|
||||||
CALL_HOOK(OnSwitchIn, { ctx->SetArgObject(0, (void*)creature); })
|
CALL_HOOK(OnSwitchIn, { ctx->SetArgObject(0, (void*)creature); })
|
||||||
}
|
}
|
||||||
|
void AngelScriptScript::OnIncomingHit(const CreatureLib::Battling::ExecutingAttack* attack,
|
||||||
|
CreatureLib::Battling::Creature* target, uint8_t hitNumber) {
|
||||||
|
CALL_HOOK(OnIncomingHit, {
|
||||||
|
ctx->SetArgObject(0, (void*)attack);
|
||||||
|
ctx->SetArgObject(1, (void*)target);
|
||||||
|
ctx->SetArgByte(2, hitNumber);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
|
@ -80,6 +80,8 @@ public:
|
||||||
void PreventSecondaryEffects(const CreatureLib::Battling::ExecutingAttack* attack,
|
void PreventSecondaryEffects(const CreatureLib::Battling::ExecutingAttack* attack,
|
||||||
CreatureLib::Battling::Creature* target, uint8_t hitNumber, bool* outResult) override;
|
CreatureLib::Battling::Creature* target, uint8_t hitNumber, bool* outResult) override;
|
||||||
|
|
||||||
|
void OnIncomingHit(const CreatureLib::Battling::ExecutingAttack* attack,
|
||||||
|
CreatureLib::Battling::Creature* target, uint8_t hitNumber) override;
|
||||||
void OnSecondaryEffect(const CreatureLib::Battling::ExecutingAttack* attack,
|
void OnSecondaryEffect(const CreatureLib::Battling::ExecutingAttack* attack,
|
||||||
CreatureLib::Battling::Creature* target, uint8_t hitNumber) override;
|
CreatureLib::Battling::Creature* target, uint8_t hitNumber) override;
|
||||||
|
|
||||||
|
@ -118,6 +120,8 @@ public:
|
||||||
void PreventOpponentRunAway(const CreatureLib::Battling::FleeTurnChoice* choice, bool* result) override;
|
void PreventOpponentRunAway(const CreatureLib::Battling::FleeTurnChoice* choice, bool* result) override;
|
||||||
void PreventOpponentSwitch(const CreatureLib::Battling::SwitchTurnChoice* choice, bool* outResult) override;
|
void PreventOpponentSwitch(const CreatureLib::Battling::SwitchTurnChoice* choice, bool* outResult) override;
|
||||||
void OnEndTurn() override;
|
void OnEndTurn() override;
|
||||||
|
void OnFaint(CreatureLib::Battling::Creature* creature, CreatureLib::Battling::DamageSource source) override;
|
||||||
|
void OnSwitchIn(CreatureLib::Battling::Creature* creature) override;
|
||||||
|
|
||||||
////////////////////
|
////////////////////
|
||||||
// PkmnLib methods//
|
// PkmnLib methods//
|
||||||
|
@ -135,9 +139,7 @@ public:
|
||||||
void DoesShareExperience(CreatureLib::Battling::Creature* faintedMon, CreatureLib::Battling::Creature* winningMon,
|
void DoesShareExperience(CreatureLib::Battling::Creature* faintedMon, CreatureLib::Battling::Creature* winningMon,
|
||||||
bool* shareExperience) override;
|
bool* shareExperience) override;
|
||||||
|
|
||||||
void OnFaint(CreatureLib::Battling::Creature* creature, CreatureLib::Battling::DamageSource source) override;
|
|
||||||
void BlockWeather(CreatureLib::Battling::Battle* battle, bool* blockWeather) override;
|
void BlockWeather(CreatureLib::Battling::Battle* battle, bool* blockWeather) override;
|
||||||
void OnSwitchIn(CreatureLib::Battling::Creature* creature) override;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#undef CALL_HOOK
|
#undef CALL_HOOK
|
||||||
|
|
|
@ -113,6 +113,7 @@ public:
|
||||||
SCRIPT_HOOK_FUNCTION(
|
SCRIPT_HOOK_FUNCTION(
|
||||||
PreventSecondaryEffects,
|
PreventSecondaryEffects,
|
||||||
"void PreventSecondaryEffects(ExecutingMove@ attack, Pokemon@ target, uint8 hit, bool& outResult)");
|
"void PreventSecondaryEffects(ExecutingMove@ attack, Pokemon@ target, uint8 hit, bool& outResult)");
|
||||||
|
SCRIPT_HOOK_FUNCTION(OnIncomingHit, "void OnIncomingHit(ExecutingMove@ attack, Pokemon@ target, uint8 hit)");
|
||||||
SCRIPT_HOOK_FUNCTION(OnSecondaryEffect,
|
SCRIPT_HOOK_FUNCTION(OnSecondaryEffect,
|
||||||
"void OnSecondaryEffect(ExecutingMove@ attack, Pokemon@ target, uint8 hit)");
|
"void OnSecondaryEffect(ExecutingMove@ attack, Pokemon@ target, uint8 hit)");
|
||||||
SCRIPT_HOOK_FUNCTION(OnAfterHits, "void OnAfterHits(ExecutingMove@ attack, Pokemon@ target)");
|
SCRIPT_HOOK_FUNCTION(OnAfterHits, "void OnAfterHits(ExecutingMove@ attack, Pokemon@ target)");
|
||||||
|
@ -168,6 +169,7 @@ public:
|
||||||
SCRIPT_HOOK_FUNCTION(OnFaint, "void OnFaint(Pokemon@ pokemon, DamageSource damageSource)");
|
SCRIPT_HOOK_FUNCTION(OnFaint, "void OnFaint(Pokemon@ pokemon, DamageSource damageSource)");
|
||||||
SCRIPT_HOOK_FUNCTION(BlockWeather, "void BlockWeather(Battle@ battle, bool& result)");
|
SCRIPT_HOOK_FUNCTION(BlockWeather, "void BlockWeather(Battle@ battle, bool& result)");
|
||||||
SCRIPT_HOOK_FUNCTION(OnSwitchIn, "void OnSwitchIn(Pokemon@ pokemon)");
|
SCRIPT_HOOK_FUNCTION(OnSwitchIn, "void OnSwitchIn(Pokemon@ pokemon)");
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#undef SCRIPT_HOOK_FUNCTION
|
#undef SCRIPT_HOOK_FUNCTION
|
||||||
|
|
|
@ -26,6 +26,7 @@ shared abstract class PkmnScript {
|
||||||
void OnAttackMiss(ExecutingMove@ attack, Pokemon@ target){};
|
void OnAttackMiss(ExecutingMove@ attack, Pokemon@ target){};
|
||||||
void ChangeAttackType(ExecutingMove@ attack, Pokemon@ target, uint8 hit, uint8& outType){};
|
void ChangeAttackType(ExecutingMove@ attack, Pokemon@ target, uint8 hit, uint8& outType){};
|
||||||
void ChangeEffectiveness(ExecutingMove@ attack, Pokemon@ target, uint8 hit, float& effectiveness){};
|
void ChangeEffectiveness(ExecutingMove@ attack, Pokemon@ target, uint8 hit, float& effectiveness){};
|
||||||
|
void OnIncomingHit(ExecutingMove@ attack, Pokemon@ target, uint8 hit){};
|
||||||
void PreventSecondaryEffects(ExecutingMove@ attack, Pokemon@ target, uint8 hit, bool& outResult){};
|
void PreventSecondaryEffects(ExecutingMove@ attack, Pokemon@ target, uint8 hit, bool& outResult){};
|
||||||
void OnSecondaryEffect(ExecutingMove@ attack, Pokemon@ target, uint8 hit){};
|
void OnSecondaryEffect(ExecutingMove@ attack, Pokemon@ target, uint8 hit){};
|
||||||
void OnAfterHits(ExecutingMove@ attack, Pokemon@ target){};
|
void OnAfterHits(ExecutingMove@ attack, Pokemon@ target){};
|
||||||
|
|
Loading…
Reference in New Issue