Unity3d 为什么我会犯这样的错误?我正在努力让我的npc行动

Unity3d 为什么我会犯这样的错误?我正在努力让我的npc行动,unity3d,Unity3d,这就是代码,我得到了一个错误,叫做这个,如果你知道的话,请帮帮我,我正试图让一个敌人暴徒掉头 我想是排队吧 using System.Collections.Generic; using UnityEngine; public class DinoYonDuzeltme : MonoBehaviour { public LayerMask katman; public DinoHareket hareket; public Transform dino; voi

这就是代码,我得到了一个错误,叫做这个,如果你知道的话,请帮帮我,我正试图让一个敌人暴徒掉头


我想是排队吧

using System.Collections.Generic;
using UnityEngine;

public class DinoYonDuzeltme : MonoBehaviour
{
    public LayerMask katman;
    public DinoHareket hareket;
    public Transform dino;
    void Start()
    {
        hareket = GetComponent<DinoHareket>();
        dino = transform.parent;
    }

    void Update()
    {
        RaycastHit2D hit = Physics2D.Raycast(transform.position, Vector2.down, 0.1f, katman);
        if(hit.collider == null)
        {
            dino.localScale = new Vector3(dino.localScale.x * -1, dino.localScale.y, dino.localScale.z);
            hareket.hiz *= -1f;
        }
    }
}
一定是因为

hareket.hiz *= -1f;

为null,表示您忘记将DinoSharet组件添加到对象中。

由于我无法从错误的行号判断,我不太确定。DinoHarket类是否包含hiz属性?因此dino或hareket未设置为引用,而是设置为null
    GetComponent<DinoHareket>();