Bueno hola a todos vengo con este tuto que es para crear zonas pacificas o para cualquier otra cosa xD
Empezemos,
Necesitamos el streamer de "incognito"
¿de donde me lo bajo? Click aqui
Utilizaremos los siguientes parámetros y funciones:
OnPlayerEnterDynamicArea(playerid, areaid);
OnPlayerLeaveDynamicArea(playerid, areaid);
native CreateDynamicRectangle(Float:minx, Float:miny, Float:maxx, Float:maxy, worldid = -1, interiorid = -1, playerid = -1)
Necesitamos crear una variable:
new mivariable;
Luego de haber creado nuestra variable haremos lo siguiente: Sacar las siguientes Coordenadas:
MinX
MinY
-------
MaxX
MaxY
Ahi dos formas de sacarlas pero dire la mas sencilla para que no se compliquen, necesitamos el siguiente programa:
Dame Click para bajar
ya descargado vamos a sacar las coordenadas:
-1 paso: Abrimos el Xtreme Vehicle Plotter:
-2 paso: Marcamos un rectángulo en un lugar que queramos:
-3 paso: Una vez marcada nos apareserá un cuadro, le damos a "GangZones & World Broundaries":
-4 paso: Luego de enmarcar los gangs, completamos los cuadros:
-5 paso: Luego de llenar todos los cuadros, nos aparecerá el código ya creado.
del gzone solo sacaremos las cordenadas por ejemplo:
ejemplo = GangZoneCreate(-2732,623, -2066,984, -2312,219, -840,807);
debemos quitar las comas de mas y remplazarlas por puntos:
solo las que estan con rojo debemos quitar las negras las dejamos.
nos quedaria algo asi:
GangZoneCreate(-2732.623, -2066.984, -2312.219, -840.807);
pero eso del gangzone solo es para sacar las coordenadas que necesitamos en este caso esta:
-2732.623, -2066.984, -2312.219, -840.807
Luego de eso iremos al callback OnGameModeInit y copiaremos lo siguiente:
mivariable = CreateDynamicRectangle(minx, miny, maxx, maxy, -1, -1, -1);///en minx, miny, maxx, maxy ban las cordenadas que sacamos recien y -1, -1, -1 dejalos asi como estan
Ahora para hacer que cuando un jugador entre a dicha área haga acciones contra el como Remover armas, dar, etc.
forward OnPlayerEnterDynamicArea(playerid, areaid);
public OnPlayerEnterDynamicArea(playerid, areaid)
{
if(areaid == mivariable)
{
GameTextForPlayer(playerid, "~w~Has entrado a una zona pacifica\n~b~Armas Prohibidas!", 4000, 3); //Texto que aparecerá en la pantalla del jugador
ResetPlayerWeapons(playerid); //Le quitará las armas si quieres que le remueva para un segundo debes aser un timer pero eso si quieres me lo preguntas despues
}
return 1;
}
Eso hará que cuando entre, haga una accion.
Ahora para que cuando salga cumpla otra función determinada:
forward OnPlayerLeaveDynamicArea(playerid, areaid);
public OnPlayerLeaveDynamicArea(playerid, areaid)
{
if(areaid == mivariable)
{
GameTextForPlayer(playerid, "~w~Has salido de la zona pacifica\n~b~armas permitidas!", 4000, 3); //Texto que aparecerá al salir de dicha area
// Aquí puedes agregar más funciones como GivePlayerWeapon etc.
}
return 1;
}
Bueno y eso seria todo el tutorial, es algo sencillo.
Si me faltó algo o puse algo mal, avisen para corregirlo c:.
Espero que les sirva
Creditos : M4Ty4S yo solo modifique un poco el tuto