Lampen zum Ausschiessen
In diesem Tutorial lernt man wie man eine Lampe baut die man ausschiessen und trotzdem per func_button triggern kann.
Diese Entities brauchen wir:
- 1 func_button
- 1 multi_manager
- Desweiteren für jede Lampe 1 light
- 2 trigger_relay
- 1 func_breakable
Mit dieser (für nur eine Lampe etwas umständliche) Methode lassen sich im Prinzip beliebig viele Lampen mit einem Button ein- und ausschalten. In dieser Karte bauen wir ersteinmal 4.
Erstellt erst einmal einen einfachen func_button und gebt ihm eine Textur die auch passt, z.B. +ABUTTON2 Gebt ihm folgende Einstellungen:
- name -
b1 - targetted object -
multi1
Außerdem solltet ihr folgenden Flag aktivieren:
toggle
So, dieser Button triggert nun das Entity multi1 sobald er betätigt wird. Multi 1 ist ein multi_manager - Entity das sobald es aktiviert wird bis zu sechzehn weitere Ziele aktivieren kann. In unserem Fall müssen wir alle Lichter die wir benutzen aufführen und nach 0 Sekunde triggern. Wie man die Einträge im multi_manager - Entity erstellt kann man in der Entity - Bibliothek nachlesen.
Wir tragen nun die Namen rl1, rl2, rl3, und rl4 ein. Das ganze sollte in etwa so aussehen wie das Bild oben.
Also, nochmal zusammenfassend:
Der func_button mit dem namen b1 triggert den multi_manager mit dem namen multi1. Dieser wiederum triggert 4 Entites die noch nicht erstellt sind, die Entities heissen rl1, rl2, rl3, und rl4.
Nun wollen wir ersteinmal die Lampen selbst erstellen. Wir verwenden hierfür eine 1 Einheit grosse Lampe die in ein func_wall umgewandelt werden kann (zugunsten der Geschwindigkeit) und geben ihr an einer Seite die Textur ~light5B und kleben unter die Lampe ein light Entity.
Dem light Entity geben wir einen Namen von l1 Das ganze sollte nun so aussehen:
Dem light Entity geben wir den Namen l1 und verändern noch die Brightness - Werte auf die Gewünschte Helligkeit und Farbe.
Jetzt erstellen wir noch ein trigger_relay, ein Entity welches den Auslöser vom multimanager an das licht weitergibt. Weitere Informationen über das trigger_relay Entity bitte der Entity - Bibliothek entnehmen. Das Entity am besten in die Nähe des Lichtes plazieren. So sind die Sachen geordneter.
Einstellungen des 1. trigger_relay
- Name -
rl1 - Target -
l1 - Trigger State - Toggle
Zusamenfassung:
Der Auslöser der von dem multi_manager an das trigger_relay weitergegeben wird, wird nun wiederum an das light - Entity l1 weitergegeben. Wenn man jetzt die Karte kompiliert müsste schon das Licht mit dem func_button an- und auszuschalten sein.
Was jetzt noch fehlt ist
- a) Dass das Licht ausschiessbar wird und
- b) Dass es nicht mehr danach mit dem func_button angemacht werden kann.
Wir wenden uns ersteinmal Punkt a) zu - Wir erstellen ein func_brakable unter der Lampe und geben ihm eine glass Textur. Das ganze sollte so aussehen:
Dem func_breakable geben wir nun folgende Optionen:
- Name -
g1 - Target on Break -
r1 - Render Mode -
Texture - FX Amount -
1
Die Restlichen Einstllungen kann man so lassen wie sie sind.
Sobald man nun dieses Entity anschiesst zerspringt Glas und das Entity r1 wird aktiviert.
Dieses ist auch ein trigger_relay, übersichtshalber sollte man ihn auch in der Nähe der Lampe plazieren.
Dieses Entity bekommt folgende Einstellungen:
- Name -
r1 - Target -
l1 - Kill Target -
rl1 - Trigger State -
Off
So, jetzt funktioniert alles.
Sobald das func_breakable g1 angeschossen wird, aktiviert es das trigger_relay - Entity r1 welches wiederum das trigger_relay rl1 aus dem Spiel entfernt. Nun kann das Licht auch nicht mehr angeschaltet werden.
Für jedes weitere Licht das ausschiessbar sein soll muss man die beiden trigger_relay, das light und das func_breakable kopieren und alle 1 durch eine aufsteigende Zahl ab 2 ersetzen.
Bei diesem Tutorial hat man nun einiges über Trigger, Targets und mehrere Entites gelernt.
Zusätzlich kannst du dir noch meine Testmap herunterladen. FUNNER



