#region Arthea License /*********************************************************************** * Arthea MUD by R. Jennings (2007) http://arthea.googlecode.com/ * * By using this code you comply with the Artistic and GPLv2 Licenses. * ***********************************************************************/ #endregion using Arthea.Connections.Players; using Arthea.Continents.Areas.Items; using Arthea.Continents.Areas.Rooms; using Arthea.Environment; namespace Arthea.Commands.Admin { /// <summary> /// Implementation of list command. /// </summary> public class ListCommand : Command { #region [rgn] Constructors (1) /// <summary> /// Initializes a new instance of the <see cref="ListCommand"/> class. /// </summary> public ListCommand() : base("list", Levels.Admin) { } #endregion [rgn] #region [rgn] Methods (1) // [rgn] Public Methods (1) /// <summary> /// Processes the command for a player. /// </summary> /// <param name="player">The player.</param> /// <param name="argument">The argument.</param> public override void Process(Player player, String argument) { String type = argument.FirstArg(); if (!type) { Syntax(player, "rooms", "items"); return; } if (type.IsPrefixOf("rooms")) { foreach (Room room in player.Room.Area.Rooms.Values) { player.WriteLine("[{0}] {1}", room.Id, room.Name); } return; } if (type.IsPrefixOf("items")) { foreach (ItemIndex item in player.Room.Area.Items.Values) { player.WriteLine("[{0}] {1}", item.Id, item.ShortDescr); } return; } Process(player, string.Empty); } #endregion [rgn] } }