Diskuze: Složitější hra

C# .NET .NET (C# a Visual Basic) Složitější hra American English version English version

Avatar
Vojtech England Smid:

Zdravím, potřeboval bych poradit s vyřešením tohohle "tetrisu". Vůbec totiž nevím, jak z kostiček vytvořit tato písmenka a jak vyřešit kolize např. "A" s "O". Toto jsou jenom obrázky, z kódu nemám nic, absolutně nevím, jak začít

Editováno 21.3.2015 16:07
 
Odpovědět 21.3.2015 16:06
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Vojtech England Smid
Jan Vargovský:

Jakým způsobem máš definovaný ten tvar?

 
Nahoru Odpovědět 21.3.2015 16:08
Avatar
hanpari
Redaktor
Avatar
Odpovídá na Vojtech England Smid
hanpari:

Na každou kostičku potřebuješ dva body diagonály, dejme tomu levý spodní a pravý horní.
Za předpokladu že neřešíš rotace, není zjištění kolize dvou obdelníků neřešitelný problém.

Když máš Obdelník(P1, P2) pak Obdelník(P3, P4) s ním bude v kolizi, pokud alespoň jeden z jeho bodů se bude nacházet mezi body P1 a P2.

Asi takto. Je bod2 v obdelníku, který tvoří body bod1 a bod3? Ano, je :)

var bod1 = new Point(5,5);
var bod2 = new Point(3,3);
var bod3 = new Point(2,2);


bool kolize = (bod2.X <= bod1.X && bod2.X >= bod3.X)
                                &&
                          (bod2.Y <= bod1.Y && bod2.Y >= bod3.Y);

Samozřejmě si musíš dávat pozor na to, který bod je který.

Editováno 21.3.2015 21:52
 
Nahoru Odpovědět 21.3.2015 21:51
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 3 zpráv z 3.