Hi,
Ich will euch heute mal ein schön aufwendiges Tutorial schreiben! Wie der Thread schon sagt handelt es sich um einen Counter!
Um genau zu sein einen Counter der bei ablauf der Zeit ein ereigniss auslösen soll! In meinem Fall einen trigger_hurt!
Was benötigen wir?
1x logic_auto
1x logic_relay
1x logic_timer
2x logic_case
3x math_counter
1x func_button
Xx func_brush (welche die Zahlen angeben)
1x trigger_hurt (nur in meinem Beispiel)
So gehts!
Namen können natürlich verwendet werden wie jeder meint!
Als erster beginnen wir den Counter selbst zu brushen! Dazu machen wir einfach ein paar Quadratische Brushs die wir mit der nodraw textur belegen und auf die Vorderseite des Brushs legen wir jetzt die Zahlen, das geht mit den texturen decals/decalindustrialnumber. Jetzt müssen wir noch jeden brush einzeln benennen! Am besten so wie ich, das ist am wenigsten verwirrend mit einer_0 bis einer_9 und zehner_0 bis zehner_x (x steht für die zahl der höchsten Zehnerstelle). Jetzt noch alle einer und alle zehner Brushs jeweils übereinander legen und fertig ist der Counter... ihr könnt natürlich auch noch einen Rahmen ziehen!
Dann noch den Trigger_hurt über den gewünschten Breich legen und den Namen hurt geben und "Start Disabled" auf "Yes" setzen.
Einmal müssen wir noch brushen dann haben wir das erledigt. Nur noch einen func_button irgendwo hinsetzen wo ihr ihn gerne hättet!

Gut, eine blöde Arbeit erledigt ;)
Nun setzen wir mal, um den überblick zu bewahren, vor die Einerstellen 1x math_counter und 1x logic_case, vor den Zehnerstellen das selbe und zwischen oder vor ihnen, wie jeder möchte, den 3. math_counter, den logic_timer und das logic_relay! Soweit so gut.
Nun benennen wir jedes einzelne Entity. Ich habe für die Counter genommen: counter_einer, counter_zehner und counter_end. Für die logic_case habe ich genommen: case_einer und case_zehner. Das Relay hab ich einfach relay getauft und den logic_timer einfach timer!
Jetzt beginnen wir mit den Einstellungen.
Ab jetzt muss sehr genau gearbeitet werden, da bei den Einstellungen am meisten Fehler passieren können!
Beginnen wir mit dem counter_einer. Bei "Initial Value" geben wir "10" ein, bei "Minimum legal Value" geben wir "0" ein und bei "Maximum legal Value" geben wir "10" ein.
Nun zu den Outputs. Hier benötigen wir 3 Stück.
1. OnHitMin | counter_einer | SetValue | 10
2. OnHitMin | counter_zehner | Substract | 1 | 1 (die 2. 1 ist kein druckfehler sondern gehört bei After a Delay of Second eingetragen)
3. OutValue | case_einer | InValue
Das war alles bei diesem counter.

Nun geht es weiter zum case_einer zu den Einstellungen. Bei "OnCase01" gebt ihr "1" ein bei "OnCase02" gebt ihr "2" ein......."OnCase10" gebt ihr "0" ein!
Die Outputs werden jetzt schon schwieriger. Wir beginnen am besten Rückwärts, da er ja Rückwärts zählen soll!
OnCase10 | einer_0 | Enable
OnCase10 | einer_1 | Disable
OnCase09 | einer_9 | Enable
OnCase09 | einer_0 | Disable
OnCase08 | einer_8 | Enable
OnCase08 | einer_9 | Disable
.
.
. Immer
. so
. weiter
.
.
OnCase01 | einer_01 | Enable
OnCase01 | einer_02 | Disable

Soo einen großen Teil haben wir geschafft!
Jetzt gehen wir auf die Zehner Seite und beginnen wieder beim math_counter mit den Einstellungen.
In meinem Beispiel habe ich bei den Zehnern nur "0" und "1"
Das heist bei "Initial Value" gehört "1" hinein und bei "Minimal legal Value" "0" und bei "Maximal legal Value" "1"
Bei den Outputs haben wir diesmal nur einen:
OutValue | case_zehner | InValue

Weiter zum case_zehner. Die Einstellungen machen wir "OnCase01" "1" und "OnCase02" "0".
Die Outputs!
OnCase02 | zehner_0 | Enable
OnCase02 | zehner_1 | Disable

OnCase01 wird hier ja nicht benötigt, da wir ja nur von 1 auf 0 umschalten wollen!
Jetzt gehen wir in die Mitte! beginnen wir beim logic_relay.
Der ist dafür gut das beim RundenSpawn nicht alle Zahlen angezeigt werden sondern nur in unserem Fall die 1 und die 9!
Einstellungen sind keine notwendig also können wir gleich zu den Outputs übergehen!
OnTrigger | einer_9 | Enable
OnTrigger | zehner_1 | Enable
OnTrigger | zehner_0 | Disable
OnTrigger | einer_8 | Disable
.
.
. Alle
. anderen
. ebanfalls
. auf Disable
. setzen
.
.
OnTrigger | einer_0 | Disable

Sooo nächstes Entity wäre der counter_end
Die Einstellungen:
"Initial Value" "0"
"Minimum legal Value" "0"
"Maximum legal Value" "20" (bzw. wenn ihr mehr habt dann die höchste Zahl)
Outputs werden nur 2 benötigt.
OnHitMax | trigger_hurt | Enable
OnHitMax | timer | Disable

So weiter gehts beim timer.
Bei den Einstellungen braucht ihr nur "Refire Interval" auf "1" setzten.
Bei den Outputs folgendes eingeben:
OnTimer | counter_end | Add | 1
OnTimer | counter_einer | Substract | 1

Jetzt kommen wir noch zu unserem logic_auto.
Die Outputs:
OnMapSpawn | timer | Disable
OnMapSpawn | relay | trigger

Zu guter letzt noch der func_button!
Bei dem müsst ihr nur noch den folgenden Output setzen.
OnPressed | timer | Enable
Das wars auch "SCHON" :D
Man könnte jetzt auch noch wenn man möchte einen einen button machen bei dem man die Zeit wieder resetten kann. Dazu bräuchten wir diese 2 Outputs:
OnPressed | relay | trigger
OnPressed | counter_end | SetValue | 0
OnPressed | counter_einer | SetValue | 10 | 0.5
OnPressed | counter_zehner | SetValue| 1 | 0.5
Ich habe auch eine Beispielmap gemacht und hoffe euch hat mein Tutorial zugesagt!
Viel Spass noch!
MfG Tom
PS: Falls ihr meinen Counter aus dem Beispielmap rauskopiert und in eure Map gebt, würde ich mich über einen kleinen Eintrag in eurer Map freuen, da dieser Counter doch eine Heiden Arbeit ist wie ihr ja gerade bemerkt habt!
Die Beispielmap gibt es hier: http://www.files.to/get/179398/7mj4aiitbk