Ir para conteúdo
  • Cadastre-se

Biblioteca/Função [GetVipPoints / AddVipPoints / RemoveVipPoints]


Posts Recomendados

O Tipico ja diz tudo então vamos ao Trabalho.

 

Em lib/050-function.lua

function getPlayerVipPoints(cid)
    local Info = db.getResult("SELECT `premium_points` FROM `accounts` WHERE `id` = " .. getPlayerAccountId(cid) .. "")
        if Info:getID() ~= LUA_ERROR then
        local Points= Info:getDataInt("premium_points")
        Info:free()
        return Points
    end
     return LUA_ERROR
end

function doPlayerAddVipPoints(cid, points)
    local dif = getPlayerVipPoints(cid) + points
    if dif >= 0 then
        db.query("UPDATE `accounts` SET `premium_points` = `premium_points` + " .. points .. " WHERE `id` = " .. getPlayerAccountId(cid) .. ";")
        return TRUE
    end
    return FALSE
end

function doPlayerRemoveVipPoints(cid, points)
    local dif = getPlayerVipPoints(cid) - points
    if dif >= 0 then
        db.query("UPDATE `accounts` SET `premium_points` = `premium_points` - " .. points .. " WHERE `id` = " .. getPlayerAccountId(cid) .. ";")
        return TRUE
    end
    return FALSE
end

Comando SQL em sua DataBase:

ALTER TABLE `accounts` ADD `premium_points` int(11) NOT NULL DEFAULT '0'

Comando Talkactions

getPlayerVipPoints(cid) -- Retorna o Valor atual de Points

doPlayerAddVipPoints(cid, points) -- Adiciona Points

doPlayerRemoveVipPoints(cid, points) -- Remove Points

Creditos?

Emerson Henrique

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

Skype : emersonaaron Se Te ajudei não me REP+ isso não muda nada! kkkkkkkkkkkk

Link para o post
Compartilhar em outros sites

Você que fez?

YDmXTU2.png

 

Entenda tudo sobre VPS, DEDICADOS & HOSPEDAGENS. => Clique aqui

Global Full Download 10.9x - TFS 1.2/FERUMBRAS/KRAILOS. => Clique aqui

 

Muitos querem aquilo que você tem, 
mas vão desistir quando souberem o preço que você pagou.

 

skype-favicon.png lu.lukinha

message-16.png [email protected]

Link para o post
Compartilhar em outros sites

Esse script é bem parecido .. http://www.tibiaking.com/forum/topic/24584-sistema-shop-system-sem-site/

Porem tem umas alterações que melhoraram bastante ele, obrigado por compartilhar Emerson.

Link para o post
Compartilhar em outros sites

Esse script é bem parecido .. http://www.tibiaking.com/forum/topic/24584-sistema-shop-system-sem-site/

Porem tem umas alterações que melhoraram bastante ele, obrigado por compartilhar Emerson.

 

sim muito parecido, Porem não tinha visto que ja tinha algo postado sobre isso, se não nem postava, as funções são comandos mysql são todos iguais ^^ 

 

Mas Postei poq no Topico de ajuda tinha uma pessoa perguntando então fiz o post

Skype : emersonaaron Se Te ajudei não me REP+ isso não muda nada! kkkkkkkkkkkk

Link para o post
Compartilhar em outros sites

sim muito parecido, Porem não tinha visto que ja tinha algo postado sobre isso, se não nem postava, as funções são comandos mysql são todos iguais ^^ 

 

Mas Postei poq no Topico de ajuda tinha uma pessoa perguntando então fiz o post

 

 

Entendi, mas espero colocar os créditos do Darkhaos do outro fórum é melhor, pois o mesmo pode pedir remoção.

YDmXTU2.png

 

Entenda tudo sobre VPS, DEDICADOS & HOSPEDAGENS. => Clique aqui

Global Full Download 10.9x - TFS 1.2/FERUMBRAS/KRAILOS. => Clique aqui

 

Muitos querem aquilo que você tem, 
mas vão desistir quando souberem o preço que você pagou.

 

