Zeppelin-Skript

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
  • Heute kommt mein letztes Release für die nächste Zeit,
    nämlich mein Zeppelin-Skript.


    Mit diesem Skript ist es möglich ein Zeppelin selbst zu fliegen, welcher aus Objekten besteht. Das Problem hier ist das es nicht sonderlich kompatibel mit streamern ist aufgrund der erstellung von
    CreateDynamicObject , jedoch könnte man das streamer plugin selbst erweitern mit der Funktion AttachDynamicObjectToObject , die Memory Addresse dazu findet man in diesem Plugin
    http://forum.sa-mp.com/showthread.php?t=513499.
    Das Streamer Plugin war ursprünglich mal darauf ausgelegt. Das Skript möchte ich nicht auf meinem PC vergammeln lassen daher wird es releast, wie man vom Aufbau erkennen kann ist das ganze
    nicht ganz ausgebaut, wie zum beispiel der Lauftext.


    Die Map ist nicht von mir sondern von DIESEL-90 aus dem Englischen-Forum, ich hab lediglich paar Elemente entfernt.


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.


    Benötigt:
    MapAndreas
    http://forum.sa-mp.com/showthread.php?t=273263


    Befehle:
    /use //Compitansicht
    /go //Flugfähig mit der Maus
    /start //Rotoren bewegen sich bewegung via der Maus nach oben oder unten
    /mycommand //aktiviert den Lauftext
    /leave //Compitansicht verlassen Zeppelin stopt
    /exitzep // man wird aus dem zeppelin rausgeschmissen



    Pastebin:
    http://pastebin.com/RSCsB16q

  • Beitrag von Kasakow ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Ich finde das Filterscript cool, habe das ja vor ein paar Monaten mal mit dir verwendet.
    Kann man übrigens auch super ein Uboot Filterscript draus machen :p
    10/10


    Jo ^^, nur ganz ins Wasser kann man auch nicht abtauchen mit dem Zeppelin.
    Um ein Uboot Skript darau szu machen bräuchte man ein neue .hmap mit den daten vom Meeresboden :D

  • enum ZEP(<<= 1){
    pUSE_ZEPA=1,
    pUSE_ZEPH,
    };
    Kann nicht erkennen, wieso du Bitshiften benutzt. Weder bei /start,/go,/stop,/use noch /leave setzt du die beiden Stati parallel. Sieht man ja auch nicht zuletzt an Zeile 369.
    Das ist nur unnötig kompliziert für Leute zu lesen,die sich damit nicht auskennen. :hm:


    [pwn=297] Attach
    E_STREAMER_ATTACHED_OBJECT
    return 1;
    [/pwn]
    Da fehlt doch etwas oder nicht ?


    [pwn=250]if(strcmp("/start", cmdtext, true, 10) == 0)[/pwn]
    Die 10 solltest da mal weg machen oder durch eine 6 ersetzen.


    Was passiert wenn mehr als 1 Person gleichzeitig einen Zepelin steuern möchten ? Kann ich Jemand anderen behindern beim steuern ?


    Würde auch einige Anweisungen ein Schleifen packen (zB 234 bis 241), ist aber geschmackssache.


    Spoiler anzeigen
    Aber hauptsache 10/10 Punkten vergeben ohne es objektiv zu bewerten oder zu testen :schlaf: 

  • Würde auch einige Anweisungen ein Schleifen packen (zB 234 bis 241), ist aber geschmackssache.


    Wie bereits geschrieben ist das ganze System nicht richtig aufgebaut.

    Zitat

    Das Skript möchte ich nicht auf meinem PC vergammeln lassen daher wird
    es releast, wie man vom Aufbau erkennen kann ist das ganze


    nicht ganz ausgebaut, wie zum beispiel der Lauftext.

    Zum ersten Punkt, das liegt daran das ich mehrere Werte brauchte um genau zu sein 4 Stück.
    ZEPA ist für den horizontale Antrieb ZEPH für den vertikalen Hantrieb (Heckantrieb).


    Den Sinn hinter Punkt 2 versteh ich irgendwie nicht da dies die Plakate sind und diese nicht erweitert werden.


    Ich bezweifel das dieses Skript von irgendeiner Person auf seinem Server genutzt wird und wenn wird diese Person wahrscheinlich nicht instande sein
    das Skript akkurat zum laufen zu bringen.


    Weil um das ganze massentauglich zu machen müsste man das streamer Plugin wie oben beschrieben etwas abändern und dazu sind vllt, wenn überhaupt
    90% , welche noch Aktiv sind in der Lage, obwohl man sich garnicht mit dem Reversen von Memory-adressen auskennen müsste.

  • Nein wie bereits oben geschrieben habe ich das nicht gemappt.
    Aber was du fliegst ist das gemappte Luftschiff.


    Der Flug mit dem Helikopter zeigt die äußerlichen merkmale die du bein fliegen nicht siehst.
    Ja mit dem Zeppelin kannst du mit deiner Maus steuern.
    Ich hab das Video mit einem Kumpel gedreht, welcher das ganze kurz gefolgen ist.

  • Zitat

    Zum ersten Punkt, das liegt daran das ich mehrere Werte brauchte um genau zu sein 4 Stück.
    ZEPA ist für den horizontale Antrieb ZEPH für den vertikalen Hantrieb (Heckantrieb).


    Du benutzt aber nirgendwo alle 4. Du benutzt nur 3.
    0b00, 0b01 und 0b10. Niemals aber 0b11 ( binär ausgedrückt ), um gleichzeitig horizontal und vertikal zu nutzen.
    Denn würdest du es parallel nutzen wollen (0b11) , würde bei switch noch fehlen:
    case: (pUSE_ZEPH | pUSE_ZEPV)


    Zitat

    Den Sinn hinter Punkt 2 versteh ich irgendwie nicht da dies die Plakate sind und diese nicht erweitert werden.



    Was macht der markierte Bereich ? Das ist von pastebin kopiert. Entweder da fehlt etwas oder ich verstehe nicht,was das bewirkt. Ansonsten ist auch so nicht ganz klar, was /mycommand bewirkt.


    Punkt 3 und 4 hast wohl unter den Tisch fallen lassen :/.

  • Die Funktionsweise ist so gedacht, bei /start starten die Motoren an der Seite , in diesem Modus kannst du das Luftschiff hoch und runter bewegen
    während es sich auf der stelle befindet mit dem Befehl /go wechselst du in den Flugmodus und kannst die Flugrichtung über deine Maus bestimmen,
    das Objekt bewegt sich dabei kontinuierlich weiter.


    Daher lass ich die zwei Variablen nicht nebenher laufen. Mit einer Variable wäre das in der Tat einfach gelöst das stimmt , jedoch wollte ich das ganze damals noch erweitern.


    Den Pastebinlink habe ich jetzt aktualisiert, wie auch die zu downloadende Datei.
    Als du mich das erste mal darauf aufmerksam gemacht hattest, hatte ich es irgendwie hier noch vergessen den Pastebinlink auszutauschen.


    /mycommand ruft den Timer auf für den Lauftext sieht man auch am Namen der Funktion , welche aufgerufen wird.


    Zu Punkt 3: Das ist mir recht egal ob strcmp die Zeichenkette bis zu 10 Zeichen überprüft oder 6.


    Zu Punkt 4: Die Abfrage könnte ja jeder noch hinzufügen.



    Ich bedanke mich nochmals für die objektive Bewertung ^^.


    Der ursprüngliche Gedanke zum Release, war der das die Leute bestimmt gewisse Elemente vom Code gebrauchen könnten zum größten Teil die Berechnungen
    und wie bereits geschrieben ich mach sowieso nix mehr in die Richtung und möchte das Skript nicht sinnlos auf meinem PC bunkern bis es irgendwann
    dem Papierkorb zum Opfer wird.