Exemplo n.º 1
0
        public bool RefreshIcon(bool forceNewRequest = false)
        {
            if (!forceNewRequest)
            {
                if (iconRequest != null)
                {
                    //Debug.LogWarning($"Item icon is already being regenerated, please wait or call with forceNewRequest set to true.");
                    return(false);
                }
            }

            // Cancel prevoious request, if it exists.
            if (iconRequest != null)
            {
                iconRequest.IsDone       = true;
                iconRequest.InputTexture = null;
                iconRequest = null;
            }

            // Create request.
            iconRequest = new IconGen.Request()
            {
                Item         = this,
                InputTexture = IconTexture,
                OnComplete   = newIcon =>
                {
                    if (newIcon != IconTexture)
                    {
                        Destroy(IconTexture);
                    }
                    IconTexture = newIcon;

                    iconRequest = null;
                }
            };

            // Submit request.
            IconGen.RequestIcon(iconRequest);

            return(true);
        }
Exemplo n.º 2
0
 private void Awake()
 {
     _instance = this;
 }