• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    [Sistema] Death Channel tfs 0.3.7/0.4.0/ otx 2

    Compartir:

    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



    Bueno aqui les traigo el Death Channel no se anunciaran todas la muertes en el servidor.





    instalacion:

    nos vamos a data/XML/channels.xml y agregamos

    Código:
    <channel id="15" name="Death Channel"/>

    en data/creaturescripts/creaturescripts.xml agregamos

    Código:
    <event type="death" name="deathchannel" event="script" value="deathchannel.lua"/>

    registramos en login.lua:

    Código:
    registerCreatureEvent(cid, "deathchannel")

    en data/creaturescripts/scripts copiamos cualquier archivo y renombramos por deathchannel.lua y pegamos esto dentro

    Código:
    -- Coded by Zoom..
    local info, win, lose = "%s [Level: %s] foi mort%s pelo %s %s%s", "%s obteve %s frags seguidos após derrotar %s.", "%s acabou de impedir que %s fizesse uma sequência de %s frags seguidos."
    local frags, storage = {10, 15, 20, 25, 30, 35, 40, 45, 50}, 30045

    function onDeath(cid, corpse, deathList)
        if(not isPlayer(cid)) then
            return true
        end
       
        local target = deathList[1]
        doCreatureSetStorage(target, storage, getCreatureStorage(target, storage) + (getCreatureStorage(target, storage) == -1 and 2 or 1))
       
        for _, pid in ipairs(getPlayersOnline()) do
            doPlayerSendChannelMessage(pid, '', info:format(getCreatureName(cid), getPlayerLevel(cid), getPlayerSex(cid) == 1 and "o" or "a", isPlayer(target) and "player" or "monstro", getCreatureName(target), isPlayer(target) and " [Level: "..getPlayerLevel(target).."]." or "."), TALKTYPE_CHANNEL_ORANGE, 0xF)
            for _, frag in ipairs(frags) do
                if(getCreatureStorage(target, storage) == frag) then
                    doPlayerSendChannelMessage(pid, '', win:format(getCreatureName(target), frag, getCreatureName(cid)), TALKTYPE_CHANNEL_MANAGEMENT, 0xF)
                end
               
                if(getCreatureStorage(cid, storage) >= frag) then
                    doPlayerSendChannelMessage(pid, '', lose:format(getCreatureName(target), getCreatureName(cid), getCreatureStorage(cid, storage)+1), TALKTYPE_GAMEMASTER_CHANNEL, 0xF)
                end
            end
        end
       
        doCreatureSetStorage(cid, storage, 0)
        return true
    end

    Hay una única configuración, que es la consecutiva:

    local frags = {10, 15, 20, 25, 30, 35, 40, 45, 50}

    ¿completó 10 frags? anuncia! y así sucesivamente..



    Ver perfil de usuario http://www.tibiaface.com
    Que Buen Aporte Smile



    Solucion Al Debug Del DeathChannel "CreatureScripts".

    Código:
    -- Coded by Zoom..
    local info, win, lose = "%s [Level: %s] foi mort%s pelo %s %s%s", "%s obteve %s frags seguidos após derrotar %s.", "%s acabou de impedir que %s fizesse uma sequência de %s frags seguidos."
    local frags, storage = {10, 15, 20, 25, 30, 35, 40, 45, 50}, 30045

    function onDeath(cid, corpse, deathList)
    if(not isPlayer(cid)) then
    return true
    end

    local target = deathList[1]
    doCreatureSetStorage(target, storage, getCreatureStorage(target, storage) + (getCreatureStorage(target, storage) == -1 and 2 or 1))

    for _, pid in ipairs(getPlayersOnline()) do
    doPlayerSendChannelMessage(pid, '', info:format(getCreatureName(cid), getPlayerLevel(cid), getPlayerSex(cid) == 1 and "o" or "a", isPlayer(target) and "player" or "monstro", getCreatureName(target), isPlayer(target) and " [Level: "..getPlayerLevel(target).."]." or "."), TALKTYPE_CHANNEL_O, 0xF)
    for _, frag in ipairs(frags) do
    if(getCreatureStorage(target, storage) == frag) then
    doPlayerSendChannelMessage(pid, '', win:format(getCreatureName(target), frag, getCreatureName(cid)), TALKTYPE_CHANNEL_W, 0xF)
    end

    if(getCreatureStorage(cid, storage) >= frag) then
    doPlayerSendChannelMessage(pid, '', lose:format(getCreatureName(target), getCreatureName(cid), getCreatureStorage(cid, storage)+1), TALKTYPE_CHANNEL_RN, 0xF)
    end
    end
    end

    doCreatureSetStorage(cid, storage, 0)
    return true
    end

    Ver perfil de usuario

    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).