Example #1
0
        /// <summary>
        /// プレイヤーイベントの処理を行う関数(Update関数中の処理を移動したもの)
        /// </summary>
        private void ProcessPlayerEvent()
        {
            if (Data.PlayerEvents.Count != 0 && !SugorokuFrame.IsProcessingEvent)
            {
                if (Data.Player.PlayerID == Data.PlayerEvents.Peek().PlayerId)
                {
                    state = State.WaitThrowDice;
                }
                else
                {
                    SugorokuFrame.ProcessEvent(Data.PlayerEvents.Dequeue());
                }
            }

            // ダイスを振る処理
            if (state == State.WaitThrowDice && !SugorokuFrame.IsProcessingEvent && DiceTexture.AnimationFrame == 0)
            {
                SugorokuFrame.ProcessEvent(Data.PlayerEvents.Dequeue());
                state = State.WaitOtherPlayer;
            }
            else if (state == State.WaitThrowDice && DiceButton.LeftClicked() && !SugorokuFrame.IsProcessingEvent)
            {
                DiceTexture.AnimationStart(Data.PlayerEvents.Peek().Dice);
            }

            DiceTexture.Update();
        }