1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Downloads
  4. Galerie
    1. Alben
  5. Toolbox
    1. Passwort Generator
    2. Portchecker
  6. Mitglieder
    1. Mitgliedersuche
    2. Benutzer online
    3. Trophäen
    4. Team
Fr: 23 Mai 2025
  • Anmelden oder registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Forum
  • Dateien
  • Seiten
  • Bilder
  • Erweiterte Suche

Schön, dass du den Weg zu NodeZone.net gefunden hast! Aktuell bist du nicht angemeldet und kannst deshalb nur eingeschränkt auf unsere Community zugreifen. Um alle Funktionen freizuschalten, spannende Inhalte zu entdecken und dich aktiv einzubringen, registriere dich jetzt kostenlos oder melde dich mit deinem Account an.

Anmelden oder registrieren
    1. Nodezone.net Community
    2. Forum
    3. Gameserver & Hosting
    4. ArmA Series - ArmA 3 / Reforger
    5. Hilfeforum

    Verwundungssystem

    • shriver
    • 18. April 2017 um 17:46
    • Geschlossen
    • Erledigt
    • shriver
      Schüler
      Reaktionen
      27
      Trophäen
      9
      Beiträge
      103
      • 18. April 2017 um 17:46
      • #1

      Moin,

      ich habe versucht ein kleines Script zu schreiben, bei welchem man unter 30 % ins Koma fallen kann... Nur leider wird es nicht geladen ? Aber auf jeden fall wird es nicht aktiviert bei unter 30 %. vielleicht kann jemand mal drüber schauen...


      Spoiler anzeigen

      _unit = _this select 0;

      while {damage player >= 0.3} do {

      if ( damage player >= 0.3) then {

      (findDisplay 410) displaySetEventHandler ["KeyDown","if((_this select 1) == 1) then {true}"]; //Block the ESC menu

      createDialog "life_test";

      _rip = true;

      player switchCamera "INTERNAL";

      player switchMove "DeadState";

      [] execVM "test.sqf";

      []spawn{

      while {true} do {

      waitUntil{

      sleep 0.1;

      cameraOn == player && cameraView == "External"

      };

      player switchCamera "Internal";

      };

      };

      while {damage player < 0.3} {

      player switchMove "";

      closeDialog 0;


      };

      };

      };

    • sirbenson
      Anfänger
      Reaktionen
      15
      Trophäen
      9
      Beiträge
      61
      • 18. April 2017 um 17:52
      • #2

      hast du ace?

    • shriver
      Schüler
      Reaktionen
      27
      Trophäen
      9
      Beiträge
      103
      • 18. April 2017 um 18:01
      • #3

      Nein... Kein Modserver

    • Rom
      Kenner
      Reaktionen
      156
      Beiträge
      533
      • 18. April 2017 um 18:15
      • #4

      So, ich habe mal versucht den Code nachzuvollziehen, und habe ich denke ich auch so weit geschafft. Habe Stellen kommentiert, wenn mir was komisch vor kam.

      Code
      _unit = _this select 0; // Wo wird die verwendet?
      while {damage player >= 0.3} do { // Theoretisch läuft die Schleife nur, wenn Spieler 30 % Schaden erlitten hat. Hier bei Aufruf also nicht, wenn Spieler 100% Leben hat. Unter 70% wären beim Rechnen 1-(damage player) = 0.7= 30 % Leben noch
          if (damage player >= 0.3) then { // dito
              (findDisplay 410) displaySetEventHandler ["KeyDown","if((_this select 1) == 1) then {true}"]; //Block the ESC menu, würde ich vorsichtshalber austauschen mit createDialog (Reihenfolge)
              createDialog "life_test";
              _rip = true; // Wo wird die verwendet?
              player switchCamera "INTERNAL";
              player switchMove "DeadState";
              [] execVM "test.sqf";
              []spawn{
                  while {true} do { // Dank dieser Schleife kommt der Spieler nicht mehr aus seiner K.O.-Phase raus
                      waitUntil {
                          sleep 0.1;
                          cameraOn == player && cameraView == "External"
                      };
                      player switchCamera "Internal";
                  };
              };
              while {damage player < 0.3} { // do fehlt und sobald das 1. Mal Schaden kleiner 30 %, dann kann kein Dialog mehr geöffnet werden
                  player switchMove "";
                  closeDialog 0;
              };
          };
      };
      Alles anzeigen

      Nicht böse sein, ist nur gut gemeint.

      Falls ich etwas falsch wahrgenommen habe, korrigiert mich bitte.

      Wenn ich etwas missverstanden habe, hoppala

    • shriver
      Schüler
      Reaktionen
      27
      Trophäen
      9
      Beiträge
      103
      • 18. April 2017 um 18:23
      • #5

      OUUHH Okay... Da habe ich ein "paar" Fehler gemacht :D

      Ich fange da lieber nochmal von vorne an. Also erst ne while schleife machen wo er fragt ob die Person am leben ist ? danach nochmal ne if abfrage ob der Spieler unter 30 % ist ?

    • Rom
      Kenner
      Reaktionen
      156
      Beiträge
      533
      • 18. April 2017 um 18:25
      • #6

      Dein Ansatz war vom Grundgedanke nicht ganz falsch, man muss aber aus dem BI-Wiki herauslesen, welcher Befehl wie arbeitet und was er zurückgeben kann.

      Wenn ich etwas missverstanden habe, hoppala

    • shriver
      Schüler
      Reaktionen
      27
      Trophäen
      9
      Beiträge
      103
      • 18. April 2017 um 18:28
      • #7

      Mhh Okay

      Eine Frage habe ich da noch : Wie bekomme ich es hin das er die ganze Zeit in die First Person wechselt ? Ohne die While schleife ?

    • Rom
      Kenner
      Reaktionen
      156
      Beiträge
      533
      • 18. April 2017 um 19:17
      • #8

      Hier, wie besprochen gerade im TS eine mögliche Lösung.

      Sollte aber noch etwas verfeinert werden, Spieleraum gibt es ja genug.

      Bitte per spawn aufrufen bzw. im scheduled environment

      Code
      while {true} do {
          waitUntil {
              sleep 0.1;
              (damage player >= 0.7)
          };
          if (vehicle player != player) then {
              player allowDamage false;
              moveOut player;
              player allowDamage true;
          };
          createDialog "life_test";
          (findDisplay 410) displaySetEventHandler ["KeyDown","if((_this select 1) == 1) then {true}"];
          player switchCamera "INTERNAL";
          player switchMove "DeadState";
          while {(damage player >= 0.7)} do {
              waitUntil {
                  sleep 0.1;
                  cameraOn == player && cameraView != "Internal"
              };
              player switchCamera "Internal";
          };
          closeDialog 0;
          player switchMove "";
      };
      Alles anzeigen

      Grüße

      Wenn ich etwas missverstanden habe, hoppala

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von NodeZone.net? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Registrieren

    Benutzer online in diesem Thema

    • 1 Besucher

    Wichtige Links & Informationen

    Server & Hosting-Ressourcen

      Server Administration & Hosting Basics

      Windows Server Support & Guides

      Linux Server Configuration & Help

      Setting up TeamSpeak 3 & VoIP Servers

      Domains & Web Hosting for Beginners & Professionals

      Cloud Hosting, Docker & Kubernetes Tutorials

    Gameserver & Modding-Ressourcen

      ArmA 3 Tutorials & Script Collection

      Renting & Operating Gameservers

      DayZ Server Management & Help

      FiveM (GTA V) Server & Script Development

      Rust Server Modding & Administration

      Setting up & Optimizing ARK Survival Servers

    NodeZone.net – Deine Community für Gameserver, Server-Hosting & Modding

      NodeZone.net ist dein Forum für Gameserver-Hosting, Rootserver, vServer, Webhosting und Modding. Seit 2015 bietet unsere Community eine zentrale Anlaufstelle für Server-Admins, Gamer und Technikbegeisterte, die sich über Server-Management, Hosting-Lösungen und Spielemodding austauschen möchten.


      Ob Anleitungen für eigene Gameserver, Hilfe bei Root- und vServer-Konfigurationen oder Tipps zu Modding & Scripting – bei uns findest du fundiertes Wissen und praxisnahe Tutorials. Mit einer stetig wachsenden Community findest du hier Antworten auf deine Fragen, Projektpartner und Gleichgesinnte für deine Gaming- und Serverprojekte. Schließe dich NodeZone.net an und werde Teil einer aktiven Community rund um Server-Hosting, Gameserver-Management und Modding-Ressourcen.

    Wer jetzt nicht teilt ist selber Schuld:
    1. Nutzungsbestimmungen
    2. Datenschutzerklärung
    3. Impressum
    4. Urheberrechts- oder Lizenzverstoß melden
  • Trimax Design coded & layout by Gino Zantarelli 2023-2025©
    Community-Software: WoltLab Suite™