update load data for UI but Tab Btn not active

This commit is contained in:
VuNgocHaiC7
2026-01-15 00:25:19 +07:00
parent 1e19c94fb8
commit 4bc9a18f01
13 changed files with 1139 additions and 1112 deletions
@@ -27,3 +27,5 @@ MonoBehaviour:
prefab: {fileID: 977375840943150650, guid: 51bad2e6d1ec69a4683135ce85288faa, type: 3}
- id: Win_Hpmpxp
prefab: {fileID: 6032603119232429246, guid: 8350aa55906d08448bb47e10a473ca61, type: 3}
- id: Win_Produce
prefab: {fileID: 5750242998044155948, guid: ecf0d8daf08db6f4a8d94a4bb07847ec, type: 3}
@@ -3518,6 +3518,33 @@ namespace BrewMonster.UI
// BMLogger.LogError($"NPC_MAKE: Error updating produce: {ex.Message}");
// }
//}
uint npcID = pCurNPCEssence.HasValue ? pCurNPCEssence.Value.id : 0;
AUIDialog dlg = m_pAUIManager.GetDialog("Win_Produce");
DlgProduce dlgProduce = dlg as DlgProduce;
if (dlgProduce == null)
{
CECGameUIMan gameUIMan = GetGameUIMan();
DialogScriptTableObject dialogResource = gameUIMan.GetDialogResource();
Canvas canvas = gameUIMan.GetCanvas();
if(dlgProduce != null && canvas != null)
{
GameObject ob = dialogResource.GetPrefabDialog("Win_Produce");
if (ob != null)
{
dlgProduce = GameObject.Instantiate(ob, canvas.transform).GetComponent<DlgProduce>();
}
}
}
if(dlgProduce != null)
{
dlgProduce.Show(true);
dlgProduce.OpenProduce(npcID);
}
}
else if (idFunction == (int)SERVICE_TYPE.NPC_DECOMPOSE)
{
@@ -0,0 +1,371 @@
using BrewMonster.Network;
using BrewMonster.Scripts.Managers;
using BrewMonster.Scripts.Task;
using BrewMonster.UI;
using ModelRenderer.Scripts.Common;
using PerfectWorld.Scripts.Managers;
using PerfectWorld.Scripts.Task;
using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace BrewMonster
{
public class DlgProduce : AUIDialog
{
[Header("Produce Tabs")]
public Transform tabBtnContainer;
public GameObject tabBtnPb;
public string tabButtonTextComponentName = "Text";
[Header("Produce Detail")]
public Transform itemContainer;
public GameObject itemPb;
[Header("Material Slots")]
public List<Transform> materialSlots = new List<Transform>();
[Header("Result Slot")]
public Transform itemResult;
private NPC_MAKE_SERVICE? cachedMakeService = null;
private int currentTabIndex = 0;
public void OpenProduce(uint npcId)
{
if (!LoadMakeService(npcId))
{
Debug.LogError("[DlgProduce] LoadMakeService failed");
return;
}
CreateTabs();
OnTabSelected(0);
}
bool LoadMakeService(uint npcId)
{
var edm = ElementDataManProvider.GetElementDataMan();
if (edm == null)
return false;
DATA_TYPE dt = DATA_TYPE.DT_INVALID;
object npcData = edm.get_data_ptr(npcId, ID_SPACE.ID_SPACE_ESSENCE, ref dt);
if (dt != DATA_TYPE.DT_NPC_ESSENCE || npcData == null)
return false;
NPC_ESSENCE npc = (NPC_ESSENCE)npcData;
if (npc.id_make_service == 0)
return false;
DATA_TYPE serviceDt = DATA_TYPE.DT_INVALID;
object serviceData = edm.get_data_ptr(
npc.id_make_service,
ID_SPACE.ID_SPACE_ESSENCE,
ref serviceDt
);
if (serviceDt != DATA_TYPE.DT_NPC_MAKE_SERVICE || serviceData == null)
return false;
cachedMakeService = (NPC_MAKE_SERVICE)serviceData;
return true;
}
void CreateTabs()
{
ClearContainer(tabBtnContainer);
if (!cachedMakeService.HasValue || cachedMakeService.Value.pages == null)
return;
var makeService = cachedMakeService.Value;
for (int pageIndex = 0; pageIndex < makeService.pages.Length; pageIndex++)
{
var page = makeService.pages[pageIndex];
bool hasRecipes = false;
if (page.id_goods != null)
{
foreach (uint recipeId in page.id_goods)
{
if (recipeId != 0)
{
hasRecipes = true;
break;
}
}
}
if (!hasRecipes)
continue;
GameObject tabObj = Instantiate(tabBtnPb, tabBtnContainer);
tabObj.name = $"ProduceTab_Page_{pageIndex}";
tabObj.SetActive(true);
string pageTitle = ByteToStringUtils.UshortArrayToUnicodeString(page.page_title);
if (string.IsNullOrWhiteSpace(pageTitle))
pageTitle = $"Page {pageIndex + 1}";
TMPro.TextMeshProUGUI tabTMP = null;
Text tabText = null;
Transform textTf = tabObj.transform.Find(tabButtonTextComponentName);
if (textTf != null)
{
tabTMP = textTf.GetComponent<TMPro.TextMeshProUGUI>();
if (tabTMP == null)
{
tabText = textTf.GetComponent<Text>();
}
}
if (tabTMP == null && tabText == null)
{
tabTMP = tabObj.GetComponentInChildren<TMPro.TextMeshProUGUI>();
if(tabTMP == null)
{
tabText = tabObj.GetComponentInChildren<Text>();
}
}
if(tabTMP != null)
tabTMP.text = pageTitle;
else if(tabText != null)
tabText.text = pageTitle;
Button btn = tabObj.GetComponent<Button>();
if(btn == null)
btn = tabObj.GetComponentInChildren<Button>();
if(btn != null)
{
int capturedIndex = pageIndex;
btn.onClick.AddListener(() => OnTabSelected(capturedIndex));
}
}
}
void OnTabSelected(int index)
{
currentTabIndex = index;
RefreshSubItemList();
}
void RefreshSubItemList()
{
ClearContainer(itemContainer);
if (!cachedMakeService.HasValue)
return;
var service = cachedMakeService.Value;
if (service.pages == null || currentTabIndex >= service.pages.Length)
return;
var page = service.pages[currentTabIndex];
if (page.id_goods == null)
return;
foreach (uint recipeId in page.id_goods)
{
if (recipeId == 0)
continue;
CreateSubItem(recipeId);
}
}
void CreateSubItem(uint recipeId)
{
if (itemPb == null || itemContainer == null)
return;
GameObject item = Instantiate(itemPb, itemContainer);
item.name = $"Recipe_{recipeId}";
item.SetActive(true);
Debug.Log("[DlgProduce] Creating produce item for recipe ID: " + item.name);
ProduceItemPanel panel = item.GetComponent<ProduceItemPanel>();
if(panel != null)
{
panel.Setup(recipeId,this);
}
else
{
Debug.LogWarning("[DlgProduce] ProduceItemPanel component not found on item prefab");
}
}
void ClearContainer(Transform container)
{
if (container == null)
return;
for (int i = container.childCount - 1; i >= 0; i--)
{
Destroy(container.GetChild(i).gameObject);
}
}
void ClearMaterialSlots()
{
foreach (var slot in materialSlots)
{
if (slot == null) continue;
slot.gameObject.SetActive(false);
Transform iconTf = slot.Find("item");
if (iconTf != null)
{
Image img = iconTf.GetComponent<Image>();
if (img != null)
img.sprite = null;
}
Transform qtyTf = slot.Find("text_quantity");
if (qtyTf != null)
{
Text txt = qtyTf.GetComponent<Text>();
if (txt != null)
txt.text = "";
}
}
if (itemResult != null)
{
itemResult.gameObject.SetActive(false);
Transform iconTf = itemResult.Find("item");
if (iconTf != null)
{
Image img = iconTf.GetComponent<Image>();
if (img != null)
img.sprite = null;
}
Transform qtyTf = itemResult.Find("text_quantity");
if (qtyTf != null)
{
Text txt = qtyTf.GetComponent<Text>();
if (txt != null)
txt.text = "";
}
}
}
public void ShowRecipeMaterials(uint recipeId)
{
ClearMaterialSlots();
var edm = ElementDataManProvider.GetElementDataMan();
if (edm == null)
return;
DATA_TYPE dt = DATA_TYPE.DT_INVALID;
object data = edm.get_data_ptr(recipeId, ID_SPACE.ID_SPACE_RECIPE, ref dt);
if (data is not RECIPE_ESSENCE recipe)
return;
if (itemResult != null &&
recipe.targets != null &&
recipe.targets.Length > 0 &&
recipe.targets[0].id_to_make != 0)
{
uint outputItemId = recipe.targets[0].id_to_make;
itemResult.gameObject.SetActive(true);
Transform iconTf = itemResult.Find("item");
if (iconTf != null)
{
Image img = iconTf.GetComponent<Image>();
if (img != null)
{
Sprite sp = EC_IvtrItemUtils.Instance.ResolveItemIconSprite((int)outputItemId);
if (sp != null)
{
img.sprite = sp;
img.enabled = true;
img.preserveAspect = true;
}
}
}
Transform qtyTf = itemResult.Find("text_quantity");
if (qtyTf != null)
{
Text txt = qtyTf.GetComponent<Text>();
if (txt != null)
txt.text = "1";
}
}
if (recipe.materials == null)
return;
int slotIndex = 0;
foreach (var mat in recipe.materials)
{
if (slotIndex >= materialSlots.Count)
break;
if (mat.id == 0 || mat.num <= 0)
continue;
Transform slot = materialSlots[slotIndex];
slot.gameObject.SetActive(true);
Transform iconTf = slot.Find("item");
if (iconTf != null)
{
Image img = iconTf.GetComponent<Image>();
if (img != null)
{
Sprite sp = EC_IvtrItemUtils.Instance.ResolveItemIconSprite((int)mat.id);
if (sp != null)
{
img.sprite = sp;
img.enabled = true;
img.preserveAspect = true;
}
}
}
Transform qtyTf = slot.Find("text_quantity");
if (qtyTf != null)
{
Text txt = qtyTf.GetComponent<Text>();
if (txt != null)
txt.text = mat.num.ToString();
}
slotIndex++;
}
}
public void CloseProduce()
{
gameObject.SetActive(false);
ClearContainer(tabBtnContainer);
ClearContainer(itemContainer);
ClearMaterialSlots();
cachedMakeService = null;
currentTabIndex = 0;
Debug.Log("[DlgProduce] Produce dialog closed");
}
public void OnDestroy()
{
ClearContainer(tabBtnContainer);
ClearContainer(itemContainer);
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: c5653f9f523864f47a37bcfad6111bce
@@ -0,0 +1,104 @@
using BrewMonster;
using BrewMonster.Scripts.Managers;
using System.Collections;
using UnityEngine;
using UnityEngine.UI;
using static CSNetwork.Common.ExpTypes;
public class ProduceItemPanel : MonoBehaviour
{
[Header("UI")]
public Image icon;
private uint recipeId;
private Coroutine loadIconCoroutine;
private DlgProduce ownerDlg;
private Button cachedButton;
public void Setup(uint recipeId, DlgProduce dlg)
{
this.recipeId = recipeId;
this.ownerDlg = dlg;
SetupClickHandler();
LoadOutputIcon();
}
void SetupClickHandler()
{
if (cachedButton == null)
{
cachedButton = GetComponent<Button>();
if (cachedButton == null)
cachedButton = GetComponentInChildren<Button>();
if (cachedButton == null && icon != null)
cachedButton = icon.gameObject.AddComponent<Button>();
}
if (cachedButton != null)
{
cachedButton.onClick.RemoveAllListeners();
cachedButton.onClick.AddListener(OnClicked);
}
}
void OnClicked()
{
Debug.Log($"[ProduceItemPanel] Click recipe {recipeId}");
if (ownerDlg != null)
ownerDlg.ShowRecipeMaterials(recipeId);
}
void LoadOutputIcon()
{
if (icon == null || recipeId == 0)
return;
if (loadIconCoroutine != null)
StopCoroutine(loadIconCoroutine);
loadIconCoroutine = StartCoroutine(LoadIconCoroutine());
}
IEnumerator LoadIconCoroutine()
{
yield return null;
var edm = ElementDataManProvider.GetElementDataMan();
if (edm == null)
yield break;
DATA_TYPE dt = DATA_TYPE.DT_INVALID;
object recipeData = edm.get_data_ptr(recipeId, ID_SPACE.ID_SPACE_RECIPE, ref dt);
if (recipeData is not RECIPE_ESSENCE recipe)
yield break;
if (recipe.targets == null || recipe.targets.Length == 0)
yield break;
uint outputItemId = recipe.targets[0].id_to_make;
if (outputItemId == 0)
yield break;
Sprite sp = EC_IvtrItemUtils.Instance.ResolveItemIconSprite((int)outputItemId);
if (sp != null)
{
icon.sprite = sp;
icon.enabled = true;
icon.color = Color.white;
icon.preserveAspect = true;
}
}
void OnDestroy()
{
if (loadIconCoroutine != null)
StopCoroutine(loadIconCoroutine);
if (cachedButton != null)
cachedButton.onClick.RemoveListener(OnClicked);
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 0b12f7c9b50bc084881f32c1ebde5957
File diff suppressed because it is too large Load Diff
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

+153
View File
@@ -0,0 +1,153 @@
fileFormatVersion: 2
guid: c1e41545fff9af745986f5611faf421a
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 0
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: arrow1_0
rect:
serializedVersion: 2
x: 3
y: 6
width: 107
height: 67
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 582dac677001bf944a81d8d7411aebb5
internalID: 2076531766
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID: 38b49d8dc0d44f2438253ad3616201e7
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
arrow1_0: 2076531766
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

+153
View File
@@ -0,0 +1,153 @@
fileFormatVersion: 2
guid: 456a4fcc95d933c4792f57ade804238e
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 0
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: arrow2_0
rect:
serializedVersion: 2
x: 15
y: 8
width: 107
height: 67
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 7342b1324a3cec945b723102aff9d934
internalID: 397534948
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID: 43b7b36b881efbc4785aac3234b14dfb
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
arrow2_0: 397534948
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
+172
View File
@@ -0,0 +1,172 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3478571236783653060
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7551350917878394023}
- component: {fileID: 2586856635111866746}
- component: {fileID: 3227995981941927}
m_Layer: 0
m_Name: itemProduce
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7551350917878394023
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3478571236783653060}
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:
- {fileID: 5438773728966160586}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 42, y: -42}
m_SizeDelta: {x: 84, y: 84}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &2586856635111866746
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3478571236783653060}
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: 7716303670266317094}
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!114 &3227995981941927
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3478571236783653060}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b12f7c9b50bc084881f32c1ebde5957, type: 3}
m_Name:
m_EditorClassIdentifier:
icon: {fileID: 7716303670266317094}
--- !u!1 &5714852699199745934
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5438773728966160586}
- component: {fileID: 7941037763135429874}
- component: {fileID: 7716303670266317094}
m_Layer: 5
m_Name: icon
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &5438773728966160586
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5714852699199745934}
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: 7551350917878394023}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 0, y: -42}
m_SizeDelta: {x: 84, y: 84}
m_Pivot: {x: 0, y: 0.5}
--- !u!222 &7941037763135429874
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5714852699199745934}
m_CullTransparentMesh: 1
--- !u!114 &7716303670266317094
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5714852699199745934}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 8b997e886fff00540b9c069a9dff12af, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: b89cfffd83c228f4886273562ff4e111
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant: