[C++] Allegro Przemieszczenie obiektu do celu po prostej

Witam, ostatnio piszę program i mam pewien problem, Chcę przemieścić obiekt po linii prostej w miejsce gdzie klikniemy myszką.

Int klik_x, klik_y; //Współrzędne miejsca w, które klikniemy

int obiekt_x, obiekt_y; //Współrzędne obiektu do przesunięcia

Sprawa niby prosta ale rzecz w tym by obiekt był przesuwany pixel po pixelu, jak mógłbym to zrobić?

podstawy matematyki, funkcja przechodząca przez 2pkt i robisz sobie forem zmianę x o 1 i przesuwasz y o daną wartość lub odwrotnie.

Jak dokładnie to zrobić? Jestem dopiero w gimnazjum i nie mam pomysłu jak napisać takową funkcję.

y=(y2-y1)/(x2-x1)(x-x2)+y1

A jak zapisać to w kodzie?

x to twoja zmienna :stuck_out_tongue:

A y to?

int klik_x, klik_y; //Współrzędne miejsca w, które klikniemy

int old_x, old_y; // stąd obiekt zaczął podróż

int obiekt_x, obiekt_y; //Współrzędne obiektu do przesunięcia

int speed=10; // prędkość

int time=0; //czas


int dx=klik_x-old_x,dy=klik_y-old_y;

int len=(int)sqrt(dx*dx+dy*dy),trip=min(len,speed*(time++));

obiekt_x=old_x+((klik_x-old_x)*trip+(len>>1))/len;

obiekt_y=old_y+((klik_y-old_y)*trip+(len>>1))/len;