diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/3d66Mat-8735974-maps-4.jpg.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/3d66Mat-8735974-maps-4.jpg.meta index 6e823c73..df92c6b7 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/3d66Mat-8735974-maps-4.jpg.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/3d66Mat-8735974-maps-4.jpg.meta @@ -7,7 +7,7 @@ TextureImporter: mipmaps: mipMapMode: 0 enableMipMap: 1 - sRGBTexture: 1 + sRGBTexture: 0 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -53,7 +53,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 1 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Plaster_Bare1_2k_n_1.jpg.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Plaster_Bare1_2k_n_1.jpg.meta index a0c9080a..6d5aab0f 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Plaster_Bare1_2k_n_1.jpg.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Plaster_Bare1_2k_n_1.jpg.meta @@ -7,7 +7,7 @@ TextureImporter: mipmaps: mipMapMode: 0 enableMipMap: 1 - sRGBTexture: 1 + sRGBTexture: 0 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -53,7 +53,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 1 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Plaster_Bare2_2k_n_1.jpg.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Plaster_Bare2_2k_n_1.jpg.meta index ff1182ec..02faa476 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Plaster_Bare2_2k_n_1.jpg.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Plaster_Bare2_2k_n_1.jpg.meta @@ -7,7 +7,7 @@ TextureImporter: mipmaps: mipMapMode: 0 enableMipMap: 1 - sRGBTexture: 1 + sRGBTexture: 0 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -53,7 +53,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 1 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Road_RoadsWithLines_2k_n_1.jpg.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Road_RoadsWithLines_2k_n_1.jpg.meta index 21d08642..54a1f565 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Road_RoadsWithLines_2k_n_1.jpg.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Road_RoadsWithLines_2k_n_1.jpg.meta @@ -7,7 +7,7 @@ TextureImporter: mipmaps: mipMapMode: 0 enableMipMap: 1 - sRGBTexture: 1 + sRGBTexture: 0 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -53,7 +53,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 1 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_GrimeyPlaster_2k_n_1.jpg.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_GrimeyPlaster_2k_n_1.jpg.meta index bc02cd9a..deaa5813 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_GrimeyPlaster_2k_n_1.jpg.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_GrimeyPlaster_2k_n_1.jpg.meta @@ -7,7 +7,7 @@ TextureImporter: mipmaps: mipMapMode: 0 enableMipMap: 1 - sRGBTexture: 1 + sRGBTexture: 0 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -53,7 +53,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 1 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_PaintedWoodBaseboard_2k_n7_1_2.png.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_PaintedWoodBaseboard_2k_n7_1_2.png.meta index bde0a681..4c0874c8 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_PaintedWoodBaseboard_2k_n7_1_2.png.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_PaintedWoodBaseboard_2k_n7_1_2.png.meta @@ -7,7 +7,7 @@ TextureImporter: mipmaps: mipMapMode: 0 enableMipMap: 1 - sRGBTexture: 1 + sRGBTexture: 0 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -53,7 +53,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 1 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_WallpaperFlourishes_2k_n_1.jpg.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_WallpaperFlourishes_2k_n_1.jpg.meta index 3138252e..360a20d9 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_WallpaperFlourishes_2k_n_1.jpg.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/Wall_WallpaperFlourishes_2k_n_1.jpg.meta @@ -7,7 +7,7 @@ TextureImporter: mipmaps: mipMapMode: 0 enableMipMap: 1 - sRGBTexture: 1 + sRGBTexture: 0 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -53,7 +53,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 1 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/caochang_Normal.png.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/caochang_Normal.png.meta index 346006e9..55a30aa2 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/caochang_Normal.png.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/caochang_Normal.png.meta @@ -7,7 +7,7 @@ TextureImporter: mipmaps: mipMapMode: 0 enableMipMap: 1 - sRGBTexture: 1 + sRGBTexture: 0 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -53,7 +53,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 1 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/cgaxis_pbr_13_wood_7_normal.jpg.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/cgaxis_pbr_13_wood_7_normal.jpg.meta index 287c2499..ab128fed 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/cgaxis_pbr_13_wood_7_normal.jpg.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/cgaxis_pbr_13_wood_7_normal.jpg.meta @@ -7,7 +7,7 @@ TextureImporter: mipmaps: mipMapMode: 0 enableMipMap: 1 - sRGBTexture: 1 + sRGBTexture: 0 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -53,7 +53,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 1 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/chengse_n.png.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/chengse_n.png.meta index 3786d8c7..7429cded 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/chengse_n.png.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/chengse_n.png.meta @@ -7,7 +7,7 @@ TextureImporter: mipmaps: mipMapMode: 0 enableMipMap: 1 - sRGBTexture: 1 + sRGBTexture: 0 linearTexture: 0 fadeOut: 0 borderMipMap: 0 @@ -53,7 +53,7 @@ TextureImporter: alphaUsage: 1 alphaIsTransparency: 0 spriteTessellationDetail: -1 - textureType: 0 + textureType: 1 textureShape: 1 singleChannelComponent: 0 flipbookRows: 1 diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/school03.fbx b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/school04.fbx similarity index 56% rename from xiaofang/Assets/Prefabs/HYLPrefabs/Map/school03.fbx rename to xiaofang/Assets/Prefabs/HYLPrefabs/Map/school04.fbx index f6aa386e..9e53f161 100644 Binary files a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/school03.fbx and b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/school04.fbx differ diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/school03.fbx.meta b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/school04.fbx.meta similarity index 98% rename from xiaofang/Assets/Prefabs/HYLPrefabs/Map/school03.fbx.meta rename to xiaofang/Assets/Prefabs/HYLPrefabs/Map/school04.fbx.meta index bf0638fc..980739e2 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/Map/school03.fbx.meta +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/Map/school04.fbx.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: eec919b17e074b747899fe01d7888a2c +guid: 0c9b084f2070bda45b87da961d2eb0f6 ModelImporter: serializedVersion: 21300 internalIDToNameTable: [] diff --git a/xiaofang/Assets/Prefabs/HYLPrefabs/TaskItem.cs b/xiaofang/Assets/Prefabs/HYLPrefabs/TaskItem.cs index 36240f90..910089e3 100644 --- a/xiaofang/Assets/Prefabs/HYLPrefabs/TaskItem.cs +++ b/xiaofang/Assets/Prefabs/HYLPrefabs/TaskItem.cs @@ -1,94 +1,77 @@ using System; -using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; -public enum TaskStatus +public enum TaskState { - NotAccepted, // 未接受 - InProgress, // 进行中 - Completed, // 已完成 - Failed // 失败 + NotStarted, // 未开始 + InProgress, // 进行中 + Completed, // 已完成 + Failed // 失败 } + public class TaskItem : MonoBehaviour { - public int taskId; - public string taskName; - public TaskStatus status; - public List triggers; // 存储任务触发条件 + public int taskId; // 任务ID + public string taskName; // 任务名称 + public TaskState state; // 任务状态 + public Text taskTxt; // 任务描述文本 - public JSONReader jr; + public List Targets = new List(); // 任务目标1列表 + private JSONReader jsonReader; // JSON 数据读取器 - public Text tasktxt; - - - - - - // Start is called before the first frame update - void Start() - { - - } - - //构造函数 - public TaskItem(int id, string name) + public void SetInfo(int id, JSONReader reader) { taskId = id; - taskName = name; - status = TaskStatus.NotAccepted; - triggers = new List(); + jsonReader = reader; + LoadTaskData(); } - // 设置任务状态 - public void SetStatus(TaskStatus newStatus) + private void LoadTaskData() { - status = newStatus; - } + Task_ info = jsonReader.GetTaskByID(taskId); + taskName = info.Note; + state = TaskState.NotStarted; - private void OnClickButton() - { - - } - - //初始化任务的属性 - public void SetInfo(int id,JSONReader js) - { - taskId = id; - jr = js; + //// 从JSON加载目标 + //foreach (var target in info.Targets) + //{ + // Targets.Add(new TaskTarget((TargetType)target.TargetType, target.TargetID, target.Description, target.RequiredProgress)); + //} UpdateTxt(); } - //更新Text - void UpdateTxt() + // 更新任务描述文本 + public void UpdateTxt() { + string progressInfo = ""; + foreach (var target in Targets) + { + progressInfo += $"{target.Description}: {target.CurrentProgress}/{target.RequiredProgress}\n"; + } - Task_ info = jr.GetTaskByID(taskId); - //Debug.Log(info); - tasktxt.text = info.Note; - + taskTxt.text = $"{taskName}\n{progressInfo}"; } - // 添加触发条件 - public void AddTrigger(int triggerType, string value) + // 更新任务进度 + public void UpdateProgress(TargetType targetType, string targetId, int value) { - triggers.Add(triggerType); - } + TaskTarget target = Targets.Find(t => t.Type == targetType && t.TargetID == targetId); + if (target != null) + { + target.UpdateProgress(value); + UpdateTxt(); - - // 任务完成时调用的函数 - public void OnTaskCompleted() - { - TaskPanel.instance.RemoveTask(taskId); - } - - // Update is called once per frame - void Update() - { - + // 检查是否所有目标已完成 + if (Targets.TrueForAll(t => t.IsCompleted)) + { + state = TaskState.Completed; + TaskPanel.instance.RemoveTask(taskId); + } + } } } diff --git a/xiaofang/Assets/ProtoBuf/test.cs b/xiaofang/Assets/ProtoBuf/test.cs index 67331ea7..226a0449 100644 --- a/xiaofang/Assets/ProtoBuf/test.cs +++ b/xiaofang/Assets/ProtoBuf/test.cs @@ -346,7 +346,24 @@ public class test : MonoBehaviour wEBScriptListener.SendMessageByte(sendData); } - + public void CreateNpcHandler() + { + NpcCreateRequest data = new NpcCreateRequest(); + data.RoomId = "168888"; + data.SceneId = "9003"; + data.TemplateId = 2; + WSMessage msg = new WSMessage(); + msg.Module = "move"; + msg.ServiceName = "CreateNpcHandler"; + msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data)); + byte[] sendData = ProtoBufffer.Serialize(msg); + WSMessage deinfo = ProtoBufffer.DeSerialize(sendData); + NpcCreateRequest login = ProtoBufffer.DeSerialize(deinfo.Data.ToByteArray()); + Debug.Log("==========消息转发函数调用"); + //BroadcastFrameMsg.FramesFieldNumber + + wEBScriptListener.SendMessageByte(sendData); + } // Start is called before the first frame update @@ -492,7 +509,7 @@ public class test : MonoBehaviour TaskInfoResponse taskInfoResponse = userJoinResponse.TaskResponse; if (long.Parse(taskInfoResponse.ToUserId) == userJoinResponse.UserId)//当这个任务是当前玩家的任务时显示任务 { - TaskPanel.instance.SetInfo(int.Parse(taskInfoResponse.TaskId)); + //TaskPanel.instance.SetInfo(int.Parse(taskInfoResponse.TaskId)); } } @@ -533,13 +550,11 @@ public class test : MonoBehaviour Vector3 position = new Vector3(x, y, z); NPCController.instance.InitNPC(position, npcData); - - } if(npcData.Type == 2)//npc移动 { - Vector3 v = new Vector3(-float.Parse(npcData.X.ToString()), float.Parse(npcData.Y.ToString()), float.Parse(npcData.Z.ToString())); - foreach(var item in NPCController.instance.npcsList) + Vector3 v = new Vector3(float.Parse(npcData.X.ToString()), float.Parse(npcData.Y.ToString()), float.Parse(npcData.Z.ToString())); + foreach(RecuseNpc item in NPCController.instance.npcsList) { if(npcData.UserId == item.npcId) { diff --git a/xiaofang/Assets/Res/HYLUI/TaskPanel.cs b/xiaofang/Assets/Res/HYLUI/TaskPanel.cs index d45f8eb4..785f185e 100644 --- a/xiaofang/Assets/Res/HYLUI/TaskPanel.cs +++ b/xiaofang/Assets/Res/HYLUI/TaskPanel.cs @@ -8,155 +8,94 @@ using System.Threading.Tasks; public class TaskPanel : Base { - - public static TaskPanel instance; - public List taskIds = new List(); + public Transform contentTrans; // 任务列表容器 + public GameObject taskPrefab; // 任务项预制体 + public JSONReader JSONReader; // JSON 数据读取类 - public Transform contentTrans; + public RectTransform buttonRect; // 按钮 RectTransform + public Button hideBtn; // 隐藏按钮 - public GameObject taskPrefab; + private bool isHidden = false; // 是否隐藏状态 + public float moveDuration = 0.5f; + public float hidePositionX = 125f; + public float showPositionX = -198f; - public JSONReader JSONReader; + private List taskItems = new List(); // 当前显示的任务列表 - public Dictionary taskDic = new Dictionary(); - - public RectTransform buttonRect; // 你的按钮 RectTransform - - - public Button hideBtn; - - private bool isHidden = false; // 用来判断按钮是否已经隐藏 - - public float moveDuration = 0.5f; // 动画持续时间 - public float hidePositionX = 125f; // 隐藏到右边的 X 坐标值,具体值根据屏幕大小调整 - public float showPositionX = -198f; // 显示时按钮的 X 坐标值 - - public List