コード例 #1
0
        private void Client_CardPicked(object sender, int e)
        {
            AddPopUpMessage($"Új kártya, hátravan még: {e}");
            OptionsOrSubEvents.Clear();
            Card card = _client.Card;

            CurrentCardDescription = card.GetDescription();
            CurrentCardToolTip     = card.ToolTip();
            RequiresAttributes     = card.RequiresAttributes;
            var optionsOrSubEvents = card.GetOptionsOrSubEvents();

            _isPlayersTurn   = false;
            card.DiceRolled += Card_DiceRolled;
            if (optionsOrSubEvents == null)
            {
                return;
            }
            foreach (OptionOrSubEvent item in optionsOrSubEvents)
            {
                OptionsOrSubEvents.Add(new OptionOrSubEventViewModel
                {
                    Description  = item.Description,
                    ClickCommand = new DelegateCommand(param =>
                    {
                        return(item.Condition(_ship) && !_client.Crashed && !_gameOver &&
                               (!card.RequiresOrder || (card.RequiresOrder && _isPlayersTurn)));
                    }
                                                       , param => item.Action(_client, _ship))
                });
            }
        }