darek963, jeżeli można wiedzieć, to w jakiej klasie jesteś? To podstawy matematyki
Bez kometarza.
Prosta przechodząca przez punkt (gracz.x, gracz.y) pod kątem alfa (do dodatniej półosi ukł. współrzędnych) ma wzór:
y = (x - gracz.x)*tg(alfa) + gracz.y
Ok, tylko, ze:
Pocisk.Kat:=Pocisk.Kierunek*(256/360)*0.017456;
(zamiana miary kata RotateDraw na radiany 1° = 0,017453 rad)
Pocisk.RealY:=(Tan(Pocisk.Kat)*Pocisk.X)+Gracz.Y-(Tan(Pocisk.Kat)*Gracz.X);
I co?
Du.. ,leci w zupelnie inna strone co trzeba. :P
poradzilem sobie metoda prob i bledow:
Pocisk.Kat:=Pocisk.Kierunek*(256/360)*0.034;
ale dlaczego cos w okolicach 0.034 zamiast 0,017453?
Wie ktos moze??
A tak przy okazji, jakbyś rysował tor lotu pocisku, to nie jest on prostą tylko krzywą balistyczną (w najbardziej szczegółowym przypadku można ją podciątnąć pod parabolę)
Parabole? :D
Wyglada beznadziejnie!
Pocisk.RealGrawitacja:=Pocisk.RealGrawitacja*Pocisk.WspolczynnikGrawitacji;
Pocisk.RealY:=Pocisk.RealY+Pocisk.RealGrawitacja;
Gdzie:
Pocisk.WspolczynnikGrawitacji:=(120+(Pocisk.Kierunek/3))/100;
To jest duzo lepsze {zzz}
(Kula wystrzelona z katapulty)
Pozdrawiam {hello}