【发布时间】:2019-10-23 09:18:56
【问题描述】:
我希望我的玩家捡起一个掉落的枪支预制件,然后将旧枪换成新枪。当前结构如下所示:
这是我试过的。我的想法是为玩家实例化一个孩子,然后以某种方式移除 Gun 孩子并将新枪放在相同的位置。火点已经是我的新预制件的一个孩子。所以我只需要交换这两个。下面的脚本将被添加到地面上。
public class WeaponPickUp : MonoBehaviour
{
public GameObject launcher;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
void OnCollisionEnter2D(Collision2D col){
if(col.gameObject.name =="Player"){
GameObject go = Instantiate(launcher, new Vector3(0,0,0), Quaternion.identity) as GameObject;
go.transform.parent = GameObject.Find("Player").transform;
Destroy(gameObject);
}
}
}
有什么想法可以从这里开始吗?非常感谢任何形式的反馈。
【问题讨论】:
-
如果我没听错的话我想知道...只需通过
Destroy(GameObject.Find("Player").transform.GetChild(0));删除您的孩子,然后实例化并将您的新枪设置为孩子 -
UnityScript != C#。这是 C#。
标签: c# unity3d game-development