Flashhilfe.de - Flash Community

Highscore Ausgabe array Problem [Flash 6]

 


AntwortenRegistrieren Seite1  

GERA-WERBUNG#1
Benutzerbild von GERA-WERBUNG
Beiträge: 6
Wohnort: Gera
Registriert: May 2010

09.05.2010, 21:52

Hallo an die Flash Gemeinde,

ich habe ein dringendes Problem und suche mir hier im Forum bereits die Finger wund.

Da es hier offensichtlich viele Leute gibt die deutlich mehr Ahnung haben als meine Wenigkeit, einmal die kurze Bitte um Hilfe.

Folgendes Problem:
Ich habe ein Quiz programmiert das soweit wunderbar läuft.
Nun gehts an die Highscore Auswertung:

In Variablen liegen folgende Werte:
Name_1
Klasse_1
Konfektion_1
Punkte_1

(wobei die 1 erzeugt wird aus der Anzahl der Spieldurchläufe also dynamisch - die Werte liegen aber in gespeicherten Variablen)

Die Sortierung mittels eines modifizierten Scriptes aus diesem Forum funktioniert auch hervorragend.

////

trace("vor der Sortierung: ");
for (var i:Number = 0; i<ranking.length; i++) {
   trace("Spielername: "+ranking[i].team+" - Punktzahl: "+ranking[i].points+" - Klasse: "+ranking[i].klasse+" - Konfektionsgröße: "+ranking[i].konfekt);
}

ranking.sortOn("points",Array.NUMERIC | Array.DESCENDING);

trace("\nnach der Sortierung: ");

for (var i:Number = 0; i<ranking.length; i++) {
   trace("Spielername: "+ranking[i].team+" - Punktzahl: "+ranking[i].points+" - Klasse: "+ranking[i].klasse+" - Konfektionsgröße: "+ranking[i].konfekt);

}

Was mir jetzt nicht gelingt ist die Werte, die per Trace wunderschön untereinander sortiert stehen wieder in dynamische Textfelder für eine Screenausgabe umzuleiten bzw. anzuzeigen.

Vielleicht ist einfach nur nach vielen Tagen der Kopf blind für die Lösung, aber eigentlich muss es doch einfach sein, oder?

Ich brauche sortiert die besten 10 Plätze mit Angabe: Spielername, Punktzahl, Klasse & Konfektionsgrösse!

Kann mir bitte jemand zeitnah helfen, da ich morgen früh das Programm abliefern muss...

Besten Dank im voraus!
Schlagwörter: Array, Highscore, problem
vindel#2
Benutzerbild von vindelFlashhilfe.de Moderator
Beiträge: 3000
Wohnort: Köln
Registriert: Oct 2007

09.05.2010, 22:10

Hallo,

ja dir sollte man helfen können. du musst quasi nur statt "trace()" den Namen deines textfeldes angeben. Also Beispielsweise ausgabetext.text += "Dein text"; wenn dein textfeld den Namen "ausgabetext" hat.
ActionScript:
1
2
3
4
5
6
ausgabetext.text = "\nnach der Sortierung: ";

for (var i:Number = 0; i<ranking.length; i++) {
  ausgabetext.text += "\nSpielername: "+ranking[i].team+" - Punktzahl: "+ranking[i].points+" - Klasse: "+ranking[i].klasse+" - Konfektionsgröße: "+ranking[i].konfekt;

}

durch das "+" vor dem gleichheitszeichen füngst du den Text ans Ende des vorheringen an. Ansonsten würde dein textfeld immer neu überschrieben werden!
public Weltformel(Problem){
      if (Problem gelöst) return Lösung;
      else Weltformel(kleiners Problem);
}
GERA-WERBUNG#3
Benutzerbild von GERA-WERBUNG
Beiträge: 6
Wohnort: Gera
Registriert: May 2010

Themenautor/in

09.05.2010, 22:28

Hallo vindel,

erst einmal vielen, vielen Dank für den schnellen Lösungsansatz.

Das hilft schon einmal als Notlösung viel weiter!

Aber vielleicht gäbe es noch eine Möglichkeit die Ausgabe gesplittet in Variablen zu legen.

Z.Bsp.: Für Platz 1
in Variable oder Textfeld (das ist egal)
den Namen von Platz 1
die Punktzahl von Platz 1
die Klasse von Platz 1
die Konfektionsgröße von Platz 1

und das Gleiche für die weiteren 9 Plätze auch.
Wenn diese noch keine Werte haben, weil noch nicht gespielt, sollten sie leer bleiben.

Siehst Du da eine Lösung, ohne großen Sonntagabendaufwand?
stealth_axg#4
Benutzerbild von stealth_axg
Beiträge: 172
Wohnort: Wiesbaden
Registriert: May 2009

09.05.2010, 23:10

Guten Abend,
Ich gebe auch mal meinen Senf dazu;-)

Ich würde ein DataGrid als Ausgabeelement nehmen.
Das würde ungefähr so aussehen:

Originalgröße anzeigen

Das ist eine einfache Tabelle, die das Ganze schön sauber darstellt.

Beispiele, die ich auf die schnelle gefunden habe:
Nummer 1
Nummer 2

PS: Man ist die Welt klein, ich komme auch aus Gera:-)
Debschwitz 4 EVER!
Actionscript...O.o?.... Ist das ein neues Gewürz, was stinkt?!

API für C++ & Java
Geändert von stealth_axg am 09.05.10 um 23:11 Uhr
GERA-WERBUNG#5
Benutzerbild von GERA-WERBUNG
Beiträge: 6
Wohnort: Gera
Registriert: May 2010

Themenautor/in

09.05.2010, 23:15

Klingt verlockend, aber ich weis ehrlich gesagt nicht wie ich meine Ausgabe darin umleiten kann, aber ich werde es einfach einmal versuchen.

Und ja, so klein ist die Welt.
vindel#6
Benutzerbild von vindelFlashhilfe.de Moderator
Beiträge: 3000
Wohnort: Köln
Registriert: Oct 2007

09.05.2010, 23:31

Hallo,

das das Datagrid ist natürlich optimal für soetwas...
Ansonsten erstellst du dir für jede Spalte ien textfeld und weist jedem dann den jeweiligen Wert zu.
ActionScript:
1
2
3
4
5
6
for (var  i:Number = 0; i<ranking.length; i++) {
  name.text += "\nSpielername: "+ranking[i].team;
  punkte.text += "\nPunktzahl: "+ranking[i].points;
  klasse.text += "\nKlasse: "+ranking[i].klasse;
  konfektionsgroesse += "\nKonfektionsgröße: "+ranking[i].konfekt;
}

So hast du dann deine Werte quasi in einer Tabelle.
public Weltformel(Problem){
      if (Problem gelöst) return Lösung;
      else Weltformel(kleiners Problem);
}
GERA-WERBUNG#7
Benutzerbild von GERA-WERBUNG
Beiträge: 6
Wohnort: Gera
Registriert: May 2010

Themenautor/in

09.05.2010, 23:48

Vielen, vielen Dank,

damit ist es möglich das Ergebniss ausreichend zu formatieren, damit es den Ansprüchen genügt.

Ich wünsche noch einen schönen Restsonntag (die paar Minuten)

der Miguel

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Javascript new line [Flash CS5] 23.11.2020 - user01234
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2021 Sebastian Wichmann - Flashhilfe.de