Ir para conteúdo
  • Cadastre-se

(Resolvido)Script Coin dentro do Jogo


Ir para solução Resolvido por KotZletY,

Posts Recomendados

  • Moderador

Olá, preciso de um script que pegue a quantidade de coins dentro do jogo e passe para os premium points no site.

 

Até pensei na lógica mas não sei colocá-la em script.

 

Pega a quantidade atual de premium points e adiciona + quantidade que o player tiver (id do item)

 

Se alguém conseguir, agradeço muito e também REP+ !

Link para o post
Compartilhar em outros sites
  • Solução

Você não especificou a versão do tfs, então fiz na 0.4 e 0.3.6, também não falou o tipo de website, se é modern aac ou gesior e etc..

Você também não falou como era, então fiz em talkactions, ta bem lega assim.

 

data/talkactions/scripts cria um arquivo chamado changeitempoints.lua e bota esse script no arquivo:

Spoiler

local function getPlayerPoints(cid)
local res = db.getResult('select `premium_points` from accounts where name = \''..getPlayerAccount(cid)..'\'')
if(res:getID() == -1) then
return 0
end
local ret = res:getDataInt("premium_points")
res:free()
return tonumber(ret)
end

local function doPlayerChangeItemPerPoints(cid, itemid)
local quantidade = getPlayerItemCount(cid, itemid)
db.executeQuery("UPDATE `accounts` SET `premium_points` = '".. getPlayerPoints(cid) + quantidade .."' WHERE `name` ='"..getPlayerAccount(cid).."'")
doPlayerRemoveItem(cid, itemid, quantidade)
end


function onSay(cid, words, param)
local itemid = 11466 -- Id do item(coin) que vai ser trocado pelo premium points
if getPlayerItemCount(cid, itemid) == 0 then
doPlayerSendCancel(cid, "Você não tem o Coin para troca por pontos!")
return false
end

doPlayerChangeItemPerPoints(cid, itemid)
return true
end

 

 

data/talkactions e abra o arquivo talkactions.xml e adicione essa tag:

<talkaction words="!changepoints" event="script" value="changeitempoints.lua"/>

 

Não botei quantidade minima ou máxima no script, se você tiver só 1 coin, ele troca esse coin por 1 ponto, se tiver 2 coins ele troca por 2 pontos, e assim por diante, você só vai colocar o id desse coin no script e pronto!

 

 

Editado por KotZletY (veja o histórico de edições)

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites
  • Moderador
36 minutos atrás, KotZletY disse:

Você não especificou a versão do tfs, então fiz na 0.4 e 0.3.6, também não falou o tipo de website, se é modern aac ou gesior e etc..

Você também não falou como era, então fiz em talkactions, ta bem lega assim.

 

data/talkactions/scripts cria um arquivo chamado changeitempoints.lua e bota esse script no arquivo:

  Ocultar conteúdo


local function doPlayerChangeItemPerPoints(cid, itemid)
local quantidade = getPlayerItemCount(cid, itemid)
db.executeQuery("UPDATE `accounts` SET `premium_points` = '".. getPoints(cid) + quantidade .."' WHERE `name` ='"..getPlayerAccount(cid).."'")
doPlayerRemoveItem(cid, itemid, quantidade)
end


function onSay(cid, words, param)
local itemid = 11466 -- Id do item(coin) que vai ser trocado pelo premium points
if getPlayerItemCount(cid, itemid) == 0 then
doPlayerSendCancel(cid, "Você não tem o Coin para troca por pontos!")
return false
end

doPlayerChangeItemPerPoints(cid, itemid)
return true
end

 

 

data/talkactions e abra o arquivo talkactions.xml e adicione essa tag:


<talkaction words="!changepoints" event="script" value="changeitempoints.lua"/>

 

Não botei quantidade minima ou máxima no script, se você tiver só 1 coin, ele troca esse coin por 1 ponto, se tiver 2 coins ele troca por 2 pontos, e assim por diante, você só vai colocar o id desse coin no script e pronto!

 

 

 

Tsf 0.4  Versão 8.6

 

local quantidade = getPlayerItemCount(cid, itemid)
db.query("UPDATE `accounts` SET `premium_points` = '".. getPoints(cid) + quantidade .."' WHERE `name` ='"..getPlayerAccount(cid).."'")
doPlayerRemoveItem(cid, itemid, quantidade)
end


function onSay(cid, words, param)
local itemid = 6527 -- Id do item(coin) que vai ser trocado pelo premium points
if getPlayerItemCount(cid, itemid) == 0 then
doPlayerSendCancel(cid, "Você não tem Soft Token para troca por pontos no site!")
return false
end

doPlayerChangeItemPerPoints(cid, itemid)
return true
end
[16:52:10.056] mysql_real_query(): SELECT `points` FROM `players` WHERE `id` = 7 LIMIT 1 - MYSQL ERROR: Unknown column 'points' in 'field list' (1054)

