1
This commit is contained in:
parent
170650a4ac
commit
2a25b7b7c3
@ -298,6 +298,24 @@ bool Obstacle::DoInteraction(Human* sender)
|
|||||||
Die(sender->room);
|
Die(sender->room);
|
||||||
sender->DropItems(this);
|
sender->DropItems(this);
|
||||||
BroadcastFullState(sender->room);
|
BroadcastFullState(sender->room);
|
||||||
|
if (meta->delay_destroy() > 0) {
|
||||||
|
sender->room->xtimer.SetTimeoutEx
|
||||||
|
(meta->delay_destroy() / FRAME_RATE_MS,
|
||||||
|
[sender, obj_uniid = GetUniId()] (int event, const a8::Args* args)
|
||||||
|
{
|
||||||
|
if (a8::TIMER_EXEC_EVENT == event) {
|
||||||
|
Entity* entity = sender->room->GetEntityByUniId(obj_uniid);
|
||||||
|
if (entity && entity->IsEntityType(ET_Obstacle)) {
|
||||||
|
Obstacle* ob = (Obstacle*)entity;
|
||||||
|
if (ob->IsRoomObstacle()) {
|
||||||
|
sender->room->RemoveObjectLater((RoomObstacle*)entity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
&sender->xtimer_attacher);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user