This commit is contained in:
aozhiwei 2020-07-30 09:59:21 +08:00
parent a9fc65206d
commit c26b2c05f3

View File

@ -526,10 +526,15 @@ bool Human::IsCollisionInMapService()
if (!collider->owner->dead && TestCollision((ColliderComponent*)collider)) {
#endif
if (last_collision_door_ != collider->owner) {
bool is_terminator_airdrop_box = false;
if (obstacle->IsEntitySubType(EST_RoomObstacle)) {
is_terminator_airdrop_box = ((RoomObstacle*)obstacle)->is_terminator_airdrop_box;
}
if (!obstacle->IsDead(room) &&
obstacle->Attackable() &&
obstacle->meta->i->drop() != 0 &&
room->GetGasData().gas_mode != GasInactive
room->GetGasData().gas_mode != GasInactive &&
(!is_terminator_airdrop_box || GetRace() == kHumanRace)
) {
obstacle->Die(room);
if (obstacle->IsDead(room)) {
@ -542,13 +547,10 @@ bool Human::IsCollisionInMapService()
DropItems(obstacle);
}
obstacle->BroadcastFullState(room);
if (obstacle->IsEntitySubType(EST_RoomObstacle)) {
bool is_terminator_airdrop_box = ((RoomObstacle*)obstacle)->is_terminator_airdrop_box;
if (is_terminator_airdrop_box && GetRace() == kHumanRace) {
MetaData::Buff* buff_meta = MetaMgr::Instance()->GetBuff(TERMINATOR_BUFF_ID);
if (buff_meta) {
AddBuff(this, buff_meta, 1);
}
if (is_terminator_airdrop_box && GetRace() == kHumanRace) {
MetaData::Buff* buff_meta = MetaMgr::Instance()->GetBuff(TERMINATOR_BUFF_ID);
if (buff_meta) {
AddBuff(this, buff_meta, 1);
}
}
} else {