上架装备跨界

This commit is contained in:
lenheart
2025-12-15 16:46:23 +08:00
parent ef2f161d36
commit 3bcc8e5323
5 changed files with 315 additions and 32 deletions

View File

@@ -190,4 +190,36 @@ class Inven extends Base_C_Object {
}
return false;
}
//获取背包中指定ID的道具数量
function GetCountById(ItemId) {
local num = 0;
if (ItemId == 0) {
num = GetMoney();
} else {
local SlotIdx = GetSlotById(ItemId);
local SlotItem = GetSlot(1, SlotIdx);
if (SlotItem != null && SlotItem.GetIndex() == ItemId) {
local Count = 1;
if (SlotItem.GetType() != "装备") {
Count = SlotItem.GetAdd_Info();
}
return Count;
}
for (local i = 0; i< 120; i++) {
local ItemObj = GetSlot(3, i);
if (ItemObj != null && ItemObj.GetIndex() == ItemId) {
num++;
}
ItemObj = GetSlot(2, i);
if (ItemObj != null && ItemObj.GetIndex() == ItemId) {
num++;
}
};
return num;
}
}
}

View File

@@ -5,6 +5,7 @@
文件用途:服务端核心类
*/
Dps_Self_Ip <- "";
function removeBackslashes(str) {
local result = "";
local index = 0;
@@ -367,41 +368,41 @@ class ServerControl {
if (SUser) {
local InvenObj = SUser.GetInven();
local InvenObj = SUser.GetInven();
//获取背包对象
if(ItemId == 0){
if (ItemId == 0) {
num = InvenObj.GetMoney();
num = InvenObj.GetMoney();
}else{
} else {
local SlotIdx = InvenObj.GetSlotById(ItemId);
local SlotIdx = InvenObj.GetSlotById(ItemId);
local SlotItem = InvenObj.GetSlot(1, SlotIdx);
if (SlotItem != null && SlotItem.GetIndex() == ItemId) {
local Count = 1;
if (SlotItem.GetType() != "装备") {
Count = SlotItem.GetAdd_Info();
local SlotItem = InvenObj.GetSlot(1, SlotIdx);
if (SlotItem != null && SlotItem.GetIndex() == ItemId) {
local Count = 1;
if (SlotItem.GetType() != "装备") {
Count = SlotItem.GetAdd_Info();
}
Jso.Count <- Count;
Jso.op = Jso.realop;
Socket.SendGateway(Jso);
return;
}
Jso.Count <- Count;
Jso.op = Jso.realop;
Socket.SendGateway(Jso);
return;
for (local i = 0; i< 120; i++) {
local ItemObj = InvenObj.GetSlot(3, i);
if (ItemObj != null && ItemObj.GetIndex() == ItemId) {
num++;
}
ItemObj = InvenObj.GetSlot(2, i);
if (ItemObj != null && ItemObj.GetIndex() == ItemId) {
num++;
}
};
}
for (local i = 0; i< 120; i++) {
local ItemObj = InvenObj.GetSlot(3, i);
if (ItemObj != null && ItemObj.GetIndex() == ItemId) {
num++;
}
ItemObj = InvenObj.GetSlot(2, i);
if (ItemObj != null && ItemObj.GetIndex() == ItemId) {
num++;
}
};
}
}
Jso.Count <- num;