Beiträge von Jeffry

    Danke, das wünsche ich dir auch :)


    Das return ist insofern schon richtig, denn es wird zu GetPlayerFaction kein passendes GWB[i][gwbfraktion] gefunden.


    Prüfe mal, was GetPlayerFaction ausgibt und schaue dann, ob dazu überhaupt ein GWB Wert existiert.


    Ansonsten müsstest du deinem Befehl eventuell, wenn i gleich -1 ist, noch eine return Meldung hinzufügen, dass für diese Fraktion keine GWB existiert.

    Den Teil mit der Ausgabe der Zeile hast du nicht eingebaut. Aber ich habe eine Vermutung.


    Poste bitte mal deine GetPlayerGWB Funktion. Ich nehme an, dass die -1 zurück gibt, daher wird das Array gesprengt, was zu dem Fehler führt.

    Ein paar pID und playerid's waren da noch vertauscht.
    Versuche es so:
    else if(strcmp(option, "hacken", true) == 0)
    {
    new Float:X, Float:Y, Float:Z;
    new pID = HackAntrag[playerid]; //Damit es einfacher ist. pID entspricht HackAntrag[playerid].
    if(pID != INVALID_PLAYER_ID)
    {
    if(HackAntrag[pID] != INVALID_PLAYER_ID)
    {
    if(IsLoggedIn(pID))
    {
    GetPlayerPos(pID, X, Y, Z);
    if(!IsPlayerInRangeOfPoint(playerid, 5.0, X, Y, Z))return SendClientMessage(playerid, COLOR_GREY, "Du bist nicht in der Nähe vom Spieler.");
    new WantedsHack = HackWanteds[playerid];
    new Geld = HackBetrag[playerid];
    if(GetMoney(pID) < Geld)return SendClientMessage(playerid, COLOR_GREY, "Dein Partner hat nicht genügend Geld.");


    if(WantedsHack < 0 || WantedsHack > 5)return SendClientMessage(playerid, COLOR_GREY, "Du kannst nur zwischen 1 und 5 Wanteds löschen.");
    if(Spieler[playerid][pWanteds] == 0)return SendClientMessage(playerid, COLOR_GREY, "Du hast keine Wanteds.");
    OnWantedChange(playerid, Spieler[playerid][pWanteds], (Spieler[playerid][pWanteds]-WantedsHack));
    Spieler[playerid][pWanteds] -= WantedsHack;
    if(Spieler[playerid][pWanteds] <= 0)Spieler[playerid][pWanteds] = 0;


    new string[145];
    GetPlayerName(pID, string, MAX_PLAYER_NAME);
    format(string, sizeof(string), "Du hast %s den Hackbetrag gesendet (+$%d).", string, Geld);
    SendClientMessage(playerid, COLOR_GREEN, string);
    GiveMoney(playerid, -Geld);
    GiveMoney(pID, Geld);


    HackBetrag[playerid] = 0;
    HackBetrag[pID] = 0;
    HackWanteds[playerid] = 0;
    HackWanteds[pID] = 0;
    HackAntrag[pID] = INVALID_PLAYER_ID;
    }
    }
    }
    return 1;
    }

    Es wird also doch geprintet. Das hättest du schon vor 3 Stunden posten können.


    Ändere im 2. Dialog nach dem "Welt ok" Print:
    if(!strcmp(Radio[i2][urlname],inputtext,true))
    zu:
    if(!strcmp(Radio[i2][urlname][8],inputtext,true))

    Was wird dir so im Server Log ausgegeben?
    case DIALOG_vehMUSIK:
    {
    printf("DIALOG_vehMUSIK");
    new vehicleid = GetPlayerVehicleID(playerid),counter = 0;
    new string [900];
    printf("response: %d", response);
    if(response == 0)return 1;
    else
    {
    printf("else");
    if(!IsPlayerInAnyVehicle(playerid))return SCM(playerid,GRAU,"[FEHLER]: Du befindest dich in keinem Fahrzeug!");
    for(new i=0;i<sizeof(Radio);i++)
    {
    if(strfind(string,Radio[i][urlcategory],true) == -1)
    {
    strcat(string,Radio[i][urlcategory]),strcat(string,"\n");
    counter++;
    }
    }
    printf("listitem: %d / counter: %d", listitem, counter);
    strdel(string,0,strlen(string));
    if(listitem >= counter)
    {
    ForEachPlayer(i)
    {
    if(IsPlayerConnected(i) && !IsPlayerNPC(i))
    {
    if(GetPVarInt(i,"Eingeloggt") == 1)
    {
    if(GetPlayerVirtualWorld(i) == GetPlayerVirtualWorld(playerid))
    {
    if(IsPlayerInVehicle(i,vehicleid)) StopAudioStreamForPlayer(i), printf("Stoppe Stream für %d", i);
    }
    }
    }
    }
    format(vFahrzeug[vehicleid][VehicleRadioStream],128,"NONE");
    }
    printf("Schleife.");
    for(new i=0;i<sizeof(Radio);i++)
    {
    if(!strcmp(Radio[i][urlcategory],inputtext,true))
    {
    strcat(string,Radio[i][urlname]),strcat(string,"\n");
    }
    }
    printf("ShowPlayerDialog");
    ShowPlayerDialog(playerid,DIALOG_vehMUSIK2,DIALOG_STYLE_LIST,VehicleDefinations[GetVehicleModel(vehicleid)-400],string,"Auswählen","Zurück");
    }
    return 1;
    }

    Dann müsste es doch meinem Verständnis nach so sein, oder?
    if(Spieler[pID][pWanteds] == 0)return SendClientMessage(playerid, COLOR_GREY, "Der Spieler hat keine Wanteds.");
    zu:
    if(Spieler[playerid][pWanteds] == 0)return SendClientMessage(playerid, COLOR_GREY, "Du hast keine Wanteds.");

    Dir fehlt ebenfalls das MySQL Plugin.
    Normalerweise solltest du vom Ersteller des Codes alle Plugins erhalten haben.


    Falls nicht, frage bei ihm bitte nach, welche MySQL Plugin Version benötigt wird.