[SQL]Cambiar mapa de inicio
-
MI POST EN Elitepvpers
http://www.elitepvpers.com/forum/metin2-pserver-guides-strategies/2041971-release-sql-change-startmap-coords-map.htmlEl post es de MI AUTORÍA.
Bueno, algunos sabréis que hice un cursillo SQL y lo primero que se me ha ocurrido para hacer es un cambiador de coordenadas para cuando creas un PJ nuevo, de esta forma puedes ponerlo en el mapa que quieras sin el molesto "Quest" que te lleva a city1 y después te lleva al mapa que deseas. Esta hecho de forma totalmente automatizada. Y se tiene que poner como "Query" en el servidor.
Si quereis que TODOS los pj's empiezen en el mismo mapa usen este trigger
DELIMITER $$ DROP TRIGGER IF EXISTS esper $$ CREATE TRIGGER esper BEFORE INSERT ON player FOR EACH ROW BEGIN SET NEW.x= 172428; set new.y= 1220252; set new.map_index= 73; end $$ DELIMITER ;
Cambiando las coordenadas y el map_index.
Primero de todo ningún map_index puede ser 0 en la base de datos antes de poner estas querys.
por lo tanto hacer esta query:UPDATE player set map_index=1 where map_index=0
PROCEDIMIENTO
delimiter $$ Drop procedure if exists `proceso` $$ CREATE PROCEDURE `proceso`() begin declare reino integer; declare ids integer; select account_id into ids from player where player.map_index=0; select empire into reino from player_index where id=ids; if reino=1 THEN UPDATE player set x=1111 where map_index=0; UPDATE player set y=1111 where map_index=0; UPDATE player set map_index=1 where map_index=0; end if; if reino=2 THEN UPDATE player set x=2222 where map_index=0; UPDATE player set y=2222 where map_index=0; UPDATE player set map_index=2 where map_index=0; END if; if reino=3 THEN UPDATE player set x=3333 where map_index=0; UPDATE player set y=2222 where map_index=0; UPDATE player set map_index=3 where map_index=0; end if; end $$ delimiter ;
Tenéis que editar las coordenadas y el map_index. (Mirando las posiciones desde el navicat)
TRIGGER (Este sirve para llamar al procedimiento cuando se crea un nuevo PJ)
DELIMITER $$ DROP TRIGGER IF EXISTS espera $$ CREATE TRIGGER espera AFTER UPDATE ON player_index FOR EACH ROW BEGIN call proceso(); end $$ DELIMITER ;
Se que no es gran cosa, y sí, es de mi autoría, salu2.
-
No pensaba que lo fueras a sacar a la luz , despues de que me comentaste que lo habias logrado , bueno espero que agradezcan a los que les sirve por este gran trabajo , Saludos.
-
**! Buen trabajo tio sigue asi !! :in-love: **
-
Eso lo habia pensado yo pero una pregunta k me tiene en mente si lo haces asi aunk seas de jinno o shinsho todos iran al mismo mapa?
-
He puesto para que se puedan poner todos a un mismo mapa entre
Pero el que contiene un procedimiento y un trigger sirve para poder editar tu mismo las coordenadas de cada reino.
Si lees un poco pone "Reino=1" "Reino=2" "Reino=3" El 1 es shinsoo el 2 es chunjo el 3 jinno. -
a vale ahora me fije mas dependiendo si pone el 1 2 o 3 pudes poner un mapa
Aki te dejo tu gracias xD
-
Ruben cano atiende a skype soy el que tiene el 4 reino una cosnulta de rapidez jiji
-
@jaderflow said:
Ruben cano atiende a skype soy el que tiene el 4 reino una cosnulta de rapidez jiji
Para hacer estos mensajes contacta por MP :icon_exclaim: :icon_exclaim:
Bueno te envié MP.
-
pues mas facil entramos a giv basic weapon y donde da los premios ponemos pc.warp (codenadas) :facepalm:
-
@macu23 said:
pues mas facil entramos a giv basic weapon y donde da los premios ponemos pc.warp (codenadas) :facepalm:
De esta forma , al entrar a jinno , shinso o chunjo , te ara un teletrasporte...
Te devuelvo el facepalm :facepalm:
Y si no te gusta lo haces tu listo que eres muy listo , este trabajo requiere su tiempo aver si tu lo sabes hacer mejor
Y lo que publico es para Empezar directamente en el mapa, sin teletrasporte ni nada.