skype-favicon.png lu.lukinha

message-16.png [email protected]

Link para o post
Compartilhar em outros sites

Que fez foi eu. prove ao contrario :D

 

RLkdvL9.png

 

 

 

 

Tu é o Darkhaos então?

 

Você tem 24 horas para adicionar os créditos ou reportarei para remover o conteúdo.

 

YDmXTU2.png

 

Entenda tudo sobre VPS, DEDICADOS & HOSPEDAGENS. => Clique aqui

Global Full Download 10.9x - TFS 1.2/FERUMBRAS/KRAILOS. => Clique aqui

 

Muitos querem aquilo que você tem, 
mas vão desistir quando souberem o preço que você pagou.

 

skype-favicon.png lu.lukinha

message-16.png [email protected]

Link para o post
Compartilhar em outros sites

RLkdvL9.png

 

 

 

 

Tu é o Darkhaos então?

 

Você tem 24 horas para adicionar os créditos ou reportarei para remover o conteúdo.

 

local Info = db.getResult("SELECT `premium_points` FROM `accounts` WHERE `id` = " .. getPlayerAccountId(cid) .. "")

A 1º Linha de comando mysql não é igual, não tenho culpa se algum pessoa teve a mesma ideia, lamento mais não vou colocar credito de uma coisa que não ele!

Como eu Disse comando mysql são iguais.

Obg

 

PS: Me disculpe mais quem posta sistema copiado e modificados é você, oque eu posto foi eu que criei para meu servidor!

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

Skype : emersonaaron Se Te ajudei não me REP+ isso não muda nada! kkkkkkkkkkkk

Link para o post
Compartilhar em outros sites

? Então ele postou o sistema igual você alterando só uma linha? Que mera coincidência em!

 

local Info = db.getResult("SELECT `premium_points` FROM `accounts` WHERE `id` = " .. getPlayerAccountId(cid) .. "")

A 1º Linha de comando mysql não é igual, não tenho culpa se algum pessoa teve a mesma ideia, lamento mais não vou colocar credito de uma coisa que não ele!

Como eu Disse comando mysql são iguais.

Obg

 

PS: Me disculpe mais quem posta sistema copiado e modificados é você, oque eu posto foi eu que criei para meu servidor!

 

 

Entendi, você modificou o SQL e o vip_points por premium_points e não copiou, compreendo.

 

Como é descrito nas regras, você tem o direito de modificar e/ou postar o que quiser, porém mantendo os créditos.

 

Repito, você tem 24 horas para adicionar os créditos.

YDmXTU2.png

 

Entenda tudo sobre VPS, DEDICADOS & HOSPEDAGENS. => Clique aqui

Global Full Download 10.9x - TFS 1.2/FERUMBRAS/KRAILOS. => Clique aqui

 

Muitos querem aquilo que você tem, 
mas vão desistir quando souberem o preço que você pagou.

 

skype-favicon.png lu.lukinha

message-16.png [email protected]

Link para o post
Compartilhar em outros sites

? Então ele postou o sistema igual você alterando só uma linha? Que mera coincidência em!

 

 

Entendi, você modificou o SQL e o vip_points por premium_points e não copiou, compreendo.

 

Como é descrito nas regras, você tem o direito de modificar e/ou postar o que quiser, porém mantendo os créditos.

 

Repito, você tem 24 horas para adicionar os créditos.

 

Repito o script que criou foi eu, caso v descorde problema é seu, por alguem fez algo parecido não quer dizer que eu tenha copiado.

 

Poq eu não posso criar ?

 

Desconhecia esse script de qualquer outro forum e por isso precisei criar o meu.

 

Como eu disse, prove que foi uma copia com um site exatamente igual, claro que não irá achar, e se achar possivelmente a pessoa teve a mesma ideia que eu ^^

Skype : emersonaaron Se Te ajudei não me REP+ isso não muda nada! kkkkkkkkkkkk

Link para o post
Compartilhar em outros sites

Repito o script que criou foi eu, caso v descorde problema é seu, por alguem fez algo parecido não quer dizer que eu tenha copiado.

 

