this script work ok but don't add all reward, receives only the first item
tfs 1.2
tfs 1.2
LUA:
local rewards = {
[19001] = {
storage = 55555,
items = {
{itemId = 18415, count = 1},
{itemId = 18423, count = 1000}
},
},
[19002] = {
storage = 55555,
items = {
{itemId = 18415, count = 1},
{itemId = 18423, count = 1000}
},
},
[19003] = {
storage = 55555,
items = {
{itemId = 18415, count = 1},
{itemId = 18423, count = 1000}
},
},
[19004] = {
storage = 55555,
items = {
{itemId = 11400, count = 1},
{itemId = 18423, count = 1000}
},
}
}
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
local reward = rewards[item.uid]
for i = 1, #reward.items do
local items = reward.items[i]
if player:getStorageValue(reward.storage) < 1 then
if player:getFreeCapacity() > item:getWeight(items.itemId, items.count) then
player:addItem(items.itemId, items.count)
player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You have found ".. items.count .." ".. item:getName(items.itemId) ..".")
player:getPosition():sendMagicEffect(CONST_ME_MAGIC_RED)
player:setStorageValue(reward.storage, 1)
else
player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You have found ".. item:getName(items.itemId) .." but has ".. item:getWeight(items.itemId, items.count) .." free capacity.")
end
else
player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "The chest is empty.")
end
end
return true
end
Last edited: