diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index 1f8b45f..33b252d 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -1796,38 +1796,35 @@ void Human::ClearFrameData() new_objects.clear(); } if (!del_objects.empty()) { - if (!a8::HasBitFlag(status, HS_Disable)) { - for (auto& itr : del_objects) { - Entity* entity = room->GetEntityByUniId(itr); - if (entity) { - RemovePartObjects(entity); - if (entity->IsEntityType(ET_Player)) { - ((Human*)entity)->RemovePartObjects(this); - } -#ifdef DEBUG - room->CheckPartObjects(); -#endif - } - } - } - del_objects.clear(); - } - if (!out_objects.empty()) { - if (!a8::HasBitFlag(status, HS_Disable)) { - for (auto& itr : out_objects) { - Entity* entity = room->GetEntityByUniId(itr); - if (entity) { - RemovePartObjects(entity); - if (entity->IsEntityType(ET_Player)) { - Human* hum = (Human*)entity; - hum->RemovePartObjects(this); - } + for (auto& itr : del_objects) { + Entity* entity = room->GetEntityByUniId(itr); + if (entity) { + RemovePartObjects(entity); + if (entity->IsEntityType(ET_Player)) { + Human* hum = (Human*)entity; + hum->RemovePartObjects(this); } #ifdef DEBUG room->CheckPartObjects(); #endif } } + del_objects.clear(); + } + if (!out_objects.empty()) { + for (auto& itr : out_objects) { + Entity* entity = room->GetEntityByUniId(itr); + if (entity) { + RemovePartObjects(entity); + if (entity->IsEntityType(ET_Player)) { + Human* hum = (Human*)entity; + hum->RemovePartObjects(this); + } + } +#ifdef DEBUG + room->CheckPartObjects(); +#endif + } out_objects.clear(); } if (!shots_.empty()) {