/// <summary> /// Changes the game state with the given action. /// </summary> /// <param name="actionPacket">Action packet</param> public static void AcceptAction(ActionPacket actionPacket) { //if(!Game.Host) return; switch (actionPacket.Action) { case Action.StartTurn: Game.StartTurn(); break; case Action.Roll: DiceController.Roll(); break; case Action.EndRolling: DiceController.EndRolling(); break; case Action.BuyCard: switch ((CardsForSale)actionPacket.Value) { case CardsForSale.One: CardController.BuyCardOne(); break; case CardsForSale.Two: CardController.BuyCardTwo(); break; case CardsForSale.Three: CardController.BuyCardThree(); break; default: return; } break; case Action.RemoveCard: Game.RemoveCard((Card)actionPacket.Value); break; case Action.EndTurn: Game.EndTurn(); break; case Action.Yield: MonsterController.GetById(actionPacket.PlayerId).Yield(); break; case Action.SaveDie: DiceController.SaveDie((int)actionPacket.Value); break; case Action.UnSaveDie: DiceController.UnSaveDie((int)actionPacket.Value); break; case Action.NoYield: MonsterController.GetById(actionPacket.PlayerId).CanYield = false; break; default: return; } }