Mein befehl will nicht wie ich es will

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 Breadfish


    ich habe da ein kleines anliegen wen ich jetzt
    im Autohaus ein Auto kaufe hab ich max. 2 Slots und wen ich jetzt mein /carsell befehl verwende
    wird mir der Kaufpreis wieder gegeben das Auto verschwindet auch der text kommt auch aber beim restart ist es wieder da
    das heißt die Dini wurde nicht gelöscht ich hab es schon mit remove dini probiert gibt auch nicht
    woran kann es liegen?



    if(strcmp("/carsell", cmdtext, true, 10) == 0)
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    new autoid = GetPlayerVehicleID(playerid);
    for(new i = 0; i < sizeof Buycars; i++)
    {
    if(vehicleid == Spielercar[playerid][i])
    {
    GivePlayerMoney(playerid, Buycars[i][Preis]/2);
    new Autodatei[100],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    DestroyVehicle(Spielercar[playerid][i]);
    format(Autodatei,sizeof(Autodatei),"/Autos/%s_Auto_%d.ini",name,autoid);
    fremove(Autodatei);
    SendClientMessage(playerid, GELB, "{0049FF}[AUTOINFO]: {FFAF00}Du hast dein Fahrzeug soeben für die hälfte des Kaufpreises verkauft!");
    return 1;
    }
    else continue;
    }
    }if(strcmp("/carsell", cmdtext, true, 10) == 0) { new vehicleid = GetPlayerVehicleID(playerid); new autoid = GetPlayerVehicleID(playerid); for(new i = 0; i < sizeof Buycars; i++) { if(vehicleid == Spielercar[playerid][i]) { GivePlayerMoney(playerid, Buycars[i][Preis]/2); new Autodatei[100],name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); DestroyVehicle(Spielercar[playerid][i]); format(Autodatei,sizeof(Autodatei),"/Autos/%s_Auto_%d.ini",name,autoid); fremove(Autodatei); SendClientMessage(playerid, GELB, "{0049FF}[AUTOINFO]: {FFAF00}Du hast dein Fahrzeug soeben für die hälfte des Kaufpreises verkauft!"); return 1; } else continue; } }
    komme da nicht mehr weiter wäre echt gut wen mir jemand ein Tipp gibt.


    Mfg.
    Marvinmauric


    ps: das will nicht richtig einrücken

    4 Mal editiert, zuletzt von Marvinmauric () aus folgendem Grund: a

  • Also erstens kann ich nicht scripten zumindest so das man es nicht scripten nennen kann. Speicherst du auch vor dem Server Neustart die Datei z.B SpielerSpeixhern beim restart einfügen. Wenn ich mich irre sag ich sorry aber wie schon gesagt ich habe davon keine Ahnung ^^

  • Hi,
    mir sind da zwei Sachen aufgefallen:


    new vehicleid = GetPlayerVehicleID(playerid); new autoid = GetPlayerVehicleID(playerid);
    Erscheint mir persönlich etwas redundant ;)



    Zu der Fremove Sache.
    Die Definition im Wiki sagt ganz klar, dass das File vorher geschlossen werden muss.

    Code
    Note: If the file you are attempting to delete is open at the time that fremove is used, it will not work.
    You must first use fclose before you try deleting it, that is, if you have used fopen.


    Versuch also einfach mal, das File vorher via Fclose zu schließen.



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )