Ir para conteúdo
  • 0

Rastrear Storage de BANK


Thiach

Pergunta

Pessoal peço que me ajudem por favor..

 

Alguns players bugaram dinheiro no meu servidor, e eu queria rastrear o banco de cada player, como faço? Muitos fizeram fakes e está praticamente impossivel de ficar logando na conta de cada um..

 

Algum storage onde eu possa ver na database um valor absurdo de dinheiro?

 

HELP! Valendo rep+

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Primeiramente, para você checar o balance do player:

 

Crie um arquivo, dê o nome de checkbalance.lua e adicione isto:

function onSay(cid, words, param, channel)
   local pid = 0
   local pBalance = 0
   local name = 0
 
   if(param == '') then
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "The parameter can not be a nil value.")
      return true
   end
 
   pid = getPlayerGUIDByName(param)
 
   if(not pid) then
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "This player does not exist.")
      return true
   else
      pBalance = db.getResult("SELECT `balance` FROM `players` WHERE `id` = " ..pid)
      name = getPlayerNameByGUID(pid)
   end
 
   return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, pBalance:getDataString("balance").. " is the balance of " ..name.. ".")
end

Depois, para você modificar o balance:

 

Crie um arquivo, dê o nome de setbalance.lua e adicione isto:

function onSay(cid, words, param, channel)
   if(param == '') then
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "The parameter can not be a nil value.")
      return true
   end
 
   local t = string.explode(param, ",")
   local pid = getPlayerGUIDByName(t[1])
   local amount = t[2]
 
   if(not pid) then
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "This player does not exist.")
      return true
   else
      local name = getPlayerNameByGUID(pid)
   end
 
   if(not amount) then
      db.executeQuery("UPDATE `players` SET `balance` = 0 WHERE `id` = " ..pid)
      return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "The balance of " .. name .. " is now 0.")
   else
      db.executeQuery("UPDATE `players` SET `balance` = " .. amount .. " WHERE `id` = " ..pid)
      return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "The balance of " .. name .. " is now " .. amount .. ".")
   end
end

Para finalizar, adicione as tags XML no arquivo talkactions.xml:

<talkaction log="yes" access="5" words="/checkbalance" event="script" value="checkbalance.lua"/>
<talkaction log="yes" access="5" words="/setbalance" event="script" value="setbalance.lua"/>

Agora é só utilizar "/checkbalance NomeDoPlayer" para checar o balance dele e "/setbalance NomeDoPlayer, Quantidade" para deixar o balance com a Quantidade desejada.

 

Obs.: Não testei.

Editado por GustavoCastilho
Link para o comentário
Compartilhar em outros sites

  • 0

mas ae n tem que checar player por player?

 

bom seria retornar as lista e até mesmo mudar esse valor do banco

 

mas seu script fico mto bom gustavo, vi q aprendeu rápido

 

rep+

Link para o comentário
Compartilhar em outros sites

  • 0

mas ae n tem que checar player por player?

 

bom seria retornar as lista e até mesmo mudar esse valor do banco

 

mas seu script fico mto bom gustavo, vi q aprendeu rápido

 

rep+

 

Pois é. Agora lendo o tópico dele novamente reparei que ele queria algo mais abrangente. Mesmo assim está valendo.

Ando estudando bastante isso, sempre que posso. E aquela sua ajuda no meu tópico também contribuiu bastante para isso.

Fico grato pelo elogio e pelo REP+. Obrigado!

 

Obs.: Se ele quiser do modo que você disse, você que faz, porque eu não sei fazer essa varredura, ainda! iuheiauheaiuh

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...