商店相关(部分)

main
LuoFang 2024-01-04 19:14:18 +08:00
parent bf2d838707
commit 93a9475654
21 changed files with 5054 additions and 4469 deletions

View File

@ -1562,16 +1562,16 @@ RectTransform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4900710066171057725}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 3816482400056806155}
m_Father: {fileID: 7365917418699921921}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_AnchoredPosition: {x: -16.624512, y: -1.3579102}
m_SizeDelta: {x: 100, y: 50}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7584736868551944596
@ -2373,7 +2373,6 @@ GameObject:
- component: {fileID: 3816482400056806155}
- component: {fileID: 9066202922017629015}
- component: {fileID: 6266985018773251756}
- component: {fileID: 4715315587755531113}
m_Layer: 5
m_Name: Button_Max
m_TagString: Untagged
@ -2392,8 +2391,7 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 5884730189415225122}
m_Children: []
m_Father: {fileID: 7365917418699921921}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
@ -2423,7 +2421,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 0}
m_RaycastTarget: 1
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
@ -2439,50 +2437,6 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!114 &4715315587755531113
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6991238248573856731}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 6266985018773251756}
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!1 &7290082162293798743
GameObject:
m_ObjectHideFlags: 0
@ -3105,16 +3059,16 @@ RectTransform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8536607404767294612}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 8058288107052137984}
m_Father: {fileID: 4786576358631970200}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_AnchoredPosition: {x: 12.06958, y: 4.706543}
m_SizeDelta: {x: 100, y: 50}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7317123240174884832
@ -3239,7 +3193,6 @@ GameObject:
- component: {fileID: 8058288107052137984}
- component: {fileID: 3408114197365310236}
- component: {fileID: 9125200825025212647}
- component: {fileID: 4636454317735420310}
m_Layer: 5
m_Name: Button_Min
m_TagString: Untagged
@ -3258,8 +3211,7 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 5999609797504958525}
m_Children: []
m_Father: {fileID: 4786576358631970200}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
@ -3289,7 +3241,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 0}
m_RaycastTarget: 1
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
@ -3305,50 +3257,6 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!114 &4636454317735420310
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 9064761117949436888}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 9125200825025212647}
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!1 &9139231110336584359
GameObject:
m_ObjectHideFlags: 0
@ -3848,6 +3756,10 @@ PrefabInstance:
type: 3}
insertIndex: -1
addedObject: {fileID: 3816482400056806155}
- targetCorrespondingSourceObject: {fileID: 2520450773870282798, guid: 3f67e74c1ee4c904cb294f3255c5afea,
type: 3}
insertIndex: -1
addedObject: {fileID: 5884730189415225122}
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 3f67e74c1ee4c904cb294f3255c5afea, type: 3}
--- !u!224 &7365917418699921921 stripped
@ -3976,6 +3888,10 @@ PrefabInstance:
type: 3}
insertIndex: -1
addedObject: {fileID: 8058288107052137984}
- targetCorrespondingSourceObject: {fileID: 2520450773870282798, guid: 3f67e74c1ee4c904cb294f3255c5afea,
type: 3}
insertIndex: -1
addedObject: {fileID: 5999609797504958525}
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 3f67e74c1ee4c904cb294f3255c5afea, type: 3}
--- !u!224 &4786576358631970200 stripped

File diff suppressed because it is too large Load Diff

View File

@ -167,7 +167,7 @@
GiftCodeClaim,
//商店
ShopDataRefresh,
GetShopData,
ShopBuyGoodsRet,
//任务

View File

@ -64,6 +64,9 @@ public partial class UIManager
_WindowMeta(UINameConst.UITask, UIWindowLayer.Normal);
_WindowMeta(UINameConst.UI_CameraChange, UIWindowLayer.Normal);
_WindowMeta(UINameConst.UI_PVPDefendPrepare, UIWindowLayer.Normal);
_WindowMeta(UINameConst.UI_Shop, UIWindowLayer.Normal);
_WindowMeta(UINameConst.UI_Purchase, UIWindowLayer.Normal);
}
@ -146,4 +149,7 @@ public static class UINameConst
public static readonly string UI_Email = "Mail/UI_Email";
public static readonly string UI_CameraChange = "Interface/UI_CameraChange";
public static readonly string UI_PVPDefendPrepare = "PVP/UI_PVPDefendPrepare";
public static readonly string UI_Shop = "Interface/Shop/UI_Shop";
public static readonly string UI_Purchase = "Interface/Shop/UI_Purchase";
}

View File

@ -43,6 +43,7 @@ public class MyGame : Game
_Register<MailSystem>();
_Register<SystemManager>();
_Register<ShopManager>();
SDKManager.Instance.Init();
}

View File

@ -30,20 +30,21 @@ namespace Gameplay.Net
Items = new List<ShopItem>();
}
public void SetItem(int nIndex, uint id, uint count)
public void SetItem(int nIndex, uint nid, uint count)
{
if(nIndex < Items.Count)
{
Items[nIndex].id = id;
Items[nIndex].id = nid;
Items[nIndex].PurchaseCount = count;
}
else
{
var item = new ShopItem();
item.id = id;
item.id = nid;
item.PurchaseCount = count;
Items.Add(item);
}
ShopManager.Instance.SetItem(id,nIndex, nid, count);
}
}
@ -85,6 +86,7 @@ namespace Gameplay.Net
else
{
s = new Shop();
s.id = id;
m_Shops.Add(id, s);
return s;

View File

@ -1,4 +1,4 @@
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//
// 文件:/Code/Scripts/Gameplay/Net/Messages/MSG_G_Clt_ShopDatas.cs
// 作者NLD Tools
@ -52,6 +52,7 @@ namespace Gameplay.Net
{
s.SetItem(i, m_PB.Items[i].Id, m_PB.Items[i].PurchasedCount);
}
EventManager.Instance.Send(EventManager.EventName.GetShopData);
}
}
}

