FL

[Resolvido] [MODERN ACC] Enviar pontos

Por FlamesAdmin, 22 de ago. de 2018 em Resolvidos

8
1.7k
22 de agosto de 2018 às 17:55

Teria como fazer um botão na página da conta que a pessoa enviasse pontos pra conta ingame só que transformasse esses pontos em diamonds?

 

O que for preciso é só pedir.

WickassW
22 de agosto de 2018 às 18:08

E so colocar pra com pontos poder comprar diamonds, e colocar o diamond pra virar pontos.

 

Nao coloquei no hastebin pq nao estava conseguindo, mas boa sorte

pontos.lua

22 de agosto de 2018 às 18:11

@Wickassvc diz fazer isso atravez do shop do site?

WickassW
22 de agosto de 2018 às 18:13
1 minuto atrás, FlamesAdmin disse:

@Wickassvc diz fazer isso atravez do shop do site?

Pelo jogo msm,  so criar um talkactions de shop in game mano. ai vc compra diamonds por pontos. e com esse action q te enviei ele volta a ser pontos. 

22 de agosto de 2018 às 18:16

@Wickassblz, vou ver oq eu consigo fazer aqui

DuhisbackD
22 de agosto de 2018 às 18:52
Melhor resposta
51 minutos atrás, FlamesAdmin disse:

Teria como fazer um botão na página da conta que a pessoa enviasse pontos pra conta ingame só que transformasse esses pontos em diamonds?

 

O que for preciso é só pedir.

Usa esse sistema que tem em meu ot

 

coloque isso em talkactions.xml

Spoiler

<talkaction words="!sacar;!saldo;!depositar" event="script" value="buypoints.lua"/>

 

Crie um arquivo.lua e renomeie para buypoints.lua

Spoiler

-- Eduardo Araújo
-- Pokemon Evolution
local pointObj = 2145 --id do item "points"

function getAccountPoints(cid)
local res = db.getResult('SELECT `premium_points` FROM `accounts` WHERE id='..getPlayerAccountId(cid)..'')
  if(res:getID() == -1) then
     return false
  end
local ret = res:getDataInt("premium_points")
res:free()
return tonumber(ret)
end

function onSay(cid, words, param)
    if (words == '!sacar') then
        if param ~= "" then
            if tonumber(param) ~= nil then
                if 0 >= tonumber(param) then
                doPlayerSendCancel(cid, "O valor precisa ser acima de zero.")
                elseif 0 < tonumber(param) and tonumber(param) <= getAccountPoints(cid) then
                doPlayerAddItem(cid, pointObj, tonumber(param))
                db.executeQuery('UPDATE `accounts` SET `premium_points`='..getAccountPoints(cid) - tonumber(param)..' WHERE id='.. getPlayerAccountId(cid)..'')
                newPoints = getAccountPoints(cid)
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Você ainda possui '..newPoints..' premium points em sua conta.')
                else
                doPlayerSendCancel(cid, "Você não tem tantos premium points assim.")
                end
            else
            doPlayerSendCancel(cid, "O valor precisa ser um numero.")
            end
        else
        doPlayerSendCancel(cid, "Você precisa especificar um valor.")
        end
    elseif (words == '!saldo') then
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Seu saldo no shopping atual é de '..getAccountPoints(cid)..' Premium points.')
    elseif (words == '!depositar') then
        if param ~= "" then
            if tonumber(param) ~= nil then
                if 0 >= tonumber(param) then
                doPlayerSendCancel(cid, "O valor precisa ser acima de zero.")
                elseif 0 < tonumber(param) and tonumber(param) <= getPlayerItemCount(cid, pointObj) then
                doPlayerRemoveItem(cid, pointObj, tonumber(param))
                db.executeQuery('UPDATE `accounts` SET `premium_points`='..getAccountPoints(cid) + tonumber(param)..' WHERE id='.. getPlayerAccountId(cid)..'')
                newPoints = getAccountPoints(cid)
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Você acabou de depositar '..param..' premium points no shopping. Seu saldo agora é de '..newPoints..' premium points.')
                else
                doPlayerSendCancel(cid, "Você não tem tantos premium points assim.")
                end
            else
            doPlayerSendCancel(cid, "O valor precisa ser um numero.")
            end
        else
        doPlayerSendCancel(cid, "Você precisa especificar um valor.")
        end
    end
return true
end

 

 

pronto só basta fazer isso, eu uso em meu ot e não tem problema de outra pessoa ter pode usar ai avontade. Não esquece do Rep+

 

Quando você fala saldo, ele verifica quanto de pontos você tem no site quando saca o total ex: !sacar 100, ai ele saca tudo e zera no site ai se quiser devolver pro site só falar !depositar 100

 

Obs: Deixe os créditos, não poste em outro forum e nem venda.

22 de agosto de 2018 às 19:27

@Duhisbackvou dar uma conferida

 

EDIT

@Duhisbackdeu certo, funcionou perfeitamente vlw pela ajuda

 

@Wickassobg pela ajuda

Editado Agosto 22 por FlamesAdmin

BennyB
22 de agosto de 2018 às 22:22
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.