添加示例项目

This commit is contained in:
2026-04-16 16:27:53 +08:00
parent 69a2141804
commit 721fb5a992
192 changed files with 10148 additions and 0 deletions

View File

@@ -0,0 +1,11 @@
{
"ProjectName": "觉醒券",
"ProjectDescribe": "按官方的觉醒券来写,觉醒券道具可以复制 主线完成券 一类。",
"ProjectAuthor": "zz",
"ProjectVersion": 1.1,
"ProjectConfig": "觉醒券.json",
"ProjectFiles": [
"觉醒券.nut"
],
"ProjectRunFunc": "_Dps_AWAKENING_Main_"
}

View File

@@ -0,0 +1,55 @@
{
"config_meta": {
"comment": "觉醒道具功能配置表 v1.0",
"author": "zz",
"create_date": "2025-05-08"
},
"awaken_items": {
"8020": {
"job": 7,
"grow": 1,
"comment": "男气功觉醒"
},
"8021": {
"job": 7,
"grow": 3,
"comment": "男街霸觉醒"
},
"8022": {
"job": 7,
"grow": 2,
"comment": "男散打觉醒"
},
"8024": {
"job": 7,
"grow": 4,
"comment": "男柔道觉醒"
},
"2024051421": {
"job": 9,
"grow": 1,
"comment": "驭剑士觉醒"
},
"2024051422": {
"job": 9,
"grow": 3,
"comment": "契魔者觉醒"
},
"2024051423": {
"job": 8,
"grow": 2,
"comment": "冰结师觉醒"
},
"2024051424": {
"job": 8,
"grow": 1,
"comment": "元素爆破觉醒"
},
"2024051418": {
"job": 4,
"grow": 4,
"comment": "复仇者觉醒"
}
}
}

View File

@@ -0,0 +1,57 @@
// =================== 加载觉醒配置 ===================
local awakenConfig = GlobalConfig.Get("觉醒券.json");
local AWAKEN_ITEMS = {};
// 转换字符串键到整型键
foreach(keyStr, config in awakenConfig.awaken_items) {
try {
AWAKEN_ITEMS[keyStr.tointeger()] <- config;
} catch(e) {
::print("[觉醒配置错误] 无效的ID格式: " + keyStr + "\n");
}
}
// =================== 觉醒处理函数 ===================
function HandleAwakening(SUser, ItemId) {
// 安全校验
if (!(ItemId in AWAKEN_ITEMS)) {
return SendClassChangeError(SUser, "无效的觉醒道具", ItemId);
}
local config = AWAKEN_ITEMS[ItemId];
local curJob = SUser.GetCharacJob();
local curGrow = SUser.GetCharacGrowType();
local curAwaken = SUser.GetCharacSecondGrowType();
// 获取转职配置
local config = AWAKEN_ITEMS[ItemId];
// 条件检查
if (SUser.GetCharacLevel() < 50)
return SendClassChangeError(SUser, "角色等级不足50级", ItemId);
if (curJob != config.job)
return SendClassChangeError(SUser, "职业不符无法觉醒!", ItemId);
if (curGrow == 0)
return SendClassChangeError(SUser, "请先完成转职!", ItemId);
if (curGrow == config.grow + 16)
return SendClassChangeError(SUser, "已经处于该觉醒状态!", ItemId);
// 执行觉醒
SUser.ChangeGrowType(config.grow, 1); // 假设第二个参数为觉醒标志
SUser.InitSkillW(1, 1);
SUser.SendNotiPacket(0, 2, 0);
SUser.SendNotiPacketMessage("觉醒成功!", 0);
}
// =================== 初始化注册 ===================
function _Dps_AWAKENING_Main_() {
if ("awaken_items" in awakenConfig) {
foreach(itemId, _ in AWAKEN_ITEMS) {
Cb_Use_Item_Sp_Func[itemId] <- HandleAwakening;
}
::print("[觉醒系统] 载入觉醒券数量: " + AWAKEN_ITEMS.len() + "\n");
} else {
::print("[觉醒系统错误] 配置缺失 awaken_items 节点\n");
}
}