• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    [Ayuda] [Ayuda] [Ayuda] [Ayuda] [TFS 1.3] RewardFrag

    Compartir:

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

    liran

    liran
    Miembro
    Miembro
    Descripcion escribió:Quién me puede ayudar con un script para que al matar un player me den items?

    Código:
    function onKill(cid, target, lastHit)
        local attackPlayer = Player(target)
        if not attackPlayer then
            return true
        end

        for id, damage in pairs(attackPlayer:getDamageMap()) do
            local player = Player(id)
            if player then
                if attackPlayer:getLevel() >= player:getLevel() then
                    local experience = attackPlayer:getExperience()
                    local expFormula = ((experience / 100) * 0.75)
                    player:addExperience(math.floor(expFormula), true)
                end
            end
        end
    end

    Tengo éste pero no me da ni error, ni items.
    Lo tengo también agregado en creaturescripts.xml
    Imagen Explicativa escribió:Imagen Explicativa: [Ayuda] [Ayuda] [Ayuda] [Ayuda] [TFS 1.3] RewardFrag Tibiaf10
    Version del Scripts: TFs 1.x

    Dragonnixe

    Dragonnixe
    Miembro
    Miembro
    no se si te sirva pero a ver intenta

    Código:
    local prize = {
        [1] = {chance = 1, id = 2358, amount = 1 },
        [2] = {chance = 2, id = 11144, amount = 1 },
        [3] = {chance = 3, id = 12544, amount = 1 },
        [4] = {chance = 4, id = 2640, amount = 1 },
        [5] = {chance = 5, id = 2520, amount = 1 },
        [6] = {chance = 10, id = ITEM_CRYSTAL_COIN, amount = 17 },
       [7] = {chance = 20, id = ITEM_GOLD_COIN, amount = 1 },
       [8] = {chance = 30, id = ITEM_CRYSTAL_COIN, amount = 1 },
       [9] = {chance = 40, id = ITEM_GOLD_COIN, amount = 50 },
       [10] = {chance = 50, id = ITEM_PLATINUM_COIN, amount = 15 },
       [11] = {chance = 90, id = ITEM_GOLD_COIN, amount = 80},
    }

    function onKill(cid, target, lastHit)
        local attackPlayer = Player(target)
        if not attackPlayer then
            return true
        end

        for id, damage in pairs(attackPlayer:getDamageMap()) do
            local player = Player(id)
            if player then
                if attackPlayer:getLevel() >= player:getLevel() then
                    local experience = attackPlayer:getExperience()
                    local expFormula = ((experience / 100) * 0.75)
                    player:addExperience(math.floor(expFormula), true)
                    for i = 1,#prize do local number = math.random() * 100
             if prize[i].chance>100-number then
            player:getPosition():sendMagicEffect(CONST_ME_POFF)
            player:addItem(prize[i].id, prize[i].amount)
            item:remove()
            break
        end
        end
                end
            end
        end
    end

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    asi


    Código:
    local reward, count = 2152, 1  ----------> id del item y cantindad

    function onKill(creature, target)
        if creature:getPlayer() and target:getPlayer() then
            if creature:getIp() ~= target:getIp() then
                if target:getLevel() <= 132 then  ---------> dice que si matas player level 132 en adelante reciviras el objeto
                    target:addItem(reward, count)
                end
            else
                creature:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, 'You may not get a reward by killing a player with the same IP as yours.')
            end
        end
        return true
    end



    [Ayuda] [Ayuda] [Ayuda] [Ayuda] [TFS 1.3] RewardFrag YNU5B25
    https://www.tibiaface.com

    liran

    liran
    Miembro
    Miembro
    @"dragonixxe"
    [Tienes que estar registrado y conectado para ver este vínculo]

    Intenté los dos scripts, pero sigue igual...
    sin error en consola y sin funcionar

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    prueba asi

    Código:

    local vocation_items = {
        [1] = {2160, 100}, -- Sorcerer
        [2] = {2160, 100}, -- Druid
        [3] = {2160, 100}, -- Paladin
        [4] = {2160, 100}, -- Knight
    }

    function onDeath(creature, corpse, killer, mostDamageKiller, lastHitUnjustified)
        if not corpse or not killer or not killer:isPlayer() then
            return true
        end

        local killer = killer:getPlayer()
        local vocation_item = vocation_items[killer:getVocation():getBase():getId()]
        if vocation_item then
            corpse:addItem(vocation_item[1], vocation_item[2])
        end
        return true
    end

    y esoto agrega a tu global.lua

    Código:

    function Vocation.getBase(self)
        local base = self
        while base:getDemotion() do
            base = base:getDemotion()
        end
        return base
    end


    y reinicia el servidor



    [Ayuda] [Ayuda] [Ayuda] [Ayuda] [TFS 1.3] RewardFrag YNU5B25
    https://www.tibiaface.com

    liran

    liran
    Miembro
    Miembro
    [Tienes que estar registrado y conectado para ver este vínculo]
    no funciona xd :/

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    pruebe en ves de un kill use un ondeath y testee

    Código:



    local reward, count = 2152, 1  ----------> id del item y cantindad

    function onDeath(creature, corpse, killer, mostDamageKiller, lastHitUnjustified, mostDamageUnjustified)
        if isPlayer(creature) then
            killers = creature:getDamageMap()
                for i, v in ipairs(killers) do
                    PLAYER = Player(v)
                        if PLAYER then
                            PLAYER:addItem(reward, count)
                        end
                end
        end
    return true
    end



    [Ayuda] [Ayuda] [Ayuda] [Ayuda] [TFS 1.3] RewardFrag YNU5B25
    https://www.tibiaface.com

    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.

     

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