[Tutorial] Uso del GangZone -(uso bбsicos)-
#1

Hola buen dнa, hoy voy a enseсar el uso del GangZone mejor conocido como zonas de territorio, las funciones q usaremos son los siguientes:

°- GangZoneCreate (Crea una GangZone)
°- GangZoneDestroy (Eliminar una GangZone)
°- GangZoneShowForPlayer (Muestra una GangZone al jugador)
°- GangZoneShowForAll (Muestra GangZone a todos los jugadores)
°- GangZoneHideForPlayer (Oculta una GangZone al jugador)
°- GangZoneHideForAll (Oculta GangZone a todos los jugadores)
°- GangZoneFlashForPlayer (Parpadea una GangZone al jugador)
°- GangZoneFlashForAll (Parpadea GangZone a todos los jugadores)
°- GangZoneStopFlashForPlayer (Detiene el parpadeo al jugador)
°- GangZoneStopFlashForAll (Detiene el parpadeo a todos los jugadores)

Para q no sepan q son las zonas de territorios aqui les dejo una muestra de como es la famosa "GangZone"



Empezaremos por GangZoneCreate

La pregunta q se hacen ustedes como creo una GangZone?? Primero hay q tener en cuenta los parбmetros para crear una GangZone

PHP Code:
(Float:minxFloat:minyFloat:maxxFloat:maxy
minx La coordenada X para el lado oeste de la GangZone.
miny La coordenada Y para el lado sur de la GangZone.
maxx La coordenada X para el lado este de la GangZone.
maxy La coordenada Y para el lado norte de la GangZone.

Dividiremos las cordenadas en dos, minxy y maxxy, que serian las esquinas de la GangZone.



Mйtodo 1 para obtener coordenadas

Usaremos el comando /save (Dentro del juego) para obtener las coordenadas, sн no sabes usarlo te garantizу buscarlo en otro lado y sepas usarlo, como obtener las coordenadas, etc... Una vez usado el comando q dije obtendremos lo siguiente:

(Ejemplo)

AddPlayerClass(0,321.8391,2156.1435, 16.5540,181.9923,0,0,0,0,0,0); (Es un ejemplo, osea q lo inventй yo los nъmeros no vayan a usar esto porq no les va a funcionar)

Solo usaremos las coordenadas X e Y (marcados de rojo), ahora haremos lo siguiente

Paso 1: Situarnos en la primera esquina y guardar nuestra posiciуn como minxy (/save minxy)
Paso 2: Situarnos en la segunda esquina y guardar nuestra posiciуn como maxxy (save maxxy)
Paso 3: Ahora procederemos a crear la GangZone, vamos a nuestra hoja de programaciуn y vamos a OnGameModeInit
Paso 4:Abrimos el documento donde se guardo las posiciones y veremos algo asн

AddPlayerClass(0,673.4691,-2654.7256,2.8872,230.4152,0,0,0,0,0,0); // minxy
AddPlayerClass(0,993.1255,-2974.8696,2.8872,38.0169,0,0,0,0,0,0); // maxxy

Lo que esta de rojo serian las coordenadas minx e miny.
Lo que esta de verde serian las coordenadas maxx e maxy.

Una vez agarrada ya las posiciones vamos a OnGameModeInit y pondremos lo siguiente

PHP Code:
public OnGameModeInit()
{
      new 
gangzone//con esto identificaremos la zona para asн no tener bug's
      
gangzone GangZoneCreate (673.4691,-2654.7256 993.1255,-2974.8696); //Con esto bбsicamente crearemos la funciуn lo q agarrasteis de las coordenadas ponganlos de manera ordenada, primero minx e miny y despuйs maxx e maxy
      
return 1;

Acuerdense del ordйn

GangZoneCreate ( minx, miny , maxx, maxy ) ;

En mi caso quedу asн:

GangZoneCreate ( 673.4691,-2654.7256,993.1255,-2974.8696) ;

Paso 5: Mostraremos la GangZone al jugador, en este caso vamos a OnPlayerSpawn(playerid)

y pondremos esto

PHP Code:
GangZoneShowForPlayer(playeridgangzone0xFFFF0096);//el nombre gangzone lo cambian a la variable de identificaciуn q pusieron y los numeros son el color q le daremos a la gangzone 
Mйtodo 2:Este mйtodo es mucho mбs fбcil de crear GangZones pero no le darй ejemplo, pueden buscar en YT de como usarlo en este caso el programa se llama Extreme Vehicle Potter

Ahora vamos a como Destruir Una GangZone (eliminar mejor dicho), q la funciуn serнa la siguiente:

PHP Code:
GangZoneDestroy(gangzone); //lo q dice "gangzone" es el nombre de la variable de identificador 
Y digamos, їsн lo quiero eliminar de un simple comando? es ЎЎFБCIL!!, simplemente creamos el comando y pondremos entre media

GangZoneDestroy(aqui el nombre del identificador de tu variable);

Ejm: (Yo en este caso usarй strcmp ya q es mн mйtodo favorito de hacer comandos)

PHP Code:
public OnPlayerCommandText(playeridcmdtext[])
{
      new 
idx;
      new 
cmd[256];
    
      
cmd strtok(cmdtextidx);
      if(
strcmp(cmd"/destruirzona"true) == 0)
      {
              
GangZoneDestroy(gangzone); //lo q dije anteriormente en "gangzone" pondremos el identificador de tъ variable
              
return 1;
              }
      return 
0;
      }

Bien entonces ya estarнa listo el comando de eliminar la zona

Para hacer q parpadee la zona serнa algo asн

En OnGameModeInit la zona q crearon, pero ahora en OnPlayerSpawn pondremos lo siguiente:

PHP Code:
public OnPlayerSpawn(playerid)
{
     
GangZoneFlashForPlayer(playerid,gangzone,aquielcolor);
     return 
1;

Ahora sн quieren detener el parpadeo tendrбn q poner lo siguiente en OnPlayerEnterVehicle:

PHP Code:
public OnPlayerEnterVehicle(playeridvehicleid)
{
     
GangZoneStopFlashForPlayer(playeridgangzone); //Tambiйn pueden ser esto por un simple comando
     
return 1;

Para hacerlo un simple comando del usuario, pondrнan esto entre medias del comando

PHP Code:
GangZoneStopFlashForPlayer(playeridgangzone); 
Para hacerlo un simple comando de administrador, pondrнan esto entre medias del comando

PHP Code:
GangZoneStopFlashForAll(playerid); 
Eso es todo, sн tenйis duda de como hacer tal comentar y yo os ayudarй!!...FIN!!!!!
Reply
#2

Me parece un poco vaga la manera en la que explicaste el tema, por ahн serнa bueno que recomendaras usar /rs en vez de /save. El primero solo guarda la posiciуn y el бngulo del cliente.
Reply
#3

graxias me ayudo mucho
Reply
#4

Buena guнa y muy bien explicado pero te notй un poco flojo, pero bueno, buen aporte de seguro que a mбs de uno esto les ayudarб
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)