Unbegrenzt "Luft/Sauerstoff" unter Wasser?

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
  • Hey Leute,


    wie auch schon im Singleplayer möglich, bin ich auf der Suche nach einer Funktion (oder einer generellen Lösung),
    um einen Spieler unbegrenzt lang tauchen zu lassen, ohne dass er dabei HP verliert!


    Ich habe natürlich schonmal herum geguckt und bin auch teils fündig geworden, jedoch möchte ich
    ungern Timer oder via OnPlayerUpdate permanent üerprüfen ob der Spieler die "Schwimm-Animation" ausübt.


    Gibt es vielleicht eine andere Lösung?


    Gruß

    Meine Werke

  • dies ist nur möglich, wenn du diesen Spieler direkt unter Wasser Spawnst.

    das möchte ich aber ungern tun.
    Der Spieler soll mit einer "Sauerstoffmaske" nach Eingabe des Befehls unbegrenzt unter Wasser atmen können.
    Sollte ich das dann nicht anders lösen als abzufragen ob der Spieler die "Schwimmanimation" macht, sollte ich dies
    dann unter OnPlayerUpdate oder lieber mit einem Timer lösen?


    Ich denke mal Timer wären da besser...

    Meine Werke

  • Wenn du ihm erst unbegrenzt luft nach dem Befehl geben willst, musst du ja nicht abfragen ob er die schwimm Animation macht sondern startest beim befehl dann halt den Timer.
    Aber was willst du dann machen? ihm immer wieder Leben geben? ist auch etwas doof.


    Mit freundlichen Grüßen



    Die heutigen Noobs, sind die Profis von morgen! :thumbup:


    Danke an Jeffry für seine ständige Hilfsbereitschaft und freundliche Art. 8)

  • Ich möchte, dass der Spieler grundsätzlich keine Leben durch das Tauchen verliert.
    Die Frage ist auch, wie ich das anstelle, denn der Spieler soll ja trotzdem Schaden durch z.B. Schüsse nehmen!


    Also die HP jederzeit zu "füllen" oder gar auf "Unbegrenzt (0x122E0) zu setzen, wäre blöd :/

    Meine Werke

  • Das kannst du leider mit SAMP an sich nicht beeinflussen.
    Du könntest OnPlayerUpdate() soweit ich weiß mit false returnen lassen, aber dann würde, soweit ich das in Erinnerung habe, jede Aktion seinerseits nicht an den Server gesendet.


    Bliebe dir nach meinem Wissensstand eigentlich nur ein zusätzliches Programm, das in den Speicher eingreift.

  • Gibt eine Möglichkeit, die ist eigentlich super easy.


    Du gibst den Spieler Unlimited HP (Speicherst aber die HP ab die der Spieler bei eingabe des CMD´s hat), sobald der Spieler angeschossen wird, tust du bei "OnPlayerTakeDamage" den Gespeicherten HP wert einfach abziehen und sobald die HP <= 0 ist einfach den Spieler töten lassen.

  • Wieso? Erstell doch per textdraw einfach einen schwarzen Balken über der normalen hp Anzeige und dann einen roten drüber, dann jenachdem wenn er hp abgezogen bekommt, ziehst du es beim roten textdraw ab, merkt keiner und es geht



    Die heutigen Noobs, sind die Profis von morgen! :thumbup:


    Danke an Jeffry für seine ständige Hilfsbereitschaft und freundliche Art. 8)

  • Einfach die HP auf eine Variable setzen und nicht voll. Wenn er dann angeschossen wird zieht man dieser Variable den Schaden ab. Somit kann er Schussschaden erleidun aber stirbt nicht wegen der Luft. Sollte die Variable zu klein sein (Sprich 1-2 ka) lässt du den Spieler einfach einen größeren Schussschaden erleiden damit er am Schuss stirbt und nicht an Erstickung.

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