diff options
Diffstat (limited to 'src/Server.cpp')
-rw-r--r-- | src/Server.cpp | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/src/Server.cpp b/src/Server.cpp index 6ddb14ae5..89dccb1f1 100644 --- a/src/Server.cpp +++ b/src/Server.cpp @@ -498,26 +498,20 @@ void cServer::ExecuteConsoleCommand(const AString & a_Cmd, cCommandOutputCallbac } if (split[0] == "destroyentities") { - class WorldCallback : public cWorldListCallback - { - virtual bool Item(cWorld * a_World) override + cRoot::Get()->ForEachWorld([](cWorld & a_World) { - class EntityCallback : public cEntityCallback - { - virtual bool Item(cEntity * a_Entity) override + a_World.ForEachEntity([](cEntity & a_Entity) { - if (!a_Entity->IsPlayer()) + if (!a_Entity.IsPlayer()) { - a_Entity->Destroy(); + a_Entity.Destroy(); } return false; } - } EC; - a_World->ForEachEntity(EC); + ); return false; } - } WC; - cRoot::Get()->ForEachWorld(WC); + ); a_Output.Out("Destroyed all entities"); a_Output.Finished(); return; |