PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hilfe:Tag\Nacht System (Erster Versuch)



Altair66
02.11.2008, 17:02
Hallo, werte Community.
In der letzten zeit habe ich ein Tag\Nacht System gebastellt...Aber es funkt.nicht...Kein wunder denn das ist mein erster versuch,aber ich will wissen was falsch ist...hier:
http://npshare.de/files/b448a860/Hilfe.PNG

Fortsetzung:
http://npshare.de/files/cebde52f/Hilfe%202.PNG

Ok ich hab hier nur das TAG\NACHt System gemacht..Ohne das Nacht\Tag,damit ich erst sehe ob es klappt!:confused:

Die switches: [Tag Thur},[Tag 3a9r] sind nur symbole fuers begin einer neuen stufe in den Tag...Also der Tag hat 2 Stufen:Thur und 3a9r.

Das label 1 benutze ich eigentlich nicht...habs einfach so reingestellt,hat es ein Effekt wenn ich es lasse?

Die Variable[Uhrzeit Tag]hat 8 sets,jede Tag Stufe ehnthalten 3 Sets,auser die Nebenstufe [After:Su]hat nur zwei sets,[After\Su]ist ein Symbol feur Sonnen untergang.

Wenn die Tag\nacht Stufe zu Ende ist also:branch if[Uhrzeit Tag]is 0,\Sonnen Untergang zu Ende,[Night\Day]Symbol fuer nacht Beging On\Uhrzeit Nacht:set is 8 (Stufen)\Switch:[nacht\Tag]On der switch der die zweite Stufe des Ganzen system anmacht,also Nacht\Tag ist jetzt On(Der Common Event Nacht\Tag wird mit der Switch nacht\Tag eingeschaltet)

Ok,ich glaube soweit das ihr mich verstanden habt,
Danke im vorraus,

Altair66

cilence
02.11.2008, 17:27
Folgendes Problem:

Du lässt keine Variable vorab auf 8 setzen. Der Zyklus kann somit nicht beginnen. Ansonsten sah es zwar elend kompliziert, aber dennoch richtig aus. Ich selber würde es anders machen. ^^°

€: Die ganzen leeren "else handler" kannst du übrigens rausnehmen. Die stören nur die Übersicht.

Altair66
02.11.2008, 19:23
Folgendes Problem:

Du lässt keine Variable vorab auf 8 setzen. Der Zyklus kann somit nicht beginnen. Ansonsten sah es zwar elend kompliziert, aber dennoch richtig aus. Ich selber würde es anders machen. ^^°

€: Die ganzen leeren "else handler" kannst du übrigens rausnehmen. Die stören nur die Übersicht.

Also bevor ich den branch if variable is 8 mache muss ich:Varia oper[uhrzeit tag]set,8 machen?und danch ich die variable - 1 mache muss ich nochmal ne variable oper machen:variab oper[uhrzeit tag]set 6??also der Set ist 8,drei mal -,1 dann :variab oper [UT]set,5?

kannst du es mir bitte ein wenig genauer erklaeren,

2.Und wie kann ich eigentlich die ganzen Else Handler rausnehmen?

Hab noch mehr fragen aber ich warte bis du erst diese Antwortest,
Und vielen vielen dank fuer deine Hilfe,

mfg,Altair66

cilence
02.11.2008, 19:40
Also bevor ich den branch if variable is 8 mache muss ich:Varia oper[uhrzeit tag]set,8 machen?und danch ich die variable - 1 mache muss ich nochmal ne variable oper machen:variab oper[uhrzeit tag]set 6??also der Set ist 8,drei mal -,1 dann :variab oper [UT]set,5?

Du musst die im Loop verwendete Variable vorher nur einmal auf 8 setzen. Also die [0016: Uhrzeit : Tag]. Die Rechnung stimmte soweit schon. Die 8 ist ja nur, damit die Schleife beginnen kann. Setzt Du die Variable nicht auf diesen Wert, dann ist sie ja 0. Die Bedingung, damit die Schleife startet, ist aber 8, demzufolge geht das so noch nicht. ;)


2.Und wie kann ich eigentlich die ganzen Lese Handler rausnehmen?

Wenn Du auf Conditional Branch klickst, dann siehst Du in diesem Fenster ganz unten die Zeile:
Execute Custom Handler if Condition Not Met.
Davor ist ein Haken, den nimmst Du raus, damit die else handler nicht erscheinen. Willst Du allerdings welche haben, muss der Haken rein!

http://imageup.de/5912309/img/Unbenannt.PNG (http://imageup.de/5912309/Unbenannt.PNG)

