Problem mit meinem Carspawnsystem.

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 Brotfische,


    Ich habe folgendes Problem, wenn ich /getmycar eingeben, wird mir immer nur 1 Fahrzeug angezeigt (Ich habe 4 Fahrzeuge).


    Screen:



    Codes:


    ocmd:getmycar(playerid,params[])
    {
    if(!isAdmin(playerid,1))return SendClientMessage(playerid,C_Error,"DU hast keine Berechtigung für diesen Befehl!");
    new string[300];
    for(new i=0; i<sizeof(cInfo); i++)
    {
    if(cInfo[i][besitzer]!=sInfo[playerid][db_id]) continue;
    format(string, sizeof(string), "%s\n%s",string,VehicleName[cInfo[i][model]-400]);
    ShowPlayerDialog(playerid,GetMyCar,DIALOG_STYLE_LIST,"Meine Fahrzeuge",string,"Wählen","Abbrechen");
    return 1;
    }
    return 1;
    }


    if(dialogid==GetMyCar)
    {
    if(!response)return 1;
    new tmp;
    switch(listitem)
    {
    case 0..20:
    {
    for(new i=0; i<sizeof(cInfo); i++)
    {
    if(cInfo[i][besitzer]!=sInfo[playerid][db_id]) continue;
    if(tmp == listitem)
    {
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    SetVehiclePos(cInfo[i][id_x],x,y,z);
    return 1;
    }
    else tmp++;
    }
    }
    }
    }


    Ich hoffe es kann mir jemand helfe :D


    MFG German_ScripterHD


    Mit freundlichen Grüßen
    German_ScripterHD

  • also ich würde an deiner stelle mal Prints einfügen


    Überprüfe mal ob die Fahrzeuge überhaupt in der Schleife auftauchen


    Wenn ja warum nicht in der Liste


    :) :whistling:


    Mir ist grad aufgefallen dass du string erstellst und auch so definierst aber auch im format aber was ist den String?
    "format(string, sizeof(string), "%s\n%s",string,VehicleName[cInfo[i][model]-400]);"


    da komm ich irgendwie nicht drauf klar...

  • Das liegt an dem return in der Schleife.
    So:
    ocmd:getmycar(playerid,params[])
    {
    if(!isAdmin(playerid,1))return SendClientMessage(playerid,C_Error,"DU hast keine Berechtigung für diesen Befehl!");
    new string[300];
    for(new i=0; i<sizeof(cInfo); i++)
    {
    if(cInfo[i][besitzer]!=sInfo[playerid][db_id]) continue;
    format(string, sizeof(string), "%s\n%s",string,VehicleName[cInfo[i][model]-400]);
    }
    ShowPlayerDialog(playerid,GetMyCar,DIALOG_STYLE_LIST,"Meine Fahrzeuge",string,"Wählen","Abbrechen");
    return 1;
    }