Tu me sauve la vie ^^ merci Syg !!! :P
Edit : j'ai fais ça :
forward OnArea(playerid);
new Area;
new Area2;
new gang2;
stock IsPlayerInArea(playerid,Float:max_x,Float:min_x,Float:max_y,Float:min_y)
{
new Float:X;
new Float:Y;
new Float:Z;
GetPlayerPos(playerid, X, Y, Z); // On récupére la position du joueur
if(X <= max_x && X >= min_x && Y <= max_y && Y >= min_y) { // Si le joueur est dans les cordonnées à définir
return 1;
}
return 0;
}
public OnGameModeInit()
{
gang2 = GangZoneCreate(-1337.3512, 2536.4910, -1283.4917, 2540.2971);
return 1;
}
public OnPlayerSpawn(playerid)
{
GangZoneShowForAll(gang2, COLOR_RED);
Area = SetTimer("OnArea",100,1);
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(IsPlayerInArea(playerid,-1283.4917, -1337.3512, 2540.2971, 2536.4910))
{
if(!strcmp(cmdtext,"/zone", true))
{
//SetPlayerPos(playerid,-1337.3512, 2536.4910, -1283.4917);
SendClientMessage(playerid, COLOR_RED,"Bonjour !!");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_RED, "tu n'est pas dans la zone !!!");
return 1;
}
return 1;
}
public OnArea(playerid)
{
if(IsPlayerInArea(playerid,-1283.4917, -1337.3512, 2540.2971, 2536.4910))
{
SendClientMessage(playerid, COLOR_YELLOW, "Tu peut taper /zone");
KillTimer(Area);
KillTimer(Area2);
Area2 = SetTimer("OnArea", 3000, 1);
return 1;
}
else if(!IsPlayerInArea(playerid,-1283.4917, -1337.3512, 2540.2971, 2536.4910))
{
KillTimer(Area2);
Area2 = SetTimer("OnArea", 3000, 1);
return 1;
}
return 1;
}
J'explique le fonctionnement :
On spawn il y a la gangzone qui apparait sur la minimap, quand on va dedans un message nous dit "tu peut taper /zone"
On tape /zone et le message apparait
Si on tape zone en dehors de la zone, le message "tu n'es pas dans la zone !!!" apparait
voila c'est tout con ^^ Et ça marche ^^
il faut 2 timer, un pour l'amorçage et l'autre pour le maintient ;) Ingénieux :p J'suis content de moi ^^ :king