点击时移动物体头部

本文关键字:头部 移动 | 更新日期: 2023-09-27 18:26:55

我是Unity 3d的新手。我已经开始练习蛇游戏了。我必须先把蛇头向前移动。如果我按下任何键,蛇就会开始向前移动。对于它的头部,我只取了一个立方体。这是代码。请告诉我哪里做错了。

public class SnakeMove: MonoBehaviour {
public bool Move_Up;
public bool Move_Below  ;
public bool Move_Right;
public bool Move_Left;
public body first_body;
public float time_movement = .5F;
public float following_movement;

// Use this for initialization
void Start () {
    Move_Up = false;
    Move_Below = false;
    Move_Right = false;
    Move_Left= false;
    following_movement = Time.time + time_movement;
}
// Update is called once per frame
void Update () {
    if (Input.GetKeyDown(KeyCode.UpArrow))
    {
        Move_Up = true;
        Move_Below = false;
        Move_Right = false;
        Move_Left = false;
    }
    if (Input.GetKeyDown(KeyCode.DownArrow))
    {
        Move_Up = false;
        Move_Below = true;
        Move_Right = false;
        Move_Left = false;
    }
    if (Input.GetKeyDown(KeyCode.RightArrow))
    {
        Move_Up = false;
        Move_Below = false;
        Move_Right = true;
        Move_Left = false;
    }
    if (Input.GetKeyDown(KeyCode.LeftArrow))
    {
        Move_Up = false;
        Move_Below = false;
        Move_Right = false;
        Move_Left = true;
    }
    if (Time.time > following_movement)
    {
        MoveHead();
    }
}
void MoveHead()
{
    if (Move_Up)
    {
        first_body.move(this.transform);
        this.transform.position += transform.forward *transform.localScale.z;
    }
    if (Move_Below)
    {
        first_body.move(this.transform);
        this.transform.position += -transform.forward * transform.localScale.z;
    }
    if (Move_Right)
    {
        first_body.move(this.transform);
        this.transform.position += transform.right * transform.localScale.z;
    }
    if (Move_Left)
    {
        first_body.move(this.transform);
        this.transform.position += -transform.right * transform.localScale.z;
    }
    following_movement = Time.time + time_movement;
}
}

错误为:

Assets/Scripts/SnakeMotion.cs(92,8):error CS0246:类型或找不到命名空间名称"body"。你错过了一次使用吗指令还是程序集引用?

我应该也做一个身体脚本吗?N那个脚本应该包含什么?或者我可以在不制作单独的Body脚本的情况下运行吗?对不起我的英语。

点击时移动物体头部

问题出在这条线上

public body first_body;

您声明的变量的类型为body,但body不是内置变量类型,如float或bool。

在你的脚本中,我不知道你实际上想对变量first_body做什么,它是蛇的身体吗?你能详细解释一下"第一身体"吗?