拖动物品到快速使用
This commit is contained in:
Binary file not shown.
@@ -14,6 +14,12 @@ namespace NBF
|
|||||||
|
|
||||||
private void OnInited()
|
private void OnInited()
|
||||||
{
|
{
|
||||||
|
draggable = true;
|
||||||
|
onDragStart.Add(context =>
|
||||||
|
{
|
||||||
|
context.PreventDefault();
|
||||||
|
DragDropManager.inst.StartDrag(this, this.icon, this.icon, (int)context.data);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void SetData(ItemInfo itemInfo)
|
public virtual void SetData(ItemInfo itemInfo)
|
||||||
|
|||||||
@@ -37,6 +37,8 @@ namespace NBF
|
|||||||
|
|
||||||
ItemList.SetPanel(this);
|
ItemList.SetPanel(this);
|
||||||
ItemList.SetData(tabItemList, true, true);
|
ItemList.SetData(tabItemList, true, true);
|
||||||
|
|
||||||
|
BagSlotPanel.Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnUICanceled(string action)
|
private void OnUICanceled(string action)
|
||||||
|
|||||||
31
Assets/Scripts/UI/Bag/BagSlotItem.Designer.cs
generated
Normal file
31
Assets/Scripts/UI/Bag/BagSlotItem.Designer.cs
generated
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
/**本脚本为自动生成,每次生成会覆盖!请勿手动修改,生成插件文档及项目地址:https://git.whoot.com/whoot-games/whoot.fguieditorplugin**/
|
||||||
|
|
||||||
|
|
||||||
|
using FairyGUI;
|
||||||
|
using FairyGUI.Utils;
|
||||||
|
using NBC;
|
||||||
|
|
||||||
|
namespace NBF
|
||||||
|
{
|
||||||
|
public partial class BagSlotItem
|
||||||
|
{
|
||||||
|
public const string URL = "ui://hxr7rc7puiwj1t";
|
||||||
|
|
||||||
|
public GImage back;
|
||||||
|
public GTextField TextIndex;
|
||||||
|
public GTextField TextCount;
|
||||||
|
public GImage Quality;
|
||||||
|
|
||||||
|
public override void ConstructFromXML(XML xml)
|
||||||
|
{
|
||||||
|
base.ConstructFromXML(xml);
|
||||||
|
|
||||||
|
back = (GImage)GetChild("back");
|
||||||
|
TextIndex = (GTextField)GetChild("TextIndex");
|
||||||
|
TextCount = (GTextField)GetChild("TextCount");
|
||||||
|
Quality = (GImage)GetChild("Quality");
|
||||||
|
OnInited();
|
||||||
|
UILanguage.TrySetComponentLanguage(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/Scripts/UI/Bag/BagSlotItem.Designer.cs.meta
Normal file
2
Assets/Scripts/UI/Bag/BagSlotItem.Designer.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6e8df720091e10e47a8068485beb5b1f
|
||||||
16
Assets/Scripts/UI/Bag/BagSlotItem.cs
Normal file
16
Assets/Scripts/UI/Bag/BagSlotItem.cs
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
// 本脚本只在不存在时会生成一次。组件逻辑写在当前脚本内。已存在不会再次生成覆盖
|
||||||
|
|
||||||
|
using UnityEngine;
|
||||||
|
using FairyGUI;
|
||||||
|
using NBC;
|
||||||
|
|
||||||
|
namespace NBF
|
||||||
|
{
|
||||||
|
public partial class BagSlotItem : GButton
|
||||||
|
{
|
||||||
|
private void OnInited()
|
||||||
|
{
|
||||||
|
onDrop.Add(context => { this.icon = (string)context.data; });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/Scripts/UI/Bag/BagSlotItem.cs.meta
Normal file
2
Assets/Scripts/UI/Bag/BagSlotItem.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: fbdf8a7405939fd4180c9480ff529c25
|
||||||
36
Assets/Scripts/UI/Bag/BagSlotPanel.Designer.cs
generated
Normal file
36
Assets/Scripts/UI/Bag/BagSlotPanel.Designer.cs
generated
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
/**本脚本为自动生成,每次生成会覆盖!请勿手动修改,生成插件文档及项目地址:https://git.whoot.com/whoot-games/whoot.fguieditorplugin**/
|
||||||
|
|
||||||
|
using FairyGUI;
|
||||||
|
using FairyGUI.Utils;
|
||||||
|
using NBC;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace NBF
|
||||||
|
{
|
||||||
|
/// <summary> </summary>
|
||||||
|
public partial class BagSlotPanel
|
||||||
|
{
|
||||||
|
public GObject this[string aKey] => ContentPane.GetChild(aKey);
|
||||||
|
public override string UIPackName => "Main";
|
||||||
|
public override string UIResName => "BagSlotPanel";
|
||||||
|
|
||||||
|
[AutoFind(Name = "back")]
|
||||||
|
public GLabel back;
|
||||||
|
[AutoFind(Name = "SlotTitle")]
|
||||||
|
public GComponent SlotTitle;
|
||||||
|
[AutoFind(Name = "List")]
|
||||||
|
public GList List;
|
||||||
|
[AutoFind(Name = "SlotList")]
|
||||||
|
public GList SlotList;
|
||||||
|
[AutoFind(Name = "SlotSeparator")]
|
||||||
|
public GImage SlotSeparator;
|
||||||
|
public override string[] GetDependPackages(){ return new string[] {"Common"}; }
|
||||||
|
|
||||||
|
public static void Show(object param = null){ App.UI.OpenUI<BagSlotPanel>(param); }
|
||||||
|
|
||||||
|
public static void Hide(){ App.UI.HideUI<BagSlotPanel>(); }
|
||||||
|
|
||||||
|
public static void Del(){ App.UI.DestroyUI<BagSlotPanel>(); }
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/Scripts/UI/Bag/BagSlotPanel.Designer.cs.meta
Normal file
2
Assets/Scripts/UI/Bag/BagSlotPanel.Designer.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b20e20ff411c89e42a2bf35a499a5aed
|
||||||
67
Assets/Scripts/UI/Bag/BagSlotPanel.cs
Normal file
67
Assets/Scripts/UI/Bag/BagSlotPanel.cs
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
// 本脚本只在不存在时会生成一次。已存在不会再次生成覆盖
|
||||||
|
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using FairyGUI;
|
||||||
|
using Fantasy;
|
||||||
|
using UnityEngine;
|
||||||
|
using NBC;
|
||||||
|
using NBF.Fishing2;
|
||||||
|
using UIPanel = NBC.UIPanel;
|
||||||
|
|
||||||
|
namespace NBF
|
||||||
|
{
|
||||||
|
public partial class BagSlotPanel : UIPanel
|
||||||
|
{
|
||||||
|
private List<ItemInfo> _items = new List<ItemInfo>();
|
||||||
|
|
||||||
|
protected override void OnInit()
|
||||||
|
{
|
||||||
|
// List.SetVirtual();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void OnShow()
|
||||||
|
{
|
||||||
|
SetList();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetList()
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
var role = App.Main.GetComponent<Role>();
|
||||||
|
var roleBag = role.GetComponent<RoleBag>();
|
||||||
|
_items.Clear();
|
||||||
|
foreach (var roleBagItem in roleBag.Items)
|
||||||
|
{
|
||||||
|
if (CanShow(roleBagItem))
|
||||||
|
{
|
||||||
|
_items.Add(roleBagItem);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
List.RemoveChildrenToPool();
|
||||||
|
List.itemRenderer = OnRenderItem;
|
||||||
|
|
||||||
|
List.numItems = _items.Count;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OnRenderItem(int index, GObject obj)
|
||||||
|
{
|
||||||
|
var itemData = _items[index];
|
||||||
|
if (obj is BagItem bagItem)
|
||||||
|
{
|
||||||
|
bagItem.SetData(itemData);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool CanShow(ItemInfo itemInfo)
|
||||||
|
{
|
||||||
|
if (itemInfo.ItemType == ItemType.Rod)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/Scripts/UI/Bag/BagSlotPanel.cs.meta
Normal file
2
Assets/Scripts/UI/Bag/BagSlotPanel.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1d010d83455eca34ab24068d41400c1d
|
||||||
@@ -24,6 +24,7 @@ namespace NBF
|
|||||||
UIObjectFactory.SetPackageItemExtension(ItemBasicInfoTag.URL, typeof(ItemBasicInfoTag));
|
UIObjectFactory.SetPackageItemExtension(ItemBasicInfoTag.URL, typeof(ItemBasicInfoTag));
|
||||||
UIObjectFactory.SetPackageItemExtension(ItemGearInfoTag.URL, typeof(ItemGearInfoTag));
|
UIObjectFactory.SetPackageItemExtension(ItemGearInfoTag.URL, typeof(ItemGearInfoTag));
|
||||||
UIObjectFactory.SetPackageItemExtension(ShopGearItem.URL, typeof(ShopGearItem));
|
UIObjectFactory.SetPackageItemExtension(ShopGearItem.URL, typeof(ShopGearItem));
|
||||||
|
UIObjectFactory.SetPackageItemExtension(BagSlotItem.URL, typeof(BagSlotItem));
|
||||||
UIObjectFactory.SetPackageItemExtension(BagItem.URL, typeof(BagItem));
|
UIObjectFactory.SetPackageItemExtension(BagItem.URL, typeof(BagItem));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
13
FGUIProject/assets/Main/Bag/BagSlotItem.xml
Normal file
13
FGUIProject/assets/Main/Bag/BagSlotItem.xml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<component size="150,150" extention="Button">
|
||||||
|
<displayList>
|
||||||
|
<image id="n8_uiwj" name="back" src="kryob" fileName="Images/Square.png" pkg="6hgkvlau" xy="0,0" size="150,150" alpha="0.2" color="#5c748b"/>
|
||||||
|
<loader id="n10_uiwj" name="icon" xy="21,18" size="110,110" align="center" vAlign="middle" fill="scale" shrinkOnly="true" clearOnPublish="true">
|
||||||
|
<relation target="" sidePair="center-center,top-top"/>
|
||||||
|
</loader>
|
||||||
|
<text id="n9_uiwj" name="TextIndex" xy="5,5" size="19,35" fontSize="25" color="#ffffff" text="1"/>
|
||||||
|
<text id="n11_uiwj" name="TextCount" xy="98,111" pivot="1,1" size="44,33" fontSize="23" color="#ffffff" align="right" text="999"/>
|
||||||
|
<image id="n12_uiwj" name="Quality" src="kryob" fileName="Images/Square.png" pkg="6hgkvlau" xy="0,148" size="150,2" color="#ff6c00"/>
|
||||||
|
</displayList>
|
||||||
|
<Button/>
|
||||||
|
</component>
|
||||||
27
FGUIProject/assets/Main/Bag/BagSlotPanel.xml
Normal file
27
FGUIProject/assets/Main/Bag/BagSlotPanel.xml
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<component size="1920,1080">
|
||||||
|
<displayList>
|
||||||
|
<component id="n0_lvql" name="back" src="xd2fmf" fileName="Com/Back/Back2.xml" pkg="6hgkvlau" xy="0,0" size="1920,1080">
|
||||||
|
<relation target="" sidePair="width-width,height-height"/>
|
||||||
|
</component>
|
||||||
|
<component id="n6_uiwj" name="SlotTitle" src="r6aumd" fileName="Com/CommonTitle.xml" pkg="6hgkvlau" xy="0,0">
|
||||||
|
<relation target="" sidePair="width-width,top-top"/>
|
||||||
|
</component>
|
||||||
|
<list id="n7_uiwj" name="List" xy="37,111" size="1846,775" layout="flow_hz" selectionMode="multiple" overflow="hidden" scrollBarRes="ui://6hgkvlauoomej," clipSoftness="10,10" lineGap="20" colGap="20" defaultItem="ui://hxr7rc7puq3a1h" autoClearItems="true" foldInvisibleItems="true">
|
||||||
|
<relation target="" sidePair="width-width,height-height"/>
|
||||||
|
<item url="ui://hxr7rc7poome9"/>
|
||||||
|
</list>
|
||||||
|
<list id="n13_uiwj" name="SlotList" xy="38,901" size="1831,153" layout="row" overflow="hidden" lineGap="8" colGap="40" defaultItem="ui://hxr7rc7puiwj1t" align="center">
|
||||||
|
<item/>
|
||||||
|
<item/>
|
||||||
|
<item/>
|
||||||
|
<item/>
|
||||||
|
<item/>
|
||||||
|
<item/>
|
||||||
|
<item/>
|
||||||
|
</list>
|
||||||
|
<image id="n14_uiwj" name="SlotSeparator" src="kryob" fileName="Images/Square.png" pkg="6hgkvlau" xy="36,891" pivot="0.5,0.5" size="1846,1" alpha="0.5" color="#5c748b">
|
||||||
|
<relation target="" sidePair="width-width,center-center,bottom-bottom"/>
|
||||||
|
</image>
|
||||||
|
</displayList>
|
||||||
|
</component>
|
||||||
@@ -87,6 +87,8 @@
|
|||||||
<image id="r03uq" name="20250521222909_1.jpg" path="/Shop/x效果图/"/>
|
<image id="r03uq" name="20250521222909_1.jpg" path="/Shop/x效果图/"/>
|
||||||
<component id="fcfg8" name="FishingShopPanel.xml" path="/Shop/" exported="true"/>
|
<component id="fcfg8" name="FishingShopPanel.xml" path="/Shop/" exported="true"/>
|
||||||
<component id="uiwj1s" name="BagSelectPanel.xml" path="/Bag/" exported="true"/>
|
<component id="uiwj1s" name="BagSelectPanel.xml" path="/Bag/" exported="true"/>
|
||||||
|
<component id="uiwj1t" name="BagSlotItem.xml" path="/Bag/" exported="true"/>
|
||||||
|
<component id="uiwj1u" name="BagSlotPanel.xml" path="/Bag/" exported="true"/>
|
||||||
</resources>
|
</resources>
|
||||||
<publish name="" path="../Assets/Resources/Fgui/Main" packageCount="2" genCode="true"/>
|
<publish name="" path="../Assets/Resources/Fgui/Main" packageCount="2" genCode="true"/>
|
||||||
</packageDescription>
|
</packageDescription>
|
||||||
1
FGUIProject/settings/whoot/hxr7rc7puiwj1t.json
Normal file
1
FGUIProject/settings/whoot/hxr7rc7puiwj1t.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"url":"ui://hxr7rc7puiwj1t","name":"BagSlotItem","scriptType":"component","isCustomName":false,"customName":"","annotation":"","member":{}}
|
||||||
1
FGUIProject/settings/whoot/hxr7rc7puiwj1u.json
Normal file
1
FGUIProject/settings/whoot/hxr7rc7puiwj1u.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"url":"ui://hxr7rc7puiwj1u","name":"BagSlotPanel","scriptType":"panel","isCustomName":false,"customName":"","annotation":"","member":{}}
|
||||||
Reference in New Issue
Block a user