Probleme beim Auslesen von Farben aus einem Array

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo


    Same Basisproblem - neuer Anwendungsort. Ich möchte die Farben der betreffenden Fraktion aus einem Array auslesne und damit die Farbe blinken lassen. Wenn ich hinten die [0] nicht angebe, motzt der Compiler immer rum, bei Vehiclesnames, Jobnames und Fraktionsnames gehts aber auch ohne [0], also dort wo man das Array ausliest (Nicht bei der Definition).Hier ist mal mein Code, jedenfalls ist die Zone immer etwas dünkler als die Map:



    new FraktionColor[17][] =
    {
    "0xC0C0C096",
    "0xC0C0C096",
    "0xC0C0C096",
    "0xC0C0C096",
    "0xC0C0C096",
    "0xC0C0C096",
    "0xC0C0C096",
    "0xC0C0C096",
    "0xC0C0C096",
    "0x000000AA", //Schwarz Hitman
    "0x33AA33AA", //Grün Grove Street
    "0xAA3333AA", //Pink Ballas
    "0xFFFF00AA", //Gelb Vagos
    "0x80400096", //Braun Hells Angels
    "0x33CCFFAA", //Hellblau San Fierro Rifa
    "0xAFAFAFAA", //Schwarz Triaden
    "0xF5DEB3AA" //Beige Da Nang Boys
    };


    COMMAND:zoneerobern(playerid,params[])
    {
    #pragma unused params
    if(GangFightStatus == 1) return SendClientMessage(playerid,COLOR_GREY,"Es kann nur um eine Zone gekämpft werden");
    if(PlayerInfo[playerid][pLeader] < 9) return SendClientMessage(playerid,COLOR_GREY,"Du bist in keiner Gang sondern in einer Staatsfraktion");
    for(new zone = 0; zone < ZoneAmount; zone ++)
    {
    if(IsPlayerInArea(playerid,GangZoneInfo[zone][gKoord1],GangZoneInfo[zone][gKoord2],GangZoneInfo[zone][gKoord3],GangZoneInfo[zone][gKoord4]))
    {
    if(PlayerInfo[playerid][pMember] == GangZoneInfo[zone][gFraktion]) return SendClientMessage(playerid,COLOR_GREY,"Diese Zone gehört bereits zu deiner Gang");
    SendClientMessage(playerid,COLOR_GREEN,"Gangzone wird für 5 Minuten angegriffen");
    SendClientMessageToAll(COLOR_RED,"Es wird um eine Gangzone gekämpft");
    FightGang1 = GangZoneInfo[zone][gFraktion];
    FightGang2 = PlayerInfo[playerid][pMember];
    GangZoneID = zone;
    GangFightStatus = 1;
    GangZoneFlashForAll(GangZoneInfo[zone][gZoneID],FraktionColor[PlayerInfo[playerid][pMember]][0]);
    GangZoneInfo[zone][gAngreifer] = PlayerInfo[playerid][pMember];
    SetTimerEx("GangZoneCheckFight",300000,0,"d",zone);
    return 1;
    }
    }
    return 1;
    }


    Zone blinkt überhaupt nicht, zudem muss ich woe oben erwähnt FraktionColor[Zahl][0] benutzen, da der Compiler sonst Errors ausspuckt.
    MfG dUDA

  • warum machst du es nicht so?
    new FraktionColor[17] =
    {
    0xC0C0C096,
    0xC0C0C096,
    0xC0C0C096,
    0xC0C0C096,
    0xC0C0C096,
    0xC0C0C096,
    0xC0C0C096,
    0xC0C0C096,
    0xC0C0C096,
    0x000000AA, //Schwarz Hitman
    0x33AA33AA, //Grün Grove Street
    0xAA3333AA, //Pink Ballas
    0xFFFF00AA, //Gelb Vagos
    0x80400096, //Braun Hells Angels
    0x33CCFFAA, //Hellblau San Fierro Rifa
    0xAFAFAFAA, //Schwarz Triaden
    0xF5DEB3AA //Beige Da Nang Boys
    };
    und dann halt mit
    GangZoneFlashForAll(GangZoneInfo[zone][gZoneID],FraktionColor[PlayerInfo[playerid][pMember]);
    ausführen.

    The fact is, I am right. And if you think I'm wrong, you are wrong.