Avatar
Lukáš Hamrle:

Ahojte, momentálně si dělám takový "projektíček" což by mela byt takova lehka fotbalova hra, kde budou hrat 2 hráči. Momentálně jsem v C# a obecně v programování celkem na začátku. Celý můj kod se vlastne skládá z podmínek a cyklů. (Žádné objekty nepouživám, zatím se je ucíme ve škole v C++ ale zatím jsem jaksi nepochopil jejich praktické využití:()

No zpět k mému problému, mám kod na ovladani jednoho hráče viz. obrazek. a chci se zeptat zda jde nějak jednoduše použít tento kod i na jiný pictureBox i bez toho abych musel celý tento kod zkopirovat a prepisovat z hrac.Location ... na hrac2.Location ... Což by znamenalo dalších 40 řádků kodu. (Jako problem udelat to neni, ale prece jenom by bylo praktičtější mít kratší kod)

Je dosti možný, že zkušení programátoři budou mít zatmění před očima z toho kodu, ale jak říkam zatím jsem v programovaní na začátku.

 
Odpovědět 17. října 20:46
Avatar
D0ll0k
Člen
Avatar
Odpovídá na Lukáš Hamrle
D0ll0k:

A jak máš zařízený pohyb hráče? Přes KeyDown a KeyUp event?

Nahoru Odpovědět 17. října 21:04
Ten, co se snaží "programovat"
Avatar
Odpovídá na D0ll0k
Lukáš Hamrle:

KeyDown a KeyUp no

Editováno 17. října 21:07
 
Nahoru Odpovědět 17. října 21:07
Avatar
D0ll0k
Člen
Avatar
D0ll0k:

Já bych si to udělal tak, že bych si vytvořil dvě proměnné pro pohyb hráčem doprava-doleva a nahoru-dolu, v eventu bych zjišťoval jaká tlačítka byla zmáčknuta a pak k nim jen přičítal/odčítal rychlost pohybu. Hádám že pohyb máš udělaný v timeru, takže tam by stačil jen jeden řádek:

hrac.Location = new Point(hrac.Location.X + promenna_pro_pohyb_doprava_doleva, hrac.Location.Y + promenna_pro_pohyb_nahoru_dolu);
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět 17. října 21:22
Ten, co se snaží "programovat"
Avatar
Odpovídá na D0ll0k
Lukáš Hamrle:

Díky moc, díky tomu jsem ted kod zkratil o nekolik desítek řádků!(y)
Jen se to trochu buguje kdyz nahraju balon jinemu hraci tak jak kdyby "zapomene" balon za sebou,ikdyz ho má u sebe, ale to už je chyba někde jinde, takže na to se kouknu zítra. :)

 
Nahoru Odpovědět 17. října 21:36
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 5 zpráv z 5.