Alguém poderia me ajudar a arruma um script que delete o que fica no z_ots_comunication?
- Fórum
- OTServ
- Suporte
- Tópicos Sem Resposta
- [Encerrado] [Ajuda] Bug Gesior Acc.
[Encerrado] [Ajuda] Bug Gesior Acc.
Por skippervr, 05 de ago. de 2012 em Tópicos Sem Resposta
info
Grupo: Campones
Registrado: 28/08/06
Posts: 31
Reputação: +3

Tente trocar o shop.lua existente na pasta globalevents, por esse aqui.
-- ### CONFIG ###
-- message send to player by script "type" (types you can check in "global.lua")
SHOP_MSG_TYPE = 19
-- time (in seconds) between connections to SQL database by shop script
SQL_interval = 30
-- ### END OF CONFIG ###
function onThink(interval, lastExecution)
local result_plr = db.getResult("SELECT * FROM z_ots_comunication WHERE `type` = 'login';")
if(result_plr:getID() ~= -1) then
while(true) do
id = tonumber(result_plr:getDataInt("id"))
action = tostring(result_plr:getDataString("action"))
delete = tonumber(result_plr:getDataInt("delete_it"))
cid = getCreatureByName(tostring(result_plr:getDataString("name")))
if isPlayer(cid) == TRUE then
local itemtogive_id = tonumber(result_plr:getDataInt("param1"))
local itemtogive_count = tonumber(result_plr:getDataInt("param2"))
local container_id = tonumber(result_plr:getDataInt("param3"))
local container_count = tonumber(result_plr:getDataInt("param4"))
local add_item_type = tostring(result_plr:getDataString("param5"))
local add_item_name = tostring(result_plr:getDataString("param6"))
local received_item = 0
local full_weight = 0
if add_item_type == 'container' then
full_weight = getItemWeightById(itemtogive_id, 1)
end
local free_cap = getPlayerFreeCap(cid)
if full_weight <= free_cap then
if add_item_type == 'container' then
local new_container = doCreateItemEx(container_id, 1)
local iter = 0
while iter ~= container_count do
doAddContainerItem(new_container, itemtogive_id, itemtogive_count)
iter = iter + 1
end
received_item = doPlayerAddItemEx(cid, new_container)
else
local new_item = doCreateItemEx(itemtogive_id, itemtogive_count)
received_item = doPlayerAddItemEx(cid, new_item)
end
if received_item == RETURNVALUE_NOERROR then
doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, 'You received >> '.. add_item_name ..' << from OTS shop.')
db.executeQuery("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";")
db.executeQuery("UPDATE `z_shop_history_item` SET `trans_state`='realized', `trans_real`=" .. os.time() .. " WHERE id = " .. id .. ";")
doPlayerSave(cid)
end
end
end
if not(result_plr:next()) then
break
end
end
result_plr:free()
end
return TRUE
end
O próprio script já deleta oque fica em z_ots_comunication. Nessa linha aqui:
db.executeQuery("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";")
Espero ter ajudado. ![]()
Editado Agosto 11 por GOD Fabiano
Lek, Te agradeço muito, porém, este está identico ao que eu uso, e não funda! não sei porque. já tentei TODOS que tem em TODOS os tutos da internet e NAADA!
TA PHODA! estou quase desistindo! ![]()
info
Grupo: Campones
Registrado: 28/10/12
Posts: 1
Reputação: 0

sei que o topico esta parado a mais de 30 dias mais eu estou acompanhando o problema do skipper desde o inicio pois aconteceu comigo tbm.. a mesma coisa identica. porem skipper eu fiz oque o cara passo nesse topico aqui. so parece que o script e igual mais nao é !!!! bota fé irmao que esse e o certo. ele tem 1 linha a mais que fez toda a diferença essa aqui o:
db.executeQuery("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";")
finalmente problema resolvido !!!! coloquei aqui e parou de clonar os itens infinitos. ja fiz testes com outros itens e so compra um certo e para. *-*
VLWWWW GOD FABIANO PELA FORÇA. realmente o script parece identico kkkk mais ja tinha rodado tanto procurando que fiz o teste e paro.. oO ai fui procura essa linha ai no meu anterior e nao tinha oO e realmente foi oque resolveu o problema ! definitivamente !! skipper acredite !!! copia e cola isso ai no seu shop.lua que vai resolver ! nao to falando da linha que eu axei nao. to falando do script que o fabiano passo intero !!!
VLW
info
Grupo: Herói
Registrado: 28/11/10
Posts: 3.4k
Reputação: +585
Gênero: Masculino

+ 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.


info
Grupo: Campones
Registrado: 04/09/11
Posts: 3
Reputação: 0
Bom dia a todos.
Primeiramente, me desculpem se o topico não estiver em lugar correto.
Bom, preciso muito de ajuda.
Meu gesior está funcionando perfeitamente, porém no shop está com um BUG que não estou conseguindo arruamar.
Quando alguém compra um item, o shop fica enviando o item de 30 em 30 segundo para o player e só para se acabar a cap.
Procurei em todos os lugares, já li varios tutoriais e não encontrei nada!
Alguem pode me ajudar?
Serei eternamente grato e darei REP++
Abraço!