Letní akce! Lákají tě IT školení C#, Javy a PHP v Brně? Přihlas se a napiš nám do zpráv kód "BRNO 500" pro slevu 500 Kč na libovolný brněnský kurz. Lze kombinovat se slevami uvedenými u školení i použít pro více kurzů. Akce končí 28.7.

Tetris v konzoli v C#.NET

C# .NET Objektově orientované programování Zdrojákoviště Tetris v konzoli v C#.NET

ONEbit hosting Unicorn College Tento obsah je dostupný zdarma v rámci projektu IT lidem. Vydávání, hosting a aktualizace umožňují jeho sponzoři.

Hru jsem napsal během pár dní jen tak pro radost. Může posloužit začátečníkům k inspiraci a k seznámení se s některými mírně pokročilejšími algoritmy a možnostmi, které lze v pouhé konzoli vytvořit. Pro lépe vzhledovou aplikaci by bylo vhodnější určitě použít např. Windows Forms. Tato konzolová aplikace však ukáže vnitřní logiku hry Tetris a jeden ze způsobů, jak jí naprogramovat. Dále může obeznámit s prací se zvuky, ukládáním a načítáním ze souborů, nadpisy vytvořenými z ASCII Art, animacemi, ovládání hry klávesnicí atd.

Vím, že existují miliony lepších způsobů, jak tuto hru naprogramovat, nebo k ní přidat další věci, jako jsou třeba barevná Tetromina (geometrické tvary ve hře), lepší možnosti pohybu a rotace, zapsání vlastního jména hráče a mnoho dalšího. Nadšenci to mohou využít, jako výzvu k vylepšení hry danými vymoženostmi :-)

Potřebné nastavení

Soubor obsahuje dvě verze hry. Jedna je i se zvuky a ukládáním výsledků do souboru a pro její fungování je potřeba upravit cestu k daným souborům v parametru files_path, který se nachází na začátku hlavní třídy Program:

class Program
{
        static int borderWidth = 22; // sirka obdelniku ve kterem se bude hrat / osa X (20 + 2 bocni steny)
        static int borderHeight = 21; // vyska obdelniku ve kterem se bude hrat / osa Y (20 + 1 spodni hranice)
        static int titleCoordinateX = borderWidth + 3; // souradnice X pro nadpis
        static int titleCoordinateY = 1; // souradnice Y pro nadpis
        static private char charForTet = '0'; //vykreslovaci bod
        static int X = borderWidth / 2; // Tetromino coordinate X
        static int Y = 0; // Tetromino coordinate Z
        static string files_path = "C:/Users/Jussepin/Dropbox/CSharp/MojeProjekty/TetrisByJussepinVar6/TetrisByJussepin/bin/Debug/";

Co se týče files_path, bude zřejmě stačit změnit cestu nacházející se mezi soubory Users a TetrisByJusse­pinVar6

Doplňující informace

Znak Tetromina

V proměnné charForTet lze jednoduše rychle změnit, kterým znakem má být Tetromino vykresleno

static private char charForTet = '0'; //vykreslovaci bod

Ovládání

Pohyb do stran se provádí šipkami. Šipka dolů položí Tetromino okamžitě k zemi. Mezerníkem se provádí rotace.

Hlavní menu

V hlavním menu je možnost zvolení obtížnosti od 1 do 4. Tato volba vlastně pouze mění rychlost pohybu Tetromin.

Na závěr

Doufám, že aplikace komukoliv jakkoliv užitečně poslouží. :-)


Galerie

Hra byla vytvořena v roce 2017.

 

Stáhnout

Staženo 67x (13.35 MB)
Aplikace je včetně zdrojových kódů v jazyce C#

 

 

Hru pro vás napsal Joe Walker
Avatar
Jak se ti líbí článek?
Ještě nikdo nehodnotil, buď první!
Aktivity (2)

 

 

Komentáře

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.

Zatím nikdo nevložil komentář - buď první!