public PushyGame(string userId) { Field = new PushyField(); Field.Squares = new List <List <PushySquare> >(); for (int i = 0; i < 10; i++) { Field.Squares.Add(new List <PushySquare>()); for (int j = 0; j < 10; j++) { if (j == 0 || i == 0 || j == 9 || i == 9) { Field.Squares[i].Add(new PushySquareWall()); } else { Field.Squares[i].Add(new PushySquareAir()); } } } var fig = new PushyFigure(); fig.UserId = userId; Field.Squares[5][5].ChildSquares.Add(fig); Field.Squares[1][1].ChildSquares.Add(new PushySquareHouse()); Field.Squares[5][7].ChildSquares.Add(new PushySquareBox()); Field.Squares[6][7].ChildSquares.Add(new PushySquareBox()); }
public override bool CollidesWithFigure(PushyField field, PushyFigure figure) { return(false); }
internal bool HasFigure(PushyFigure fig) { return(HasFigure(fig.UserId)); }
internal List <PushySquare> GetCollidingChilds(PushyField field, PushyFigure fig) { return(this.ChildSquares.Where(x => x.CollidesWithFigure(field, fig)).ToList()); }
public abstract bool CollidesWithFigure(PushyField field, PushyFigure figure);