Autohaus MYSQL Nummernschilder problem

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
  • Guten Abend,


    Ich möchte das man /nummernschild [Name] machen kann und habe folgendes problem :



    Wenn ich z.b. /nummernschild Fabi.StaR eingebe passiert nichts hir der code:



    ocmd:nummernschild(playerid,params[]) {
    if(PlayerCarInfo[playerid][pKey] == 1) {
    new ort[128],name[MAX_PLAYER_NAME],query[258];
    GetPlayerName(playerid,name,MAX_PLAYER_NAME);
    if(sscanf(params,"d",ort)) return SendClientMessage(playerid, -1, "/nummernschild [name]");
    format(query,258,"UPDATE `usercars` SET `Nummernschild` = '%s' WHERE `Besitzer` = '%s'",ort,name);
    mysql_query(query);
    printf("Das nummernschild von %s wurde auf %s geändert",name,ort);
    SetVehicleNumberPlate(PlayerCarInfo[playerid][cVEHID],ort);
    return 1;
    } else {
    SendClientMessage(playerid, -1, "Du besitzt kein auto.!");
    }
    return 1;
    }

    Mit freundlichen Grüßen,


    Fabi.StaR :love::saint:


  • Und wie soll es sonst heissen?


    //EDIT:


    habe es jetzt so geht aber immer noch net :/


    ocmd:nummernschild(playerid,params[]) {
    if(PlayerCarInfo[playerid][pKey] == 1) {
    new ort[128],name[MAX_PLAYER_NAME],query[258];
    GetPlayerName(playerid,name,MAX_PLAYER_NAME);
    if(sscanf(params,"d",ort)) return SendClientMessage(playerid, -1, "/nummernschild [name]");
    format(query,258,"UPDATE `usercars` SET `Nummernschild` = '%d' WHERE `Besitzer` = '%s'",ort,name);
    mysql_query(query);
    printf("Das nummernschild von %s wurde auf %d geändert",name,ort);
    SetVehicleNumberPlate(PlayerCarInfo[playerid][cVEHID],ort);
    return 1;
    } else {
    SendClientMessage(playerid, -1, "Du besitzt kein auto.!");
    }
    return 1;
    }

    Mit freundlichen Grüßen,


    Fabi.StaR :love::saint:


  • Wenn Du nen String da stehen haben möchtest, musst Du auch schon das richtige Zeichen verwenden...
    d = Integer
    s = String


    Probiers mal so:
    ocmd:nummernschild(playerid,params[]) {
    if(PlayerCarInfo[playerid][pKey] == 1) {
    new ort[32],name[24],query[256];
    GetPlayerName(playerid,name,24);
    if(sscanf(params,"s",ort)) return SendClientMessage(playerid, -1, "/nummernschild [name]");
    format(query,256,"UPDATE `usercars` SET `Nummernschild` = '%s' WHERE `Besitzer` = '%s'",ort,name);
    mysql_query(query);
    printf("Das nummernschild von %s wurde auf %s geändert",name,ort);
    SetVehicleNumberPlate(PlayerCarInfo[playerid][cVEHID],ort);
    return 1;
    } else {
    SendClientMessage(playerid, -1, "Du besitzt kein auto.!");
    }
    return 1;
    }


    Greetz
    #else


    #e Wenn ich mich nicht täusche, musst Du ein Fahrzeug respawnen lassen bevor das Nummernschild geändert wird.

  • http://wiki.sa-mp.com/wiki/SetVehicleNumberPlate

    Zitat

    This function has no internal error checking. Do not assign custom number plates to vehicles without plates (boats etc) as this will result in some unneeded processing time on the client.
    The vehicle must be respawned or restreamed for the changes to take effect.
    There's a limit of 32 characters on each numberplate (including embedded colors).
    This function only works in versions 0.2.1, 0.2.2, 0.2x and 0.3c (and beyond).

  • #e Wenn ich mich nicht täusche, musst Du ein Fahrzeug respawnen lassen bevor das Nummernschild geändert wird.


    Kann sein das Du es übersehen hast, Du musst ein Fahrzeug mit geändertem Nummernschild entweder neu einstreamen oder respawnen lassen.


    Mach also einfach z.b:



    new Float:cPos[4],cid;
    cid = GetPlayerVehicleID(playerid);
    GetVehiclePos(cid,cPos[0],cPos[1],cPos[2]);
    GetVehicleZAngle(cid,cPos[3]);
    SetVehicleToRespawn(cid);
    SetVehiclePos(cid,cPos[0],cPos[1],cPos[2]);
    SetVehicleZAngle(cid,cPos[3]);


    Sollte funktionieren. ;)


    Greetz
    #else


    #e: Vorposter war schneller, sorry