Moje projekty
Na této stránce vám ukážu moje projekty ze tří programovacích jazyků. Začal jsem s pythonem, aby jsem se naučil základy programování. Hned co jsem si myslel, že jsem byl připravený, vrhnul jsem se na programování v godotu a do objektově orientovaného programování. Nakonec jsem se začal učit php a základy ostatních jazyků užitečné pro webové stránky(html,js,css,sql). Trochu více infa je na stránce O mně.
Pyhton scripty
Python byl první programovací jazyk, který jsem se naučil. Přišel mi nejvhodnější pro začatečníky. Základy pythonu jsem se naučil pomocí tohoto kurzu. Pochopil jsem s pythonem i základy objektově orientovaného programování, které mi bylo později velice užitečné v godotu. Potom co jsem dokončil kurz, jsem přestal studovat python, protože to není nejvhodnější programovací jazyk pro vytváření her.
Výherní automat
"Výherní automat" je můj poslední projekt v pythonu. Ani jsem ho neměl naplánovaný. Udělal jsem ho kvůli jednomu nápadu a nudě na školním výletu(samotný výlet nebyl nudný, ale dlouho jsme cestovali.). V autobusu jsem si všimnul, že mám na telefonu nainstalovanou aplikaci pro programování v pythonu. Tak jsem začal dělat první verzi výherního automatu. Hned co jsem přišel domů jsem si řekl "Co je lepší jak výherní automat? Automat s vylepšeními.", proto jsem udělal obchod vylepšení. Původní verze byla zobrazena jenom v textu a to mi přišlo moc nudné, tak jsem se kouknul na pár tutoriálů a naučil jsem se tkinter. Potom jsem udělal tuhle finální verzi.
Obsah hry
Hra zobrazuje tři hodonoty, modrá ukazuje sloty, červená ukazuje profit, zelená ukazuje kredit. Potom tam jsou dvě tlačítka "Spin" a "Open shop". "Spin" má představovat páčku k roztočení automatu. Jedno roztočení stojí pět kreditů. Tlačítko "Open shop" otevře nové okno "obchod", v tomto okně si můžete koupit vylepšení, můžete jsi odemknout nový předmět, který se objevuje v automatu. Jsou ale vzácnější(šance vysvětlím v popisu kódu hry ). Druhé vylepšení je lepší štěstí, které zlepší šance lepšího předmětu. Předposlední vylepšení je "auto spin", pokud jsi kopíte auto spin, můžete roztočit automat několikrát stisknutím jednoho tlačítka, bohužel vás tyto roztočení stojí stejný počet peněz. Poslední vylepšení "modifier" vám umožní násobit cenu roztočení s cenou výhry. Tak to je všechno, co vás čeká v mém výherním automatu.
Kód hry
Hlavní okno je docela jednoduché. Pokaždé když se zmáčkne tlačítko "Spin" zavolá funkci kolo(). Tato funkce zkontroluje jestli proměná kredit je menší než pět, jestli ano tak se zobrazí "out of money" a nedovolí hráči hrát. Jestli je kredit větší než pět tak se pět odečte. Potom se vyberou předměty do automatu , vysvětlím jak funguje vybrání předmětů. Každé číslo reprezentuje předmět, kterému budu říkat číslo předmětu, jež se převede na text na konci smyčky. Číslo předmětu se vybírá pomocí smyčky for, každé kolo se vybere náhodné číslo mezi jednou a proměnou vylepšení štěstí, pokud je náhodné číslo nula, nic se nestane, naopak pokud náhodné číslo není jedna zvýší se číslo předmětu o jedna. Smyčka se opakuje třikrát a každé číslo předmětu je uloženo v jiné proměnné. Nakonec se všechny čísla porovnají, jestli se rovnají, přičte se ke kreditu hodnouta výherního předmětu nastaveného v listu předmětů
Okno obchod se ze začátku skládá ze čtyř textů a čtyř tlačítek, každé reprezentuje jedno vylepšení. Vylepšení maxitem přidá jedno kolo do smyčky for, což umožňuje vylosování lepšího předmětu, má to ale vedlejší efek většího štěsí, jelikož je více šancí že se zlepší předmět. Další z vylepšení je štěstí. Při koupení štěstí se zvýší proměnná štěstí o jedna, tudíž při příštím losování je menší šance že je náhodné číslo nula. Třetí vylepšení "auto spin" odemkne textové pole a tlačítko. Po zmáčknutí tlačítka se zavolá funkce kolo tolikrát podle zadaného čísla v textovém poli. Poslední vylepšení "modifier" funguje skoro identicky jako vylepšení "auto spin". Rozdíl je v tom co dělá to nové tlačítko, místo volaní funkce kolo násobí cenu hraní a výherní ceny.
Konec
Sice mám jenom jeden projekt, ale myslím si že jsem se vrhnul dostatenčně do hloubky. Godotové hry jsou větší a mám je dvě, proto nepůjdu tak do hloubky. Děkuji moc za pozornost!
Godot hry
Po pyhonu jsem se začal učit godot. Godot je engine pro začatečníky. Vybíral jsem si mezi unity a godotem. Rozhodl jsem si pro godot, protože mi byl sympatičtější. Bohužel jsem nenašel žádný kurz, tak jsem začal dělat svojí první hru. Naštěstí programovací jazyk godotu je GDscript který je "objektovaně orientovaný python" neboli je podobý pythonu. Mohl jsem se naučit C# ale v tu dobu už jsem uměl python. I když jsem uměl základy pythonu, tak jsem neznal základy programování her pomocí objektů. Naštěstí existuje dokumentace godotu, kam jsem se vracel, když jsem něco potřeboval vědět. A tak jsem se vrhnu na svoji první hru.
První hra: Pixel Jumper
První hra je skákačka. Originální myšlenka byla ohledně momenta. Hráč pomalu zrychoval, bohužel to bylo moc pomalé pro hráče, Potom jsem to tedy musel zrychlit. Všechny obrazy a textury jsou stáhnuté od Pixel Frog z této stánky.
Řešit
Ovládání
- A-D: pohyb
- Mezerník: skok
- Enter: zkusit znovu
- S: rychlé spadnutí
Toto jsou základy ovládání. Jěště mám co dodat ke skoku a rychlému spadnutí. Skočit můžete jenom na zemi, zdi nebo na "jumporbu". Když kloužete na zdi můžete jsi udržet momentum pomocí klouzání na zdi, když odskočíte od zdi tak se odrazíte se stejným momentem jako jste do zdi narazily. Udržovat momentum jde nekonečne dokud nepřistanete na zem nebo se od zdi otočíte.
Objekty
Teď hra obsahuje tři levely a tři objekty. Jsou to trampolína, fén a jumporb(rozhodl jsem se, že to pojmenuji anglicky protože "skákací koule" nezní tak dobře, ne?).
Jumporb
Jumporb je inspirován ze hry geometry dash. Pomocí jumporbu můžete skákat ve vzduchu, použijete ho zmáčknutím mezerníku. Jestli padáte z větáší výšky, tak vás odrazí do stejné výšky. Jestli nemáte momentum, potom vám ho dodá jako normální skok ze země.
fén
Fén vás odfukuje, když jste před ním. Pokud jste v zoně efektivity, tak začnete nabývat rychlost do směru fénu. Každý má svojí proměnou "multipiler" která násobí animaci fénu a míru síly(může být menší než nula, takže hráč bude přitahován).
trampolína
Trampolína vás při dotyku odrazí do svého směru. Pokud máte momentum, tak se rychlost násobí. Směr trampolíny rozhoduje, jaký směr bude ovlivněn více a do jaké strany bude hráč vystřelen.
Cíl hry
Cíl hry je postupně dohrát všechny tři levely v časovém limitu.
Stažení hry
Druhá hra: Pig dungeon
Druhá hra má být více o náhodnosti a o přežívání, ale hlavně se počítají krystaly. Má být inspirovaná žánrem rouge-like. Odehrává se v pevnosti zamořenýmy prasaty. Není k tomu žádný příběh. Tato pevnost je vždy náhodně generovaná. Grafika je zase od Pixel Frog z této stánky. Kvůli tomu je logo ještě z toho grafického balíčku, takže tam je "kings and pigs" v hlavním menu.
Řešit
Ovládání
- A-D: pohyb
- Mezerník: skok
- R: zkusit znovu
- S: rychlé spadnutí, seskočení z platformy
- E: interakce s dveřmi
- LMB: útok
Prasata
prase
počet životů: 3
poškození: 1
zrak: normální
popis: Normální prase. Útočí jenom z blízka. Nic speciálního, ale každé ostatní prase se od něho inspiruje. Každé prase se hýbe stejně jako toto záhladní.
prase s boxem
počet životů: 1
poškození: 1
zrak: normální
popis: normální prase ale s boxem. jeho útok je hození boxu z dálky nebo z blízka. hozený box má jenom jeden život a zníčí se na dopadu.
box
počet životů: 3
poškození: 0
zrak: 0
popis: box(nečiný)
prase v boxu
počet životů: 1
poškození: 0
zrak: 0
popis: box(činný)
prase se zápalkou
počet životů: 2
poškození: 2
zrak: normální
popis: Prase se zápalkou bude dávat věší poškození. Útočí jenom z blízka
královské prase
počet životů: 6
poškození: 2
zrak: dobrý
popis: nenormální prase. Útočí jenom z blízka. královské prase se vždy oběví chránit dveře.
Cíl hry
V této hře je vaším úkolem posbírat co nejvíce drahokramů. Drahokamy můžete dostat z prasat nebo z boxů. Můžete dostat nekonečno drahokramů. Pokud jste dokončily místnost, můžete projít dveřmi a dostanete se do nové místnosti.
Stažení hry
programování webu
V programování webu mám jenom jeden projekt, a to je tahle stránka! každopádně tady teda budu popísovat, jak jsem je dělal. Chci zmínit pojmenování stránek a obrázků. Je to totiž takový angličtio češtinový hybrid.
Začátek
Webové stránky jsem si nechal na konec, aby jsem byl nejzkušenější na nejvýznamější projekt. Naučil jsem se php a ostatní pomocí tohoto kurzu, který je zase od Davida Šetka, děkuji Davidovi Šetkovi, protože bez těch kurzů bych nevěděl co dělat. Taky kvůli němu si můžete udělat účet, fakt jsem neměl v plánu pracovat s databází.
Zoo
Zoo byla první přidná věc. Rychle zhrnu, jak se to stalo "Spolužák nápad->já zrealizovat nápad". Každopádně Zoo nemá být seriózní, má být brána s nadsáskou. A poslední věc , mám svolení spolužáku v Zoo.
Na obrazu jsou pozadí výběru šedé, vybarví se na stránce. Na telefonu jsou vybarvené vždy.
Účet
Účet jsem se rozhodl udělat, protože se jedná o interakcí s databází. Měl jsem dodělanou registraci a přihlášení, tak jsem začal prokrastinovat a udělal jsem nastavení, více nastavení, smazaní ůčtu a taky nakonec zobrazení účtu. "Více nastavení" je jediné praktické využití účtu, důvod tohoto výtvoru je můj kamarád, který si stěžoval na moc detalní pozadí. Další dvě nastavení jsou tam, aby nastavení pozadí nebylo osamělé. Také jsem přidal tlačítko na zkopírování odkazu pro účet v stránce "můj účet", To je protože se kamarádi chtěli pochlubit svými zabranýmy přezdívkami.
Hry
Tahle stránka je zatím nejkomplikovanější. Takže doufám, že se vám líbí. Pracoval jsem na ni takhle moc, protože je to prezentace mých zkušeností z programování.
Tato stránka má asi nejlepší javascript co jsem zatím udělal, protože by nebylo optimální, kdyby se hry načítaly pokaždé co navštívíte stránku, nebo se rozhodnete refreshnout. Taky jsem hrdý na tyto tlačítka výběru(python, godot, web). Pohyb obrazů je udělaný změněním orientace pozadí. Po psaní javascriptu pro nastavení v způsobu kamenného člověka a psal jsem každé zavítání a otvíraní, jsem se rozhodnul používat smyčky, což se podařilo.
Materiály(assety)
V každé z mých stánek je stejné pozadí, až na tři vyjímky. Fotku v pozadí jsem si vyfotil starým foťákem před pár lety. Pozadí jde zaměnit za gradient v nastavení účtu. Header taky patří mezi assety, protože je stejný skoro všude. Ten se mění podle toho na jaké stránce jste, ale jenom minimálně. Je jenom jedna výjimka, kde není header a to je stránka pro chyby. Header se změní, když je vaše obrazovka moc tenká, aby byla stránka přístupná telefonem. Footer je taky asset, existuje všude , ale nedělá nic.
Příspěvky
Přidal jsem veřejné příspěvky. Třeba aby jsem dostal zpětnou vazbu, nebo můžete psát co chcete. Příspěvky vždy jdou upravit nebo smazat. Všechny vaše příspěvky se zobrazí na stránce vašeho účtu. Příspěvky můžete teď taky doporučit. Doporučené příspěvky budou zobrazeny výše. Vždy můžete příspěvek přestat doporučovat.
Stránka o mně
Tato stánka popisuje mě a moje zájmy. Snažil jsem se ji udělat co nejvíce interaktivní, aby to bylo zajímavé. K této stránce taky zahrnu stránku odkazů o mně.. Stránka odkazů je náhodně generovaná, né celá, ale dva obrazy, jeden pro stránku o mně a jeden pro tuto stránku, ještě jeden náhodný název z náhodného příspěvku.