1
This commit is contained in:
parent
d935629cac
commit
498f7350d9
@ -92,34 +92,37 @@ void SprintBuff::CoCollisionCheck()
|
||||
|
||||
void SprintBuff::Check(Position& pre_pos, std::map<int, long long>& hited_objects)
|
||||
{
|
||||
if (pre_pos.ManhattanDistance2D(owner->GetPos()) < 2) {
|
||||
pre_pos = owner->GetPos();
|
||||
return;
|
||||
}
|
||||
|
||||
std::set<Creature*> enemys;
|
||||
Position old_pos = owner->GetPos();
|
||||
|
||||
if (pre_pos.ManhattanDistance2D(owner->GetPos()) > 2) {
|
||||
a8::Vec2 dir = owner->GetPos().CalcDir2D(pre_pos);
|
||||
dir.Normalize();
|
||||
float distance = owner->GetPos().Distance2D2(pre_pos);
|
||||
for (int i = 0; i < (distance + 6); i += 5) {
|
||||
// 999
|
||||
a8::Vec2 dir = owner->GetPos().CalcDir2D(pre_pos);
|
||||
dir.Normalize();
|
||||
float distance = owner->GetPos().Distance2D2(pre_pos);
|
||||
for (int i = 0; i < (distance + 6); i += 5) {
|
||||
// 999
|
||||
#if 1
|
||||
#else
|
||||
owner->MutablePos.FromVec2((pre_pos) + (dir * i));
|
||||
owner->MutablePos.FromVec2((pre_pos) + (dir * i));
|
||||
#endif
|
||||
owner->GetHitEnemys(enemys, meta->_param4);
|
||||
for (auto& enemy : enemys) {
|
||||
if (enemy->IsEntityType(ET_Car)) {
|
||||
owner->GetHitEnemys(enemys, meta->_param4);
|
||||
for (auto& enemy : enemys) {
|
||||
if (enemy->IsEntityType(ET_Car)) {
|
||||
continue;
|
||||
}
|
||||
auto itr = hited_objects.find(enemy->GetUniId());
|
||||
if (itr != hited_objects.end()) {
|
||||
if ((owner->room->GetFrameNo() - itr->second) * FRAME_RATE_MS <
|
||||
meta->_int_param5) {
|
||||
continue;
|
||||
}
|
||||
auto itr = hited_objects.find(enemy->GetUniId());
|
||||
if (itr != hited_objects.end()) {
|
||||
if ((owner->room->GetFrameNo() - itr->second) * FRAME_RATE_MS <
|
||||
meta->_int_param5) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
hited_objects[enemy->GetUniId()] = owner->room->GetFrameNo();
|
||||
OnEnemyHit(enemy);
|
||||
}
|
||||
hited_objects[enemy->GetUniId()] = owner->room->GetFrameNo();
|
||||
OnEnemyHit(enemy);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user