Archiv verlassen und diese Seite im Standarddesign anzeigen : Zufall
Hallo ^^
Ich baue grad ein Zufallsscript
Variable = Zufall 1 - 4
Abfrage 1
dann das
ende
Abfrage 2
dann das
ende
usw. bis 4
aber die zufallszahl wird nur einmal bestimmt beim spielstart :(
wie kann die ständig abgefragt werden?
Hab es schon mit einer schleife probiert aber dann hängt das game durchgehend
mfg
Biffi
Caractacus
03.07.2006, 20:54
Parallel Process und dann ein Clear Timer oder so.
Dürfte funktionieren.
Damit es nicht hängt musst du in die Schleife einen Wait 0.0 reingeben, oder du machst es als Parallel Process ganz ohne schleife.
EDIT:Mist, zweiter.
Aber ich glaub, er will die Zufallszahl andauernd ändern.
Naja mit der schleife und den wait funzt es jetzt halb ^^
Der macht am anfang random aber wenn
er 1mal bedingung = 4 gemacht hat kommt immer nur die bedingung 4
mfg
Biffi
Blutorgie
03.07.2006, 21:44
vielleciht hast du was dazugebaut, welches den wert der zufallsvariable immer schön auf 4 stellt:confused:
Es wäre gut wenn du sagst, was genau das Script machen soll. Vielleicht läßt sich das Problem dann einfacher lösen.
Schau auf jeden Fall mal nach, ob du bei der Variable anstelle von Set nicht Plus stehen hast.
Mein Code sieht so aus
<>Zykl.
<>Var. ändern :[0021:Zufall]Set, Zufall [1*5]
<>Bedingung:Varbl[0021:Zufall]-1
<>Tab ändern :[0004:Rupie Grün]-TAB AN
<>Gehe zu Lbl: 1Nr
<>
:Ansonsten
<>Bedingung:Varbl[0021:Zufall]-2
<>Tab ändern :[0005:Rupie Blau]-TAB AN
<>Gehe zu Lbl: 1Nr
<>
:Ansonsten
<>Bedingung:Varbl[0021:Zufall]-3
<>Tab ändern :[0006:Rupie Rot]-TAB AN
<>Gehe zu Lbl: 1Nr
<>
:Ansonsten
<>Bedingung:Varbl[0021:Zufall]-4
<>Tab ändern :[0007:Rupie Gold]-TAB AN
<>Gehe zu Lbl: 1Nr
<>
:Ansonsten
<>Bedingung:Varbl[0021:Zufall]-5
<>Tab ändern :[0008:nichts]-TAB AN
<>Gehe zu Lbl: 1Nr
<>
:End-Fall
<>
:End-Fall
<>
:End-Fall
<>
:End-Fall
<>
:End-Fall
<>Wrtn: 0,0s
<>
:Zykl. end
<>LABEL: 1Nr
<>Tab ändern :[0003:Busch1]-TAB AN
<>
Mehr ist das nicht ^^
mfg
Biffi
Wenn die Schleife das erste mal läuft, wird der Switch entsprechend der zufallsvariablen gesetzt. Da das ganze 60 Mal in der Sekunde neu berechnet wird, sind nach einer unmerklichen zeit alle 4 Switches an.
Dadurch, dass die eventseiten immer von hinten gelesen werden, wird immer die letzte Seite ausgeführt, deren Bedingungen erfüllt sind, in deinem Fall wahrscheinlich die Seite, die den 4. Switch zum Start braucht. Egal ob die anderen auch an sind, oder nicht, wird das ignoriert.
Du kannst entweder die Switches vor dem neuberechnen ausschalten, oder du arbeitest besser ganz ohne Switches und lässt die Eventseite einfach vom Wert der Zufallsvariablen abhängen.
Wenn Events durch diese zufallsberechnung ihre Gestalt ändern, solltest du es natürlich nicht dauernd ändern, dann könntest du das CE auf Call stellen, die Schleife rausgeben und bei jeem Mapwechsel das Zufallsberchnungsevent callen.
ok danke werde ich machen ^^
mfg
Biffi
übelster Held
04.07.2006, 19:10
Mein Code sieht so aus
<>Zykl.
<>Var. ändern :[0021:Zufall]Set, Zufall [1*5]
<>Bedingung:Varbl[0021:Zufall]-1
<>Tab ändern :[0004:Rupie Grün]-TAB AN
<>Gehe zu Lbl: 1Nr
<>
:Ansonsten
<>Bedingung:Varbl[0021:Zufall]-2
<>Tab ändern :[0005:Rupie Blau]-TAB AN
<>Gehe zu Lbl: 1Nr
<>
:Ansonsten
<>Bedingung:Varbl[0021:Zufall]-3
<>Tab ändern :[0006:Rupie Rot]-TAB AN
<>Gehe zu Lbl: 1Nr
<>
:Ansonsten
<>Bedingung:Varbl[0021:Zufall]-4
<>Tab ändern :[0007:Rupie Gold]-TAB AN
<>Gehe zu Lbl: 1Nr
<>
:Ansonsten
<>Bedingung:Varbl[0021:Zufall]-5
<>Tab ändern :[0008:nichts]-TAB AN
<>Gehe zu Lbl: 1Nr
<>
:End-Fall
<>
:End-Fall
<>
:End-Fall
<>
:End-Fall
<>
:End-Fall
<>Wrtn: 0,0s
<>
:Zykl. end
<>LABEL: 1Nr
<>Tab ändern :[0003:Busch1]-TAB AN
<>
Mehr ist das nicht ^^
mfg
Biffi
ähm... welchen tieferen sinn hat denn die schleife???
die goto labels kann ich ja noch verstehen... ich nehme
mal an, dass der break cycle befehl noch nicht entdeckt wurde, mit
dem man die schleife beendet...^^
aber die schleife ist total überflüssig...
denn.. in jedem fall kommt eine zahl zwischen 1 und 5 raus...
und jeder fall wird abgefragt... und am ende jeder abfrage kommt ein
goto label 1, welcher aus dem cycle hinausführt, dieser somit abgebrochen wird...
willst du damit erreichen, dass der code immer wieder ausgeführt wird???
das geht anders... mach den komischen cycle weg, die labels und
goto labels auch, die sind überflüssig (momentan brauchst du die aber noch, um aus der schleife rauszukommen..)
und tu den übrig gebliebenen code in nen event, welches du mit einen angemessenen wait versiehst und dann auf parallel progress stellst...
und wenn du willst dass immer nur ein switch aktiv ist (vom aktuellen zufallswert abhängig) dann sieht dein code so aus:
<>Var. ändern :[0021:Zufall]Set, Zufall [1*5]
<>Bedingung:Varbl[0021:Zufall]-1
<>Tab ändern :[0004:Rupie Grün]-TAB AN
<>Tab ändern :[0005:Rupie Blau]-TAB Aus
<>Tab ändern :[0006:Rupie Rot]-TAB Aus
<>Tab ändern :[0007:Rupie Gold]-TAB Aus
<>Tab ändern :[0008:nichts]-TAB Aus
:End-Fall
<>
<>Bedingung:Varbl[0021:Zufall]-2
<>Tab ändern :[0005:Rupie Blau]-TAB AN
<>Tab ändern :[0004:Rupie Grün]-TAB Aus
<>Tab ändern :[0006:Rupie Rot]-TAB Aus
<>Tab ändern :[0007:Rupie Gold]-TAB Aus
<>Tab ändern :[0008:nichts]-TAB Aus
:End-Fall
<>
<>Bedingung:Varbl[0021:Zufall]-3
<>Tab ändern :[0006:Rupie Rot]-TAB AN
<>Tab ändern :[0004:Rupie Grün]-TAB Aus
<>Tab ändern :[0005:Rupie Blau]-TAB Aus
<>Tab ändern :[0007:Rupie Gold]-TAB Aus
<>Tab ändern :[0008:nichts]-TAB Aus
:End-Fall
<>
<>Bedingung:Varbl[0021:Zufall]-4
<>Tab ändern :[0007:Rupie Gold]-TAB AN
<>Tab ändern :[0004:Rupie Grün]-TAB Aus
<>Tab ändern :[0006:Rupie Rot]-TAB Aus
<>Tab ändern :[0005:Rupie Blau]-TAB Aus
<>Tab ändern :[0008:nichts]-TAB Aus
:End-Fall
<>
<>Bedingung:Varbl[0021:Zufall]-5
<>Tab ändern :[0008:nichts]-TAB AN
<>Tab ändern :[0004:Rupie Grün]-TAB Aus
<>Tab ändern :[0006:Rupie Rot]-TAB Aus
<>Tab ändern :[0007:Rupie Gold]-TAB Aus
<>Tab ändern :[0005:Rupie Blau]-TAB Aus
:End-Fall
<>
<>Wrtn: 0,0s
<>
:Zykl. end
<>Tab ändern :[0003:Busch1]-TAB AN
und das ganze kommt dann in nen pp-event..
mfg
üH
@übelster Held deine methode funzt gar nicht
ist irgendwo bestimmt noch ein fehler drin ^^
mfg
Biffi
was willst du denn genau damit bewirken? irgendwie macht das ganze keinen sinn... dass was der übelste held da geschrieben hat ist das einzig wirklich sinnvolle für alle verwendungsmöglichkeiten.
jetzt frage ich mcih aber soll das ein script dafür sein, dass wenn man einen busch umhaut eine bestimmte rupie fallen soll? weil wenn das der fall ist, solltest du imo ehh komplet ohne schleife arbeiten sondern einen common event nehmen, der wenn es soweit ist einfach aufgerufen wird. dann wird auch kein wait von 0.0 gebraucht
In Wirklichkeit bräuchte man garkeine Switches, die vari reicht vollkommen.
Ich habs oben schon theoretisch erklärt und da biffi keine konkreten fragen mehr stellt und auch nichts in richtung hilfe, es geht noch immer nicht sagt, geh ich mal davon aus, dass es funktioniert.
jupp funzt ja auch ^^
hatte ich vergessen zusagen ^^
aber danke nochmals
mfg
Biffi
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.