|
GRUNDLAGEN DER MAPERSTELLUNG |
|
Navigation
III. Elemente und Objekte in Portal-Maps
Energieballgeber und -empfänger
Ein sehr wichtiger Teil der Portal-Rätsel sind die Ball-Systeme. Ein Energieball wird dabei gespawned und muss mittels Portalen, Kuben oder ähnlichem in eine Energieball-Falle befördert werden. Diese bewirkt irgendetwas, zum Beispiel das Herunterfahren eines Lifts, der sonst nicht erreichbar ist oder das Öffnen einer Tür. Zuerst kümmern wir uns um den Kugelgeber.
Der Kugelgeber für Energiebälle
Was wir brauchen:
1x Prop_Dynamic
1x Point_Energy_Ball_Launcher
An einer beliebigen Wand positionieren wir das Prop_Dynamic, das das Model des Kugelgeber-Apparates bekommt ("models/props/combine_ball_launcher.mdl"). Davor muss das Point_Energy_Ball_Launcher-Entity gesetzt werden, damit es so aussieht, als ob das Model den Ball spawnt. Direkt vor den schwarzen Ausläufern des Models sitzt noch ein Brush mit der 'Nodraw'-Textur ('toolsnodraw'), die unsichtbar ist und den Ball abprallen lässt, wenn er zurückkommt. Wäre der Brush nicht da, würde der Ball durch das Model fliegen und erst an der Wand hinter dem Model abprallen.
Die Eigenschaften der Entities verändern wir folgendermaßen:
Prop_Dynamic:
Name: 'Energy_Home'
Point_Energy_Ball_Launcher:
Name: 'BallShooter'
Ball Count: '1'
Einen Output fügen wir beim Point_Energy_Ball_Launcher hinzu:
My Output Named: OnPostSpawnBall
Target: 'Energy_Home'
Command: 'SetAnimation'
Parameter: 'Close'
Durch diesen Parameter schließt sich das Prop_Dynamic nach jedem Ballspawn einmal automatisch. Ohne die Veränderung am 'Ball Count' würde der Ball nachher nicht gelöscht werden, wenn er in den Trigger des Ballfängers kommt. Es ist also wichtig, dass dieser Wert '1' beträgt.
Der Ballempfänger
Um den Ballempfänger zu bauen, brauchen wir Folgendes:
2x Prop_Dynamic
1x Trigger_Multiple
1x Filter_Combineball_Type
1x Relay_Logic
Als Erstes setzen wir das erste Prop_Dynamic mit dem Model des Ballfängers ('models/props/combine_ball_catcher.mdl') an einen geeigneten Platz. Hierbei sollte auf ein Loch in der Wand geachtet werden, denn wenn der Empfänger seine Fänger-Animation abspielt, zieht er sich in die Wand zurück. Das Prop_Dynamic umgeben wir mit dem Trigger_Multiple. In der Nähe sollten das Filter_Combineball_Type-Entity und das Logic_Relay liegen. Innerhalb des Ballfängers muss ein weiteres Prop_Dynamic platziert werden, das erst aktiv ist, wenn der Trigger ausgelöst und somit der Ball "gefangen" wurde. Es hat das Model des Balls und wird durch das Logic_Relay erst einmal ausgeschaltet.
Prop_Dynamic:
Name: 'NewHome'
World Model: 'models/props/combine_ball_catcher.mdl'
Prop_Dynamic:
Name: 'Ball_Stand'
Model: 'models/effects/combineball.mdl'
Filter_Combineball_Type:
Name: 'Ball_Filter'
Filter Mode: 'Allow Entity that matches criteria'
Ball Type: 'Launched by point_combine_ball_launcher'
Logic_Relay:
Start Disabled: 'no'
Output:
My Output Named: 'OnSpawn'
Target: 'Ball_Stand'
Commando: 'Disable'
Trigger_Multiple
Name: 'TriggerMultiple2'
Filter: 'Ball_Filter'
+ Output:
My Output Named: 'OnTrigger'
Target: '!activator'
Commando: 'Kill'
Delay: '0.1'
+ Output:
My Output Named: 'OnTrigger'
Target: 'New Home'
Commando: 'SetAnimation'
Parameter: 'close'
+ Output:
My Output Named: 'OnTrigger'
Target: 'New Home'
Commando: 'SetAnimation'
Parameter: 'closed'
Delay: '2.00'
+ Output:
My Output Named: 'OnTrigger'
Target: 'Ball_Stand'
Commando: 'Enable'
+ Output:
My Output Named: 'OnTrigger'
Target: 'BallShooter'
Commando: 'Disable'
Dieses Aufgebot an Outputs wird aktiviert, sobald der Energieball eines Energieballgebers bemerkt wird. Dieser wird augenblicklich vernichtet, eine Animation des Ballfängers wird abgespielt und der vorher versteckte Ball aktiviert.
Weiter zur nächsten Seite: Indikatoren
|