• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    Chequeo de jugadores ayuda script

    Compartir:

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

    1default Chequeo de jugadores ayuda script Mar Oct 12, 2021 12:08 pm

    sagelantro

    sagelantro
    Nuevo Miembro
    Nuevo Miembro
    Descripcion escribió:Hola, tengo el siguiente script de boss pero solo se puede entrar a la sala si es que hay 5 jugadores, me gustaría que me ayudasen a cambiar esto para que el minimo de jugadores que puedan entrar sea 1.

    Código:
    local lever = Action()

    local setting = {
     centerRoom = {x = 33616, y = 31022, z = 14},
     range = 10
    }

    local monsterPosition = {
     {position = Position(33574, 31013, 14)},
     {position = Position(33592, 31013, 14)},
     {position = Position(33583, 31022, 14)},
     {position = Position(33574, 31031, 14)},
     {position = Position(33592, 31031, 14)}
    }

    local playerPositions = {
     Position(33582,30993,14),
     Position(33583,30993,14),
     Position(33584,30993,14),
     Position(33582,30994,14),
     Position(33583,30994,14),
     Position(33584,30994,14),
     Position(33582,30995,14),
     Position(33583,30995,14),
     Position(33584,30995,14),
     Position(33582,30996,14),
     Position(33583,30996,14),
     Position(33584,30996,14),
     Position(33582,30997,14),
     Position(33583,30997,14),
     Position(33584,30997,14)
    }

    local config = {
     toPosition1 = Position(33574, 31017, 14),
     roomTile1 = {
     {fromPosition = Position(33582, 30993, 14)},
     {fromPosition = Position(33583, 30993, 14)},
     {fromPosition = Position(33584, 30993, 14)},
     },
     toPosition2 = Position(33592, 31017, 14),
     roomTile2 = {
     {fromPosition = Position(33582, 30994, 14)},
     {fromPosition = Position(33583, 30994, 14)},
     {fromPosition = Position(33584, 30994, 14)},
     },
     toPosition3 = Position(33592, 31035, 14),
     roomTile3 = {
     {fromPosition = Position(33582, 30995, 14)},
     {fromPosition = Position(33583, 30995, 14)},
     {fromPosition = Position(33584, 30995, 14)},
     },
     toPosition4 = Position(33574, 31035, 14),
     roomTile4 = {
     {fromPosition = Position(33582, 30996, 14)},
     {fromPosition = Position(33583, 30996, 14)},
     {fromPosition = Position(33584, 30996, 14)},
     },
     toPosition5 = Position(33583, 31026, 14),
     roomTile5 = {
     {fromPosition = Position(33582, 30997, 14)},
     {fromPosition = Position(33583, 30997, 14)},
     {fromPosition = Position(33584, 30997, 14)},
     },
    }

    function lever.onUse(player, item, fromPosition, target, toPosition, isHotkey)
     if item.itemid == 9825 then
     for i = 1, #playerPositions do
     local creature = Tile(playerPositions[i]):getTopCreature()
     if not creature then
     item:transform(9826)
     player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You need 5 players to fight with this boss.")
     return true
     end
     end
     end
     if item.itemid == 9825 then
     if roomIsOccupied(setting.centerRoom, setting.range, setting.range) then
     player:say("Someone is fighting against the boss! You need wait awhile.", TALKTYPE_MONSTER_SAY)
     return true
     end

     for d = 1, 5 do
     Game.createMonster("unbeatable dragon", position(math.random(33610, 33622), math.random(31016, 31030), 14), true, true)
     end
     for b = 1, #monsterPosition do
     Game.createMonster("fallen challenger", monsterPosition[b].position, true, true)
     end
     for i = 1, #playerPositions do
     local creature = Tile(playerPositions[i]):getTopCreature()
     if creature then
     for i = 1, #config.roomTile1 do
     local toRoom1 = Tile(config.roomTile1[i].fromPosition):getTopCreature()
     if toRoom1 then
     toRoom1:teleportTo(config.toPosition1)
     end
     local toRoom2 = Tile(config.roomTile2[i].fromPosition):getTopCreature()
     if toRoom2 then
     toRoom2:teleportTo(config.toPosition2)
     end
     local toRoom3 = Tile(config.roomTile3[i].fromPosition):getTopCreature()
     if toRoom3 then
     toRoom3:teleportTo(config.toPosition3)
     end
     local toRoom4 = Tile(config.roomTile4[i].fromPosition):getTopCreature()
     if toRoom4 then
     toRoom4:teleportTo(config.toPosition4)
     end
     local toRoom5 = Tile(config.roomTile5[i].fromPosition):getTopCreature()
     if toRoom5 then
     toRoom5:teleportTo(config.toPosition5)
     end
     end
     creature:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
     creature:setStorageValue(Storage.FirstDragon.FirstDragonTimer, os.time() + 20 * 3600)
     creature:setStorageValue(Storage.FirstDragon.SomewhatBeatable, 0)
     end
     end
     -- One hour for clean the room
     addEvent(clearRoom, 60 * 60 * 1000, Position(33583, 31022, 14), 50, 50, fromPosition)
     Game.createMonster("spirit of fertility", Position(33625, 31021, 14), true, true)
     item:transform(9826)
     elseif item.itemid == 9826 then
     item:transform(9825)
     end
     return true
    end

    lever:uid(30003)
    lever:register()
    Captura del Error escribió:Imagen del error: Chequeo de jugadores ayuda script Empty
    El error radica en: Actions

    2 participantes

    2default Re: Chequeo de jugadores ayuda script Mar Oct 12, 2021 3:53 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    elimina esta parte


    Código:


     if item.itemid == 9825 then
     for i = 1, #playerPositions do
     local creature = Tile(playerPositions[i]):getTopCreature()
     if not creature then
     item:transform(9826)
     player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You need 5 players to fight with this boss.")
     return true
     end
     end
     end



    Chequeo de jugadores ayuda script YNU5B25
    2 participantes
    https://www.tibiaface.com

    3default Re: Chequeo de jugadores ayuda script Mar Oct 12, 2021 3:59 pm

    sagelantro

    sagelantro
    Nuevo Miembro
    Nuevo Miembro
    Hola, gracias por responder, ya intenté hacer eso pero entonces al intentar entrar me aparece un mensaje de que ya hay jugadores dentro del jefe y no deja entrar.  Chequeo de jugadores ayuda script 1f623

    2 participantes

    4default Re: Chequeo de jugadores ayuda script Miér Oct 13, 2021 10:25 am

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    Question BUMP MI POST Question



    [Tienes que estar registrado y conectado para ver este vínculo] escribió:Hola, gracias por responder, ya intenté hacer eso pero entonces al intentar entrar me aparece un mensaje de que ya hay jugadores dentro del jefe y no deja entrar.  Chequeo de jugadores ayuda script 1f623

    lo mas probable que suceda es que tu rango

    range = 10


    este sobrepasando a tu zona donde separan los player y este causando una confusion

    2 participantes
    https://www.tibiaface.com

    5default Re: Chequeo de jugadores ayuda script Lun Oct 18, 2021 1:36 pm

    sagelantro

    sagelantro
    Nuevo Miembro
    Nuevo Miembro
    Hola, intenté cambiándolo de varias formas pero sigue pasando lo mismo Sad

    2 participantes

    6default Re: Chequeo de jugadores ayuda script Miér Oct 20, 2021 9:25 am

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    prueba esto

    Código:

    local function tpPlayerInArea() 
    local positionsCheck = {}
    for i = config.fromPos.x, config.toPos.x do
    positionsCheck[#positionsCheck+1] = {x=i, y = config.fromPos.y, z = config.fromPos.z, stackpos = 0}
    for j = config.fromPos.y+1, config.toPos.y do
    positionsCheck[#positionsCheck+1] = {x=i, y = j, z = config.fromPos.z, stackpos = 0}
    end
    end
    for j=1, #positionsCheck do
    for i = 0, 255 do
    positionsCheck[j].stackpos = i
    local tile = getTileThingByPos(positionsCheck[j])
    if isPlayer(tile.uid) then
    doTeleportThing(tile.uid, topos)
    end
    end
    end
    end



    local config = {
    fromPos = {x=32592,y=32663,z=7}, -- area inicial de donde estan parados.
    toPos = {x=32594,y=32666,z=7}, -- final area de donde estan parados.
    }

    local topos = {x=32623, y=32660, z=7}  -- posicion donde seran telportados.

    function onUse(cid, item, fromPosition, itemEx, toPosition)

    tpPlayerInArea(config.fromPos, config.toPos)

    return true
    end



    Chequeo de jugadores ayuda script YNU5B25
    2 participantes
    https://www.tibiaface.com

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