Poq eu não posso criar ?

 

Desconhecia esse script de qualquer outro forum e por isso precisei criar o meu.

 

Como eu disse, prove que foi uma copia com um site exatamente igual, claro que não irá achar, e se achar possivelmente a pessoa teve a mesma ideia que eu ^^

 

Verdade, tava pensando em criar um sistema mais vai que alguém que já postou pensa antes.

 

24 Horas pelos devidos créditos, caso contrário tópico reportado.

 

Faço apenas pelas regras.

 

 

Bom Dia.

YDmXTU2.png

 

Entenda tudo sobre VPS, DEDICADOS & HOSPEDAGENS. => Clique aqui

Global Full Download 10.9x - TFS 1.2/FERUMBRAS/KRAILOS. => Clique aqui

 

Muitos querem aquilo que você tem, 
mas vão desistir quando souberem o preço que você pagou.

 

skype-favicon.png lu.lukinha

message-16.png [email protected]

Link para o post
Compartilhar em outros sites

Verdade, tava pensando em criar um sistema mais vai que alguém que já postou pensa antes.

 

24 Horas pelos devidos créditos, caso contrário tópico reportado.

 

Faço apenas pelas regras.

 

 

Bom Dia.

 

Você Criar Sistema HAHAHA.

 

Como eu Disse o Script é meu caso discorde, não posso fazer nada !

Skype : emersonaaron Se Te ajudei não me REP+ isso não muda nada! kkkkkkkkkkkk

Link para o post
Compartilhar em outros sites

O script é de Emersonssss!

Conteúdos Tragos Por Mim ao Fórum:

Venda de Vocações [Modern Aac] •

• Comando !Saga 

• [Modern Aac] DragonBall 

• Esconder •

• Naruto 2018

• • •

• •

'NtoProject - Breve'

[Show OFF] Disponível

