Langsames drehen zur Maus

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

  • Langsames drehen zur Maus

    Ich habe ein Problem beim drehen des Geschützturms meines Panzers.
    Ich will das der Turm in Richtung der Maus zeigt. Er soll der aktuellen Mausposition aber nur LANGSAM folgen.

    Ich habe im beigefügten Programm meinen "Erfolg" beigepackt. Der Turm dreht sich zwar langsam, aber er hält nicht an wenn er in Richtung der Maus zeigt, und er ändert die Drehrichtung auch nur beim Sprung von 360°-0° und bei dem Sprung von 180°-181°.

    Hat wer eine Idee wie ich mein Problem Lösen könnte?
    Dateien
    • Turret Test.zip

      (5,12 kB, 243 mal heruntergeladen, zuletzt: )
    Es gibt sicher auch ganz einfache Lösungen, aber wer versteht die schon?

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

  • GML-Quellcode

    1. {
    2. if(tur_dir>359){tur_dir=0} //ist hoffentlich klar
    3. if(tur_dir<0){tur_dir=359} //das auch
    4. dir_mouse=point_direction(x,y,mouse_x,mouse_y) //das nehme ich auch an
    5. dir=dir_mouse-tur_dir //winkel unterschied berrechne
    6. if(dir>180){dir=-(360-dir)} //wenn winkel >180 soll der andere winkel berechnet werden
    7. if(dir<-180){dir=360+dir} //mit <-180
    8. if(dir<-1){tur_dir-=1} //nach rechts drehen (1 ersetzten durch geschwindigkeit)
    9. if(dir>1){tur_dir+=1} //nach links drehen (siehe oben)
    10. }


    ich hoffe du meinst das =)
    ich hoffe es ist verständlich :D
    sonst...bin immer für fragen offen

    EDIT by Defmaster: Bei GML Code auch bitte den GML Tag verwenden.

    EDIT by Dragon: sry habs noch nicht entdeckt :D bin ja erst ein paar tage hier
    int (*x(*x(int))[5])(int*);
    Confused? Yes, it's C!

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

  • Benutzer online 1

    1 Besucher