======= Waffenautomat =======

Ein Waffenautomat besteht pro Waffe aus:

  * 1x [[source:entities:func_button]]
  * 1x [[source:entities:point_template]]
  * 1x **weapon_* **

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 [[source:entities: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 [[source:entities: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 ([[source:entities: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 [[source:entities:point_template|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 [[source:entities:func_button|func_buttons]] mit Namen versieht (im Beispiel Btn1 bis Btn9) und mit einem [[source:entities: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 [[source:entities: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.