IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
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
tasuro
Člen
Avatar
tasuro:8.5.2014 12:18

Ahoj,
snažím se vytvořit jednoduchou RPG 2D hru. Bohužel jsem přišel na takový menší problém, který nevím jak vyřešit. Jde o kolizi obrázků s dalším obrázkem. Přímo na formu mám vytvořené 2 obrázky přes drawImage. Už mám vytvořený i pohyb postavy atd. Bohužel ale mám pozici obrázků přes point a tady nastává ten problém. Aby proběhla srážka těch dvou obrázků musím dojít přesně na ten point kde je vykreslený obrázek. Nejde to udělat tak, aby byl ten obrázek nějak označený např. rectanglem a potom jestli se dotkne nějaké hrany rectanglu tak proběhne nějaký příkaz ? S podmínkama umím pracovat jen nevím jestli to takto jde udělat.

 
Odpovědět
8.5.2014 12:18
Avatar
Odpovídá na tasuro
Luboš Běhounek Satik:8.5.2014 12:28

pokud mas kazdy objekt jako rectangle, tak muzes pouzit metodu
Intersect
http://msdn.microsoft.com/…vs.110).aspx

Nahoru Odpovědět
8.5.2014 12:28
https://www.facebook.com/peasantsandcastles/
Avatar
tasuro
Člen
Avatar
tasuro:8.5.2014 12:31

Zatím mám každý objekt jako image. Jak se dá převést obrázek načtený přes FromFile převést na rectangle ? Bohužel moc zkušeností s tím nemám teprve se učím.

 
Nahoru Odpovědět
8.5.2014 12:31
Avatar
Theodor Johnson
Tvůrce
Avatar
Odpovídá na tasuro
Theodor Johnson:8.5.2014 12:39

http://stackoverflow.com/…-environment

tím získáš velikost obrázku a vytvoříš podle ní Rectangle

Nahoru Odpovědět
8.5.2014 12:39
Mo8ilε 15 Ѐλđ
Avatar
Odpovídá na tasuro
Luboš Běhounek Satik:8.5.2014 12:42

normálně si vytvoříš nový Rect a jako parametry mu dáš X, Y, Width a Height toho obrázku z pictureboxu

Nahoru Odpovědět
8.5.2014 12:42
https://www.facebook.com/peasantsandcastles/
Avatar
rawen
Člen
Avatar
Odpovídá na tasuro
rawen:8.5.2014 13:33

Hádám, že kolizi máš nastavenou že nastane za uričé podmínky, tak nestačiloby kolizi odchytávat v dané vzdálenosti před obrázkem? :)
Nebo mě teď ještě napadá použít kontrolku Border a do ní si dát ten obrázek.

Nahoru Odpovědět
8.5.2014 13:33
Co můžeš naprogramovat dnes, neodkládej na zítřek.
Avatar
tasuro
Člen
Avatar
tasuro:8.5.2014 15:50

Děkuji už mi to funguje tak jak má. Udělal jsem to přes:

if (rect1.IntersectsWith(rect2))
{
     MessageBox.Show("Kolaps");
}
 
Nahoru Odpovědět
8.5.2014 15:50
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 7 zpráv z 7.