Blöde Frage: ? Wofür steht das erste X

  • GM 8
  • Blöde Frage: ? Wofür steht das erste X

    Hallo Forum

    Starte mit meinem GM8 einen neuen Versuch. :rolleyes:
    zu meiner Frage: Wofür steht das X.
    Habe bei mir im Object Properties: obj_Ball_Tuerlis im KeyboardEvent <left> im Execute Code folgenden Code stehen,
    womit ich ein obj_Stein_Tuerkis "NACH" einer Berührung mit dem obj_Ball_Tuerkis löschen möchte. hier der Code:


    if direction = 45
    {// Ist die momentane Richtung nach "rechts oben", dann prüfe.

    if not collision_point(x-50,y,obj_Stein_Tuerkis,1,1)
    {// Besteht keine Collision mit einem Abstand der linken Seite der Koordinate x-50 des obj_Ball_Tuerkis mit dem obj_Stein_Tuerkis, dann

    var i; //Wofür steht dieses erste X hinter instance_place ?(
    i = instance_place(x-18, y, obj_Stein_Tuerkis);
    if (distance_to_object (i) >= 1)
    {
    with (i)
    {
    instance_destroy ();
    }
    }

    direction = 135;
    // ändere die momentane Richtung nach "links oben".
    }
    }

    Laut GML heißt das: instance_place(x,y,obj) Gibt die ID der Instanz von Objekt obj an, welche getroffen wird,....


    Das heißt :
    Wenn mein obj_Stein_Tuerkis getroffen wird, ich gehe mal davon aus. Woher weiß dann instance_place(x)
    welche Seite von meinem obj_Stein_Tuerkis getroffen wurde. Oder bezieht sich das "X" auf meinen obj_Ball_Tuerkis.
    Irgendwie werden solche Sachen einfach nicht
    gut genug erklärt.
    :motz:

    Das könnte ich ja denn auch genau definieren, indem ich dann sage x-16. (linke Seite vom obj_Ball_Tuerkis ). :rolleyes:
    Also wofür steht das X


    Vielleicht hat ja jemand eine Antwort für mich.
    Ich bedanke mich schon mal im Voraus.


    mfg

    ALOC
  • ( X und Y ) steht für Koordinatensystem.
    Im Mathematik müsstest du das schon gelernt haben.

    X+1 = Rechts/Seite
    X-1 = Links/Seite

    Y+1= Unten
    Y-1 = Oben
    ------------------------

    Ist ganz einfach, schau mal auf Raum unten auf die "X,Y" dann
    weißt du was wir meinen.
  • Hallo kaano123 und Henrik1235

    das Koordinatensystem ist mir schon bekannt, aber ihr habt immer noch nicht meine Frage beantwortet.
    X+1 = Rechts/Seite ===> von was?



    Wofür steht dieses erste X hinter instance_place ?(
    i = instance_place(x-18, y, obj_Stein_Tuerkis);



    bezieht sich das auf mein obj_Ball oder obj_Stein.


    mfg
    ALOC
  • x beschreibt die aktuelle Position auf der x-Achse der aktuellen Instance. x+1 ist also um ein Pixel rechts von der aktuellen Instance.

    GML-Quellcode

    1. i = instance_place(x-18, y, obj_Stein_Tuerkis);


    i ist entweder noone (wenn keine Instanze gefunden wurde) oder die ID des Steines 18 Pixel links neben der aktuellen Instance.
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von henrik1235 ()

  • Objekte sind Prototypen bzw. Entwürfe von Instanzen, Instanzen sind demnach das was wirklich in deinem Raum rumläuft. Jede Instanze hat eine einzigartige ID.

    Wenn du nun ins Step Event von obj_Object

    GML-Quellcode

    1. x+=2;

    eingibst, wird sich jede Instanze von obj_Object pro Step um zwei Pixel nach Rechts bewegen.

    GML-Quellcode

    1. show_message(string(id));

    im Step Event gibt dir die ID der aktuellen Instanze aus. Die aktuelle Instanze ist also da wo der Code ausgeführt wird.
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • Hallo Henrik1235
    Mir ist das schon alles klar wenn x+ oder x-.. eingebe und wohin sich irgendwas bewegt, aber wofür nochmal
    steht das erste x . ist das der Anstand zwischen Stein und Ball oder Ball und Stein.
    Andere Frage: worin besteht der Unterschied zwischen dem code
    var i;i = instance_place(x-18, y, obj_Stein_Tuerkis);
    und dem code

    var i;i = instance_place(x, y, obj_Stein_Tuerkis);


    jetzt soll keiner schreiben der eine hat x-18 und der andere hat x


    nein ich möchte die Bedeutung ohne instancenschei..e und so erklärt haben. was heißt das auf Deutsch.


    mfg
    ALOC
  • x ist erstmal nur eine Variable, mehr nicht. x-16 heißt auf Deutsch "16 weg von x". Erst durch einen Context bekommt der Code eine Bedeutung, x=x-16 würde die Instance um 16 Pixel nach Links verschieben. x=x-32 um 32 Pixel und so weiter...

    Der Unterschied ist einfach das auf einer anderen Position nach dem Objekt "obj_Stein_Tuerkis" gesucht wird.

    Es würde auch gehen:

    GML-Quellcode

    1. instance_place(42, x, Object);
    2. instance_place(42, 523, Object);
    3. instance_place(real("42"), 532, Object);
    4. instance_place(mouse_x, mouse_y, Object)
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • Irgendwie wurde das hier wohl "overthinked"

    Da der instance_place Code im obj_ball steht heißt dass das -18 px links vom Ball_tuerlis das obj_stein_tuerkis erstellt wird


    Warum machst du das ganze aber nicht einfacher und fragst im obj_stein ab ob es ein Collision-Event mit obj_Ball gibt und wenn ja, dann destroy Stein?

    out now: KNOSSOS auf itch.io
    ancient-pixel.com <<< ich freue mich über einen Besuch! ^^
  • Hallo Aku Ryou

    Erst mal danke für deine Antwort, genau das wollte ich wissen. es wird also der Abstand zwischen dem Ballmittelpunkt
    und dem Stein gemessen. :thumbsup:
    zu deiner Frage: Nein geht nicht. Grund: :S
    Also ich kann das nicht im Collision-Event des obj_Stein_Tuerkis einbinden, da der Ball erst vom Stein abprallen soll.
    Erst danach soll er gelöscht werden. Wenn er vorher gelöscht wird fährt der Ball immer weiter in die Steine.


    Dazu habe ich auch noch einen Beitrag offen "bounce" funktioniert nur von oben und unten, nicht von der Seite ? :headtouch:

    Wollte mein Projekt schon beenden, da ich mit dieser Sache nicht so richtig weitergekommen bin.

    Vielleicht hat noch jemand einen guten Tipp oder noch besser einen Code für mein bounce Beitrag. :thumbup:

    bedanke mich an allen Beteiligten des Forums
    und erkläre diesen Beitrag als geschlossen. 8)

    mfg
    ALOC
  • Benutzer online 1

    1 Besucher