Beiträge von BloodyEric

    Sinnvoll ist mit den Variablen zu arbeiten, nicht mit möglichen ModelIDs.


    Bsp:

    new v0=CreateVehicle(Blabla)
    new v1=CreateVehicle(Blabla)
    new v2=CreateVehicle(Blabla)
    new v3=CreateVehicle(Blabla)
    new v4=CreateVehicle(Blabla)


    Danach kannst du mit einer Funktion ermitteln, um was es sich handelt.
    Bspw:


    GetVehicleType(myvehicleid)
    {
    switch(GetVehicleModelID(myvehicle)
    {
    case 123,125,77:7 //Gehen wir einfach mal davon aus, dass ModelID 123/125/777 ein Boot ist (später halt durch die echten ModelIDs ersetzen)
    return 0; //Wir geben den internen Wert 0 aus und merken uns irgendwo, dass 0 für ModelID123, also ein Boot steht (Vorzugsweise unten irgendwo auskommentiert im Script)
    case 555,556
    return 1; //Denken wir uns einfach mal dass 555 und 556 LKWs sind, die RückgabeID1 merken wir uns also für LKW


    //Das machst du dann einfach weiter mit allen Typen die du haben willst, gib einfach immer eine andere Zahl zurück
    default: //Das wird ausgelöst, wenn es keiner der anderen Fälle ist. Denk dran, es als letztes in dieses Caseteil zu packen
    return -1; //Merken wir uns, dass -1 immer zurückgibt, wenn das Fahrzeug kein in dieser Funktion zugewiesener Typ ist
    }
    }


    Und dann kannst du das im Script ganz einfach abfragen, beispielsweise wollen wir nun irgendwo im Script wissen, ob das erstellte Fahrzeug v1 ein Boot ist:


    if(GetVehicleType(veh1)==0) //In der Funktion geben die ModelIDs für "Boot" 0 zurück, würden wir nach einem LKW suchen würde die Abfrage ..==1 heißen
    {
    print("Juhu, wir haben ein Boot gefunden");
    }


    Es ist ungetestet, sollte es aber tun. Denk dran, dass die von mir geschriebenen ModelIDs ausgedacht sind, die richtigen findest du in der SA-MP Wiki.



    EDIT1: @ hp: Das bringt nichts, da er scheinbar die Fahrzeuge im Script testen will. Daher macht GetPlayerVehicleID keinen Sinn. ;) Wenn ich mich irre vergesst meinen Post.

    Okay, dass es effektiver geht hattest du ja gesagt, aber davon mal abgesehen: Wo genau ist das Problem? Was geht genau nicht mehr?

    Ich hab keine Ahnung von höherer Mathematik, im englischen SA-MP Forum gibt es aber einen Converter, diese 4 in 3 Werte zu konvertieren. Solltest du mathematisch höher begabt sein kannst du dir ja das hier mal durchlesen.

    Damit kannst du präzise im 3 Dimensionalen Raum jede Rotation exakt erkennen - zum Beispiel auch wenn ein Fahrzeug an Hügeln ist.


    Velocity: Damit kannst du Fahrzeuge zum rotieren bringen, wenn du zum Beispiel die Z-Angularity erhöhst kannst du das Fahrzeug auf den Kopf drehen.

    DSL 1000 ist schon SEHR grenzwertig, ich schätze ganz stark, dass das einfach zu wenig ist. Wenn du SA-MP spielst, mach alle anderen Programme, die irgendwie ans Internet gehen aus (Messenger, Dinge die nen Autoupdater drin haben etc.) und versuch es nochmal.

    Und vergiss den letzten Parameter bei CreateObject nicht ^^
    Maximal kannst du nur 300.0 eingeben.


    Der Parameter ist optional, wenn du den nicht gesondert haben willst, musst du da nix einstellen; dann wird er mit der Standarddistanz (250.0 ?) geladen. ;)

    AUA!


    if(newkeys & KEY_FIRE) //STRG oder linke Maustaste
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    new model = GetPlayerVehicleModel(playerid);
    if(model == 403 || model == 514 || model == 515) //hier wird gefragt, ob der spieler in einem truck sitzt
    {
    if(IsTrailerAttachedToVehicle(vehicleid)) //hier wird abgefragt, ob ein trailer am fahrzeug ist
    {
    DetachTrailerFromVehicle(vehicleid); //hier wird der Trailer gelöst
    SendClientMessage(playerid, COLOR_WHITE, "Trailer erfolgreich gelöst!"); //hier wird der Text gesendet
    }
    }
    }


    In der ersten Zeile nicht &&, wenn dann ==, am besten ist aber ein &. :P

    Man kann Bugs verursachen, die auch andere betreffen. Ich schreib hier besser nicht wie genau, je weniger es wissen desto weniger missbrauchen es. :)

    Lest doch alle mal den ersten Post im sa-mp.com Forum, da steht, dass 0.3b ein Security/Bugfix Update ist und Updates mit mehr Features in Zukunft folgen werden. Kalcor hat mir im IRC schon versichert, dass es noch weiter gehen wird, bis er zu einem Punkt kommt, an dem er SA-MP als "fertig" ansieht. Das ist jetzt noch nicht so.