• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    ayuda completar script

    Compartir:

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

    1default ayuda completar script Miér Ago 18, 2021 6:02 pm

    JeisonG-vnzla

    JeisonG-vnzla
    Miembro
    Miembro
    Descripcion escribió:
    Código:
    local c = {
        limit = 1, -- Límite de jugadores que podrán entrar.
        msgCancel = 'TEM 1 ESPERA SUA TURNO.', -- 'Mensaje' cuando ya se haya llenado el límite de jugadores anterior.
     
        area = {
          From = {x = 486, y = 1827, z = 7}, -- Coordenada de la ESQUINA SUPERIOR IZQUIERDA del área al que son teletransportados.
          To = {x = 502, y = 1838, z = 7}, -- Coordenada de la ESQUINA INFERIOR DERECHA del área al que son teletransportados.
        },
     
        pos = {x = 494, y = 1837, z = 7}, -- Coordenada del lugar donde será teletransportado el jugador (Dentro del área anterior)
       monster = "Tiny",
      }
     
    local function getPlayersInArea(fromPos, toPos)
      local t = {}
     
        for _, cid in ipairs(getPlayersOnline()) do
            if isInRange(getThingPos(cid), fromPos, toPos) then
                table.insert(t, cid)
            end
        end
     
      return t
    end

    local count = 50
     
    local itemx= 2328
     
    function onStepIn(cid, item, fromPos, toPos)
        if isPlayer(cid) then

      if table.getn(getPlayersInArea(c.area.From, c.area.To)) < c.limit then
     
    if getPlayerItemCount(cid, itemx) >= count then
    doPlayerRemoveItem(cid,2328,50)
                doSendMagicEffect(fromPos, CONST_ME_TELEPORT)
                doTeleportThing(cid, c.pos)
                doSendMagicEffect(getThingPos(cid), CONST_ME_TELEPORT)
             doSummonCreature(c.monster, c.pos)
    else
    doPlayerSendCancel(cid, "You dont have 50 ONLINE PONTOS pra ter access!")
    doTeleportThing(cid, toPos, false)
    end
            else
              doPlayerSendCancel(cid, c.msgCancel)
              doTeleportThing(cid, toPos, false)
            end
     
        end
     
      return true
    end

    EL PROBLEMA QE TENGO ES QE AL MORIR UN PLAYER DENTRO DE LA ZONE Y ENTRA EL OTRO CREA OTRO SUMMON ESTANDO EL ANTERIOR HAY ESTUBE intentando con local spec = getSpectators mas no di como integrarla para borrar el boss anterior
    Imagen Explicativa escribió:Imagen Explicativa: ayuda completar script Tibiaf10
    Version del Scripts: TFs 0.4.0

    4 participantes

    2default Re: ayuda completar script Miér Ago 18, 2021 8:13 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    aqui tienes

    Código:

    local c = {
        limit = 1, -- Límite de jugadores que podrán entrar.
        msgCancel = 'TEM 1 ESPERA SUA TURNO.', -- 'Mensaje' cuando ya se haya llenado el límite de jugadores anterior.
     
        area = {
          From = {x = 486, y = 1827, z = 7}, -- Coordenada de la ESQUINA SUPERIOR IZQUIERDA del área al que son teletransportados.
          To = {x = 502, y = 1838, z = 7}, -- Coordenada de la ESQUINA INFERIOR DERECHA del área al que son teletransportados.
        },
     
        pos = {x = 494, y = 1837, z = 7}, -- Coordenada del lugar donde será teletransportado el jugador (Dentro del área anterior)
        monster = "Tiny",
      }
     
      --------------------------------- para eliminar el monster -------------------------------
    local from = {x = 1234, y = 1234, z = 7}  ------- esquina derecha superios del area de donde entran
        local to = {x = 1234, y = 1234, z = 7}  ------ esquina izquierda inferior del area de donde entran
       
       
          --------------------------------- para eliminar el monster -------------------------------
     
    local function getPlayersInArea(fromPos, toPos)
      local t = {}
     
        for _, cid in ipairs(getPlayersOnline()) do
            if isInRange(getThingPos(cid), fromPos, toPos) then
                table.insert(t, cid)
            end
        end
     
      return t
    end

    local count = 50
     
    local itemx= 2328
     
    function onStepIn(cid, item, fromPos, toPos)
        if isPlayer(cid) then

      if table.getn(getPlayersInArea(c.area.From, c.area.To)) < c.limit then
     
    if getPlayerItemCount(cid, itemx) >= count then
    doPlayerRemoveItem(cid,2328,50)
                doSendMagicEffect(fromPos, CONST_ME_TELEPORT)
                doTeleportThing(cid, c.pos)
                doSendMagicEffect(getThingPos(cid), CONST_ME_TELEPORT)
             doSummonCreature(c.monster, c.pos)
               
               
     
        for x = from.x, to.x do
            for y = from.y, to.y do
                for z = from.z, to.z do
                    pos = {x = x, y = y, z = z, stackpos = 253}
                    v = getThingfromPos(pos).uid
                    if isMonster(v) then
                      doRemoveCreature(v)
                    end
                end
            end
        end
               
               
               
               
               
    else
    doPlayerSendCancel(cid, "You dont have 50 ONLINE PONTOS pra ter access!")
    doTeleportThing(cid, toPos, false)
    end
            else
              doPlayerSendCancel(cid, c.msgCancel)
              doTeleportThing(cid, toPos, false)
            end
     
        end
     
      return true
    end



    ayuda completar script YNU5B25
    4 participantes
    https://www.tibiaface.com

    3default test Jue Ago 19, 2021 12:30 am

    JeisonG-vnzla

    JeisonG-vnzla
    Miembro
    Miembro
    lo testee exactamente como me dijistes, pero no remueve el monster del room al entrar con otro players ya sale el 2do boss ...

    y coloqe los sqm exactos a como esta en la funcion

    4 participantes

    4default Re: ayuda completar script Jue Ago 19, 2021 10:49 am

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    aqui tienes

    Código:



    local c = {
        limit = 1, -- Límite de jugadores que podrán entrar.
        msgCancel = 'TEM 1 ESPERA SUA TURNO.', -- 'Mensaje' cuando ya se haya llenado el límite de jugadores anterior.
     
        area = {
          From = {x = 486, y = 1827, z = 7}, -- Coordenada de la ESQUINA SUPERIOR IZQUIERDA del área al que son teletransportados.
          To = {x = 502, y = 1838, z = 7}, -- Coordenada de la ESQUINA INFERIOR DERECHA del área al que son teletransportados.
        },
     
        pos = {x = 494, y = 1837, z = 7}, -- Coordenada del lugar donde será teletransportado el jugador (Dentro del área anterior)
        monster = "Tiny",
      }
     
     

       
     
     
    local function getPlayersInArea(fromPos, toPos)
      local t = {}
     
        for _, cid in ipairs(getPlayersOnline()) do
            if isInRange(getThingPos(cid), fromPos, toPos) then
                table.insert(t, cid)
            end
        end
     
      return t
    end

    local count = 50
     
    local itemx= 2328
     
    function onStepIn(cid, item, fromPos, toPos)
        if isPlayer(cid) then

      if table.getn(getPlayersInArea(c.area.From, c.area.To)) < c.limit then
     
    if getPlayerItemCount(cid, itemx) >= count then
    doPlayerRemoveItem(cid,2328,50)
                doSendMagicEffect(fromPos, CONST_ME_TELEPORT)
                doTeleportThing(cid, c.pos)
                doSendMagicEffect(getThingPos(cid), CONST_ME_TELEPORT)
            doSummonCreature(c.monster, c.pos)
               
               

     
          --------------------------------- para eliminar el monster -------------------------------

    local t = {}
     
    for x = 100, 200 do    ----------------------x 100 y 200  esquina superior izquierda
       for y = 100, 200 do  ----------------------x 100 y 200  esquina esquina inferior derecha
          local v = getTopCreature({x=x, y=y, z=7}).uid  ------------- z 7  nivel del floor o subsuelo
          if isMonster(v) then
             table.insert(t, v)
          end
       end
    end
     
    for i = 1, #t do
       doRemoveCreature(t[i])
    end

     
          --------------------------------- para eliminar el monster -------------------------------
               
               
               
               
    else
    doPlayerSendCancel(cid, "You dont have 50 ONLINE PONTOS pra ter access!")
    doTeleportThing(cid, toPos, false)
    end
            else
              doPlayerSendCancel(cid, c.msgCancel)
              doTeleportThing(cid, toPos, false)
            end
     
        end
     
      return true
    end



    ayuda completar script YNU5B25
    4 participantes
    https://www.tibiaface.com

    5default Re: ayuda completar script Jue Ago 19, 2021 11:29 am

    Touch Me

    Touch Me
    Miembro
    Miembro
    Este no lo remueve, lo que hace es ver si hay un monstruo y no crear uno nuevo al entrar
    Código:

    local c = {
        limit = 1, -- Límite de jugadores que podrán entrar.
        msgCancel = 'TEM 1 ESPERA SUA TURNO.', -- 'Mensaje' cuando ya se haya llenado el límite de jugadores anterior.
     
        area = {
          From = {x = 486, y = 1827, z = 7}, -- Coordenada de la ESQUINA SUPERIOR IZQUIERDA del área al que son teletransportados.
          To = {x = 502, y = 1838, z = 7}, -- Coordenada de la ESQUINA INFERIOR DERECHA del área al que son teletransportados.
        },
     
        pos = {x = 494, y = 1837, z = 7}, -- Coordenada del lugar donde será teletransportado el jugador (Dentro del área anterior)
       monster = "Tiny",
      }
     
    local function getPlayersInArea(fromPos, toPos)
      local t = {}
     
        for _, cid in ipairs(getPlayersOnline()) do
            if isInRange(getThingPos(cid), fromPos, toPos) then
                table.insert(t, cid)
            end
        end
     
      return t
    end

    local count = 50
     
    local itemx= 2328
     
    function onStepIn(cid, item, fromPos, toPos)
    local amount = 0
    local fromPos = {x = 486, y = 1827, z = 7} -- Coordenada de la ESQUINA SUPERIOR IZQUIERDA del área al que son teletransportados.
    local toPos = {x = 502, y = 1838, z = 7} -- Coordenada de la ESQUINA INFERIOR DERECHA del área al que son teletransportados.
        if isPlayer(cid) then

       if table.getn(getPlayersInArea(c.area.From, c.area.To)) < c.limit then
     if getPlayerItemCount(cid, itemx) >= count then
       doPlayerRemoveItem(cid,2328,50)
                doSendMagicEffect(fromPos, CONST_ME_TELEPORT)
                doTeleportThing(cid, c.pos)
                doSendMagicEffect(getThingPos(cid), CONST_ME_TELEPORT)

    for x = fromPos.x, toPos.x do
    for y = fromPos.y, toPos.y do
    for z = fromPos.z, toPos.z do
    local monster = getTopCreature({x=x,y=y,z=z}).uid
    if(isMonster(monster) == TRUE) then
    end  
    end
    end
    end
    end
    if(amount == 0) then
    doSummonCreature(c.monster, c.pos)
    end        
    else
    doPlayerSendCancel(cid, "You dont have 50 ONLINE PONTOS pra ter access!")
    doTeleportThing(cid, toPos, false)
    end
             else
               doPlayerSendCancel(cid, c.msgCancel)
               doTeleportThing(cid, toPos, false)
            end
     

       
     
      return true
    end

    4 participantes
    http://google.com

    6default . Jue Ago 19, 2021 11:20 pm

    JeisonG-vnzla

    JeisonG-vnzla
    Miembro
    Miembro
    Touch me amigo sigue saliendo varios boss si muero y entro vuelve a salir otro, y EL DE MAYA ya no quita nada para entrar y no sale el boss

    4 participantes

    7default Re: ayuda completar script Vie Ago 20, 2021 12:52 am

    Touch Me

    Touch Me
    Miembro
    Miembro
    Te tira algún error en consola?
    Editaste bien las coordenadas arriba y las que agregue abajo?

    4 participantes
    http://google.com

    8default . Vie Ago 20, 2021 11:01 pm

    JeisonG-vnzla

    JeisonG-vnzla
    Miembro
    Miembro
    no tou No marca ningun error Simplemente sigen saliendo boss, osea me dejo matar y cuando entro vuelve a salir el otro te muestro este script si funciona [Tienes que estar registrado y conectado para ver este vínculo]

    pero hay faltaria entoncs agregarle qe pida 1 items para entrar y lo quite

    y max 1 players por room hasta matar y salir

    4 participantes

    9default Re: ayuda completar script Lun Ago 23, 2021 1:18 pm

    Dfsuno

    Dfsuno
    Miembro
    Miembro
    Porque no agregas una puerta que te quite cuando entras o un piso, con ese script?

    4 participantes

    10default - Lun Ago 23, 2021 1:26 pm

    JeisonG-vnzla

    JeisonG-vnzla
    Miembro
    Miembro
    lo tengo con 1 tlpor pero al entrar y morir el players, al volver sale otro boss aparte del qe ya esta, y lo qe intento es qe no salga mas boss solo el qe esta hasta morir

    4 participantes

    11default Re: ayuda completar script Lun Ago 23, 2021 3:59 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:lo tengo con 1 tlpor pero al entrar y morir el players, al volver sale otro boss aparte del qe ya esta, y lo qe intento es qe no salga mas boss solo el qe esta hasta morir

    y cuales ese scripts que ta funcionando y que quieres modificar



    ayuda completar script YNU5B25
    4 participantes
    https://www.tibiaface.com

    12default este maya Lun Ago 23, 2021 7:50 pm

    JeisonG-vnzla

    JeisonG-vnzla
    Miembro
    Miembro
    Código:
    local config = {
        monster = "Brook",
        spawn = {
     { x = 474, y = 1832, z = 7, stackpos = 1 }    --------> donde los moustro seran creados
        },

     storage = 1010
     
    }
     
     
    local tpt = {x=468, y=1837, z=7}  ------> donde el player sera teleportado
     
     
     
     local topLeft = {x = 467, y = 1827, z = 7} -- posicion esquina superior izquierda del room
    local bottomRight = {x = 481, y = 1838, z = 7} -- esquina inferior derecha del room

    local count = 0 -- no cambiar
     

    local remaining = getPlayerStorageValue(cid, config.storage) - os.time()


    for z = topLeft.z, bottomRight.z do
        for x = topLeft.x, bottomRight.x do
            for y = topLeft.y, bottomRight.x do
                for f = 1, maxPlayers do
                    local whatisit = getTopCreature({x=x,y=y,z=z, stackpos = f+1}).uid
                    if isPlayer(whatisit) == TRUE then
                        count=count+1
                    end
                end
            end
        end
    end

     
    local spec = getSpectators({x=467, y=1827, z=7}, 20, 20)
    if spec ~= nil then
    for _, s in pairs(spec) do
    if isMonster(s) then
    doRemoveCreature(s)
    end
    end
    end
    if getPlayerStorageValue(cid, config.storage) - os.time() <= 0 then




        for i = 1, table.maxn(config.spawn) do
        doSummonCreature(config.monster, config.spawn[i])
        end
       
       
        doTeleportThing(cid, tpt, false)
     
        setPlayerStorageValue(cid, config.storage, os.time() + (0 * 0 * 0))  ----> aqui son 24 horas
                   
     
      end
     
        return TRUE
    end



    OBS: SOLO QUIERO AGREGAR QUE PIDA ITEMS PARA ENTRAR Y QUE MAX 1 PLAYER

    4 participantes

    13default Re: ayuda completar script Mar Ago 24, 2021 4:20 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    aqui te modifique el primer que esta en tu tema principal

    Código:

    local c = {
        limit = 1, -- Límite de jugadores que podrán entrar.
        msgCancel = 'TEM 1 ESPERA SUA TURNO.', -- 'Mensaje' cuando ya se haya llenado el límite de jugadores anterior.
     
        area = {
          From = {x = 486, y = 1827, z = 7}, -- Coordenada de la ESQUINA SUPERIOR IZQUIERDA del área al que son teletransportados.
          To = {x = 502, y = 1838, z = 7}, -- Coordenada de la ESQUINA INFERIOR DERECHA del área al que son teletransportados.
        },
     
        pos = {x = 494, y = 1837, z = 7}, -- Coordenada del lugar donde será teletransportado el jugador (Dentro del área anterior)
      monster = "Tiny",
      }
     
    local function getPlayersInArea(fromPos, toPos)
      local t = {}
     
        for _, cid in ipairs(getPlayersOnline()) do
            if isInRange(getThingPos(cid), fromPos, toPos) then
                table.insert(t, cid)
            end
        end
     
      return t
    end

    local count = 50
     
    local itemx= 2328

     local time =
    {
      sec = 5
    }

     
    function onStepIn(cid, item, fromPos, toPos)

    local function funcSummonWarlock()
         doSummonCreature("Warlock", {x = 494, y = 1837, z = 7})
     return TRUE
    end
        if isPlayer(cid) then

      if table.getn(getPlayersInArea(c.area.From, c.area.To)) < c.limit then
     
    if getPlayerItemCount(cid, itemx) >= count then
    doPlayerRemoveItem(cid,2328,50)
                doSendMagicEffect(fromPos, CONST_ME_TELEPORT)
                doTeleportThing(cid, c.pos)
                doSendMagicEffect(getThingPos(cid), CONST_ME_TELEPORT)
            ------------------doSummonCreature(c.monster, c.pos)  -------------- no usar
          
           addEvent(funcSummonWarlock, time.sec * 1000)
          
    local spec = getSpectators({x=467, y=1827, z=7}, 20, 20)
    if spec ~= nil then
    for _, s in pairs(spec) do
    if isMonster(s) then
    doRemoveCreature(s)
    end
    end
    end      
          
          
          
    else
    doPlayerSendCancel(cid, "You dont have 50 ONLINE PONTOS pra ter access!")
    doTeleportThing(cid, toPos, false)
    end
            else
              doPlayerSendCancel(cid, c.msgCancel)
              doTeleportThing(cid, toPos, false)
            end
     
        end
     
      return true
    end

    dime si te funciona bien para que te cree el que si mueres dentro tambien de un clear zone



    ayuda completar script YNU5B25
    4 participantes
    https://www.tibiaface.com

    14default s Miér Ago 25, 2021 12:59 am

    JeisonG-vnzla

    JeisonG-vnzla
    Miembro
    Miembro
    Ya va mejor, ya no deja entrar a otro players, estando otro en room

    SOLO FALTARIA PARA QE NO SALGA OTRO BOSS SI MUERES.
    y si se le puede agregar para qe el player al tener X tiempo dentro lo saqe.

    4 participantes

    15default Re: ayuda completar script Miér Ago 25, 2021 8:15 am

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:Ya va mejor, ya no deja entrar a otro players, estando otro en room

    SOLO FALTARIA PARA QE NO SALGA OTRO BOSS SI MUERES.
    y si se le puede agregar para qe el player al tener X tiempo dentro lo saqe.

    ok dame tiempo en la noche sigo viendo tu scripts y como esta estructurado



    ayuda completar script YNU5B25
    4 participantes
    https://www.tibiaface.com

    16default s Miér Ago 25, 2021 3:02 pm

    JeisonG-vnzla

    JeisonG-vnzla
    Miembro
    Miembro
    ok maya agradecido

    4 participantes

    17default Re: ayuda completar script Vie Ago 27, 2021 8:08 am

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    aqui tienes para que player al entrar tenga un tiempo determinado

    Código:


    local c = {
        limit = 1, -- Límite de jugadores que podrán entrar.
        msgCancel = 'TEM 1 ESPERA SUA TURNO.', -- 'Mensaje' cuando ya se haya llenado el límite de jugadores anterior.
     
        area = {
          From = {x = 486, y = 1827, z = 7}, -- Coordenada de la ESQUINA SUPERIOR IZQUIERDA del área al que son teletransportados.
          To = {x = 502, y = 1838, z = 7}, -- Coordenada de la ESQUINA INFERIOR DERECHA del área al que son teletransportados.
        },
     
        pos = {x = 494, y = 1837, z = 7}, -- Coordenada del lugar donde será teletransportado el jugador (Dentro del área anterior)
      monster = "Tiny",
      }
     
    local function getPlayersInArea(fromPos, toPos)
      local t = {}
     
        for _, cid in ipairs(getPlayersOnline()) do
            if isInRange(getThingPos(cid), fromPos, toPos) then
                table.insert(t, cid)
            end
        end
     
      return t
    end

    local count = 50
     
    local itemx= 2328

     local time =
    {
      sec = 5
    }


    local time = 30 ------- tiempo en segundos que durara en la sala
    local pos = {x=666, y=666, z=7}  ------ donde sera kickeado
     
    function onStepIn(cid, item, fromPos, toPos)

    local function funcSummonWarlock()
          doSummonCreature("Warlock", {x = 494, y = 1837, z = 7})
     return TRUE
    end
        if isPlayer(cid) then

      if table.getn(getPlayersInArea(c.area.From, c.area.To)) < c.limit then
     
    if getPlayerItemCount(cid, itemx) >= count then
    doPlayerRemoveItem(cid,2328,50)
                doSendMagicEffect(fromPos, CONST_ME_TELEPORT)
                doTeleportThing(cid, c.pos)
                doSendMagicEffect(getThingPos(cid), CONST_ME_TELEPORT)
            ------------------doSummonCreature(c.monster, c.pos)  -------------- no usar
          
           -------------------------------kick----------------------------
           addEvent(doTeleportThing,time * 1000,cid,pos,false)
          
            -------------------------------kick----------------------------
         
          addEvent(funcSummonWarlock, time.sec * 1000)
         
    local spec = getSpectators({x=467, y=1827, z=7}, 20, 20)
    if spec ~= nil then
    for _, s in pairs(spec) do
    if isMonster(s) then
    doRemoveCreature(s)
    end
    end
    end     
         
         
         
    else
    doPlayerSendCancel(cid, "You dont have 50 ONLINE PONTOS pra ter access!")
    doTeleportThing(cid, toPos, false)
    end
            else
              doPlayerSendCancel(cid, c.msgCancel)
              doTeleportThing(cid, toPos, false)
            end
     
        end
     
      return true
    end



    ayuda completar script YNU5B25
    4 participantes
    https://www.tibiaface.com

    18default Re: ayuda completar script Sáb Ago 28, 2021 12:16 am

    JeisonG-vnzla

    JeisonG-vnzla
    Miembro
    Miembro
    Código:

    [10/9/2021 16:48:5] [Error - MoveEvents Interface]
    [10/9/2021 16:48:5] data/movements/scripts/events/tlport1.lua:onStepIn
    [10/9/2021 16:48:5] Description:
    [10/9/2021 16:48:5] data/movements/scripts/events/tlport1.lua:63: attempt to index upvalue 'time' (a number value)
    [10/9/2021 16:48:5] stack traceback:
    [10/9/2021 16:48:5]    data/movements/scripts/events/tlport1.lua:63: in function <data/movements/scripts/events/tlport1.lua:41>



    Última edición por JeisonG-vnzla el Vie Sep 10, 2021 5:50 pm, editado 1 vez

    4 participantes

    19default . Vie Sep 10, 2021 4:59 pm

    JeisonG-vnzla

    JeisonG-vnzla
    Miembro
    Miembro
    Bump en la espera de respuesta gracias

    4 participantes

    Contenido patrocinado


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