Benutzername:

Passwort:

Autor Thema: Missionsbau: AddAction bzw. Scrollradmenü-Eintrag zum Öffnen des RTE  (Gelesen 6732 mal)

niCe Nebulaner

  • Gold Member
  • *****
  • Beiträge: 1108
    • Profil anzeigen
Hi,

um den RTE im Spiel über das Scrollradmenü bzw. AddAction-Menü zu öffnen gibt es folgende Lösung:

Im Missionsordner legt ihr eine Datei mit dem Namen RTE.sqf an. Einfach eine .txt-Datei mit diesem Inhalt füllen:
Zitat
[] spawn ION_RTE_pStartRTE;
Nach dem speichern .txt in .sqf umbenennen.
Nun müsst ihr noch im 2D-Editor dem Missionserstellerslot in der Init folgenden Eintrag erstellen:
Zitat
this addAction ["Starte RTE", "RTE.sqf"];


« Letzte Änderung: 09. Dezember 2013, 18:05:25 von niCe Nebulaner »
Wir sind das niCe-Team, alles Andere sind nur nette Spieler.

niCe Nebulaner

niCe Diesel

  • Platin Member
  • ******
  • Beiträge: 3216
  • Vorstand/ArmA2-BeLtr a.D.
    • Profil anzeigen
Re: Missionsbau: AddAction bzw. Scrollradmenü-Eintrag zum Öffnen des RTE
« Antwort #1 am: 09. Dezember 2013, 13:38:54 »
Sehr schön. Vielen Dank für den Hinweis. Werde das testen, ob ich das auch hinbekomme und ob es mich zufriedenstellt.

Eversmann

  • Silver Member
  • ****
  • Beiträge: 435
  • Nur die Toten haben das ende des Krieges gesehen
    • Profil anzeigen
Re: Missionsbau: AddAction bzw. Scrollradmenü-Eintrag zum Öffnen des RTE
« Antwort #2 am: 09. Dezember 2013, 17:57:30 »
Bei mir geht der untere Code nicht. Jetzt versuche ich krampfhaft ne l9sung zufinden.
Nur die Toten haben das ende des Krieges gesehen

niCe Diesel

  • Platin Member
  • ******
  • Beiträge: 3216
  • Vorstand/ArmA2-BeLtr a.D.
    • Profil anzeigen
Re: Missionsbau: AddAction bzw. Scrollradmenü-Eintrag zum Öffnen des RTE
« Antwort #3 am: 09. Dezember 2013, 17:59:39 »
Wenn du im in-game Editor bist, ersetze die doppelt-doppelten Anführungszeichen durch einfach doppelte:

this addAction [""Starte RTE"", ""RTE.sqf""]; --> this addAction ["Starte RTE", "RTE.sqf"];

niCe Nebulaner

  • Gold Member
  • *****
  • Beiträge: 1108
    • Profil anzeigen
Re: Missionsbau: AddAction bzw. Scrollradmenü-Eintrag zum Öffnen des RTE
« Antwort #4 am: 09. Dezember 2013, 18:05:40 »
Mein Fehler hatte es aus der mission.sqm kopiert.
Wir sind das niCe-Team, alles Andere sind nur nette Spieler.

niCe Nebulaner

niCe Diesel

  • Platin Member
  • ******
  • Beiträge: 3216
  • Vorstand/ArmA2-BeLtr a.D.
    • Profil anzeigen
Re: Missionsbau: AddAction bzw. Scrollradmenü-Eintrag zum Öffnen des RTE
« Antwort #5 am: 09. Dezember 2013, 21:36:14 »
getestet und funktioniert. Nochmal danke.

niCe Diesel

  • Platin Member
  • ******
  • Beiträge: 3216
  • Vorstand/ArmA2-BeLtr a.D.
    • Profil anzeigen
Re: Missionsbau: AddAction bzw. Scrollradmenü-Eintrag zum Öffnen des RTE
« Antwort #6 am: 01. Februar 2014, 17:53:00 »
this addAction ["RTE starten", "RTE.sqf", nil, 0, False, True, "", "player == player && _this == mc"];
Fügt den Eintrag mit der Condition _this == mc nur für die unit mit dem Namen "mc" hinzu. Allerdings ist der Eintrag nach Tod der Einheit verschwunden. Muss man natürlich nach Respawn wieder hinzufügen.

niCe Diesel

  • Platin Member
  • ******
  • Beiträge: 3216
  • Vorstand/ArmA2-BeLtr a.D.
    • Profil anzeigen
Re: Missionsbau: AddAction bzw. Scrollradmenü-Eintrag zum Öffnen des RTE
« Antwort #7 am: 09. Februar 2014, 16:50:58 »
Besser:
_actionIndex = [["RTE starten (CBA)", "RTE.sqf", nil, 0, False, True, "", "local _this"]] call CBA_fnc_addPlayerAction;
--> Adds persistent action to player (which will also be available in after respawn).
ref: https://dev.withsix.com/docs/cba/files/common/fnc_addPlayerAction-sqf.html

niCe Diesel

  • Platin Member
  • ******
  • Beiträge: 3216
  • Vorstand/ArmA2-BeLtr a.D.
    • Profil anzeigen
Re: Missionsbau: AddAction bzw. Scrollradmenü-Eintrag zum Öffnen des RTE
« Antwort #8 am: 09. Februar 2014, 20:27:31 »
Weiter geht's:

So kann man einen persistenten Menüeintrag für eine Einheit mit der Description "mc" erstellen ohne ein externes Skript ablegen zu müssen:
_actionIndex = [["RTE starten", CBA_fnc_actionargument_path,[[], {[] call ION_RTE_pStartRTE}], 0, False, True, "", "local _this && _this == mc"]] call CBA_fnc_addPlayerAction;

Die condition "_this == mc" legt hierbei fest, dass der Eintrag nur für die Einheit mit der Description "mc" angelegt wird und nicht für alle Spieler.
« Letzte Änderung: 15. Februar 2014, 12:09:05 von niCe Diesel »