/// <summary> /// </summary> /// <param name="character"> /// </param> /// <param name="target"> /// </param> /// <param name="args"> /// </param> public override void ExecuteCommand(ICharacter character, Identity target, string[] args) { Dictionary <Identity, string> list = ((Playfield)character.Playfield).ListAvailablePlayfields(); var messList = new List <MessageBody>(); foreach (KeyValuePair <Identity, string> pf in list) { messList.Add(ChatText.Create(character, pf.Key.Instance.ToString().PadLeft(8) + ": " + pf.Value)); } character.Playfield.Publish(Bulk.CreateIM(character.Client, messList.ToArray())); }
/// <summary> /// </summary> /// <param name="character"> /// </param> /// <param name="target"> /// </param> /// <param name="args"> /// </param> public override void ExecuteCommand(ICharacter character, Identity target, string[] args) { List <StatelData> sd = PlayfieldLoader.PFData[character.Playfield.Identity.Instance].Statels; var messList = new List <MessageBody>(); foreach (StatelData s in sd) { messList.Add( ChatText.Create( character, ((int)s.StatelIdentity.Type).ToString("X8") + ":" + s.StatelIdentity.Instance.ToString("X8"))); } character.Playfield.Publish(Bulk.CreateIM(character.Client, messList.ToArray())); }
/// <summary> /// </summary> /// <param name="character"> /// </param> /// <param name="target"> /// </param> /// <param name="args"> /// </param> public override void ExecuteCommand(ICharacter character, Identity target, string[] args) { List <MessageBody> replies = new List <MessageBody>(); string reply = "Looking up for statel in playfield " + character.Playfield.Identity.Instance; replies.Add(ChatText.Create(character, reply)); StatelData o = null; if (!PlayfieldLoader.PFData.ContainsKey(character.Playfield.Identity.Instance)) { reply = "Could not find data for playfield " + character.Playfield.Identity.Instance; replies.Add(ChatText.Create(character, reply)); } else { PlayfieldData pfData = PlayfieldLoader.PFData[character.Playfield.Identity.Instance]; foreach (StatelData s in pfData.Statels) { if (o == null) { o = s; } else { if (Coordinate.Distance2D(character.Coordinates, s.Coord()) < Coordinate.Distance2D(character.Coordinates, o.Coord())) { o = s; } } } if (o == null) { replies.Add( ChatText.Create(character, "No statel on this playfield... Very odd, where exactly are you???")); } else { replies.Add( ChatText.Create( character, o.StatelIdentity.Type.ToString() + " " + ((int)o.StatelIdentity.Type).ToString("X8") + ":" + o.StatelIdentity.Instance.ToString("X8"))); replies.Add(ChatText.Create(character, "Item Template Id: " + o.TemplateId)); foreach (Events se in o.Events) { replies.Add( ChatText.Create( character, "Event: " + se.EventType.ToString() + " # of Functions: " + se.Functions.Count.ToString())); foreach (Functions sf in se.Functions) { string Fargs = string.Empty; foreach (MessagePackObject obj in sf.Arguments.Values) { if (Fargs.Length > 0) { Fargs = Fargs + ", "; } Fargs = Fargs + obj.ToString(); } replies.Add( ChatText.Create( character, " Fn: " + ((FunctionType)sf.FunctionType).ToString() + "(" + sf.FunctionType.ToString() + "), # of Args: " + sf.Arguments.Values.Count.ToString())); replies.Add(ChatText.Create(character, " Args: " + Fargs)); foreach (Requirements sfr in sf.Requirements) { string req; req = "Attr: " + sfr.Statnumber.ToString() + " Value: " + sfr.Value.ToString() + " Target: " + sfr.Target.ToString() + " Op: " + sfr.Operator.ToString(); replies.Add(ChatText.Create(character, req)); } } } } } character.Playfield.Publish(Bulk.CreateIM(character.Client, replies.ToArray())); }