Keine doppelten Objekte und Überlappungen

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

  • Keine doppelten Objekte und Überlappungen

    Hallo erstmal,

    bin hier gerade neu dazugekommen und habe noch nicht viel Erfahrung mit GameMaker und GML, weshalb meine Fragen für euch Profis bestimmt etwas komisch wiken, aber ich habe folgendes Problem.

    Ich arbeite an einem kleinem Zahlenmerkspiel und komme nicht weiter, da...

    1. ich immer von 1-9 fünf verschieden Zahlen haben will die ich der Reihenfolge nach anklicken muss um weiterzukommen. Nun ist es so dass ich bisher auch manchmal doppelte oder oder dreifache usw. Zahlen habe, also z. B. zwei mal die 1. Ich wollte eine while Schleife machen wo ich sage dass wenn das object1==object1 eine neue Zahl generiert werden solange halt es nicht mehr doppelt ist, aber ich kriegs halt nicht hin :/

    2. Zahlen liegen manchmal übereinander und ich weiß nicht wie ich das beheben kann. Außerdem ordnen sich meine Zahlen in dem Raum immer komplett random an und nicht wie ich es gerne hätte in regelmäßigen Abständen, wie in kleine Kästchen die man aber nicht sieht weil der Hintergrund halt komplett weiß sein soll.

    So das waren jetzt erstmal die beiden wichtigsten Punkte und ich bin leider auch sicher,dass bestimmt noch weitere Fragen auftachen, da ich im Bereich der Programmierung gerade erst vor ein paar Tagen angefangen habe.

    Ich will auch keinen übermäßig nerven aber gäbe es vlt. jmd. mit dem ich mich bei weiteren Fragen an ihn wenden könnte oder gibt es hier auch vlt. Einen aktiven chat oder eine gruppe oder ähnliches? Dann müsst ich nicht für meine Tausend Fragen die ich hab immer ein neues Thema aufmachen.


    Ok das wars erstmal so weit. Rechtschreibfehler bitte behalten, hab gerade alles schnell am Handy getippt. Falls noch Fragen aufkommen sollten wenn ich etwas undeutlich formuliert haben sollte einfach nachfragen. Ich würde mich echt über Hilfe freuen als kompletter Neuling.

    Gruß hertharaff
  • Ich habe die Fragestellung leider noch nicht ganz nachvollziehen können, aber wenn du wie ich verstanden habe 5 verschiedene Zahlen aus dem Pool 1-9 haben willst, so das jede Zahl nur einmal auftauchen kann, würde ich dir ds_list empfehlen. Denn abstrakter betrachtet kannst du da nicht nur die Zahlen von 1-9 Ablegen und sortieren/mischen sondern auch Objekte welche diese Zahlen repräsentieren sollen (grafisch).

    GML-Quellcode

    1. //Initialisierung
    2. list= ds_list_create();
    3. //Wenn nicht mehr benötigt
    4. ds_list_destroy(list);
    5. //zum Hinzufügen
    6. ds_list_add(list,value);
    7. //Du kannst es mischen
    8. ds_list_shuffle(list);
    9. //Und dann die ersten 5 Werte auslesen
    10. var str = "";
    11. for(i = 0; i < 5;i++) {
    12. str += string(ds_list_find_value(list, i));
    13. }
    Alles anzeigen

    Hier noch alle Funktionen

    NACHTRAG:
    nehmenwir an du speicherst nun Objekte in die Liste, welche eine Variable "wert" haben. Wenn du die Liste initialisierst speicherst du in einer Schleife die Objekte und gibst ihnen den Wert.

    GML-Quellcode

    1. var Offset = 50;
    2. var ObjWidth = 35;
    3. var ObjHeight = 35;
    4. var count = 1;
    5. var _Obj;
    6. for (i = 0; i < 3; i++) {
    7. for (j = 0; j < 3; j++) {
    8. _Obj = instance_create(Offset + (i*ObjWidth)*2, Offset + (j*ObjHeight)*2,Kasten);
    9. with (_Obj) {
    10. wert = count++;
    11. }
    12. ds_list_add(list,_Obj);
    13. }
    14. }
    Alles anzeigen

    Das Beispiel repräsentiert jetzt nicht 1:1 was du machen wolltest, aber so siehst du wie man ein Spielfeld anordnen kann, in diesem Fall 3 Reihen A 3 Felder

    132 little bugs in the code. 132 little bugs. Fix a few, set the compiler to stew, 172 little bugs in the code... :vogel:

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