Fallschirmsprunganimation

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Ist es möglich,den Spieler in die Fallschirmstandartsprungnaimation zu bringen, ohne dass dieser einen fallschirm besitzt ?


    Habe es bereits mit
    ApplyAnimation(playerid,"PARACHUTE","FALL_Skydive_Accel",4.0,1,0,0,0,0);

    versucht, aber der Spieler fällt normal wie ohne Fallschirm....


    Die Sache ist,dass der Spieler
    1. Keinen Fallschirm haben darf, da es sonst nicht gut aussieht
    2. Die Person immer nur kleine Stücke fällt (5 Meter),dann wird er gestoppt,dann wieder 5 Meter .....

  • Ok,alsoooo.


    Spieler sitzt in einem Heli (Beifahrer).
    Benutzt /leiter.
    Eine Leiter spawnt an den koordinaten und der Spieler kann runterrutschen bzw. wenn ich SetPlayerPos in kleinen Schritten mache siehts nit so affig aus, da man sich denken könnte,dass die Person die leiter runterklettert ;)


    Soll heißen, die leiter spawnt knapp unter ihm (ID, Koordinaten habe ich,nur leider CreateObject funzt nit =( )


    Idee: Vielleicht die Funktion in den GM , nicht ins FS einbauen ?!

  • Da müsstest du evtl. einen Timer benutzen, der dir die Leiter am Helicopter Z-Coordinate ~ -5 Zähler fixiert, das mit der an der Leiter runterrutschen wäre auch kein Ding, dafür gäbe es zick Animationen, aber sowasfänd ich persönlich unnötig

    [align=center]
    Mta Script Editor - Work in Progress

  • Zitat

    Da müsstest du evtl. einen Timer benutzen, der dir die Leiter am Helicopter Z-Coordinate ~ -5 Zähler fixiert,

    habe ich längst....


    Und genau das was du meinst, versuche ich ja die ganze zeit zu hinterfragen.


    Nur kann ich weder eine leiter spawnen noch die Animation abspielen, da die Person ja fällt, und (s.o.) dann ist das ja unmöglich :(


    Aber schön dass jemand verstandne hat was ich meine :P


  • Wieso kannst du keine Leiter spawnen ?
    Du frezzt ihn einfach an das Teil und bewegst den Spieler alle 2 Sekunden eine Z-Coordinate nach unten.

    [align=center]
    Mta Script Editor - Work in Progress

  • Zitat

    Du frezzt ihn einfach an das Teil

    Freezen is kein Problem, aber iwe ichs auch Deichsel,die leiter spawnt nicht.
    Ich zeig euch ma die Func (im Gamemiode drinne gehts auch nit):
    new Float:X;
    new Float:Y;
    new Float:Z;
    GetPlayerPos(playerid, X, Y, Z);
    ladder = CreateObject(1437, X, Y, Z, 0, 0, 0);

  • Wenn du zb. Godfather benutzt kannst du es so benutzen




    enum pInfo
    {
    pbarel
    };
    new PlayerInfo[MAX_PLAYERS][pInfo];
    //===================================================================================
    OnPlayerKeyStateChange //Hier für das Aussteigen
    oder
    OnPlayerCommandText //Hier beim Befehle ausführen zb. /Leiter
    //===================================================================================
    PlayerInfo[playerid][pbarel] = CreatePlayerObject(Objectid, X, Y, Z, 0.0000, 0.0000, 0.0000);


    MovePlayerObject(PlayerInfo[playerid][pbarel],X, Y, Z-1, 8); //Statt dem -1 die Einheit die du denkst, die hier ausreicht
    //===================================================================================
    OnPlayerDisconnect //Wenn der Spieler den Server verlässt sollte das auch zerstört werden


    DestroyPlayerObject(x); //Statt dem X die Definition für das Objekt in dem Fall - PlayerInfo[playerid][pbarel] -

    [align=center]
    Mta Script Editor - Work in Progress

  • MovePlayerObject(PlayerInfo[playerid][pbarel],X, Y, Z-1, 8);

    Wofür bewegen?


    Ich benutze das in einem Freeroamscript, da es dort weniger Variablen etc. gibt und die Kompilierungszeit erheblich geringer ist....


    Kannst du das mal umschreiben in dem Format, in dem es bei mir nicht geklappt hat (s.o.) ?

  • Ist doch einfach, du holst dir die Coords vom Helicopter, denn du natürlich definieren solltest, kannst es aber auch so
    einrichten, das es das letzte verlassen Fahrzeug betrifft das die Helicopter Id zb. 541 hat, und dann übergibst du die Coords an
    die MovePlayerObject Variable.



    new Float:HeliX, Float:HeliY, Float:HeliZ;
    GetVehiclePos(Helicopter, HeliX, HeliY, HeliZ);
    MovePlayerObject(PlayerInfo[playerid][pbarel],HeliX, HeliY, HeliZ-1, 8);

    [align=center]
    Mta Script Editor - Work in Progress

  • Folgendes im GM Init:
    ladder = CreateObject(2679,0,0,0,0,0,0);


    Dann als Func:
    public OnPlayerCommandText(playerid, cmdtext[])
    {
    new cmd[256];
    new idx;
    new vehicleid;
    cmd = strtok(cmdtext, idx);


    if(strcmp(cmd, "/Slide", true) == 0)
    {
    if(IsPlayerInAnyVehicle(playerid) && Sliding[playerid] == 0 && GetPlayerSkin(playerid) == 285)
    {
    Sliding[playerid] = 1;
    TogglePlayerControllable(playerid,false);
    RemovePlayerFromVehicle(playerid);
    TogglePlayerControllable(playerid,true);
    SetTimerEx("Slide", 500, 0, "i", playerid);
    }
    return 1;


    Dann als neue Func:
    public Slide(playerid)
    {
    if(Sliding[playerid] == 1)
    {
    new Float:X;
    new Float:Y;
    new Float:Z;
    GetPlayerPos(playerid, X, Y, Z);
    MovePlayerObject(ladder,X, Y, Z-1, 8);
    SetPlayerPos(playerid, X, Y, Z - 3.00);
    SetTimerEx("Slide", 500, 0, "i", playerid);
    }
    return 1;
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen