• TibiaFace

    Tibiaface | Una comunidad Open Tibia donde encontras : mapas, scripts, Otserver, npc y amigos etc ...

    .
    demo menumenu

    Afiliados



    Votar:

    [Talkactions] (TFS 0.4) Add e Remover Premium points por comando

    Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje (Página 1 de 1.)

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    hola usuarios de tibiaface


    hoy les traigo un talkaction que añade y remueve premium point de la cuenta de un usuarios, si un ustedes cometieron un error al entregar un premio como los premium point ustedes podran retirar la cantidad errada.

    bueno es una simple instalcion:

    nos vamos a:

    data/talkactions/scripts

    copiamos cualquier archivo y renombramos por premium_points.lua pegamos esto dentro:

    Código:
    function onSay(cid, words, param)

       local t = string.explode(param, ",")
       if param == '' then
          doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Missing params.")
          return true
       end 
       local player,balance,pid = getPlayerByName(t[1]),t[2],getPlayerByNameWildcard(t[1]) 
       if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then 
          doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "That players doesnt exist or is offline.") 
          return TRUE 
       end
       if t[2] == null then
          doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Missing ammount of points.")
          return TRUE
       end
       local accountName = getPlayerAccount(player)
       local accountPoints = db.getResult("SELECT `premium_points` FROM `accounts` WHERE `name` = '" .. accountName .. "' LIMIT 1;")
       local points = tonumber(accountPoints:getDataInt("premium_points"))
       local name = getPlayerName(cid)
       if(words == "/addpoints")then
          doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You added "..balance.." premium points to "..t[1].."\'s account.")
          doPlayerSendTextMessage(player, MESSAGE_STATUS_CONSOLE_ORANGE, "You got "..balance.." premium points from "..name..".") 
          points = (points+balance)
          db.executeQuery("UPDATE `accounts` SET `premium_points` = " .. points .. " WHERE `name`='" .. accountName .. "' LIMIT 1;")   
       elseif (words == "/removepoints") then
          points = (points-balance)
          if points < 0 then
             doPlayerSendTextMessage(player, MESSAGE_STATUS_CONSOLE_ORANGE, ""..name.." removed all your premium points.")
             doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You removed all "..t[1].."\'s account premium points.")
             db.executeQuery("UPDATE `accounts` SET `premium_points` = '0' WHERE `name`='" .. accountName .. "' LIMIT 1;")
          else   
             doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You removed "..balance.." premium points to "..t[1].."\s account.")
             db.executeQuery("UPDATE `accounts` SET `premium_points` = " .. points .. " WHERE `name`='" .. accountName .. "' LIMIT 1;")   
             doPlayerSendTextMessage(player, MESSAGE_STATUS_CONSOLE_ORANGE, ""..name.." removed "..balance.." premium points from your account.")
          end
       end
       return true 
    end 


    luego añadimos esta tag en:

    data/talkactions/talkactions.xml


    Código:
    <talkaction words="/addpoints;/removepoints" access="3" script="premium_points.lua"/>


    guia:

    /COMANDO PLAYER, QUANTIDADE

    ejemplo:

    !Addpoints [Admin] God Maya, 10 <<<< cantindad

    creditos: luanluciano93



    Ver perfil de usuario http://www.tibiaface.com

    hecticosb

    avatar
    Nuevo Miembro
    Nuevo Miembro
    SOY NUEVO EN ESTA PAGINA!! ME HE GUIADO POR AQUI PARA PORNER MI SERVER DE BUENAS, PERO TENGO ESTE PROBLEMA CON LOS PREMIUM POINTS, ESTO ES LO QUE ME APARECE EN LA CONSOLA CUANDO LE DOY POINTS A UN PLAYER:

    [18/09/2016 22:25:29] Error during getDataInt(premium_points).

    Y al parecer no le da los points al player.

    ¿Como hago para resolver eso?

    Ver perfil de usuario

    bjhp12

    avatar
    Nuevo Miembro
    Nuevo Miembro
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:SOY NUEVO EN ESTA PAGINA!! ME HE GUIADO POR AQUI PARA PORNER MI SERVER DE BUENAS, PERO TENGO ESTE PROBLEMA CON LOS PREMIUM POINTS, ESTO ES LO QUE ME APARECE EN LA CONSOLA CUANDO LE DOY POINTS A UN PLAYER:

    [18/09/2016 22:25:29] Error during getDataInt(premium_points).

    Y al parecer no le da los points al player.

    ¿Como hago para resolver eso?

    Este comando funciona en tfs 0.4, tendras que ver cual tfs usas. Talvez ya no se usa getDataInt en tu tfs

    Ver perfil de usuario

    Contenido patrocinado


    Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje (Página 1 de 1.)

    Permisos de este foro:
    No puedes responder a temas en este foro.