PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Choice abbrechen verhindern / ESC blockieren



Jadoo
20.12.2006, 03:45
Hallo,

ich bin gerade dabei, so eine Art Ratespiel zu gestalten und hab da ein Hindernis entdeckt.

Wenn ich bei der Option Show Choice dann Frage + Antworten angebe und man die richtige Antwort wählt, dann soll es zB. 50 Taler oder sowas dafür geben. Nun ist es so, dass sobald man die ESC Taste drückt, wird die Show Choice ja abgebrochen (was ja auch nicht weiter schlimm ist, wenn man denn das Spiel abbrechen muss oder sowas). Das Problem ist dann nur, ruft man das Ratespiel wieder auf, kommt dieselbe Frage nochmal und somit könnte man dies dafür ausnutzen, immer die selbe Frage zu beantworten und dann hochzupushen was das Geld angeht.

Gibt es da eine Möglichkeit da was zu ändern?

Danke im Voraus! :)
Jadoo

Edit: Habe eben gesehen, dass es noch die Optione "ignore" gibt bei der Choice. Wenn ich diese nehme, würde das Abbrechen verhindert werden oder? Dann wäre das ja somit geklärt. Aber eventuell hat ja jemand noch eine Idee, wie man das Ratespiel dann noch anders editieren könnte, was das verhindern von hochpushen des Geldbetrages betrifft. Wenn ihr genauere Infos über meine Vorstellung über das Ratespiel benötigt, sagt bescheid http://www.multimediaxis.de/images/smilies/old/s_065.gif

benzor
20.12.2006, 08:00
Ich hab da so eine Idee:

Denk dir mehrere Fragen für jede Stufe aus.

Dann lass die mit Change Variable/Rand eine Zufallszahl generieren und wähle mittels Forks aus, welche Frage dann gestellt wird. So kommt nicht jedes mal die gleiche Frage.

Allerdings kennt man dann auch bald alle Fragen und das Problem ist wieder da.#
Ich würde folgendes machen:

MaxGeldFrage1 = 50
Frage1Richtig = Anzahl der Häufigkeit, das Frage 1 beantwortet richtig

GeldBekomm = MaxGeldFrage1 / Frage1Richtig
Nun nimmt der Betrag linear ab.


Für eine Expotentielle Abnahme:
schleifennummer = Frage1Richtig - 1
korrekturfaktor = 90
endfaktor = 100

cycle bis Schleifennummer = 0
endfaktor * korrekturfaktor
schleifennummer -1

endfaktor / 100

GeldBekomm = MaxGeldFrage1 * endfaktor

Entschuldige das soll nur ein vorgehen sein, sieht im Makercode leicht anders aus ( bisschen komplizierter)

Nun fügst du einfach dem Geld deines Helden den Betrag von GeldBekomm hinzu.

Nun bekommt man jedes mal weniger geld beim beantworten der Frage.
Dass muss man nur für jede Stufe nochmal machen.

Jadoo
20.12.2006, 16:24
Hallo benzor,

erstmal vielen Dank für deine Idee. Klingt ein bisschen kompliziert, stimmt, werde es aber mal ausprobieren. Aber diese Idee mit den Variablen/Forks als Zufallsgenerator für die Fragen ist schonmal garnicht so schlecht, danke :)

In dem Spiel was ich mache sollte diese Quizshow so eine Art Möglichkeit sein, an Geld zu kommen wenn man keines mehr hat. Idee ist dabei, dass jede Runde aus zB. 10 Fragen besteht und man alle Fragen beantworten muss. Ich könnte es auch so machen, dass erst ab der Hälfte und danach bei Lösung aller Fragen ein Betrag zu gewinnen ist, das würde die Sache etwas erschweren. Oder einen geringen Geldbetrag und dann steigernd für jede Frage.

Was mir momentan noch unklar ist bezüglich der Realisierbarkeit: Wenn man eine Quizrunde beendet hat, sei es durch Verlieren oder Gewinnen, dann sollte es nicht möglich sein, schon die nächste Runde zu starten, sondern erst nach einer bestimmten Zeit. Dafür könnte man doch eine Zyklusvariable nutzen oder sowas? Oder halt im Spiel bei irgendeinem anderen Event dann einen Switch einschalten, der das Quiz wieder möglich macht und solange wird dann immer eine Message angezeigt wie "Du kannst momentan noch nicht an einem neuen Spiel teilnehmen, versuche es später nochmal"

Jadoo http://www.multimediaxis.de/images/smilies/old/s_065.gif

benzor
20.12.2006, 17:11
bau einen parallellen common event mit einem starttab quizdeaktiviert
setze einfach einen wait mit der zeit die das quiz deaktiviert sein soll
dann deaktiviere den tab wieder

wenn du das quiz startest setzt du diesen tab auf an und überprüfst vorher ob das tab gesetzt ist

Dhan
21.12.2006, 20:17
Ne einzelne Wait ist irgendwie nen unsauberer Stil... ich empfehl für sowas nen Ticker, d.h. einfach einen Parallelen Prozess, der jede Sekunde eine Variable erhöht. Gleiche Wirkung aber sauberer Code.

Wenn sich Fragen nicht wiederholen sollen, mach für jede einfach nen Switch der aktiviert wird, wenn man sie hat und der aktiviert verhindert, dass die Frage nochmal gestellt wird. Im Code der Frage muss dann natürlich nen Switch aktiviert werden oder ne Variable verändert damit das Skript nicht einfach doppelte Fragen überspringt sondern auch nen Ersatz macht.

Jadoo
23.12.2006, 03:47
Hallo benzor und Dhan,

werde eure Vorschläge mal ausprobieren, vielen Dank dafür. Berichte dann, ob es funktioniert hat oder falls noch Fragen dazu auftreten sollten http://www.multimediaxis.de/images/smilies/old/s_065.gif

Jadoo