private void Move(Cup cup) { for (int i = 0; i < cup.LastValue; i++) { Step(); } CurrentSquare.LandOn(this); }
public void TakeTurn(IDice dice) { var roll = dice.Roll(); for (int index = 0; index < roll.NumberRolled; index++) { CurrentSquare = CurrentSquare.Next; CurrentSquare.Pass(this); } CurrentSquare.Land(this); }
public virtual bool MoveToLeft() { if (!CanMove("Left")) { return(false); } else { CurrentSquare.LeftSquare.AddPlayElement(this); CurrentSquare.RemovePlayElement(); CurrentSquare = CurrentSquare.LeftSquare; return(true); } }
public virtual bool MoveToBenath() { if (!CanMove("Down")) { return(false); } else { CurrentSquare.DownSquare.AddPlayElement(this); CurrentSquare.RemovePlayElement(); CurrentSquare = CurrentSquare.DownSquare; return(true); } }
public IObservable <Tuple <SquareModel, int> > OnMoveAsObservable() { return(CurrentSquare.Zip(MoveCount, (square, count) => new Tuple <SquareModel, int>(square, count))); }
private void Step() { CurrentSquare = CurrentSquare.NextSquare; CurrentSquare.PassOver(this); }
public virtual void Destroy() { CurrentSquare.RemovePlayElement(); //CurrentSquare = null; // coment out }
public void Destroy() { CurrentSquare.RemovePlayElement(); }