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
Sa: 17 Mai 2025
  • Anmelden oder registrieren
  • Suche
Alles
  • Alles
  • 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. Mitglieder
    3. Backer133

    Beiträge von Backer133

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 8. Oktober 2015 um 21:47

      sniperrifle shit ^^

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 8. Oktober 2015 um 21:42

      Meinte ich sorry ^^

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 8. Oktober 2015 um 21:38

      Craft System von PapaBear? oder einfach nur Processen?

    • [DIALOG TUT] Basics #1

      • Backer133
      • 8. Oktober 2015 um 02:49

      Hallo Leute,

      heute möchte ich euch den ersten Teil der Dialog Basics ein bisschen näher bringen. Das Dialog Tutorial wird sich über mehrere Reihen ziehen.
      Also fangen wir mal an.

      Also was ist den nun ein Dialog, was braucht man und was gibt es alle?

      Für einen Dialog benötigt man zuerst mal eine config datei indem die Klassen der Dialoge angeführt werden (Wie ist der Stil dieser Box, Hintergrund, was macht was). Kann man sich so vorstellen wie eine VehicleCfg.
      Hierfür wird in Altis Life die sogenannte config.cpp (eher für Mods) oder die description.ext (eher für Missionen) genutzt. Der Grund liegt hierbei weil die description.ext eine überbrückte Version der config.cpp ist d.h. man kann weniger definieren. (wie z.B keine CfgVehicle klassen).

      Deswegen werden wir uns eher auf die description.ext fokussieren.


      Es gibt 2 Wege wie man eine GUI anzeigen lassen kann.

      Nummero 1 :

      cutRsC/titleRsc --> Hierbei wird das Bild sozusagen als Display angezeigt - Bedeutet keine Kontrolle über den Maus Cursor kennt ihr sicher vom "Black OUT", "BLACK FADED", "WHITE OUT","PLAIN", etc.

      Nummero 2:

      createDialog --> Hierbei wird das Bild als Dialog angezeigt - Bedeutet Kontrolle über Maus Cursor (Normaler Dialog wie z.B das Z Inventar etc.)


      In der description.ext wird ein Dialog wie hier zum Beispiel eine Bild in der Mitte des Bildschirmes wie folgt erstellt:

      Code
      class RscTitles
      {
      };


      Zuerst benötigt muss man den Titel anführen wie z.B.

      Code
      class Logo
      {
      idd = -1;
      duration = 6;
      };

      Hierbei ist wichtig das der Namen nicht mit einem anderen "Titel" übereinstimmen darf!

      Zunächst kommt die idd (Display ID) Jeder Dialog muss eine idd besitzen um bei Bedarf auf diesen zu referieren. Dies kann eine beliebte Zahl sein oder einfach -1 wenn man nicht mehr auf diesen referieren will.

      Jetzt die duration (Dauer) = Selbsterklärend - wie lange soll dieser Dialog am Bildschirm angezeigt werden. Beachtet die totale duration zeit inkludiert fade in und fade out.


      Jetzt fehlt uns nur noch der Control:

      Dies ist eine Spezielle Klasse und beinhaltet alle Anzeige Elemente wie z.B Hintergrund, Schriftart, Ausrichtung, etc.


      Hier eine kleine Erklärung des Control:

      Code
      class ExampleControl
               {
                  idc = -1;
                  type = 0;
                  style = 0;
                  x = 0.125;
                  y = 0.125;
                  h = 0.75;
                  w = 0.75;
                  font = "EtelkaNarrowMediumPro";
                  sizeEx = 0.05; 
                  colorBackground[] = {1,1,1,0};
                  colorText[] = {1,1,1,1};
                  text = "textures\example.paa";               
      			lineSpacing = 1;
               };
      Alles anzeigen

      idc = Control ID - jede Klasse braucht Ihre eigene ID das bei Bedarf auf sie Bezug genommen werden kann. Man kann -1 verwenden wenn man keinen direkten Bezug auf die Klasse benötigt.

      type = Typ von der Klasse wie z.B. Text Box, Button, listbox etc. Jeder type hat seine eigene Nummer welche Ihn identifiziert. Es kann Dezimal oder Hexadezimal sein. In diesem Falle ist 0 eine einlinige Text Box.
      style= Anzeige Stil wie z.B Rahmen, Ausrichtung etc. ebenfalls mit dezimal sowie hexadezimal. Die Nummer 0 ist Standart also linksbündiger Text. (Mehr dazu in einen darauf folgenden Tutorial)
      x = Kontrolliert X Achse
      y= same
      h= die Höhe der Klasse
      w= die weite der Klasse
      font= Schriftart (alle möglichen Schriftarten Direkt hier)
      sizeEX= Schriftgröße
      ColorBackround = Hintergrundfarbe {r,g,b,a}
      colorText = Schriftfarbe {r,g,b,a}
      text = Text oder pfad für Textur


      Das ganze zusammen sieht dann wie folgt aus:


      Code
      class RscTitles
      {
      
      
      
      
      class Logo
      {
         idd = -1;
         duration = 6;
         class controls
         {
               class ExampleControl
               {
                  idc = -1;
                  type = 0;
                  style = 2192;
                  x = 0.125;
                  y = 0.125;
                  h = 0.75;
                  w = 0.75;
                  font = "EtelkaNarrowMediumPro";
                  sizeEx = 0.05; 
                  colorBackground[] = {1,1,1,0};
                  colorText[] = {1,1,1,1};
                  text = "textures\logo.paa";               
      			lineSpacing = 1;
               }; 
            }; 
         }; 
      };
      Alles anzeigen

      Hoffe man versteht es so halbwegs.

      Werde wenn Zeit natürlich weitere Tutorials bezüglich Dialoge machen. Außer jemand ist so gut und nimmer mir die Arbeit ab ;)

      LG

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 8. Oktober 2015 um 02:38

      ^^ Wunderbar

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 8. Oktober 2015 um 01:09

      Ahh habs schon ^^

      du hast schonwieder

      "" gemacht

      "life_fnc_kistegl"

      sollte aber

      ["Bauplan nehmen", life_fnc_kistegl];

      so aussehen

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 8. Oktober 2015 um 01:07

      Jo ist egal.

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 8. Oktober 2015 um 01:03

      Hab's gerade bei mir probiert funktionierte einwandfrei :)

      PS: this allowDamage false;
      darfst du nicht machen da die kiste ja im script zerstört wird und erst was passiert wenn die Kiste sozusagen nicht mehr Lebt ^^

      passiert gar nichts? oder was passiert den?

    • [TUT] Dialoge Positionierung

      • Backer133
      • 8. Oktober 2015 um 00:58

      Ok, wenn ich Zeit habe werde ich mal Schritt für Schritt alles Erklären mit Basics für Dialoge :)

    • [TUT] Dialoge Positionierung

      • Backer133
      • 8. Oktober 2015 um 00:43

      Falls ich Zeit habe eventuell ^^.
      Was genau wird den gewünscht? GUI Editor oder direkt schreiben?

      Oder einfach ne Erklärung wie z.B: was macht was?

    • [TUT] Dialoge Positionierung

      • Backer133
      • 8. Oktober 2015 um 00:38

      Das ist auch kein Dialog Tutorial ^^ sondern nur eine Erklärung der Positionen.

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 8. Oktober 2015 um 00:28

      hast du den die datei so genannt
      fn_kistenscript.sqf
      ?

      und nein darfst du nicht ^^

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 7. Oktober 2015 um 23:48

      Und zwar:

      Code: fn_kistenscript.sqf
      private["_obj","_pos","_crate"];
      
      
      
      
      _crate = _this select 0;
      
      
      
      
      clearMagazineCargo _crate;
      clearWeaponCargo _crate;
      clearItemCargoGlobal _crate;
      _crate setDamage  1;
      sleep 1;
      
      
      
      
      if(!(alive _crate)) then
      	{
      		_pos = _crate modelToWorld[0,3,0];
      		_pos = [_pos select 0, _pos select 1, 0];
      		_obj = "Land_Suitcase_F" createVehicle _pos;
      		_obj setVariable["item",["water",1],true];
      		_obj setPos _pos;
        		[[_obj],"life_fnc_simDisable",nil,true] call life_fnc_MP;
              hint "Oh das scheint wohl eine magische Kiste zu sein, was liegt den da schönes am Boden?"; 
      	};
      sleep 1;
      deleteVehicle _crate;
      Alles anzeigen


      und

      Code
      this addAction [""Kistenscript Starten"",life_fnc_kistenscript];

      Dürfte funken! ;)

      Statt water einfach dein virt item.

      Viel Spaß mit deiner magischen Box ^^

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 7. Oktober 2015 um 23:35

      nönö, habs schon ^^ #brainafk

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 7. Oktober 2015 um 23:06

      Rpt?

      Ich schaus mir mal an bin jetzt eh Zuhause ^^

    • [TUT] Dialoge Positionierung

      • Backer133
      • 7. Oktober 2015 um 23:02

      Hallo zusammen, Heute möchte ich euch mal eine kleine Erklärung bezüglich Dialoge abgeben.
      Ich hoffe man versteht es einigermaßen und es hilft ein paar Leute weiter bezüglich Dialog positionierung etc.

      Die Positionen sowie die weite und höhe kalkulieren sich auf die sogenannte Controll Positioning Box (Bild unten) Diese ist bei jeden Bildschirm gleich ! Das heißt es ist imemr 4:3 und ist immer auf genau 0 positioniert (Mitte des Bildschirms). Weiters ist Sie immer 1x1 weit und hoch!

      das Bedeutet wenn du nur schreibst z.B : x= 1.0; y=1.0; w= 1.0; h=0.7; bezieht sich das immer auf das Zentrum des Bildschirmes. ( Beachte dass der blaue Rahmen jedoch ein Quadrat ist das heißt das die Höhe immer etwas niedrieger ist wie die länge). In Relation zur weite = 1 ist höhe = 0.7. Das bedeutet das hier die Höhe sowie breite genau gleich lang bzw groß ist (da die blaue Box ja ein Rechteck ist und kein Quadrat)

      Um den Dialog die größe von H zu geben kannst du es so machen und sparrst dir dadurch das umrechnen von 1 auf 0.7 und es ergibt ein Quadrat!:

      h = 0.7;
      w = 0.7 * 3 / 4;

      Wenn du den Dialog der größe von w geben willst so:

      h = 0.7 * 4 / 3;

      w = 0.7;

      Wenn du allerdings den gesamten Bildschirm nutzen willst (und nicht nur das Zentrum also die blaue Box) geht das wiefolgt:

      safeZoneW und safeZoneH.

      Bespiel =

      h = safeZoneH;
      w = safeZoneW;

      Bedeutet der ganze Bildschirm. Natürlich kannst du auch hier ein bisschen rumspieln z.B

      safeZoneX: -0.235402
      safeZoneY: -0.0882083
      safeZoneW: 1.4708
      safeZoneH: 1.17642

      (dieses Beispiel wäre für einen Bildschirm)
      Das zum Beispiel würde dir vom Ganzen Bildschirm unten rechts eine Box anzeigen.
      (wenn du Background Colour etc definiert hast)

      Also wenn die weite des blauen Rahmens gleich w=1.0; ist ist die weite des kompletten Bildschrirm gleich
      w= safeZoneW;

      Dann gibts noch den Befehl für Multi Bildschirme (Wenn du mehrere hättest, würd ich dir aber nicht empfehlen)

      h = safeZoneH;
      w = safeZoneWAbs; <---

      Somit erstreckt sich der Dialog über die gesamte länge.

      Hoffe ich konnte es dir ein bisschen erklären (weiß nicht wie ichs besser Beschreiben soll). Wenns jedoch noch Fragen gibt, fragt einfach hier helfe euch gerne weiter.

      An die Moderatoren. Man kann leider immer noch keine Dateianhänge raufladen wenn man ein neues Thema erstellt ;)

      Bilder

      • Positionen.jpg
        • 34,38 kB
        • 600 × 282
        • 470
    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 7. Oktober 2015 um 22:39

      I AM WATCHING ^^

    • Anzahl virtuelle Items in einem Shop

      • Backer133
      • 7. Oktober 2015 um 14:15

      Hey, Probiers mal wie folgt:


      in die Init der Kiste:

      Code
      this addAction ["Kistenscript Starten", "kistenscript.sqf"];

      dann ne datei erstellen:

      SQL: kistenscript.sqf
      private["_obj","_pos","_crate","_player"];
      
      
      
      
      _crate = _this select 0;
      
      
      
      
      clearMagazineCargo _crate;
      clearWeaponCargo _crate;
      clearItemCargoGlobal _crate;
      
      
      
      
      _crate setDamage  1;
      
      
      
      
      sleep 1;
      
      
      
      
      if(!(alive _crate)) then
      	{
      		_pos = getposASL _crate;
      		_obj = "Land_Suitcase_F" createVehicle _pos;
      		_obj setVariable["item",["deinitemname",1],true];
      		_obj setPos _pos;
        		[[_obj],"life_fnc_simDisable",nil,true] call life_fnc_MP;
                      hint "Oh das scheint wohl eine magische Kiste zu sein, was liegt den da schönes am Boden?"; 
      	};
      
      
      
      
      sleep 1;
      deleteVehicle _crate;
      Alles anzeigen

      Wurde nicht getestet, theoretisch dürfte es aber funken, bin noch in der arbeit habs nur so schnell nebenbei geschrieben. Hier dürfte am Standort der Kiste ein Suitcase spawnen in dem dann dein Item ist. Dannach wird die kiste zerstört und gelöscht.

      Hoffe es funk ansonsten setz ich mich dann nochmal hin.

      PS: Gibt sicher nen besseren weg, das ist jedoch der erste was mir auf die schnelle eingefallen ist.

      LG

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von Native-Servers.com? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Benutzerkonto erstellen

    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™