Befüllt Kisten oder Fahrzeuge mit bestimmten Gegenständen. Dies ermöglicht auch das Hinzufügen von Gegenständen, die nicht im 3DEN-Editor verfügbar sind (wie Mörsergranaten). Die selbe Herangehensweise kann auch auf Fahrzeuge angewandt werden.

Variante 1: Variablennamen

Das Ausstatten der Kisten über den Variablennamen hat den Vorteil, dass der Missionsbauer die volle Kontrolle darüber erhält, welche Kisten wie ausgestattet sind. Zugleich ist der Aufwand relativ groß und fehleranfällig, denn wenn eine Kiste gelöscht wurde oder sich vertippt wurde, wird kein Kiste mehr befüllt.

  • Erstelle eine SQF-Datei mit einem für deine Kisten passenden Namen wie standard_munition.sqf oder Medevac_Kisten.sqf. Rufe dieses Script über initServer.sqf auf.
  • Platziere deine Kisten und gebe allen, deren Loadout du ändern möchtest, einen Namen.
  • Schreibe in deine Kisten-SQF folgendes:
{
    //Leeren der Kiste
    clearWeaponCargoGlobal _x;
    clearMagazineCargoGlobal _x;
    clearItemCargoGlobal _x;
    clearBackpackCargoGlobal _x;
    //Befüllen der Kiste mit Munition oder Waffen
    _x addMagazineCargoGlobal ["30Rnd_65x39_caseless_mag_tracer", 16];
    _x addWeaponCargoGlobal ["rhs_weap_M136_hedp",4];
}foreach [kiste_1,kiste_2];
  • Ändere nun die Zeilen unterhalb des zweiten Kommentars so, dass die von dir gewünschten Magazine, Waffen etc. hinzugefügt werden. Passe dazu die Klassennamen und Mengen entsprechend an.

Variante 2: Klassennamen

Als Alternative kannst du auch allen Kisten/Fahrzeugen einer Art ein Loadout verpassen. Achte darauf, dass diese Kistensorte in der gesamten Mission nur dort vorkommt.

  • Erstelle eine SQF-Datei mit einem für deine Kisten passenden Namen wie standard_munition.sqf oder Medevac_Kisten.sqf. Rufe dieses Script über initServer.sqf auf.
  • Für die diese Methode muss auch der unten angegebene Klassenname geändert werden. Den Klassennamen kannst du erhalten, indem du im 3DEN-Editor einen Rechtsklick auf das Objekt machst und unter „Log“ auf „Log Classes to Clipboard“ klickst. Mit Strg+V ins Script einfügen - fertig.
{
    //Leeren der Kiste
    clearWeaponCargoGlobal _x;
    clearMagazineCargoGlobal _x;
    clearItemCargoGlobal _x;
    clearBackpackCargoGlobal _x;

    //Befüllen der Kiste mit Munition oder Waffen
    _x addMagazineCargoGlobal ["30Rnd_65x39_caseless_mag_tracer", 16];
    _x addWeaponCargoGlobal ["rhs_weap_M136_hedp",4];
}foreach (vehicles select {_x isKindOf "Box_NATO_Ammo_F"});

Variante 3: Synchronisierte Objekte

Diese Variante kommt ohne externe Scripts aus, alles geschieht im Editor. Ein weiterer Vorteil ist, dass man eine intuitive, sichtbare Kontrolle darüber hat, welche Kisten welches Loadout erhalten. Bei größeren Mengen von Kisten kann es aber auch unübersichtlich werden.

  • Platziere die Kisten.
  • Platziere eine Game Logic und synchronisiere diese mit allen Kisten, die ein gleiches Loadout erhalten sollen.
  • Schreibe in die Init-Zeile der Game-Logic folgenden Code und passe die hinzugefügten Magazine, Waffen, Items und Rucksäcke an:
    if isServer then {
      {
          comment "Leeren der Kisten";
          clearWeaponCargoGlobal _x;
          clearMagazineCargoGlobal _x;
          clearItemCargoGlobal _x;
          clearBackpackCargoGlobal _x;
    
          comment "Befüllen der Kiste mit Munition oder Waffen";
          _x addMagazineCargoGlobal ["30Rnd_65x39_caseless_mag_tracer", 16];
          _x addWeaponCargoGlobal ["rhs_weap_M136_hedp",4];
      }foreach (synchronizedObjects this);
    };
    

Verwendete Befehle

Tags: archiv