HX3 Foren

HX3 Foren (https://hx3.de/)
-   Editing (https://hx3.de/editing-139/)
-   -   Action-Menü für alle Seiten (https://hx3.de/editing-139/action-menue-fuer-alle-seiten-16045/)

Hercules-HH 13.04.2009 20:38

Action-Menü für alle Seiten
 
Ich hab für den Spieler (Player) Aktion-Menüeinträge gemacht. Auch untermenüs sind vorhanden. Es funktioniert super. Nun möchte ich, aber für alle Spielbaren Einheiten "Ein" A.-Menü haben. Wenn man also in ein Untermenü geht, dann soll dies auch vorhanden sein, wenn man eine Spielebare einheit wechselt. Nur ein Menü z.B. für Seite Ost.

So sieht das jetzt aus (Ausschnitt):

Hauptmenu.sqs

Code:

#Start
#Entfernenk1
Player removeAction IDK10; Player removeAction IDK11; Player removeAction IDK12; Player removeAction IDZ1;
#Menu4
IDK1 = Player addAction ["Einheiten Kaufen","Skripte\Amenu\Kaufmenu.sqs"]
#Unterm11
IDO1 = Player addAction ["Offensiv Optionen","Tot1.sqs"];
#Unterm12
IDD1 = Player addAction ["Defensiv Optionen","Totx.sqs"];
#Ende
exit;

Kaufmenu.sqs

Code:

#Start
Spielbar=false;
#Entfernen1
Player removeAction IDK1; Player removeAction IDO1; Player removeAction IDD1;
#Menu10
IDK10 = Player addAction ["Spielbare Einheiten","Skripte\Amenu\Kaufmenus.sqs"]
#Unterm14
IDZ1 = Player addAction ["Vorherige Optionen","Skripte\Amenu\Hauptmenu.sqs"];
#Ende
exit;

Der Spieler soll also auch beim wechseln der spielbaren Einheiten, das selbe Menü haben. Hauptmenü.sqs wird am Anfang gestartet. Kann man das nicht irgendwie für alle einer Seite hinzufügen und löschen?

Ich hoffe, dass ich diese Frage nicht schon einmal gestellt habe (Ich glaube nicht)

Hercules-HH 13.04.2009 22:11

{IDK1 = _x addAction ["Einheiten Kaufen","Skripte\Amenu\Kaufmenu.sqs"]} foreach list Zone;

So hab ich das jetzt gelöst, aber muss noch gucken, ob das auch ohne Probleme läuft

Hercules-HH 13.04.2009 22:16

Zone ist ein Auslöser, Aktiviert durch Opfor, wobei der Auslöser über die ganze Karte geht. Mit Achsen-Größe 0 & 0, müsste das auch geht.

Hat sich alles von selber gelöst, aber andere können vielleicht auch jetzt davon gebrauch machen.

Vienna 14.04.2009 14:04

Liste der Anhänge anzeigen (Anzahl: 1)
Für das Aktionen-Menü reicht ein Skript. Die Sprungadresse wird in den Aktionen als Parameter übergeben.

Das Aktivieren des Menüs wird über zwei Auslöser gesteuert. Die Auslöser vermeiden auch doppelte Aktionen beim Einheitenwechsel und Tod des Spielers.

Die Auslöser sind für Blufor. Für Opfor einfach kopieren und auf Opfor umstellen.

Erweiterungen sind dadurch einfach möglich und übersichtlich. Die Skripte Offensiv und Defensiv enthalten nur eine Textzeile für den Funktionstest. Im Anhang eine Beispielmission.

Aktionen.sqs
Code:

;Menüführung für Aktionsmenüs in Objekten

;Menü starten: [Objektname_das_die_Aktionen_enthält,0,0,"Start"] exec "Aktionen.sqs"
;Menü beenden: [Objektname_das_die_Aktionen_enthält,0,0,"Ende" ] exec "Aktionen.sqs"

_objekt = _this select 0

_objekt removeAction AktionNrH1

_objekt removeAction AktionNrU1
_objekt removeAction AktionNrU2
_objekt removeAction AktionNrUE

_objekt removeAction AktionNrO1
_objekt removeAction AktionNrO2
_objekt removeAction AktionNrO3
_objekt removeAction AktionNrOE

_objekt removeAction AktionNrD1
_objekt removeAction AktionNrD2
_objekt removeAction AktionNrD3
_objekt removeAction AktionNrDE

goto (_this select 3)
exit

#Start
AktionNrH1 = _objekt addAction ["Einheiten Kaufen", "Aktionen.sqs", "EinheitenKaufen", 1, false, false]
player groupChat "Kaufmenue in den Aktionen vorhanden!"
exit

#Ende
exit

#EinheitenKaufen
AktionNrU1 = _objekt addAction ["Offensiv Optionen", "Aktionen.sqs", "OffensivOptionen", 3, false, false]
AktionNrU2 = _objekt addAction ["Defensiv Optionen", "Aktionen.sqs", "DefensivOptionen", 2, false, false]
AktionNrUE = _objekt addAction ["Vorheriges Menue",  "Aktionen.sqs", "Start", 1, false, false]
exit

#OffensivOptionen
AktionNrO1 = _objekt addAction ["Offensiv 1", "Offensiv1.sqs", "", 4, false, false]
AktionNrO2 = _objekt addAction ["Offensiv 2", "Offensiv2.sqs", "", 3, false, false]
AktionNrO3 = _objekt addAction ["Offensiv 3", "Offensiv3.sqs", "", 2, false, false]
AktionNrOE = _objekt addAction ["Vorheriges Menue", "Aktionen.sqs", "EinheitenKaufen", 1, false, false]
exit

#DefensivOptionen
AktionNrD1 = _objekt addAction ["Defensiv 1", "Defensiv1.sqs", "", 4, false, false]
AktionNrD2 = _objekt addAction ["Defensiv 2", "Defensiv2.sqs", "", 3, false, false]
AktionNrD3 = _objekt addAction ["Defensiv 3", "Defensiv3.sqs", "", 2, false, false]
AktionNrDE = _objekt addAction ["Vorheriges Menue", "Aktionen.sqs", "EinheitenKaufen", 1, false, false]
exit


Hercules-HH 17.04.2009 01:28

WOW, echt heftig. Wie du schon gesagt hast: Übersichtlich, kurz und knackig. Bin begeistert.

Also müsste ich nur die Auslöser größer machen, wenn ich das Kaufmenü immer/überall haben möchte.

Wozu sind den diese Nummern und das false gut?

AktionNrU1 = _objekt addAction ["Offensiv Optionen", "Aktionen.sqs", "OffensivOptionen", 3, false, false]

Geben die Nummern die Position an oder sind sie nur so zum durchnummerieren?
False ist ein weiteres Fragezeichen für mich.

Danke :)

Buliwyf 17.04.2009 08:12

Die Nummer gibt die Priotrität des Aktionmenüeintrags an. Die Höchste Zahl steht oben, die niedrigste unten.

Der erste Boolean-Wert gibt an, ob der Spieler in Bildschirmmitte den Text des ausgewählten Actionmeüeintrags sehen soll oder nicht.

Der zweite Boolean-Wert gibt an, ob der geklickte Aktionmenüeintrag anschließend ausgeblendet werden soll oder nicht.


Sowas kannst Du aber auch leicht HIER nachlesen...

:rolleyes:


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:38 Uhr.

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias


SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119