【发布时间】:2021-07-07 09:57:12
【问题描述】:
我是编程新手,所以我使用 Unity 和 Windows Visual Studio 按照 Youtube 上的经典 RPG 游戏教程中的步骤进行操作,但游戏无法启动,尽管我已经将脚本分配给玩家,但他仍然没有移动。 这是我的代码:
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using UnityEngine;
public class PlayerController : MonoBehaviour
{
public float moveSpeed;
private bool isMoving;
private Vector2 input;
private void Ubdate()
{
if (!isMoving)
{
input.x = Input.GetAxisRaw("Horizontal");
input.y = Input.GetAxisRaw("Vertical");
if (input != Vector2.zero)
{
var targetPos = transform.position;
targetPos.x += input.x;
targetPos.y += input.y;
StartCoroutine(Move(targetPos));
}
}
}
IEnumerator Move(Vector3 targetPos)
{
isMoving = true;
while ((targetPos - transform.position).sqrMagnitude > Mathf.Epsilon)
{
transform.position = Vector3.MoveTowards(transform.position, targetPos, moveSpeed * Time.deltaTime);
yield return null;
}
transform.position = targetPos;
isMoving = false;
}
}
【问题讨论】:
-
您的
Update方法有错字。
标签: c# visual-studio unity3d