public void Execute(JSONNode args) { var api = ApiManager.Instance; var position = args["transform"]["position"].ReadVector3(); var rotation = args["transform"]["rotation"].ReadVector3(); var offset = args["offset"].ReadVector3(); NavOrigin.SetNavOrigin(position, Quaternion.Euler(rotation), offset); api.SendResult(this); }
public void Execute(JSONNode args) { var api = ApiManager.Instance; var position = args["position"].ReadVector3(); var orientation = args["orientation"].ReadQuaternion(); var nav = NavOrigin.Find(); if (nav == null) { api.SendError(this, "NavOrigin not found"); return; } var point = nav.FromNavPose(position, orientation); var res = new JSONObject(); res.Add("position", point.position); res.Add("rotation", point.rotation.eulerAngles); api.SendResult(this, res); }
/// <summary> /// Initializes this <see cref="ScenarioNavOrigin"/> /// </summary> /// <param name="navOrigin"><see cref="NavOrigin"/> that is represented by this scenario element</param> /// <param name="boundToMap">True if nav origin is imported from the map, false if it was spawned</param> public void Setup(NavOrigin navOrigin, bool boundToMap) { NavOrigin = navOrigin; this.boundToMap = boundToMap; ScenarioManager.Instance.GetExtension <ScenarioNavExtension>().RegisterNavOrigin(this); }