我试图为移动平台制作一个脚本,使Player可以在该平台上保持“阻塞”。但是当我保存脚本时,它向我显示了以下内容:错误CS0138:“使用命名空间”指令只能应用于命名空间; “ Collision2D”是一种类型,而不是名称空间。考虑使用“使用静态”指令代替
脚本是:
using UnityEngine;
using UnityEngine.Collision2D;
public class OnMovingPlat : MonoBehaviour
{
[SerializeField]
private Vector3 velocity;
private bool moving;
private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.WasWithPlayer())
{
moving = true;
collision.collider.transform.SetParent(transform);
}
}
private void OnCollisionExit2D(Collision2D collision)
{
if (collision.WasWithPlayer())
{
collision.collider.transform.SetParent(null);
}
}
private void FixedUpdate()
{
if (moving)
{
transform.position += (velocity * Time.deltaTime);
}
}
}
我该怎么办?
答案 0 :(得分:0)
接缝Collision2D成为类型。您可能会在“ UnityEngine”命名空间下意外地创建一个名为“ Collision2D”的类名。