Waffenautomat

Ein Waffenautomat besteht pro Waffe aus:

Zuerst wird erklärt, wie man einen Automaten für nur eine simple Waffe erstellt. Der Zweite Teil des Tutorials zeigt einen Automaten, der den selben Aufbau hat, aus dem man aber mehrere Waffen spawnen kann.

FIXME Bild muss ersetzt werden.

Einfacher Automat

Der Aufbau

FIXME Bild muss ersetzt werden.

Der Automat selbst ist einfach aus ein paar Brushes zusammenzubauen, komplexe Konstruktionen sehen natürlich auch nicht blöd aus. Im Schacht befindet sich ein light_spot mit den Werten 255 64 64 60.

Die Technik im Automaten

… besteht in dieser Version wie oben angegeben nur aus dem Knopf, dem Spawnpunkt für die Waffe und der Waffe selbst. Im point_template eingetragene Entities erscheinen vorerst nicht in der Spielwelt, dafür aber immer, wenn das template per ForceSpawn angetriggert wird, und dann genau auf den koordinaten des Templates. Ich benutze in diesem Beispiel die weapon_mp5navy als Waffe.

Der func_button benutzt die Settings „Delay before Reset: 1“, die Flags „Use Activates“ und „Don't move“ sowie einen Output

OnPressed | Weapon1_Spawner | ForceSpawn | 0.00 | No

Der Spawnpunkt (point_template) trägt den Namen „Weapon1_Spawner“ und hat als erstes Template den Namen meiner weapon_mp5navy, nämlich „Weapon1“ eingetragen. Besagte weapon_mp5navy kann sich irgendwo auf der Map befinden, das sie ja sowieso nur beim Template spawnt, hier habe ich sie allerdings der Übersicht halber auch in den Schacht gesetzt.

Drückt nun ein Spieler auf den Knopf, erscheint die mp5 im Schacht und fällt herunter. Der Knopf lässt sich nach einer Sekunde wieder drücken.

Komplexerer Automat

Der Aufbau

Der Aufbau des komplexen Automaten ist fast genau wie im einfachen. Statt einem Template, einem Knopf und einer Waffe gibt es allerdings mehrere. Dieser Automat kann, muss aber nicht, entsprechend größer sein.

Die Technik

Statt alles einzeln zu bauen, kopieren wir die drei Entities neunmal, verschieben sie wie benötigt und ersetzen die Waffen und Namen, so dass das Ganze wie im Bild aussieht. Die point_templates Befinden sich alle dicht nebeneinander im Schacht.

FIXME Bild muss ersetzt werden.

Nun ist die einzige Schwierigkeit, den Spieler nicht alle neun Knöpfe am Stück drücken zu lassen, sondern jeweils eine Verzögerung von einer Sekunde einzubauen. Dies erreicht man, indem man die func_buttons mit Namen versieht (im Beispiel Btn1 bis Btn9) und mit einem logic_relay (Name: RELAY) die Knöpfe an- und ausschaltet. Das mag sich für den ein oder anderen kompliziert anhören, funktioniert aber recht einfach - wir markieren einfach alle Knöpfe gleichzeitig (Strg gedrückt halten und im 3D-Fenster nacheinander anklicken), klicken den Outputs-Tab an und fügen einen Neuen Output hinzu:

OnPressed | RELAY | Trigger | 0.00 | No

Nun fehlen noch die Eigenschaften des logic_relay - ebenfalls Outputs:

OnTrigger | Btn* | Lock | 0.00 | No

OnTrigger | Btn* | Unlock | 1.00 | No

Das Btn* triggert alle Entities, die Btn am Anfang ihres Namens stehen haben (*n würde alle mit n am Ende triggern, *a* alle mit einem a, das nicht am Anfang oder am Ende steht; * steht also für eine nicht spezifizierte Menge an Buchstaben und Zahlen). Der output „Lock“ deaktiviert alle Knöpfe, „Unlock“ gibt sie danach wieder zur Benutzung frei.

Die Verwendung aller Dokumente einschließlich der Abbildungen ausschließlich zu nichtkommerziellen Zwecken. Verbreitung des Dokuments auf Speichermedien, (insbesondere auf CD-ROMs als Beilage zu Zeitschriften und Magazinen oder sog. "Mission-Packs" etc.) ist untersagt.
 
counter_strike_source/tutorials/weaponspawn.txt · Zuletzt geändert: 2011/05/25 12:33 von Adrian_Broher