Beispiel #1
0
    public void SetItemPrefab(string key, Button itemPrefab)
    {
        if (!menuItems.ContainsKey(key))
        {
            return;
        }
        var itemEO = menuItems[key];

        ExpandoObjectUtility.SetVariable(itemEO, "itemPrefab", itemPrefab);
    }
Beispiel #2
0
    public void SetAction(string key, System.Action action)
    {
        if (!menuItems.ContainsKey(key))
        {
            return;
        }
        var itemEO = menuItems[key];

        ExpandoObjectUtility.SetVariable(itemEO, "action", action);
    }
Beispiel #3
0
    public void SetName(string key, string name)
    {
        if (!menuItems.ContainsKey(key))
        {
            return;
        }
        var itemEO = menuItems[key];

        ExpandoObjectUtility.SetVariable(itemEO, "name", name);
    }
Beispiel #4
0
    public void RegisterItem(string key, string name, Button itemPrefab, System.Action action)
    {
        var itemEO = !menuItems.ContainsKey(key) ? new ExpandoObject() : menuItems[key];

        if (!menuItems.ContainsKey(key))
        {
            menuItems.Add(key, itemEO);
        }
        ExpandoObjectUtility.SetVariable(itemEO, "name", name);
        ExpandoObjectUtility.SetVariable(itemEO, "action", action);
        ExpandoObjectUtility.SetVariable(itemEO, "itemPrefab", itemPrefab);
    }
Beispiel #5
0
 void Start()
 {
     _id       = this.GetID();
     text.text = name;
     // instance python's scriptable object
     pythonPixel = new ExpandoObject();
     ExpandoObjectUtility.SetVariable(pythonPixel, "id", GetInstanceID());
     ExpandoObjectUtility.SetVariable(pythonPixel, "position", new Position
     {
         x = transform.position.x,
         y = transform.position.y
     });
     // StartCoroutine(SetPythonPixelPosition());
     StartCoroutine(Dragging());
 }
Beispiel #6
0
    IEnumerator SetPythonPixelPosition()
    {
        while (!gameObject.IsNull())
        {
            yield return(null);

            if (!gameObject.activeSelf)
            {
                continue;
            }
            var position = (Position)ExpandoObjectUtility.GetVariable(pythonPixel, "position");
            if (position.x == transform.position.x && position.y == transform.position.y)
            {
                continue;
            }
            ExpandoObjectUtility.SetVariable(pythonPixel, "position", new Position
            {
                x = transform.position.x,
                y = transform.position.y
            });
        }
    }