[Tutorial] Cambiar de gamemode0 a gamemode1
#1

Hola bueno pues hoy les voy a explicar como cambiar sin presionar ningun comando, ni cambiar nada desde la consola ni nada, automatico como cambiar de un gamemode a otro.

Primero para hacerlo automatico necesitaremos colocar un Timer para que al cumplirse el tiempo realize el cambio de gamemode.

Bien para hacerlo nos vamos al callback OnGameModeInit y alli creamos el Timer, nos debe de quedar asi:


pawn Код:
public OnGameModeInit()
{
     SetTimer("ReiniciarServer", 900000, 1);// 900000 milisegundos = 15 minutos
     [....]//Las demas funciones que tengas tu
}
Bien ya echo el timer ahora necesitamos crear los forward para definir los publics, se pueden colocar en cualquiera parte del GM pero normalmente se ponen arriba para que esten ordenador, que quede tal que asi:

pawn Код:
//En cualquier parte
forward Reiniciar();
forward NombreMapa();
forward ReiniciarServer();
Ya definidos los forwards para los publics de las funciones pasamos a crear la funcion que va a hacer el pickup, nos vamos abajo del GM y creamos un public llamado "ReiniciarServer" tiene que ser el mismo nombre que el timer que agregamos antes, despues de crear el nombre del nuevo public, agregamos un GameText para avisar del cambio del GM, y despues agregamos un segundo timer en ese mismo public para que lleve ala siguiente funcion, en total debe de quedar asi:

pawn Код:
public ReiniciarServer()
{
GameTextForAll("~r~ Tiempo Excedido ~b~ Espere....", 2500 , 0); //Esto nos muestra en medio de la pantalla que se va a cambiar
SetTimer("Reiniciar", 10000 , 0); El timer para llevar a la siguiente funcion
}
Despues tenemos que hacer lo mismo que antes pero creando el public con el nombre "Reiniciar" , despues de crearlo ponemos otro GameText que nos indique que ya se cambia de GM, despues le tenemos que agregar la funcion Rcon para que pueda cambiar de GM, entonces nos debe quedar asi:

pawn Код:
public Reiniciar()
{
GameTextForAll("~g~ Siguiente GameMode~r~...", 2500, 0);
SendRconCommand("changemode lvdm2"); //Ahi debes poner el nombre del GM que quieras que sea el siguiente.
return 1;
}
Poniendo todo eso bien y ordenadamente nos tiene que ir perfectamente, tambien te puedes agregar el 2 public poniendo la funcion SendRconCommand en el primer public, pero eso ya es a vuestra eleccion.

Creditos:

-Doji (Yo)


Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)