Exemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        if (GameModeManager.GetMode() == GameModeManager.GAMEMODE.FINISH)
        {
            Destroy(this.gameObject);
        }

        DestroyGoblin();  //死ぬ処理

        if (stopFlag == true)
        {
            return;
        }

        //transform.forward = -Camera.main.transform.forward; //カメラのほうむく
        Vector3 moveDir = Camera.main.transform.position - this.transform.position;         //ゴブリンからメインカメラへの向き

        moveDir.y = 0;

        //近くにきたら音出す処理 距離によって出すようにする
        if (moveDir.magnitude < 10.0f && soundFlag[0])
        {
            soundFlag[0] = false;
            soundNear.PlayOneShot(soundNear.clip);
        }
        if (moveDir.magnitude < 5.0f && soundFlag[1])
        {
            soundFlag[1] = false;
            soundNear1.PlayOneShot(soundNear1.clip);
        }
        //近くにきすぎないようにする
        if (moveDir.magnitude < 0.5f)
        {
            return;
        }

        moveDir.Normalize();
        transform.forward   = moveDir;
        transform.position += moveDir * speed * transform.lossyScale.x / 1.365387f;
    }