1
This commit is contained in:
parent
1f7fefe527
commit
d8f71de4c5
@ -142,6 +142,13 @@ void Bullet::OnHit(std::set<Entity*>& objects)
|
|||||||
if (!room->BulletCanReach(born_pos.ToGlmVec3(), target->GetPos().ToGlmVec3())) {
|
if (!room->BulletCanReach(born_pos.ToGlmVec3(), target->GetPos().ToGlmVec3())) {
|
||||||
eat = true;
|
eat = true;
|
||||||
}
|
}
|
||||||
|
if (gun_meta->id() == 30905 && eat && sender.Get()) {
|
||||||
|
glm::vec3 new_born_pos = born_pos.ToGlmVec3();
|
||||||
|
new_born_pos.y = target->GetPos().GetY();
|
||||||
|
if (room->BulletCanReach(new_born_pos, target->GetPos().ToGlmVec3())) {
|
||||||
|
eat = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
if (sender.Get() && sender.Get()->IsPlayer()) {
|
if (sender.Get() && sender.Get()->IsPlayer()) {
|
||||||
#ifdef MYDEBUG
|
#ifdef MYDEBUG
|
||||||
a8::XPrintf("eat %d xxxxxxxxxxxxxxxxxxxxxxxx\n", {eat});
|
a8::XPrintf("eat %d xxxxxxxxxxxxxxxxxxxxxxxx\n", {eat});
|
||||||
@ -933,6 +940,9 @@ void Bullet::GetHitCreatures(BulletCheckResult& result)
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
result.objects.insert(c);
|
result.objects.insert(c);
|
||||||
|
#ifdef MYDEBUG1
|
||||||
|
a8::XPrintf("GetHitCreatures gun_id:%d\n", {gun_meta->id()});
|
||||||
|
#endif
|
||||||
if (gun_meta->ispenetrate()) {
|
if (gun_meta->ispenetrate()) {
|
||||||
++result.c_hit_num;
|
++result.c_hit_num;
|
||||||
hit_objects_.insert(c->GetUniId());
|
hit_objects_.insert(c->GetUniId());
|
||||||
@ -1027,6 +1037,9 @@ float Bullet::GetHitRadius()
|
|||||||
hit_radius = GetExplosionRange();
|
hit_radius = GetExplosionRange();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (gun_meta->id() == 30905) {
|
||||||
|
hit_radius = 20;
|
||||||
|
}
|
||||||
return hit_radius;
|
return hit_radius;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
#include "mt/MapThing.h"
|
#include "mt/MapThing.h"
|
||||||
#include "mt/Hero.h"
|
#include "mt/Hero.h"
|
||||||
|
|
||||||
static const float GUN_HEIGHT = 10.0f;
|
static const float GUN_HEIGHT = 20.0f;
|
||||||
|
|
||||||
bool Collision::CheckBullet(IBullet* bullet, Creature* c)
|
bool Collision::CheckBullet(IBullet* bullet, Creature* c)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user