【发布时间】:2022-10-15 17:32:25
【问题描述】:
所以我从互联网上获得了一些用于 Unity 2D 中玩家跟随的代码,但动画似乎无法正常工作。作为参考,我正在为我的动画使用混合树。 (出于某种原因,StackOverflow 不允许我上传图片,这可能是我的问题。但是一旦我能够这样做,我会尝试更新这个线程)
using UnityEngine;
using System.Collections;
public class GhostAI : MonoBehaviour {
public GameObject player;
private Transform playerPos;
private Vector2 currentPos;
public float distance;
public float speedEnemy;
public Rigidbody2D rb;
public Animator animator;
Vector2 originalPos = new Vector2(0, 0);
void Start () {
playerPos = player.GetComponent<Transform>();
currentPos = GetComponent<Transform>().position;
}
void Update() {
}
void FixedUpdate() {
if (rb.position.y > 1.3 || rb.position.y < -4.53 || rb.position.x < -8.55 || rb.position.x > 8.55) {
rb.MovePosition(originalPos);
}
if (Vector2.Distance(transform.position, playerPos.position) < distance) {
transform.position = Vector2.MoveTowards(transform.position, playerPos.position, speedEnemy * Time.deltaTime);
} else {
if (Vector2.Distance(transform.position, currentPos) <= 0) {
print("hit");
} else {
transform.position = Vector2.MoveTowards(transform.position, currentPos, speedEnemy * Time.deltaTime);
}
}
}
}
【问题讨论】: