Rafa23Alzira Posted April 15, 2013 Report Share Posted April 15, 2013 Bueno como dice el titulo existe alguna función o hay alguna manera de limitar las personas en un mapa. Lo que quiero es en un mapa totalmente pvp que puedan entrar máximo 35 personas por ejemplo. Un saludo =) Link to comment Share on other sites More sharing options...
SeMa™ Posted April 15, 2013 Report Share Posted April 15, 2013 Esto es una prueba , pero creo que si servirá. quest prueba begin state start begin when login with pc.get_map_index == xx begin pc.get_qf +1 -- esto lo escribo mal , pero tu lo pones bien end end when login with pc.get_map_index == xx and pcget_qf == 36 begin say(" lo siento , el máximo numero de personas en el mapa es 35 te llevaré a tu city") warp_to_village() end end when logout with pc.get_map_index == xx begin pc.get_qf -1 end end end Link to comment Share on other sites More sharing options...
Rafa23Alzira Posted April 15, 2013 Author Report Share Posted April 15, 2013 Esto es una prueba , pero creo que si servirá. quest prueba begin state start begin when login with pc.get_map_index == xx begin pc.get_qf +1 -- esto lo escribo mal , pero tu lo pones bien end end when login with pc.get_map_index == xx and pcget_qf == 36 begin say(" lo siento , el máximo numero de personas en el mapa es 35 te llevaré a tu city") warp_to_village() end end when logout with pc.get_map_index == xx begin pc.get_qf -1 end end end Haber que no termino de comprender la sintaxis de la quest, en que momento pone que hay un personaje más y tal? Link to comment Share on other sites More sharing options...
Santy!. Posted April 15, 2013 Report Share Posted April 15, 2013 en esa quest 1 persona podra entrar 35 veses a 1 mapa a la 36 no lo dejara pasar. Link to comment Share on other sites More sharing options...
Rafa23Alzira Posted April 15, 2013 Author Report Share Posted April 15, 2013 Yo lo que busco es diferente, que no se puedan poner por ejemplo 35 personas distintas a la vez en el mapa, no se si utilizara mysql o que... Link to comment Share on other sites More sharing options...
SeMa™ Posted April 15, 2013 Report Share Posted April 15, 2013 en esa quest 1 persona podra entrar 35 veses a 1 mapa a la 36 no lo dejara pasar. no , por que si te fijas , tiene 1 logout que te debería restar 1 al salir de ese mapa , aunque ahora que me doy cuenta , la estructura está mal xd Link to comment Share on other sites More sharing options...
Guest keko Posted April 15, 2013 Report Share Posted April 15, 2013 Soi keko desde el movil cn un qf esta mal yo lo explico si quereis cuando este en mi ordena Link to comment Share on other sites More sharing options...
Rafa23Alzira Posted April 15, 2013 Author Report Share Posted April 15, 2013 Soi keko desde el movil cn un qf esta mal yo lo explico si quereis cuando este en mi ordena Te espero =) Link to comment Share on other sites More sharing options...
KeKo Posted April 15, 2013 Report Share Posted April 15, 2013 Te espero =) Vale ya estoi. De paso que te escribo la quest explico para todo aquel que lo lea por si le sirve de utilidad. @sema: has pecado del tipico error de no diferenciar entre jugador y jugadores. Cuando quieras hacer algo que se limite a afectar a un jugador usaras un pc.get o pc.setqf pero cuando quieras hacer cosas que influyan a muchos jugadores usaras siempre un game.get o game.set_event_flag. En este caso como la cosa es limitar el numero de jugadores que pueden entrar al mapa simplemente tendras que meter un game.set_event_flag("jugadores") + 1 cuando un jugador entre al mapa. Para ello puedes ponerlo con un when login pero yo lo haria directamente con el npc que te lleve alli para evitar que entren y los saque si el numero de jugadores excede el maximo. quest limite begin state start begin when idnpc.chat."Teleporter" begin say_title("Teleporter") say("Este mapa es algo especial, solo puede haber") say("cantidadgente personas en el a la vez") -- ahi pones el numero maximo de pj say("") say("En estos momentos hay "..game.get_event_flag("jugadores").." en el") say("") say("Quieres ir al mapa?") say("") local ir = select ("Si" , "Paso") if ir == 1 then if game.get_event_flag("jugadores") >= cantidadgente then chat("Lo siento, el mapa ya esta lleno") return end pc.warp(cordesx, cordesy) -- pones las cordenadas game.set_event_flag("jugadores", game.get_event_flag("jugadores") + 1) -- hay un jugador mas en el mapa end end when logout with pc.get_map_index() == indexmapa begin game.set_event_flag("jugadores", game.get_event_flag("jugadores") - 1) -- cuando se desconectan descuenta un jugador dentro del mapa end end end Y eso seria todo Link to comment Share on other sites More sharing options...
SeMa™ Posted April 15, 2013 Report Share Posted April 15, 2013 Quieras que no se parece a la mia eh xd Link to comment Share on other sites More sharing options...
KeKo Posted April 15, 2013 Report Share Posted April 15, 2013 Quieras que no se parece a la mia eh xd Claro, tu unico problema fue usar en pc.getqf en vez de game.get_event por lo demas la estructura estaba bien Link to comment Share on other sites More sharing options...
Recommended Posts