completed task icon head NPC
@@ -68,53 +68,6 @@ public class CECNPC : CECObject
|
||||
m_pNPCModelPolicy = new CECNPCModelDefaultPolicy(this);
|
||||
}
|
||||
|
||||
// Add this field to CECNPC class
|
||||
private bool m_bHasRelatedTask = false;
|
||||
|
||||
private float _timerCheckTask = 0;
|
||||
public void UpdateTaskIcon()
|
||||
{
|
||||
// Check if npcUI is assigned
|
||||
if (m_npcUI == null)
|
||||
{
|
||||
m_npcUI = GetComponentInChildren<UINPC>();
|
||||
if (m_npcUI == null) return;
|
||||
}
|
||||
|
||||
// 2. Get Host Player & Interface
|
||||
var host = CECGameRun.Instance.GetHostPlayer();
|
||||
if (host == null) return;
|
||||
|
||||
var taskInterface = host.GetTaskInterface();
|
||||
if (taskInterface == null)
|
||||
{
|
||||
if (m_bHasRelatedTask) // only update if state changed
|
||||
{
|
||||
m_npcUI.SetTaskIconMain(false);
|
||||
m_bHasRelatedTask = false;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
// Get NPC Template ID
|
||||
int npcTemplateID = m_NPCInfo.tid;
|
||||
|
||||
// Check if there are tasks related to this NPC
|
||||
bool hasTask = taskInterface.HasTaskRelatedToNPC(npcTemplateID);
|
||||
|
||||
// Update icon only if state changed
|
||||
if (m_bHasRelatedTask != hasTask)
|
||||
{
|
||||
m_bHasRelatedTask = hasTask;
|
||||
m_npcUI.SetTaskIconMain(hasTask);
|
||||
|
||||
if (hasTask)
|
||||
{
|
||||
Debug.Log($"[Icon] NPC {m_strName} (TID: {npcTemplateID})");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public string GetName()
|
||||
{
|
||||
@@ -226,8 +179,6 @@ public class CECNPC : CECObject
|
||||
new Vector2(m_vServerPos.x, m_vServerPos.z),
|
||||
new Vector2(pHost.transform.position.x, pHost.transform.position.z));
|
||||
}
|
||||
|
||||
UpdateTaskIcon();
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -561,13 +512,6 @@ public class CECNPC : CECObject
|
||||
{
|
||||
StartAdjustTransparency(-1.0f, GetTransparentLimit(), 500);
|
||||
}
|
||||
|
||||
_timerCheckTask += Time.deltaTime;
|
||||
if (_timerCheckTask > 1.0f)
|
||||
{
|
||||
_timerCheckTask = 0;
|
||||
UpdateTaskIcon();
|
||||
}
|
||||
}
|
||||
|
||||
private void TickWork_Dead(float deltaTime)
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
using BrewMonster;
|
||||
using BrewMonster.Network;
|
||||
using BrewMonster.Scripts;
|
||||
using BrewMonster.Scripts.Task;
|
||||
using CSNetwork.GPDataType;
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
@@ -10,12 +13,17 @@ public class CECNPCServer : CECNPC
|
||||
{
|
||||
NPC_ESSENCE? m_pDBEssence;
|
||||
MONSTER_ESSENCE? m_pMonEssence;
|
||||
float m_fTaxRate = 0.05f; // Tax rate
|
||||
float m_fTaxRate = 0.05f; // Tax rate
|
||||
|
||||
private IconTaskType m_TaskIcon = IconTaskType.QI_NONE;
|
||||
private CECCounter m_TaskCounter = new CECCounter();
|
||||
|
||||
public override void SetUpCECNPC(CECNPCMan pNPCMan)
|
||||
{
|
||||
base.SetUpCECNPC(pNPCMan);
|
||||
m_iCID = (int)Class_ID.OCID_SERVER;
|
||||
m_pDBEssence = null;
|
||||
m_TaskCounter.SetPeriod(1000);
|
||||
}
|
||||
public override bool Init(int tid, in info_npc info, ReadOnlySpan<byte> packet, int infoOffset)
|
||||
{
|
||||
@@ -57,11 +65,20 @@ public class CECNPCServer : CECNPC
|
||||
transform.position = EC_Utility.ToVector3(info.pos);
|
||||
|
||||
StartWork((int)WorkType.WT_NOTHING, (int)WorkID.WORK_STAND);
|
||||
|
||||
UpdateTaskIcon();
|
||||
return true;
|
||||
}
|
||||
|
||||
protected override void Update()
|
||||
{
|
||||
base.Update();
|
||||
|
||||
if (m_TaskCounter.IncCounter(Time.deltaTime * 1000))
|
||||
{
|
||||
m_TaskCounter.Reset();
|
||||
UpdateCurTaskIcon();
|
||||
}
|
||||
}
|
||||
|
||||
// Get way point ID bound with this NPC
|
||||
public uint? GetWayPointID()
|
||||
{
|
||||
@@ -83,4 +100,222 @@ public class CECNPCServer : CECNPC
|
||||
{
|
||||
return 1.0f + m_pDBEssence.Value.tax_rate;
|
||||
}
|
||||
|
||||
private void UpdateCurTaskIcon()
|
||||
{
|
||||
var pHost = CECGameRun.Instance.GetHostPlayer();
|
||||
if (pHost == null || pHost.GetTaskInterface() == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (m_pDBEssence == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var pTaskMan = EC_Game.GetTaskTemplateMan();
|
||||
var pDataMan = ElementDataManProvider.GetElementDataMan();
|
||||
var pTask = pHost.GetTaskInterface();
|
||||
|
||||
const uint TASK_HAVE_COMPLETE = 0x10000000;
|
||||
const uint TASK_COMPLETE = 0x01;
|
||||
const uint TASK_INCOMPLETE = 0x02;
|
||||
const uint TASK_CANGET = 0x04;
|
||||
const uint TASK_CANNOTGET = 0x08;
|
||||
const uint TASK_COMPLETE_TYPE1 = 0x10;
|
||||
const uint TASK_CANGET_TYPE1 = 0x20;
|
||||
const uint TASK_COMPLETE_TYPE2 = 0x40;
|
||||
const uint TASK_CANGET_TYPE2 = 0x80;
|
||||
const uint TASK_COMPLETE_TYPE3 = 0x100;
|
||||
const uint TASK_CANGET_TYPE3 = 0x200;
|
||||
const uint TASK_COMPLETE_TYPE4 = 0x400;
|
||||
const uint TASK_CANGET_TYPE4 = 0x800;
|
||||
|
||||
m_TaskIcon = IconTaskType.QI_NONE;
|
||||
uint taskFlag = 0;
|
||||
|
||||
BMLogger.Log($"[UpdateCurTaskIcon] NPC {m_NPCInfo.nid}, id_task_in_service={m_pDBEssence.Value.id_task_in_service}, id_task_out_service={m_pDBEssence.Value.id_task_out_service}");
|
||||
if (m_pDBEssence.Value.id_task_in_service != 0)
|
||||
{
|
||||
DATA_TYPE dt = DATA_TYPE.DT_INVALID;
|
||||
var serviceData = pDataMan.get_data_ptr(m_pDBEssence.Value.id_task_in_service, ID_SPACE.ID_SPACE_ESSENCE, ref dt);
|
||||
|
||||
if (serviceData != null && dt == DATA_TYPE.DT_NPC_TASK_IN_SERVICE)
|
||||
{
|
||||
var inService = (NPC_TASK_IN_SERVICE)serviceData;
|
||||
|
||||
for (int i = 0; i < inService.id_tasks.Length; i++)
|
||||
{
|
||||
uint idTask = inService.id_tasks[i];
|
||||
if (idTask <= 0 || !pTask.HasTask(idTask))
|
||||
continue;
|
||||
|
||||
BMLogger.Log($"[UpdateCurTaskIcon] Check IN task {idTask}, HasTask={pTask.HasTask(idTask)}, CanFinish={pTask.CanFinishTask((idTask))}");
|
||||
|
||||
var pTaskTemp = pTaskMan.GetTaskTemplByID(idTask);
|
||||
if (pTaskTemp == null)
|
||||
continue;
|
||||
|
||||
if (pTask.CanFinishTask(idTask))
|
||||
{
|
||||
taskFlag |= TASK_HAVE_COMPLETE;
|
||||
|
||||
if (pTaskTemp.IsKeyTask())
|
||||
{
|
||||
m_TaskIcon = IconTaskType.QI_IN_K;
|
||||
BMLogger.Log($"[UpdateCurTaskIcon] Set icon QI_IN_K for task {idTask}");
|
||||
UpdateTaskIconUI();
|
||||
return;
|
||||
}
|
||||
else if (pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTEvent || pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTDaily)
|
||||
{
|
||||
taskFlag |= TASK_COMPLETE_TYPE3;
|
||||
}
|
||||
else if (pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTQiShaList)
|
||||
{
|
||||
taskFlag |= TASK_COMPLETE_TYPE2;
|
||||
}
|
||||
else if (pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTFaction || pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTFunction)
|
||||
{
|
||||
taskFlag |= TASK_COMPLETE_TYPE1;
|
||||
}
|
||||
else if (pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTMajor)
|
||||
{
|
||||
taskFlag |= TASK_COMPLETE_TYPE4;
|
||||
}
|
||||
else
|
||||
{
|
||||
taskFlag |= TASK_COMPLETE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
taskFlag |= TASK_INCOMPLETE;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ((taskFlag & TASK_HAVE_COMPLETE) != 0)
|
||||
{
|
||||
if ((taskFlag & TASK_COMPLETE_TYPE4) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_IN_TYPE4;
|
||||
else if ((taskFlag & TASK_COMPLETE_TYPE3) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_IN_TYPE3;
|
||||
else if ((taskFlag & TASK_COMPLETE_TYPE2) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_IN_TYPE2;
|
||||
else if ((taskFlag & TASK_COMPLETE) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_IN;
|
||||
else if ((taskFlag & TASK_COMPLETE_TYPE1) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_IN_TYPE1;
|
||||
|
||||
BMLogger.Log($"[UpdateCurTaskIcon] Set complete icon {m_TaskIcon}");
|
||||
UpdateTaskIconUI();
|
||||
return;
|
||||
}
|
||||
|
||||
if (m_pDBEssence.Value.id_task_out_service != 0)
|
||||
{
|
||||
DATA_TYPE dt = DATA_TYPE.DT_INVALID;
|
||||
var serviceData = pDataMan.get_data_ptr(
|
||||
m_pDBEssence.Value.id_task_out_service,
|
||||
ID_SPACE.ID_SPACE_ESSENCE,
|
||||
ref dt
|
||||
);
|
||||
|
||||
if (serviceData != null && dt == DATA_TYPE.DT_NPC_TASK_OUT_SERVICE)
|
||||
{
|
||||
var outService = (NPC_TASK_OUT_SERVICE)serviceData;
|
||||
|
||||
if (outService.storage_id != 0 && outService.storage_open_item != 0)
|
||||
{
|
||||
var pack = pHost.GetInventory(InventoryConst.IVTRTYPE_PACK);
|
||||
if (pack != null && pack.GetItemTotalNum((int)outService.storage_open_item) > 0)
|
||||
{
|
||||
taskFlag |= TASK_CANGET_TYPE2;
|
||||
}
|
||||
}
|
||||
|
||||
// Check normal tasks
|
||||
for (int i = 0; i < outService.id_tasks.Length; i++)
|
||||
{
|
||||
uint idTask = outService.id_tasks[i];
|
||||
if (idTask <= 0)
|
||||
continue;
|
||||
|
||||
BMLogger.Log($"[UpdateCurTaskIcon] Check OUT task {idTask}, CanShow={pTask.CanShowTask(idTask)}, CanDeliver={pTask.CanDeliverTask(idTask)}");
|
||||
|
||||
if (!pTask.CanShowTask(idTask))
|
||||
continue;
|
||||
|
||||
var pTaskTemp = pTaskMan.GetTaskTemplByID(idTask);
|
||||
if (pTaskTemp == null)
|
||||
continue;
|
||||
|
||||
if (pTask.CanDeliverTask(idTask) == 0)
|
||||
{
|
||||
if (pTaskTemp.IsKeyTask())
|
||||
{
|
||||
m_TaskIcon = IconTaskType.QI_OUT_K;
|
||||
BMLogger.Log($"[UpdateCurTaskIcon] Set icon QI_OUT_K for task {idTask}");
|
||||
UpdateTaskIconUI();
|
||||
return;
|
||||
}
|
||||
else if (pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTEvent || pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTDaily)
|
||||
{
|
||||
taskFlag |= TASK_CANGET_TYPE3;
|
||||
}
|
||||
else if (pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTQiShaList)
|
||||
{
|
||||
taskFlag |= TASK_CANGET_TYPE2;
|
||||
}
|
||||
else if (pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTFaction || pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTFunction)
|
||||
{
|
||||
taskFlag |= TASK_CANGET_TYPE1;
|
||||
}
|
||||
else if (pTaskTemp.GetType() == (uint)ENUM_TASK_TYPE.enumTTMajor)
|
||||
{
|
||||
taskFlag |= TASK_CANGET_TYPE4;
|
||||
}
|
||||
else
|
||||
{
|
||||
taskFlag |= TASK_CANGET;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
taskFlag |= TASK_CANNOTGET;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Set icon by available task priority
|
||||
if ((taskFlag & TASK_CANGET_TYPE4) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_OUT_TYPE4;
|
||||
else if ((taskFlag & TASK_CANGET_TYPE3) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_OUT_TYPE3;
|
||||
else if ((taskFlag & TASK_CANGET_TYPE2) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_OUT_TYPE2;
|
||||
else if ((taskFlag & TASK_CANGET) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_OUT;
|
||||
else if ((taskFlag & TASK_CANGET_TYPE1) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_OUT_TYPE1;
|
||||
else if ((taskFlag & TASK_INCOMPLETE) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_IN_N;
|
||||
else if ((taskFlag & TASK_CANNOTGET) != 0)
|
||||
m_TaskIcon = IconTaskType.QI_OUT_N;
|
||||
|
||||
BMLogger.Log($"[UpdateCurTaskIcon] Final icon {m_TaskIcon}, taskFlag={taskFlag}");
|
||||
UpdateTaskIconUI();
|
||||
}
|
||||
|
||||
private void UpdateTaskIconUI()
|
||||
{
|
||||
if(m_npcUI != null)
|
||||
{
|
||||
m_npcUI.SetTaskIcon(m_TaskIcon);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -300,96 +300,28 @@ namespace BrewMonster.Scripts.Task
|
||||
return tasks;
|
||||
}
|
||||
|
||||
// Add this method to ATaskTemplMan class if not exists
|
||||
public List<ATaskTempl> GetAllTopTasks()
|
||||
public int GetStorageRefreshPerDay(uint storageId)
|
||||
{
|
||||
List<ATaskTempl> topTasks = new List<ATaskTempl>();
|
||||
if (storageId == 0 || storageId > TaskInterfaceConstants.TASK_STORAGE_COUNT)
|
||||
return 0;
|
||||
|
||||
// Iterate through all task templates and collect top-level tasks
|
||||
// Assuming you have a dictionary or collection of all tasks
|
||||
foreach (var kvp in m_TaskTemplMap) // Replace with your actual collection name
|
||||
if (!m_StorageEssenseMap.TryGetValue(storageId, out uint essenceId))
|
||||
return 0;
|
||||
|
||||
DATA_TYPE dt = DATA_TYPE.DT_INVALID;
|
||||
var serviceData = m_pEleDataMan.get_data_ptr(
|
||||
essenceId,
|
||||
ID_SPACE.ID_SPACE_ESSENCE,
|
||||
ref dt
|
||||
);
|
||||
|
||||
if (serviceData != null && dt == DATA_TYPE.DT_NPC_TASK_OUT_SERVICE)
|
||||
{
|
||||
var templ = kvp.Value;
|
||||
if (templ != null && templ.m_pParent == null) // Top-level task has no parent
|
||||
{
|
||||
topTasks.Add(templ);
|
||||
}
|
||||
var outService = (NPC_TASK_OUT_SERVICE)serviceData;
|
||||
return (int)outService.storage_refresh_per_day;
|
||||
}
|
||||
|
||||
return topTasks;
|
||||
}
|
||||
|
||||
// Alternative method if you want to check by NPC ID directly
|
||||
public List<ATaskTempl> GetAvailableTasksForNPC(int npcID)
|
||||
{
|
||||
List<ATaskTempl> availableTasks = new List<ATaskTempl>();
|
||||
|
||||
foreach (var kvp in m_TaskTemplMap) // Replace with your actual collection name
|
||||
{
|
||||
var templ = kvp.Value;
|
||||
if (templ != null &&
|
||||
templ.m_pParent == null &&
|
||||
templ.m_FixedData.m_ulDelvNPC == npcID)
|
||||
{
|
||||
availableTasks.Add(templ);
|
||||
}
|
||||
}
|
||||
|
||||
return availableTasks;
|
||||
}
|
||||
|
||||
// Add this method to ATaskTemplMan class
|
||||
|
||||
/// <summary>
|
||||
/// Get all task templates (for iterating to find available tasks)
|
||||
/// Lấy tất cả task templates (để duyệt tìm nhiệm vụ có thể nhận)
|
||||
/// </summary>
|
||||
public List<ATaskTempl> GetAllTaskTemplates()
|
||||
{
|
||||
List<ATaskTempl> allTasks = new List<ATaskTempl>();
|
||||
|
||||
// Assuming you have a collection storing all task templates
|
||||
// Replace m_TaskMap with your actual collection name
|
||||
if (m_TaskTemplMap != null)
|
||||
{
|
||||
foreach (var kvp in m_TaskTemplMap)
|
||||
{
|
||||
if (kvp.Value != null)
|
||||
{
|
||||
allTasks.Add(kvp.Value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return allTasks;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get list of tasks delivered by a specific NPC
|
||||
/// </summary>
|
||||
public List<ATaskTempl> GetTasksFromNPC(int npcID)
|
||||
{
|
||||
var result = new List<ATaskTempl>();
|
||||
|
||||
// Check if NPC info map is available
|
||||
if (m_NPCInfoMap != null && m_NPCInfoMap.TryGetValue((uint)npcID, out var npcInfo))
|
||||
{
|
||||
return new List<ATaskTempl>();
|
||||
}
|
||||
else
|
||||
{
|
||||
// Fallback
|
||||
foreach (var kvp in m_TaskTemplMap)
|
||||
{
|
||||
var templ = kvp.Value;
|
||||
if (templ != null && templ.m_FixedData.m_ulDelvNPC == npcID)
|
||||
{
|
||||
result.Add(templ);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
return 0;
|
||||
}
|
||||
|
||||
// General method to read a struct from a FileStream
|
||||
|
||||
@@ -531,85 +531,6 @@ namespace BrewMonster.Scripts.Task
|
||||
return m_pActiveListBuf;
|
||||
}
|
||||
|
||||
// Trong file CECTaskInterface.cs
|
||||
|
||||
public bool HasTaskRelatedToNPC(int npcID)
|
||||
{
|
||||
// Check tasks is active
|
||||
ActiveTaskList activeList = GetActiveTaskList();
|
||||
if (activeList != null && activeList.m_TaskEntries != null)
|
||||
{
|
||||
for (int i = 0; i < activeList.m_uTaskCount; i++)
|
||||
{
|
||||
var entry = activeList.m_TaskEntries[i];
|
||||
if (entry == null) continue;
|
||||
|
||||
ATaskTempl templ = entry.GetTempl();
|
||||
if (templ == null) continue;
|
||||
|
||||
// Check if this NPC is the target of the task
|
||||
if (IsNPCTargetOfTask(templ, entry, npcID))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Check tasks new
|
||||
ATaskTemplMan taskMan = GetTaskTemplMan();
|
||||
if (taskMan != null)
|
||||
{
|
||||
List<ATaskTempl> npcTasks = taskMan.GetTasksFromNPC(npcID);
|
||||
if (npcTasks != null)
|
||||
{
|
||||
uint ulCurTime = GetCurTime();
|
||||
foreach (var templ in npcTasks)
|
||||
{
|
||||
// Check prerequisite
|
||||
if (templ.CheckPrerequisite(this, activeList, ulCurTime) == 0)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check NPC is target of the task
|
||||
private bool IsNPCTargetOfTask(ATaskTempl templ, ActiveTaskEntry entry, int npcID)
|
||||
{
|
||||
var data = templ.m_FixedData;
|
||||
|
||||
// Task completed case
|
||||
if (entry.IsFinished())
|
||||
{
|
||||
if (data.m_ulAwardNPC == npcID) return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
// NPC target
|
||||
if (data.m_ulNPCMoving == npcID) return true;
|
||||
|
||||
// Pos target
|
||||
if (data.m_ulNPCDestSite == npcID) return true;
|
||||
|
||||
// Security target
|
||||
if (data.m_ulNPCToProtect == npcID) return true;
|
||||
|
||||
if (data.m_enumMethod == (ulong)TaskCompletionMethod.enumTMTalkToNPC)
|
||||
{
|
||||
if (data.m_ulNPCMoving == 0 && data.m_ulAwardNPC == npcID)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
// private void InitActiveTaskList()
|
||||
// {
|
||||
// ActiveTaskList pLst = GetActiveTaskList();
|
||||
|
||||
@@ -5,6 +5,27 @@ using UnityEngine.UI;
|
||||
|
||||
namespace BrewMonster
|
||||
{
|
||||
|
||||
public enum IconTaskType
|
||||
{
|
||||
QI_NONE = -1,
|
||||
QI_OUT = 2, // task tu chan (nhan)
|
||||
QI_IN = 2, // task tu chan (hoan thanh)
|
||||
QI_OUT_N = 3, // chua du dieu kien nhan task
|
||||
QI_IN_N = 3, // task nhan nhung chua lam (chua xong)
|
||||
QI_OUT_K = 0, // chua biet
|
||||
QI_IN_K = 5, // chua biet
|
||||
|
||||
QI_OUT_TYPE1 = 5, // task bang hoi (nhan)
|
||||
QI_IN_TYPE1 = 5, // task bang hoi (hoan thanh)
|
||||
QI_OUT_TYPE2 = 1, // chua biet
|
||||
QI_IN_TYPE2 = 1, // chua biet
|
||||
QI_OUT_TYPE3 = -1, // task daily (nhan)
|
||||
QI_IN_TYPE3 = -1, // task daily (hoan thanh)
|
||||
QI_OUT_TYPE4 = 0, // task chinh (nhan)
|
||||
QI_IN_TYPE4 = 4, // task chinh (hoan thanh)
|
||||
}
|
||||
|
||||
public class UINPC : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private TextMeshProUGUI _nameText;
|
||||
@@ -13,6 +34,21 @@ namespace BrewMonster
|
||||
|
||||
[Header("List Icon Task")]
|
||||
[SerializeField] private GameObject _iconTaskMain;
|
||||
[SerializeField] private List<Sprite> _listIconTask;
|
||||
|
||||
private Image _cachedIconImage;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
if (_iconTaskMain != null)
|
||||
{
|
||||
_cachedIconImage = _iconTaskMain.GetComponent<Image>();
|
||||
if (_cachedIconImage == null)
|
||||
{
|
||||
BMLogger.LogError($"[UINPC] _iconTaskMain doesn't have Image component!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Start is called once before the first execution of Update after the MonoBehaviour is created
|
||||
public void SetName(string name)
|
||||
@@ -30,10 +66,30 @@ namespace BrewMonster
|
||||
_healthText.text = healthText;
|
||||
}
|
||||
|
||||
public void SetTaskIcon(IconTaskType iconType)
|
||||
{
|
||||
if (_iconTaskMain == null || _cachedIconImage == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
int iconIndex = (int)iconType;
|
||||
|
||||
if (iconIndex >= 0 && _listIconTask != null && iconIndex < _listIconTask.Count)
|
||||
{
|
||||
_cachedIconImage.sprite = _listIconTask[iconIndex];
|
||||
_iconTaskMain.SetActive(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
_iconTaskMain.SetActive(false);
|
||||
}
|
||||
}
|
||||
|
||||
public void SetTaskIconMain(bool isShow)
|
||||
{
|
||||
if(_iconTaskMain != null)
|
||||
if (_iconTaskMain != null)
|
||||
_iconTaskMain.SetActive(isShow);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 634 KiB After Width: | Height: | Size: 634 KiB |
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d2ab8e4bde76db4478aff9994361b46a
|
||||
guid: 4276d7122cfaf624f8aa32336fc90f1c
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
@@ -110,7 +110,7 @@ TextureImporter:
|
||||
serializedVersion: 2
|
||||
sprites:
|
||||
- serializedVersion: 2
|
||||
name: ChuTuyen_0
|
||||
name: iconTask1_0
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 201
|
||||
@@ -125,8 +125,8 @@ TextureImporter:
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 42af0f91f2269ff47b862dbb765d32f2
|
||||
internalID: -338310257
|
||||
spriteID: 3577b54168afc5242a9c02dce91f1260
|
||||
internalID: 1049366989
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
@@ -135,7 +135,7 @@ TextureImporter:
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: f1f78b52002efcf4da3264912e38dddb
|
||||
spriteID: 16fc5ffd47ee2f1429eb79e647db644d
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
@@ -145,7 +145,7 @@ TextureImporter:
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable:
|
||||
ChuTuyen_0: -338310257
|
||||
iconTask1_0: 1049366989
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
|
Before Width: | Height: | Size: 568 KiB After Width: | Height: | Size: 568 KiB |
@@ -1,12 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cd36f0d3de378e94caea2807302f7a18
|
||||
guid: 454cf3e89d0aaa54b9c60ca081ff5f46
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
@@ -37,13 +37,13 @@ TextureImporter:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 0
|
||||
wrapV: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteMode: 2
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
@@ -52,9 +52,9 @@ TextureImporter:
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
@@ -108,12 +108,34 @@ TextureImporter:
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
sprites:
|
||||
- serializedVersion: 2
|
||||
name: iconTask2_0
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 178
|
||||
y: 221
|
||||
width: 616
|
||||
height: 628
|
||||
alignment: 0
|
||||
pivot: {x: 0, y: 0}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
customData:
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 88c7b386a6be7bd4dbb002f3a93895a1
|
||||
internalID: -61588767
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
spriteID: a16d633ba72e5c04487f3be78b1735bc
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
@@ -122,7 +144,8 @@ TextureImporter:
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable: {}
|
||||
nameFileIdTable:
|
||||
iconTask2_0: -61588767
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
|
Before Width: | Height: | Size: 640 KiB After Width: | Height: | Size: 640 KiB |
@@ -0,0 +1,153 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 13278f4394269834cb244620cd66c803
|
||||
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: iconTask3_0
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 154
|
||||
y: 231
|
||||
width: 632
|
||||
height: 655
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
customData:
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 252520bbad7c9374e90d1c950b8482d6
|
||||
internalID: 1481922406
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: fdab89333c5e8344e98af4bef992c422
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable:
|
||||
iconTask3_0: 1481922406
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 158 KiB |
@@ -1,12 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7c5f76c428f533d4ca3a449e2bc02ff5
|
||||
guid: f666d782d2b84fa48912bb3166f214aa
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
@@ -37,13 +37,13 @@ TextureImporter:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 0
|
||||
wrapV: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteMode: 2
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
@@ -52,9 +52,9 @@ TextureImporter:
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
@@ -108,12 +108,34 @@ TextureImporter:
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
sprites:
|
||||
- serializedVersion: 2
|
||||
name: iconTask4_0
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 67
|
||||
y: 108
|
||||
width: 330
|
||||
height: 312
|
||||
alignment: 0
|
||||
pivot: {x: 0, y: 0}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
customData:
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 591aabfa2f20afb4ea7673f8c6f3b77b
|
||||
internalID: 799372409
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
spriteID: c8e66269510e1524eb24b5af756fb09f
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
@@ -122,7 +144,8 @@ TextureImporter:
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable: {}
|
||||
nameFileIdTable:
|
||||
iconTask4_0: 799372409
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
|
After Width: | Height: | Size: 112 KiB |
@@ -0,0 +1,153 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c27a0fab8aef4d74787fe56595601d9f
|
||||
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: iconTask5_0
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 169
|
||||
y: 91
|
||||
width: 247
|
||||
height: 246
|
||||
alignment: 0
|
||||
pivot: {x: 0, y: 0}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
customData:
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 81a887702ec996041a55a92f080c99e2
|
||||
internalID: 1342343447
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: ee5d2861e27ff8f43bb7b8face30c7bb
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable:
|
||||
iconTask5_0: 1342343447
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 192 KiB |
@@ -0,0 +1,153 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6deb3d497e3c2a44cb875be0f13bbf36
|
||||
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: iconTask6_0
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 93
|
||||
y: 79
|
||||
width: 313
|
||||
height: 343
|
||||
alignment: 0
|
||||
pivot: {x: 0, y: 0}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
customData:
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 18be220273ab7564389626093c9fa09a
|
||||
internalID: 1458661374
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 33b9f9e65720df144a10109ca92117d7
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable:
|
||||
iconTask6_0: 1458661374
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -147,7 +147,7 @@ RectTransform:
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3297168817873124018}
|
||||
m_LocalRotation: {x: -0.08684798, y: 0.24095127, z: 0.02165367, w: 0.9664011}
|
||||
m_LocalRotation: {x: -3.7702125e-16, y: 0.97228837, z: 0.23378475, w: 1.5679955e-15}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
@@ -255,7 +255,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &7509779512108699303
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -303,7 +303,7 @@ MonoBehaviour:
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: -338310257, guid: d2ab8e4bde76db4478aff9994361b46a, type: 3}
|
||||
m_Sprite: {fileID: 1049366989, guid: 4276d7122cfaf624f8aa32336fc90f1c, type: 3}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
@@ -362,6 +362,13 @@ MonoBehaviour:
|
||||
_healthText: {fileID: 0}
|
||||
_healthImage: {fileID: 0}
|
||||
_iconTaskMain: {fileID: 5100466107490290627}
|
||||
_listIconTask:
|
||||
- {fileID: 1049366989, guid: 4276d7122cfaf624f8aa32336fc90f1c, type: 3}
|
||||
- {fileID: -61588767, guid: 454cf3e89d0aaa54b9c60ca081ff5f46, type: 3}
|
||||
- {fileID: 1481922406, guid: 13278f4394269834cb244620cd66c803, type: 3}
|
||||
- {fileID: 799372409, guid: f666d782d2b84fa48912bb3166f214aa, type: 3}
|
||||
- {fileID: 1342343447, guid: c27a0fab8aef4d74787fe56595601d9f, type: 3}
|
||||
- {fileID: 1458661374, guid: 6deb3d497e3c2a44cb875be0f13bbf36, type: 3}
|
||||
--- !u!1 &6510845919681767284
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -388,7 +395,7 @@ RectTransform:
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6510845919681767284}
|
||||
m_LocalRotation: {x: 0.028356783, y: 0.9830809, z: 0.02226828, w: 0.17958853}
|
||||
m_LocalRotation: {x: 0.15080568, y: -0.8027092, z: -0.16719593, w: 0.5522329}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
|
||||