Unity3d (统一)2D游戏碰撞脚本与熔岩-3错误
我正在为Unity中的“熔岩”块创建一个代码,玩家一旦触摸它,玩家就会重生。但是我收到了3个错误,我不知道问题出在哪里。 错误:Unity3d (统一)2D游戏碰撞脚本与熔岩-3错误,unity3d,collision-detection,Unity3d,Collision Detection,我正在为Unity中的“熔岩”块创建一个代码,玩家一旦触摸它,玩家就会重生。但是我收到了3个错误,我不知道问题出在哪里。 错误: Assets\KillScript.cs(14,45):错误CS1002:;期望 Assets\KillScript.cs(13,31):应为错误CS1513:} Assets\KillScript.cs(13,31):错误CS1002:;预期 这是代码(附在玩家精灵上的脚本) 对于您的if声明,我建议使用bool检查您的玩家是否死亡。第14行的Vector3
- Assets\KillScript.cs(14,45):错误CS1002:;期望
- Assets\KillScript.cs(13,31):应为错误CS1513:}
- Assets\KillScript.cs(13,31):错误CS1002:;预期 这是代码(附在玩家精灵上的脚本)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class KillScript : MonoBehaviour
{
public bool isDead;
void OnCollisionEnter2D(Collision2D coll)
{
if (coll.gameObject.tag == "Lava")
{
Destroy(gameObject);
isDead = true;
}
if (isDead = true)
{
current.transformation.position = new Vector3(-0.37f, -0.13f, 0);
isDead = false;
}
}
}
我也不确定当前的.transformation.position是什么。您可以使用预置创建克隆,然后将该位置设置为矢量3。让我们看看
我很确定current.transformation.position就是transform.position?你还需要等式,向量3应该大写。这3个错误是什么?请将它们复制/粘贴到问题中。我认为有两件事显然是错的。仔细阅读错误和代码。这些错误会告诉你一行和一列,这样你就知道该把焦点放在哪里了。发布的代码看起来很奇怪。你在if语句中施放,你在尝试赋值时没有等号等等。代码中有不匹配的括号。你的if(gameObject)Destroy(销毁)代码错误,请修复它。当前变量是什么,是否在kill脚本中定义?你能分享你所有的killscript代码吗?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class KillScript : MonoBehaviour
{
public bool isDead;
void OnCollisionEnter2D(Collision2D coll)
{
if (coll.gameObject.tag == "Lava")
{
Destroy(gameObject);
isDead = true;
}
if (isDead = true)
{
current.transformation.position = new Vector3(-0.37f, -0.13f, 0);
isDead = false;
}
}
}