Zeige Ergebnis 1 bis 4 von 4
  1. #1
    Benutzerbild von BIoodstar
    Registriert seit
    Okt 2007
    Beiträge
    9
    Likes
    0

    Arrayindex von größtem Wert lesen

    Hallo!

    Kennt ihr einen komfortablen Wert um ein Array zu sortieren, bzw. den Index des größten Elements sich ausgeben zu lassen?

    Ganz einfaches Beispiel: Wenn man den Spieler mit den meisten Einheitenkills ausgeben möchte, wie macht ihr das?

    Gruß und danke

    BIoodstar


  2. #2
    Benutzerbild von Amorphis
    Registriert seit
    Jan 2012
    Beiträge
    212
    Likes
    0
    Das ist mit einer Schleife und einer zusätzlichen Variable möglich.

    Vor der Schleife lässt Du den ersten Wert des Arrays in der Variable speichern und
    in der Schleife lässt Du pro Durchlauf den Inhalt der Variable mit dem nächsten Index des Arrays miteinander vergleichen und speicherst den größeren Wert in der neuen Variable.

    Die Schleife könntest Du solange laufen lassen wie die Größe des Arrays ist. Bei 8 Spielern also 8 mal oder Du lässt die Schleife solange laufen wie die Größe des Arrays -1 ist. -1 weil der erste Wert ja schon vor der Schleife in der Variable ist und Du den nicht mit sich selbst vergleichen brauchst. Bei letzterm Fall müsstest Du aber auch die Schleife so starten lassen das sie erst beim zweiten Index anfängt, sonst wird der letzte Index vom Array ausgelassen.

    Wenn Du das Array nicht sortierst oder in einer zufälligen Reihenfolge befüllst, müsstest Du dann ja wissen welcher Wert zu welchem Spieler gehört.

    Reicht Dir das so schon oder soll ich Dir einen Beispiel Auslöser fertig machen?

  3. #3
    Benutzerbild von BIoodstar
    Registriert seit
    Okt 2007
    Beiträge
    9
    Likes
    0
    Hey Amorphis,

    danke die Info reicht, zumindest für dieses Problem. Hatte schon mit dem Gedanken gespielt es so zu machen, habe jedoch gehofft, es gäbe bereits eine Funktion im Editor die ich noch nicht gefunden habe...
    Die Ranglistentrigger in WC3 konnten das ja....

    Perfekt wäre es, wenn ich ein ganzes Array der Größe nach sortieren könnte, das einerseits den Wert und den Ursprungsindex von des Wertes (in dem Fall den Player) ausgibt.

    Sortieralgorithmen gibt es genug, man müsste es nur als Trigger oder in Galaxy realisieren.

    Wenn jemand Lust hat dafür einen Trigger zu bauen - viel spaß
    Ansonsten mache ich das selber, wenn ich soweit bin ^^

  4. #4
    Benutzerbild von Amorphis
    Registriert seit
    Jan 2012
    Beiträge
    212
    Likes
    0
    Das was ich dir erklärt hatte kannst Du durch 2 oder 3 Zeilen erweitern und hast einen Sortieralgoryhtmus. Allerdings Bubble Sort

    Es gibt aber auch im Galaxy Editor die Möglichkeit per fertiger Funktion eine Rangliste (also eine richtige "Rangliste", keine Rangliste aus Dialogen) zu sortieren. Dabei konnte man auch Spalten verknüpfen und eine Sortierspalte festlegen.

    Ich wollte Dir die Auslöser hier zeigen, aber ich habe vergessen wie man die Tags dafür waren das die vernünftig angezeigt werden..
    Du kannst Dir die Auslöser aber auch auf Blizzards Aiur Chief Map angucken. An der hatte ich mich auch orientiert.
    Geändert von Amorphis (07. Oktober 2014 um 19:04 Uhr)

Forumregeln

  • Es ist dir nicht erlaubt, neue Themen zu verfassen.
  • Es ist dir nicht erlaubt, auf Beiträge zu antworten.
  • Es ist dir nicht erlaubt, Anhänge hochzuladen.
  • Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
  •