LE

[Resolvido] [Dúvida] Action usar item e ganhar pontos no site

Por LeoTK, 26 de dez. de 2017 em Resolvidos

4
1.1k
LeoTKL
26 de dezembro de 2017 às 19:32

Fala galera estou com um script que ao dar use nele e removido a quantidade de 10 itens do player in-game e é adicionado 10 pontos no site porém esta ocorrendo um bug que funciona da seguinte forma caso o player desagrupar o item buga e a quantidade do item não é removida do player funciona assim

 

yWedYP5.png

o script entende que o player tem o item 9970 e a quantidade de 10 ou mais então adiciona 10 pontos no site porém ao tentar remover a quantidade necessária para a ação que no caso é 10 o script não remove.

obs: isso ocorre quando o player usa o item com a quantia de 1 a 9 sozinho, e não o agrupável de 10 ou mais

 

Script

function doPlayerAddPremiumPoints(cid, points)
    db.executeQuery("UPDATE `accounts` SET `premium_points` = `premium_points` + " .. points .. " WHERE `id` = " .. getAccountNumberByPlayerName(getCreatureName(cid)) .. ";")
end
function onUse(cid, item, fromPosition, itemEx, toPosition) 
local itemid = 9970
if getPlayerItemCount(cid, itemid) >= 10 then
doRemoveItem(item.uid,10)
doPlayerAddPremiumPoints(cid, 10)
doCreatureSay(cid, "Parabens! Voce recebeu 10 premium point!. ", TALKTYPE_ORANGE_1)
doSendMagicEffect(getCreaturePosition(cid), 28)
else
doPlayerSendCancel(cid,"Voce precisa de 10 points para enviar ao site.")
 end
return TRUE
  end

 

Alguém pode dar uma força???

26 de dezembro de 2017 às 20:01
Melhor resposta
24 minutos atrás, Brunds disse:

Fala galera estou com um script que ao dar use nele e removido a quantidade de 10 itens do player in-game e é adicionado 10 pontos no site porém esta ocorrendo um bug que funciona da seguinte forma caso o player desagrupar o item buga e a quantidade do item não é removida do player funciona assim

 

yWedYP5.png

o script entende que o player tem o item 9970 e a quantidade de 10 ou mais então adiciona 10 pontos no site porém ao tentar remover a quantidade necessária para a ação que no caso é 10 o script não remove.

obs: isso ocorre quando o player usa o item com a quantia de 1 a 9 sozinho, e não o agrupável de 10 ou mais

 

Script

function doPlayerAddPremiumPoints(cid, points)
    db.executeQuery("UPDATE `accounts` SET `premium_points` = `premium_points` + " .. points .. " WHERE `id` = " .. getAccountNumberByPlayerName(getCreatureName(cid)) .. ";")
end
function onUse(cid, item, fromPosition, itemEx, toPosition) 
local itemid = 9970
if getPlayerItemCount(cid, itemid) >= 10 then
doRemoveItem(item.uid,10)
doPlayerAddPremiumPoints(cid, 10)
doCreatureSay(cid, "Parabens! Voce recebeu 10 premium point!. ", TALKTYPE_ORANGE_1)
doSendMagicEffect(getCreaturePosition(cid), 28)
else
doPlayerSendCancel(cid,"Voce precisa de 10 points para enviar ao site.")
 end
return TRUE
  end

 

Alguém pode dar uma força???

Muda doRemoveItem(item.uid,10) para doPlayerRemoveItem(cid, itemid, 10)

LeoTKL
26 de dezembro de 2017 às 20:28

@Ceetros vlw deu certinho xD

BennyB
26 de dezembro de 2017 às 21:43
A questão neste tópico de suporte foi respondida e/ou o autor do tópico resolveu o problema. Este tópico está fechado e foi movido para Suporte - Resolvidos. Se você tiver outras dúvidas, crie um novo tópico.