From ab3832e7a560c4ae77a60dc8bd5e7a234129cc08 Mon Sep 17 00:00:00 2001 From: Lenheart <947330670@qq.com> Date: Tue, 21 Apr 2026 14:55:51 +0800 Subject: [PATCH] =?UTF-8?q?refactor(UI):=20=E4=BF=AE=E5=A4=8D=E4=B8=96?= =?UTF-8?q?=E7=95=8C=E5=9C=B0=E5=9B=BE=E7=BB=98=E5=88=B6=E7=B4=A2=E5=BC=95?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E5=B9=B6=E6=9B=B4=E6=96=B0=E6=8F=92=E4=BB=B6?= =?UTF-8?q?=E5=8C=85=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复RepairWorldMap.nut中地图标记绘制索引问题,使用独立DrawIndex变量替代Pos 重构FileConfig.json,将CSBaseScript替换为PackageBundle配置,添加三种插件包方案 --- FileConfig.json | 93 ++++++++++++++++------- Project/RepairWorldMap/RepairWorldMap.nut | 10 ++- 2 files changed, 73 insertions(+), 30 deletions(-) diff --git a/FileConfig.json b/FileConfig.json index 9f5f1df..d7dec7a 100644 --- a/FileConfig.json +++ b/FileConfig.json @@ -30,32 +30,73 @@ "Base/UI/Lenheart_Character_Info_Class.nut", "Base/Interface.nut" ], - "CSBaseScript": [ - "CSBase/_ENUM/_ENUM_.nut", - "CSBase/_Tool/Json_Class.nut", - "CSBase/_Tool/Packet_Class.nut", - "CSBase/_Tool/BaseTool_Class.nut", - "CSBase/_Tool/MemoryClass.nut", - "CSBase/_Tool/Hacker_Class.nut", - "CSBase/_Tool/Hacker_RegApi.nut", - "CSBase/_Tool/Script_Class.nut", - "CSBase/_Tool/Image_Class.nut", - "CSBase/_Tool/Animation_Class.nut", - "CSBase/CallBack/PackControl.nut", - "CSBase/CallBack/DrawMain.nut", - "CSBase/CallBack/DrawHudMain.nut", - "CSBase/CallBack/PushDamage.nut", - "CSBase/CallBack/GetDamageRate.nut", - "CSBase/_Z_Data/CharacterInfoData.nut", - "CSBase/UI/Lenheart_Cursor_Class.nut", - "CSBase/UI/OldWindowsMap.nut", - "CSBase/UI/Lenheart_UI_Class.nut", - "CSBase/UI/Lenheart_Ani_Class.nut", - "CSBase/UI/Lenheart_Each_Class.nut", - "CSBase/UI/Lenheart_Event_Class.nut", - "CSBase/UI/Lenheart_Character_Info_Class.nut", - "CSBase/Interface.nut" - ], + "PackageBundle": { + "gold_bundle": { + "PackageAlias": "黄金插件包", + "PackageAuthor": "官方", + "PackageVersion": "1.0", + "PackageDescribe": "包含常用双端插件的组合包,该插件包无包安装服务,需要一定基础自行安装。(如需远程安装需单独支付费用)", + "PackagePrice": 50, + "PackageThumb": "/package/starter_bundle/thumb.png", + "Items": [ + "世界BOSS", + "伤害控制", + "土罐", + "圣者遗物箱", + "战令", + "战力系统", + "换装系统", + "收集箱", + "皮肤仓库", + "累计奖励", + "荒古遗尘装备" + ] + }, + "diamond_bundle": { + "PackageAlias": "钻石插件包", + "PackageAuthor": "官方", + "PackageVersion": "1.0", + "PackageDescribe": "包含常用双端插件的组合包 + 一个团本插件,该插件包无包安装服务,需要一定基础自行安装。(如需远程安装需单独支付费用)", + "PackagePrice": 100, + "Items": [ + "世界BOSS", + "伤害控制", + "土罐", + "圣者遗物箱", + "战令", + "战力系统", + "换装系统", + "收集箱", + "皮肤仓库", + "累计奖励", + "荒古遗尘装备", + "安图恩" + ] + }, + "ultimate_bundle": { + "PackageAlias": "至臻插件包", + "PackageAuthor": "官方", + "PackageVersion": "1.0", + "PackageDescribe": "包含所有插件,该插件包无包安装服务,需要一定基础自行安装。(如需远程安装需单独支付费用)", + "PackagePrice": 200, + "Items": [ + "世界BOSS", + "伤害控制", + "土罐", + "圣者遗物箱", + "战令", + "战力系统", + "换装系统", + "收集箱", + "皮肤仓库", + "累计奖励", + "荒古遗尘装备", + "安图恩", + "卢克", + "超时空" + ] + } + }, "ProjectScript": { "换装系统": { "price": 20, diff --git a/Project/RepairWorldMap/RepairWorldMap.nut b/Project/RepairWorldMap/RepairWorldMap.nut index d9bd63f..988f46e 100644 --- a/Project/RepairWorldMap/RepairWorldMap.nut +++ b/Project/RepairWorldMap/RepairWorldMap.nut @@ -92,16 +92,18 @@ class RepairWorldMapC extends LenheartNewUI_Windows { L_sq_DrawCode(Info[AreaId].Name, 135 + YosinWorldMapX, 10 + YosinWorldMapY, 0xFFFFFFFF, 1, 1); if (TabbarFlag) { + local DrawIndex = 0; foreach(Pos, Value in Info) { - L_sq_DrawImg("interface/minimap_minimap_town.img", 9, 131 + YosinWorldMapX, 25 + (Pos * 18) + YosinWorldMapY); + L_sq_DrawImg("interface/minimap_minimap_town.img", 9, 131 + YosinWorldMapX, 25 + (DrawIndex * 18) + YosinWorldMapY); // L_sq_DrawWindow(128, 24 + (Pos * 18), 108, 10, "interface/lenheartwindowcommon.img", 97, 11, 12, 11, 13); - L_sq_DrawCode(Value.Name, 135 + YosinWorldMapX, 28 + (Pos * 18) + YosinWorldMapY, 0xFFFFFFFF, 1, 1); - if (sq_IsIntersectRect(IMouse.GetXPos(), IMouse.GetYPos(), 1, 1, 131 + YosinWorldMapX, 25 + (Pos * 18) + YosinWorldMapY, 108, 18)) { + L_sq_DrawCode(Value.Name, 135 + YosinWorldMapX, 28 + (DrawIndex * 18) + YosinWorldMapY, 0xFFFFFFFF, 1, 1); + if (sq_IsIntersectRect(IMouse.GetXPos(), IMouse.GetYPos(), 1, 1, 131 + YosinWorldMapX, 25 + (DrawIndex * 18) + YosinWorldMapY, 108, 18)) { MarkFlag = Pos; L_sq_SetDrawImgModel(2, 0); - L_sq_DrawImg("interface/minimap_minimap_town.img", 16, 131 + YosinWorldMapX, 25 + (Pos * 18) + YosinWorldMapY); + L_sq_DrawImg("interface/minimap_minimap_town.img", 16, 131 + YosinWorldMapX, 25 + (DrawIndex * 18) + YosinWorldMapY); L_sq_ReleaseDrawImgModel(); } + DrawIndex++; } } }