PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Einige Fragen zu einigen optionen



shazam
27.06.2006, 18:05
Hallo leute,

ich stelle hier mal ein paar Fragen bezüglich Optionen des Makers.

1. Was ist eine Schleife? Wofür ist die da?

2. Was ist der Moveall bzw. Stopall Befehl? Wofür sind der da?

Caractacus
27.06.2006, 18:15
1.) Kann ich nicht so gut beschreiben...
2.) Move all=wenn du ein Move Event gemacht hast solltest du ein Move All machen damit Texte u.a. erst nach dem bewegen der Chars kommt. Stop all stoppt afair alle move Events.

Phönix Tear
27.06.2006, 19:18
1) Eine Schleife ist ein Bereich in dem die angegebenen Befehle eine bestimmte Anzahl von malen wiederholt werden können. Ich schätze du beziehst dich auf den Cycle (der ja mit dem Deutschpatch Schleife heißt). Den zu erklären sollte möglich sein ^^:

<>Change Variable „Durchläufe“, set 0
<>Cycle:
<>Change Variable „Durchläufe“ + 1
<>Fork Variable „Durchläufe“ >= 100
<><>Break Cycle
<>End:
<>End Cycle:
Dieser kleine Codeabschnitt rechnet jetzt die Varibale “Durchläufe” 100 mal +1, bist sie 100 ist ^^°. Der Code hat an sich keinen Sinn, sollte die Sache aber deutlich machen. Würde ich das „Break Cycle“ in meiner „Fork Condition“ weglassen würde diese Variable unendlich oft +1 genommen, was du sicher nicht willst, da es Unmengen an Ressourcen fressen würde (bei mir rechnete der das in einer Sekunde 203333 mal +1 XD).
Direkte Verwendung findet das z.B. bei Kampfsystemen oder Vereinfachungen über den Variablen-Nummern-Befehl. Das ist allerdings schon etwas komplexer und (nachdem ich versucht habe es zu erkläre, es dann aber lieber wieder gelöscht habe) nicht wirklich wichtig.
Wichtig ist nur das du weist das Befehle in einem Cycle so lange wiederholt werden bis irgendwo ein „Break Cycle“ auftaucht.
Es gibt übrigens noch eine zweite Variante einen Cycle zu basteln (die ich immer gerne benutze da ich die original Cycles nicht mag ^^°). Diese basiert auf den „Label“-Markierungen im Code. Hier ein entsprechende Codeabschnitt:

<>Change Variable „Durchläufe“, set 0
<>Label 1
<>Change Variable „Durchläufe“ +1
<>Fork Variable „Durchläufe < 100
<><>Goto Label 1
<>End:
Dies macht nun exakt das gleiche wie oben der Cycle. Die Variable „Durchläufe“ wird 100 mal +1 gerechnet, nur finde ich diesen Code irgendwie freier. Ein Cycle macht bei mir aus irgendeinem Grund ein ungutes Gefühl ^^°
Na ja, soviel dazu, ich hoffe das ist einigermaßen verständlich…

2) Ein „Move All“ Befehl bezieht sich nur auf Move-Events. Dir ist sicher schon aufgefallen das ein „Move-Event“ den restlichen Ablauf im Maker nicht stoppt. Das ist auch gut und richtig so. Schwierig wird es dann nur bei Sachen wie Videosequenzen in denen eine zweite Aktion erst dann ausgeführt werden soll, wenn ein „Move-Event“ beendet worden ist (z.B der Held läuft zu einer Person und spricht sie an, da soll doch der Text noch nicht kommen wenn er gerade erst losgelaufen ist). Dazu gib es nun den „Move All“ Befehl. Setzt du diesen hinter das besagte „Move-Event“ wartet der Maker mit dem Rest des Codes so lange bis das „Move-Event“ beendet worden ist. Das Problem dabei ist nur, dass der Maker wartet, bis ALLE „Move-Events“ beendet worden sind. Sollte also z.B. im Hintergrund ein anderer Char bewegt werden (per „Move-Event“) (wenn er z.B. von einem Common-Event gesteuert wird das ihr auf einer Vorgefertigten Route umherbewegt), wartet das Event in dem das „Move All“ steht auch, bis dieser besagte andere Char seine Bewegung beendet hat. In AKS ist das sehr unpraktisch, da hätte ich mir von den Entwicklern gewünscht das sie die „Move All“ Befehle an einzelne „Move-Event“ gebunden hätten.
Zum „Stop All“ Befehl muss ich sagen das ich den noch nie verwendet habe. Ich kenn auch den Sinn davon nicht wirklich und die letzten 5 Minuten herumprobieren mit dem Befehl haben mich auch nicht weitergebracht. Vielleicht hat ja jemand anders die Lösung für diese Frage. (Ich dachte immer damit kann man gleich zum Ende des Events springen wenn man ihn benutzt, ist aber scheinbar nicht der Fall…)

Na ja, ich hoffe es hat dir soweit geholfen…

mfg
Phönix Tear