Beiträge von Bluescreen

    Du kannst einfach auch einen Globalen Timer nehmen eine Schleife nehmen und dann setzt du einen Wert beim Spieler wenn er in ein Auto steigt jetzt fragst du in der Schleife ab wer diesen Wert auf 1 hat und lässt Abfragen ob das Leben unter 250 ist


    forward Tacho();
    SetTimer("Tacho", 1000, true);
    public Tacho()
    {
    new Float:Health;
    for(new i = 0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerInAnyVehicle(i))
    {
    GetVehicleHealth(GetPlayerVehicleID(i), Health);
    if(Health < 250)
    {
    SendClientMessage(i, FARBE, "Du hast einen Motorschaden");
    }
    }
    return 1;
    }
    So in der Art müsstest du das machen du kannst aber auch für jeden Spieler einen eigenen Timer erstellen mithilfe von SetTimerEx, kommt drauf an was du lieber haben willst.


    Wieso muss man denn sowas machen ?


    Wenn man es läd, muss er doch eigentlich die alten Werte mit den aus der Datenbank geladenen Werte ersetzen ?


    Das macht er bei einem bereits existierende Spieler, aber wenn sich jemand neu Registriert hat er ja alle Werte auf Null da er neu auf dem Server ist und dadurch das die Werte nicht Gelöscht wurden vom vorherigen Spieler auf dieser ID, bekommt er die Werte von dem Spieler der vorher auf dieser ID Connected war.

    Du holst dir einfach die Tuning teile beim Speichern vom Fahrzeug mithilfe von


    GetVehicleComponentInSlot(vehicleid, CARMODTYPE_SPOILER);
    Du musst dann für jeweils einen Slot einen Eintrag in der Datenbank machen, also insgesamt 13 Stück, beim Laden musst dann nur noch die Tuning Teile aufs Autos klatschen mithilfe von


    AddVehicleComponent(vehicleid, id);
    Und um die Farbe Speichern zu können empfehle ich dir diese Include: http://forum.sa-mp.com/showthread.php?t=176496


    Die Wiki Seiten dazu:
    http://wiki.sa-mp.com/wiki/GetVehicleComponentInSlot
    http://wiki.sa-mp.com/wiki/Componentslots
    http://wiki.sa-mp.com/wiki/AddVehicleComponent

    Du könntest das ganze mit nur 3 Textdraws Lösen in dem du wenn bei dir momentan ein neuer Texrdaw anfängt mit "~n~" eine neue Zeile anfängst dadurch hast du mehr Platz um Textdraws gleichzeitig anzeigen zu lassen und diese Schwarzen Striche wären weg

    was ändert das an der physikalischen geschwindigkeit?


    Das gleiche Problem gab es bei 0.3e und 0.3d auch schon


    Die einzige Lösung dafür wäre das du Abfragst ob jemand in der Area (die Straße) ist und dann die Geschwindigkeit automatisch erhöhst aber nur wenn er die W Taste die ganze Zeit gedrückt hält, aber ich denke das da eine menge Arbeit auf dich zukommt wenn du das so machen willst.

    Also das ist mir vor kurzem auf mehreren Servern auch aufgefallen und zwar Speziell auf dieser Straße wenn du ein Script ohne nichts nimmst und da entlang fährst wirst du auch langsamer, wieso das so ist kann ich dir nicht Sagen, aber es könnte sein das der Server auf dem du das getestet hast etwas gescriptet hat das man dort trotzdem schneller Fahren kann.


    Das ganze ist von SA:MP aus begrenzt worden nicht vom Scirpt her


    Normal wären 90Min am Tag, bisschen Musik, Facebook/IM und Youtube.


    Du bist ein Lustiger in der heutigen Zeit mit Facebook, YouTube und viel mehr hast du an einem Tag 1-2 GB weg die meisten hören Musik bis der PC aus ist und heutzutage ist es wenig wenn die Leute "nur" 2 Stunden am/auf PC/Facebook hocken, wir sind in einer neuen Ära nicht wie früher, wo das Internet nicht so sehr genutzt wurde. ;)

    Also soweit ich es weiß machen die so etwas schon einige Zeit lange, bisher war es aber nur bei VDSL:


    Zitat

    Ab einem übertragenen Datenvolumen ab 200 GB bei VDSL 50 in einem Monat wird die Übertragungsgeschwindigkeit des Internet-Zugangs für den Rest des Monats auf max. 6.016 KBit/s für den Downstream und 576 KBit/s für den Upstream begrenzt. Ab einem übertragenen Datenvolumen ab 300 GB bei Fiber 100, ab 400 GB bei Fiber 200 in einem Monat wird die Übertragungsgeschwindigkeit des Internet-Zugangs für den Rest des Monats auf 384 KBit/s für den Down- und Upstream begrenzt.


    Quelle: http://www.telekom.de/privatku…ortpakete%2Fcomfort-speed (Bei Vertragsbedinungen ganz unten)


    Ich finde es schon etwas blöd gemacht da manche für extra VDSL nehmen damit sie ihre Spiele oder whatever schneller herunterladen können und 200 gb ist schnell erreicht wenn man einer ist der die neusten Spiele haben will.

    Wenn du Globale Textrdaw hast musst du


    new Text:blabla;
    machen wenn du aber PlayerTextDraws benutzen willst musst du


    new PlayerText:blabla[MAX:PLAYERS];
    machen da das zwei Verschieden Textdraws sind.
    Und außerdem will er dir Sagen das es das dämlichste ist was man machen kann, den bei den globalen Textdraws hast du irgendwann ein Limit bei PlayerTextDraws ist das Limit um einiges höher und du kannst mehr Textdraws anzeigen lassen (oder so) genau weiß ich es jetzt auch nicht müsstest dich genauer mit PlayerTextDraws beschäftigen da dies wirklich von Vorteil von ist.

    Nimm am besten CreateVehicle(); und am Ende nach den Farben 0 für Nicht respawnen eingeben :).


    Dann Respawnt das Auto nach 0 Sekunden wenn du aussteigst d.h. wird es sofort an den Spawnpunkt wieder zurückgestellt.


    @Ersteller:
    Benutze AddStaticVehicleEx und ganz am ende nach den Farben -1 dann respawnt das Fahrzeug überhaupt nicht mehr.


    AddStaticVehicleEx(403,2843.0645,952.2681,11.3567,90.0053,0,0,-1); // Truck2

    Wenn ich dich richtig verstanden habe:


    Wenn das Fahrzeug unter 250.00 Health geht fängt es an zu brennen, nach ca. 1 - 2 Sekunden wird der Callback OnVehicleDeath aufgerufen, danach ist das Fahrzeug für 5 - 7 Sekunden komplett vom Server Gelöscht und wird wieder dorthin gespawnt wo du es erstellt hast.
    Du musst aber aufpassen den wenn das Fahrzeug in den 5 - 7 Sekunden nicht auf dem Server existiert und in der Zeit ein Fahrzeug erstellt wird, verschieben sich alle Fahrzeug IDs nach der ID vom explodierten Fahrzeug.
    Deshalb bei OnVehicleDeath am besten SetVehicleToRespawn(vehicleid); einfügen dann kommt keine ID Verschiebung mehr vor.

    Du hast fast alles richtig bloß musst du die Position bei SetVehicleVeloCity dazu addieren:


    if(newkeys == KEY_CROUCH)
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    new Float:x,Float:y,Float:z;
    new vehicleid = GetPlayerVehicleID(playerid);
    GetVehiclePos(vehicleid, x, y, z);
    SetVehicleVelocity(vehicleid, x+0.0, y+0.0,z+0.2);
    }
    }


    edit: habe mich vertan anstatt GetVehiclePos musst du GetVehicleVelocity(vehicleid, x, y, z); benutzen dann müsste es funktionieren wie du es haben willst.

    Also soweit ich es verstanden habe glaube ich du willst bei jeder ID printen lassen wenn ja:


    new CountHouses;
    for(new i; i < MAX_PLAYER; i++)
    {
    printf("Lade Haus! ID: %i",Haussystem[i][ID]);
    CountHouses++;
    }
    printf("Es wurden %d Häuser geladen",CountHouses);