feat(偷窃系统): 添加新的偷窃系统功能

- 在FileConfig.json中添加偷窃系统配置
- 实现偷窃系统核心逻辑,包括物品消耗、奖励随机获取和每日重置
- 优化_PVF_Data_类的Seek和Get方法
- 修改Use_Item_Sp.nut中的回调函数为异步执行
- 更新测试命令功能,替换物品掉落为窗口通知
This commit is contained in:
2026-04-14 13:15:07 +08:00
parent aac9cd20c7
commit 69a2141804
5 changed files with 398 additions and 20 deletions

View File

@@ -63,40 +63,38 @@ class _PVF_Data_ {
function Last() {
if (Pos > 0) {
Pos--;
return Get();
return Data[Pos];
}
return null;
}
function Seek(i) {
if (Pos > 0 && Pos<(Max - 1)) {
Pos = i;
}
if (i < 0)
i = 0;
else if (i > Max)
i = Max;
Pos = i;
}
function Seekg(i) {
Pos += i;
Seek(Pos + i);
}
function Get() {
local Ret = Data[Pos];
if (Pos<(Max - 1)) {
Pos++;
if (Pos >= Max) {
return null;
}
local Ret = Data[Pos];
Pos++;
return Ret;
}
function Eof() {
if (Pos == Max - 1)
return true;
return Pos >= Max;
}
function Next() {
if (Pos<(Max - 1)) {
Pos++;
return Get();
}
return null;
return Get();
}
}
@@ -217,4 +215,4 @@ class GlobaData {
}
}
getroottable().ScriptData <- GlobaData();
getroottable().ScriptData <- GlobaData();

View File

@@ -22,7 +22,9 @@ Cb_History_ItemDown_Func["UseSharedEffectItem"] <- function(SUser, Data) {
local ItemId = Data[15].tointeger();
if (ItemId in Cb_Use_Item_Sp_Func) {
if (SUser) {
Cb_Use_Item_Sp_Func[ItemId](SUser, ItemId);
Timer.SetTimeOut(function() {
Cb_Use_Item_Sp_Func[ItemId](SUser, ItemId);
}, 1);
}
}
}