Problem mit Mausklicks

  • GM 8

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

  • Problem mit Mausklicks

    Hallo ihr,



    ich bin schon seit einer Weile am GM dran, habe aber erst jetzt dieses Forum gefunden, also erstmal Hallo an alle.



    Ich habe das Problem, dass ich ein Object auf das Event left_button reagieren lasse. Dadurch erstellt das Object ein neues (anderes) Object an seiner eigenen Position und zerstört sich dann selbst (es handelt sich hier um die Simulation eines MDE - Handhelds und den entsprechenden buttons). Leider reagiert das erstellte, 2.Object auch auf den Mausklick! Also praktisch ein Klick und zwei Events, die ausgelöst werden. Ich habe schon viel mit mouse_clear(mb_left) usw. versucht, hat aber leider alles nicht funktioniert!



    Hat da vielleicht jemand einen Lösungsvorschlag? Danke im Vorraus!



    Lieber Gruß, Benny
  • Also...benutze DnD...Object 1 event Left_Button:

    Quellcode

    1. mouse_clear(mb_left);
    2. image_index = 1;
    3. image_speed = 0;
    4. ...
    5. ->instance_create(x, y , obj_MDE_senden); <-
    6. instance_create(MDE.x - 85, MDE.y - 215, obj_MDE_showartikelnr);
    7. instance_create(MDE.x - 55, MDE.y - 215, obj_MDE_showartikel);
    8. instance_create(MDE.x - 65, MDE.y - 230, obj_MDE_artikelnrchoose);
    9. instance_create(MDE.x + 26, MDE.y - 227, obj_MDE_showprize);
    10. instance_create(obj_MDE_screen.x, obj_MDE_screen.y - 40, obj_screen_menu_bestellungchoose);
    11. instance_create(obj_screen_menu_bestellungchoose.x - 64, obj_screen_menu_bestellungchoose.y - 5, obj_screen_menu_bestellungchoose1);
    12. instance_create(obj_MDE_zurueck.x, obj_MDE_zurueck.y , obj_MDE_abbruch);
    13. with(obj_MDE_zurueck)
    14. {
    15. instance_destroy();
    16. }
    17. MDE.enter = "NULL";
    18. instance_destroy();
    Alles anzeigen




    obj_MDE_senden reagiert dann eben auch sofort auf das event left_button, obwohl ich ja oben bei Object 1 mouse_clear eingefügt hab!



    Lieber Gruß, Benny
  • Okay...also ich habe jetzt eine Lösung gefunden...im create event eine variable auf 1 und diese im step event wieder auf 0 und den mausklick erst bei 0 ausführen lassen...dann geht das. Was ich nicht verstehe ist, wieso Left_Pressed gar nix auf meinen Buttons auslöst. Komisch...naja...danke erstmal für die Hilfe!



    Lieber Gruß, Benny
  • Also...ich kann das ja nochmal genauer erklären.



    Ich möchte praktisch, dass eine Person einen Gegenstand hinter sich herzieht. Das funktioniert auch soweit ganz gut, dass der Gegenstand der Person folgt. Das Problem ist die Kollisionsabfrage, wenn der Gegenstand gegen eine solide Instanz stößt. Dann soll es es so sein, dass der Gegendstand der Person nicht mehr folgt (funktioniert gut) UND sich ein Stück weit von der soliden Instanz wegbewegt, sozusagen aus der Kollision hinaus.



    Habe versucht, das mit Bounce_Solid zu realisieren, dann hört er aber nicht mehr auf sich zu bewegen. Ich muss also wissen, wann keine Kollision mehr vorliegt um dann die Geschwindigkeit auf null zu setzen.



    Gruß, Benny
  • Du kannst zwei sachen machen.

    Entweder du stellst eine friction ein (etwa 0.3) damit das Objekt ausgebremst wird wenn es zurückprallt.

    Oder du benutzt die funktion position_free() und position_empty().

    Diese decken Collisionen auf.

    Schau in der Hilfe wie man sie benutzt :)

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)
  • Irgendwie ist das ganz schön schwierig :P . Es kann unter gewissen Umständen (sprite ungünstig gedreht) immer noch vorkommen, dass die instanz in einer anderen stecken bleibt und ums verrecken nicht mehr rausgeht. Vor allem, wenn das sprite "tief drin" ist :D .



    Ich habe jetzt in der folgenden Instanz statt move_towards_point(object.x, object.y, objectspeed) einfach mp_potential_step genommen und damit "scheint es" bis jetzt zu funktionieren, dass die Instanz sich gar nicht erst festfährt sondern vorher stehen bleibt.



    Das sprite des folgenden Objects ist einfach extrem ungünstig, da es in jeder direction andere Dimensionen hat und es so schnell zu Verkantungen kommen kann.



    Aber so gehts ja erstmal...danke für die Hilfe!



    Gruß, Benny
  • äh, mp-pontetial_step funktioniert ei bisschen anders.

    Eigentlich sollte es der mauer ausweichen können und trotzdem einen Weg finden (ich benutze es zumindest in meinem RTS).


    Aber schön das es scheinbar geht xD

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)