/// <summary> /// <see cref="TrainName"/> クラスの新しいインスタンスを初期化します。 /// </summary> /// <param name="trainType">列車種別。</param> /// <param name="name">列車名。</param> /// <param name="number">列車番号。</param> /// <param name="subTrainType">サブ列車種別。</param> /// <param name="subTrainTypeRange">サブ列車種別が適用される区間。</param> public TrainName(TrainTypes trainType, string name = null, int?number = null, TrainTypes?subTrainType = null, LineRange subTrainTypeRange = null) { TrainType = trainType; Name = name; Number = number; SubTrainType = subTrainType; SubTrainTypeRange = subTrainTypeRange; }
public Train(TrainTypes name, int speed, int capacity, List <Station> route, int totalUsage) { Name = name; Speed = Convert.ToInt32(speed * 0.8); Capacity = capacity; Route = route; CountOnTrain = 0; TotalUsage = totalUsage; Time = new TimeSpan(); }
public SpeedLimitComputer(Speed maxSpeed, int trainLength, double decelCoeff, TrainTypes trainType) { this.maxSpeed = maxSpeed; this.trainLength = trainLength; this.decelCoeff = decelCoeff; this.trainType = trainType; decelerationControlEnabled = false; currentSpeedLimit = maxSpeed; }
private static void OnClicked(Players.Player sender, PlayerClickedData data) { if (data == null || data.TypeSelected == default(ushort) || data.ConsumedType != PlayerClickedData.EConsumedType.Not || data.IsHoldingButton || (data.ClickType != PlayerClickedData.EClickType.Right || data.OnBuildCooldown) || (data.HitType != PlayerClickedData.EHitType.Block || !TrainTypes.TryGetValue(ItemId.GetItemId(data.TypeSelected), out var cSType) || !sender.Inventory.TryRemove(data.TypeSelected, 1, -1, true))) { return; } data.ConsumedType = PlayerClickedData.EConsumedType.UsedAsTool; CreateTrain(cSType, data.GetExactHitPositionWorld()); }
Train MakeTrain(string name, TrainTypes type, Vector3 position) { var a = Instantiate(trainPrefab, position, Quaternion.identity); var train = a.GetComponent <Train>(); train.name = name; GameObject lokomotywa = null; if (type == TrainTypes.Thomans) { lokomotywa = Instantiate(thomasPrefab, train.gameObject.transform); } else if (type == TrainTypes.Pendolino) { lokomotywa = Instantiate(pendolinoPrefab, train.gameObject.transform); } return(train); }
public void setParameters(Speed maxSpeed, int trainLength, double decelCoeff, TrainTypes trainType) { speedLimiter = new SpeedLimitComputer(maxSpeed, trainLength, decelCoeff, trainType); }