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

    Savezone Script Fehler

      • Mapping & Modding
    • Adrian Lichtenberg
    • 25. März 2019 um 22:26
    • Erledigt
    • Adrian Lichtenberg
      Anfänger
      Reaktionen
      1
      Trophäen
      8
      Beiträge
      51
      • 25. März 2019 um 22:26
      • #1

      Moin ich habe mir ein Savezone script mal zusammen gesucht und komme nun nicht mehr weiter könnte mir jemand helfen ?

      habe das Script im Editor getestet und weiss nicht wie ich weiter kommen soll

      Dateien

      savezone.sqf 2,5 kB – 138 Downloads arma3server_x64_2019-03-25_21-57-39.rpt 62,73 kB – 137 Downloads
    • DragonGER
      Gast
      • 26. März 2019 um 19:17
      • #2

      ich habe deinen Code jetzt mal nicht auf Funktion getestet, aber der Fehler liegt im ganz unten in "sleep 3". Du hast das ganze in den switch case Block gepackt und das kann natürlich nicht funktionieren, weil ein case erwartet wird. Sollte das in eines der while schleifen?

      Generell würde ich dich bitten mehr auf deine Formatierung zu achten, dann fallen solche Fehler bei Verschachtelungen schneller auf.

      Formatiert... :

      Code
      private ["_eh1","_inArea","_zone1","_zone2","_zone3","_zone4","_zone5","_dis","_dis2","_dis3","_dis4","_dis5"];
      _zone1 = getMarkerPos "safezone_1"; // MARKERS FOR SAFEZONE
      _zone2 = getMarkerPos "safezone_2";
      _zone3 = getMarkerPos "safezone_3";
      _zone4 = getMarkerPos "safezone_4";
      _zone5 = getMarkerPos "safezone_5";
      _dis = 420; // Distanz Kavala Safezone
      _dis2 = 300; //Distanz Athira Safezone
      _dis3 = 200; //Distanz Sofia Safezone
      _dis4 = 175; //Rebellejn Nord
      _dis5 = 200; //Rebellen Süd
      _inArea = false;
      switch (playerSide) do {
          case west: {
              while {true} do {
                  if (alive player) then {
                      if (((_zone1 distance player < _dis) || 
                          (_zone2 distance player < _dis2) ||
                          (_zone3 distance player < _dis3)|| 
                          (_zone4 distance player < _dis4)|| 
                          (_zone5 distance player < _dis5)) && 
                          (!_inArea)) then {
                              _inArea = true;
                              hint parseText "<t color='#FF0000'><t size='2'><t align='center'>Warnung<br/><br/><t align='center'>
                            <t size='1'><t color='#ffffff'>Du betrittst eine Safezone. Holster dein Waffe. Du kannst niemanden ausrauben oder töten!";
                              player allowDamage false;
                      };
                      if (((_zone1 distance player > _dis) && 
                          (_zone2 distance player > _dis2) && 
                          (_zone3 distance player > _dis3) &&
                          (_zone4 distance player > _dis4) && 
                          (_zone5 distance player > _dis5)) && 
                          (_inArea)) then {
                              _inArea = false;
                              hint parseText "<t color='#FF0000'><t size='2'><t align='center'>Warnung<br/><br/><t align='center'><t size='1'><t color='#ffffff'>Du verlässt die Safezone.";
                              player allowDamage true;
                      };
      
                  };
              };
          };
      
          case civilian: {
              while {true} do {
                  if (alive player) then {
                      if (((_zone1 distance player < _dis) || 
                          (_zone2 distance player < _dis2) || 
                          (_zone3 distance player < _dis3)|| 
                          (_zone4 distance player < _dis4)|| 
                          (_zone5 distance player < _dis5)) && 
                          (!_inArea)) then {
                              _inArea = true;
                              hint parseText "<t color='#FF0000'><t size='2'><t align='center'>Warnung<br/><br/><t align='center'><t size='1'><t color='#ffffff'>Du betrittst eine Safezone. Holster deine Waffe. Du kannst niemanden ausrauben oder töten!";
                              player allowDamage false;
                      };
                      if (((_zone1 distance player > _dis) && 
                          (_zone2 distance player > _dis2) && 
                          (_zone3 distance player > _dis3) && 
                          (_zone4 distance player > _dis4) && 
                          (_zone5 distance player > _dis5)) && 
                          (_inArea)) then {
                              _inArea = false;
                              hint parseText "<t color='#FF0000'><t size='2'><t align='center'>Warnung<br/><br/><t align='center'><t size='1'><t color='#ffffff'>Du verlässt die Safezone.";
                              player allowDamage true;
                      };
      
                  };
              };
          };
          sleep 3; // <-------- mööööööööb 
      };
      Alles anzeigen
    • DragonGER
      Gast
      • 26. März 2019 um 19:48
      • #3

      Ich habe dir mal versucht ein wenig anders an die Sache heran zu gehen. Vielleicht kannst du ja was damit anfangen. Wenn du fragen hast, kannst du sie gerne stellen.

      Code
      /*
       * Author: Dragon
       * Safezone protection script.
       *
       * Arguments:
       * 0: List of mapmarkers used as the savezone <ARRAY>
       * 1: timeout in seconds between each check <INT>
       *
       * Return Value:
       *  none
       *
       * Example:
       * ["safezone_1","safezone_2", 1] call fn_savezone;
       *
       * Public: NO
       */
      params [
          "_saveZones", [], [],
          "_timeout", 1, [0]
      ]; //Array of savezone markers and a timeout after each check
      
      if(!hasInterface) exitWith {}; //make sure only runs on player local pc
      
      private _ehId = 0;
      
      while { true } do {
          _inSaveZone = _saveZones select { getPos player inArea _x }; //check if the player is in any of the savezones markers
          if (! _inSaveZone isEqualTo []) then { //if there is a saveZone that the player is inside
              hint parseText "<t color='#FF0000'><t size='2'><t align='center'>Warnung<br/><br/><t align='center'><t size='1'><t color='#ffffff'>Du betrittst eine Safezone. Holster dein Waffe. Du kannst niemanden ausrauben oder töten!";
              player allowDamage false;
              _ehId = player addEventHandler ["fired", {
                  params ["_unit", "_weapon", "_muzzle", "_mode", "_ammo", "_magazine", "_projectile", "_gunner"]; //disable shooting by instantly removing the fired bullet
                  if (!isNull "_projectile") then {
                      deleteVehicle _projectile;
                  };
              }];
      
              waitUntil { uiSleep _timeout; (_inSaveZone select { getPos player inArea _x}) isEqualTo [] };  //wait until the player left the current safe zone
              hint parseText "<t color='#FF0000'><t size='2'><t align='center'>Warnung<br/><br/><t align='center'><t size='1'><t color='#ffffff'>Du verlässt die Safezone.";
              player allowDamage true;
              player removeEventHandler ["fired", _ehId]; //remove the anti bullet system
          };
          uiSleep _timeout;
      };
      Alles anzeigen

      Einmal editiert, zuletzt von DragonGER (26. März 2019 um 23:33)

    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™