This commit is contained in:
aozhiwei 2023-03-06 12:08:19 +08:00
parent 7e901c5ebc
commit c5a6f63b69
2 changed files with 10 additions and 3 deletions

View File

@ -17,19 +17,25 @@
void SprintBuff::Activate()
{
#if 0
if (meta->_int_buff_param5) {
owner->IncDisableMoveDirTimes();
}
#endif
move_distance_limit_ = meta->GetBuffParam2(owner, skill_meta);
check_interval_time_ = meta->GetBuffParam5(owner, skill_meta);
check_distance_ = meta->GetBuffParam4(owner, skill_meta);
SprintMove();
CoCollisionCheck();
}
void SprintBuff::Deactivate()
{
#if 0
if (meta->_int_buff_param5) {
owner->DecDisableMoveDirTimes();
}
#endif
}
void SprintBuff::SprintMove()
@ -146,7 +152,7 @@ void SprintBuff::Check(Position& pre_pos, Position& src_pos, std::map<int, long
for (int i = 0; i < (distance + 6); i += 5) {
glm::vec3 center = owner->GetPos().ToGlmVec3() + dir * (float)i;
std::set<Creature*> enemys;
owner->GetHitEnemys(enemys, center, meta->_buff_param4);
owner->GetHitEnemys(enemys, center, check_distance_);
for (auto& enemy : enemys) {
if (enemy->IsEntityType(ET_Car)) {
continue;
@ -154,7 +160,7 @@ void SprintBuff::Check(Position& pre_pos, Position& src_pos, std::map<int, long
auto itr = hited_objects.find(enemy->GetUniId());
if (itr != hited_objects.end()) {
if (owner->room->GetFrameNo() - itr->second <
meta->_int_buff_param5 * SERVER_FRAME_RATE) {
check_interval_time_ * SERVER_FRAME_RATE) {
continue;
}
}

View File

@ -20,5 +20,6 @@ class SprintBuff : public Buff
private:
float move_distance_limit_ = 0.0f;
float check_interval_time_ = 0.0f;
float check_distance_ = 0.0f;
};