This commit is contained in:
aozhiwei 2022-12-30 09:47:45 +08:00
parent e4f4b2ff0e
commit 39ba2b5ab4
3 changed files with 29 additions and 27 deletions

View File

@ -10,6 +10,28 @@
#include "mt/SkillNumber.h"
void HideBuff::Activate()
{
ProcSkill();
}
void HideBuff::Deactivate()
{
if (skill_meta) {
switch (skill_meta->GetMagicId()) {
case MAGIC_YS:
{
owner->GetTrigger()->YsBuffRemove(this);
}
break;
default:
{
}
break;
}
}
}
void HideBuff::ProcSkill()
{
if (skill_meta) {
switch (skill_meta->GetMagicId()) {
@ -42,20 +64,3 @@ void HideBuff::Activate()
}
}
}
void HideBuff::Deactivate()
{
if (skill_meta) {
switch (skill_meta->GetMagicId()) {
case MAGIC_YS:
{
owner->GetTrigger()->YsBuffRemove(this);
}
break;
default:
{
}
break;
}
}
}

View File

@ -9,4 +9,7 @@ class HideBuff : public Buff
virtual void Activate() override;
virtual void Deactivate() override;
private:
void ProcSkill();
};

View File

@ -98,18 +98,13 @@ void SprintBuff::Check(Position& pre_pos, std::map<int, long long>& hited_object
}
std::set<Creature*> enemys;
Position old_pos = owner->GetPos();
a8::Vec2 dir = owner->GetPos().CalcDir2D(pre_pos);
dir.Normalize();
glm::vec3 dir = owner->GetPos().ToGlmVec3() - pre_pos.ToGlmVec3();
GlmHelper::Normalize(dir);
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));
#endif
owner->GetHitEnemys(enemys, meta->_param4);
glm::vec3 center = owner->GetPos().ToGlmVec3() + dir * (float)i;
owner->GetHitEnemys(enemys, center, meta->_param4);
for (auto& enemy : enemys) {
if (enemy->IsEntityType(ET_Car)) {
continue;
@ -126,7 +121,6 @@ void SprintBuff::Check(Position& pre_pos, std::map<int, long long>& hited_object
}
}
owner->SetPos(old_pos);
pre_pos = owner->GetPos();
}