Du bist nicht eingeloggt! Möglicherweise kannst du deswegen nicht alles sehen.
  (Noch kein mods.de-Account? / Passwort vergessen?)
Zur Übersichtsseite
Hallo anonymer User.
Bitte logge dich ein
oder registriere dich!
 Moderiert von: Cortex


 Thema: zug mit buttons beim rundenstart triggern
erste ungelesene Seite | letzter Beitrag 
[KRK]M@sta{V}

Arctic
Hi ihrs,

bei mir hat sich da so ein "kleines" Prob. beim Basteln eines Zuges/Aufzuges (die Funktion ist bei beidem die selbe) aufgetan.
Da ich mich schon durch sehr viele Tuts und Foren gelesen habe währe es auch möglich das ich das ganze etwas zu kompliziert angehe aber alle meine vorherigen Versuche mit weniger Entitys, Functions und Einstellungen brachten noch schlechtere Ergebnisse als die von mir hier geschilderte "Konfiguration" des Zuges.
Entschuldigt bitte wenn der Text etwas länger wird aber ich versuche mein Problem genau darzustellen um Missverständnisen vorzubeugen fröhlich.

Hier einmal der Soll-Zustand:

Es soll ein Zug mit 2 Schaltern zwischen zwei Stationen hin und her bewegt werden.
Logischerweise schicken die Schalter den Zug von einem path_corner zum anderen.
Anfangs soll der Schalter am path_corner2 keine Funktion haben, da der Zug schliesslich am path_corner1 steht und von dort aus zum Bewegen gebracht werden soll. Sprich wenn der Zug am path_corner2 steht soll der Schalter am path_corner1 keine Funktion haben (der Zug steht nicht dort also kann der Schalter ja auch nichts zum Fahren bringen;-) )
Bei jedem Rundenstart soll der Zug wieder auf die Startposition gesetzt werden und auch die entsprechenden Schalter wieder die Funktionen (An/Aus) haben.

So weit so gut.

#####

Der Aufbau:

1x func_train
2x path_corner
4x func_button
(mitlerweile)3x multimanager
2x multi_source
(mitlerweile)6x env_global
(mitlerweile)1x func_door


func_train (mit origin brush):
name: zug
first stop target: stop1

multi_manager3 (Steuerung zum Rundenstart):
name: mm_rundenstart
-Keyvalues
zugstatus_vorne_an: 0
zugstatus_hinten_aus: 0

func_door:
target: mm_rundenstart

Je 3x env_global für vorne und hinten

Vorne:
path_corner1 (vorne):
name: stop1
next stop target: stop2
fire on pass: zugstatus_vorne_an
-Flags
[x]wait for retrigger

func_button1 (vorne):
targetted object: mm_zug_vorne
master: ms_zug_vorne
-Flags
[x]don't move

multi_manager1 (vorne):
name: mm_zug_vorne
-Keyvalues
zug: 0
zugstatus_vorne_aus: 0

env_global1:
name: zugstatus_vorne_start
global state to set: zugstatusvorne
trigger mode: on
initial state: on
-Flags
[x]set initial state

env_global2:
name: zugstatus_vorne_an
global state to set: zugstatusvorne
trigger mode: on
initial state: on
-Flags
[ ]set initial state

env_global3:
name: zugstatus_vorne_aus
global state to set: zugstatusvorne
trigger mode: off
initial state: off
-Flags
[ ]set initial state

multisource:
name: ms_zug_vorne
global state master: zugstatusvorne

Hinten:
path_corner2 (hinten):
name: stop2
next stop target: stop1
fire on pass: zugstatus_hinten_an
-Flags
[x]wait for retrigger

func_button2 (hinten):
targetted object: mm_zug_hinten
master: ms_zug_hinten
-Flags
[x]don't move

multi_manager2 (hinten):
name: mm_zug_hinten
-Keyvalues
zug: 0
zugstatus_hinten_aus: 0

env_global1(4):
name: zugstatus_hinten_start
global state to set: zugstatushinten
trigger mode: on
initial state: on
-Flags
[x]set initial state

env_global2(5):
name: zugstatus_hinten_an
global state to set: zugstatushinten
trigger mode: on
initial state: on
-Flags
[ ]set initial state

env_global3(6):
name: zugstatus_hinten_aus
global state to set: zugstatushinten
trigger mode: off
initial state: off
-Flags
[ ]set initial state

multisource:
name: ms_zug_hinten
global state master: zugstatushinten

#####

Die Schalter steuern die jeweiligen multi_manager an die den Zug und den Status der env_globals ansprechen.
Die env_globals sind für den Status des Zuges ( und eigentlich auch der Schalter) verantwortlich und werden von der multisource gespeichert.
Die func_door soll den dritten multi_manager zu jedem Rundenstart triggern um den Status vorne auf "on" und den Status hinten auf "off" zu setzen.

Mit diesem Aufbau funktioniert der Zug soweit auch ganz gut, nur das nach der ersten Runde, wenn der Zug benutzt wurde, der Schalter am path_corner1 (so zu sagen der Startschalter) zwei mal gedrückt werden muss um den Zug in Bewegung zu setzen. Leider weiss ich nicht bzw. kann ich mir nicht vorstellen was das erste mal Drücken des Schalters bewirkt und warum erst der zweite Druck auf den Schalter den Zug bewegt.

Ich danke schon einmal im Vorraus herzlichst

MfG

Masta aka Perfect N.A.P
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von [KRK]M@sta{V} am 10.04.2009 17:59]
10.04.2009 17:32:29  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
[KRK]M@sta{V}

Arctic
Kurz gesagt, wie bekomme ich ein env_global bei jedem Rundenstart auf einen bestimmten Status.
Nach dem laden der Map zählt soweit ich weiss das Flag "Set Inital State" aber wie steuere ich das zur 2. ode 40. Runde??

'MfG Der M@sta
15.04.2009 22:55:20  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
 Thema: zug mit buttons beim rundenstart triggern


mods.de - Forum » Mapping -> Half-Life » 

Hop to:  

| tech | impressum