[Tutorial]Como Crear Random Spawn's

Ver el tema anterior Ver el tema siguiente Ir abajo

default [Tutorial]Como Crear Random Spawn's

Mensaje por Hammond el Mar Sep 24, 2013 12:26 pm

Hola!

He venido a aportar un poco a esta comunidad :)

El tema es "Como Crear Random Spawn's", es algo muy sencillo, COMENZEMOS......

Primero creamos el new que definirá las posiciones donde queremos que el jugador spawnee, es decir, que cuando el jugador
use un comando, no lo lleve a una sola posición, lo haga al azar (Dependiendo de cuantas posiciones uses).

Código:
new Float:MiniDM[8][3] =
   {
      {-3088.1575,1933.6970,-65.3016}, {-3084.8816,1953.2579,-62.5944}, {-3061.6931,1951.9362,-65.3016},
      {-3017.5469,1950.8380,-65.3016}, {-3033.7043,1932.6206,-65.3016}, {-3037.4937,1949.5031,-62.5944},
      {-3051.5281,1952.8622,-65.3016}, {-3046.4778,1932.1238,-65.3016}
   };
Explico,

Código:
new Float:MiniDM
Definimos la variable con new y "Float" es el que almacena números enteros junto con los numeros con coma, es decir,
Código:
{-3088.1575,1933.6970,-65.3016}
y "MiniDM" es el nombre de nuestra variable (MinigunDM).
[8] es la cantidad de posiciones que usaremos.
[3] son las posiciones X, Y, Z (Dejenlo así).

Podemos guardar las posiciones con /save comentario, pero deben estar IG (In Game). Luego para verlas deben abrir el archivo "savedpositions.txt" que se encuentra por defecto en
Disco local C:/Archivos del programa/GTA User Files/SAMP/
o si no, buscan en su carpeta donde tienen su GTA, ..../data/SAMP/ y ahí estara el archivo.
Les saldrá algo así:
Spoiler:
Ya que tenemos las posiciones para ponerlas y lo demás definido, ahora ponemos las posiciones en el GM, así:
{X,Y,Z}, {X,Y,Z} //Separados por una coma
Les quedaría así
Código:
new Float:MiniDM[8][3] = { //Abrimos con "{"
{X, Y, Z}, {X,Y,Z}.........//Y los que siguen, recuerden que cada posición debe ir separado por una coma.
}//Cerramos con "}"
/*Ojo, si no cierran o abren les saldrá ERROR*/
Pondremos esto para que en vez de poner SetPlayerPos(playerid, MiniDM[rand][0], bla bla bla...  Solo ponga esta callback "SetPlayerMinigunSpawn(playerid)"
Código:
forward SetPlayerMinigunSpawn(playerid);
public SetPlayerMinigunSpawn(playerid)
{
   SetPlayerInterior(playerid, 0); //Pone a un interior al jugador
   ResetPlayerWeapons(playerid); //Le quita las armas
   new rand = random(sizeof(MiniDM)); //esto es para que sea válido el random pos
   SetPlayerPos(playerid, MiniDM[rand][0], MiniDM[rand][1], MiniDM[rand][2]); //Esto hace que el jugador se vaya a una posicion de las 8 que pusimos al azar
   GivePlayerWeapon(playerid, 38, 9999999); //Le da el arma, recuerden que el formato es ".....(playerid, armaid, municion);"
   return 1; //retornamos
}
Ojo, solo puse esto para que no hagan todo el procedimiento y solo se haga mas sencillo, si no quieren solo quiten la callback y pongan lo demás, el interior, SetPlayerPos, etc.

Ahora creamos el Comando
Si usamos el include zcmd el comando sería así:
Código:
CMD:MinigunDM(playerid)//Comando /MinigunDM
{ //Abrimos
       SetPlayerMinigunSpawn(playerid); //Usamos la callback ya definida arriba
       SendClientMessage(playerid, COLOR_YELLOW, "Bienvenido a MinigunDM, que disfrutes); //Le manda un mensaje al jugador (Se puede añadir a la callback)
       return 1;//Retormanos
} //Cerramos
Pero si usamos el a_samp es así:
Código:
public OnPlayerCommandText(playerid, cmdtext[])
{
new idx;                             //
new cmd[256];                        // Esto ya deben de saber para que es.
cmd = strtok(cmdtext, idx);//

      if(!strcmp(cmdtext, "/MinigunDM", true) == 0) //El comando es el mismo
      { //Abrimos
              SetPlayerMinigunSpawn(playerid); //Le da el spawn del minigunDM
              SendClientMessage(playerid, COLOR_YELLOW, "Bienvenido a MinigunDM, que disfrutes); //Mensaje
              return 1; //retornamos
       } //Cerramos
return SendClientMessage(playerid, COLOR_RED, "ERROR: Comando incorrecto o no Válido, por favor usa /comandos");
//Este es algo extra xd Le envía un mensaje de error si el jugador hace un comando que no esta en el sistema
}
Bueno, esto es todo xD  si hay algún error o alguna duda diganmelo D:

Adiós!
avatar
Hammond
Miembro
Miembro

Mensajes : 12
Fecha de inscripción : 09/07/2013
Edad : 19

Ver perfil de usuario

Volver arriba Ir abajo

default Re: [Tutorial]Como Crear Random Spawn's

Mensaje por xLat el Vie Oct 04, 2013 11:57 am

Un jamón que sabe pawn 0:< !
Buena :B.

_________________________________________________
TIBURONSIN !!! HUUUUU HAAAAAAA HEAAAAAAA!!!
avatar
xLat
RCON
RCON

Mensajes : 177
Fecha de inscripción : 27/04/2011

Ver perfil de usuario

Volver arriba Ir abajo

default Re: [Tutorial]Como Crear Random Spawn's

Mensaje por Hammond el Vie Oct 04, 2013 2:38 pm

Tengo mi server ._.
pero es de mi clan xd
avatar
Hammond
Miembro
Miembro

Mensajes : 12
Fecha de inscripción : 09/07/2013
Edad : 19

Ver perfil de usuario

Volver arriba Ir abajo

default Re: [Tutorial]Como Crear Random Spawn's

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.