Ir para conteúdo

[Encerrado] [Ajuda] Bug Gesior Acc.


skippervr

Posts Recomendados

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!

Link para o comentário
Compartilhar em outros sites

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 por GOD Fabiano
Link para o comentário
Compartilhar em outros sites

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! :(

Link para o comentário
Compartilhar em outros sites

  • 2 months later...

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

Link para o comentário
Compartilhar em outros sites

  • 5 years later...
A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta.

+ 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.
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...