• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    [Sistema] IP Storage System (storage por ip)

    Compartir:

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

    1default [Sistema] IP Storage System (storage por ip) el Mar Mar 20, 2018 1:12 pm

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    Hola usuarios de tibiaface



    Bueno aqui les traigo un systema de storage por ip, bueno esto para que la personas que se hacen multicuentas aprovechan de la quest y beneficio para nuevos player con esto se termina el abuso de aquel beneficio.

    en pocas palabras solo podran hacer una sola ves la quest por ip.

    ademas puede tener varias funcionalidades este systema

    Ejecutar esto en su Phpadmin y sqlite si es que trabja con sqlite

    mysql

    Código:
    CREATE TABLE player_ip_storage(
       id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
       player_id INT NOT NULL,
       ip CHAR(15) NOT NULL,
       storage INT NOT NULL
    );

    ALTER TABLE player_ip_storage ADD CONSTRAINT FK_PLAYER_ID FOREIGN KEY (player_id) REFERENCES players(id);

    Sqlite

    Código:
    CREATE TABLE player_ip_storage(
       player_id INT NOT NULL,
       ip CHAR(15) NOT NULL,
       storage INT NOT NULL
    );

    ALTER TABLE player_ip_storage ADD CONSTRAINT FK_PLAYER_ID FOREIGN KEY (player_id) REFERENCES players(id);

    Ahora nos vamos a:

    texto aqui

    copiamos cualquier archivo y renombramos por nazo-functions.lua y pegamos esto dentro

    Código:
    -- by Nazo
    -- IP Storage System

    function getIpQuestStatus(cid, storage)
       storages = db.getResult("SELECT * FROM `player_ip_storage` WHERE `ip` = \"" .. doConvertIntegerToIp(getPlayerIp(cid)) .. "\" and `storage` = "..storage..";")
       if(storages:getID() ~= -1) then
          return false
       end
       return true
    end

    function setIpQuestStatus(cid, storage)
       db.executeQuery("INSERT INTO player_ip_storage(player_id, ip, storage) VALUES("..getPlayerGUID(cid)..",\""..doConvertIntegerToIp(getPlayerIp(cid)).."\","..storage..")")
       return true
    end

    y listo como usar este systema en una quest

    setIpQuestStatus(cid,xxxxx) ----> agrega un storageip

    getIpQuestStatus(cid, xxxxxx)) ----->verifica la storageip


    aqui el scripts de una quest

    Código:
    config = {
       storage = 123123,   -- storage da quest
       premio = {2160, 1}   -- {itemid, quantia}
    }
    function onUse(cid, item, frompos, item2, toPosition)
       queststatus = getPlayerStorageValue(cid,config.storage)
       if(queststatus == -1 and getIpQuestStatus(cid, config.storage)) then   -- note que eu só adicionei a função, nenhuma comparação, explicarei abaixo do código
          doPlayerSendTextMessage(cid,22,"Tome seu prêmio.")
          doPlayerAddItem(cid,config.premio[1],config.premio[2])
          setPlayerStorageValue(cid,config.storage,1)
          setIpQuestStatus(cid,config.storage)                        -- função que adiciona a storage no banco de dados
       else
          doPlayerSendTextMessage(cid,22,"Você já fez esta quest.")
       end
    end




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

    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.

     

    BienvenidosTibiaFace es una comunidad de Open Tibia. Para participar debes estar registrado (click para Regístrate).