// -------------------------------------------------------------------------------
        // ThrottledUpdate
        // -------------------------------------------------------------------------------
        protected override void ThrottledUpdate()
        {
            if (!networkManager ||  networkManager.state != NetworkState.Game)
            {
                Hide();
            }
            else
            {
                Show();
            }

            if (!localPlayer)
            {
                return;
            }

            if (currencyManager == null)
            {
                currencyManager = localPlayer.GetComponent <PlayerCurrencyComponent>();
            }

            for (int i = 0; i < root.transform.childCount; i++)
            {
                GameObject.Destroy(root.transform.GetChild(i).gameObject);
            }

            int count = 0;

            foreach (CurrencySyncStruct _entry in currencyManager.GetEntries(true, SortOrder.Priority))
            {
                CurrencySyncStruct entry = _entry;

                GameObject go = GameObject.Instantiate(slotPrefab.gameObject);
                go.transform.SetParent(root.transform, false);

                go.GetComponent <UICurrencySlotHorizontal>().Init(ref entry);

                count++;

                if (maxEntries > 0 && count > maxEntries)
                {
                    break;
                }
            }
        }
        void SaveDataPlayer_Currency(GameObject player, bool isOnline)
        {
            // you should delete all data of this player first, to prevent duplicates
            DeleteDataPlayer_Currency(player.name);

            PlayerCurrencyComponent manager = player.GetComponent <PlayerCurrencyComponent>();

            List <CurrencySyncStruct> list = manager.GetEntries(false);

            for (int i = 0; i < list.Count; i++)
            {
                CurrencySyncStruct entry = list[i];

                InsertOrReplace(new TablePlayerCurrencies {
                    owner     = player.name,
                    name      = entry.name,
                    slot      = entry.slot,
                    value     = entry.value,
                    timeStamp = entry.timeStamp
                });
            }
        }