/// <summary> /// Change an MakeObject into a GameEvent /// "self" = the local event /// "event_id:"id"" = the event id "id" /// "event_name:"Name"" = the event Name "Name" /// </summary> public GameEvent ToEvent() { try { switch (expr) { case "self": return(InGame.Map.Events[MakeCommand.EventId]); default: string[] temp = expr.Split(MakeCommand.ParamSeparator); if (temp[0] == "event_id") { return(InGame.Map.Events[new MakeObject(temp[1].Substring(0, temp[1].Length)).ToInteger()]); } if (temp[0] == "event_name") { string name = new MakeObject(temp[1].Substring(0, temp[1].Length)).ToString(); foreach (GameEvent character in InGame.Map.Events) { if (character != null && character.CharacterName == name) { return(character); } } throw new ArgumentException("Character name not found (Map ID:" + MakeCommand.MapId + ", event id:" + MakeCommand.EventId + ") : " + temp[1]); } return(null); } } catch { throw new ArgumentException("Syntax error (Map ID:" + MakeCommand.MapId + ", event id:" + MakeCommand.EventId + ") : " + expr); } }
/// <summary> /// Change an MakeObject into a GameEvent /// "self" = the local event /// "event_id:"id"" = the event id "id" /// "event_name:"Name"" = the event Name "Name" /// </summary> public GameEvent ToEvent() { try { switch (expr) { case "self": return InGame.Map.Events[MakeCommand.EventId]; default: string[] temp = expr.Split(MakeCommand.ParamSeparator); if (temp[0] == "event_id") { return InGame.Map.Events[new MakeObject(temp[1].Substring(0, temp[1].Length)).ToInteger()]; } if (temp[0] == "event_name") { string name = new MakeObject(temp[1].Substring(0, temp[1].Length)).ToString(); foreach (GameEvent character in InGame.Map.Events) { if (character!=null && character.CharacterName == name) return character; } throw new ArgumentException("Character name not found (Map ID:" + MakeCommand.MapId + ", event id:" + MakeCommand.EventId + ") : " + temp[1]); } return null; } } catch { throw new ArgumentException("Syntax error (Map ID:" + MakeCommand.MapId + ", event id:" + MakeCommand.EventId + ") : " + expr); } }