SA-MP Forums Archive
[Tutorial]Crear zonas de NO DM/Pacificas - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+----- Forum: Lanzamientos/Releases (https://sampforum.blast.hk/forumdisplay.php?fid=59)
+----- Thread: [Tutorial]Crear zonas de NO DM/Pacificas (/showthread.php?tid=235097)



[Tutorial]Crear zonas de NO DM/Pacificas - Lunnatiicz - 05.03.2011

Antes de empezar agradezco a [L3th4l] por haberme guiado a como crear dichas zonas y al servidor de Camiloasc1 por la idea

Antes de empezar te recomiendo descargarte Este programa para que puedas sacar las coordenadas de tu zona.

Bien empecemos.




Los parбmetros y funciones que utilizarй son parte de "Streamer" y sуn los siguientes

pawn Код:
forward OnPlayerEnterDynamicArea(playerid, areaid);
forward OnPlayerLeaveDynamicArea(playerid, areaid);
native CreateDynamicRectangle(Float:minx, Float:miny, Float:maxx, Float:maxy, worldid = -1, interiorid = -1, playerid = -1);
Nota: Pueden ser de distintas maneras, para informarte mбs entra al Post Original de Incognito para ver sus funciones/parбmetros

Empezaremos en el callback

pawn Код:
new TuZona;

public OnGameModeInit()
{
        TuZona = CreateDynamicRectangle(minx, miny, maxx, maxy, -1, -1, -1);
 
    return 1;
}
En este crearemos un rectбngulo tal y como se ve ahн.

Nota: Cambia los parбmetros por las coordenadas y todo en -1 dйjalo como estб


Ahora para hacer que cuando un jugador entre a dicha бrea haga acciones contra el como Remover armas, dar, etc.


pawn Код:
public OnPlayerEnterDynamicArea(playerid, areaid)
{
if(areaid == TuZona)
    {
      GameTextForPlayer(playerid, "~w~Has entrado a una zona pacifica, ~r~todas tus armas fueron removidas!", 4000, 3);//texto que aparecerб en la pantalla del jugador
      ResetPlayerWeapons(playerid);//Le quitarб las armas
      }
    return 1;
}
Ahora para cuando el jugador salga de dicha area

pawn Код:
public OnPlayerLeaveDynamicArea(playerid, areaid)
{
     if(areaid == TuZona)
    {
        GameTextForPlayer(playerid, "~w~Has salido de la zona pacifica, ~b~armas permitidas!", 4000, 3);//Texto que aparecerб
        //puedes agregar mбs funciones como GivePlayerWeapon etc.
        }
    return 1;
}
Y eso serнa todo, es algo sencillo, debido a que muchos quizбs no puedan o no sepan, sуlo les quiero dar un apoyo (':

Saludos!

Nota: Pude haberme equivocado en cualquier cosa, por favor, si hay algo mal, hagamelo saber! :'D Todos aprendemos de errores, saludos!!De nuevo xd



Respuesta: [Tutorial]Crear zonas de NO DM/Pacificas - leaNN! - 05.03.2011

pawn Код:
public OnPlayerLeaveDynamicArea(playerid, areaid)
{
     if(areaid == TuZona)
    {
        GameTextForPlayer(playerid, "~w~Has salido de la zona pacifica, ~b~armas permitidas!", 4000, 3);//Texto que aparecerб
//puedes agregar mбs funciones como GivePlayerWeapon etc.
    return 1;
}
Es:

pawn Код:
public OnPlayerLeaveDynamicArea(playerid, areaid)
{
     if(areaid == TuZona)
    {
        GameTextForPlayer(playerid, "~w~Has salido de la zona pacifica, ~b~armas permitidas!", 4000, 3);//Texto que aparecerб
    }
//puedes agregar mбs funciones como GivePlayerWeapon etc.
    return 1;
}



Respuesta: [Tutorial]Crear zonas de NO DM/Pacificas - TheChaoz - 05.03.2011

failx2: (te olvidaste de cerrar brakets)

pawn Код:
public OnPlayerLeaveDynamicArea(playerid, areaid)
{
    if(areaid == TuZona)
    {
        GameTextForPlayer(playerid, "~w~Has salido de la zona pacifica, ~b~armas permitidas!", 4000, 3);//Texto que aparecerб
        //puedes agregar mбs funciones como GivePlayerWeapon etc.
    }
    return 1;
}
pawn Код:
public OnPlayerEnterDynamicArea(playerid, areaid)
{
    if(areaid == TuZona)
    {
        GameTextForPlayer(playerid, "~w~Has entrado a una zona pacifica, ~r~todas tus armas fueron removidas!", 4000, 3);//texto que aparecerб en la pantalla del jugador
        ResetPlayerWeapons(playerid);//Le quitarб las armas
    }
    return 1;
}
Buen tuto aun que no 100% efectivo en servers con cmds de armas etc.


Respuesta: [Tutorial]Crear zonas de NO DM/Pacificas - leaNN! - 05.03.2011

Claro pero se podria hacer un sistema de blockeo.
pawn Код:
CMD:armas(playerid, params[])
{
if(IsPlayerInArea(playerid, TuZona)) return SendClientMessage(playerid, COLOR_RED, "No puedes suar este comando aqui");
ShowPlayerDialog...
return 1;
}



Respuesta: [Tutorial]Crear zonas de NO DM/Pacificas - TheChaoz - 05.03.2011

Quote:
Originally Posted by leaNN!
Посмотреть сообщение
Claro pero se podria hacer un sistema de blockeo.
pawn Код:
CMD:armas(playerid, params[])
{
if(IsPlayerInArea(playerid, TuZona)) return SendClientMessage(playerid, COLOR_RED, "No puedes suar este comando aqui");
ShowPlayerDialog...
return 1;
}
con variables/arrays es mas efectivo


Respuesta: [Tutorial]Crear zonas de NO DM/Pacificas - Lunnatiicz - 05.03.2011

Ya arreglo los brackets xD

P.D No puse el bloqueo de comandos ya que es algo no tan complicado pero se llevarнa su tiempo para restringir cada comando LOL XD


Respuesta: [Tutorial]Crear zonas de NO DM/Pacificas - leaNN! - 05.03.2011

Si chaoz, no se que flashie cuando puse eso.
Hoy lo pense y me di cuenta de que era cualquiera xD


Respuesta: [Tutorial]Crear zonas de NO DM/Pacificas - murdoxix - 05.03.2011

Gracias lunna! para cuando tenga un DM :P


Respuesta: [Tutorial]Crear zonas de NO DM/Pacificas - Lunnatiicz - 06.03.2011

Quote:
Originally Posted by murdoxix
Посмотреть сообщение
Gracias lunna! para cuando tenga un DM :P
LOL XD No es tan complicado :P


Re: [Tutorial]Crear zonas de NO DM/Pacificas - jeanpierrevera - 03.04.2011

hola sucede q sigo todo bien y pues pasa que al spawnear me sale el mensaje y me quita las armas -.- y en segundos sale ya puedes usar armas y segui todo como decia