View File

@ -1,61 +1,135 @@
using cfg.ActorCfg;
using cfg;
using cfg.ActorCfg;
using Framework;
using Gameplay;
using Gameplay.Net;
using PhxhSDK;
using System.Collections.Generic;
using Shop = Gameplay.Net.Shop;
public class ShopData
public class ShopItemContainIndex
{
Shop nowShopData;
DataShop nowShopCfg;
uint nowShopId;
public ShopItemForDisplay shopItemForDisplay;
public int index;
public int shopId;
}
public void GetShopData(uint ID)
public class ShopItemForDisplay:ShopItem
{
public string Name => CommonUtils.GetLocalizeText(shopItemCfg.NameLocal);
public DataItem itemCfg;
public DataShopContent shopItemCfg;
public ShopItemForDisplay(ShopItem data)
{
NetHelper.GetShopData(ID);
this.id= data.id;
this.PurchaseCount = data.PurchaseCount;
shopItemCfg = TableManager.GetSingleton().Tables.ShopContent.Get((int)data.id);
itemCfg = TableManager.GetSingleton().Tables.Item.Get(shopItemCfg.ItemID);
}
public void InitShopData()
public int RemainSoldTime()
{
nowShopData = Actor.Instance.Shop.GetShop(nowShopId);
nowShopCfg = TableManager.Instance.Tables.Shop.Get((int)nowShopId);
CheckCfgAndData();
return shopItemCfg.MaxPurchaseCount - (int)PurchaseCount;
}
private void CheckCfgAndData()
public bool IsSoldOut()
{
if (nowShopData.Items.Count == 0)
{
GetShopData(nowShopId);
DebugUtil.LogError("Id为{0}的商店没有商品", nowShopId);
return;
}
if (nowShopData.Items.Count != nowShopCfg.GoodsPathList.Length)
{
DebugUtil.LogError("Id为{0}的商店商品数与配置的商品图数不符!");
}
return RemainSoldTime() <= 0;
}
}
public partial class ShopManager
public class ShopData
{
public Shop Data => data;
public DataShop Cfg => cfg;
public int Id;
private DataShop cfg;
private Shop data;
public List<ShopItemForDisplay> ItemList;
public string Name => CommonUtils.GetLocalizeText(cfg.NameLocal);
public void RegisterEvent()
public bool IsHaveShopItemData()
{
EventManager.Instance.Register(EventManager.EventName.ShopDataRefresh, OnShopDataRefresh);
return ItemList.Count > 0;
}
public void SetItem(int nIndex, uint nid, uint count)
{
if (nIndex < ItemList.Count)
{
ItemList[nIndex].id = nid;
ItemList[nIndex].PurchaseCount = count;
}
else
{
var item = new ShopItem();
item.id = nid;
item.PurchaseCount = count;
ShopItemForDisplay itemForDisplay= new ShopItemForDisplay(item);
ItemList.Add(itemForDisplay);
}
}
public ShopData(DataShop shopCfg)
{
ItemList = new List<ShopItemForDisplay>();
this.cfg = shopCfg;
Id = shopCfg.ID;
data = Actor.Instance.Shop.GetShop((uint)Id);
for (int i = 0; i < data.Items.Count; i++)
{
ShopItemForDisplay shopItemForDisplay = new ShopItemForDisplay(data.Items[i]);
ItemList.Add(shopItemForDisplay);
}
}
public void GetShopData()
{
NetHelper.GetShopData((uint)Id);
}
}
public class ShopManager:Singlenton<ShopManager>, IInitable
{
public List<ShopData> AllShopData = new List<ShopData>();
public Dictionary<int, ShopData> ShopIdDic = new Dictionary<int, ShopData>();
public ShopData GetFirstData()
{
if(AllShopData.Count>0)
{
return AllShopData[0];
}
DebugUtil.LogError("ShopManager里没东西");
return null;
}
private void OnShopDataRefresh()
private void InitAllShop()
{
//RefreshNowUI();
cfg.Tables Table = TableManager.Instance.Tables ?? new Tables(TableManager.LoadByteBuf);
for (int i = 0; i <Table.Shop.DataList.Count; i++)
{
ShopData shopData = new ShopData(Table.Shop.DataList[i]);
AllShopData.Add(shopData);
ShopIdDic[(int)shopData.Id]=shopData;
}
}
public void UnregisterEvent()
public void SetItem(uint id,int nIndex, uint nid, uint count)
{
EventManager.Instance.Unregister(EventManager.EventName.ShopDataRefresh, OnShopDataRefresh);
ShopData shopData = ShopManager.Instance.GetShop((int)id);
shopData.SetItem(nIndex, nid, count);
}
public ShopData GetShop(int id)
{
ShopData shopdata;
if (ShopIdDic.TryGetValue(id,out shopdata))
{
return shopdata;
}
DebugUtil.LogError("莫得id为{0}的商店", id);
return null;
}
public void BuySth(int id,int count,int index)
{
@ -66,5 +140,31 @@ public partial class ShopManager
NetHelper.ShopBuySth((uint)id, index, count);
}
public void Init()
{
InitAllShop();
}
public void Release()
{
UnInitAllShop();
}
private void UnInitAllShop()
{
AllShopData.Clear();
ShopIdDic.Clear();
}
public string GetIconPath(int shopId,int index)
{
DataShop dataShop= TableManager.Instance.Tables.Shop.Get(shopId);
if(dataShop.GoodsPathList.Length>index)
{
return dataShop.GoodsPathList[index];
}
DebugUtil.LogError("shop表没配第{0}位的商品图标图片", index + 1);
return "";
}
}

