Example #1
0
    public override void Update()
    {
        // Ввод движения
        inputMove   = Input.GetAxis("Vertical");
        inputRotate = Input.GetAxis("Horizontal");

        Vector3 movement = inputMove * transform.forward * moveSpeed;
        float   rotation = inputRotate * rotationSpeed;

        playerController.Move(movement);
        playerController.Rotate(rotation);

        // Ввод стрельба
        if (Input.GetKey(KeyCode.X))
        {
            gunController.Shoot();
        }

        if (Input.GetKeyDown(KeyCode.Q))
        {
            gunController.ChangeWeapon(-1);
        }

        if (Input.GetKeyDown(KeyCode.W))
        {
            gunController.ChangeWeapon(+1);
        }

        // цель камеры находится перед танком по направлению его движения
        Vector3 cameraTargetVector = transform.forward * cameraTargetOffset;

        cameraTarget.position = transform.position + cameraTargetVector;
    }