添加示例项目
This commit is contained in:
11
示例项目/觉醒券/Proj.ifo
Normal file
11
示例项目/觉醒券/Proj.ifo
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"ProjectName": "觉醒券",
|
||||
"ProjectDescribe": "按官方的觉醒券来写,觉醒券道具可以复制 主线完成券 一类。",
|
||||
"ProjectAuthor": "zz",
|
||||
"ProjectVersion": 1.1,
|
||||
"ProjectConfig": "觉醒券.json",
|
||||
"ProjectFiles": [
|
||||
"觉醒券.nut"
|
||||
],
|
||||
"ProjectRunFunc": "_Dps_AWAKENING_Main_"
|
||||
}
|
||||
55
示例项目/觉醒券/觉醒券.json
Normal file
55
示例项目/觉醒券/觉醒券.json
Normal 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": "复仇者觉醒"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
57
示例项目/觉醒券/觉醒券.nut
Normal file
57
示例项目/觉醒券/觉醒券.nut
Normal 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");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user