1
This commit is contained in:
parent
366d628e47
commit
942d16e4b6
@ -17,6 +17,7 @@
|
||||
#include "android.h"
|
||||
#include "gamelog.h"
|
||||
#include "typeconvert.h"
|
||||
#include "obstacle.h"
|
||||
|
||||
#include "framework/cpp/utils.h"
|
||||
#include "framework/cpp/httpclientpool.h"
|
||||
@ -355,6 +356,32 @@ bool Human::IsCollisionInMapService()
|
||||
for (const ColliderComponent* collider : colliders) {
|
||||
switch (collider->owner->entity_type) {
|
||||
case ET_Obstacle:
|
||||
{
|
||||
if (!collider->owner->dead && TestCollision((ColliderComponent*)collider)) {
|
||||
if (last_collision_door != collider->owner) {
|
||||
Obstacle* obstacle = (Obstacle*)collider->owner;
|
||||
if (!obstacle->dead && obstacle->meta->i->attack_type() == 1 &&
|
||||
obstacle->meta->i->drop() != 0) {
|
||||
obstacle->health = 0;
|
||||
obstacle->dead = obstacle->health <= 0.01f;
|
||||
obstacle->dead_frameno = room->frame_no;
|
||||
if (obstacle->dead) {
|
||||
#if 0
|
||||
if (obstacle->meta->i->damage_dia() > 0.01f &&
|
||||
obstacle->meta->i->damage() > 0.01f) {
|
||||
obstacle->Explosion(this);
|
||||
}
|
||||
#endif
|
||||
room->ScatterDrop(obstacle->pos, obstacle->meta->i->drop());
|
||||
}
|
||||
obstacle->BroadcastFullState();
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case ET_Building:
|
||||
{
|
||||
if (!collider->owner->dead && TestCollision((ColliderComponent*)collider)) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user