Beiträge von Kaliber

    Wenn du das Auto erstellt, dann sitzt niemand im Fahrzeug. Das bedeutet die Funktion GetPlayerVehicleID macht hier keinen Sinn. Zumal i noch nicht einmal einen Spieler repräsentiert.


    Insofern musst du das so schreiben:


    C
    for(new i; i<sizeof(ahCars); i++)
    {
        ahCars[i][id_x] = AddStaticVehicle(ahCars[i][model],ahCars[i][c_x],ahCars[i][c_y],ahCars[i][c_z],ahCars[i][c_r],-1,-1);
        format(string,sizeof(string),"***[%s]***\nSteht für %i€ zum Verkauf",CarName[ahCars[i][model]-400],ahCars[i][ah_preis]);
        Create3DTextLabel(string,0x008080FF,ahCars[i][c_x],ahCars[i][c_y],ahCars[i][c_z],10,0,0);
    }

    Muss ich das Symbol selber nachbauen? :o

    Natürlich nicht.


    Wie schon erwähnt, gibt es dies als Sprite.


    Da schreibst du dann einfach folgendes rein:


    new Text:x = TextDrawCreate(265.000, 263.500, "LD_DRV:silver");
    TextDrawFont(x, 4);
    TextDrawTextSize(x, 100.000, 100.000);
    TextDrawColor(x, -1);


    und schon wird dir das Sprite angezeigt :)

    Wahrscheinlich ist das einfach nur draufgeschrieben mit: SetObjectMaterialText


    Dort einfach richtige font & size & color auswählen und fertig :)


    Man könnte natürlich auch ein richtiges M machen, indem man bestimmte Objekte aneinanderreiht und diese färbt mit SetObjectMaterial :)

    Mach lieber so etwas:



    C
    #define IsNoAdmin(%0,%1) (sI[%0][pAdmin] < (%1))
    #define NO_ADMIN SendClientMessage(playerid, COLOR_FEHLER, SERVER_KEINADMIN)
    
    
    //Und dann im Skript:
    if(IsNoAdmin(playerid, 3)) return NO_ADMIN;

    Wenn du es lieber auf deine Art machen willst, dann musst du unterschiedliche Werte returnen :)

    Kommt eine andere Fehlermeldung?


    Evtl einfach mal paar Updates Commands laufen lassen, das kann nie schaden ^^


    Code
    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get dist-upgrade

    Also ich bin mal so frei und zeige dir einige Fehler von dir auf:

    • Die Funktion in deinem Timer heißt anders, als deine Funktion im Skript.
    • In deiner public Funktion ist der Speed (die 5) an der falschen Position.
    • Du veränderst Positions-Koordinaten, du willst aber Rotations-Achsen verändern.
    • Du schreibst einfach so eine if-Abfrage in deinen Befehl, allerdings verwendest du weder Klammern, noch schreibst du dahinter etwas. Das wird zwar vom Compiler interpretiert...ist aber eine scheußliche Darstellung.

    So, ich bin mal freundlich und gebe dir sowohl die richtigen Koordinaten, als auch die richtige Struktur:


    mfg. :thumbup:

    Also um dir das mal zu erklären:

    C
    enum test
    {
        bangrund[32],
        level
    };
    new Variable[test];

    So du kannst nirgends direkt bangrund verwenden.


    Sondern immer nur Variable[bangrund].


    Also müsste es bei dir so aussehen:


    mysql_escape_string(grund, sInfo[playerid][bangrund]);

    Nutz am einfachsten einfach %q im format.


    Man sieht nicht wie du bangrund deklariert hast...eventuell meinst du nur grund?


    Zudem müsste das wenn dann so aussehen:


    mysql_escape_string(bangrund,grund,sizeof(grund),dbhandle);


    //Es würde aber folgendes reichen:
    mysql_escape_string(bangrund,grund);