• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    Teleport player to temple on prepare death tfs 1.x

    Compartir:

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

    felipe93x2

    felipe93x2
    Miembro
    Miembro
    Descripcion escribió:Hola estoy usando tfs 1.5

    mi problema es que no puedo indexar dos scripts para que el player sea teleportado a x temple, esto consiste de dos scripts ell primero esta en globalevents y funciona bien, si el player muere es teleportado a la ciudad seleccionada
    Código:
    --agregado war changemap
    local config = {
        townIds = {
            [1] = "Thais",
            [2] = "Edron",
            [3] = "Carlin",
            [4] = "Venore"
        },

        globalStorage = 100
    }
    function onThink(interval, lastExecution)
        local players = Game.getPlayers()
        if #players == 0 then
            return true
        end

        Game.setStorageValue(config.globalStorage, math.max(1, Game.getStorageValue(config.globalStorage) or 1) + 1)

        local towns = config.townIds[Game.getStorageValue(config.globalStorage)]
        if not towns then
            Game.setStorageValue(config.globalStorage, 1)
            towns = config.townIds[Game.getStorageValue(config.globalStorage)]
        end

        local position, player = Town(Game.getStorageValue(config.globalStorage)):getTemplePosition()
        for i = 1, #players do
            player = players[i]
            player:teleportTo(position)
            player:addHealth(player:getMaxHealth())
            player:addMana(player:getMaxMana())
            player:sendTextMessage(MESSAGE_STATUS_WARNING, "The map has been changed to ".. towns .." and all players have been teleported to the respective temple. Next map change will be in 30 minutes!")
        end

        position:sendMagicEffect(CONST_ME_TELEPORT)
        print("The map has been changed to ".. towns .." and all players have been teleported to the respective  temple. Next map change will be in 30 minutes!")
        return true
    end


    luego tego este otro script que funcionaba bien hasta que quiero hacer que se vaya al templo al tener hp 0
    Código:

    dofile('data/globalevents/scripts/ChangeMap.lua')
    local creatureevent = CreatureEvent("onDeath_removeSkulls")

    local config = {
        townIds = {
            [1] = "Thais",
            [2] = "Edron",
            [3] = "Carlin",
            [4] = "Venore"
        },

        globalStorage = 100
    }
    function creatureevent.onPrepareDeath(player, killer)

     local position, player = Town(Game.getStorageValue(config.globalStorage)):getTemplePosition()
     
       if player:getHealth() == 0 then
          player:teleportTo(position)
           player:addHealth(player:getMaxHealth())
            player:addMana(player:getMaxMana())
          creature:setStorageValue(storage, 0)
          creature:setSkullTime(0)
          creature:setSkullTime(SKULL_NONE)
          creature:addSoul(-100)
       end
    end
          return true
       end
    creatureevent:register()

    el problema esta en chequear la posicion de la ciudad creo porque si lo dejo asi como se muestra abajo, el player quita las frags remueve la skull etc
    Código:
    local creatureevent = CreatureEvent("onDeath_removeSkulls")

    function creatureevent.onPrepareDeath(player, killer)
     
       if player:getHealth() == 0 then
          creature:setStorageValue(storage, 0)
          creature:setSkullTime(0)
          creature:setSkullTime(SKULL_NONE)
          creature:addSoul(-100)
    end
          return true
       end
    creatureevent:register()

    Captura del Error escribió:Imagen del error: Teleport player to temple on prepare death tfs 1.x Empty
    El error radica en: Otro Problema

    2 participantes

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    lo que le falta a tu scripts es el

    Código:
    player:setTown(?)

    como decirte al hacer el global events y te leportar a todos los player a la siguiente town el script tendra que ejecutar esa linea para colocarle la town designada por el global event por lo tanto al morir van aparecer en la town designada por el sistema



    Teleport player to temple on prepare death tfs 1.x YNU5B25
    2 participantes
    http://www.tibiaface.com

    felipe93x2

    felipe93x2
    Miembro
    Miembro
    igual aun no funciona que no se logeen si no que sean teleportados al templo, como los server de wars de antes que el player no logeaba para asi no tener que cerrar las bps y el player sigue logeando

    2 participantes

    Contenido patrocinado


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