0

我正在开发一个管理游戏,每个用户在保存文件中都有一些特定的字符。我在面板中实例化这些字符,我希望用户选择其中一张卡片并将其拖动到某个特定点。我可以为已经在场景中的对象制作一个拖动脚本。但是,如果对象是在运行时生成的,如何实现同样的效果呢?我只需要一些想法如何去做。这是我当前拖动 UI 对象的代码。

    public void OnDrag(){
    btn.transform.position = Input.mousePosition;
}
public void EndDrag(){
    if (btn.transform.position.x -500 <50 || btn.transform.position.x -500 > -50) {
        //btn.transform.position = new Vector3 (-10, 10);
        rt.anchoredPosition = new Vector3 (500, 100, 0);
    }
    else{
        rt.anchoredPosition = new Vector3 (-10, -10, 0);
    }
}
4

1 回答 1

-1

在您实例化您的 GameObject obj 时,请执行以下操作:

obj.addComponent("YourScript");

其中 YourScript 是您编写的脚本,附加到 GameObjects 使其可拖动..

或者,您实例化一个预制件,通过编辑器将脚本附加到预制件。

这是可取的,因为addComponent()将在下一个版本中被弃用。

我还建议List<YourInstantiatedObjectType>在父母中保留一个。

于 2018-05-12T18:02:14.803 回答