View File

@ -0,0 +1,206 @@
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.UIElements;
using Button = UnityEngine.UI.Button;
using Image = UnityEngine.UI.Image;
using Toggle = UnityEngine.UI.Toggle;
using ScrollView = PhxhSDK.PhxhScrollView;
using Framework;
using System;
using PhxhSDK;
using Gameplay;
using Gameplay.Net;
public class UI_PurchaseController : UIWindow
{
//UI GameObj
///Auto Gen Start///
public Image Image_BG;
public TMP_Text Text_Title;
public TMP_Text Text_Currency;
public Button Button_Close;
public Image Image_ItemRect;
public Image Image_ItemPic;
public TMP_Text Text_ItemName;
public TMP_Text Text_ItemHold;
public TMP_Text Text_Detail;
public Image Image_BtnBar;
public TMP_Text Text_BuyCount;
public TMP_Text Text_Num;
public Button Button_Min;
public TMP_Text Text_Min;
public Button Button_Minus;
public Button Button_Plus;
public Button Button_Max;
public TMP_Text Text_Max;
public TMP_Text Text_ItemPrice;
public TMP_Text Text_IPNum;
public Image Image_CoinLogo;
public TMP_Text Text_TotalPrice;
public TMP_Text Text_TPNum;
public Image Image_RestartBG;
public TMP_Text Text_Restart;
public TMP_Text Text_Time;
///Auto Gen End///
private ShopItemForDisplay mNowItem;
private int mIndex;
private int mShopId;
private int mBuyTime;
const int minBuyTime = 1;
private Button RetBtn;
private Button buyBtn;
// Use this for initialization
public override void OnAwake()
{
//bind UI GameObj
UI_PurchaseBinder.GetComponents(this);
BindButton(Button_Close, OnCloseBtnClick);
BindButton(Button_Min, OnMinBtnClick);
BindButton(Button_Max, OnMaxBtnClick);
BindButton(Button_Plus, OnPlusBtnClick);
BindButton(Button_Minus, OnMinusBtnClick);
RetBtn = GetComponent<Button>("Image_BG/Button_Return");
BindButton(RetBtn, OnRetBtnClick);
buyBtn = GetComponent<Button>("Image_BG/Button_Buy");
BindButton(buyBtn, OnBuyBtnClick);
}
private void OnBuyBtnClick()
{
if (mNowItem.IsSoldOut())
{
CommonUtils.ShowMessageTips("shop_NoRemainTips");
return;
}
if (IsMoneyEnough())
{
NetHelper.ShopBuySth((uint)mShopId, mIndex, mBuyTime);
}
}
private bool IsMoneyEnough()
{
if((mBuyTime*mNowItem.shopItemCfg.PriceCount)<CommonUtils.GetItemCount(mNowItem.shopItemCfg.PriceID))
{
return true;
}
return false;
}
private void OnRetBtnClick()
{
CloseWindow();
}
private void OnMaxBtnClick()
{
if (mNowItem.IsSoldOut())
{
CommonUtils.ShowMessageTips("shop_NoRemainTips");
return;
}
mBuyTime = mNowItem.RemainSoldTime();
RefreshMoreCount();
}
private void OnMinusBtnClick()
{
if (mNowItem.IsSoldOut())
{
CommonUtils.ShowMessageTips("shop_NoRemainTips");
return;
}
if(mBuyTime>minBuyTime)
{
mBuyTime--;
RefreshMoreCount();
}
}
private void OnPlusBtnClick()
{
if (mNowItem.IsSoldOut())
{
CommonUtils.ShowMessageTips("shop_NoRemainTips");
return;
}
if(mBuyTime<mNowItem.RemainSoldTime())
{
mBuyTime++;
RefreshMoreCount();
}
}
private void OnMinBtnClick()
{
if (mNowItem.IsSoldOut())
{
CommonUtils.ShowMessageTips("shop_NoRemainTips");
return;
}
mBuyTime = minBuyTime;
RefreshMoreCount();
}
private void OnCloseBtnClick()
{
CloseWindow();
}
//invoke when open window
protected override void OnOpenWindow(object data)
{
ShopItemContainIndex tempItem=data as ShopItemContainIndex;
mNowItem = tempItem.shopItemForDisplay;
mIndex= tempItem.index;
mShopId= tempItem.shopId;
mBuyTime = 1;
RefreshUI();
}
private void RefreshUI()
{
AssetManager.Instance.LoadAssetOnCallBack<Sprite>( ShopManager.Instance.GetIconPath(mShopId, mIndex),OnShopIconLoaded);
Text_ItemName.text = mNowItem.Name;
Text_ItemHold.text =CommonUtils.NumToEnglish( CommonUtils.GetItemCount(mNowItem.shopItemCfg.PriceID));
Text_Num.text = mBuyTime.ToString();
Text_IPNum.text = mNowItem.shopItemCfg.PriceCount.ToString();
}
private void RefreshMoreCount()
{
Text_TPNum.text = (mNowItem.shopItemCfg.PriceCount * mBuyTime).ToString();
Text_Num.text = mBuyTime.ToString() ;
}
private void OnShopIconLoaded(Sprite sprite)
{
Image_ItemPic.sprite = sprite;
}
//invoke when reload window
protected override void OnReloadWindow(object data = null)
{
}
//invoke when close window
protected override void OnCloseWindow()
{
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 7b8506a975e3e5949a1daa045b8eae51
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,312 @@
using Framework;
using Gameplay;
using PhxhSDK;
using System;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
using Button = UnityEngine.UI.Button;
using Image = UnityEngine.UI.Image;
public class UI_ShopController : UIWindow
{
//UI GameObj
///Auto Gen Start///
public Image Image_BG;
public Image Image_PhysicPower;
public Button Button_Plus;
public TMP_Text Text_PPNow;
public TMP_Text Text_PPMax;
public Image Image_PPBar;
public Button Button_Back;
public TMP_Text Text_Back;
public Button Button_Home;
public Image Image_ItemBG;
public Image Image_TimeLeftBG;
public TMP_Text Text_Restart;
public TMP_Text Text_Time;
public Button Button_Choose;
public TMP_Text Text_Choose;
public Image Image_LogoBlack;
public Button Button_NotChoose;
public TMP_Text Text_NotChoose;
public Image Image_LogoWhite;
public Button Button_ItemRect;
public TMP_Text Text_ItemName;
public TMP_Text Text_Tme;
public TMP_Text Text_ItemMax;
public Image Image_ItemPic;
public Image Image_Bar;
public TMP_Text Text_ItemNum;
public Image Image_CoinPic;
public TMP_Text Text_Price;
public Image Image_NoMore;
public TMP_Text Text_NoMore;
Dictionary<GameObject, ShopData> mGoDataDic;
Dictionary<GameObject, ShopItemForDisplay> mShopItemGoDataDic;
Dictionary<GameObject, int> mShopItemIndexGoDataDic;
private GameObject btnItem;
private List<GameObject> btnItemList;
private ShopData nowShopData;
private GameObject rotateJuHua;
List<ShopData> mNowShopDataList;
PhxhScrollView _mCurrentScrollView = null;
private GameObject mCurrentScrollViewContentObj = null;
///Auto Gen End///
// Use this for initialization
public override void OnAwake()
{
//bind UI GameObj
UI_ShopBinder.GetComponents(this);
btnItem = FindObj("Image_BG/BtnItem");
mGoDataDic = new Dictionary<GameObject, ShopData>();
mShopItemGoDataDic = new Dictionary<GameObject, ShopItemForDisplay>();
mShopItemIndexGoDataDic = new Dictionary<GameObject, int>();
rotateJuHua = FindObj("RotateJuHua");
mCurrentScrollViewContentObj = FindObj("Image_BG/PhxhScrollView/Viewport/Content");
_mCurrentScrollView = GetComponent<PhxhScrollView>("Image_BG/PhxhScrollView");
BindButton(Button_Back, OnCloseBtnClick);
BindButton(Button_Home, OnHomeBtnClick);
mNowShopDataList = new List<ShopData>();
}
private void OnHomeBtnClick()
{
UIManager.Instance.CloseAllNormalExcept(UINameConst.UI_MainPanel);
}
private void OnCloseBtnClick()
{
CloseWindow();
}
private void RegisterEvent()
{
EventManager.Instance.Register(EventManager.EventName.GetShopData, OnRecvShopData);
EventManager.Instance.Register(EventManager.EventName.ShopBuyGoodsRet, (Action<ItemCounts>)OnShopBuyRetClick);
}
private async void OnShopBuyRetClick(ItemCounts counts)
{
await UIManager.Instance.OpenWindow(UINameConst.UIGiftCodeAwards, counts);
}
private void UnRegisterEvent()
{
EventManager.Instance.Unregister(EventManager.EventName.GetShopData, OnRecvShopData);
EventManager.Instance.Unregister(EventManager.EventName.ShopBuyGoodsRet, (Action<ItemCounts>)OnShopBuyRetClick);
}
//invoke when open window
protected override void OnOpenWindow()
{
RefreshNowShopList();
InitAllBtns();
RefreshShops(nowShopData);
CreateScrollView();
RegisterEvent();
RefreshBtns(nowShopData.Id);
}
private void CreateScrollView()
{
if (null != mCurrentScrollViewContentObj)
{
CommonUtils.DestoryAllChildGameObject(mCurrentScrollViewContentObj);
}
SetScrollView();
}
private void SetScrollView()
{
_mCurrentScrollView.SetUpdateFunc(RefreshItem);
_mCurrentScrollView.SetItemCountFunc(GetCountFunc);
_mCurrentScrollView.SetButton(SetScrollviewItemButton);
}
private void SetScrollviewItemButton(GameObject obj)
{
for (int i = 0; i < 4; i++)
{
GameObject singleObj = CommonUtils.GetGameObject(obj, (i).ToString());
if (singleObj != null)
{
ClearBind(singleObj);
BindButton<GameObject>(singleObj, OnShopItemClick, singleObj);
}
}
}
private async void OnShopItemClick(GameObject obj)
{
ShopItemForDisplay info = mShopItemGoDataDic[obj];
int index = mShopItemIndexGoDataDic[obj];
ShopItemContainIndex shopItemContainPic = new ShopItemContainIndex();
shopItemContainPic.shopItemForDisplay = info;
shopItemContainPic.index = index;
shopItemContainPic.shopId = nowShopData.Id;
await UIManager.Instance.OpenWindow(UINameConst.UI_Purchase, shopItemContainPic);
}
private int GetCountFunc()
{
int row;
if (nowShopData.ItemList.Count % 4 == 0)
{
row = nowShopData.ItemList.Count / 4;
}
else
{
row = nowShopData.ItemList.Count / 4 + 1;
}
return row;
}
private void RefreshItem(int index, RectTransform item)
{
item.gameObject.SetActive(true);
for (int i = 0; i < 4; i++)
{
GameObject singleItem = CommonUtils.GetGameObject(item.gameObject, (i).ToString());
if (index * 4 + (i) < nowShopData.ItemList.Count)
{
singleItem.SetActive(true);
ShopItemForDisplay tempDataInfo = nowShopData.ItemList[index * 4 + i];
RefreshSingleItem(singleItem, tempDataInfo,index*4+i);
mShopItemGoDataDic[singleItem] = tempDataInfo;
mShopItemIndexGoDataDic[singleItem]=index*4+i;
}
else
{
singleItem.SetActive(false);
}
}
}
private async void RefreshSingleItem(GameObject singleItem, ShopItemForDisplay tempDataInfo,int index)
{
CommonUtils.GetComponent<TMP_Text>(singleItem, "Text_ItemName").text = tempDataInfo.Name;
CommonUtils.GetComponent<TMP_Text>(singleItem, "Image_ItemPic/Image_Bar/Text_ItemNum").text = tempDataInfo.shopItemCfg.ItemCount.ToString();
CommonUtils.GetComponent<Image>(singleItem, "Image_ItemPic").sprite=await AssetManager.GetSingleton().LoadAssetAsync<Sprite>(nowShopData.Cfg.GoodsPathList[index]);
CommonUtils.GetComponent<TMP_Text>(singleItem, "Image_CoinPic/Text_Price").text = tempDataInfo.shopItemCfg.PriceCount.ToString();
CommonUtils.GetGameObject(singleItem, "Image_Day").SetActive(false);
CommonUtils.GetGameObject(singleItem, "Image_Num").SetActive(false);
CommonUtils.GetGameObject(singleItem, "Image_NoMore").SetActive(tempDataInfo.RemainSoldTime()<=0);
//CommonUtils.GetComponent<Image>(singleItem, "Image_CoinPic").sprite=await AssetManager.GetSingleton().;
}
private void RefreshNowShopList()
{
mNowShopDataList.Clear();
mNowShopDataList.AddRange(ShopManager.Instance.AllShopData);
}
private void InitAllBtns()
{
int btnCount = mNowShopDataList.Count;
nowShopData = ShopManager.Instance.GetFirstData();
GameObject whiteBarParent = FindObj("Image_BG/BtnParent");
for (int i = 0; i < btnCount; i++)
{
GameObject go = GameObject.Instantiate(btnItem);
go.transform.parent = whiteBarParent.transform;
go.transform.localScale = Vector3.one;
go.gameObject.SetActive(true);
whiteBarParent.GetComponent<HorizontalLayoutGroup>().childControlWidth = true;
InitSingleBtns(go, mNowShopDataList[i]);
}
}
private void InitSingleBtns(GameObject go,ShopData shopData)
{
BindButton<GameObject>(CommonUtils.GetGameObject(go, "ClickBtn"), OnClickShopBtnClick,go);
mGoDataDic[go] = shopData;
CommonUtils.GetComponent<TMP_Text>(go, "Button_Choose/Text_Choose").text = CommonUtils.GetLocalizeText(shopData.Name);
CommonUtils.GetComponent<TMP_Text>(go, "Button_NotChoose/Text_NotChoose").text = CommonUtils.GetLocalizeText(shopData.Name);
}
private void OnClickShopBtnClick(GameObject go)
{
ShopData data = mGoDataDic[go];
if(data.Id == nowShopData.Id)
{
return;
}
nowShopData = data;
RefreshShops(data);
RefreshBtns(nowShopData.Id);
}
private void OnRecvShopData()
{
rotateJuHua.gameObject.SetActive(false);
RefreshNowShopList();
RefreshBtns(nowShopData.Id);
RefreshAllShopItems();
}
private void RefreshAllShopItems()
{
_mCurrentScrollView.UpdateData(false);
}
private void RefreshShops(ShopData data)
{
if (!data.IsHaveShopItemData())
{
rotateJuHua.SetActive(true);
data.GetShopData();
}
else
{
RefreshBtns(data.Id);
RefreshAllShopItems();
}
}
private void RefreshBtns(int id)
{
foreach (var val in mGoDataDic.Keys)
{
CommonUtils.GetGameObject(val, "Button_Choose").SetActive(mGoDataDic[val].Id == id);
CommonUtils.GetGameObject(val, "Button_NotChoose").SetActive(mGoDataDic[val].Id != id);
}
}
//invoke when reload window
protected override void OnReloadWindow(object data = null)
{
}
//invoke when close window
protected override void OnCloseWindow()
{
DestroyBtns();
UnRegisterEvent();
}
private void DestroyBtns()
{
foreach (var val in mGoDataDic.Keys)
{
val.Destroy();
}
mGoDataDic.Clear();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 167e59c93498979468dd3c28dd6b817d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,4 @@
using System.Collections.Generic;
using System.Linq;
using cfg.CharacterCfg;
using Framework;
using CharacterInfo = Gameplay.Net.CharacterInfo;

View File

@ -0,0 +1,76 @@
using System.Collections;
using System.Collections.Generic;
using TMPro;
using Framework;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.UIElements;
using Button = UnityEngine.UI.Button;
using Image = UnityEngine.UI.Image;
using Toggle = UnityEngine.UI.Toggle;
using ScrollView = PhxhSDK.PhxhScrollView;
public class UI_PurchaseBinder
{
public static void GetComponents(UI_PurchaseController window)
{
window.Image_BG = window.GetComponent<Image>("Image_BG");
window.Text_Title = window.GetComponent<TMP_Text>("Image_BG/Text_Title");
window.Text_Currency = window.GetComponent<TMP_Text>("Image_BG/Text_Title/Text_Currency");
window.Button_Close = window.GetComponent<Button>("Image_BG/Button_Close");
window.Image_ItemRect = window.GetComponent<Image>("Image_BG/Image_ItemRect");
window.Image_ItemPic = window.GetComponent<Image>("Image_BG/Image_ItemRect/Image_ItemPic");
window.Text_ItemName = window.GetComponent<TMP_Text>("Image_BG/Image_ItemRect/Text_ItemName");
window.Text_ItemHold = window.GetComponent<TMP_Text>("Image_BG/Image_ItemRect/Text_ItemHold");
window.Text_Detail = window.GetComponent<TMP_Text>("Image_BG/BuyingDetail/Image_BG/Text_Detail");
window.Image_BtnBar = window.GetComponent<Image>("Image_BG/BuyingDetail/Image_BtnBar");
window.Text_BuyCount = window.GetComponent<TMP_Text>("Image_BG/BuyingDetail/Image_BtnBar/Text_BuyCount");
window.Text_Num = window.GetComponent<TMP_Text>("Image_BG/BuyingDetail/Image_BtnBar/Text_Num");
window.Button_Min = window.GetComponent<Button>("Image_BG/BuyingDetail/Image_BtnBar/Button_Min");
window.Text_Min = window.GetComponent<TMP_Text>("Image_BG/BuyingDetail/Image_BtnBar/Button_Min/Text_Min");
window.Button_Minus = window.GetComponent<Button>("Image_BG/BuyingDetail/Image_BtnBar/Button_Minus");
window.Button_Plus = window.GetComponent<Button>("Image_BG/BuyingDetail/Image_BtnBar/Button_Plus");
window.Button_Max = window.GetComponent<Button>("Image_BG/BuyingDetail/Image_BtnBar/Button_Max");
window.Text_Max = window.GetComponent<TMP_Text>("Image_BG/BuyingDetail/Image_BtnBar/Button_Max/Text_Max");
window.Text_ItemPrice = window.GetComponent<TMP_Text>("Image_BG/BuyingDetail/Text_ItemPrice");
window.Text_IPNum = window.GetComponent<TMP_Text>("Image_BG/BuyingDetail/Text_ItemPrice/Text_IPNum");
window.Image_CoinLogo = window.GetComponent<Image>("Image_BG/BuyingDetail/Text_ItemPrice/Image_CoinLogo");
window.Text_TotalPrice = window.GetComponent<TMP_Text>("Image_BG/BuyingDetail/Text_TotalPrice");
window.Text_TPNum = window.GetComponent<TMP_Text>("Image_BG/BuyingDetail/Text_TotalPrice/Text_TPNum");
window.Image_CoinLogo = window.GetComponent<Image>("Image_BG/BuyingDetail/Text_TotalPrice/Image_CoinLogo");
}
/****** ******
public Image Image_BG;
public TMP_Text Text_Title;
public TMP_Text Text_Currency;
public Button Button_Close;
public Image Image_ItemRect;
public Image Image_ItemPic;
public TMP_Text Text_ItemName;
public TMP_Text Text_ItemHold;
public Image Image_BG;
public TMP_Text Text_Detail;
public Image Image_BtnBar;
public TMP_Text Text_BuyCount;
public TMP_Text Text_Num;
public Button Button_Min;
public TMP_Text Text_Min;
public Button Button_Minus;
public Button Button_Plus;
public Button Button_Max;
public TMP_Text Text_Max;
public TMP_Text Text_ItemPrice;
public TMP_Text Text_IPNum;
public Image Image_CoinLogo;
public TMP_Text Text_TotalPrice;
public TMP_Text Text_TPNum;
public Image Image_CoinLogo;
public Image Image_RestartBG;
public TMP_Text Text_Restart;
public TMP_Text Text_Time;
****** End ******/
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 6539cf6633320c049b8851daf25da6c9
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,188 @@
using System.Collections;
using System.Collections.Generic;
using TMPro;
using Framework;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.UIElements;
using Button = UnityEngine.UI.Button;
using Image = UnityEngine.UI.Image;
using Toggle = UnityEngine.UI.Toggle;
using ScrollView = PhxhSDK.PhxhScrollView;
public class UI_ShopBinder
{
public static void GetComponents(UI_ShopController window)
{
window.Image_BG = window.GetComponent<Image>("Image_BG");
window.Image_PhysicPower = window.GetComponent<Image>("Image_BG/UI_TopButtom/Image_PhysicPower");
window.Button_Plus = window.GetComponent<Button>("Image_BG/UI_TopButtom/Image_PhysicPower/Button_Plus");
window.Text_PPNow = window.GetComponent<TMP_Text>("Image_BG/UI_TopButtom/Image_PhysicPower/Text_PPNow");
window.Text_PPMax = window.GetComponent<TMP_Text>("Image_BG/UI_TopButtom/Image_PhysicPower/Text_PPMax");
window.Image_PPBar = window.GetComponent<Image>("Image_BG/UI_TopButtom/Image_PhysicPower/Image_PPBar");
window.Button_Back = window.GetComponent<Button>("Image_BG/UI_TopButtom/UI_Topbtn/Button_Back");
window.Text_Back = window.GetComponent<TMP_Text>("Image_BG/UI_TopButtom/UI_Topbtn/Button_Back/Text_Back");
window.Button_Home = window.GetComponent<Button>("Image_BG/UI_TopButtom/UI_Topbtn/Button_Home");
window.Image_ItemBG = window.GetComponent<Image>("Image_BG/Image_ItemBG");
window.Image_TimeLeftBG = window.GetComponent<Image>("Image_BG/Image_ItemBG/Image_TimeLeftBG");
window.Text_Restart = window.GetComponent<TMP_Text>("Image_BG/Image_ItemBG/Image_TimeLeftBG/Text_Restart");
window.Text_Time = window.GetComponent<TMP_Text>("Image_BG/Image_ItemBG/Image_TimeLeftBG/Text_Time");
window.Button_Choose = window.GetComponent<Button>("Image_BG/ShopBtn/Btn1/Button_Choose");
window.Text_Choose = window.GetComponent<TMP_Text>("Image_BG/ShopBtn/Btn1/Button_Choose/Text_Choose");
window.Image_LogoBlack = window.GetComponent<Image>("Image_BG/ShopBtn/Btn1/Button_Choose/Image_LogoBlack");
window.Button_NotChoose = window.GetComponent<Button>("Image_BG/ShopBtn/Btn1/Button_NotChoose");
window.Text_NotChoose = window.GetComponent<TMP_Text>("Image_BG/ShopBtn/Btn1/Button_NotChoose/Text_NotChoose");
window.Image_LogoWhite = window.GetComponent<Image>("Image_BG/ShopBtn/Btn1/Button_NotChoose/Image_LogoWhite");
window.Button_Choose = window.GetComponent<Button>("Image_BG/ShopBtn/Btn2/Button_Choose");
window.Text_Choose = window.GetComponent<TMP_Text>("Image_BG/ShopBtn/Btn2/Button_Choose/Text_Choose");
window.Image_LogoBlack = window.GetComponent<Image>("Image_BG/ShopBtn/Btn2/Button_Choose/Image_LogoBlack");
window.Button_NotChoose = window.GetComponent<Button>("Image_BG/ShopBtn/Btn2/Button_NotChoose");
window.Text_NotChoose = window.GetComponent<TMP_Text>("Image_BG/ShopBtn/Btn2/Button_NotChoose/Text_NotChoose");
window.Image_LogoWhite = window.GetComponent<Image>("Image_BG/ShopBtn/Btn2/Button_NotChoose/Image_LogoWhite");
window.Button_Choose = window.GetComponent<Button>("Image_BG/ShopBtn/Btn3/Button_Choose");
window.Text_Choose = window.GetComponent<TMP_Text>("Image_BG/ShopBtn/Btn3/Button_Choose/Text_Choose");
window.Image_LogoBlack = window.GetComponent<Image>("Image_BG/ShopBtn/Btn3/Button_Choose/Image_LogoBlack");
window.Button_NotChoose = window.GetComponent<Button>("Image_BG/ShopBtn/Btn3/Button_NotChoose");
window.Text_NotChoose = window.GetComponent<TMP_Text>("Image_BG/ShopBtn/Btn3/Button_NotChoose/Text_NotChoose");
window.Image_LogoWhite = window.GetComponent<Image>("Image_BG/ShopBtn/Btn3/Button_NotChoose/Image_LogoWhite");
window.Button_Choose = window.GetComponent<Button>("Image_BG/BtnItem/Button_Choose");
window.Text_Choose = window.GetComponent<TMP_Text>("Image_BG/BtnItem/Button_Choose/Text_Choose");
window.Image_LogoBlack = window.GetComponent<Image>("Image_BG/BtnItem/Button_Choose/Image_LogoBlack");
window.Button_NotChoose = window.GetComponent<Button>("Image_BG/BtnItem/Button_NotChoose");
window.Text_NotChoose = window.GetComponent<TMP_Text>("Image_BG/BtnItem/Button_NotChoose/Text_NotChoose");
window.Image_LogoWhite = window.GetComponent<Image>("Image_BG/BtnItem/Button_NotChoose/Image_LogoWhite");
}
/****** ******
public Image Image_BG;
public Image Image_PhysicPower;
public Button Button_Plus;
public TMP_Text Text_PPNow;
public TMP_Text Text_PPMax;
public Image Image_PPBar;
public Button Button_Back;
public TMP_Text Text_Back;
public Button Button_Home;
public Image Image_ItemBG;
public Image Image_TimeLeftBG;
public TMP_Text Text_Restart;
public TMP_Text Text_Time;
public Button Button_Choose;
public TMP_Text Text_Choose;
public Image Image_LogoBlack;
public Button Button_NotChoose;
public TMP_Text Text_NotChoose;
public Image Image_LogoWhite;
public Button Button_Choose;
public TMP_Text Text_Choose;
public Image Image_LogoBlack;
public Button Button_NotChoose;
public TMP_Text Text_NotChoose;
public Image Image_LogoWhite;
public Button Button_Choose;
public TMP_Text Text_Choose;
public Image Image_LogoBlack;
public Button Button_NotChoose;
public TMP_Text Text_NotChoose;
public Image Image_LogoWhite;
public Button Button_ItemRect;
public TMP_Text Text_ItemName;
public TMP_Text Text_Tme;
public TMP_Text Text_ItemMax;
public Image Image_ItemPic;
public Image Image_Bar;
public TMP_Text Text_ItemNum;
public Image Image_CoinPic;
public TMP_Text Text_Price;
public Image Image_NoMore;
public TMP_Text Text_NoMore;
public Button Button_ItemRect (6);
public TMP_Text Text_ItemName;
public TMP_Text Text_Tme;
public TMP_Text Text_ItemMax;
public Image Image_ItemPic;
public Image Image_Bar;
public TMP_Text Text_ItemNum;
public Image Image_CoinPic;
public TMP_Text Text_Price;
public Image Image_NoMore;
public TMP_Text Text_NoMore;
public Button Button_ItemRect (1);
public TMP_Text Text_ItemName;
public TMP_Text Text_Tme;
public TMP_Text Text_ItemMax;
public Image Image_ItemPic;
public Image Image_Bar;
public TMP_Text Text_ItemNum;
public Image Image_CoinPic;
public TMP_Text Text_Price;
public Image Image_NoMore;
public TMP_Text Text_NoMore;
public Button Button_ItemRect (4);
public TMP_Text Text_ItemName;
public TMP_Text Text_Tme;
public TMP_Text Text_ItemMax;
public Image Image_ItemPic;
public Image Image_Bar;
public TMP_Text Text_ItemNum;
public Image Image_CoinPic;
public TMP_Text Text_Price;
public Image Image_NoMore;
public TMP_Text Text_NoMore;
public Button Button_ItemRect (2);
public TMP_Text Text_ItemName;
public TMP_Text Text_Tme;
public TMP_Text Text_ItemMax;
public Image Image_ItemPic;
public Image Image_Bar;
public TMP_Text Text_ItemNum;
public Image Image_CoinPic;
public TMP_Text Text_Price;
public Image Image_NoMore;
public TMP_Text Text_NoMore;
public Button Button_ItemRect (7);
public TMP_Text Text_ItemName;
public TMP_Text Text_Tme;
public TMP_Text Text_ItemMax;
public Image Image_ItemPic;
public Image Image_Bar;
public TMP_Text Text_ItemNum;
public Image Image_CoinPic;
public TMP_Text Text_Price;
public Image Image_NoMore;
public TMP_Text Text_NoMore;
public Button Button_ItemRect (3);
public TMP_Text Text_ItemName;
public TMP_Text Text_Tme;
public TMP_Text Text_ItemMax;
public Image Image_ItemPic;
public Image Image_Bar;
public TMP_Text Text_ItemNum;
public Image Image_CoinPic;
public TMP_Text Text_Price;
public Image Image_NoMore;
public TMP_Text Text_NoMore;
public Button Button_ItemRect (5);
public TMP_Text Text_ItemName;
public TMP_Text Text_Tme;
public TMP_Text Text_ItemMax;
public Image Image_ItemPic;
public Image Image_Bar;
public TMP_Text Text_ItemNum;
public Image Image_CoinPic;
public TMP_Text Text_Price;
public Image Image_NoMore;
public TMP_Text Text_NoMore;
public Image Image_Poster;
public Button Button_Choose;
public TMP_Text Text_Choose;
public Image Image_LogoBlack;
public Button Button_NotChoose;
public TMP_Text Text_NotChoose;
public Image Image_LogoWhite;
****** End ******/
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 140d64a814574c943880d9ef21973535
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -113,12 +113,19 @@ public class UI_MainPanelController: UIWindow
coinItem = FindObj("UI_TopButtom/CoinItem").GetComponent<UI_CurrencyItem>();
BindButton(Button_Email, OnEmailBtnClick);
BindButton(Button_DrawCard, OnDrawCardClick);
BindButton(Button_Store, OnStoreBtnClick);
BindButton(Button_Unknown, _OnClickTask);
BindButton(Button_Camera, OnCameraClick);
cameraGoList = new List<GameObject>();
}
private async void OnStoreBtnClick()
{
await UIManager.Instance.OpenWindow(UINameConst.UI_Shop);
}
private async void OnCameraClick()
{
await UIManager.Instance.OpenWindow(UINameConst.UI_CameraChange,cameraGoList);

View File

@ -0,0 +1,13 @@
using Gameplay.Common;
using Gameplay.Net;
namespace Gameplay
{
public partial class CommonUtils
{
public static uint GetItemCount(int id)
{
return Actor.Instance.Item.GetItemCount(id);
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: b3fbef7190a8f90489aa70e6a6394f6b
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -5,7 +5,16 @@
"NameLocal": "100001",
"PriceId": 0,
"RefreshType": 1,
"GoodsPathList": []
"GoodsPathList": [
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png"
]
},
{
"ID": 2001,
@ -13,7 +22,16 @@
"NameLocal": "100001",
"PriceId": 10,
"RefreshType": 1,
"GoodsPathList": []
"GoodsPathList": [
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png"
]
},
{
"ID": 3001,
@ -21,7 +39,16 @@
"NameLocal": "100001",
"PriceId": 10,
"RefreshType": 1,
"GoodsPathList": []
"GoodsPathList": [
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png"
]
},
{
"ID": 3002,
@ -29,7 +56,16 @@
"NameLocal": "100001",
"PriceId": 10,
"RefreshType": 1,
"GoodsPathList": []
"GoodsPathList": [
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png"
]
},
{
"ID": 3003,
@ -37,7 +73,16 @@
"NameLocal": "100001",
"PriceId": 20,
"RefreshType": 1,
"GoodsPathList": []
"GoodsPathList": [
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png"
]
},
{
"ID": 4001,
@ -45,7 +90,16 @@
"NameLocal": "100001",
"PriceId": 0,
"RefreshType": 1,
"GoodsPathList": []
"GoodsPathList": [
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png"
]
},
{
"ID": 4002,
@ -53,7 +107,16 @@
"NameLocal": "100001",
"PriceId": 0,
"RefreshType": 1,
"GoodsPathList": []
"GoodsPathList": [
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png"
]
},
{
"ID": 5001,
@ -61,7 +124,16 @@
"NameLocal": "100001",
"PriceId": 0,
"RefreshType": 1,
"GoodsPathList": []
"GoodsPathList": [
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png"
]
},
{
"ID": 5002,
@ -69,6 +141,15 @@
"NameLocal": "100001",
"PriceId": 0,
"RefreshType": 1,
"GoodsPathList": []
"GoodsPathList": [
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png",
"Assets/Art/UI/Texture/UI_Pic_MainPannel/UI_PicShop/Shop/UI_ItemPic1.png"
]
}
]