在多个游戏对象上定义相同脚本的执行顺序

时间:2018-05-17 11:19:35

标签: unity3d

我有相同的滚动脚本附加到多个游戏对象。但我希望它们按顺序执行。目前他们正在执行,我可以随意说,所以他们无法按顺序实现彼此同步。

所以我希望它们根据每个游戏对象的顺序执行,而不是随机选择每个。

1 个答案:

答案 0 :(得分:1)

您可以定义自己的UpdateManually方法,并自行以适当的顺序调用它。例如:

public class ScrollScriptUpdater : MonoBehaviour
{
    // set references according to desired update order
    // this can be done in the editor or via script if appropriate
    public List<ScrollScript> ScrollScripts;

    void Update ()
    {
        // this updates in the natural order of the list,
        // list item 0, 1, 2, ...
        foreach (var script in ScrollScripts)
        {
            script.UpdateManually();
        }
    }
}

public class ScrollScript : MonoBehaviour
{
    public void UpdateManually()
    {
        // do stuff
    }
}