Hy Leute, tüftle seit 2 Tagen an einem Problem mit GangZoneFlashForAll.
Ich lasse meine Gangzonen aus der MySql DB auslesen und erstellen. Das funzt soweit prima und stellt keine Probleme dar.
Mit dieser Funktion blinkt immer das letzte im OnGameModeInit ausgelesene Gebiet, was ja auch logisch ist. (Der Befehl ist nur zu Testzwecken gedacht )
if (strcmp("/blink", cmdtext, true, 6) == 0)
{
GangZoneFlashForAll(SZ[zone],cops);
return 1;
}
Jetzt hab ich allerdings das Problem, wenn jemand versucht diese Zone einzunehmen, sollte diese in seinen Fraktionsfarben blinken.
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
new string[256],string1[128];
if(newkeys & KEY_SECONDARY_ATTACK)
{
mysql_query("SELECT id FROM dm_zones");
mysql_store_result();
new rows = mysql_num_rows();
mysql_free_result();
for(new f=1;f <= rows; f++)
{
format(string1,sizeof(string1),"%d",f);
SZ[iconposx] = mysql_GetFloat("dm_zones","iconposx","id",string1);
SZ[iconposy] = mysql_GetFloat("dm_zones","iconposy","id",string1);
SZ[iconposz] = mysql_GetFloat("dm_zones","iconposz","id",string1);
SZ[zone] = mysql_GetString("dm_zones","zone","id",string1);
SZ[owner] = mysql_GetString("dm_zones","owner","zone",SZ[zone]);
SZ[color] = mysql_GetString("dm_frakcolors","color","fraktion",SpielerInfo[playerid][frak]);
SZ[szort] = mysql_GetString("dm_zones","ort","zone",SZ[zone]);
SZ[art] = mysql_GetString("dm_zones","art","zone",SZ[zone]);
if(IsPlayerInRangeOfPoint(playerid,5,SZ[iconposx],SZ[iconposy],SZ[iconposz])) //BankLS
{
format(string,sizeof(string),"(%s) %s versucht die %s in %s einzunehmen!",SZ[zone],SpielerInfo[playerid][pname],SZ[art],SZ[szort]);
GangZoneFlashForAll(SZ[zone],strval(SZ[color]));
SendClientMessageToAll(take,string);
//taketimer1 = SetTimerEx("taking",1000,true,"ifff",playerid,SZ[iconposx],SZ[iconposy],SZ[iconposz]);
//taketimer2 = SetTimerEx("success",10000,false,"ifff",playerid,SZ[iconposx],SZ[iconposy],SZ[iconposz]);
}
}
}
Wenn ich also an einem der Orte bin und das Gebiet einnehmen möchte, gibt er mir die richtigen Daten an, es ist immer die richtige Zone und alle Daten wie der Zonenname, die Farbe, der Ort, die Art, alles korrekt.
Also ein auslese Problem ist es nicht. Aber blinken tut da nichts. Bin langsam echt am verzweifeln...
Hoffe, Ihr könnt mir weiterhelfen,
Vielen Dank schonmal im vorraus.
Mfg Nexon