Example #1
0
 /// <inheritdoc/>
 public override void RemoveWaypoint(ScenarioWaypoint waypoint)
 {
     if (waypoint is ScenarioAgentWaypoint agentWaypoint)
     {
         RemoveTrigger(agentWaypoint.LinkedTrigger);
     }
     base.RemoveWaypoint(waypoint);
 }
Example #2
0
 /// <inheritdoc/>
 public override void AddWaypoint(ScenarioWaypoint waypoint, ScenarioWaypoint previousWaypoint)
 {
     base.AddWaypoint(waypoint, previousWaypoint);
     if (waypoint is ScenarioAgentWaypoint agentWaypoint)
     {
         AddTrigger(agentWaypoint.LinkedTrigger);
         agentWaypoint.LinkedTrigger.TargetAgentType = ParentAgent.Type;
     }
 }
Example #3
0
 /// <inheritdoc/>
 protected override void SerializeWaypoint(ScenarioWaypoint waypoint, int waypointIndex, JSONObject waypointNode)
 {
     base.SerializeWaypoint(waypoint, waypointIndex, waypointNode);
     if (waypoint is ScenarioAgentWaypoint agentWaypoint)
     {
         waypointNode.Add("waitTime", new JSONNumber(agentWaypoint.WaitTime));
         AddTriggerNode(waypointNode, agentWaypoint.LinkedTrigger);
     }
 }
Example #4
0
 /// <inheritdoc/>
 protected override void DeserializeWaypoint(ScenarioWaypoint waypoint, JSONNode waypointNode)
 {
     base.DeserializeWaypoint(waypoint, waypointNode);
     if (waypoint is ScenarioAgentWaypoint agentWaypoint)
     {
         var waitTime = waypointNode["waitTime"];
         if (waitTime == null)
         {
             waitTime = waypointNode["wait_time"];
         }
         agentWaypoint.WaitTime = waitTime;
         DeserializeTrigger(agentWaypoint.LinkedTrigger, waypointNode["trigger"]);
     }
 }