using System; using System.IO; using Server; using System.Text; using System.Collections; using System.Net; using Server.Mobiles; using Server.Network; using Server.Commands; namespace Server.Commands { public class WorldItemWipeCommand { public static void Initialize() { Register( "Clearall", AccessLevel.Administrator, new CommandEventHandler( Clearall_OnCommand ) ); } public static void Register( string command, AccessLevel access, CommandEventHandler handler ) { CommandSystem.Register( command, access, handler ); } [Usage( "ClearAll" )] [Description( "Clear all facets." )] public static void Clearall_OnCommand( CommandEventArgs e ) { Mobile from = e.Mobile; DateTime time = DateTime.Now; int countItems = 0; int countMobs = 0; ArrayList itemsdel = new ArrayList(); foreach ( Item itemdel in World.Items.Values ) { if ( itemdel.Parent == null ) { itemsdel.Add( itemdel ); countItems +=1; } } foreach ( Mobile mobdel in World.Mobiles.Values ) { if ( !mobdel.Player ) { itemsdel.Add( mobdel ); countMobs +=1; } } foreach ( object itemdel2 in itemsdel ) { if(itemdel2 is Item) ((Item)itemdel2).Delete(); if(itemdel2 is Mobile) ((Mobile)itemdel2).Delete(); } double totalTime = ( ( DateTime.Now - time ).TotalSeconds ); from.SendMessage( "{0} items removed. {1} mobs removed. Took {2} seconds!", countItems, countMobs, totalTime ); } } }