Exemple #1
0
        //Get Tap Input
        async public void SetTargetNode(int _nodeID)
        {
            if (playerController.GetPlayerState() == PlayerStates.SHOOTING || playerController.GetPlayerState() == PlayerStates.WAIT_FOR_INPUT || playerController.GetPlayerState() == PlayerStates.THROWING || playerController.GetPlayerState() == PlayerStates.INTERMEDIATE_MOVE)
            {
                targetNode = _nodeID;
                return;
            }
            else if (gameService.GetCurrentState() != GameStatesType.PLAYERSTATE)
            {
                return;
            }
            else if (gameService.GetCurrentState() == GameStatesType.GAMEOVERSTATE)
            {
                return;
            }
            currentPathService.UnhighlightTeleportableNodes();
            targetNode = _nodeID;
            if (currentPathService.CanMoveToNode(GetPlayerNodeID(), _nodeID))
            {
                playerController.ChangePlayerState(PlayerStates.INTERMEDIATE_MOVE, PlayerStates.NONE);
                playerController.PerformMovement(_nodeID);
            }

            await new WaitForEndOfFrame();
            camera.SetNodeID(GetPlayerNodeID());
        }