Как перемещать персонажа с помощью кнопок в Unity - PullRequest
0 голосов
/ 26 мая 2019

Я сделал свое первое приложение, используя Unity, но для того, чтобы оно работало на Android, мне нужно поставить несколько кнопок управления, проблема в том, что переход с кнопки не работал, и я не знаю, как сделать ход кнопки тоже. Я использую Unity 4 и хочу переместить персонажа от первого лица.

Я нашел этот код, но он не работал для меня:

using UnityEngine;
using System.Collections;

public class jump_1 : MonoBehaviour {
public float speed = 6.0f;
public float gravity = -9.8f;

private float verticalVelocity;
private float jumpForce = 15.0f;
private float gravityJump = 14.0f;

private CharacterController _charController;

void Start() {
    _charController = GetComponent<CharacterController>();
}

void Update() {
    float deltaX = Input.GetAxis("Horizontal") * speed;
    float deltaZ = Input.GetAxis("Vertical") * speed;
    Vector3 movement = new Vector3(deltaX, 0, deltaZ);
    movement = Vector3.ClampMagnitude(movement, speed);

    movement.y = gravity;

    movement *= Time.deltaTime;
    movement = transform.TransformDirection(movement);
    _charController.Move(movement);


    if (_charController.isGrounded) {
        verticalVelocity = -gravityJump * Time.deltaTime;
        if (Input.GetKeyDown (KeyCode.Space)) {
            verticalVelocity = jumpForce;
        }
    } else {
        verticalVelocity -= gravityJump * Time.deltaTime;
    }
Vector3 jumpVector = new Vector3(0, verticalVelocity, 0);
    _charController.Move (jumpVector * Time.deltaTime);
}
}
...