Android Swipen

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

  • Android Swipen

    Eine kleine Frage, warum funktioniert es nicht, dass wenn man drückt, er die Startposition setzt und sobald man loslässt und man mehr als den halben Bildschirm geswiped ist er den view port wechselt?

    GML-Quellcode

    1. if mouse_check_button_pressed(mb_left)
    2. {
    3. switch1 = mouse_x
    4. }
    5. if mouse_check_button_released(mb_left)
    6. {
    7. switch2 = mouse_x
    8. if (switch2 > switch1 + room_width/2)
    9. {
    10. view_xview[0] = view_xview[0] - 384
    11. if view_xview[0] < 0
    12. {
    13. view_xview[0] = 768
    14. }
    15. }
    16. else if (switch2 < switch1 - room_width/2)
    17. {
    18. view_xview[0] = view_xview[0] + 384
    19. if view_xview[0] > 768
    20. {
    21. view_xview[0] = 0
    22. }
    23. }
    24. else
    25. {
    26. }
    27. switch1 = 0
    28. switch2 = 0
    29. }
    Alles anzeigen

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

  • Hast du die Views auch an?
    Schau in den Raum unter views ob die Hacken bei "Enable the use of Views" und bei "Visible when room starts" gesetzt sind.

    Ich hab den Code so ausprobiert.

    GML-Quellcode

    1. if mouse_check_button_pressed(mb_left){
    2. switch1 = mouse_x
    3. }
    4. if mouse_check_button_released(mb_left){
    5. switch2 = mouse_x
    6. if (switch2 > switch1){
    7. view_xview[0] = view_xview[0] - 384
    8. if view_xview[0] < 0{
    9. view_xview[0] = 768
    10. }
    11. }
    12. else if (switch2 < switch1){
    13. view_xview[0] = view_xview[0] + 384
    14. if view_xview[0] > 768{
    15. view_xview[0] = 0
    16. }
    17. }else{
    18. }
    19. switch1 = 0
    20. switch2 = 0
    21. }
    Alles anzeigen
  • switch1 darf am Ende nicht auf 0 gesetzt werden. Du drückst und released die Maustaste nicht in einem step. D.h. deine Variable ist unnötig, weil sie immer 0 ist. Die Variable kann ruhig die ganze Zeit einen Wert haben, sie wird ja beim nächsten Maustastendruck wieder neu gesetzt. Aber ich glaube wirklich beheben wird das dein Problem wahrscheinlich nicht.
  • SmiaGOLD schrieb:

    switch1 darf am Ende nicht auf 0 gesetzt werden. Du drückst und released die Maustaste nicht in einem step. D.h. deine Variable ist unnötig, weil sie immer 0 ist. Die Variable kann ruhig die ganze Zeit einen Wert haben, sie wird ja beim nächsten Maustastendruck wieder neu gesetzt. Aber ich glaube wirklich beheben wird das dein Problem wahrscheinlich nicht.


    Du übersiehst, dass das erst beim Release/Loslassen resettet wird. Andererseits kann man das resetten auch einfach raus lassen, da dies keinen Effekt hat.
    Ein Bug ist mehr als nur ein Bug, es ist ein... Käfer!
    Egal, wie gut du eine Mauer baust, sie fällt um.... der klügere gibt nach :D

    Willst du mit mir auf Discord Chatten/Quatschen?
    Meine Husi's Tutorial Reihe
  • Husi012 schrieb:

    Du übersiehst, dass das erst beim Release/Loslassen resettet wird. Andererseits kann man das resetten auch einfach raus lassen, da dies keinen Effekt hat.

    Danke, habs jetzt auch gesehen. Die Schreibweise von den Klammern hat mich da anscheinend etwas verwirrt.