• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    monster en especifico quite storage

    Compartir:

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

    1monster en especifico quite storage Empty monster en especifico quite storage Miér Jul 26, 2023 11:03 am

    akane

    akane
    Miembro
    Miembro
    Hola a todos, pido nuevamente ayuda con script en donde necesito que un monster en especifico quite el storage al matar al player, ya que actualmente el player al morir con cualquier monster el player pierde el storage.

    acá mi script:

    Código:
    local playerStorage = 20018
       local pos1 = {x=368, y=1732, z=9}
       local pos2 = {x=368, y=1733, z=9}
       local pos3 = {x=368, y=1734, z=9}
       local positem = {x=370, y=1732, z=9}
       local positem2 = {x=370, y=1733, z=9}
       local positem3 = {x=370, y=1734, z=9}
       local wall1 = 9532
       
       function onDeath(cid, corpse, killer, mostDamage, unjustified, mostDamageUnjustified)
       
       if isPlayer(cid) then
        setPlayerStorageValue(cid, playerStorage, -1) -- Reinicia el valor de la quest cuando el jugador muere
        doRemoveItem(getTileItemById(positem, wall1).uid) -- Elimina la primera pared cuando el jugador muere
        doRemoveItem(getTileItemById(positem2, wall1).uid) -- Elimina la segunda pared cuando el jugador muere
        doRemoveItem(getTileItemById(positem3, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
       doRemoveItem(getTileItemById(pos1, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
       doRemoveItem(getTileItemById(pos2, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
       doRemoveItem(getTileItemById(pos3, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
       end
       
       local sguardianNpc = getCreatureByName("Seth Guardian Tomb")
          if sguardianNpc then
        doRemoveCreature(sguardianNpc)
        return true
    end
    end

    3 participantes

    2monster en especifico quite storage Empty Re: monster en especifico quite storage Miér Jul 26, 2023 1:23 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    if isPlayer(cid) then


    ahi tendrias que usar una storage mas para identificcar si posee o no aquel storage para que le quite al momento de moriri me imagino que eso es valido solo en la quest



    monster en especifico quite storage YNU5B25
    3 participantes
    http://www.tibiaface.com

    3monster en especifico quite storage Empty Re: monster en especifico quite storage Miér Jul 26, 2023 3:18 pm

    GalaxyDev

    GalaxyDev
    Miembro
    Miembro
    akane escribió:Hola a todos, pido nuevamente ayuda con script en donde necesito que un monster en especifico quite el storage al matar al player, ya que actualmente el player al morir con cualquier monster el player pierde el storage.

    acá mi script:

    Código:
    local playerStorage = 20018
       local pos1 = {x=368, y=1732, z=9}
       local pos2 = {x=368, y=1733, z=9}
       local pos3 = {x=368, y=1734, z=9}
       local positem = {x=370, y=1732, z=9}
       local positem2 = {x=370, y=1733, z=9}
       local positem3 = {x=370, y=1734, z=9}
       local wall1 = 9532
       
       function onDeath(cid, corpse, killer, mostDamage, unjustified, mostDamageUnjustified)
       
       if isPlayer(cid) then
        setPlayerStorageValue(cid, playerStorage, -1) -- Reinicia el valor de la quest cuando el jugador muere
        doRemoveItem(getTileItemById(positem, wall1).uid) -- Elimina la primera pared cuando el jugador muere
        doRemoveItem(getTileItemById(positem2, wall1).uid) -- Elimina la segunda pared cuando el jugador muere
        doRemoveItem(getTileItemById(positem3, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
       doRemoveItem(getTileItemById(pos1, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
       doRemoveItem(getTileItemById(pos2, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
       doRemoveItem(getTileItemById(pos3, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
       end
       
       local sguardianNpc = getCreatureByName("Seth Guardian Tomb")
          if sguardianNpc then
        doRemoveCreature(sguardianNpc)
        return true
    end
    end


    lo hice rapido asique nose si funcione pero intenta probar

    Código:
    local playerStorage = 20018
    local monsterName = "NombreDelMonstruoEspecifico"
    local monsterStorageToRemove = 30000
    local pos1 = {x=368, y=1732, z=9}
    local pos2 = {x=368, y=1733, z=9}
    local pos3 = {x=368, y=1734, z=9}
    local positem = {x=370, y=1732, z=9}
    local positem2 = {x=370, y=1733, z=9}
    local positem3 = {x=370, y=1734, z=9}
    local wall1 = 9532

    function onDeath(cid, corpse, killer, mostDamage, unjustified, mostDamageUnjustified)
        if isPlayer(cid) then
            local killerName = ""
            if isMonster(killer) then
                killerName = getCreatureName(killer)
            end

            if killerName == monsterName then
                doPlayerSetStorageValue(cid, monsterStorageToRemove, -1) -- Elimina el valor de almacenamiento específico
            end

            doPlayerSetStorageValue(cid, playerStorage, -1) -- Reinicia el valor de la quest cuando el jugador muere
            doRemoveItem(getTileItemById(positem, wall1).uid) -- Elimina la primera pared cuando el jugador muere
            doRemoveItem(getTileItemById(positem2, wall1).uid) -- Elimina la segunda pared cuando el jugador muere
            doRemoveItem(getTileItemById(positem3, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
            doRemoveItem(getTileItemById(pos1, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
            doRemoveItem(getTileItemById(pos2, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
            doRemoveItem(getTileItemById(pos3, wall1).uid) -- Elimina la tercera pared cuando el jugador muere
        end

        local sguardianNpc = getCreatureByName("Seth Guardian Tomb")
        if sguardianNpc then
            doRemoveCreature(sguardianNpc)
            return true
        end
    end

    PD SI TIENES ERRORES PORFAVOR PUBLICA EL ERROR XD



    [Tienes que estar registrado y conectado para ver este vínculo] Servidor 24/7 Full Animes  Smile    MI GITHUB (REVSCRIPTS TFS 1.3-1.5))
    3 participantes

    4monster en especifico quite storage Empty Re: monster en especifico quite storage Miér Jul 26, 2023 3:29 pm

    GalaxyDev

    GalaxyDev
    Miembro
    Miembro
    Código:
    local playerStorage = 20018
    local monsterName = "NombreDelMonstruoEspecifico"
    local monsterStorageToRemove = 30000
    local wall1 = 9532

    local positions = {
        {x=368, y=1732, z=9},
        {x=368, y=1733, z=9},
        {x=368, y=1734, z=9},
        {x=370, y=1732, z=9},
        {x=370, y=1733, z=9},
        {x=370, y=1734, z=9}
    }

    function onPrepareDeath(cid, deathList)
        local killer = deathList[1].killer
        if isPlayer(cid) and isMonster(killer) then
            local killerName = getCreatureName(killer)
            if killerName == monsterName then
                doPlayerSetStorageValue(cid, monsterStorageToRemove, -1) -- Elimina el valor de almacenamiento específico
            end
        end
        return true
    end

    function onDeath(cid, corpse, killer, mostDamage, unjustified, mostDamageUnjustified)
        if not isPlayer(cid) then
            return true
        end

        for _, pos in ipairs(positions) do
            doRemoveItem(getTileItemById(pos, wall1).uid)
        end

        doPlayerSetStorageValue(cid, playerStorage, -1)

        local sguardianNpc = getCreatureByName("Seth Guardian Tomb")
        if sguardianNpc then
            doRemoveCreature(sguardianNpc)
        end

        return true
    end



    esta es una version mas optimizada igual pruebala porsiacaso XD



    [Tienes que estar registrado y conectado para ver este vínculo] Servidor 24/7 Full Animes  Smile    MI GITHUB (REVSCRIPTS TFS 1.3-1.5))
    3 participantes

    5monster en especifico quite storage Empty Re: monster en especifico quite storage Jue Jul 27, 2023 9:13 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    el primer scripts que te cree no funciono prueba este

    Código:


    function onPrepareDeath(cid, killers)
       local ret, areas = 0,{
          {{x=180,y=50,z=6}, {x=189,y=59,z=6}} -- pos incio y final del area boss
       }
       
       for _, var in ipairs(areas) do
          if isInRange(getPlayerPosition(cid), var[1], var[2]) then
             ret = ret + 1
          end
       end
       if ret == 0 then
          return true
       end
       setPlayerStorageValue(cid, storage, -1) -- Reinicia el valor de la quest cuando el jugador muere
       doCreatureSay(cid, "Usted Murio", TALKTYPE_ORANGE_1)
       return false
    end



    monster en especifico quite storage YNU5B25
    3 participantes
    http://www.tibiaface.com

    Contenido patrocinado


    3 participantes

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