PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Undefinierbarer Fehler



Orange4
26.03.2008, 19:24
Hallo Community ^^

Tja, ich hab n Problem in nem Event (RM2K).
Folgendes SOLL passieren:

Über modifizieren wird der Schaden an 3 Variablen übergeben (Einerstelle, Zehnerstelle und Hunderterstelle).
Anhand der Werter der Variablen wird die Zahl des verursachten Schadens über dem Monster angezeigt. Das ganze funktioniert auch:

http://imagesload.net/daten_no/1206551838_Mistake3.PNG

Aber nur solange der errechnete Schaden nicht genau 10 beträgt.
Dann wird nämlich in der Zehnerstelle eine Zahl zu wenig angezeigt. Bei 10 Schaden erscheint nur die 0 der Einzerstelle:

http://imagesload.net/daten_no/1206551890_Mistake4.PNG

Wie man an folgendem Bild sieht, beträgt die Variable "Zehnerstelle" den Wert 10.

http://imagesload.net/daten_no/1206551861_Mistake5.PNG

So, und hier der Eventcode, der ausgeführ wird:

http://imagesload.net/daten_no/1206551749_Mistake1.PNG

Da 10 nicht größer als 10 ist, geht die Abfrage weiter. Da 10 kleiner als 20 ist, müsste doch jetzt die 2 angezeigt werden? Der Code wird wie gesagt korrekt ausgeführt, solange keine glatte Zehn als Ergebnis kommen.

Hier noch als letztes die modifikation der Variablen, vlt steh auch nur ich extrem aufm Schlauch und ich hab nen Denkfehler drin XD

http://imagesload.net/daten_no/1206551792_Mistake2.PNG

Das ganze ist mir sehr suspekt, das macht mich grad echt fertig. Zumal ich solche Berechnungen eigentlich sehr oft verwende.

Ich hoffe, jemand kann mir helfen XD
Danke schonmal im Vorraus ^^

GSandSDS
26.03.2008, 20:10
Öhm... erstmal steht mod für „modulo“ und nicht „modifizieren“. ^^ Zweitens: Sicher, dass „less“ in diesem Fall für „kleiner“ (<) steht und nicht „kleiner gleich“ (=<)? Ich bin mir nicht mehr sicher. Ich habe den V2-Patch installiert, weswegen dort nun die mathematischen Symbole bei mir stehen. Wenn „less“ für „kleiner gleich“ steht, würde der Fehler jedenfalls erklärbar sein. 10 ist kleiner gleich 10, daher wird die erste Fork genommen. Eine Hunderterstelle gibt es nicht — genauer gesagt ist der Modulo davon kleiner 100 — weswegen die Zehnerstelle auch nicht angezeigt wird. Ergebnis: 0

Orange4
26.03.2008, 20:39
@ GSandSDS:
Hab ich nicht gewusst mit modulo, wieder was dazu gelernt, danke ^^

Ja, das less steht für < und nicht <=
Daran liegts leider nicht. Trotzdem danke ^^

Cherry
26.03.2008, 20:59
http://cherry1.ch.funpic.de/less_and_less_than.png

Bei "10" steht "less", sonst aber "less than". Es ist also doch so, wie SDS sagte! "less" steht offenbar für "<=" und "less than" für "<"; du hast also bei "10" "<=" reingehauen!

Such nicht nach dem Sinn, es gibt keinen. Übersetzungsfehler *schulterzuck*

mfG Cherry

EDIT: @SDS: Schreibt man "≤" nicht im Allgemeinen "<=" und nicht "=<"? Egal, wahrscheinlich 'n Tippfehler...

The Best Isaac
26.03.2008, 21:05
Such nicht nach dem Sinn, es gibt keinen. Übersetzungsfehler *schulterzuck*

Jap, ist es wohl wirklich. Das gleiche Problem hatte ich nämlich auch beim Übersetzen des 2K3. Da hab ich dann direkt "<=", "<", "!=" usw. eingebaut, weil das eindeutiger ist.

@Orange4: Überprüf es einfach mal mit einem einfachen Beispiel. Speichere in eine Variable den Wert 4 und überprüf dann auf "less" und dann auf "less than". Dann wirst du ja sehen, was rauskommt.

GSandSDS
26.03.2008, 21:29
EDIT: @SDS: Schreibt man "≤" nicht im Allgemeinen "<=" und nicht "=<"? Egal, wahrscheinlich 'n Tippfehler...Ich habe es so geschrieben, damit man es nicht mit einem Folgepfeil verwechselt, den es in der Mathematik auch gibt. Dass man es auch einfach < schreiben kann, daran habe ich jetzt nicht gedacht. Ein Hoch auf den Unterstrich. xD

Orange4
26.03.2008, 21:30
So was blödes sollte mir aber eigentlich nicht mehr passieren XD

Und ich bin gestern abend noch so oft das Skript durchgegangen X____X

Hm, das hab ich geändert, innerhalb des Kampfes wird noch immer die 1 nicht angezeigt, allerdings nur die 1 nicht. Außerhalb des Kampfes kann ich das Event einwandfrei aufrufen.
Aber das kann mit vlt mit Events innerhalb des Kampfes reagieren, warum auch immer, das muss ich selbst prüfen XD

Vielen Dank für eure Hilfe http://www.multimediaxis.de/images/smilies/old/sm_12.gif http://www.multimediaxis.de/images/smilies/old/sm_12.gif http://www.multimediaxis.de/images/smilies/old/sm_12.gif

EDIT:
Argh bin ich blöd XD
(Einsicht ist der erste Weg zur Besserung XD)
Vielleicht sollte ich das richtige Event aufrufen XD
Damit gehts dann auch im Kampf, vielen Dank nochmal, hat sich somit erledigt.
Ab sofort wird nicht mehr nach um 11 gemakert ^^