[SOURCE] Game_Score, Game_End
Grundlagen dafür sind das Input Output System und Umgang mit dem filter_activator_team (ein Tutorial ist zu finden auf http://www.thewall.de/content/half-l...torials:filter
und das Entity wird erklärt unter http://www.thewall.de/content/half-l...activator_team)
Fangen wir mal mit dem game_score Entity an.
Als erstes bauen wir uns einen ganz normalen Raum und überlegen uns etwas das erledigt werden muss, um Punkte zu bekommen, z.B. einen Schalter drücken oder einen Trigger auslösen. Wenn wir dies gebaut haben benötigen wir einen filter_activator_team (später wenn man eine richtige Map baut benötigt man zwei, eins für jedes Team). Diesen geben wir den Namen team_filter und machen bei Filter Team Number das Team, welches den Punkt erhält, in meine Fall Counter-Terrorist. Mann kann auch Terrorist machen, oder wenn man für HL2DM mapt Combine oder Rebell.
Als nächstes benötigen wir ein game_score , ein Entity das einem Spieler oder einem Team eine eingegebene Azahl von Punkten vergiebt. Wir geben dem Entity einen Namen, z.B. score.
Bei points to add geben wir die Punkte an, die der Player oder das Team bekommt, ich hab mal eins gelassen. Den Punkt Master können wir ignorieren, wir schauen uns aber mal die Flags an. Hier kann man einstellen, ob die Punkte das Team bekommt, indem man einen Häckchen bei Team Points machen, wenn man ihn weglässt bekommt der Player, der es auslöst, die Punkte. Bei Allow Negative müssen wir nur ein Häckchen machen falls wir wollen, das unserem Player die Punkte abgezogen werden.
So nun ist alles komplett, jetzt müssen wir nur noch die Verbindungen herstellen, wir fangen mal mit dem func_button an, der alles auslöst. Wir gehen auf Outputs und stellen ein OnPressed , team_filter und bei Via TestActivator, damit später unser game_score aktiviert wird.
Nun gehen wir auf unseren team_filter zu Outputs, stellen ein OnPass (d.h. wenn es ausgelöst wird von der Team Seite, die auch eingestellt wurde), score und ApplyScore, damit uns die eingestellte Score gewährt werden.
Nun ist alles komplett, wenn wir als CT im Spiel dann auf den Knopf drücken, bekommen wir jedesmal einen Punkt (oder uns Team, je nach dem was eingestellt wurde).
So nun zum game_end.
Dieses bewirkt, dass die Runde Ende und die Map gechanged wird, also so als ob die Spiel Zeit einer Map abgelaufen wäre. Ich habes zu meiner Map von oben hinzugefügt, es kann durch alles ausgelöst werden, z.B. durch einen logic_counter usw.. Ich machs aber ganz einfach und lass das Spiel enden, wenn ein falsches Team auf den Knopf drückt (in meinem Fall ein Terror). Dazu fügen wir einfach das game_end Entity ein und geben ihn den Namen end.
Jetzt gehen wieder zurück auf unser filter_activator_team zu den Outputs. Hier stellen wir jetzt OnFail ein, end und bei Via EndGame, wenn jetzt also ein Terror im Spiel auf den Knopf drückt ist das Spiel vorbei.
So nun könnt ihr eure Fun Maps machen, hier ist noch meine Test Map, viel Spaß.