internal void GetInventory(string name, List <Item> items)
 {
     this.name = name;
     _playerName.SetText($"{name} 的背包");
     if (slots.Count != items.Count)
     {
         slots.Clear();
         for (int i = 0; i < items.Count; i++)
         {
             var uislot = new UISlot();
             uislot.Width.Set(60, 0f);
             uislot.Height.Set(60, 0f);
             uislot.ContainedItem     = items[i];
             uislot.Index             = i;
             uislot.PostExchangeItem += Uislot_PostExchangeItem;
             slots.Add(uislot);
             _itemGrid.Add(uislot);
         }
     }
     else
     {
         for (int i = 0; i < items.Count; i++)
         {
             slots[i].ContainedItem = items[i];
         }
     }
 }
Beispiel #2
0
        public void RefreshFiles()
        {
            //var thread = new Thread(() =>
            //{
            //	// 锁住这个对象防止刷新频率过快导致错位
            //	lock (this)
            //	{
            selectedItem = -1;
            _tilefilesList.Clear();
            int i = 0;

            foreach (var file in TemplateMod.Instance.TileFileManager.GetTileFiles())
            {
                var f = new UITileFileItem(file, i);
                f.OnClick += F_OnClick;
                _tilefilesList.Add(f);
                i++;
            }
            //	}
            //});
            //thread.Start();
        }