Punkte bildlich darstellen

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Punkte bildlich darstellen

    Hi @ all,
    ein ähnliches Thema gibt es bestimmt schon, ich habe aber keine passenden Stichwörter für die Suche gefunden und somit war diese erfolglos.

    Ich hab das Problem, dass ich die Punkte/den Score als Bild darstellen will. Es ist ein Multiplayerspiel, beide sind am gleichen PC. Wenn einer einen Punkt erzielt, soll dieser als Gelber Kreis am oberen Bildschirmrand erscheinen. Bei einem zweiten Punkt soll ein zweiter Kreis daneben kommen. Das geht bis 11. Wenn der Gegner Punkte erzielt sollen die Kreise oben rechts erscheinen. So, und mein Problem ist, ich hab zwar eine Möglichkeit gefunden es zu machen, aber diese ist sehr Ressourcenfressend und spätestens alle 30sekunden spielzeit wird das spiel um 50% langsamer. Ich hab es so gemacht:


    If score is equal to 1

    Create Instance of Object Kreis

    If score is equal to 2

    Create Instance of Object Kreis


    Und das geht dann immer so weiter, aber bei 2 Spielern x 11 solchen "Test Variable" Dingern, also insgesamt 22, ist das etwas zu viel. welche möglichkeit gibt es sonst noch?

    PS: Falls es dieses Thema tatsächlich schon mal gab bitte einen Link hier rein kopieren und Entschuldigung :D
  • hi!

    also das problem ist, wenn du es so machst wird im jeden step-event ein punkt erstellt, desshalb ist es so ressourcenfressend.
    hab dir ein beispiel angehängt wie eine mögliche lösung aussehen könnte (hab mich bemüht es einfach zu halten ;)).



    mfg.snake5
    Dateien

  • Mach es folgendermaßen:

    Den Kreis erstellst du nur als Sprite, Objekt brauchst du dafür nicht.
    Für den Score erstellst du dir zwei Variabeln, sagen wir "Player1Score" und "Player2Score".
    Diese erhöhst du dann jeweils relativ um einen Punkt.

    Um diese dann bildlich darzustellen, nimmst du einfach folgenden Script und setzt ihn in das Draw-Event.

    Quellcode

    1. for (i = 0; i < Player1Score; i += 1)
    2. {
    3. draw_sprite(sprKreis,-1,100+i*20,50)
    4. }
    5. for (i = 0; i < Player2Score; i += 1)
    6. {
    7. draw_sprite(sprKreis,-1,400+i*20,50)
    8. }

    Im Script werden die Kreise für das Beispiel an Position x=100 und x=400 gesetzt, musst du natürlich anpassen.
    Genauso wie den Abstand dazwischen. Dafür änderst du jeweils die Zahl 20.

    Welche GM Version benutzt du, könnte dir das auch als fertige Beispiel erstellen.
    ---------------------------
    http://games.pixas.de
    ---------------------------
  • Danke für die Antworten. Ich hab Version 8.0 Pro, mit der ich noch nicht so lange arbeite und ich hab auch noch von zuvor 8.1 Lite auf dem Computer.
    Ich probier es gleich mal aus, ich schreib dann nacher ob es funktioniert hat.

    :thumbsup: :thumbsup: :thumbsup: :thumbsup: :thumbsup: :thumbsup: :thumbsup: :thumbsup: :thumbsup:
    Edit: Danke es hat geklappt, auch wenn ich sehr lange gebraucht hab^^ Endlich hab ich keine Performanceprobleme mehr :D Ich werde mit der Zeit sicher noch ein paar Fragen haben, bis dann.

    mfg Nico

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von NicoM ()

  • Ich hab es mit beiden versionen erstellt zum üben aber ich hab dann das von snake genommen weil ich besser mit drag&drop arbeiten kann. dann bekomme ich es nächstes mal vielleicht auch hin ohne in diesen thread zu schauen. Ich hoffe du bist nicht enttäuscht dass ich nicht deine genommen hab? ^^ ;)

    PS: Hast du die Spiele auf der Seite in deiner Signatur erstellt? Sehen gut aus :thumbup: