35 lines
2.1 KiB
ActionScript
35 lines
2.1 KiB
ActionScript
namespace Gen7 {
|
|
[Ability effect=BeastBoost]
|
|
class BeastBoost : PkmnScript {
|
|
void OnFaintingOpponent(ExecutingMove@ move, Pokemon@, uint8) override {
|
|
Statistic increaseStat = Statistic::HP;
|
|
auto user = move.User;
|
|
if (user.GetFlatStat(Statistic::Attack) > user.GetFlatStat(Statistic::HP) &&
|
|
user.GetFlatStat(Statistic::Attack) > user.GetFlatStat(Statistic::Defense) &&
|
|
user.GetFlatStat(Statistic::Attack) > user.GetFlatStat(Statistic::SpecialAttack) &&
|
|
user.GetFlatStat(Statistic::Attack) > user.GetFlatStat(Statistic::SpecialDefense) &&
|
|
user.GetFlatStat(Statistic::Attack) > user.GetFlatStat(Statistic::Speed)) {
|
|
increaseStat = Statistic::Attack;
|
|
}
|
|
if (user.GetFlatStat(Statistic::Defense) > user.GetFlatStat(Statistic::HP) &&
|
|
user.GetFlatStat(Statistic::Defense) > user.GetFlatStat(Statistic::SpecialAttack) &&
|
|
user.GetFlatStat(Statistic::Defense) > user.GetFlatStat(Statistic::SpecialDefense) &&
|
|
user.GetFlatStat(Statistic::Defense) > user.GetFlatStat(Statistic::Speed)) {
|
|
increaseStat = Statistic::Defense;
|
|
}
|
|
if (user.GetFlatStat(Statistic::SpecialAttack) > user.GetFlatStat(Statistic::HP) &&
|
|
user.GetFlatStat(Statistic::SpecialAttack) > user.GetFlatStat(Statistic::SpecialDefense) &&
|
|
user.GetFlatStat(Statistic::SpecialAttack) > user.GetFlatStat(Statistic::Speed)) {
|
|
increaseStat = Statistic::SpecialAttack;
|
|
}
|
|
if (user.GetFlatStat(Statistic::SpecialDefense) > user.GetFlatStat(Statistic::HP) &&
|
|
user.GetFlatStat(Statistic::SpecialDefense) > user.GetFlatStat(Statistic::Speed)) {
|
|
increaseStat = Statistic::SpecialDefense;
|
|
}
|
|
if (user.GetFlatStat(Statistic::Speed) > user.GetFlatStat(Statistic::HP)) {
|
|
increaseStat = Statistic::Speed;
|
|
}
|
|
user.ChangeStatBoost(increaseStat, 1, true);
|
|
}
|
|
}
|
|
} |