public override void Init(object initData) { base.Init(initData); _szenario = initData as Szenario; if (_szenario != null) { Device.BeginInvokeOnMainThread(async() => { await CoreMethods.DisplayAlert("Error: 321", "The szenario doesn't exist", "OK"); }); } }
public override void Init(object initData) { base.Init(initData); Szenario = Client.Szenario; accept = false; if (Szenario == null) { Device.BeginInvokeOnMainThread(async() => { await CoreMethods.DisplayAlert("Error: new", "The szenario doesn't exist", "OK"); }); return; } //Generate robot models for user interface Robots = new List <RobotModel>(); foreach (var t in Szenario.Robots) { Robots.Add(new RobotModel(t)); } }
private bool NewSpectatorCmd() { //Change the user interface if (SzenarioController.Changed) { foreach (var t in SzenarioController.Szenarios) { if (_szenario.Id != t.Id) { continue; } _szenario = t; Robots = new List <RobotModel>(); foreach (var t1 in _szenario.Robots) { Robots.Add(new RobotModel(t1)); } break; } SzenarioController.Changed = false; } if (!SzenarioController.Refresh) { return(false); } //Send synchronization command to get current szenario var szenarios = new List <Szenario> { _szenario }; var cmdSync = new Synchronization(CommandType.Synchronization.ToString(), SynchronizationCommandType.CurrentSzenario.ToString(), Client.Identification, szenarios, new List <Robot>()); Client.SendCmd(cmdSync.ToJsonString()); return(true); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.StartArray) { List <Szenario> szenarios = new List <Szenario>(); var jsonArray = JArray.Load(reader); foreach (var t in jsonArray) { if (t["type"] == null) { throw new System.Exception("Szenario is not implemented"); } switch (t["type"].ToString()) { case "Control": szenarios.Add(t.ToObject <Control>()); break; case "Synchron": szenarios.Add(t.ToObject <Synchron>()); break; case "Follow": szenarios.Add(t.ToObject <Follow>()); break; case "Flee": szenarios.Add(t.ToObject <Flee>()); break; case "Catch": szenarios.Add(t.ToObject <Catch>()); break; } } return(szenarios); } else if (reader.TokenType == JsonToken.StartObject) { Szenario szenario = null; var jsonObject = JObject.Load(reader); if (jsonObject["type"] == null) { throw new System.Exception("Szenario is not implemented"); } switch (jsonObject["type"].ToString()) { case "Control": szenario = jsonObject.ToObject <Control>(); break; case "Synchron": szenario = jsonObject.ToObject <Synchron>(); break; case "Follow": szenario = jsonObject.ToObject <Follow>(); break; case "Flee": szenario = jsonObject.ToObject <Flee>(); break; case "Catch": szenario = jsonObject.ToObject <Catch>(); break; } return(szenario); } throw new Exception("Not defined JsonToken"); }
public SzenarioCommand(string pId, string pType, ClientIdentification pIdentification, Szenario pSzenario) : base(pId, pType, pIdentification) { this.szenario = pSzenario; }