public void HandleTouch(Rectangle touchRectangle, List<Player> players, Board board) { foreach(Button button in buttons) { if(button.ButtonRectangle.Intersects(touchRectangle)) { if(players.Where(player => player.DeadEh).ToList().Count == 0) { if (button.ButtonType == ButtonType.Heal) { players.Where(player => player.Id == button.Id).Single().Heal(); return; } if (button.ButtonType == ButtonType.Hurt) { players.Where(player => player.Id == button.Id).Single().Hurt(); return; } if (button.ButtonType == ButtonType.AddPoison) { players.Where(player => player.Id == button.Id).Single().AddPoison(); return; } if (button.ButtonType == ButtonType.RemovePoison) { players.Where(player => player.Id == button.Id).Single().RemovePoison(); return; } } if (button.ButtonType == ButtonType.Reset) { players.Where(player => player.Id == button.Id).Single().Reset(); return; } if (button.ButtonType == ButtonType.Dice) { players.Where(player => player.Id == button.Id).Single().Dice(); return; } //if (button.ButtonType == ButtonType.Menu) { players.All(player => player.ShowPercentage = true); return; } if (button.ButtonType == ButtonType.Menu) { board.SlideOff = true; } } } }
protected override void Initialize() { board = new Board(); background = new Background(); playerOne = new Player(Id.One); playerTwo = new Player(Id.Two); players = new List<Player>(); players.Add(playerOne); players.Add(playerTwo); controller = new Controller(); controller.Initialize(); board.Background = background; board.Controller = controller; board.PlayerOne = playerOne; board.PlayerTwo = playerTwo; board.Players = players; base.Initialize(); }
public void Update(List<Player> players, Board board) { touchCollection = TouchPanel.GetState(); if (touchCollection.Count > 0) { touchState = touchCollection[0].State; if(touchState == TouchLocationState.Pressed) { touchPosition = touchCollection[0].Position; HandleTouch(new Rectangle((int)touchPosition.X - 16, (int)touchPosition.Y - 16, 32, 32), players, board); } } }