Beiträge von Jeffry

    Nein.
    Das GetPlayerSpeed solltest du wenn möglich mit der Funktion ersetzen, die du verwendest um auf 117 max. Geschwindigkeit zu kommen, das wäre sinnvoll.
    Dann musst du nur noch so lange am REDUCER_AMOUNT probieren, bis du auf 135 kommst.

    Oben im Script:
    #define REDUCER_AMOUNT 0.01


    Die Zeile so verändern:
    SetVehicleSpeed(GetPlayerVehicleID(playerid), speed*REDUCER_AMOUNT*135/117);


    Dann eben REDUCER_AMOUNT so lange ändern, bis deine Geschwindigkeit passt. Musst halt probieren.

    Naja, ich würde das so angehen:


    GetPlayerSpeed


    OnPlayerUpdate
    if(IsPlayerInAnyVehicle(playerid))
    {
    new id = GetPlayerVehicleID(playerid);
    new model = GetVehicleModel(id);
    if(model == PD_CAR_MODEL)
    {
    new Float:speed = GetPlayerSpeed(playerid);
    if(speed <= 117)
    {
    SetVehicleSpeed(GetPlayerVehicleID(playerid), speed*135/117);
    }
    }
    }
    Die Werte musst du unter Umständen noch verändern (117 und 135), ich weiß nicht mit welchen Multiplikatoren du arbeitest. Einfach probieren, wobei 117 beides mal mit der gleichen Zahl ersetzt wird, sonst machts keinen Sinn mehr.

    Kann man über CreateDynamicObjectEx auch die Streamrate für bestimmte Objekte festlegen?


    Die streamrate nicht, das ist ja die Zeit die der Server wartet bis er erneut alle Objekte überprüft.
    Die stream distance kannst du bei CreateDynamicObject einzeln ändern.
    native CreateDynamicObject(modelid, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz, worldid = -1, interiorid = -1, playerid = -1, Float:streamdistance = 200.0);

    (%s,%s,%s,0,0,0,0,100.0,0.0,Keine,0,0,0,0,0,0,0,0,0,0,0,0,%s,0,Deutschland)
    zu:
    ('%s','%s','%s',0,0,0,0,100.0,0.0,'Keine',0,0,0,0,0,0,0,0,0,0,0,0,'%s',0,'Deutschland')


    Strings sollten mit ' ' abgegrenzt werden.
    Falls das immer noch nicht tut, mit mysql_real_escape_string es dazu noch versuchen.

    Zitat

    To adjust an object's draw distance (added in SA-MP 0.3b), use Streamer_SetFloatData with E_STREAMER_DRAW_DISTANCE. Alternatively, use CreateDynamicObjectEx. An object's default draw distance can be set by specifying 0.0.


    So steht es im Thread des Plugins. (http://forum.sa-mp.com/showthread.php?t=102865)


    Möglicherweise musst du zugleich auch die stream_distance in deiner server.cfg erhöhen.


    Anscheinend tut das aber nicht immer wie gewünscht, so zumindest stand es in einigen Threads im Englischen Forum.
    Probiers halt mal aus.

    @Fly2lifeHigh:
    Bitte nimm bloß keinen Timer! Den müsstest du so schnell einstellen dass es dir alles zerlegt, wenn man bedenkt dass du das Nitro nicht an einem Traktor verwenden willst.


    Ich hab etwas recherchiert:
    Pickup 19300 als Typ 14. Das wäre unsichtbar und nur in Autos aufnehmbar.
    An die selbe Stelle setzt dann noch das 3DLabel.
    Abfrage mit OnPlayerPickUpPickup.

    OnPlayerUpdate
    if(HatMinus[playerid] == 0 && GetPlayerMoney(playerid) < 0)
    {
    HatMinus[playerid] = 1;
    //td zeigen...
    }
    else if(HatMinus[playerid] == 1 && GetPlayerMoney(playerid) >= 0)
    {
    HatMinus[playerid] = 0;
    //td entfernen...
    }


    So würde ich es machen.
    HatMinus als globale variable definiert, unter den includes.

    if(gunname == "") return 0;
    zu:
    if(!strlen(gunname)) return 0;


    @[SAS]Dominator: Das wird dir IMMER 0 zurückgeben, da jeder string den leeren string enthält.

    eXmatic:
    Es ist tatsächlich so, dass der KEY_JUMP in Fahrzeugen auf LSHIFT nicht erkannt wird, weder mit OnPlayerKeyStateChange noch mit GetPlayerKeys. Hatte ich ebenfalls nicht gewusst. Da musst du dir einen anderen KEY_... suchen. Allerdings entspricht KEY_JUMP in Fahrzeugen "S" (Rückwärts fahren), dann müsste man halt S drücken um den Motor zu starten.

    Ich hatte einen Leichtsinnsfehler drinne.
    strdel(alles, strlen(alles)-1, strlen(alles));
    -1 zu -2 machen.


    FALLS das nicht tut (bei mit hat sich der Server verabschiedet als ich versucht habe den string "alles" zu printen (zu lang), benutze das da:



    new alles[149*128+64];
    format(alles, sizeof(alles), "UPDATE `SpielerKonten` SET ");
    for(new i=1; i<75; i++) format(alles, sizeof(alles), "%s%s, ", alles, string[i]); //Wir fangen bei 1 an, da 0 ja der Name ist, der wird unten verwendet.
    strdel(alles, strlen(alles)-2, strlen(alles)); //Weg mit dem letzten Komma
    format(alles, sizeof(alles), "%s WHERE %s", alles, string[0]);
    print(alles);
    mysql_query(alles);


    format(alles, sizeof(alles), "UPDATE `SpielerKonten` SET ");
    for(new i=76; i<149; i++) format(alles, sizeof(alles), "%s%s, ", alles, string[i]);
    strdel(alles, strlen(alles)-2, strlen(alles));
    format(alles, sizeof(alles), "%s WHERE %s", alles, string[0]);


    print(alles); //Das hier auskommentieren, falls es nicht tut. Was geprintet wird, bitte posten.
    print("Gespeichert");
    mysql_query(alles);
    return 0;

    Hier bin ich bis zu "Gespeichert" gekommen, und es passt eigentlich alles.

    Zu kannst es so machen:
    SetObjectMaterial(CreateObject(19381, 2167.71851, 2075.54419, 9.73640, 0.00000, 90.00000, 0.00000), 0, 3967, "cj_airprt", "ws_stationfloor", 0xFFFFFFFF);
    Ebenso für alle anderen.


    Wenn du jedoch "Objekt1" als Array woanders im Script noch benutzen willst, dann zeig kurz wie du es deklariert hast.