Ola, estou com um erro muito chato o meu shop esta funcionando normalmente da para comprar add novos itens e tal, porem quando vou comprar da transação completa mas não chega no personagem dentro do serve.. Alguém pode me ajudar ae
[Encerrado] Item comprado no shop não cai no char
14 minutos atrás, juio cesar disse:Ola, estou com um ero muito chato o meu shop esta funcionando normalmente da para comprar add novos itens e tal, porem quando vou comprar da transação completa mas não chega no personagem dentro do serve.. Alguém pode me ajudar ae
Amigo testa esse daqui
Globalevents/scripts cria um arquivo.lua com nome shop.lua e coloca esse script
function onThink(interval, lastExecution)
local result = db.getResult("SELECT * FROM shop_history WHERE `processed` = 0;")
if(result:getID() ~= -1) then
while(true) do
cid = getCreatureByName(tostring(result:getDataString("player")))
product = tonumber(result:getDataInt("product"))
itemr = db.getResult("SELECT * FROM shop_offer WHERE `id` = "..product..";")
if isPlayer(cid) then
local id = tonumber(itemr:getDataInt("item"))
local tid = tonumber(result:getDataInt("id"))
local count = tonumber(itemr:getDataInt("count"))
local tipe = tonumber(itemr:getDataInt("type"))
local productn = tostring(itemr:getDataString("name"))
if isInArray({5,8},tipe) then
if getPlayerFreeCap(cid) >= getItemWeightById(id, count) then
if isContainer(getPlayerSlotItem(cid, 3).uid) then
received = doAddContainerItem(getPlayerSlotItem(cid, 3).uid, id,count)
if received then
doPlayerSendTextMessage(cid,19, "Voce recebeu Um(a) >> "..productn.." << Do Shop")
db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";")
else
doPlayerSendTextMessage(cid,19, "Sorry, you don't have enough space on container to receive >> "..productn.." <<")
end
else
doPlayerSendTextMessage(cid,19, "Sorry, you don't have a container to receive >> "..productn.." <<")
end
else
doPlayerSendTextMessage(cid,19, "Sorry, you don't have enough capacity to receive >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)")
end
elseif isInArray({6,7},tipe) then
if tipe == 6 then
bcap = 8
bid = 1987
elseif tipe == 7 then
bcap = 20
bid = 1988
end
if isItemRune(id) then
count = 1
end
if getPlayerFreeCap(cid) >= (getItemWeightById(1987, 1) + getItemWeightById(id,count * bcap)) then
local bag = doCreateItemEx(bid, 1)
for i = 1,bcap do
doAddContainerItem(bag, id, count)
end
received = doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, bag)
if received == RETURNVALUE_NOERROR then
doPlayerSendTextMessage(cid,19, "Voce recebeu Um(a) >> "..productn.." << Do Shop")
db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";")
else
doPlayerSendTextMessage(cid,19, "Sorry, you don't have enough space to receive >> "..productn.." <<")
end
else
doPlayerSendTextMessage(cid,19, "Sorry, you don't have enough capacity to receive >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)")
end
end
end
itemr:free()
if not(result:next()) then
break
end
end
result:free()
end
return true
end
em globalevents.xml coloca a tag
<globalevent name="shop" interval="120" script="shop.lua"/>
se resolveu da REP +
3 minutos atrás, Duhisback disse:Amigo testa esse daqui
Globalevents/scripts cria um arquivo.lua com nome shop.lua e coloca esse script
function onThink(interval, lastExecution)
local result = db.getResult("SELECT * FROM shop_history WHERE `processed` = 0;")
if(result:getID() ~= -1) then
while(true) do
cid = getCreatureByName(tostring(result:getDataString("player")))
product = tonumber(result:getDataInt("product"))
itemr = db.getResult("SELECT * FROM shop_offer WHERE `id` = "..product..";")
if isPlayer(cid) then
local id = tonumber(itemr:getDataInt("item"))
local tid = tonumber(result:getDataInt("id"))
local count = tonumber(itemr:getDataInt("count"))
local tipe = tonumber(itemr:getDataInt("type"))
local productn = tostring(itemr:getDataString("name"))
if isInArray({5,8},tipe) then
if getPlayerFreeCap(cid) >= getItemWeightById(id, count) then
if isContainer(getPlayerSlotItem(cid, 3).uid) then
received = doAddContainerItem(getPlayerSlotItem(cid, 3).uid, id,count)
if received then
doPlayerSendTextMessage(cid,19, "Voce recebeu Um(a) >> "..productn.." << Do Shop")
db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";")
else
doPlayerSendTextMessage(cid,19, "Sorry, you don't have enough space on container to receive >> "..productn.." <<")
end
else
doPlayerSendTextMessage(cid,19, "Sorry, you don't have a container to receive >> "..productn.." <<")
end
else
doPlayerSendTextMessage(cid,19, "Sorry, you don't have enough capacity to receive >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)")
end
elseif isInArray({6,7},tipe) then
if tipe == 6 then
bcap = 8
bid = 1987
elseif tipe == 7 then
bcap = 20
bid = 1988
end
if isItemRune(id) then
count = 1
end
if getPlayerFreeCap(cid) >= (getItemWeightById(1987, 1) + getItemWeightById(id,count * bcap)) then
local bag = doCreateItemEx(bid, 1)
for i = 1,bcap do
doAddContainerItem(bag, id, count)
end
received = doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, bag)
if received == RETURNVALUE_NOERROR then
doPlayerSendTextMessage(cid,19, "Voce recebeu Um(a) >> "..productn.." << Do Shop")
db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";")
else
doPlayerSendTextMessage(cid,19, "Sorry, you don't have enough space to receive >> "..productn.." <<")
end
else
doPlayerSendTextMessage(cid,19, "Sorry, you don't have enough capacity to receive >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)")
end
end
end
itemr:free()
if not(result:next()) then
break
end
end
result:free()
end
return true
end
em globalevents.xml coloca a tag
se resolveu da REP +
[03/08/2018 19:55:31] [Error - LuaScriptInterface::loadFile] data/globalevents/scripts/shop.lua:10: unexpected symbol near '?'
[03/08/2018 19:55:31] [Warning - Event::loadScript] Cannot load script (data/globalevents/scripts/shop.lua)
[03/08/2018 19:55:31] data/globalevents/scripts/shop.lua:10: unexpected symbol near '?'
19 minutos atrás, juio cesar disse:[03/08/2018 19:55:31] [Error - LuaScriptInterface::loadFile] data/globalevents/scripts/shop.lua:10: unexpected symbol near '?'
[03/08/2018 19:55:31] [Warning - Event::loadScript] Cannot load script (data/globalevents/scripts/shop.lua)
[03/08/2018 19:55:31] data/globalevents/scripts/shop.lua:10: unexpected symbol near '?'
seu site é Gesior, modern, nicaw ou znot?
@Duhisback Modern
5 minutos atrás, juio cesar disse:Modern
Eu não manjo muito de script então estou tentando te ajudar com alguns servers que tenho aqui no pc que já tem esse script...
Testa esse!
function onThink() local r = db.getResult('SELECT * FROM shop_history WHERE processed=0') if r:getID() ~= -1 then repeat local cid = getPlayerByName(r:getDataString('player')) if isPlayer(cid) then local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK).uid if bp ~= 0 then local j = db.getResult('SELECT * FROM shop_offer WHERE id='..r:getDataInt('product')) if j:getID() ~= -1 then local id = tonumber(j:getDataInt('item')) local tid = tonumber(r:getDataInt('id')) local count = tonumber(j:getDataInt('count')) local tipe = tonumber(j:getDataInt('type')) local name = j:getDataString('name') if tipe == 5 or tipe == 8 then local w = getItemInfo(id).weight * count if getPlayerFreeCap(cid) >= w then if doAddContainerItemEx(bp, doCreateItemEx(id, count)) == 1 then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You have received >> '..name..' << from our shop system') db.executeQuery('UPDATE shop_history SET processed=1 WHERE id = ' .. tid) else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You don\'t have enough space in backpack to receive >> '..name..' <<') end else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'Sorry, you don\'t have enough capacity to receive >> '..name..' << (You need: '..getItemInfo(id).weight * count..' Capacity)') end elseif tipe == 6 or tipe == 7 then local bid, bcap = tipe == 6 and 1987 or 1988, tipe == 6 and 8 or 20 local w = getItemInfo(bid).weight + (getItemInfo(id).weight * count * bcap) if getPlayerFreeCap(cid) >= w then local c = doCreateItemEx(bid) for i = 1, bcap do doAddContainerItem(c, id, count) end if doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, c) == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You have received >> '..name..' << from our shop system') db.executeQuery('UPDATE shop_history SET processed=1 WHERE id='..tid) else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'Sorry, you don\'t have enough space to receive >> '..name..' <<') end else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'Sorry, you don\'t have enough capacity to receive >> '..name..' << (You need: '..w..' Capacity)') end end j:free() end else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You don\'t have a container in your backpack slot.') end end until not r:next() r:free() end return true end
ou
function doPlayerAddDepotItems(cid, items, town) if (not isPlayer(cid)) then error("Player not found") end local town = town or getPlayerTown(cid) local parcel = doCreateItemEx(ITEM_PARCEL) for item, count in pairs(items) do if (type(item) == "number") then local attritemid = doAddContainerItem(parcel, item, count) doItemSetAttribute(attritemid, "description", "This item belongs to ".. getPlayerName(cid) ..".") doItemSetAttribute(attritemid, "aid", getPlayerGUID(cid)+10000) elseif (type(item) == "string") then doAddContainerItem(parcel, getItemIdByName(item), count) else error("Undefinied type of item name") end end return doPlayerSendMailByName(getCreatureName(cid), parcel, town) end function onThink(interval, lastExecution, thinkInterval) local result = db.getResult("SELECT * FROM shop_history WHERE `processed` = 0;") if(result:getID() ~= -1) then while(true) do cid = getCreatureByName(tostring(result:getDataString("player"))) product = tonumber(result:getDataInt("product")) itemr = db.getResult("SELECT * FROM shop_offer WHERE `id` = "..product..";") if isPlayer(cid) then local id = tonumber(itemr:getDataInt("item")) local tid = tonumber(result:getDataInt("id")) local count = tonumber(itemr:getDataInt("count")) local tipe = tonumber(itemr:getDataInt("type")) local productn = tostring(itemr:getDataString("name")) if isInArray({5,8},tipe) then if getPlayerFreeCap(cid) >= getItemWeightById(id, count) then if isPlayer(cid) then received = doPlayerAddDepotItems(cid, {[id]=count}) if received then doPlayerSendTextMessage(cid,19, "You received "..productn.." in depot of your hometown.") db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";") doPlayerSave(cid) else doPlayerSendTextMessage(cid,19, "You need a free slot on container to receive "..productn..".") end else doPlayerSendTextMessage(cid,19, "You need a free container to receive "..productn..".") end else doPlayerSendTextMessage(cid,19, "You need "..getItemWeightById(id, count).." of free capacity to receive "..productn..".") end elseif isInArray({6,7},tipe) then if tipe == 6 then bcap = 8 bid = 1987 elseif tipe == 7 then bcap = 20 bid = 1988 end if isItemRune(id) then count = 1 end if getPlayerFreeCap(cid) >= (getItemWeightById(1987, 1) + getItemWeightById(id,count * bcap)) then local bag = doCreateItemEx(bid, 1) for i = 1,bcap do doAddContainerItem(bag, id, count) end received = doPlayerAddDepotItems(cid, bag) if received == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid,19, "You received "..productn.." in depot of your hometown.") db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";") doPlayerSave(cid) else doPlayerSendTextMessage(cid,19, "You need a free slot on container to receive "..productn..".") end else doPlayerSendTextMessage(cid,19, "You need "..getItemWeightById(id, count).." of free capacity to receive "..productn..".") end end end itemr:free() if not(result:next()) then break end end result:free() end return true end
2 minutos atrás, Duhisback disse:Eu não manjo muito de script então estou tentando te ajudar com alguns servers que tenho aqui no pc que já tem esse script...
Testa esse!
function onThink() local r = db.getResult('SELECT * FROM shop_history WHERE processed=0') if r:getID() ~= -1 then repeat local cid = getPlayerByName(r:getDataString('player')) if isPlayer(cid) then local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK).uid if bp ~= 0 then local j = db.getResult('SELECT * FROM shop_offer WHERE id='..r:getDataInt('product')) if j:getID() ~= -1 then local id = tonumber(j:getDataInt('item')) local tid = tonumber(r:getDataInt('id')) local count = tonumber(j:getDataInt('count')) local tipe = tonumber(j:getDataInt('type')) local name = j:getDataString('name') if tipe == 5 or tipe == 8 then local w = getItemInfo(id).weight * count if getPlayerFreeCap(cid) >= w then if doAddContainerItemEx(bp, doCreateItemEx(id, count)) == 1 then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You have received >> '..name..' << from our shop system') db.executeQuery('UPDATE shop_history SET processed=1 WHERE id = ' .. tid) else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You don\'t have enough space in backpack to receive >> '..name..' <<') end else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'Sorry, you don\'t have enough capacity to receive >> '..name..' << (You need: '..getItemInfo(id).weight * count..' Capacity)') end elseif tipe == 6 or tipe == 7 then local bid, bcap = tipe == 6 and 1987 or 1988, tipe == 6 and 8 or 20 local w = getItemInfo(bid).weight + (getItemInfo(id).weight * count * bcap) if getPlayerFreeCap(cid) >= w then local c = doCreateItemEx(bid) for i = 1, bcap do doAddContainerItem(c, id, count) end if doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, c) == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You have received >> '..name..' << from our shop system') db.executeQuery('UPDATE shop_history SET processed=1 WHERE id='..tid) else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'Sorry, you don\'t have enough space to receive >> '..name..' <<') end else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'Sorry, you don\'t have enough capacity to receive >> '..name..' << (You need: '..w..' Capacity)') end end j:free() end else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You don\'t have a container in your backpack slot.') end end until not r:next() r:free() end return true end
Mesmo erro
1 minuto atrás, juio cesar disse:Mesmo erro
eu editei e coloquei mais um abaixo, caso não dê eu encontrei esse outro
function onThink()
local r = db.getResult('SELECT * FROM shop_history WHERE processed=0')
if r:getID() ~= -1 then
repeat
local cid = getPlayerByName(r:getDataString('player'))
if isPlayer(cid) then
local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK).uid
if bp ~= 0 then
local j = db.getResult('SELECT * FROM shop_offer WHERE id='..r:getDataInt('product'))
if j:getID() ~= -1 then
local id = tonumber(j:getDataInt('item'))
local tid = tonumber(r:getDataInt('id'))
local count = tonumber(j:getDataInt('count'))
local tipe = tonumber(j:getDataInt('type'))
local name = j:getDataString('name')
if tipe == 5 or tipe == 8 then
local w = getItemInfo(id).weight * count
if getPlayerFreeCap(cid) >= w then
if doAddContainerItemEx(bp, doCreateItemEx(id, count)) == 1 then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "You have received '..name..' from our shop system")
db.executeQuery('UPDATE shop_history SET processed=1 WHERE id = ' .. tid)
else
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You don\'t have enough space in backpack to receive .'.name..')')
end
else
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'Sorry, you don\'t have enough capacity to receive '..name..' (You need: '..getItemInfo(id).weight * count..' Capacity)')
end
elseif tipe == 6 or tipe == 7 then
local bid, bcap =
tipe == 6 and 1987 or 1988,
tipe == 6 and 8 or 20
local w = getItemInfo(bid).weight + (getItemInfo(id).weight * count * bcap)
if getPlayerFreeCap(cid) >= w then
local c = doCreateItemEx(bid)
for i = 1, bcap do
doAddContainerItem(cid, id, count)
end
if doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, c) == RETURNVALUE_NOERROR then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You have received '..name..' from our shop system')
db.executeQuery('UPDATE shop_history SET processed=1 WHERE id='..id)
else
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "Sorry, you don\'t have enough space to receive" '..name..')
end
else
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'Sorry, you don\'t have enough capacity to receive '..name..' (You need: '..w..' Capacity')')
end
end
j:free()
end
else
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "You don\'t have a container in your backpack slot.")
end
end
until not r:next()
r:free()
end
return true
end
e também esse
function onThink(interval, lastExecution, thinkInterval)
local result = db.getResult("SELECT * FROM shop_history WHERE `processed` = 0;")
if(result:getID() ~= -1) then
while(true) do
cid = getCreatureByName(tostring(result:getDataString("player")))
product = tonumber(result:getDataInt("product"))
itemr = db.getResult("SELECT * FROM shop_offer WHERE `id` = "..product..";")
if isPlayer(cid) then
local id = tonumber(itemr:getDataInt("item"))
local tid = tonumber(result:getDataInt("id"))
local count = tonumber(itemr:getDataInt("count"))
local tipe = tonumber(itemr:getDataInt("type"))
local productn = tostring(itemr:getDataString("name"))
if isInArray({5,8},tipe) then
if getPlayerFreeCap(cid) >= getItemWeightById(id, count) then
if isContainer(getPlayerSlotItem(cid, 3).uid) then
received = doAddContainerItem(getPlayerSlotItem(cid, 3).uid, id,count)
if received then
doPlayerSendTextMessage(cid,19, "Você recebeu o item >> "..productn.." << do shop")
db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";")
else
doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço para receber o item >> "..productn.." <<")
end
else
doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço para receber o item >> "..productn.." <<")
end
else
doPlayerSendTextMessage(cid,19, "Desculpe, você não tem capacidade para recber o item >> "..productn.." << (Você precisa de: "..getItemWeightById(id, count).." Capacidade)")
end
elseif isInArray({6,7},tipe) then
if tipe == 6 then
bcap = 8
bid = 1987
elseif tipe == 7 then
bcap = 20
bid = 1988
end
if isItemRune(id) then
count = 1
end
if getPlayerFreeCap(cid) >= (getItemWeightById(1987, 1) + getItemWeightById(id,count * bcap)) then
local bag = doCreateItemEx(bid, 1)
for i = 1,bcap do
doAddContainerItem(bag, id, count)
end
received = doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, bag)
if received == RETURNVALUE_NOERROR then
doPlayerSendTextMessage(cid,19, "Você recebeu o item >> "..productn.." << do shop")
db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";")
else
doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço para receber o item >> "..productn.." <<")
end
else
doPlayerSendTextMessage(cid,19, "Desculpe, você não tem capacidade para receber o item >> "..productn.." << (Você precisa de: "..getItemWeightById(id, count).." capacidade)")
end
end
end
itemr:free()
if not(result:next()) then
break
end
end
result:free()
end
return true
end
2 minutos atrás, Duhisback disse:eu editei e coloquei mais um abaixo, caso não dê eu encontrei esse outro
function onThink()
local r = db.getResult('SELECT * FROM shop_history WHERE processed=0')
if r:getID() ~= -1 then
repeat
local cid = getPlayerByName(r:getDataString('player'))
if isPlayer(cid) then
local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK).uid
if bp ~= 0 then
local j = db.getResult('SELECT * FROM shop_offer WHERE id='..r:getDataInt('product'))
if j:getID() ~= -1 then
local id = tonumber(j:getDataInt('item'))
local tid = tonumber(r:getDataInt('id'))
local count = tonumber(j:getDataInt('count'))
local tipe = tonumber(j:getDataInt('type'))
local name = j:getDataString('name')
if tipe == 5 or tipe == 8 then
local w = getItemInfo(id).weight * count
if getPlayerFreeCap(cid) >= w then
if doAddContainerItemEx(bp, doCreateItemEx(id, count)) == 1 then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "You have received '..name..' from our shop system")
db.executeQuery('UPDATE shop_history SET processed=1 WHERE id = ' .. tid)
else
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You don\'t have enough space in backpack to receive .'.name..')')
end
else
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'Sorry, you don\'t have enough capacity to receive '..name..' (You need: '..getItemInfo(id).weight * count..' Capacity)')
end
elseif tipe == 6 or tipe == 7 then
local bid, bcap =
tipe == 6 and 1987 or 1988,
tipe == 6 and 8 or 20
local w = getItemInfo(bid).weight + (getItemInfo(id).weight * count * bcap)
if getPlayerFreeCap(cid) >= w then
local c = doCreateItemEx(bid)
for i = 1, bcap do
doAddContainerItem(cid, id, count)
end
if doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, c) == RETURNVALUE_NOERROR then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'You have received '..name..' from our shop system')
db.executeQuery('UPDATE shop_history SET processed=1 WHERE id='..id)
else
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "Sorry, you don\'t have enough space to receive" '..name..')
end
else
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'Sorry, you don\'t have enough capacity to receive '..name..' (You need: '..w..' Capacity')')
end
end
j:free()
end
else
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "You don\'t have a container in your backpack slot.")
end
end
until not r:next()
r:free()
end
return true
end
e também esse
function onThink(interval, lastExecution, thinkInterval) local result = db.getResult("SELECT * FROM shop_history WHERE `processed` = 0;") if(result:getID() ~= -1) then while(true) do cid = getCreatureByName(tostring(result:getDataString("player"))) product = tonumber(result:getDataInt("product")) itemr = db.getResult("SELECT * FROM shop_offer WHERE `id` = "..product..";") if isPlayer(cid) then local id = tonumber(itemr:getDataInt("item")) local tid = tonumber(result:getDataInt("id")) local count = tonumber(itemr:getDataInt("count")) local tipe = tonumber(itemr:getDataInt("type")) local productn = tostring(itemr:getDataString("name")) if isInArray({5,8},tipe) then if getPlayerFreeCap(cid) >= getItemWeightById(id, count) then if isContainer(getPlayerSlotItem(cid, 3).uid) then received = doAddContainerItem(getPlayerSlotItem(cid, 3).uid, id,count) if received then doPlayerSendTextMessage(cid,19, "Você recebeu o item >> "..productn.." << do shop") db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";") else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço para receber o item >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço para receber o item >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem capacidade para recber o item >> "..productn.." << (Você precisa de: "..getItemWeightById(id, count).." Capacidade)") end elseif isInArray({6,7},tipe) then if tipe == 6 then bcap = 8 bid = 1987 elseif tipe == 7 then bcap = 20 bid = 1988 end if isItemRune(id) then count = 1 end if getPlayerFreeCap(cid) >= (getItemWeightById(1987, 1) + getItemWeightById(id,count * bcap)) then local bag = doCreateItemEx(bid, 1) for i = 1,bcap do doAddContainerItem(bag, id, count) end received = doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, bag) if received == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid,19, "Você recebeu o item >> "..productn.." << do shop") db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";") else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço para receber o item >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem capacidade para receber o item >> "..productn.." << (Você precisa de: "..getItemWeightById(id, count).." capacidade)") end end end itemr:free() if not(result:next()) then break end end result:free() end return true end
[03/08/2018 20:31:28] [Error - LuaScriptInterface::loadFile] data/globalevents/scripts/shop.lua:1: ')' expected near '?'
[03/08/2018 20:31:28] [Warning - Event::loadScript] Cannot load script (data/globalevents/scripts/shop.lua)
[03/08/2018 20:31:28] data/globalevents/scripts/shop.lua:1: ')' expected near '?'
2 minutos atrás, juio cesar disse:[03/08/2018 20:31:28] [Error - LuaScriptInterface::loadFile] data/globalevents/scripts/shop.lua:1: ')' expected near '?'
[03/08/2018 20:31:28] [Warning - Event::loadScript] Cannot load script (data/globalevents/scripts/shop.lua)
[03/08/2018 20:31:28] data/globalevents/scripts/shop.lua:1: ')' expected near '?'
Então não sei mais i que fazer amigo tentei ajudar, não manjo de scripts mas os que eu tinha aqui fui te passando!
@ Duhisback Esta bem obrigado
Aguem que possa me ajudar??
+ Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda.
* Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado.
Contato:
Email: contato@ceetros.com
Discord: Ceetros#5376
Telegram: @ceetros