Beiträge von FACE

    Das wäre eine Herangehensweise die jedoch nicht sonderlich zum Ziel beiträgt. Der Threadsteller möchte ja eine Beschleunigung des Fahrzeuges nach "vorne" hervorrufen.
    (Anbei ist es nicht die Geschwindigkeit, sondern die Verschiebung des Fahrzeuges auf der Karte. Dabei kann das Fahrzeug auch auf einem Zug stehen (zum Transport)).

    Ihr müsst dafür die Verschiebung des Fahrzeuges auf der Karte auslesen (Velocity)
    und das Fahrzeug in der Richtung nach vorne beschleunigen.


    Die Funktion SetVehicleVelocity, sowie die Funktion SetVehicleAngularVelocity (wie auch die zugehörigen Get.. Funktionen sollten euch dabei behiflich sein)


    Ein kleines Beispiel wird auf der Sa-mp Wiki Page für einen "Jump" dargeboten:

    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (!strcmp("/carjump", cmdtext))
    {
    if(IsPlayerInAnyVehicle(playerid))
    SetVehicleVelocity(GetPlayerVehicleID(playerid), 0.0, 0.0, 0.2);
    return 1;
    }
    }

    Du versuchst dem Compiler einen String (Sname[MAX_PLAYER_NAME), als Integer zu verkaufen (oder als sonstwas), indem du ihm einen Parameter gibst, den er garnicht kennt.
    Versuchs mal so:

    ...
    new Sname[24];//Zur verdeutlichung, dass es sich hier um einen ganz normalen String handelt, setzen wir einfach mal eine Zahl ein =)
    GetPlayerName(clickedplayerid,Sname,sizeof(Sname));//Name auslesen
    format(bla, sizeof(bla), "====================================");//Zwischenmessage
    format(ClickText, sizeof(ClickText), "Name: %s", Sname);//Es ist nur ein ganz normaler String, behandele ihn auch wie einen solchen.. (String formattieren)
    ...

    Bitte???
    OnPlayerUpdate wird jedesmal aufgerufen, wenn ein Paketaustausch von Spieler zu Server (or <->) passiert.
    Du müsstest also auch jedesmal abchecken, ob ein Spieler in einem Fahrzeug sitzt, wenn ja, dann noch ob das Fahrzeug zu wenig Health hat.
    Ein Timer wäre hier wohl deutlich angebrachter..

    Du musst den String auch an der passenden Stelle definieren.
    Global oder halt Lokal.
    Global wäre in diesem Fall funktionsübergreifend, lokal nur auf diese eine Funktion bezogen.


    (Ich tippe hier stark auf lokal).
    Daher solltest du den String direkt in der Funktion definieren:

    new string[256];
    format(string,.........);
    ...

    "string" ist nicht definiert...
    Folglich am besten vorher einfach mal neu definieren: new str[132];//Länge kannst du ja variieren


    Btw: sehr informativ D4rkZer0 ^^

    Dennis hat es in seinem Beitrag korrigiert ;)
    Schaut mal in meinem letzten geposteten Quelltext, da sind noch beide Coords gleich ;)

    Es sind zweimal die gleichen Coords.
    Setz einfach mal die Höhe (z-coord) ein stück runter.


    CroXx16: Wenn 2 mal die gleichen Koordinaten, dann verschiebt das Ding ja seeehr weit ;) (nicht.)

    Natürlich geht es nicht RUNTER!!!!

    Zitat


    Setz halt noch deine Coords ein (sind ja zweimal die gleichen) und fertig!.

    Ich verstehe dein Problem nicht...
    Du willst das Wetter ändern? Dann tu das doch einfach: http://wiki.sa-mp.com/wiki/SetWeather


    Wenn du wissen möchtest, welche WetterID aktuell ist, dann musst du das Wetter am Anfang (ServerStart/Gamemode-Start) initialisieren und die ID in einer Variable speichern.


    Anbei: Warum erstellst du oben strings und einen Integer, wenn du die nur in dem "else"-Fall benötigst??


    Baue es doch bitte erstmal so um:

    ...
    else
    {
    new Weather, aname[MAX_PLAYER_NAME];
    new string[128], string2[128];
    if(sscanf(params,"ud"))
    GetPlayerName(playerid,aname,sizeof(aname));
    format(string,sizeof(string),"Du hast das Wetter geändert");
    SendClientMessage(playerid,Rot,string);
    format(string2,sizeof(string2),"Admin %s hat das Wetter geändert",aname);
    SendClientMessageToAll(HellBlau,string2);
    SetWeather(Weather);
    return 1;
    }
    ...

    Ich würde dir vorschlagen, erstmal mit einem einfachen DM-Mode anzufangen.
    Schau dir dazu am besten mal das "lvdm" script, welches standartmäßig im Gamemodes Ordner lieg, an und versuche den Code nachzuvollziehen.
    Du wirst schnell merken, wie man ein paar Autos hinzufügen kann, wie man ein paar Befehle einfügen kann etc...


    Lese dir ein paar Tutorials durch und sieh dich mal im Sa-mp Wikipedia um, dort findest du massig Funktionen und Hilfen.
    (Alles schön soft, peu à peu...)


    Im Nu wird das nicht zu schaffen sein, aber in der Ruhe liegt die Kraft.

    GivePlayerMoney ist doch eigentlich ne super sache.
    Ich hab die Funktion etwas abgeändert und speichere dazu das noch in einer Variable mit.
    Sollte jemand nun versuchen zu hacken oder cheaten, so kommt das gleich raus ;)

    Tom:
    Es geht nicht um Spannungsspitzen. Es geht um die allgemeine Wandlung von Wechsel- zu Gleichstrom.
    Hinzu kommen noch Impedanz-Schwächen "billiger" Netzteile oder Trafo-Brummen.
    Vielen Problemen geht man daher oft schon mit dem Kauf eines guten Netzteiles aus dem Weg.
    (Strom ist nicht gleich Strom !)