This commit is contained in:
aozhiwei 2022-10-19 17:18:22 +08:00
parent 839d2aedd1
commit c6426ef305
2 changed files with 21 additions and 2 deletions

View File

@ -293,6 +293,9 @@ void Ability::DelSpeedRuduce(float rate)
speed_ruduce_rate_ -= rate;
speed_ruduce_rate_ = std::max(0.0f, speed_ruduce_rate_);
--speed_ruduce_times_;
if (speed_ruduce_times_ <= 0) {
speed_ruduce_rate_ = 0;
}
#ifdef DEBUG
if (speed_ruduce_times_ < 0) {
abort();
@ -302,6 +305,15 @@ void Ability::DelSpeedRuduce(float rate)
float Ability::GetSpeedRuduce()
{
#ifdef DEBUG
if (std::abs(speed_ruduce_rate_) > 0.001f && owner.Get() && owner.Get()->IsPlayer()) {
a8::XPrintf("speed_ruduce_rate:%f speed_ruduce_times_:%d\n",
{
speed_ruduce_rate_,
speed_ruduce_times_
});
}
#endif
return speed_ruduce_rate_;
}

View File

@ -114,6 +114,13 @@ int Creature::AddBuff(Creature* caster,
MetaData::Skill* buff_skill_meta,
bool no_check_immune)
{
#if 999
if (buff_meta->i->buff_id() == 8042) {
if (GetBuffById(buff_meta->i->buff_id())) {
return 0;
}
}
#endif
if (buff_meta->only_spec_race) {
if (!a8::HasBitFlag(buff_meta->only_spec_race, GetEntityType())) {
return 0;
@ -510,11 +517,11 @@ void Creature::OnBuffRemove(Buff& buff)
#if 999
if (buff.meta->i->buff_id() == 8042) {
if (GetAbility()->GetSpeedRuduceTimes() > 0) {
GetAbility()->DelSpeedRuduce(+buff.meta->param3/100.0f);
GetAbility()->DelSpeedRuduce(-buff.meta->param3/100.0f);
}
#ifdef DEBUG
{
a8::XPrintf("移除减速%f", {buff.meta->param3});
a8::XPrintf("移除减速%f\nad", {buff.meta->param3});
}
#endif
}