protected AbstractTrackBlock(int x, int y, SequenceTrainEngine engine, int rotationOffset) : base(engine) { this.x = x; this.y = y; this.rotationOffset = unchecked ((uint)rotationOffset); edges = new LazyInit <TrackEnds[]>(getTrackEdgeTypes); }
protected AbstractLogicEngineItem(SequenceTrainEngine engine) { if (engine == null) { throw new ArgumentNullException("engine"); } Parent = engine; }
internal Train(SequenceTrainEngine parent) : base(parent) { PublicCarList = carList.AsReadOnly(); locomotive = new Locomotive(this); caboose = new Caboose(this); //the locomotive is always the first thing in the list carList.Add(locomotive); }
public CurvedTrackBlock(int x, int y, int rotationOffset, SequenceTrainEngine parent) : base(x, y, parent, rotationOffset) { }
public DoubleCurvedTrackBlock(int x, int y, int rotationOffset, SequenceTrainEngine parent) : base(x, y, parent, rotationOffset) { a = new DoubleCurvedChild(this, rotationOffset); b = new DoubleCurvedChild(this, rotationOffset + 2); }