Exemplo n.º 1
0
        /// <summary>
        /// Default constructor
        /// </summary>
        /// <param name="originalTrItem">The original track item that we are representing for drawing</param>
        public DrawableSignalItem(TrackItem originalTrItem)
            : base(originalTrItem)
        {
            this.Description = "signal";
            this.isNormal    = true; // default value
            SignalItem originalSignalItem = originalTrItem as SignalItem;

            this.direction  = originalSignalItem.Direction == 0 ? Traveller.TravellerDirection.Forward : Traveller.TravellerDirection.Backward;
            this.signalType = originalSignalItem.SignalType;
        }
Exemplo n.º 2
0
 /// <summary>
 /// TargetExactlyReached: if train on board, it can exit the turntable
 /// </summary>
 ///
 public void TargetExactlyReached()
 {
     Traveller.TravellerDirection direction = Traveller.TravellerDirection.Forward;
     direction  = SaveConnected ^ !MyTrackNodesOrientation[ConnectedTrackEnd]? direction : (direction == Traveller.TravellerDirection.Forward ? Traveller.TravellerDirection.Backward : Traveller.TravellerDirection.Forward);
     GoToTarget = false;
     if (TrainsOnMovingTable.Count == 1)
     {
         var train = TrainsOnMovingTable[0].Train;
         if (train.ControlMode == Train.TRAIN_CONTROL.TURNTABLE)
         {
             train.ReenterTrackSections(MyTrackNodesIndex[ConnectedTrackEnd], MyTrVectorSectionsIndex[ConnectedTrackEnd], FinalFrontTravellerXNALocation, FinalRearTravellerXNALocation, direction);
         }
     }
 }