10846-\[TUTORIAL]_Crear_un_"Compañero_de_Equipo"
#0
Maahkehro 18439
Buenas, WAHeros, este es mi primer tutorial en todo el foro.

En este Tutorial os diré como crear "Partners", que son los que te acompañan desde ciertos y hasta ciertos puntos del juego... o en todo él. Bueno, empecemos...

Configurando al Entrenador
Lo primero que tenemos que hacer es crear a nuestro Entrenador en el Editor, tal como explicó nuestro amigo Rafael-animal en este Tutorial.
Los Compañeros de Equipo requieren un "BackSprite", que es el que se muestra cuando el Entrenador lanza la Poké-Ball. Este irá en "Graphics/Characters/trbackNNN.png", donde NNN es igual al ID del Entrenador en el Editor, expresado en un número de 3 cifras, por ejemplo... trback083.png.


Formando el Equipo
Ha llegado la hora de explicar como se nos unirá el Entrenador a nuestro futuro dúo. Teniendo a un Compañero registrado, todas las batallas (Pokémon y Entrenadores) serán dobles, se quiera o no, ya que esto causaría error. Para evitar otro tipo de errores, los entrenadores que salgan en donde estés con el Compañero, tendrán que tener como mínimo dos Pokémon para que el juego no de error ni salte la batalla.

Para registrar al Compañero se debe poner la siguiente línea en un evento con "Llamar Script".

pbRegisterPartner(PBTrainers::ENTRENADOR,NOMBRE,0)

1.- Tipo de Entrenador, definido en trainertypes.txt/trainernames.txt
2.- Nombre del Entrenador, definido en ÍDEM.
3.- (Opcional) El número sirve para distinguir entre diferentes "versiones" del Entrenador. Por ejemplo... Quinoa con Riolu (0), se va, y cuando vuelve tiene un Lucario (1).

Para borrar al Compañero del grupo se debe escribir este código también en "Llamar Script".

pbDeregisterPartner

Como sólo se puede llevar a un Compañero, el código no tiene Editables.

Eventos Dependientes
Esto explica cómo hacer que el Compañero te siga por el mapa, aunque también puede hacer que te siga cualquier otro evento.

La desventaja de crear un Compañero, es que necesita Eventos Dependientes si se quiere hacer que te siga. La desventaja de esto es que mientras el Jugador tenga algún Evento Dependiente, no podrá usar movimientos/objetos de Transporte ni de Huída, es decir, nada de Vuelo, Surf, Teletransp., Excavar, Cuerda Huída, etcétera.
Un pequeño fallo es que los Eventos Dependientes no se muestran bien SÓLO durante el cambio entre dos Mapas Conectados (con Visual Editor). Para evitar este error, u otros posibles errores que provengan de este, lo mejor sería o no poner que ese mapa esté conectado a otro, o poner los Transfers a base de eventos con "Teletransportar".

Para crear el Evento Dependiente, tendremos que usar esto en "Llamar Script".

Kernel.pbAddDependency2(evento,"NNN",eventocomún)

1.- "evento" es la ID del Evento que queremos hacer "Depeniente". Para usar el mismo evento donde hemos puesto el "Llamar Script", podemos poner "@event_id"
2.- "NNN" es como una "marca" que le pone el usuario al Evento para poder reconocerlo. Luego se usará para borrar el Evento Dependiente (Dejar entre comillas).
3.- "eventocomún" es la ID del Evento Común en la Base de Datos que se usará para cuando el Jugador hable con el Evento Dependiente. Clarísimamente puede estar vacío.
Cuando se configure el Evento Común deberá estar en "Nada".
Un ejemplo de Evento Común podría ser que el Compañero dejara de seguir al Jugador mediante este comando.

Y para borrarlo...

Kernel.pbRemoveDependency2("NNN")

"NNN" es lo que hemos usado antes para "marcar" al Evento (dejar entre comillas).

Y... bueno, pues ya está. Una idea para RPG podría ser que el compañero te siga durante todo el juego... aunque no se podría usar Surf, Vuelo, etc.

Y aquí acabo mi tutorial... espero que os haya gustado. ¡Gracias por vuestra atención! ¡Adiós!