コード例 #1
0
        private void AwaitCardClick(AsyncStateInfo state)
        {
            state.IsComplete = false;

            if (runtimeData.AllCardsSet && Input.GetMouseButtonDown(0))
            {
                RaycastHit hit;
                Ray        ray = camera.ScreenPointToRay(Input.mousePosition);

                if (Physics.Raycast(ray, out hit))
                {
                    var card = hit.transform.GetComponent <Card>();

                    if (card != null && !runtimeData.UpFacedCards.Contains(card))
                    {
                        card.FaceUp();
                        runtimeData.UpFacedCards.Add(card);
                        state.IsComplete = true;
                    }
                }
            }
        }
コード例 #2
0
 private void AwaitGameComplite(AsyncStateInfo state)
 {
     // todo: game complete condition;
     state.IsComplete = false;
 }
コード例 #3
0
 private void AwaitAllCardsSet(AsyncStateInfo state)
 {
     state.IsComplete = runtimeData.AllCardsSet;
 }
コード例 #4
0
 private void IsOutroCutSceneFinished(AsyncStateInfo state)
 {
     state.IsComplete = cameraAnimator.GetCurrentAnimatorStateInfo(0).IsName("Camera_End") &&
                        cameraAnimator.GetCurrentAnimatorStateInfo(0).normalizedTime >= 1.0f;
 }
コード例 #5
0
 private void AwaitFindAllPairs(AsyncStateInfo state)
 {
     state.IsComplete = runtimeData.CardsSet.Count != 0;
 }
コード例 #6
0
 public AsyncStateOperationArgs(Func <TArgs, AsyncOperation> awaitFunc, TArgs args)
 {
     _awaitFunc = awaitFunc;
     _args      = args;
     _info      = new AsyncStateInfo();
 }
コード例 #7
0
 private void AwaitFunc(AsyncStateInfo state)
 {
     state.IsComplete = memoryCardDeal.IsFinishGameRound;
 }
コード例 #8
0
 public AsyncStateOperation(Func <AsyncOperation> awaitFunc)
 {
     _awaitFunc = awaitFunc;
     _info      = new AsyncStateInfo();
 }
コード例 #9
0
 public AsyncStateAwait(Action <AsyncStateInfo> awaitFunc)
 {
     _awaitFunc = awaitFunc;
     _info      = new AsyncStateInfo();
 }
コード例 #10
0
 private void IsRoundEnd(AsyncStateInfo state)
 {
     state.IsComplete = _cameraAnimator.GetCurrentAnimatorStateInfo(0).IsName("RewardGameCamera") &&
                        _cameraAnimator.GetCurrentAnimatorStateInfo(0).speed <= _animationSpeed;
 }
コード例 #11
0
 private void IsRoundStart(AsyncStateInfo state)
 {
     state.IsComplete = _cameraAnimator.GetCurrentAnimatorStateInfo(0).IsName("StartGameCamera") &&
                        _cameraAnimator.GetCurrentAnimatorStateInfo(0).speed >= _animationSpeed;
 }
コード例 #12
0
 private void AwaitFunc(AsyncStateInfo state)
 {
     // todo: game complete condition;
     state.IsComplete = CardDealerController.IsFinishGameRound;
 }