/// <summary> /// Initializes a new instance of the OBJ|ACTOR tag. /// </summary> /// <param name="typeName">The type of the actor tag.</param> /// <param name="id">The ID of the object that this tag represents.</param> /// <param name="ownerId">The ID of the owner of the current actor.</param> /// <param name="name">The name of the actor.</param> /// <param name="description">The description of the actor.</param> protected RdlActor(RdlObjectTypeName typeName, int id, int ownerId, string name, string description) : base(typeName, id) { _ownerIdIndex = this.GetNextIndex(); _nameIndex = this.GetNextIndex(); _descIndex = this.GetNextIndex(); this.Args.Insert(_ownerIdIndex, ownerId); this.Args.Insert(_nameIndex, name); this.Args.Insert(_descIndex, description); }
public static RdlTag CreateTag(string tagName, string typeName) { RdlTagName tagNameType = RdlTagName.EMPTY; if (TryParseTagName(tagName, out tagNameType)) { switch (tagNameType) { case RdlTagName.EMPTY: return(RdlTag.Empty); case RdlTagName.OBJ: RdlObjectTypeName objTypeName = (RdlObjectTypeName)Enum.Parse(typeof(RdlObjectTypeName), typeName, true); switch (objTypeName) { case RdlObjectTypeName.PROP: return(new RdlProperty()); case RdlObjectTypeName.ACTOR: return(new RdlActor()); case RdlObjectTypeName.PLAYER: return(new RdlPlayer()); case RdlObjectTypeName.PLACE: return(new RdlPlace()); case RdlObjectTypeName.RACE: return(new RdlRace()); case RdlObjectTypeName.TERRAIN: return(new RdlTerrain()); case RdlObjectTypeName.SKILL: return(new RdlSkill()); } break; case RdlTagName.MSG: RdlMessageTypeName msgType = (RdlMessageTypeName)Enum.Parse(typeof(RdlMessageTypeName), typeName, true); switch (msgType) { case RdlMessageTypeName.ERROR: return(new RdlErrorMessage()); case RdlMessageTypeName.SYSTEM: return(new RdlSystemMessage()); case RdlMessageTypeName.NEWS: return(new RdlNewsMessage()); case RdlMessageTypeName.CHAT: return(new RdlChatMessage()); case RdlMessageTypeName.TELL: return(new RdlTellMessage()); } break; case RdlTagName.CMD: return(new RdlCommand(typeName)); case RdlTagName.USER: return(new RdlUser()); case RdlTagName.RESP: return(new RdlCommandResponse(typeName, false, String.Empty)); case RdlTagName.AUTH: return(new RdlAuthKey(tagName, typeName)); } } return(new RdlTag(tagName, typeName)); }
/// <summary> /// Initializes a new instance of the OBJ tag. /// </summary> /// <param name="typeName">The object tag type.</param> /// <param name="id">The ID of the object represented by this tag.</param> protected RdlObject(RdlObjectTypeName typeName, int id) : this(typeName.ToString(), id) { }
/// <summary> /// Initializes a new instance of the OBJ tag. /// </summary> /// <param name="typeName">The object tag type.</param> protected RdlObject(RdlObjectTypeName typeName) : this(typeName, 0) { }
/// <summary> /// Initializes a new instance of the OBJ|ACTOR tag. /// </summary> /// <param name="typeName">The type of the actor tag.</param> /// <param name="id">The ID of the object that this tag represents.</param> /// <param name="ownerId">The ID of the owner of the current actor.</param> /// <param name="name">The name of the actor.</param> protected RdlActor(RdlObjectTypeName typeName, int id, int ownerId, string name) : this(typeName, id, ownerId, name, String.Empty) { }