Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
vesel.fil
Člen
Avatar
vesel.fil:15.3.2014 20:55

Ahoj, v mé hře mám 2 obejkty se známými x a y a potřebuji aby se obejkt 2 postupně přibližoval k tomu druhému než bude 500px daleko. Jak na to?
Zkusil jsem toto:

double a = this.Position.Y - p.Position.Y;
            double b = p.Position.X - this.Position.X;
            double c = Math.Sqrt(Math.Pow(a, 2) + Math.Pow(b, 2));
            float rotation = (float)Math.Atan(a / b);
            this.Rotation = rotation;
            if (c < 300) return;
            Console.WriteLine(rotation);
            Position += new Vector2((float)Math.Cos(Rotation), -(float)Math.Sin(Rotation)) * Speed;

Což ale nefungovalo.

Odpovědět
15.3.2014 20:55
I don't necessarily agree with everything I say.
Avatar
Odpovídá na vesel.fil
Luboš Běhounek Satik:15.3.2014 21:01

Zkus Atan2 místo Atan.
A pojmenovávej proměnné trochu inteligentněji :)

Nahoru Odpovědět
15.3.2014 21:01
https://www.facebook.com/peasantsandcastles/
Avatar
vesel.fil
Člen
Avatar
Odpovídá na Luboš Běhounek Satik
vesel.fil:15.3.2014 21:05

Vypadá lépe, díky. Ono to fungovalo i před tím, ale když jsem létal přímo přes nepřítele (to co má letět za mnou) tak si to někdy rozmyslelo a začalo to dělat přesně opačnou věc. S tímhle se mi to nepodařilo. A jestli myslíš ty proměné a, b, c, tak to mají být strany trojůhelníku. :)

Nahoru Odpovědět
15.3.2014 21:05
I don't necessarily agree with everything I say.
Avatar
Odpovídá na vesel.fil
Luboš Běhounek Satik:15.3.2014 21:09

aha, pak už to trochu logiku dává, ale i tak bych to asi spíš pojmenoval jako deltaX, deltaY a distance nebo nějak podobně :)

Nahoru Odpovědět
15.3.2014 21:09
https://www.facebook.com/peasantsandcastles/
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.