Link para o post
Compartilhar em outros sites

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.

  • Conteúdo Similar

    • Por Anderson Sacani
      Estou criando um servidor com base nos scripts de TFS 1.x e voltado ao público da america latina por causa do baixo ping na VPS... Argentina, Bolívia, Brasil, Chile, entre outros, portanto sei que falamos em português e nossos vizinhos em espanhol.
      Todos os sistemas do meu servidor são pensados para terem traduções e venho por meio deste tópico compartilhar à vocês algumas dessas funções:
       
      Antes de qualquer coisa, você precisará adicionar a seguinte variável em alguma biblioteca:
      USER_LANGUAGE = 1022118443  
      Agora que adicionou essa variável em alguma biblioteca, poderá adicionar as seguintes funções na mesma biblioteca, porém a baixo da variável USER_LANGUAGE.
       
      A primeira função serve para retornar qual idioma o player está usando:
      --[[ getLanguage, how to use: player:getLanguage() ]] function Player.getLanguage(self) if self:isPlayer() then if self:getStorageValue(USER_LANGUAGE) < 1 then return "portuguese" else return "spanish" end else print("getLanguage: Only works on players..") end end Um exemplo de como usar: player:getLanguage()
       
      A segunda função serve para alterar o idioma do player. O ideal é que seja usada na primeira vez em que o player loga no servidor:
      --[[ setLanguage, how to use: player:setLanguage("portuguese") ]] function Player.setLanguage(self, language) local value = 0 if self:isPlayer() then if language == "portuguese" then value = 0 elseif language == "spanish" then value = 1 else print("setLanguage: Only two options available. Choose one of them: 'portuguese' or 'spanish'.") end return self:setStorageValue(USER_LANGUAGE, value) else print("setLanguage: Only works on players..") end end Exemplos de como usar:
      player:setLanguage("portuguese")
      ou
      player:setLanguage("spanish")
       
      A terceira e não menos importante função, serve para mandar uma mensagem de texto ao jogador, porém ele receberá no idioma em que escolheu:
      --[[ sendLanguageTextMessage, how to use: local portugueseMessage = "Ola, tudo bom? Isto aqui é um algoritmo!" local spanishMessage = "Hola todo bien? Esto de aqui es un algoritmo!" player:sendLanguageTextMessage(MESSAGE_EVENT_ADVANCE, portugueseMessage,spanishMessage) ]] function Player.sendLanguageTextMessage(self, type, portugueseMessage, spanishMessage) if self:isPlayer() then if self:getStorageValue(USER_LANGUAGE) < 1 then return self:sendTextMessage(type, portugueseMessage) else return self:sendTextMessage(type, spanishMessage) end else print("sendLanguageTextMessage: Only works on players..") end end Um exemplo de como usar:
      player:sendLanguageTextMessage(MESSAGE_EVENT_ADVANCE, portugueseMessage, spanishMessage)
      O primeiro parâmetro é o tipo de mensagem, o segundo parâmetro será a mensagem em português e o terceiro parâmetro será em espanhol.
    • Por danielsort
      A minha poke ball nao esta funcionando como contador aonde consigo ageitar isso?
       
       

    • Por yurikil
      Saudações a todos, venho por meio deste tópico pedir uma ajuda no qual estou tentando fazer a muito tempo. Já vi alguns post aqui mesmo no TK, mas nenhum eu tive êxito. Por isso venho pedir um socorro de como eu consigo aumentar a quantidade de MagicEffects acima de 255 no meu NewClient OTC? Se alguém puder fortalecer ficarei muito grato!!
    • Por Vodkart
      Uma função que ao invés de usar o "cid" para pegar o valor de uma storage, usa o ip do jogador.
       
      baseado neste pedido:
       
       
       
       
      INSTALAÇÃO:
       
       
      Execute essa query:
       
      CREATE TABLE `ip_storages` (         `ip` int NOT NULL default 0,         `key` int NOT NULL default 0,         `value` varchar(255) NOT NULL default 0         )  
      funções para serem adicionadas na lib:
       
      function setIpStorageValue(ip, key, value) local func = db.executeQuery or db.query local query = db.getResult("SELECT `value` FROM `ip_storages` WHERE `key` = "..key.." AND `ip` = "..ip) if query:getID() == -1 then return func("INSERT INTO `ip_storages` (`ip`, `key`, `value`) VALUES ("..ip..", "..key..", "..value..")") end return func("UPDATE `ip_storages` SET `value` = "..value.." WHERE `key` = "..key.." AND `ip` = "..ip) end function getIpStorageValue(ip, key) local ret = db.getResult("SELECT `value` FROM `ip_storages` WHERE `ip` = "..ip.." AND `key` = "..key) if ret:getID() == -1 then return -1 end return ret:getDataInt("value") or ret:getDataString("value") end  
       
       
       
      exemplo de uso:
       
      pegar baú a cada X horas:
       
      function onUse(cid, item, fromPosition, itemEx, toPosition)     local storage, hours = 18000, 24     local ip = getPlayerIp(cid)     local item = 2160     if getIpStorageValue(ip, storage) - os.time() <= 0 then         doPlayerSendTextMessage(cid,22,"Tome seu prêmio.")         setIpStorageValue(ip, storage, os.time()+hours*3600)         doPlayerAddItem(cid, item, 100)          return true     end      return doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"Espere para pegar um novo item!") end  

      ou só podendo pegar 1x:
       
      function onUse(cid, item, fromPosition, itemEx, toPosition)     local storage, ip = 18000, getPlayerIp(cid)     local item = 2160     if getIpStorageValue(ip, storage) > 1 then     doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"voce ja pegou o item!") return true     end         doPlayerSendTextMessage(cid,22,"Tome seu prêmio.")         setIpStorageValue(ip, storage, 1)         doPlayerAddItem(cid, item, 100)          return true end
       
    • Por Endless
      Olá meus senhores, tem muita gente que pede serviços em relação a Gerar Outfits Animadas do seu cliente, o que muitos não sabem é que existe esse sistema de Gerar as Outfit animadas gratuitamente na internet e ele foi desenvolvido pelo Gesior.pl (Polones), então todo o crédito deste tutorial em relações a códigos vão para ele.

      Primeiro de tudo, o que é esse Sistema de Gerar Outfits Animadas?

      Basicamente é 1 Sistema Web que vai ler o teu tibia.spr / tibia.dat e seu items.otb e gerar todas suas outfit do seu cliente em forma de frames e na hora de exibir o sistema utiliza uma script em php que fica responsável por montar 1 gif utilizando esses frames.
      O resultado é algo como isto:



      Existe 2 formas de utilizar o sistema, eu vou ensinar a mais fácil, para quem quiser vou deixar o link do código fonte e vocês podem simplesmente estar clonando o repositório e fazer suas alterações a vontade. (Sim, ele é open source e.e).

      Código Fonte: https://github.com/gesior/open-tibia-library 

      Explicando como utilizar o sistema:

      1° acesse o link => https://outfit-images.ots.me/generator/

      Você deve visualizar algo como isto: 



      Percebam que ele vai pedir os seguintes dados: 
      -Client Version:
      -Sprite file:
      -Dat file:
      -Otb file:

      Antes de sair adicionando, precisamos configurar nosso cliente para que o sistema consiga reconhecer ele. Abra seu cliente no object builder. Agora vá na área de effects e apague todos os efeitos. Sim apague TODOS, agora vá até Tools->Spriter Otimizer



      Clique em start e você vai ter 1 retorno parecido com isto:



      Agora aperta CTRL+SHIFT+S, vamos salvar esse cliente em 1 pasta separada (você só vai usar ele pra esse sistema, então fique tranquilo, você não vai apagar o original). Na hora de salvar deixe desmarcado as 3 opções (Extended, Transparency, Improved Animations).



      Tendo feito isso, agora vamos voltar para o site. 
      Em Client Version você vai digitar a versão de seu cliente. Exemplo: Se for 8.60 digite 860
      Em sprite file você vai selecionar o tibia.spr do seu cliente que você exportou (esse sem efeitos)
      Em dat file você vai selecionar o tibia.dat do seu cliente que você exportou (esse sem efeitos)
      Em otb file você vai selecionar o items.otb do seu servidor.

      Agora clique em Load Files. Você deve ter 1 retorno parecido com isto:



      Agora clique em Generate Imagens e ele vai começar a gerar os frames das suas outfits.



      Ao terminar ele vai efetuar sozinho o download das outfits.




      Agora acesse este repositório no github e baixe os arquivos: https://github.com/gesior/open-tibia-library/tree/master/tools/colored-outfit-images-generator

      Tendo feito o download, você vai extrair a pasta outfits.zip que você baixo e extrair a pasta que você clonou o repositório. Ao extrair o arquivo outfits.zip você vai encontrar 1 pasta chamada outfits_anim, dentro dela você deve ter algo como isto:



      Cada pasta é referente a 1 looktype do seu cliente.
      Agora copie a pasta 'outfits_anim' que está dentro da pasta outfits que você extraiu e cole dentro da pasta do repositório que foi clonado. Ficando assim:



      Pronto, agora você somente precisa deixar essa pasta em 1 servidor web e utilizar a mesma via requisição. Exemplo:
      Se você for exibir uma outfit, você pode exibir da seguinte forma:
      <img src="http://seudominio.com/nomedapastaqueestaoosarquivos/animoutfit.php/?id=270">  
      Esse id será o looktype que você deseja. Lembrando que: Você pode colocar 1 script pra puxar a outfit de cada vocação e chamar esse diretório, ele vai exibir a imagem já com o diretório correto.
      Sugestão de uso: Para derivados de NTO/DBO e afins, você pode utilizar para exibir as outfits de transformações de cada Personagens, algo como isto:



       
      Outra opção é exibir na lista de Ranking no menu da direita (Normalmente Tibia Classico faz isso)
      A criatividade fica por conta de vocês.
       
      Créditos:
      Gesior.pl por todo o código e disponibilizar para a comunidade em 1 Forum Gringo
      A mim por disponibilizar o tutorial para a comunidade.
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo