This commit is contained in:
aozhiwei 2022-08-01 18:53:51 +08:00
parent c9e6033ccc
commit eaa80bf3fb

View File

@ -812,8 +812,13 @@ void RoomObstacle::CalcTempPassObjects()
RoomObstacle* obstacle = (RoomObstacle*)param.sender.GetUserData();
Room* room = obstacle->room;
std::list<int> del_objs;
for (auto& pair : *temp_pass_objects_) {
for (auto& pair : *obstacle->temp_pass_objects_) {
if (!pair.second.Get() || !obstacle->TestCollision(room, pair.second.Get())) {
del_objs.push_back(pair.first);
}
}
for (int obj_uniid : del_objs) {
obstacle->temp_pass_objects_->erase(obj_uniid);
}
if (obstacle->temp_pass_objects_->empty()) {
room->xtimer.DeleteTimer(room->xtimer.GetRunningTimer());