public FastGliderTransport( Glider.GliderMovement mover, MeshedVehicleDescription description, InventoryItem refundItems) : base(mover, description, refundItems) { }
public static FastGlider.FastGliderTransport CreateGlider( Vector3 spawnPosition, Quaternion rotation, MeshedVehicleDescription vehicle, Players.Player playerInside) { Glider.GliderMovement mover = new Glider.GliderMovement(spawnPosition, rotation, settings, playerInside); FastGlider.FastGliderTransport vehicle1 = new FastGlider.FastGliderTransport(mover, vehicle, new InventoryItem(ItemTypes.GetType(settings.ItemTypeName).ItemIndex, 1)); mover.SetParent(vehicle1); CollisionChecker.RegisterSource((CollisionChecker.ICollisionSource)mover); TransportManager.RegisterTransport((TransportManager.ITransportVehicle)vehicle1); return(vehicle1); }
public override JObject Save() { if (this.Mover == null) { return((JObject)null); } Vector3 position = this.Mover.Position; Vector3 eulerAngles = this.Mover.Rotation.eulerAngles; JObject jobject = new JObject() { { "type", (JToken)"fastglider" }, { "position", (JToken) new JObject() { { "x", (JToken)position.x }, { "y", (JToken)position.y }, { "z", (JToken)position.z } } }, { "rotation", (JToken) new JObject() { { "x", (JToken)eulerAngles.x }, { "y", (JToken)eulerAngles.y }, { "z", (JToken)eulerAngles.z } } } }; Glider.GliderMovement mover = this.Mover as Glider.GliderMovement; MeshedVehicleDescription description; if (mover.LastInputPlayer != null && MeshedObjectManager.TryGetVehicle(mover.LastInputPlayer, out description) && this.VehicleDescription.Object.ObjectID.ID == description.Object.ObjectID.ID) { jobject["player"] = (JToken)mover.LastInputPlayer.ID.ToString(); } return(jobject); }