Objekt Event

    • Objekt Event

      Hallo miteinander :)

      Wie ihr wisst migriere ich mein Poker-Projekt auf eine neue 3D Umgebung (Ultimate3D).

      Nun hab ich das Problem, dass ich in vielen Objekten die Maus und Keyboard Events verwendet habe, welche mit der Ultimate3D Engine nicht mehr ausgeführt werden...

      Ich habe nun die Idee, dass ich in einem Objekt unter Step die z.B Mausklick prüfen könnte und wenn gegeben, dann die Event für alle Objekte manuell ausführen.

      Nun gibt es eine Möglichkeit, dass ich den Code für ein Objekt, welcher in diesem Objekt unter z.B Mausklick Event drinne ist, manuell ausführe, auch wenn für den Gamemaker selbst dieses nicht entspricht..??

      Ansonsten müsste ich alle Mausklick und solche Events in den Step der Objekte migrieren..

      Oder fällt jemanden noch ne andere Idee ein :)?

      Liebe Grüsse
      Sandro
    • Such mal in der Hilfe nach event_perform(), dass sollte genau das Richtige für dich sein. Damit kannst
      du Events ausführen, unabhängig davon, ob die eigentliche Event Bedingung erfüllt wurde.
      ___________________________________________________________
      Beware of wild pointers
      ______Hinweis für Allergiker: Kann Spuren von Ironie enthalten_____
    • Mir war so, als würde event_perform() nicht helfen. Ich habe für meine U3D-Sachen immer diesen kleinen Code:

      GML-Quellcode

      1. mbleftold = mbleft ; mbleft = keyboard_check_direct(mb_left) ;
      2. mbrightold = mbright ; mbright = keyboard_check_direct(mb_right) ;
      3. mbmidold = mbmid ; mbmid = keyboard_check_direct(4) ;
      4. if ( mbleft) && (!mbleftold) event_user(0) else // pressed
      5. if (!mbleft) && ( mbleftold) event_user(1) else // released
      6. if ( mbleft) event_user(2) ;
      7. if ( mbright) && (!mbrightold) event_user(3) else // pressed
      8. if (!mbright) && ( mbrightold) event_user(4) else // released
      9. if ( mbright) event_user(5) ;
      10. if ( mbmid) && (!mbmidold) event_user(6) else // pressed
      11. if (!mbmid) && ( mbmidold) event_user(7) else // released
      12. if ( mbmid) event_user(8) ;
      Alles anzeigen

      "mb_left" ist =1 , "mb_right" ist =2, und "mb_middle" ist =3. Trotzdem muß man für "middle mouse button" nach 4 fragen, nicht nach 3 - frag mich nicht warum.
      Und ich benutze wie man sieht auch die user-events dafür. Das Objekt heißt übrigens auch Maus, und erledigt... naja - Käse eben.

      Edit: event_perform funktioniert doch, Ihr hattet recht. Sollte man wohl auch verwenden, ist übersichtlicher.

      Dieser Beitrag wurde bereits 12 mal editiert, zuletzt von Melancor ()

    • Benutzer online 1

      1 Besucher