Das Rote ist die Funktion, wie oben beschrieben. Der blaue Pfeil zeigt auf den Haken, den Du rausnehmen musst. :)

Altair66
02.11.2008, 19:55
Du musst die im Loop verwendete Variable vorher nur einmal auf 8 setzen. Also die [0016: Uhrzeit : Tag]. Die Rechnung stimmte soweit schon. Die 8 ist ja nur, damit die Schleife beginnen kann. Setzt Du die Variable nicht auf diesen Wert, dann ist sie ja 0. Die Bedingung, damit die Schleife startet, ist aber 8, demzufolge geht das so noch nicht. ;)
Also als erstes:var oper[UT]set,8 einstellen wie ich verstanden hab,nur?muss ich nichts anderes machen?


Wenn Du auf Conditional Branch klickst, dann siehst Du in diesem Fenster ganz unten die Zeile:
Execute Custom Handler if Condition Not Met.
Davor ist ein Haken, den nimmst Du raus, damit die else handler nicht erscheinen. Willst Du allerdings welche haben, muss der Haken rein!

http://imageup.de/5912309/img/Unbenannt.PNG (http://imageup.de/5912309/Unbenannt.PNG)

Das Rote ist die Funktion, wie oben beschrieben. Der blaue Pfeil zeigt auf den Haken, den Du rausnehmen musst. :)
Danke fuer deine Hilfe ey,

3.OK die tag\nacht stufe ist zu ende (also das Loop):Switch[Nacht\Tag]an,und in den Nacht\Nag commen event ist auch ein Loop und wenn nacht tag zu ende ist dann:Jump to Label 1,und ein wieder ein tag\nacht Loop und adnn wieder nacht-tag on...Ist so alles richtig??Muss ich nicht irgendwo ein Break out of Loop machen?

Und ist igentlich der Label eins so richtig eingestellt um die Ganze Schleife Tag\Nacht zu machen?Wenn nein wo muss ich die Label dann einstellen?

Danke fuer deine hilfe,
mfg,Altair66

cilence
03.11.2008, 13:45
3.OK die tag\nacht stufe ist zu ende (also das Loop):Switch[Nacht\Tag]an,und in den Nacht\Nag commen event ist auch ein Loop und wenn nacht tag zu ende ist dann:Jump to Label 1,und ein wieder ein tag\nacht Loop und adnn wieder nacht-tag on...Ist so alles richtig??Muss ich nicht irgendwo ein Break out of Loop machen?

Du machst dir das aber kompliziert. ^^

Du machst keine neue Schleife, sondern setzt den Zyklus einfach fort. Break out of Loop muss eigentlich nicht unbedingt sein. Kommt der Code im Ablauf auf End Loop, dann fängt die Schleife wieder von vorn an. Unterbrichst Du das Ganze, indem Du das parallele Event ausschaltest und nachher wiederrum anschaltest, läuft der Code an der vorher abgebrochenen Stelle weiter. Dies gilt aber nur für parallele Common Events.

Altair66
03.11.2008, 15:36
Du machst dir das aber kompliziert. ^^

Du machst keine neue Schleife, sondern setzt den Zyklus einfach fort. Break out of Loop muss eigentlich nicht unbedingt sein. Kommt der Code im Ablauf auf End Loop, dann fängt die Schleife wieder von vorn an. Unterbrichst Du das Ganze, indem Du das parallele Event ausschaltest und nachher wiederrum anschaltest, läuft der Code an der vorher abgebrochenen Stelle weiter. Dies gilt aber nur für parallele Common Events.

O.O??Also weis nicht was du damit meinst...Heist das jetzt das mein TN Sys Klappen wird?Wenn nein was soll ich bitte machen?

mgh,Altair66

cilence
03.11.2008, 15:48
Du lässt Deinen Ablauf nur nochmal rückwärts laufen und zwar machst Du dies direkt unter der Zeile weiter, wo Du den Switch 86 auf on gestellt hast. Du musst ja den Abdunklungszyklus wieder rückgängig machen, indem es wieder heller wird. So sollte das eigentlich funktionieren.

Altair66
03.11.2008, 16:51
Du lässt Deinen Ablauf nur nochmal rückwärts laufen und zwar machst Du dies direkt unter der Zeile weiter, wo Du den Switch 86 auf on gestellt hast. Du musst ja den Abdunklungszyklus wieder rückgängig machen, indem es wieder heller wird. So sollte das eigentlich funktionieren.

Tja das weis ich doch...Ich habe die Screens nur zum beispiel gemacht,
Jedenfalls Danke fuer deine hilfe,

mfg,Altair66