function I4810312_GiftBag(MapID, InstanceID, TypeID, TargetID) --玩家ID, 生成物品TypeID,数量,品质,生成模式,log用网络消息枚举 local r = math.random(21000) local temp = 0 local index = 1 local tbl = {} tbl[1] = {4090011,5,0,1000} tbl[2] = {4090010,5,0,1000} tbl[3] = {4810311,5,0,1000} tbl[4] = {4810311,50,0,1000} tbl[5] = {4810311,100,0,1000} tbl[6] = {3070002,1,0,1000} tbl[7] = {4820256,1,0,1000} tbl[8] = {4820061,5,0,1000} tbl[9] = {3500041,3,0,1000} tbl[10] = {4820180,1,0,1000} tbl[11] = {3500208,1,0,1000} tbl[12] = {3500207,1,0,1000} tbl[13] = {3500204,1,0,1000} tbl[14] = {3500048,5,0,1000} tbl[15] = {4820274,1,0,1000} tbl[16] = {4820180,2,0,1000} tbl[17] = {4800234,1,0,1000} tbl[18] = {4820262,100,0,1000} tbl[19] = {4820162,1,0,1000} tbl[20] = {3020060,1,0,1000} tbl[21] = {4810183,20,0,500} for i = 1,#tbl do temp = temp + tbl[i][4] if temp >= r then index = i break end end role.AddRoleItem(MapID, InstanceID, TargetID, tbl[index][1], tbl[index][2], tbl[index][3], 8, 420) end function I4810312_CanUseGiftBag(MapID, InstanceID, TypeID, TargetID) local bRet, bIgnore = 0, false --判断背包空闲空间是否足够 local FreeSize = role.GetBagFreeSize(TargetID) if(FreeSize < 2) then --提示玩家背包空间不足 bRet = 40 end return bRet, bIgnore end aux.RegisterItemEvent(4810312, 1, "I4810312_GiftBag") aux.RegisterItemEvent(4810312, 0, "I4810312_CanUseGiftBag")