Hallo,
Ich habe mir ein Gangfight system nach dem Tutorial erstellt: http://forum.sa-mp.de/san-andr…m/?highlight=gangfight...
Alles funktioniert bei der 1. Zone die ich erstellt habe.
Doch bei der 2. Funktioniert das nicht ![]()
Da kommt nur, dass ich angeblich nicht im Gebiet bin.
Kann einer mit bitte helfen?
Hier die Gangzonen:
new Gebiete[3][gebiet] = {
//{gOwner,MinX,MinY,MaxX,MaxY,On,Stand1,Stand2,Angreifer}
{13,1033.2401,-1582.6832,1221.9924,-1398.4604,0,0,0,0},
{14,1837.2948,-1282.0463,2086.5544,-1103.2233,0,0,0,0},
{6,1582.5809,-1168.2468,1835.7797,-1021.9578,0,0,0,0}
};
Hier der Befehl:
if(strcmp(cmd, "/gw", true) == 0)
{
if(PlayerInfo[playerid][pChef] == 14||PlayerInfo[playerid][pChef] == 13||PlayerInfo[playerid][pChef] == 5||PlayerInfo[playerid][pChef]==6||PlayerInfo[playerid][pChef]==17||PlayerInfo[playerid][pChef]==18)
{
if(IsPlayerInGebiet(playerid) > -1)
{
new zone = IsPlayerInGebiet(playerid);
if(Gebiete[zone][gOn] == 1) return SendClientMessage(playerid,COLOR_BLUE,"Es wird bereits um dieses Gebiet gekämpft!");
if(Gebiete[zone][gOwner] == PlayerInfo[playerid][pChef]) return SendClientMessage(playerid,COLOR_BLUE,"Dieses Gebiet gehört bereits deiner Fraktion!");
Gebiete[zone][gAngreifer] = PlayerInfo[playerid][pChef];
Gebiete[zone][gOn] = 1;
SetTimerEx("GangFight",100000,0,"i",zone);
for(new i; i<MAX_PLAYERS; i++)
{
if(PlayerInfo[i][pChef] == Gebiete[zone][gOwner] ||PlayerInfo[i][pArbeiter] == Gebiete[zone][gOwner])
{
SendClientMessage(playerid,0xFFFF00FF,"=========||GangFight||==========");
SendClientMessage(playerid,0xA0A0A0FF,"Achtung! Eure Gangzone wird angegriffen!");
SendClientMessage(playerid,0xA0A0A0FF,"Verteidigt es oder es gehört bald dem Feind");
SendClientMessage(playerid,0xFFFF00FF,"=========||GangFight||==========");
}
if(PlayerInfo[i][pChef] == Gebiete[zone][gAngreifer] ||PlayerInfo[i][pArbeiter] == Gebiete[zone][gAngreifer])
{
SendClientMessage(playerid,0x00AFFFFF,"=========||GangFight||==========");
SendClientMessage(playerid,0x00FF3C9D,"Der Leader eurer Fraktion hat ein Gangfight gestartet!");
SendClientMessage(playerid,0x00FF3C9D,"Tötet die Feinde um Punkte zu erhalten!");
SendClientMessage(playerid,0x00AFFFFF,"=========||GangFight||==========");
}
}
}
else
{
SendClientMessage(playerid,COLOR_RED,"Du bist in keinem Gebiet, welches man einnehmen kann!");
}
}
else
{
SendClientMessage(playerid, COLOR_RED,"Du bist in keiner Gang/Mafia!");
}
return 1;
}
Und hier der "IsPlayerInGebiet" stock:
stock IsPlayerInGebiet(playerid)
{
for(new i;i<sizeof(Gebiete);i++)
{
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid,X,Y,Z);
if(Gebiete[i][gMinX] < X && Gebiete[i][gMaxX] > X && Gebiete[i][gMinY] < Y && Gebiete[i][gMaxY] > Y)
{
return i;
}
return -1;
}
return -1;
}
Würde mich um Hilfe sehr freuen.

