示例#1
0
    //ゲームスタートまで待機
    IEnumerator WaitStart()
    {
        while (InputManager.InstanceSearch.IsTouch() == false)
        {
            yield return(null);
        }

        SetNavTime(AgentSpeed);
        State = CharctorState.Normal;
    }
示例#2
0
    public void GameOver()
    {
        //Dieのアニメーション再生

        SetNavTime(0);
        State = CharctorState.GameOver;

        StartCoroutine(WaitEndEffect(transform.position));
        Debug.Log("Die!");
    }
示例#3
0
 private void Start()
 {
     Nav          = GetComponent <Navigation>();
     NavAgent     = GetComponent <NavMeshAgent>();
     Anim         = GetComponent <Animator>();
     CharCollider = GetComponent <BoxCollider>();
     Nav.Initialize();
     NavAgent.SetDestination(Nav.GetDistination());
     SetNavTime(0);
     Menu.SetActive(false);
     CharMesh = GetComponentInChildren <SkinnedMeshRenderer>();
     State    = CharctorState.Start;
 }
示例#4
0
    private void Update()
    {
        if (State == CharctorState.Start)
        {
            //ゲームスタート時チュートリアルがあれば開始
            StartCoroutine(WaitStart());
        }
        else if (State == CharctorState.Normal)
        {
            //ゲーム中の動き
            if (NavAgent.remainingDistance < NavAgent.radius)
            {
                if (Nav.GetTag() == "WarpPoint")
                {
                    WarpPoint();
                    State = CharctorState.Warp;
                }
                else
                {
                    CharMesh.enabled = true;
                    NavAgent.speed   = AgentSpeed;
                    NextPoint();
                }
            }

            if (InputManager.InstanceSearch.IsDrag() || InputManager.InstanceSearch.IsPause())
            {
                SetNavTime(0);
            }
            else if (InputManager.InstanceSearch.IsRelease() || InputManager.InstanceSearch.IsPause() == false)
            {
                SetNavTime(AgentSpeed);
            }
        }
        else if (State == CharctorState.Warp && InputManager.InstanceSearch.IsDrag() == false)
        {
            if (ParticleManager.InstanceSearch.IsPlaying("3D_MagicCircle_03" + WarpNum.ToString()) == false)
            {
                Nav.MoveNextPosition();
                NavAgent.Warp(Nav.GetDistination());
                CharMesh.enabled     = true;
                CharCollider.enabled = true;
                NavAgent.speed       = AgentSpeed;
                State   = CharctorState.Normal;
                WarpNum = 0;
                ParticleManager.InstanceSearch.PlayParticle("3D_MagicCircle_03", Nav.GetDistination());
            }
        }
    }