Posted August 08, 2021 by Pet297
Datum: 8.8.2021, Čas práce: 3.0 hodiny
Dnes jsem začal tvořit grafiku pro hráče. Asi polovoina animací je pokrytá. Kromě toho jsem také pracoval na prvním nepříteli, který se pohybuje. Jedná se o křečka, který pouze běhá za hráčem a ve vhodnou chvíli skáče.
Opět se potýkám s problémy souvisejícími s RigidBody a kolizemi. Nejvhodnější asi bude řešit kolizi projektilů zvlášť, aby neodstrkovaly nepřátele, ale gravitaci a kolize řešit přes RigidBody.
Datum: 9.8.2021, Čas práce: 2.5 hodiny
Dnes jsem dokončil implementaci nepřátelských křečků a myší které ovládají kočky. Ovládané kočky se chovají skoro jako křečci, ale hráč by je měl zachránit.
Kromě toho jsem vyřešil problém, kdy je třeba aby hráč mohl projít vodou, ale projektily ne a po zmražení této vody nic ní neprošlo. To jsem vyřešil tak, že každý blok vody/ledu, který se může přeměnit v ten druhý má přiřazen dětský objekt, který má kolizi, která je aktivovaná jen v jednom případě. Blok vody/ledu a podřazený kolizní blok jsou v jiné vrstvě aby předměty jiných druhů ovlivňovaly jinak.
Datum: 15.8.2021, Čas práce: 3.0 hodiny
Konečně jsem hotov s implementací nepřátel. Přidal jsem vakoveverky, morčata a nutrie.
Moc se mi nelíbí množství copy-pastování kódu. Bohužel mi při práci s rozdělenými C# soubory v Unity s filozofií patternu Component moc nedochází možnosti, o kterých si při práci neuvědomuji, že je mám. Když se kouknu zpět, určitě bych některé aspekty chování nepřátel rozdělil do více skriptů a vhodně nakombinoval.
Při práci jsem také narazil na problém, kdy jsem místo přesunutí omylem jeden CS soubor nakopíroval a Unity editor mi hlásil chybu kvůli zdvojené definici třídy. Travalo relativně dlouho, než jsem zjistil, co se děje...
Po dlouhé době (dovolené) opět přikládám další build. Tento build se asi moc nezměnil od předchozího, protože nově naimplementovaní nepřátelé nejsou v prvních 5 místnostech využiti.
Teď už jen zbývá dotvořit animace hráče, vylepšit mechaniku používání luku a dostavět level. Také přidám úvodní a závěrečnou obrazovku.