In diesem Tutorial erkläre ich, wie man in seiner Counter-Strike: Source Karte an einer beliebigen Stelle eine von mehreren, vorher definierten Waffen zufällig erscheinen (spawnen) lässt. Dazu benötigen wir einen Auslöser (ein trigger_once oder in unserem Fall ein logic_auto), einen logic_case für die zufällige Auswahl und für jede Waffe jeweils ein env_entity_maker, ein point_template und das weapon_*-Entity selbst.
Erstelle die Waffen, aus denen sich nachher der Zufall eine heraussuchen soll, als normales weapon_*-Entity. Du kannst sie auch gleich mit voller Munition spawnen lassen. Wir geben diesen dann entsprechende Namen wie „deagle“, „m4a1“, „awp“ oder so.
Jetzt benötigen wir für jede Waffe ein point_template und am besten wieder mit passenden Namen wie „temp_deagle“, „temp_m4a1“, „temp_awp“ und so weiter. Außerdem belegen wir das erste Template (also nicht das erste Entity, sondern in jedem point_template-Entity das Template 1) mit den entsprechenden Waffennamen „deagle“, „m4a1“, „awp“ und so weiter.
Jetzt brauchen wir für alle späteren Fallunterscheidungen des logic_case ein env_entity_maker, wo dann auch die Waffe gespawnt wird. Dort stellen wir nur den Namen („maker1a“, „maker1b“ und so weiter) und das Point_template To Spawn mit den Namen „temp_deagle“, „temp_m4a1“, „temp_awp“ und so weiter ein.
Damit sich unsere zufällige Waffe zu Rundenbeginn spawnt, setzen wir in unsere Map ein logic_auto und gehen in seine Outputs-Optionen. Jetzt fügen wir einen Output mit folgenden Einstellungen hinzu:
Wir erstellen gleich neben dem logic_auto ein logic_case mit dem Namen „case1“, der alle möglichen Fälle verwaltet. Für jeden Case stellen wir einen beliebigen Namen ein (zum Beispiel „1“, „2“ und so weiter) (ist unwichtig, entscheidend sind die Output-Einstellungen) und fügen dem Entity Outputs hinzu:
Für jede mögliche Waffe müsst ihr also einen case-Namen geben und in den Outputs oben stehende Liste abarbeiten (nur halt mit „OnCase2“/„maker1b“, „OnCase“/„maker1c“ usw.).
Ich habe übrigens die Namensformatierung (maker1b = im ersten Zufallsgenerator der zweite mögliche Fall) so gewählt, da man ja vermutlich nicht nur eine Zufallswaffe in seinem Level haben möchte, sondern mehrere. Jetzt kann man sie nämlich „maker2“, „maker3“ und so weiter benennen. Als Auslöser für zusätzliche Zufallswaffengeneratoren braucht man nur das eine logic_auto, das man dann mit neuen Outputs zu den - pro Zufallswaffengeneratoren einen - logic_case erweitert.
Ich hoffe, dass das Tutorial verständlich genug war und dass ihr alles hinbekommen habt. Falls etwas nicht funktioniert, geht das Tutorial nochmal Zeile für Zeile durch, schaut ob alle Input/Output-Verbindungen funktionieren oder meldet euch als allerletzte Lösung im Forum.