Punkte miteinander vergleichen(MX)

dirkgently

Erfahrenes Mitglied
Hallo.
Ich möchte ein Spiel in Flash umsetzten.
Mann kann sich das wie ein Dartspiel vorstellen.

man hat 3 Versuche einen hohen Punktewert zu erreichen. Der höchste soll immer genommen werden.

Man hat 3 Durchgänge. Aber es klappt nicht, das der jew. höchste Punktewert genommen wird. Es wir immer der 1. Punktewert genommen und ich weiss nicht, was daran falsch ist.
Ich möchte vergleichen, ob der neue Punktewert höher als der bisherige ist (siehe unten) klappt aber nicht.


//abfrage Punkte
fpos = _root.dart._x +50;
zpos = _root.zielscheibe._x;

if(fpos<zpos){

differenz += fpos-zpos}

else{ differenz += zpos-fpos}


differenz2 = differenz +100;

//jetzt kommt das, was nicht klappt.!!!
if (differenz2 >=0 && differenz2>punkte) {
punkte =differenz2;}

Vielleicht hat jemand eine Idee.?
Dank schon mal. Gruss
 
hi
ich glaube man bräuchte die fla um alles nachvollziehen zu können, aber ich schiess einfach mal ins Blaue:
Ich weiß zwar nicht was genau du bezweckst und wie groß die Abstände der beiden MovieClips sein können aber bei der if-Abfrage

if(fpos<zpos){

differenz += fpos-zpos}

else{ differenz += zpos-fpos}

kommen für die Variable 'differenz' nur negative Werte raus, da du immer den größeren _x-Wert vom Kleineren abziehst. kann sein das du das so wolltest, dann bräuchte ich die .fla für andere Fehlerquellen..

*sancho*
 
Danke schon mal.
Aber das mit der Differenz funktioniert.

Die Punktberechnung soll sich 3Mal wiederholen. Das wird durf ne andere Variable gelöst und jedesmal soll überprüft werden, ob mehr Punkte erreicht worden sind.
Ist das der Fall, so soll der neu (höhere) Punktewert angezeigt werden.

(So nach dem Motto- du hast 3 Bälle, der höchste Wurf wird gewertet)
 
wie gesagt dann bräuchte ich die ganze Fla.
Bin jetzt erstmal Nachtschicht schieben und dann kann ich irgendwann morgen mal nachschauen, vielleicht kümmert sich ja aber auch jemand anderes vorher drum..

*sancho*
 
Ich danke dir.!

Ich hab aber mittlerweile den Fehler selbst gefunden. ;-)
Ein + war zuviel sonst war alles o.k.

(differenz += fpos-zpos)

Hätte ohne + sein müssen, da sich das sonst bei jedem durchgang ja ändert.

Trotzdem Danke.
Deshalb nervt mich die Programmierung etwas ein Zeichen nicht richtig und nichts funktioniert.
 
Zurück