[16:52:10.061] [Error - TalkAction Interface]
[16:52:10.062] data/talkactions/scripts/token.lua:onSay
[16:52:10.064] Description:
[16:52:10.065] data/lib/004-database.lua:60: [Result:getDataInt] Result not set!
[16:52:10.068] stack traceback:
[16:52:10.069]  [C]: in function 'error'
[16:52:10.070]  data/lib/004-database.lua:60: in function 'getDataInt'
[16:52:10.071]  data/lib/050-function.lua:844: in function 'getPoints'
[16:52:10.073]  data/talkactions/scripts/token.lua:3: in function 'doPlayerChangeItemPerPoints'
[16:52:10.076]  data/talkactions/scripts/token.lua:15: in function <data/talkactions/scripts/token.lua:8>

Apresentou esse erro.

 

Editado por moviebr (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

'-'

 

MYSQL ERROR: Unknown column 'points' in 'field list'

 

37 minutos atrás, KotZletY disse:

também não falou o tipo de website, se é modern aac ou gesior e etc..

 

Olha o erro e olha o que eu falei brow. Não sei que tipo de website usa, a database de um aac para outra tem muita diferença e não tem como ninguém adivinhar. 

Aqui funciona perfeitamente o script, testei e ta 200%, fiz esse script para modern aac.

 

O script que você pediu mexe com a database, então deveria ter me falo que website você usa. 

 

Você usa qual website ? Gesior ?

 

E o script funfa perfeitamente no tfs 0.4, afinal fiz usando essa versão, e testei!

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites
  • Moderador
11 minutos atrás, KotZletY disse:

'-'

 

MYSQL ERROR: Unknown column 'points' in 'field list'

 

 

Olha o erro e olha o que eu falei brow. Não sei que tipo de website usa, a database de um aac para outra tem muita diferença e não tem como ninguém adivinhar. 

Aqui funciona perfeitamente o script, testei e ta 200%, fiz esse script para modern aac.

 

O script que você pediu mexe com a database, então deveria ter me falo que website você usa. 

 

Você usa qual website ? Gesior ?

 

E o script funfa perfeitamente no tfs 0.4, afinal fiz usando essa versão, e testei!

Desculpa, agora que vi isso :x, uso Gesior

 

 

Link para o post
Compartilhar em outros sites
1 hora atrás, KotZletY disse:

Você não especificou a versão do tfs, então fiz na 0.4 e 0.3.6, também não falou o tipo de website, se é modern aac ou gesior e etc..

Você também não falou como era, então fiz em talkactions, ta bem lega assim.

 

data/talkactions/scripts cria um arquivo chamado changeitempoints.lua e bota esse script no arquivo:

  Mostrar conteúdo oculto


local function doPlayerChangeItemPerPoints(cid, itemid)
local quantidade = getPlayerItemCount(cid, itemid)
db.executeQuery("UPDATE `accounts` SET `premium_points` = '".. getPoints(cid) + quantidade .."' WHERE `name` ='"..getPlayerAccount(cid).."'")
doPlayerRemoveItem(cid, itemid, quantidade)
end


function onSay(cid, words, param)
local itemid = 11466 -- Id do item(coin) que vai ser trocado pelo premium points
if getPlayerItemCount(cid, itemid) == 0 then
doPlayerSendCancel(cid, "Você não tem o Coin para troca por pontos!")
return false
end

doPlayerChangeItemPerPoints(cid, itemid)
return true
end

 

 

data/talkactions e abra o arquivo talkactions.xml e adicione essa tag:


<talkaction words="!changepoints" event="script" value="changeitempoints.lua"/>

 

Não botei quantidade minima ou máxima no script, se você tiver só 1 coin, ele troca esse coin por 1 ponto, se tiver 2 coins ele troca por 2 pontos, e assim por diante, você só vai colocar o id desse coin no script e pronto!

 

 

 

tava pensando em um método que de use no item ID configurado e adicione os pontos no site .... seria bem interativo não??? ai poderia ser feito trocas etc... quests .... várias coisas inclusive mercado dentro do jogo e claro o inverso também comprar os items que representa os pontos no site para ter dentro do jogo .... seria como saldo no banco .... e dinheiro ... se é que me entende 

Editado por Brunds (veja o histórico de edições)

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

Link para o post
Compartilhar em outros sites

Ops, erro meu, atualizei, tava faltando uma função, a que pega os pontos já existe!

 

@Brunds não entendi muito bem! 

Editado por KotZletY (veja o histórico de edições)

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites

Existe inumeros codigos que faz isso pela internet e acredito que até pelo fórum.

Clicar no item e ele virar premium points. Por favor, antes de criar topicos de pedidos assim, da uma olhadinha pelo fórum pra acabar não fazendo pedido de algo que já existe.

 

 

 

@This life is filled with hurt

When happiness doesn't work

Trust me and take my hand

When the lights go out you will understand

Link para o post
Compartilhar em outros sites
3 horas atrás, KotZletY disse:

Ops, erro meu, atualizei, tava faltando uma função, a que pega os pontos já existe!

 

@Brunds não entendi muito bem! 

 

hmmm, assim um item que represente pontos ... qualquer item e os pontos no site .... caso você tem os pontos in-game e da use neste item ele some e é adicionado pontos para você no site e no site tem como comprar esse item equivalente ao ponto .... 1 ponto 1 item tendeu? 

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

Link para o post
Compartilhar em outros sites

@Brunds Entendi! 

 

@moviebr Funcionou ? Algum erro ? 100% ? Você marcou melhor respostar então deve está bom! 

 

xD

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites
  • Moderador

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo