├── .gitattributes ├── .gitignore ├── FuncGameDev ├── Assets │ ├── Animations.meta │ ├── Animations │ │ ├── Enemies.meta │ │ ├── Enemies │ │ │ ├── Demon.meta │ │ │ ├── Demon │ │ │ │ ├── Demon_Controller.controller │ │ │ │ ├── Demon_Controller.controller.meta │ │ │ │ ├── Demon_Idle_Left.anim │ │ │ │ ├── Demon_Idle_Left.anim.meta │ │ │ │ ├── Demon_Idle_Right.anim │ │ │ │ ├── Demon_Idle_Right.anim.meta │ │ │ │ ├── Demon_Run_Left.anim │ │ │ │ ├── Demon_Run_Left.anim.meta │ │ │ │ ├── Demon_Run_Right.anim │ │ │ │ └── Demon_Run_Right.anim.meta │ │ │ ├── Golem.meta │ │ │ ├── Golem │ │ │ │ ├── Golem_Controller.controller │ │ │ │ ├── Golem_Controller.controller.meta │ │ │ │ ├── Golem_Idle_Left.anim │ │ │ │ ├── Golem_Idle_Left.anim.meta │ │ │ │ ├── Golem_Idle_Right.anim │ │ │ │ ├── Golem_Idle_Right.anim.meta │ │ │ │ ├── Golem_Run_Left.anim │ │ │ │ ├── Golem_Run_Left.anim.meta │ │ │ │ ├── Golem_Run_Right.anim │ │ │ │ └── Golem_Run_Right.anim.meta │ │ │ ├── Slime.meta │ │ │ ├── Slime │ │ │ │ ├── Slime_Controller.controller │ │ │ │ ├── Slime_Controller.controller.meta │ │ │ │ ├── Slime_Idle_Left.anim │ │ │ │ ├── Slime_Idle_Left.anim.meta │ │ │ │ ├── Slime_Idle_Right.anim │ │ │ │ ├── Slime_Idle_Right.anim.meta │ │ │ │ ├── Slime_Run_Left.anim │ │ │ │ ├── Slime_Run_Left.anim.meta │ │ │ │ ├── Slime_Run_Right.anim │ │ │ │ └── Slime_Run_Right.anim.meta │ │ │ ├── Wolf.meta │ │ │ └── Wolf │ │ │ │ ├── Wolf_Controller.controller │ │ │ │ ├── Wolf_Controller.controller.meta │ │ │ │ ├── Wolf_Idle_Left.anim │ │ │ │ ├── Wolf_Idle_Left.anim.meta │ │ │ │ ├── Wolf_Idle_Right.anim │ │ │ │ ├── Wolf_Idle_Right.anim.meta │ │ │ │ ├── Wolf_Run_Left.anim │ │ │ │ ├── Wolf_Run_Left.anim.meta │ │ │ │ ├── Wolf_Run_Right.anim │ │ │ │ └── Wolf_Run_Right.anim.meta │ │ ├── Items.meta │ │ ├── Items │ │ │ ├── Null.meta │ │ │ └── Null │ │ │ │ ├── Null_Controller.controller │ │ │ │ └── Null_Controller.controller.meta │ │ ├── Players.meta │ │ └── Players │ │ │ ├── Knight.meta │ │ │ ├── Knight │ │ │ ├── Knight_Controller.controller │ │ │ ├── Knight_Controller.controller.meta │ │ │ ├── Knight_Idle_Left.anim │ │ │ ├── Knight_Idle_Left.anim.meta │ │ │ ├── Knight_Idle_Right.anim │ │ │ ├── Knight_Idle_Right.anim.meta │ │ │ ├── Knight_Run_Left.anim │ │ │ ├── Knight_Run_Left.anim.meta │ │ │ ├── Knight_Run_Right.anim │ │ │ └── Knight_Run_Right.anim.meta │ │ │ ├── Wizard.meta │ │ │ └── Wizard │ │ │ ├── Wizard_Controller.controller │ │ │ ├── Wizard_Controller.controller.meta │ │ │ ├── Wizard_Idle_Left.anim │ │ │ ├── Wizard_Idle_Left.anim.meta │ │ │ ├── Wizard_Idle_Right.anim │ │ │ ├── Wizard_Idle_Right.anim.meta │ │ │ ├── Wizard_Run_Left.anim │ │ │ ├── Wizard_Run_Left.anim.meta │ │ │ ├── Wizard_Run_Right.anim │ │ │ └── Wizard_Run_Right.anim.meta │ ├── FSharp.Core.dll │ ├── FSharp.Core.dll.meta │ ├── FSharp.dll.meta │ ├── Resources.meta │ ├── Resources │ │ ├── Circle.png │ │ ├── Circle.png.meta │ │ ├── GolemBoss.prefab │ │ ├── GolemBoss.prefab.meta │ │ ├── Item.prefab │ │ ├── Item.prefab.meta │ │ ├── Jumper.prefab │ │ ├── Jumper.prefab.meta │ │ ├── Knife.prefab │ │ ├── Knife.prefab.meta │ │ ├── MainMenu.meta │ │ ├── MainMenu │ │ │ ├── Blue.asset │ │ │ ├── Blue.asset.meta │ │ │ ├── Clock.png │ │ │ ├── Clock.png.meta │ │ │ ├── GameIconDefault.png │ │ │ ├── GameIconDefault.png.meta │ │ │ ├── GameOverBackground.png │ │ │ ├── GameOverBackground.png.meta │ │ │ ├── MainMenuBackground.png │ │ │ ├── MainMenuBackground.png.meta │ │ │ ├── MainMenuPlayerAddition.png │ │ │ ├── MainMenuPlayerAddition.png.meta │ │ │ ├── NewGameButton.png │ │ │ ├── NewGameButton.png.meta │ │ │ ├── NewGameButton.prefab │ │ │ ├── NewGameButton.prefab.meta │ │ │ ├── SettingsButton.png │ │ │ ├── SettingsButton.png.meta │ │ │ ├── SettingsButton.prefab │ │ │ ├── SettingsButton.prefab.meta │ │ │ ├── Square.png │ │ │ ├── Square.png.meta │ │ │ ├── White.asset │ │ │ └── White.asset.meta │ │ ├── Player.prefab │ │ ├── Player.prefab.meta │ │ ├── Rock.prefab │ │ ├── Rock.prefab.meta │ │ ├── Square.png │ │ ├── Square.png.meta │ │ ├── Stairs.prefab │ │ ├── Stairs.prefab.meta │ │ ├── Stander.prefab │ │ ├── Stander.prefab.meta │ │ ├── SwordWave.prefab │ │ ├── SwordWave.prefab.meta │ │ ├── Tracker.prefab │ │ ├── Tracker.prefab.meta │ │ ├── Wall.prefab │ │ ├── Wall.prefab.meta │ │ ├── Weapon.prefab │ │ └── Weapon.prefab.meta │ ├── Scenes.meta │ ├── Scenes │ │ ├── GameOver.unity │ │ ├── GameOver.unity.meta │ │ ├── MainMenu.unity │ │ ├── MainMenu.unity.meta │ │ ├── Multiplayer.unity │ │ ├── Multiplayer.unity.meta │ │ ├── SampleScene.unity │ │ ├── SampleScene.unity.meta │ │ ├── Singleplayer.unity │ │ └── Singleplayer.unity.meta │ ├── Sprites.meta │ └── Sprites │ │ ├── Backgrounds.meta │ │ ├── Backgrounds │ │ ├── background.png │ │ └── background.png.meta │ │ ├── Enemies.meta │ │ ├── Enemies │ │ ├── Demon.meta │ │ ├── Demon │ │ │ ├── Left.meta │ │ │ ├── Left │ │ │ │ ├── chort_idle_anim_f0.png │ │ │ │ ├── chort_idle_anim_f0.png.meta │ │ │ │ ├── chort_idle_anim_f1.png │ │ │ │ ├── chort_idle_anim_f1.png.meta │ │ │ │ ├── chort_idle_anim_f2.png │ │ │ │ ├── chort_idle_anim_f2.png.meta │ │ │ │ ├── chort_idle_anim_f3.png │ │ │ │ ├── chort_idle_anim_f3.png.meta │ │ │ │ ├── chort_run_anim_f0.png │ │ │ │ ├── chort_run_anim_f0.png.meta │ │ │ │ ├── chort_run_anim_f1.png │ │ │ │ ├── chort_run_anim_f1.png.meta │ │ │ │ ├── chort_run_anim_f2.png │ │ │ │ ├── chort_run_anim_f2.png.meta │ │ │ │ ├── chort_run_anim_f3.png │ │ │ │ └── chort_run_anim_f3.png.meta │ │ │ ├── Right.meta │ │ │ ├── Right │ │ │ │ ├── chort_idle_anim_f0.png │ │ │ │ ├── chort_idle_anim_f0.png.meta │ │ │ │ ├── chort_idle_anim_f1.png │ │ │ │ ├── chort_idle_anim_f1.png.meta │ │ │ │ ├── chort_idle_anim_f2.png │ │ │ │ ├── chort_idle_anim_f2.png.meta │ │ │ │ ├── chort_idle_anim_f3.png │ │ │ │ ├── chort_idle_anim_f3.png.meta │ │ │ │ ├── chort_run_anim_f0.png │ │ │ │ ├── chort_run_anim_f0.png.meta │ │ │ │ ├── chort_run_anim_f1.png │ │ │ │ ├── chort_run_anim_f1.png.meta │ │ │ │ ├── chort_run_anim_f2.png │ │ │ │ ├── chort_run_anim_f2.png.meta │ │ │ │ ├── chort_run_anim_f3.png │ │ │ │ └── chort_run_anim_f3.png.meta │ │ │ ├── demon.png │ │ │ └── demon.png.meta │ │ ├── Golem.meta │ │ ├── Golem │ │ │ ├── Left.meta │ │ │ ├── Left │ │ │ │ ├── golem_idle_f0.png │ │ │ │ ├── golem_idle_f0.png.meta │ │ │ │ ├── golem_idle_f1.png │ │ │ │ ├── golem_idle_f1.png.meta │ │ │ │ ├── golem_idle_f2.png │ │ │ │ ├── golem_idle_f2.png.meta │ │ │ │ ├── golem_idle_f3.png │ │ │ │ ├── golem_idle_f3.png.meta │ │ │ │ ├── golem_idle_f4.png │ │ │ │ ├── golem_idle_f4.png.meta │ │ │ │ ├── golem_idle_f5.png │ │ │ │ ├── golem_idle_f5.png.meta │ │ │ │ ├── golem_walk_f0.png │ │ │ │ ├── golem_walk_f0.png.meta │ │ │ │ ├── golem_walk_f1.png │ │ │ │ ├── golem_walk_f1.png.meta │ │ │ │ ├── golem_walk_f2.png │ │ │ │ ├── golem_walk_f2.png.meta │ │ │ │ ├── golem_walk_f3.png │ │ │ │ ├── golem_walk_f3.png.meta │ │ │ │ ├── golem_walk_f4.png │ │ │ │ ├── golem_walk_f4.png.meta │ │ │ │ ├── golem_walk_f5.png │ │ │ │ └── golem_walk_f5.png.meta │ │ │ ├── Right.meta │ │ │ ├── Right │ │ │ │ ├── golem_idle_f0.png │ │ │ │ ├── golem_idle_f0.png.meta │ │ │ │ ├── golem_idle_f1.png │ │ │ │ ├── golem_idle_f1.png.meta │ │ │ │ ├── golem_idle_f2.png │ │ │ │ ├── golem_idle_f2.png.meta │ │ │ │ ├── golem_idle_f3.png │ │ │ │ ├── golem_idle_f3.png.meta │ │ │ │ ├── golem_idle_f4.png │ │ │ │ ├── golem_idle_f4.png.meta │ │ │ │ ├── golem_idle_f5.png │ │ │ │ ├── golem_idle_f5.png.meta │ │ │ │ ├── golem_walk_f0.png │ │ │ │ ├── golem_walk_f0.png.meta │ │ │ │ ├── golem_walk_f1.png │ │ │ │ ├── golem_walk_f1.png.meta │ │ │ │ ├── golem_walk_f2.png │ │ │ │ ├── golem_walk_f2.png.meta │ │ │ │ ├── golem_walk_f3.png │ │ │ │ ├── golem_walk_f3.png.meta │ │ │ │ ├── golem_walk_f4.png │ │ │ │ ├── golem_walk_f4.png.meta │ │ │ │ ├── golem_walk_f5.png │ │ │ │ └── golem_walk_f5.png.meta │ │ │ ├── golem.png │ │ │ └── golem.png.meta │ │ ├── Slime.meta │ │ ├── Slime │ │ │ ├── Left.meta │ │ │ ├── Left │ │ │ │ ├── swampy_idle_anim_f0.png │ │ │ │ ├── swampy_idle_anim_f0.png.meta │ │ │ │ ├── swampy_idle_anim_f1.png │ │ │ │ ├── swampy_idle_anim_f1.png.meta │ │ │ │ ├── swampy_idle_anim_f2.png │ │ │ │ ├── swampy_idle_anim_f2.png.meta │ │ │ │ ├── swampy_idle_anim_f3.png │ │ │ │ ├── swampy_idle_anim_f3.png.meta │ │ │ │ ├── swampy_run_anim_f0.png │ │ │ │ ├── swampy_run_anim_f0.png.meta │ │ │ │ ├── swampy_run_anim_f1.png │ │ │ │ ├── swampy_run_anim_f1.png.meta │ │ │ │ ├── swampy_run_anim_f2.png │ │ │ │ ├── swampy_run_anim_f2.png.meta │ │ │ │ ├── swampy_run_anim_f3.png │ │ │ │ └── swampy_run_anim_f3.png.meta │ │ │ ├── Right.meta │ │ │ ├── Right │ │ │ │ ├── swampy_idle_anim_f0.png │ │ │ │ ├── swampy_idle_anim_f0.png.meta │ │ │ │ ├── swampy_idle_anim_f1.png │ │ │ │ ├── swampy_idle_anim_f1.png.meta │ │ │ │ ├── swampy_idle_anim_f2.png │ │ │ │ ├── swampy_idle_anim_f2.png.meta │ │ │ │ ├── swampy_idle_anim_f3.png │ │ │ │ ├── swampy_idle_anim_f3.png.meta │ │ │ │ ├── swampy_run_anim_f0.png │ │ │ │ ├── swampy_run_anim_f0.png.meta │ │ │ │ ├── swampy_run_anim_f1.png │ │ │ │ ├── swampy_run_anim_f1.png.meta │ │ │ │ ├── swampy_run_anim_f2.png │ │ │ │ ├── swampy_run_anim_f2.png.meta │ │ │ │ ├── swampy_run_anim_f3.png │ │ │ │ └── swampy_run_anim_f3.png.meta │ │ │ ├── swampy_idle_anim_f0.png │ │ │ ├── swampy_idle_anim_f0.png.meta │ │ │ ├── swampy_idle_anim_f1.png │ │ │ ├── swampy_idle_anim_f1.png.meta │ │ │ ├── swampy_idle_anim_f2.png │ │ │ ├── swampy_idle_anim_f2.png.meta │ │ │ ├── swampy_idle_anim_f3.png │ │ │ ├── swampy_idle_anim_f3.png.meta │ │ │ ├── swampy_run_anim_f0.png │ │ │ ├── swampy_run_anim_f0.png.meta │ │ │ ├── swampy_run_anim_f1.png │ │ │ ├── swampy_run_anim_f1.png.meta │ │ │ ├── swampy_run_anim_f2.png │ │ │ ├── swampy_run_anim_f2.png.meta │ │ │ ├── swampy_run_anim_f3.png │ │ │ └── swampy_run_anim_f3.png.meta │ │ ├── Wolf.meta │ │ └── Wolf │ │ │ ├── Left.meta │ │ │ ├── Left │ │ │ ├── wolf_idle_f0.png │ │ │ ├── wolf_idle_f0.png.meta │ │ │ ├── wolf_idle_f1.png │ │ │ ├── wolf_idle_f1.png.meta │ │ │ ├── wolf_idle_f2.png │ │ │ ├── wolf_idle_f2.png.meta │ │ │ ├── wolf_idle_f3.png │ │ │ ├── wolf_idle_f3.png.meta │ │ │ ├── wolf_run_f0.png │ │ │ ├── wolf_run_f0.png.meta │ │ │ ├── wolf_run_f1.png │ │ │ ├── wolf_run_f1.png.meta │ │ │ ├── wolf_run_f2.png │ │ │ ├── wolf_run_f2.png.meta │ │ │ ├── wolf_run_f3.png │ │ │ └── wolf_run_f3.png.meta │ │ │ ├── Right.meta │ │ │ ├── Right │ │ │ ├── wolf_idle_f0.png │ │ │ ├── wolf_idle_f0.png.meta │ │ │ ├── wolf_idle_f1.png │ │ │ ├── wolf_idle_f1.png.meta │ │ │ ├── wolf_idle_f2.png │ │ │ ├── wolf_idle_f2.png.meta │ │ │ ├── wolf_idle_f3.png │ │ │ ├── wolf_idle_f3.png.meta │ │ │ ├── wolf_run_f0.png │ │ │ ├── wolf_run_f0.png.meta │ │ │ ├── wolf_run_f1.png │ │ │ ├── wolf_run_f1.png.meta │ │ │ ├── wolf_run_f2.png │ │ │ ├── wolf_run_f2.png.meta │ │ │ ├── wolf_run_f3.png │ │ │ └── wolf_run_f3.png.meta │ │ │ ├── wolf.png │ │ │ └── wolf.png.meta │ │ ├── Items.meta │ │ ├── Items │ │ ├── Time.meta │ │ └── Time │ │ │ ├── time.png │ │ │ └── time.png.meta │ │ ├── Players.meta │ │ ├── Players │ │ ├── Knight.meta │ │ ├── Knight │ │ │ ├── Left.meta │ │ │ ├── Left │ │ │ │ ├── knight_m_hit_anim_f0.png │ │ │ │ ├── knight_m_hit_anim_f0.png.meta │ │ │ │ ├── knight_m_idle_anim_f0.png │ │ │ │ ├── knight_m_idle_anim_f0.png.meta │ │ │ │ ├── knight_m_idle_anim_f1.png │ │ │ │ ├── knight_m_idle_anim_f1.png.meta │ │ │ │ ├── knight_m_idle_anim_f2.png │ │ │ │ ├── knight_m_idle_anim_f2.png.meta │ │ │ │ ├── knight_m_idle_anim_f3.png │ │ │ │ ├── knight_m_idle_anim_f3.png.meta │ │ │ │ ├── knight_m_run_anim_f0.png │ │ │ │ ├── knight_m_run_anim_f0.png.meta │ │ │ │ ├── knight_m_run_anim_f1.png │ │ │ │ ├── knight_m_run_anim_f1.png.meta │ │ │ │ ├── knight_m_run_anim_f2.png │ │ │ │ ├── knight_m_run_anim_f2.png.meta │ │ │ │ ├── knight_m_run_anim_f3.png │ │ │ │ └── knight_m_run_anim_f3.png.meta │ │ │ ├── Right.meta │ │ │ ├── Right │ │ │ │ ├── knight_m_hit_anim_f0.png │ │ │ │ ├── knight_m_hit_anim_f0.png.meta │ │ │ │ ├── knight_m_idle_anim_f0.png │ │ │ │ ├── knight_m_idle_anim_f0.png.meta │ │ │ │ ├── knight_m_idle_anim_f1.png │ │ │ │ ├── knight_m_idle_anim_f1.png.meta │ │ │ │ ├── knight_m_idle_anim_f2.png │ │ │ │ ├── knight_m_idle_anim_f2.png.meta │ │ │ │ ├── knight_m_idle_anim_f3.png │ │ │ │ ├── knight_m_idle_anim_f3.png.meta │ │ │ │ ├── knight_m_run_anim_f0.png │ │ │ │ ├── knight_m_run_anim_f0.png.meta │ │ │ │ ├── knight_m_run_anim_f1.png │ │ │ │ ├── knight_m_run_anim_f1.png.meta │ │ │ │ ├── knight_m_run_anim_f2.png │ │ │ │ ├── knight_m_run_anim_f2.png.meta │ │ │ │ ├── knight_m_run_anim_f3.png │ │ │ │ └── knight_m_run_anim_f3.png.meta │ │ │ ├── knight_m_hit_anim_f0.png │ │ │ ├── knight_m_hit_anim_f0.png.meta │ │ │ ├── knight_m_idle_anim_f0.png │ │ │ ├── knight_m_idle_anim_f0.png.meta │ │ │ ├── knight_m_idle_anim_f1.png │ │ │ ├── knight_m_idle_anim_f1.png.meta │ │ │ ├── knight_m_idle_anim_f2.png │ │ │ ├── knight_m_idle_anim_f2.png.meta │ │ │ ├── knight_m_idle_anim_f3.png │ │ │ ├── knight_m_idle_anim_f3.png.meta │ │ │ ├── knight_m_run_anim_f0.png │ │ │ ├── knight_m_run_anim_f0.png.meta │ │ │ ├── knight_m_run_anim_f1.png │ │ │ ├── knight_m_run_anim_f1.png.meta │ │ │ ├── knight_m_run_anim_f2.png │ │ │ ├── knight_m_run_anim_f2.png.meta │ │ │ ├── knight_m_run_anim_f3.png │ │ │ └── knight_m_run_anim_f3.png.meta │ │ ├── Wizard.meta │ │ └── Wizard │ │ │ ├── Left.meta │ │ │ ├── Left │ │ │ ├── wizzard_m_idle_anim_f0.png │ │ │ ├── wizzard_m_idle_anim_f0.png.meta │ │ │ ├── wizzard_m_idle_anim_f1.png │ │ │ ├── wizzard_m_idle_anim_f1.png.meta │ │ │ ├── wizzard_m_idle_anim_f2.png │ │ │ ├── wizzard_m_idle_anim_f2.png.meta │ │ │ ├── wizzard_m_idle_anim_f3.png │ │ │ ├── wizzard_m_idle_anim_f3.png.meta │ │ │ ├── wizzart_m_hit_anim_f0.png │ │ │ ├── wizzart_m_hit_anim_f0.png.meta │ │ │ ├── wizzart_m_run_anim_f0.png │ │ │ ├── wizzart_m_run_anim_f0.png.meta │ │ │ ├── wizzart_m_run_anim_f1.png │ │ │ ├── wizzart_m_run_anim_f1.png.meta │ │ │ ├── wizzart_m_run_anim_f2.png │ │ │ ├── wizzart_m_run_anim_f2.png.meta │ │ │ ├── wizzart_m_run_anim_f3.png │ │ │ └── wizzart_m_run_anim_f3.png.meta │ │ │ ├── Right.meta │ │ │ ├── Right │ │ │ ├── wizzard_m_idle_anim_f0.png │ │ │ ├── wizzard_m_idle_anim_f0.png.meta │ │ │ ├── wizzard_m_idle_anim_f1.png │ │ │ ├── wizzard_m_idle_anim_f1.png.meta │ │ │ ├── wizzard_m_idle_anim_f2.png │ │ │ ├── wizzard_m_idle_anim_f2.png.meta │ │ │ ├── wizzard_m_idle_anim_f3.png │ │ │ ├── wizzard_m_idle_anim_f3.png.meta │ │ │ ├── wizzart_m_hit_anim_f0.png │ │ │ ├── wizzart_m_hit_anim_f0.png.meta │ │ │ ├── wizzart_m_run_anim_f0.png │ │ │ ├── wizzart_m_run_anim_f0.png.meta │ │ │ ├── wizzart_m_run_anim_f1.png │ │ │ ├── wizzart_m_run_anim_f1.png.meta │ │ │ ├── wizzart_m_run_anim_f2.png │ │ │ ├── wizzart_m_run_anim_f2.png.meta │ │ │ ├── wizzart_m_run_anim_f3.png │ │ │ └── wizzart_m_run_anim_f3.png.meta │ │ │ ├── wizzard_m_idle_anim_f0.png │ │ │ ├── wizzard_m_idle_anim_f0.png.meta │ │ │ ├── wizzard_m_idle_anim_f1.png │ │ │ ├── wizzard_m_idle_anim_f1.png.meta │ │ │ ├── wizzard_m_idle_anim_f2.png │ │ │ ├── wizzard_m_idle_anim_f2.png.meta │ │ │ ├── wizzard_m_idle_anim_f3.png │ │ │ ├── wizzard_m_idle_anim_f3.png.meta │ │ │ ├── wizzart_m_hit_anim_f0.png │ │ │ ├── wizzart_m_hit_anim_f0.png.meta │ │ │ ├── wizzart_m_run_anim_f0.png │ │ │ ├── wizzart_m_run_anim_f0.png.meta │ │ │ ├── wizzart_m_run_anim_f1.png │ │ │ ├── wizzart_m_run_anim_f1.png.meta │ │ │ ├── wizzart_m_run_anim_f2.png │ │ │ ├── wizzart_m_run_anim_f2.png.meta │ │ │ ├── wizzart_m_run_anim_f3.png │ │ │ └── wizzart_m_run_anim_f3.png.meta │ │ ├── Projectiles.meta │ │ ├── Projectiles │ │ ├── Knife.meta │ │ ├── Knife │ │ │ ├── knife.png │ │ │ └── knife.png.meta │ │ ├── Rock.meta │ │ ├── Rock │ │ │ ├── rock.png │ │ │ └── rock.png.meta │ │ ├── SwordWave.meta │ │ └── SwordWave │ │ │ ├── swordwave.png │ │ │ └── swordwave.png.meta │ │ ├── Stairs.meta │ │ ├── Stairs │ │ ├── ladder.png │ │ └── ladder.png.meta │ │ ├── Walls.meta │ │ ├── Walls │ │ ├── wall.png │ │ └── wall.png.meta │ │ ├── Weapons.meta │ │ └── Weapons │ │ ├── Weapon.meta │ │ └── Weapon │ │ ├── weapon_rusty_sword.png │ │ └── weapon_rusty_sword.png.meta ├── Dependencies │ ├── Unity.Cecil.Mdb.dll │ ├── Unity.Cecil.Pdb.dll │ ├── Unity.Cecil.dll │ ├── Unity.Legacy.NRefactory.dll │ ├── Unity.TextMeshPro.Editor.dll │ ├── Unity.TextMeshPro.dll │ ├── UnityEditor.UI.dll │ ├── UnityEditor.dll │ ├── UnityEngine.AIModule.dll │ ├── UnityEngine.ARModule.dll │ ├── UnityEngine.AccessibilityModule.dll │ ├── UnityEngine.AndroidJNIModule.dll │ ├── UnityEngine.AnimationModule.dll │ ├── UnityEngine.AssetBundleModule.dll │ ├── UnityEngine.AudioModule.dll │ ├── UnityEngine.ClothModule.dll │ ├── UnityEngine.ClusterInputModule.dll │ ├── UnityEngine.ClusterRendererModule.dll │ ├── UnityEngine.CoreModule.dll │ ├── UnityEngine.CrashReportingModule.dll │ ├── UnityEngine.DSPGraphModule.dll │ ├── UnityEngine.DirectorModule.dll │ ├── UnityEngine.FileSystemHttpModule.dll │ ├── UnityEngine.GameCenterModule.dll │ ├── UnityEngine.GridModule.dll │ ├── UnityEngine.HotReloadModule.dll │ ├── UnityEngine.IMGUIModule.dll │ ├── UnityEngine.ImageConversionModule.dll │ ├── UnityEngine.InputLegacyModule.dll │ ├── UnityEngine.InputModule.dll │ ├── UnityEngine.JSONSerializeModule.dll │ ├── UnityEngine.LocalizationModule.dll │ ├── UnityEngine.ParticleSystemModule.dll │ ├── UnityEngine.PerformanceReportingModule.dll │ ├── UnityEngine.Physics2DModule.dll │ ├── UnityEngine.PhysicsModule.dll │ ├── UnityEngine.ProfilerModule.dll │ ├── UnityEngine.ScreenCaptureModule.dll │ ├── UnityEngine.SharedInternalsModule.dll │ ├── UnityEngine.SpriteMaskModule.dll │ ├── UnityEngine.SpriteShapeModule.dll │ ├── UnityEngine.StreamingModule.dll │ ├── UnityEngine.SubstanceModule.dll │ ├── UnityEngine.TLSModule.dll │ ├── UnityEngine.TerrainModule.dll │ ├── UnityEngine.TerrainPhysicsModule.dll │ ├── UnityEngine.TextCoreModule.dll │ ├── UnityEngine.TextRenderingModule.dll │ ├── UnityEngine.TilemapModule.dll │ ├── UnityEngine.UI.dll │ ├── UnityEngine.UIElementsModule.dll │ ├── UnityEngine.UIModule.dll │ ├── UnityEngine.UNETModule.dll │ ├── UnityEngine.UmbraModule.dll │ ├── UnityEngine.UnityAnalyticsModule.dll │ ├── UnityEngine.UnityConnectModule.dll │ ├── UnityEngine.UnityTestProtocolModule.dll │ ├── UnityEngine.UnityWebRequestAssetBundleModule.dll │ ├── UnityEngine.UnityWebRequestAudioModule.dll │ ├── UnityEngine.UnityWebRequestModule.dll │ ├── UnityEngine.UnityWebRequestTextureModule.dll │ ├── UnityEngine.UnityWebRequestWWWModule.dll │ ├── UnityEngine.VFXModule.dll │ ├── UnityEngine.VRModule.dll │ ├── UnityEngine.VehiclesModule.dll │ ├── UnityEngine.VideoModule.dll │ ├── UnityEngine.WindModule.dll │ ├── UnityEngine.XRModule.dll │ └── UnityEngine.dll ├── FSharp │ ├── Behavior │ │ ├── CameraBehavior.fs │ │ ├── CommonEntityBehavior.fs │ │ ├── EffectBehavior.fs │ │ ├── Enemy │ │ │ ├── Behavior.fs │ │ │ ├── Enemies │ │ │ │ ├── GolemBoss.fs │ │ │ │ ├── Jumper.fs │ │ │ │ ├── Stander.fs │ │ │ │ └── Tracker.fs │ │ │ ├── Table.fs │ │ │ └── Type.fs │ │ ├── GameDataUtils.fs │ │ ├── GameStateUtils.fs │ │ ├── Item │ │ │ ├── Behavior.fs │ │ │ ├── Items │ │ │ │ └── TestItem.fs │ │ │ ├── Table.fs │ │ │ └── Type.fs │ │ ├── Level │ │ │ ├── Behavior.fs │ │ │ ├── GeneratorUtils.fs │ │ │ ├── Generators │ │ │ │ ├── OpenEasyGenerator.fs │ │ │ │ └── TestGenerator.fs │ │ │ ├── Table.fs │ │ │ └── Type.fs │ │ ├── PlayerBehavior.fs │ │ ├── Projectile │ │ │ ├── Behavior.fs │ │ │ ├── Projectiles │ │ │ │ ├── GolemRock.fs │ │ │ │ ├── MeleeProjectile.fs │ │ │ │ ├── RangedProjectile.fs │ │ │ │ └── TestProjectile.fs │ │ │ ├── Table.fs │ │ │ └── Type.fs │ │ ├── ProjectileBehavior.fs │ │ └── Weapon │ │ │ ├── Behavior.fs │ │ │ ├── Table.fs │ │ │ ├── Type.fs │ │ │ └── Weapons │ │ │ ├── CameraShakeWeapon.fs │ │ │ ├── GolemArm.fs │ │ │ ├── NullWeapon.fs │ │ │ ├── TestMeleeWeapon.fs │ │ │ ├── TestRangedWeapon.fs │ │ │ └── TestRollWeapon.fs │ ├── Command │ │ └── CommandList.fs │ ├── Data Files │ │ └── leveldata.txt │ ├── Data │ │ ├── CameraData.fs │ │ ├── CommonEntityData.fs │ │ ├── ControlModel.fs │ │ ├── EffectData.fs │ │ ├── EnemyData.fs │ │ ├── EntityType.fs │ │ ├── GameData.fs │ │ ├── GameState.fs │ │ ├── ItemData.fs │ │ ├── LevelData.fs │ │ ├── LevelParam.fs │ │ ├── PlayerData.fs │ │ ├── ProjectileData.fs │ │ ├── TileData.fs │ │ └── WeaponData.fs │ ├── FSharp.fsproj │ ├── FSharp.sln │ ├── HighScore.txt │ ├── Interpretation │ │ ├── CameraInterpreter.fs │ │ ├── Interpreter.fs │ │ └── UserContoller.fs │ ├── Services │ │ ├── InputConfigurationService.fs │ │ ├── LevelDataService.fs │ │ └── ScoreSavingService.fs │ ├── Test │ │ └── TestGameState.fs │ ├── Unity │ │ ├── CameraManager.fs │ │ ├── Collision │ │ │ ├── PlayerCollision.fs │ │ │ └── ProjectileCollision.fs │ │ ├── Destroyer │ │ │ └── Destroyer.fs │ │ ├── EnemyAI │ │ │ ├── EnemyAI.fs │ │ │ ├── EnemyAIFunctions │ │ │ │ ├── GolemBossAI.fs │ │ │ │ ├── JumperAI.fs │ │ │ │ ├── StanderAI.fs │ │ │ │ └── TrackerAI.fs │ │ │ ├── EnemyAITable.fs │ │ │ └── EnemyAIUtils.fs │ │ ├── GameObjectWrapper.fs │ │ ├── GameOverController.fs │ │ ├── HUD │ │ │ ├── HUDFloorUpdate.fs │ │ │ └── HUDTimerUpdate.fs │ │ ├── LevelGameObject.fs │ │ ├── MainMenuController.fs │ │ ├── PauseMenuController.fs │ │ ├── ProceduralGenerators │ │ │ ├── EntityGenerator.fs │ │ │ └── LevelGenerator.fs │ │ ├── Spawner │ │ │ └── Spawner.fs │ │ ├── UpdateLoop.fs │ │ ├── UpdateMultiplayer.fs │ │ ├── UpdateSingleplayer.fs │ │ ├── Updater │ │ │ ├── CameraUpdater.fs │ │ │ ├── CommonEntityUpdater.fs │ │ │ ├── EnemyUpdater.fs │ │ │ ├── GameDataUpdater.fs │ │ │ ├── ItemUpdater.fs │ │ │ ├── LevelUpdater.fs │ │ │ ├── PlayerUpdater.fs │ │ │ ├── ProjectileUpdater.fs │ │ │ ├── UpdaterDispatcher.fs │ │ │ └── WeaponUpdater.fs │ │ └── UserController.fs │ └── packages │ │ ├── FSharp.Core.4.6.2 │ │ ├── .signature.p7s │ │ ├── FSharp.Core.4.6.2.nupkg │ │ └── lib │ │ │ ├── net45 │ │ │ ├── FSharp.Core.optdata │ │ │ └── FSharp.Core.sigdata │ │ │ └── netstandard1.6 │ │ │ ├── FSharp.Core.optdata │ │ │ └── FSharp.Core.sigdata │ │ └── System.ValueTuple.4.4.0 │ │ ├── .signature.p7s │ │ ├── LICENSE.TXT │ │ ├── System.ValueTuple.4.4.0.nupkg │ │ ├── THIRD-PARTY-NOTICES.TXT │ │ ├── lib │ │ ├── MonoAndroid10 │ │ │ └── _._ │ │ ├── MonoTouch10 │ │ │ └── _._ │ │ ├── netcoreapp2.0 │ │ │ └── _._ │ │ ├── netstandard2.0 │ │ │ └── _._ │ │ ├── xamarinios10 │ │ │ └── _._ │ │ ├── xamarinmac20 │ │ │ └── _._ │ │ ├── xamarintvos10 │ │ │ └── _._ │ │ └── xamarinwatchos10 │ │ │ └── _._ │ │ ├── ref │ │ ├── MonoAndroid10 │ │ │ └── _._ │ │ ├── MonoTouch10 │ │ │ └── _._ │ │ ├── netcoreapp2.0 │ │ │ └── _._ │ │ ├── netstandard2.0 │ │ │ └── _._ │ │ ├── xamarinios10 │ │ │ └── _._ │ │ ├── xamarinmac20 │ │ │ └── _._ │ │ ├── xamarintvos10 │ │ │ └── _._ │ │ └── xamarinwatchos10 │ │ │ └── _._ │ │ ├── useSharedDesignerContext.txt │ │ └── version.txt ├── FuncGameDev.sln ├── Logs │ └── Packages-Update.log ├── ProjectSettings │ ├── AudioManager.asset │ ├── ClusterInputManager.asset │ ├── DynamicsManager.asset │ ├── EditorBuildSettings.asset │ ├── EditorSettings.asset │ ├── GraphicsSettings.asset │ ├── InputManager.asset │ ├── NavMeshAreas.asset │ ├── NetworkManager.asset │ ├── Physics2DSettings.asset │ ├── PresetManager.asset │ ├── ProjectSettings.asset │ ├── ProjectVersion.txt │ ├── QualitySettings.asset │ ├── TagManager.asset │ ├── TimeManager.asset │ ├── UnityConnectSettings.asset │ ├── VFXManager.asset │ └── XRSettings.asset └── TestProject │ ├── TestProject.fsproj │ ├── bin │ └── Debug │ │ └── TestProject.XML │ └── test │ └── TestGameState.fsx └── README.md /.gitattributes: -------------------------------------------------------------------------------- 1 | ## Unity ## 2 | 3 | *.cs diff=csharp text 4 | *.cginc text 5 | *.shader text 6 | 7 | *.mat merge=unityyamlmerge eol=lf 8 | *.anim merge=unityyamlmerge eol=lf 9 | *.unity merge=unityyamlmerge eol=lf 10 | *.prefab merge=unityyamlmerge eol=lf 11 | *.physicsMaterial2D merge=unityyamlmerge eol=lf 12 | *.physicMaterial merge=unityyamlmerge eol=lf 13 | *.asset merge=unityyamlmerge eol=lf 14 | *.meta merge=unityyamlmerge eol=lf 15 | *.controller merge=unityyamlmerge eol=lf 16 | 17 | 18 | ## git-lfs ## 19 | 20 | #Image 21 | *.jpg filter=lfs diff=lfs merge=lfs -text 22 | *.jpeg filter=lfs diff=lfs merge=lfs -text 23 | *.png filter=lfs diff=lfs merge=lfs -text 24 | *.gif filter=lfs diff=lfs merge=lfs -text 25 | *.psd filter=lfs diff=lfs merge=lfs -text 26 | *.ai filter=lfs diff=lfs merge=lfs -text 27 | 28 | #Audio 29 | *.mp3 filter=lfs diff=lfs merge=lfs -text 30 | *.wav filter=lfs diff=lfs merge=lfs -text 31 | *.ogg filter=lfs diff=lfs merge=lfs -text 32 | 33 | #Video 34 | *.mp4 filter=lfs diff=lfs merge=lfs -text 35 | *.mov filter=lfs diff=lfs merge=lfs -text 36 | 37 | #3D Object 38 | *.FBX filter=lfs diff=lfs merge=lfs -text 39 | *.fbx filter=lfs diff=lfs merge=lfs -text 40 | *.blend filter=lfs diff=lfs merge=lfs -text 41 | *.obj filter=lfs diff=lfs merge=lfs -text 42 | 43 | #ETC 44 | *.a filter=lfs diff=lfs merge=lfs -text 45 | *.exr filter=lfs diff=lfs merge=lfs -text 46 | *.tga filter=lfs diff=lfs merge=lfs -text 47 | *.pdf filter=lfs diff=lfs merge=lfs -text 48 | *.zip filter=lfs diff=lfs merge=lfs -text 49 | *.dll filter=lfs diff=lfs merge=lfs -text 50 | *.unitypackage filter=lfs diff=lfs merge=lfs -text 51 | *.aif filter=lfs diff=lfs merge=lfs -text 52 | *.ttf filter=lfs diff=lfs merge=lfs -text 53 | *.rns filter=lfs diff=lfs merge=lfs -text 54 | *.reason filter=lfs diff=lfs merge=lfs -text 55 | *.lxo filter=lfs diff=lfs merge=lfs -text -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | [Ll]ibrary/ 2 | [Tt]emp/ 3 | [Oo]bj/ 4 | [Bb]uild/ 5 | [Bb]uilds/ 6 | Assets/AssetStoreTools* 7 | 8 | # Visual Studio cache directory 9 | .vs/ 10 | 11 | # Autogenerated VS/MD/Consulo solution and project files 12 | ExportedObj/ 13 | .consulo/ 14 | *.csproj 15 | *.unityproj 16 | *.suo 17 | *.tmp 18 | *.user 19 | *.userprefs 20 | *.pidb 21 | *.booproj 22 | *.svd 23 | *.pdb 24 | *.opendb 25 | *.dll 26 | *.xml 27 | *.json 28 | 29 | # Unity3D generated meta files 30 | *.pidb.meta 31 | *.pdb.meta 32 | 33 | # Unity3D Generated File On Crash Reports 34 | sysinfo.txt 35 | 36 | # Builds 37 | *.apk 38 | *.unitypackage 39 | 40 | # TextMesh Pro files 41 | [Aa]ssets/TextMesh*Pro/ -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 66e29f65ae6a52a42861c0e6b7b45861 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84c1d936645dab447bee40217771fa49 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Demon.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8c9063b5e51f89b49b1ee3dc4b0687b6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Demon/Demon_Controller.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: baae8e8ce8236274b8fc2c401a070f18 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Demon/Demon_Idle_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 640cc69063aed504e92978a244ca8af2 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Demon/Demon_Idle_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d2a0c29fa57c934888833dd3ca2699a 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Demon/Demon_Run_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b7bac8b3deb7103418860bee84a0909f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Demon/Demon_Run_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a792ac3be4f8fb040a639294d1f83ead 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Golem.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f6e20fdfe8b07724780effc39722c3c6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Golem/Golem_Controller.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a3ca7141bc5ff7041882c22106f9daa7 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Golem/Golem_Idle_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 091e14131806c974793f17e68cb4550e 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Golem/Golem_Idle_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6a5b377e8abfac14db03dcf700b54bf7 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Golem/Golem_Run_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fe7bfbb3b4808504e9314ddc06734d88 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Golem/Golem_Run_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 71795e85f4fc38f4599d3aeff1bb1d06 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Slime.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 71c46383e6aa3ec45ac79561c6c98306 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Slime/Slime_Controller.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b31839cf1d85f2d41983d03c6e5ce408 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Slime/Slime_Idle_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e04dc32861a75d340b167c072f5756ac 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Slime/Slime_Idle_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d4234cdd0de7cf94e9753e595f8407a1 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Slime/Slime_Run_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 35ec13903580640429d12777df36441b 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Slime/Slime_Run_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d06fb04201396cc4fb56049afc7935bb 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Wolf.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 378984bf7e7fd7b41b5241f59e5c542b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Wolf/Wolf_Controller.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 035e42046b9d23e4f84d6a5f4c808ca5 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Wolf/Wolf_Idle_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a5e485f2f7af154286179f5e92f483f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Wolf/Wolf_Idle_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aeffa9ce48e22bb4684c65d510d6c53c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Wolf/Wolf_Run_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7c36b351c517100419f58763105a360b 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Enemies/Wolf/Wolf_Run_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 331dccc97d4f2784eb067ec39f2bdf32 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Items.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: db915160ede2a8a4690712f6e2b50c22 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Items/Null.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0d938add66704c841939b664050a8f9c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Items/Null/Null_Controller.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4830079ebebb1c040a47fc12df3de26c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f6d4c33bf84a8734282150cec70e072a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Knight.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b3933f0f621898f4da299511acfe90d3 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Knight/Knight_Controller.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 07dda52ce608ff44dbbfc3c75fc34c9b 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 9100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Knight/Knight_Idle_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 411f6260af510014dbd1543126b5e85d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Knight/Knight_Idle_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 95ad20a3d356be04e8882e7f6711731b 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Knight/Knight_Run_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 02030018135acfd4386af6ab70f9fa79 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Knight/Knight_Run_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1ca6d595c34e05244a2e2ab308916b93 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Wizard.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 38c57f5b32b3b284e99fccccb5879dcc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Wizard/Wizard_Controller.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5487b53c4d5849148a13372d4a251c4f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Wizard/Wizard_Idle_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3c5dedd4166b975418479df6147cf0fa 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Wizard/Wizard_Idle_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 15551561655a1b7459273d3e8a3eb49f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Wizard/Wizard_Run_Left.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f6d74c844f5b17c46ac2cd34ea9e42ae 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Animations/Players/Wizard/Wizard_Run_Right.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57d88801afe858c48aeb6f06a987f400 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/FSharp.Core.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7adc09d1a4e1cda1b1de82ae6d00fa333f0f3e9d5d7e11f5005e6e571bc9acec 3 | size 2721840 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/FSharp.Core.dll.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1bb05b4e95dc7b847a8486718ef7366c 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Any: 16 | second: 17 | enabled: 1 18 | settings: {} 19 | - first: 20 | Editor: Editor 21 | second: 22 | enabled: 0 23 | settings: 24 | DefaultValueInitialized: true 25 | - first: 26 | Windows Store Apps: WindowsStoreApps 27 | second: 28 | enabled: 0 29 | settings: 30 | CPU: AnyCPU 31 | userData: 32 | assetBundleName: 33 | assetBundleVariant: 34 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/FSharp.dll.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 89318610a33d9ea41a3bd914e90e0cb6 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Any: 16 | second: 17 | enabled: 1 18 | settings: {} 19 | - first: 20 | Editor: Editor 21 | second: 22 | enabled: 0 23 | settings: 24 | DefaultValueInitialized: true 25 | - first: 26 | Windows Store Apps: WindowsStoreApps 27 | second: 28 | enabled: 0 29 | settings: 30 | CPU: AnyCPU 31 | userData: 32 | assetBundleName: 33 | assetBundleVariant: 34 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: acb4d9e29f8e7f04794e819d14c40a0b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Circle.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:82e8394a3122deb48992b7c6df384cba4b04bc389b776f3d26100c390815e091 3 | size 78 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/GolemBoss.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c1092da2a9d98ad4c921887661641c1c 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Item.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a4621f989a395ab498f6a5f37ac7911e 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Jumper.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 10acc612bbedeeb4a95946663d943cf3 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Knife.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: abed6d5df549314408809d5e741fd3ca 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9592d1a869099924b8c206f6a7acd4b1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/Blue.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 54d21f6ece3b46479f0c328f8c6007e0, type: 3} 13 | m_Name: Blue 14 | m_EditorClassIdentifier: 15 | colorMode: 3 16 | topLeft: {r: 0.2979263, g: 0.8183755, b: 0.9716981, a: 1} 17 | topRight: {r: 0.29803923, g: 0.81960785, b: 0.972549, a: 1} 18 | bottomLeft: {r: 0.09789959, g: 0.6641464, b: 0.8301887, a: 1} 19 | bottomRight: {r: 0.09803922, g: 0.6627451, b: 0.83137256, a: 1} 20 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/Blue.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2da0c94b9cdfa1740bff3823c1c2471a 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/Clock.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:27e44989b981d1c33ac9db97fedf76fe07bab88a8b357ceb1fbe7e7bba0366ed 3 | size 66951 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/GameIconDefault.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3837eda6c26defd5021a97453240546a8980b414fc301ab3564be0ab1954b243 3 | size 17582 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/GameOverBackground.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:28414fd6e3c880ae18eb39f90fa728bd97d276e791a296bbb2d3c7f55c550169 3 | size 19771 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/MainMenuBackground.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4a445661f380d07f20a18b803f84414b12f7d61cdeb15a57581fede68d911b02 3 | size 15956 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/MainMenuPlayerAddition.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ff21096425e3cc5c2f3688e138493968e5ddb1a699fdbba55b222a275ea0cc9b 3 | size 15843 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/NewGameButton.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:525d74cb58e42fb9c838c1e99e7133be5752aab01bb2321b5a7ac57aebd21280 3 | size 1486 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/NewGameButton.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 34576ba449770fd48b87edf456cd792e 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/SettingsButton.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:6c4a290058a3c7829def95a8dd174f3de8ab8ca5a05d9f4c2e645252eece0258 3 | size 1310 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/SettingsButton.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 43d6d7eee61e5304da5969af669d3fe3 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/Square.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:82e8394a3122deb48992b7c6df384cba4b04bc389b776f3d26100c390815e091 3 | size 78 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/White.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 54d21f6ece3b46479f0c328f8c6007e0, type: 3} 13 | m_Name: White 14 | m_EditorClassIdentifier: 15 | colorMode: 0 16 | topLeft: {r: 1, g: 1, b: 1, a: 1} 17 | topRight: {r: 1, g: 1, b: 1, a: 1} 18 | bottomLeft: {r: 1, g: 1, b: 1, a: 1} 19 | bottomRight: {r: 1, g: 1, b: 1, a: 1} 20 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/MainMenu/White.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: abab3f97a3fdac648aa813dae29bfb0c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Player.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3e0fdef45921d39419968307661c30cb 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Rock.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ee33b67f09c533a49816bffac8ad7f9c 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Square.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:82e8394a3122deb48992b7c6df384cba4b04bc389b776f3d26100c390815e091 3 | size 78 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Stairs.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3eb00b1b048ec3479cf99c97d983e7a 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Stander.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 822ae69cbf81c1b4981f3736ad7c6ccc 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/SwordWave.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9f12f26599484874eb690d611e20de81 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Tracker.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f87b373a92d23de43be023c3192e92d4 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Wall.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 842c2ea90034c6c419ce063247d3cbca 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Resources/Weapon.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dffaaa556c8da3140a4f4814a877ca97 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f3feadcf545bc4240b26332c4222ec3e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Scenes/GameOver.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 105904a4296a5214881872b1406c50d2 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Scenes/MainMenu.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d068e39e872057c4f931cf687c3beb17 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Scenes/Multiplayer.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7873a41d5fa5846429de92a311dc3293 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Scenes/SampleScene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2cda990e2423bbf4892e6590ba056729 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Scenes/Singleplayer.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b037d387d974066429f696f49adb1771 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ea36dd4b21dc6e441b9efd66ae3a91f3 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Backgrounds.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7c3d04c3b4c5d1b49a6688cf782f5f97 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Backgrounds/background.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ad75a102b3cbf190fdf1965fd962cf8c7f95fed1ef044305b33e9bf1b925d1ec 3 | size 211 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c369e63622982df4995e8e846b74f77a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c48cc24c628528c4dbcab776204266ee 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Left.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f21ad648e0537db4b803ea8845947a80 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Left/chort_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:564dc22922fc1020ee52dee42c77ee52bb89ec3ac527cac769460499eadc0113 3 | size 295 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Left/chort_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f2993a54cb84d7ff4252508669e961a09890f7238e1eafda505fa78c1c439e0d 3 | size 281 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Left/chort_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ea69a25b686eb09b03032f787d90d44c5727e0fc93c35c8b9fb0f2b4127ad140 3 | size 290 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Left/chort_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:cffd209773bb256e2aea6f232485343e44cf83fede569125f50bbaa6a126b1bb 3 | size 305 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Left/chort_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ccccf1a1c36f21886090c6673f613b73501026b17b42cc103cea9ecc942e56ff 3 | size 311 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Left/chort_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:45b06f7abb992730ea91cff31ff5a0f4d3e0f94b9e0fcb814d8711fa22db0417 3 | size 314 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Left/chort_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d0dcdc13a1d66f1443bfb498416de245fbde6adae0b7395d88497d8b3b059b1e 3 | size 311 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Left/chort_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:db23176478af8823e38b4a42969e1afa44b7567f4f16c7e0db12a9f4b35a75a3 3 | size 289 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Right.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84eeed5198584054d98b75e9a82d4c63 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Right/chort_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:6c652592b7fd1aa58ebfc31f79d5fc7037de838bdbe237f325bf2c021127c927 3 | size 276 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Right/chort_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:39ddadd265fd453ad3b6379cae485576fff1e2445177b53dfa32d1c9d1e53315 3 | size 229 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Right/chort_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:e91deef8d7940b17215361fdc5fe82c8d973d7e0757e06df93ac901de224da6f 3 | size 248 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Right/chort_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:cf55ce012e9146a6e723f04e8684c8e491a9714a69b5505e23caf1558f849dc4 3 | size 302 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Right/chort_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d94af9d3f8866b01fc02dc00bba6b6287cce3db326170ca949ff43693871833f 3 | size 288 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Right/chort_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:171b2cde22de17de414aa72334d9859f400d704b01ccf7bfa901aafc1c3db3f6 3 | size 295 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Right/chort_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:73a5ed113f0e20acbf5368053d3b44b467e2c3f9bb57de0d732842d5d4d89661 3 | size 299 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/Right/chort_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:53e7eb0879bc67966173e3d529d52e6e5732cd9526d9fa96c6cced5184258dd3 3 | size 273 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Demon/demon.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1583c136aad1ea7a9864d027913f7fba5923f305ceafcba6a34acc06c361d685 3 | size 283 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 002236486d6b3084bb10a1c2e0bd0860 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a779f700546265408767141cea3abac 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_idle_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d03a23d1962e819357badf41ffc2f318587265c0762b5f4ea1f1400dc8733ab3 3 | size 783 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_idle_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:208b7e7669c90def4ec299179ff8fd881605521036de1bc17a642dea6e22babb 3 | size 779 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_idle_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:385f6c58c219e93cc38217d36005b8efae627f57fb9ed7fd3553e61754b90681 3 | size 763 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_idle_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3c89d5f92b7cb33fd1fa1f7ec3193358252d1bbf28dd574fff66cdee28804561 3 | size 747 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_idle_f4.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:2540c0472d18d9c19d895fccbbe4b3d49cfe929178fc6585a3cc38113a9ce210 3 | size 766 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_idle_f5.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:2c6754ba1c0eb4d5346eabc9879bf48c046cedb122688a9280974ff628fade40 3 | size 782 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_walk_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:eaf52c92889075603a2d1bdba370a0f27f829ded306972ac6ab39273763747d5 3 | size 785 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_walk_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:17b15ab97d16bc594ba2ddd893521706fd8ddcd098b581bc5b29ca48ab920418 3 | size 793 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_walk_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:5121bbc9cbac97afe7c67165c62cf27aa388536b75025f5f9935180b8c66d87a 3 | size 797 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_walk_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:15b79b10d7014b046ecf14dd3e7498c426923b37a539236365f18ae4e1992ea6 3 | size 773 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_walk_f4.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f726d6f6b8014c022a399f3352f953c87e0671943c7a567420fb372342805322 3 | size 764 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Left/golem_walk_f5.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1e23fad06dad7ba31678c38d1428c9e896915439a708ad123e94302fbb1068e0 3 | size 755 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 278af7c83c613a04eb25b1b4ecfecc78 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_idle_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:30f0d1601d47131fa56a5cd01c2feabfb5b69c4ceba82d261537a0a9f98e8dba 3 | size 740 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_idle_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:0ca749a1e49fd18b731081c8a997ad85d408c87150fda5fde28b0f86989c55b0 3 | size 725 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_idle_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4278a825dc8cb389955cff2cd278de12968d4f680453ab93a22d95b53037c4db 3 | size 713 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_idle_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a59f9b541972bd9bd7ab8795325718c8c7b040c75b86ed7cf0c4f23020c67b38 3 | size 704 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_idle_f4.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:66409217e98e72e52aaf0c7b81376a309b6fa97ec95aeae98130146154acd328 3 | size 723 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_idle_f5.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:c20e59c83ae9fcaa59fc64c2f6b102b74891b20da766d03fcbcf4d285cea1949 3 | size 734 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_walk_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:16786a493b845701f8bb75595fd4cc155776c12d3ed69452d760cec02d5d1c3f 3 | size 740 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_walk_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a1859b7d5728903e0c6d3daa80a564563c34e58ba157f101008e051f69351a6d 3 | size 738 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_walk_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:cf6a588fa1f42f1e34ee330e471c2a886b320f6208d29d1da827f71bb615a7a4 3 | size 747 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_walk_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d1f06822b58022ff1570adee235e85a232c7004a6f2e583e5889b1dae78d8ee5 3 | size 736 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_walk_f4.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:16fdeced8235e8efaaac09e09d9002b24b470a8326679c1e0f9ce5bb8c956102 3 | size 723 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/Right/golem_walk_f5.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:537125f85afcb8fdffff71459a001547d418bcef92fe55147ea19ba704756c5a 3 | size 715 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Golem/golem.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1d6afd39fa4fcf496a434d8f4af3c62276514763648f1257b4c4a978cff06374 3 | size 748 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b7830fcfb4e48ff4eb068d20d0d3019c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Left.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7855a07981af08549b69e2c9d61bc84b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Left/swampy_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:6cfcd8a2cbe086069a011075684982d28ea40e78d5804a761e21fda126291557 3 | size 272 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Left/swampy_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d8e3fc9fd283e3bcde951d44e2d59eb4add0eb5c878c65e5f6b73d40ec02274a 3 | size 276 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Left/swampy_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:997b247f40ce9f2b2776a45ed16bdd1872958e27674133bb507b245af7f1174a 3 | size 291 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Left/swampy_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f02d8db094e491879e84dd3e3cdcc7dd3280392397a8f96c6e0b9c405e44ff65 3 | size 279 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Left/swampy_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:6cfcd8a2cbe086069a011075684982d28ea40e78d5804a761e21fda126291557 3 | size 272 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Left/swampy_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d8e3fc9fd283e3bcde951d44e2d59eb4add0eb5c878c65e5f6b73d40ec02274a 3 | size 276 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Left/swampy_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:997b247f40ce9f2b2776a45ed16bdd1872958e27674133bb507b245af7f1174a 3 | size 291 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Left/swampy_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f02d8db094e491879e84dd3e3cdcc7dd3280392397a8f96c6e0b9c405e44ff65 3 | size 279 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Right.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a6560dbded67ba4f975687a807197ab 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Right/swampy_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7bd05195f1038f51a7b3c2dc31f68372136b812dc14212df836e2eb028a43655 3 | size 264 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Right/swampy_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:805080ba48835c9168ee1198fe8fc8368ba3156028189d9512938732e7ad1e38 3 | size 265 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Right/swampy_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7203f826ccd39905f0f3a1b298b2d93256a21af7e39983484b28ec1c89148c92 3 | size 273 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Right/swampy_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a7928dd15751bf16426d125c9d3cd026e6352cde5d7df896cb106d885fb8e145 3 | size 268 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Right/swampy_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7bd05195f1038f51a7b3c2dc31f68372136b812dc14212df836e2eb028a43655 3 | size 264 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Right/swampy_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:805080ba48835c9168ee1198fe8fc8368ba3156028189d9512938732e7ad1e38 3 | size 265 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Right/swampy_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7203f826ccd39905f0f3a1b298b2d93256a21af7e39983484b28ec1c89148c92 3 | size 273 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/Right/swampy_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a7928dd15751bf16426d125c9d3cd026e6352cde5d7df896cb106d885fb8e145 3 | size 268 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/swampy_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7bd05195f1038f51a7b3c2dc31f68372136b812dc14212df836e2eb028a43655 3 | size 264 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/swampy_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:805080ba48835c9168ee1198fe8fc8368ba3156028189d9512938732e7ad1e38 3 | size 265 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/swampy_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7203f826ccd39905f0f3a1b298b2d93256a21af7e39983484b28ec1c89148c92 3 | size 273 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/swampy_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a7928dd15751bf16426d125c9d3cd026e6352cde5d7df896cb106d885fb8e145 3 | size 268 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/swampy_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7bd05195f1038f51a7b3c2dc31f68372136b812dc14212df836e2eb028a43655 3 | size 264 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/swampy_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:805080ba48835c9168ee1198fe8fc8368ba3156028189d9512938732e7ad1e38 3 | size 265 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/swampy_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7203f826ccd39905f0f3a1b298b2d93256a21af7e39983484b28ec1c89148c92 3 | size 273 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Slime/swampy_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a7928dd15751bf16426d125c9d3cd026e6352cde5d7df896cb106d885fb8e145 3 | size 268 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8066094277010f0479f321df52c61a32 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Left.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 325a65f4a3224e440832f110b94431e1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Left/wolf_idle_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d6c18c4e0415470a41fc379505a8467cf92a38ac959ba9298960ba413419487d 3 | size 344 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Left/wolf_idle_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:43e11bf7e9a44f86a59fc2fdd2758079294ef03df17d83ead7ee18ede14e7a4a 3 | size 347 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Left/wolf_idle_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d6c66726487c31972e18b680565a3a956ec12cf4764ae8f6e404c4a2bb07923c 3 | size 323 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Left/wolf_idle_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7f737ea807a12f77704f5308398bc8e0fd1f126fe74f524385331f5ad4ab2bda 3 | size 330 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Left/wolf_run_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:13b8fbf05e8efc90406de7c5582daf3ee047ba5a4abd8a706fdd848f38c9d581 3 | size 344 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Left/wolf_run_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7735cb7c606801ea8f717047cb291fbcdd6fc95e75c72cc0aeea01422267414b 3 | size 345 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Left/wolf_run_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ebb8b87cf71e069605786579356f4448dc5dbdf5444afc2e1db66926eb8f6c96 3 | size 345 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Left/wolf_run_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:43e8b0e408bb5aa0839a788d933bcf430c0152bba84d1c4c2db72891f6a24d7a 3 | size 337 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Right.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ddff54632d1be8344ab6f76456753e8f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Right/wolf_idle_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:5482ef359090f107b2a663f82a071d448e48a5d15f2d4c3eb0a208fdca1454b4 3 | size 348 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Right/wolf_idle_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:6678d4e4001bf51e5ffc04e2881c176be4f03df206f32829c52a89c080b1112e 3 | size 342 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Right/wolf_idle_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1e2674b61b35504c3c160ef2833d126d293fc82f236df3be28366846dd41aaf9 3 | size 327 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Right/wolf_idle_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9e00f6e9a31a57081995db18236e60de0a81eee2abc3d90ce6349d0313465a64 3 | size 336 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Right/wolf_run_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:0f562b4d78695282da83939cb15ae8a9341ce71e545ff1ff1e5ce86d112cfc62 3 | size 344 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Right/wolf_run_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:2b5cdb5480ad1677754cb168f0eb67eb7ba35d5f46214d7f58480d658e5639ee 3 | size 346 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Right/wolf_run_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ddb3593ca44fbbd57a81e6e6fbe8f344e6e28ce4962976e432d368950e126b89 3 | size 342 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/Right/wolf_run_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4cfa7dc61ed9a0370716fe93d0ab63a599f800ea047dbd9668297a87760ec3f0 3 | size 352 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Enemies/Wolf/wolf.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d8dd9daf221a0890138039e33a1454e99d662032e9480f5fd70bcc3e1fddde96 3 | size 358 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Items.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: db0b6894ada0dbf459b950ef3529c176 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Items/Time.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 10ff6f1e25697614b9ffd7d1e830d47a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Items/Time/time.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:776150033cb93467b44b6d12bc93777a8cf8b125beeadd3dbadcd62076712307 3 | size 365 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ba856eea84d4a50479981620526d3802 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a0c42b53ddd7f4643ae14e133084a222 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Left.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2823ed3a930c3d34b8f51a6ea02ca7a7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Left/knight_m_hit_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:87af30665639e1f8a8f9084c7c8feb3205423ad5b07b6661addc9c362874320b 3 | size 303 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Left/knight_m_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a3a6aab9dc0219087cfc73333df39928453f2fdff0b4c155b2bfb2d9cce4b3f0 3 | size 297 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Left/knight_m_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:19a938c828a4acbeae4e3d2ea4372d832a1b68c9e5c48989f096475ee94e71ee 3 | size 292 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Left/knight_m_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ef3d2cbb9b98fc0a9560713ef47854d725c467ae81776318092879183ab2f860 3 | size 294 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Left/knight_m_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:163ee60642280fc9eb550d233e9e2c21d143168488fff665bc1ab18dbda16e61 3 | size 290 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Left/knight_m_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:12af11bd7397f2420df4d0ac9f9bd5a1e199a1cfb2b250c243db829adc5febf2 3 | size 295 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Left/knight_m_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:cd039d54d67dbf8be6d9d726850c3d9c72781382e4cbfb2a6c502dfeac1cb490 3 | size 294 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Left/knight_m_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d84a9c5ebc6968bdc388080f8506c7f0353f287bb1c19c8a44deb3c6f78c04e8 3 | size 302 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Left/knight_m_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:aae3f3c442abd31aeeaf0e0cdeefeab1a8c1c1f3b75fa2d9f90dc9eb6c68e320 3 | size 297 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Right.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 37dc9b0466f9be04ca172c29ef00ebf7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Right/knight_m_hit_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7505106fa3d87be2b3aea98dbd965404c0f2722fa95bc0f1218aaf8f3fa6d879 3 | size 323 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Right/knight_m_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f7b378563f0dab94a7326d814e67d0f8692b1d0faf89c9bad45a24a45808b7b6 3 | size 334 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Right/knight_m_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:bf3eaf3ea9d64841e4ed599e74136e5369276861ad9b2c1e2b4ad39a5f2225eb 3 | size 312 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Right/knight_m_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b2cfb6a5970e191b7b3a7352d2d8dce51e06ed8b02776ba4ec0842c7bfbc9105 3 | size 319 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Right/knight_m_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:501649bfb767dba0283279e427392735a6791782d423af7ca6a50728f35dc29d 3 | size 328 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Right/knight_m_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f7ec2f4e553f28d380e532962d471d7d12b93adff94d07d206bd73fd86bad8f9 3 | size 335 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Right/knight_m_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:c5f9f1306d43d5a01532382825c68af69d51cf673ba25ecdc5cfb9020c02e00f 3 | size 338 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Right/knight_m_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4769b4eca5847fcbf831e163210ce8174d8d9fe019750fa401ac78fe8eeee473 3 | size 334 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/Right/knight_m_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:564aa220b72fd14a10fd25370a714e0916f59ae12ceea8bfd1f8bb923b6144d5 3 | size 335 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/knight_m_hit_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7505106fa3d87be2b3aea98dbd965404c0f2722fa95bc0f1218aaf8f3fa6d879 3 | size 323 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/knight_m_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f7b378563f0dab94a7326d814e67d0f8692b1d0faf89c9bad45a24a45808b7b6 3 | size 334 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/knight_m_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:bf3eaf3ea9d64841e4ed599e74136e5369276861ad9b2c1e2b4ad39a5f2225eb 3 | size 312 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/knight_m_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b2cfb6a5970e191b7b3a7352d2d8dce51e06ed8b02776ba4ec0842c7bfbc9105 3 | size 319 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/knight_m_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:501649bfb767dba0283279e427392735a6791782d423af7ca6a50728f35dc29d 3 | size 328 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/knight_m_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f7ec2f4e553f28d380e532962d471d7d12b93adff94d07d206bd73fd86bad8f9 3 | size 335 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/knight_m_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:c5f9f1306d43d5a01532382825c68af69d51cf673ba25ecdc5cfb9020c02e00f 3 | size 338 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/knight_m_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4769b4eca5847fcbf831e163210ce8174d8d9fe019750fa401ac78fe8eeee473 3 | size 334 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Knight/knight_m_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:564aa220b72fd14a10fd25370a714e0916f59ae12ceea8bfd1f8bb923b6144d5 3 | size 335 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c7f1c1b1dafbbf147a0f94ba6fc17b10 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Left.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a381d1c26462b324c932d65a09a2b543 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Left/wizzard_m_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:22093b682831ad0fe864eb668a5c533ea8748fa3161723f5abbce282d072348e 3 | size 322 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Left/wizzard_m_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b974f3b604dd529ba73d90a2c02054f2e12d241ea8cee6ccd8e346e815cd3683 3 | size 328 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Left/wizzard_m_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:c6ca95fdd6d8d282ef667b40a640eb631851c665455a816cd60f587214d732b4 3 | size 321 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Left/wizzard_m_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:235e3db0af83491f853434922ef4ee343cd7adc468a6adf389d2547a3bda9128 3 | size 322 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Left/wizzart_m_hit_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:36a847fd18e40554ae5005032fac89a565abcb42301fefe4f0bbe09fa4df7218 3 | size 343 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Left/wizzart_m_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:22ec4d65241da169320a1a36150fd294855ecf42c9100ed5d01afef66f4cd214 3 | size 325 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Left/wizzart_m_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d45cc1e619dc31bd40b1a6758abbc1a23382a35a47f45895e652cb318ac91903 3 | size 320 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Left/wizzart_m_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:38c338e09ec55442390708a16a0e89a041944d9ef853a914f7dde9cf172a971d 3 | size 332 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Left/wizzart_m_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:c28b22143db1537cf21335283b361000d180380d04339cefd8200a94ebbd8afc 3 | size 328 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Right.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3738a7269f5145d4e9d5663a4e412be2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Right/wizzard_m_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3190caca3f50f351ed72cf73acddebd55b3017a5cb3dfc1670dfea904c1864c7 3 | size 347 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Right/wizzard_m_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:875c79a42ec207cb1bd5ee0c25078bb30c57e25e1b94038a4cca7a0c19d560fd 3 | size 372 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Right/wizzard_m_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b85ede740cf16ffff6228fb75b37ac12befc96a702502660964ded0962559da5 3 | size 361 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Right/wizzard_m_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:fe3f3a645ca365ee3412eed3ec7d3e4a8aeda9a802d19f627535997af8524955 3 | size 359 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Right/wizzart_m_hit_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:76fe0a2fbdf08f684ced52f2e4bd1bb1d19df183ba53e0931b4a48eba0a47de2 3 | size 384 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Right/wizzart_m_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:69f204cdcc32985ad241bd97d4ae494e647eef8771c16f2b2fc0e5a81a3e3663 3 | size 365 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Right/wizzart_m_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:15ae998ccd0b46210f5892799217139e750f42e932a0ca4894d40ca0990b1747 3 | size 357 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Right/wizzart_m_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:8a8ecba32ff9366131fc5e579c1c98b08c30abf929141b99162627555a44e205 3 | size 381 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/Right/wizzart_m_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9796d8addb418609841d84706c0c9c39193f5e1759b0778691282b7781480c03 3 | size 376 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/wizzard_m_idle_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3190caca3f50f351ed72cf73acddebd55b3017a5cb3dfc1670dfea904c1864c7 3 | size 347 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/wizzard_m_idle_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:875c79a42ec207cb1bd5ee0c25078bb30c57e25e1b94038a4cca7a0c19d560fd 3 | size 372 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/wizzard_m_idle_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b85ede740cf16ffff6228fb75b37ac12befc96a702502660964ded0962559da5 3 | size 361 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/wizzard_m_idle_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:fe3f3a645ca365ee3412eed3ec7d3e4a8aeda9a802d19f627535997af8524955 3 | size 359 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/wizzart_m_hit_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:76fe0a2fbdf08f684ced52f2e4bd1bb1d19df183ba53e0931b4a48eba0a47de2 3 | size 384 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/wizzart_m_run_anim_f0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:69f204cdcc32985ad241bd97d4ae494e647eef8771c16f2b2fc0e5a81a3e3663 3 | size 365 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/wizzart_m_run_anim_f1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:15ae998ccd0b46210f5892799217139e750f42e932a0ca4894d40ca0990b1747 3 | size 357 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/wizzart_m_run_anim_f2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:8a8ecba32ff9366131fc5e579c1c98b08c30abf929141b99162627555a44e205 3 | size 381 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Players/Wizard/wizzart_m_run_anim_f3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9796d8addb418609841d84706c0c9c39193f5e1759b0778691282b7781480c03 3 | size 376 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Projectiles.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 21e5beaa8a8e2814f98511d54e04775f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Projectiles/Knife.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7c734ab5478f91f4ba65c5746a75c929 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Projectiles/Knife/knife.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7810f7dd75025847930b341257907a5810ecf428b0ca27aa7312d0848cb5995f 3 | size 191 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Projectiles/Rock.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 32b4211aabb8e7f46974e441b7220755 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Projectiles/Rock/rock.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9303e7e31263c617299be6311d2e1eb171cda064f5e4da7111f6f090208bdca7 3 | size 560 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Projectiles/SwordWave.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 49ac81bcf069ab943973387d7913164a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Projectiles/SwordWave/swordwave.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:db2a1c2cdf57912412fc82f5a963e0c7c67068c64cfd8b72a7962a4f920a7304 3 | size 397 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Stairs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 86f726526790ce942abceb79ac01740e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Stairs/ladder.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b23c90b07b702b983b161b5117eb2bf80272b5536caaf23b2c6337613dae6404 3 | size 269 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Walls.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 198617c90caed7f4f9cafa36c1c8c316 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Walls/wall.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ee55a391382892583c3aab6c19d90ed537fce7733f0d3ebdd480d685ceb8b808 3 | size 298 4 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Weapons.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 21918b8217c4ed14094f9033ce2abad5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Weapons/Weapon.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ad699d3ac65226e49886fa0cc916b59a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /FuncGameDev/Assets/Sprites/Weapons/Weapon/weapon_rusty_sword.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1878383552a1c284fad5917bc97593e7e03b141c38dbe30c8ca338b4f2b7d821 3 | size 289 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/Unity.Cecil.Mdb.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9df55d7bb4cca979eaa6f886d806d36e3a17d250f91a7e038dae7474833652d7 3 | size 44544 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/Unity.Cecil.Pdb.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:0a861217e7a34431b572f394bc4ab24edd74c17818c4ca1d3d00ce836f893005 3 | size 87552 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/Unity.Cecil.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:72ba2826a67418b510caf49e6d1921055a9a1ac032d90e7d0599bd0a7fd05c4c 3 | size 347136 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/Unity.Legacy.NRefactory.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ec79b9e8d00ac5b159b4e9938278584751551e25aeb5813bec9f5f5ca7de7954 3 | size 520704 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/Unity.TextMeshPro.Editor.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:fde98ea0881aeab2c0b885a876e9cacd1d542e92197dc9d525e77d31021a7cbe 3 | size 212480 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/Unity.TextMeshPro.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ecaba0d69aefb75fdcd9dbdbef862d8b4f5745a8572b0389b63c82fed67730b4 3 | size 389632 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEditor.UI.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4ca48c3ac45b7b6181b2f93a9b4825e9234f563f897d12099d8071a6cb638db2 3 | size 83968 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEditor.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:57db95c6211915c180d667ffcd1fd9d5c0eb6c652b28995b1f61c23dee8eeeac 3 | size 7363072 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.AIModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:0e58797d63b7f69da1790a7e21f5ace3104b3e3c7904a2cd1d6689ee4ac6a95a 3 | size 49664 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.ARModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a6e31687f5749124639986679d806082228deb47d8c18f611442b856ad1168ee 3 | size 13312 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.AccessibilityModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:e2f4896272d9db4914c8651243c85cf619486c35698d7029b0472cd2475ac280 3 | size 11776 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.AndroidJNIModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:c53fb09ba0db44dc9da718d773e2da68376b97c4ced7e56c2da7ab458d1bf1dc 3 | size 56832 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.AnimationModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b36b1a5c59ab3aa4441d5a3fdc83d47f5e66e1496ba8d9e3a6fa40239c41715e 3 | size 152064 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.AssetBundleModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ea7009fb1cb501eb81a97ba9e58fb7adb9d362ff24d79bfa6db1bfb158dc838e 3 | size 22528 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.AudioModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:266f1a3a833f7721ae85f47f16c1a2d38f4fe5fc930794fe74bfb8f7ae758391 3 | size 58368 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.ClothModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1e7753cabbce62068a906b823a6e14f3b7c3e212697c60e50a7ac6ae60503fc1 3 | size 15872 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.ClusterInputModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ba43a9b6f6b6900b3d450f2492c92052e2b17fb70ce06dc8323539fe1abe33e8 3 | size 10752 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.ClusterRendererModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9de9b02ee4fe34f300e651d3bca1511ac3c53451a5904bf477f0c1b15f1107a0 3 | size 9728 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.CoreModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4db108f1a6637d2ee2bd200ddf978192c2c960bdda508a8e17905b7da364fcb1 3 | size 1040896 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.CrashReportingModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:cf3bfb24fd16bd785c6406d0a682a17d97042948a707ec9b453e11455997d9d1 3 | size 10240 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.DSPGraphModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:50c730bf2fb43cde3a6e648cb4f74d198da6ad041f247ea46747057a948a4ee1 3 | size 18432 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.DirectorModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:6aac3b1810a7000e5908fa7ce55cf2c10eb7f3aaea3f7288b3de8a1b40f28aad 3 | size 13824 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.FileSystemHttpModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:e008dd0c2357425ac681c3de475294472187e23a7df899bfc119191748606467 3 | size 9216 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.GameCenterModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1d8a7503b7271de7248a303b9f72cdd594bb333c0ea7fb2bd4b58e855cb70b8e 3 | size 35840 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.GridModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:0ce61249a0cd46652eeb72f9fd03831114d199b926313caa4546cc77d68ff4ab 3 | size 14336 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.HotReloadModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:94b74e87dd93d73ab1b681de4c9ad3856fc05075b362d34a13542b6ceb5b4b4b 3 | size 9216 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.IMGUIModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:14b3ab3199d23b0c89d3d7bf92ea4e381dd852defa30ef2752258d9d60d3bd0c 3 | size 153088 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.ImageConversionModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:bbb37a73f861e647ac196a557b23df86610782aca4dfc644d37a04125f37bbb2 3 | size 10752 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.InputLegacyModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f61f988477d10d350ee10d5e64feff9abeb5f9cecbb69ce0ec284a1541035fd4 3 | size 27136 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.InputModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7e89c4bebdbea1962844ea59e8f808ff47bfbafabd2c1b345b1e7ad25fec7f06 3 | size 12800 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.JSONSerializeModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:01d7646323df8f120687ae675414395e56b978bc3ab7cd7de0ee81701da2c014 3 | size 11264 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.LocalizationModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:6e3ffacb6e503a9213a48f9025908cbf6d8c53a8d3cd1194ac3cf78aef5b9014 3 | size 10240 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.ParticleSystemModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d1c3bdfbd7f2370cf50c0dbc20fd3a7e7a90263eb7fd61dfee62e40f58df40a0 3 | size 133632 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.PerformanceReportingModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ae23c0cca61a5703673f66eb3c79bfd75a3f0736217ad5d840cc894c59cab9b0 3 | size 9728 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.Physics2DModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f4030b922e34f3ca6b7e3767ec43685c26b01621be0a3f3a45ef85643701bee8 3 | size 111104 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.PhysicsModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:344e219c69edf2dd1b63d88e01e1edc2f433fad6aced7876431c69238cb7b23c 3 | size 89088 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.ProfilerModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:16bcebc16f2ad0eac44bd32e25ccae98dfffe6127edafdf23b773af644525a03 3 | size 9216 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.ScreenCaptureModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:2f29c377cf3f92f637df655d3157ee696e03e4ddd4c450c13b693e7ec35a8f14 3 | size 10240 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.SharedInternalsModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:abe83efa49fb2ea2b58b8ace8a887793fc29f0d2e4aae9dc2385f7e0cbacb110 3 | size 20480 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.SpriteMaskModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:18abddc4be5fbd6229578878d1bb199fa1c5dde72b55d62bad015c8fb15091fd 3 | size 10752 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.SpriteShapeModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:693b23db1e98192958f3c50d7e40ae1cd9603a45b9e3ac9d6af6521a3bc36b70 3 | size 14336 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.StreamingModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f1afd895695dd1e51b76908b20b8ebee2caad90730200502403cee4259a41428 3 | size 10240 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.SubstanceModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:63310fc30395b1e53b1c3f5f35547f6f9db559f7abb0f27d2faa8c70da0bec2b 3 | size 14336 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.TLSModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:6111086a76aaa11a9e96d15c6610f76d7df3554b2fa6840dfb3ae83b4525a584 3 | size 9216 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.TerrainModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:06e0430332c176b6acb50ce58c98b486ad8e00547e5e7dca59b14665a0123150 3 | size 71168 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.TerrainPhysicsModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:8cb14543f3a354920428b55c5032bc224b85a8cfeb3000f01b596e4da882ab9b 3 | size 10240 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.TextCoreModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a8b9750e57ae9527f67e380a973a29b6937afa17e2a94a3ebc00f16bd9037a45 3 | size 181248 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.TextRenderingModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9cc2b55c914cc3f6afd2b6006924a39a2c4e708f13eb5cb04e3f444cf1ab5b7d 3 | size 28672 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.TilemapModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:2d5cbc37e03f54cb7d623934e245eee4dd14b2a7a45c36390099e6292cbae320 3 | size 29184 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UI.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ed644e31d6cf7bf35ed02097ce16f5b3d27fbd7e993096eb775379f1f5dc034c 3 | size 256512 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UIElementsModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:7e63d6007273401b8d9ac05107af5ad5610b310212aa41bccad2d2ed898b2e2e 3 | size 580608 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UIModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:2ba280b727e8094cfe5e97a33dbe96330b4e8921ed563ad5677fc733e926614b 3 | size 23552 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UNETModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a99ad7a29af64471433635bcf327239f6dbd922e9027fceafee381a2410e48c6 3 | size 78336 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UmbraModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4b040ebaaf39592d7a9c9d4ad2a749f14048f84b41629da300541a14b114731b 3 | size 9216 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UnityAnalyticsModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:28361a191b287ba0e61adbef7ce8cf58310969fe63ffe717762e20e501bd1493 3 | size 29696 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UnityConnectModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9e76efa001d7671ae4b560135e0cfb060b27970b8c936ecdb5c3833e69dee8fb 3 | size 11264 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UnityTestProtocolModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:101d0d8e9a2fef1655b33ee5fa63a91dbd517a3ae179470858daefc64161b605 3 | size 9216 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UnityWebRequestAssetBundleModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9a3d05a83a4f69df3c4746c186d6cdda1685039bf5c530e0063f0b1bf4ec1aa9 3 | size 12288 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UnityWebRequestAudioModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b06179fcce0b44f56659179983016056ccd97eee2e285f3e394aedda481ecd1f 3 | size 11776 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UnityWebRequestModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:44ef970b49478416584ae5d17aaaa3536d6dca3e9490d8934b045adf8f1b7ccc 3 | size 43520 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UnityWebRequestTextureModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:8f4084814342630e3ab2bdd651b88082903a80b9ac01d28ae26f3bde19f1ba5f 3 | size 11264 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.UnityWebRequestWWWModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:e6b09513198b2e98e2f73a54bb9481c3569ee92500507b6a4490ffb7347c674f 3 | size 20992 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.VFXModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:0f2e368afe39219b33f51a45ea4cd9a6074030c6b9da7d12c75d285f4797e293 3 | size 34304 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.VRModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:2584dbe2e4e896fdaa549e1e8c4c036c29c46a62c4b328133e49e34d9129df85 3 | size 80896 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.VehiclesModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:04c59b5c498f28b6cadc46c493902b31789b7aa853684b96d0d6250f944e6502 3 | size 13312 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.VideoModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3b1f06bb29942b570efde04bbca6ed0ea46fcffc1f38ec3c986c278ff91ddbfb 3 | size 29184 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.WindModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:2f4d68a219fc08971692ba30c0d29bdcd00000febb34cdf3257e6380c06b99df 3 | size 10240 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.XRModule.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:6f7210933b2cd034876295ab5562877ce8a457a38b9c38ba8c6c2b5c80fa4f52 3 | size 79360 4 | -------------------------------------------------------------------------------- /FuncGameDev/Dependencies/UnityEngine.dll: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4d7aca2f0b473dd1fbad0a42302b34a103d6f3d82a1c531cb59e5d6e30f231e6 3 | size 89088 4 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/CameraBehavior.fs: -------------------------------------------------------------------------------- 1 | module CameraBehavior 2 | 3 | let updateCamera delta (pos : float*float) (rot : float*float) (scale : float*float) (width : float) (height : float) (gs : GameState.T) = 4 | 5 | let cPosX = fst pos 6 | let cPosY = snd pos 7 | 8 | let cRotX = fst rot 9 | let cRotY = snd rot 10 | 11 | let cScaleX = fst scale 12 | let cScaleY = snd scale 13 | 14 | 15 | 16 | let cd : CameraData.T = { 17 | position = (cPosX, cPosY); 18 | rotation = (cRotX, cRotY); 19 | scale = (cScaleX, cScaleY); 20 | width = 36.0; 21 | height = 18.0; 22 | shakeTime = max (gs.gamedata.camera.shakeTime - delta) 0.0 } 23 | let gd : GameData.T = { gs.gamedata with camera = cd} 24 | 25 | { gs with gamedata = gd } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/CommonEntityBehavior.fs: -------------------------------------------------------------------------------- 1 | module CommonEntityBehavior 2 | 3 | open System 4 | 5 | //Examples of common entities that would use these functions: 6 | //players, enemies, items, projectiles 7 | //Anything with a position uses these 8 | 9 | 10 | //Set entity to move and let Unity handle the rest 11 | //eid: int = id of entity 12 | //degrees: float = direction to move in 13 | //gs: GameState = the current gamestate 14 | //returns a function that takes a gamestate and returns a gamestate 15 | let move eid degrees (gs : GameState.T) = 16 | let entity = GameStateUtils.getEntityByID gs eid 17 | let newEntity = { entity with isMoving = true ; direction = degrees } 18 | { gs with entities = Map.add eid newEntity gs.entities } 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/EffectBehavior.fs: -------------------------------------------------------------------------------- 1 | module EffectBehavior 2 | 3 | //activate the effect's on-apply effect 4 | //effid: int = id of the effect 5 | //eid: int = id of the entity that it is being applied to 6 | //gs: GameState = the current gamestate 7 | //returns a function that takes a gamestate and returns a gamestate 8 | let onapply effid eid gs = 9 | gs; 10 | 11 | //activate the effect's on-tick effect 12 | //effid: int = id of the effect 13 | //eid: int = id of the entity that it is being applied to 14 | //gs: GameState = the current gamestate 15 | //returns a function that takes a gamestate and returns a gamestate 16 | let ontick effid eid gs = 17 | gs; 18 | 19 | //activate the effect's on-remove effect 20 | //effid: int = id of the effect 21 | //eid: int = id of the entity that it is being applied to 22 | //gs: GameState = the current gamestate 23 | //returns a function that takes a gamestate and returns a gamestate 24 | let onremove effid eid gs = 25 | gs; -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Enemy/Behavior.fs: -------------------------------------------------------------------------------- 1 | module EnemyBehavior 2 | 3 | let spawn xy bid (gs:GameState.T) = 4 | match bid with 5 | | 0 -> 6 | gs 7 | | _ -> 8 | let enemyBehavior = Map.find bid EnemyBehaviorTable.Instance 9 | enemyBehavior.spawn xy bid gs |> GameStateUtils.modifyForSpawn 10 | 11 | let attack eid (gs:GameState.T) = 12 | let enemy = Map.find eid gs.entities 13 | match enemy.data with 14 | | EntityType.Enemy data -> 15 | WeaponBehavior.attack data.weapon eid enemy.position enemy.direction gs 16 | | _ -> 17 | gs 18 | 19 | let updateSpeed eid newSpeed (gs:GameState.T) = 20 | let enemy = Map.find eid gs.entities 21 | let newEnemy = { enemy with speed = newSpeed } 22 | { gs with entities = Map.add eid newEnemy gs.entities } 23 | 24 | let tickWeaponCooldown delta id (weaponData:WeaponData.T) (gs:GameState.T) = 25 | let entityData = GameStateUtils.getEntityByID gs id 26 | match entityData.data with 27 | | EntityType.Enemy enemyData -> 28 | let newWeaponData = { weaponData with cooldown = max (weaponData.cooldown - delta) 0.0 } 29 | let newEnemyData = { enemyData with weapon = newWeaponData } 30 | let newEntityData = { entityData with data = EntityType.Enemy newEnemyData } 31 | { gs with entities = Map.add id newEntityData gs.entities } 32 | | _ -> 33 | gs 34 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Enemy/Enemies/GolemBoss.fs: -------------------------------------------------------------------------------- 1 | module GolemBoss 2 | 3 | let spawn xy bid (gs:GameState.T) = 4 | let enemyData = { 5 | CommonEntityData.id = gs.nextid; 6 | CommonEntityData.position = xy; 7 | CommonEntityData.speed = 1.5; 8 | CommonEntityData.direction = 0.0; 9 | CommonEntityData.isMoving = false; 10 | CommonEntityData.data = EntityType.Enemy { 11 | health = 1500; 12 | weapon = GolemArm.createWeapon () 13 | effects = []; 14 | enemyType = "GolemBoss"; 15 | behaviorId = bid; 16 | aiId = 10; 17 | isBoss = true 18 | }; 19 | CommonEntityData.iframes = 0.0; 20 | CommonEntityData.sprite = "yay" 21 | } 22 | { gs with entities = Map.add gs.nextid enemyData gs.entities ; level = { gs.level with stairsSpawned = false } } 23 | 24 | let behavior = { 25 | EnemyBehaviorType.spawn = spawn; 26 | } 27 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Enemy/Enemies/Jumper.fs: -------------------------------------------------------------------------------- 1 | module Jumper 2 | 3 | let spawn xy bid (gs:GameState.T) = 4 | let enemyData = { 5 | CommonEntityData.id = gs.nextid; 6 | CommonEntityData.position = xy; 7 | CommonEntityData.speed = 10.0; 8 | CommonEntityData.direction = 0.0; 9 | CommonEntityData.isMoving = false; 10 | CommonEntityData.data = EntityType.Enemy { 11 | health = 40; 12 | weapon = { 13 | WeaponData.weaponName = "Temp Weapon"; 14 | WeaponData.cooldown = 0.0; 15 | WeaponData.firerate = 0.4; 16 | WeaponData.damage = 35; 17 | WeaponData.effects = []; 18 | WeaponData.weaponType = WeaponData.Category.Melee; 19 | WeaponData.behaviorID = 0 20 | }; 21 | effects = []; 22 | enemyType = "Jumper"; 23 | behaviorId = bid; 24 | aiId = 3; 25 | isBoss = false 26 | }; 27 | CommonEntityData.iframes = 0.0; 28 | CommonEntityData.sprite = "yay" 29 | } 30 | { gs with entities = Map.add gs.nextid enemyData gs.entities } 31 | 32 | let behavior = { 33 | EnemyBehaviorType.spawn = spawn; 34 | } 35 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Enemy/Enemies/Stander.fs: -------------------------------------------------------------------------------- 1 | module Stander 2 | 3 | let spawn xy bid (gs:GameState.T) = 4 | let enemyData = { 5 | CommonEntityData.id = gs.nextid; 6 | CommonEntityData.position = xy; 7 | CommonEntityData.speed = 5.0; 8 | CommonEntityData.direction = 0.0; 9 | CommonEntityData.isMoving = false; 10 | CommonEntityData.data = EntityType.Enemy { 11 | health = 80; 12 | weapon = { 13 | WeaponData.weaponName = "Temp Weapon"; 14 | WeaponData.cooldown = 0.0; 15 | WeaponData.firerate = 0.4; 16 | WeaponData.damage = 35; 17 | WeaponData.effects = []; 18 | WeaponData.weaponType = WeaponData.Category.Melee; 19 | WeaponData.behaviorID = 0 20 | }; 21 | effects = []; 22 | enemyType = "Stander"; 23 | behaviorId = bid; 24 | aiId = 1; 25 | isBoss = false 26 | }; 27 | CommonEntityData.iframes = 0.0; 28 | CommonEntityData.sprite = "yay" 29 | } 30 | { gs with entities = Map.add gs.nextid enemyData gs.entities } 31 | 32 | let behavior = { 33 | EnemyBehaviorType.spawn = spawn; 34 | } 35 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Enemy/Enemies/Tracker.fs: -------------------------------------------------------------------------------- 1 | module Tracker 2 | 3 | let spawn xy bid (gs:GameState.T) = 4 | let enemyData = { 5 | CommonEntityData.id = gs.nextid; 6 | CommonEntityData.position = xy; 7 | CommonEntityData.speed = 4.0; 8 | CommonEntityData.direction = 0.0; 9 | CommonEntityData.isMoving = false; 10 | CommonEntityData.data = EntityType.Enemy { 11 | health = 60; 12 | weapon = { 13 | WeaponData.weaponName = "Temp Weapon"; 14 | WeaponData.cooldown = 0.0; 15 | WeaponData.firerate = 0.4; 16 | WeaponData.damage = 35; 17 | WeaponData.effects = []; 18 | WeaponData.weaponType = WeaponData.Category.Melee; 19 | WeaponData.behaviorID = 0 20 | }; 21 | effects = []; 22 | enemyType = "Tracker"; 23 | behaviorId = bid; 24 | aiId = 2; 25 | isBoss = false 26 | }; 27 | CommonEntityData.iframes = 0.0; 28 | CommonEntityData.sprite = "yay" 29 | } 30 | { gs with entities = Map.add gs.nextid enemyData gs.entities } 31 | 32 | let behavior = { 33 | EnemyBehaviorType.spawn = spawn; 34 | } 35 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Enemy/Table.fs: -------------------------------------------------------------------------------- 1 | module EnemyBehaviorTable 2 | 3 | let Instance : Collections.Map = 4 | Map.empty 5 | .Add(1, Stander.behavior) 6 | .Add(2, Tracker.behavior) 7 | .Add(3, Jumper.behavior) 8 | .Add(10, GolemBoss.behavior) -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Enemy/Type.fs: -------------------------------------------------------------------------------- 1 | module EnemyBehaviorType 2 | 3 | type T = { 4 | //One function which takes a behavior id and GameState and defines how the enemy is spawned 5 | //They return a GameState instance 6 | //Note that the AI function is stored in a different table over in the AI module 7 | spawn: ((float * float) -> int -> GameState.T -> GameState.T) 8 | } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/GameDataUtils.fs: -------------------------------------------------------------------------------- 1 | module GameDataUtils 2 | 3 | // Increases time and returns a new GameState with updated time 4 | let increaseTime deltaTime (gs: GameState.T) = 5 | let gameData = gs.gamedata 6 | let newTime = gameData.time + deltaTime 7 | let newGameData = { gameData with time = newTime } 8 | { gs with gamedata = newGameData} 9 | 10 | // Decreases time and returns a new GameState with updated time 11 | let decreaseTime deltaTime (gs: GameState.T) = 12 | let gameData = gs.gamedata 13 | let newTime = gameData.time - deltaTime 14 | let newFloorTime = gameData.floortime + deltaTime 15 | let newTotalTime = gameData.totaltime + deltaTime 16 | match newTime with 17 | | newTime when newTime < 0.0 -> 18 | let newGameData = { gameData with time = 0.0; floortime = newFloorTime; totaltime = newTotalTime } 19 | { gs with gamedata = newGameData } 20 | | _ -> 21 | let newGameData = { gameData with time = newTime; floortime = newFloorTime; totaltime = newTotalTime } 22 | { gs with gamedata = newGameData } 23 | 24 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/GameStateUtils.fs: -------------------------------------------------------------------------------- 1 | module GameStateUtils 2 | 3 | //Command that does nothing, 4 | //usually used to help handle empty cases. 5 | let emptyCommand gs = 6 | gs 7 | 8 | //Returns the entity of the given type 9 | //associated with the given ID. 10 | //Assumes that the given ID is valid. 11 | //If it may not be, you should check it in the calling code. 12 | let getEntityByID (gs:GameState.T) eid = 13 | let entity = Map.find eid gs.entities 14 | entity 15 | 16 | //Removes the entity with the given ID 17 | //and returns the resulting gamestate. 18 | let removeEntityWithID (gs:GameState.T) eid = 19 | { gs with entities = Map.remove eid gs.entities } 20 | 21 | //Marks an entity so we can destroy it 22 | //at the end of the update loop, 23 | //if and only if it is not already marked 24 | let markEntityForDestruction (gs:GameState.T) eid = 25 | match (List.contains eid gs.killIds) with 26 | | true -> 27 | gs 28 | | false -> 29 | { gs with killIds = eid::gs.killIds } 30 | 31 | //Removes all entities that have been marked for destruction 32 | let removeMarkedEntities (gs:GameState.T) = 33 | List.fold removeEntityWithID gs gs.killIds 34 | 35 | let modifyForSpawn (gs:GameState.T) = 36 | { gs with nextid = gs.nextid + 1 ; spawnIds = List.Cons (gs.nextid, gs.spawnIds) } 37 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Item/Behavior.fs: -------------------------------------------------------------------------------- 1 | module ItemBehavior 2 | 3 | //activate the item's on-pickup effect 4 | //iid: int = id of the item 5 | //eid: int = id of the entity that picked it up 6 | //gs: GameState = the current gamestate 7 | //returns a function that takes a gamestate and returns a gamestate 8 | let onpickup iid eid (gs:GameState.T) = 9 | let itemData = GameStateUtils.getEntityByID gs iid 10 | match itemData.data with 11 | | EntityType.Item item -> 12 | let entityData = GameStateUtils.getEntityByID gs eid 13 | let itemBehavior = Map.find item.behaviorID ItemBehaviorTable.Instance 14 | itemBehavior.onpickup itemData entityData gs 15 | | _ -> 16 | gs 17 | 18 | //activate the item's on-destroy effect 19 | //iid: int = id of the item 20 | //eid: int = id of the entity that picked it up 21 | //gs: GameState = the current gamestate 22 | //returns a function that takes a gamestate and returns a gamestate 23 | let ondestroy iid eid (gs:GameState.T) = 24 | let itemData = GameStateUtils.getEntityByID gs iid 25 | match itemData.data with 26 | | EntityType.Item item -> 27 | let entityData = GameStateUtils.getEntityByID gs eid 28 | let itemBehavior = Map.find item.behaviorID ItemBehaviorTable.Instance 29 | itemBehavior.ondestroy itemData entityData gs 30 | | _ -> 31 | gs 32 | 33 | let spawn xy bid (gs:GameState.T) = 34 | match bid with 35 | | 0 -> 36 | gs 37 | | _ -> 38 | let itemBehavior = Map.find bid ItemBehaviorTable.Instance 39 | itemBehavior.spawn xy bid gs |> GameStateUtils.modifyForSpawn -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Item/Items/TestItem.fs: -------------------------------------------------------------------------------- 1 | module TestItem 2 | 3 | // The Test Item is an item 4 | // When picked up, it increases the timer by 5 seconds 5 | // When dropped, it decreases the time by 5 seconds 6 | 7 | let onpickup (item:CommonEntityData.T) (owner:CommonEntityData.T) (gs:GameState.T) = 8 | { gs with gamedata = { gs.gamedata with time = gs.gamedata.time + 5.0 } } 9 | 10 | let ondestroy (item:CommonEntityData.T) (owner:CommonEntityData.T) (gs:GameState.T) = 11 | { gs with gamedata = { gs.gamedata with time = gs.gamedata.time - 5.0 } } 12 | 13 | let spawn xy bid (gs:GameState.T) = 14 | let itemData = { 15 | CommonEntityData.id = gs.nextid; 16 | CommonEntityData.position = xy; 17 | CommonEntityData.speed = 0.0; 18 | CommonEntityData.direction = 0.0; 19 | CommonEntityData.isMoving = false; 20 | CommonEntityData.data = EntityType.Item { 21 | ItemData.itemName = "Time"; 22 | ItemData.behaviorID = bid 23 | } 24 | CommonEntityData.iframes = 0.0; 25 | CommonEntityData.sprite = "yay" 26 | } 27 | { gs with entities = Map.add gs.nextid itemData gs.entities } 28 | 29 | let behavior = { 30 | ItemBehaviorType.onpickup = onpickup; 31 | ItemBehaviorType.ondestroy = ondestroy; 32 | ItemBehaviorType.spawn = spawn; 33 | } 34 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Item/Table.fs: -------------------------------------------------------------------------------- 1 | module ItemBehaviorTable 2 | 3 | let Instance : Collections.Map = 4 | Map.empty 5 | .Add(1, TestItem.behavior) -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Item/Type.fs: -------------------------------------------------------------------------------- 1 | module ItemBehaviorType 2 | 3 | type T = { 4 | //Two functions which take the following: 5 | // a CommonEntityData instance, which is the item in question 6 | // a CommonEntityData instance, which is the owner of the item 7 | // a GameState instance 8 | //They return a GameState instance 9 | //Also contains a spawn factory function that takes a position, the behavior id, and a GameState and returns a GameState 10 | onpickup: (CommonEntityData.T -> CommonEntityData.T -> GameState.T -> GameState.T) 11 | ondestroy: (CommonEntityData.T -> CommonEntityData.T -> GameState.T -> GameState.T) 12 | spawn: ((float * float) -> int -> GameState.T -> GameState.T) 13 | } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Level/Behavior.fs: -------------------------------------------------------------------------------- 1 | module GeneratorBehavior 2 | 3 | let generate (gs:GameState.T) genID = 4 | let generatorBehavior = Map.find genID GeneratorTable.Instance 5 | generatorBehavior.generate gs -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Level/Generators/OpenEasyGenerator.fs: -------------------------------------------------------------------------------- 1 | module OpenEasyGenerator 2 | 3 | let insertRandomWall (gs:GameState.T) (grid:int list list) = 4 | let sizeY = List.length grid 5 | let sizeX = List.length grid.Head 6 | let x = sizeX |> gs.random.Next 7 | let y = sizeY |> gs.random.Next 8 | GeneratorUtils.insertBlockAtIndex x y 1 grid 9 | 10 | let generate (gs:GameState.T) = 11 | let endPos = match gs.level.stairpos with 12 | | (-14, -7) -> 13 | (13, 5) 14 | | _ -> 15 | (-14, -7) 16 | let grid = TestGenerator.createIDGrid gs 17 | 18 | // insert random walls 19 | let wallCount = 75 20 | let gridWithWalls = List.fold (fun g func -> func g) grid ([0..wallCount] |> List.map (fun x -> insertRandomWall gs)) 21 | 22 | GeneratorUtils.generateLevel gs gridWithWalls endPos 23 | 24 | 25 | let behavior = { 26 | GeneratorBehaviorType.generate = generate 27 | } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Level/Table.fs: -------------------------------------------------------------------------------- 1 | module GeneratorTable 2 | 3 | let Instance : Collections.Map = 4 | Map.empty 5 | .Add(1, TestGenerator.behavior) 6 | .Add(2, OpenEasyGenerator.behavior) -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Level/Type.fs: -------------------------------------------------------------------------------- 1 | module GeneratorBehaviorType 2 | 3 | type T = { 4 | //They return a GameState instance 5 | generate: (GameState.T -> GameState.T) 6 | } 7 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Projectile/Projectiles/GolemRock.fs: -------------------------------------------------------------------------------- 1 | module GolemRock 2 | 3 | // Golem boss's rock projectile 4 | 5 | let spawn (weaponData: WeaponData.T) xy speed degrees (gs: GameState.T) = 6 | let projectileData = { 7 | CommonEntityData.id = gs.nextid; 8 | CommonEntityData.position = xy; 9 | CommonEntityData.speed = speed; 10 | CommonEntityData.direction = degrees; 11 | CommonEntityData.isMoving = true; 12 | CommonEntityData.data = EntityType.Projectile { 13 | ProjectileData.damage = weaponData.damage; 14 | ProjectileData.effects = weaponData.effects; 15 | ProjectileData.lifespan = 10.0; 16 | ProjectileData.degrees = degrees; 17 | ProjectileData.behaviorID = 0; 18 | ProjectileData.health = 60; 19 | ProjectileData.team = 1 20 | } 21 | CommonEntityData.iframes = 0.0; 22 | CommonEntityData.sprite = "Rock" 23 | } 24 | { gs with entities = Map.add gs.nextid projectileData gs.entities} 25 | 26 | let move (projData: CommonEntityData.T) (deltaTime: float) (gs: GameState.T) = 27 | match projData.data with 28 | | EntityType.Projectile proj -> 29 | let newX = projData.speed * cos proj.degrees * deltaTime + fst projData.position 30 | let newY = projData.speed * sin proj.degrees * deltaTime + snd projData.position 31 | let newPos = (newX, newY) 32 | {gs with entities = gs.entities.Add(projData.id, {projData with CommonEntityData.position = newPos})} 33 | | _ -> 34 | gs 35 | 36 | let collision pid eid (gs: GameState.T) = 37 | gs 38 | 39 | let behavior = { 40 | ProjectileBehaviorType.spawn = spawn; 41 | ProjectileBehaviorType.move = move; 42 | ProjectileBehaviorType.collision = collision 43 | } 44 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Projectile/Projectiles/RangedProjectile.fs: -------------------------------------------------------------------------------- 1 | module RangedProjectile 2 | 3 | // Projectile for ranged attacks 4 | 5 | let spawn (weaponData: WeaponData.T) xy speed degrees (gs: GameState.T) = 6 | let projectileData = { 7 | CommonEntityData.id = gs.nextid; 8 | CommonEntityData.position = xy; 9 | CommonEntityData.speed = speed; 10 | CommonEntityData.direction = degrees; 11 | CommonEntityData.isMoving = true; 12 | CommonEntityData.data = EntityType.Projectile { 13 | ProjectileData.damage = weaponData.damage; 14 | ProjectileData.effects = weaponData.effects; 15 | ProjectileData.lifespan = 1.0; 16 | ProjectileData.degrees = degrees; 17 | ProjectileData.behaviorID = 0; 18 | ProjectileData.health = 1; 19 | ProjectileData.team = 0 20 | } 21 | CommonEntityData.iframes = 0.0; 22 | CommonEntityData.sprite = "Knife" 23 | } 24 | { gs with entities = Map.add gs.nextid projectileData gs.entities} 25 | 26 | let move (projData: CommonEntityData.T) (deltaTime: float) (gs: GameState.T) = 27 | match projData.data with 28 | | EntityType.Projectile proj -> 29 | let newX = projData.speed * cos proj.degrees * deltaTime + fst projData.position 30 | let newY = projData.speed * sin proj.degrees * deltaTime + snd projData.position 31 | let newPos = (newX, newY) 32 | {gs with entities = gs.entities.Add(projData.id, {projData with CommonEntityData.position = newPos})} 33 | | _ -> 34 | gs 35 | 36 | let collision pid eid (gs: GameState.T) = 37 | gs 38 | 39 | let behavior = { 40 | ProjectileBehaviorType.spawn = spawn; 41 | ProjectileBehaviorType.move = move; 42 | ProjectileBehaviorType.collision = collision 43 | } 44 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Projectile/Table.fs: -------------------------------------------------------------------------------- 1 | module ProjectileBehaviorTable 2 | 3 | let Instance : Collections.Map = 4 | Map.empty 5 | .Add(1, RangedProjectile.behavior) 6 | .Add(2, MeleeProjectile.behavior) 7 | .Add(10, GolemRock.behavior) -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Projectile/Type.fs: -------------------------------------------------------------------------------- 1 | module ProjectileBehaviorType 2 | 3 | type T = { 4 | 5 | //They return a GameState instance 6 | spawn: (WeaponData.T -> float*float -> float -> float -> GameState.T -> GameState.T) 7 | move: (CommonEntityData.T -> float -> GameState.T -> GameState.T) 8 | collision: (CommonEntityData.T -> CommonEntityData.T -> GameState.T -> GameState.T) 9 | } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Weapon/Table.fs: -------------------------------------------------------------------------------- 1 | module WeaponBehaviorTable 2 | 3 | let Instance : Collections.Map = 4 | Map.empty 5 | .Add(0, NullWeapon.behavior) 6 | .Add(1, TestMeleeWeapon.behavior) 7 | .Add(2, TestRollWeapon.behavior) 8 | .Add(3, TestRangedWeapon.behavior) 9 | .Add(4, CameraShakeWeapon.behavior) 10 | .Add(10, GolemArm.behavior) -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Weapon/Type.fs: -------------------------------------------------------------------------------- 1 | module WeaponBehaviorType 2 | 3 | type T = { 4 | 5 | //A function that takes in the following: 6 | // a WeaponData instance, which is the weapon being used 7 | // a CommonEntityData, which is the owner of the weapon 8 | // a float*float, which is the xy position of the unit using the weapon 9 | // a float, which is the degree direction the unit is facing 10 | // a GameState instance 11 | //They return a GameState instance 12 | 13 | attack: (WeaponData.T -> CommonEntityData.T -> float*float -> float -> GameState.T -> GameState.T) 14 | spawn: ((float * float) -> GameState.T -> GameState.T) 15 | createWeapon: unit -> WeaponData.T 16 | } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Weapon/Weapons/CameraShakeWeapon.fs: -------------------------------------------------------------------------------- 1 | module CameraShakeWeapon 2 | 3 | // Active weapon that shakes the camera 4 | 5 | let attack (weaponData: WeaponData.T) (commonEntityData: CommonEntityData.T) xy degrees (gs: GameState.T) = 6 | { gs with gamedata = { gs.gamedata with camera = { gs.gamedata.camera with shakeTime = 0.2 } } } 7 | 8 | let createWeapon () = 9 | { 10 | WeaponData.weaponName = "Camera Shake"; 11 | WeaponData.cooldown = 0.0; 12 | WeaponData.firerate = 0.1; 13 | WeaponData.damage = 0; 14 | WeaponData.effects = []; 15 | WeaponData.weaponType = WeaponData.Category.Active; 16 | WeaponData.behaviorID = 4 17 | }; 18 | 19 | let spawn xy (gs:GameState.T) = 20 | let weaponData = { 21 | CommonEntityData.id = gs.nextid; 22 | CommonEntityData.position = xy; 23 | CommonEntityData.speed = 0.0; 24 | CommonEntityData.direction = 0.0; 25 | CommonEntityData.isMoving = false; 26 | CommonEntityData.data = createWeapon () |> EntityType.Weapon; 27 | CommonEntityData.iframes = 0.0; 28 | CommonEntityData.sprite = "yay" 29 | } 30 | { gs with entities = Map.add gs.nextid weaponData gs.entities} 31 | 32 | let behavior = { 33 | WeaponBehaviorType.attack = attack; 34 | WeaponBehaviorType.spawn = spawn 35 | WeaponBehaviorType.createWeapon = createWeapon 36 | } 37 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Weapon/Weapons/GolemArm.fs: -------------------------------------------------------------------------------- 1 | module GolemArm 2 | 3 | // Golem Boss's rock throwing weapon 4 | 5 | let attack (weaponData: WeaponData.T) (commonEntityData: CommonEntityData.T) xy degrees (gs: GameState.T) = 6 | let rad = (float)degrees * System.Math.PI / 180.0; 7 | let x = 1.0 * (rad |> System.Math.Cos) + (xy |> fst); 8 | let y = 1.0 * (rad |> System.Math.Sin) + (xy |> snd); 9 | let newGS = ProjectileBehavior.spawn 10 weaponData (x, y) 8.0 degrees gs 10 | newGS; 11 | 12 | let createWeapon () = 13 | { 14 | WeaponData.weaponName = "Golem Arm"; 15 | WeaponData.cooldown = 0.0; 16 | WeaponData.firerate = 3.5; 17 | WeaponData.damage = 10; 18 | WeaponData.effects = []; 19 | WeaponData.weaponType = WeaponData.Category.Ranged; 20 | WeaponData.behaviorID = 10 21 | }; 22 | 23 | let spawn xy (gs:GameState.T) = 24 | let weaponData = { 25 | CommonEntityData.id = gs.nextid; 26 | CommonEntityData.position = xy; 27 | CommonEntityData.speed = 0.0; 28 | CommonEntityData.direction = 0.0; 29 | CommonEntityData.isMoving = false; 30 | CommonEntityData.data = createWeapon () |> EntityType.Weapon; 31 | CommonEntityData.iframes = 0.0; 32 | CommonEntityData.sprite = "yay" 33 | } 34 | { gs with entities = Map.add gs.nextid weaponData gs.entities} 35 | 36 | let behavior = { 37 | WeaponBehaviorType.attack = attack; 38 | WeaponBehaviorType.spawn = spawn 39 | WeaponBehaviorType.createWeapon = createWeapon 40 | } 41 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Weapon/Weapons/NullWeapon.fs: -------------------------------------------------------------------------------- 1 | module NullWeapon 2 | 3 | // The Null Melee Weapon is a weapon 4 | // It does nothing, it is the weapon the player holds when they do not have a weapon in give slot 5 | 6 | let attack (weaponData: WeaponData.T) (commonEntityData: CommonEntityData.T) xy degrees (gs: GameState.T) = 7 | gs 8 | 9 | let createWeapon () = 10 | { 11 | WeaponData.weaponName = "Null Weapon"; 12 | WeaponData.cooldown = 0.0; 13 | WeaponData.firerate = 0.5; 14 | WeaponData.damage = 0; 15 | WeaponData.effects = []; 16 | WeaponData.weaponType = WeaponData.Category.Active; 17 | WeaponData.behaviorID = 0 18 | }; 19 | 20 | let spawn xy (gs:GameState.T) = 21 | let weaponData = { 22 | CommonEntityData.id = gs.nextid; 23 | CommonEntityData.position = xy; 24 | CommonEntityData.speed = 0.0; 25 | CommonEntityData.direction = 0.0; 26 | CommonEntityData.isMoving = false; 27 | CommonEntityData.data = createWeapon () |> EntityType.Weapon 28 | CommonEntityData.iframes = 0.0; 29 | CommonEntityData.sprite = "yay" 30 | } 31 | { gs with entities = Map.add gs.nextid weaponData gs.entities} 32 | 33 | let behavior = { 34 | WeaponBehaviorType.attack = attack; 35 | WeaponBehaviorType.spawn = spawn 36 | WeaponBehaviorType.createWeapon = createWeapon 37 | } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Weapon/Weapons/TestMeleeWeapon.fs: -------------------------------------------------------------------------------- 1 | module TestMeleeWeapon 2 | 3 | // The Test Melee Weapon is a weapon 4 | // It performs a basic slashing attack 5 | 6 | let attack (weaponData: WeaponData.T) (commonEntityData: CommonEntityData.T) xy degrees (gs: GameState.T) = 7 | let rad = (float)degrees * System.Math.PI / 180.0; 8 | let x = 1.0 * (rad |> System.Math.Cos) + (xy |> fst); 9 | let y = 1.0 * (rad |> System.Math.Sin) + (xy |> snd); 10 | let newGS = ProjectileBehavior.spawn 2 weaponData (x, y) 2.5 degrees gs 11 | newGS; 12 | 13 | let createWeapon () = 14 | { 15 | WeaponData.weaponName = "Melee Weapon"; 16 | WeaponData.cooldown = 0.0; 17 | WeaponData.firerate = 1.0; 18 | WeaponData.damage = 150; 19 | WeaponData.effects = []; 20 | WeaponData.weaponType = WeaponData.Category.Melee; 21 | WeaponData.behaviorID = 1 22 | }; 23 | 24 | let spawn xy (gs:GameState.T) = 25 | let weaponData = { 26 | CommonEntityData.id = gs.nextid; 27 | CommonEntityData.position = xy; 28 | CommonEntityData.speed = 0.0; 29 | CommonEntityData.direction = 0.0; 30 | CommonEntityData.isMoving = false; 31 | CommonEntityData.data = createWeapon () |> EntityType.Weapon; 32 | CommonEntityData.iframes = 0.0; 33 | CommonEntityData.sprite = "yay" 34 | } 35 | { gs with entities = Map.add gs.nextid weaponData gs.entities} 36 | 37 | let behavior = { 38 | WeaponBehaviorType.attack = attack; 39 | WeaponBehaviorType.spawn = spawn 40 | WeaponBehaviorType.createWeapon = createWeapon 41 | } 42 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Weapon/Weapons/TestRangedWeapon.fs: -------------------------------------------------------------------------------- 1 | module TestRangedWeapon 2 | 3 | // The Test Ranged Weapon is a weapon 4 | // It performs a basic shooting attack 5 | 6 | let attack (weaponData: WeaponData.T) (commonEntityData: CommonEntityData.T) xy degrees (gs: GameState.T) = 7 | let rad = (float)degrees * System.Math.PI / 180.0; 8 | let x = 1.0 * (rad |> System.Math.Cos) + (xy |> fst); 9 | let y = 1.0 * (rad |> System.Math.Sin) + (xy |> snd); 10 | let newGS = ProjectileBehavior.spawn 1 weaponData (x, y) 10.0 degrees gs 11 | newGS; 12 | 13 | let createWeapon () = 14 | { 15 | WeaponData.weaponName = "Ranged Weapon"; 16 | WeaponData.cooldown = 0.0; 17 | WeaponData.firerate = 0.4; 18 | WeaponData.damage = 30; 19 | WeaponData.effects = []; 20 | WeaponData.weaponType = WeaponData.Category.Ranged; 21 | WeaponData.behaviorID = 3 22 | }; 23 | 24 | let spawn xy (gs:GameState.T) = 25 | let weaponData = { 26 | CommonEntityData.id = gs.nextid; 27 | CommonEntityData.position = xy; 28 | CommonEntityData.speed = 0.0; 29 | CommonEntityData.direction = 0.0; 30 | CommonEntityData.isMoving = false; 31 | CommonEntityData.data = createWeapon () |> EntityType.Weapon; 32 | CommonEntityData.iframes = 0.0; 33 | CommonEntityData.sprite = "yay" 34 | } 35 | { gs with entities = Map.add gs.nextid weaponData gs.entities} 36 | 37 | let behavior = { 38 | WeaponBehaviorType.attack = attack; 39 | WeaponBehaviorType.spawn = spawn 40 | WeaponBehaviorType.createWeapon = createWeapon 41 | } 42 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Behavior/Weapon/Weapons/TestRollWeapon.fs: -------------------------------------------------------------------------------- 1 | module TestRollWeapon 2 | 3 | // The Test Roll Weapon is a roll move 4 | // It moves the user 5 units in the direction they are facing 5 | 6 | let attack (weaponData: WeaponData.T) (commonEntityData: CommonEntityData.T) xy degrees (gs: GameState.T) = 7 | //let newGS = CommonEntityBehavior.move commonEntityData.id (5.0, 5.0) gs 8 | gs 9 | 10 | let createWeapon () = 11 | { 12 | WeaponData.weaponName = "Melee Weapon"; 13 | WeaponData.cooldown = 0.0; 14 | WeaponData.firerate = 1.0; 15 | WeaponData.damage = 0; 16 | WeaponData.effects = []; 17 | WeaponData.weaponType = WeaponData.Category.Roll; 18 | WeaponData.behaviorID = 2 19 | }; 20 | 21 | let spawn xy (gs:GameState.T) = 22 | let weaponData = { 23 | CommonEntityData.id = gs.nextid; 24 | CommonEntityData.position = xy; 25 | CommonEntityData.speed = 0.0; 26 | CommonEntityData.direction = 0.0; 27 | CommonEntityData.isMoving = false; 28 | CommonEntityData.data = createWeapon () |> EntityType.Weapon 29 | CommonEntityData.iframes = 0.0; 30 | CommonEntityData.sprite = "yay" 31 | } 32 | { gs with entities = Map.add gs.nextid weaponData gs.entities} 33 | 34 | let behavior = { 35 | WeaponBehaviorType.attack = attack; 36 | WeaponBehaviorType.spawn = spawn; 37 | WeaponBehaviorType.createWeapon = createWeapon 38 | } 39 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Command/CommandList.fs: -------------------------------------------------------------------------------- 1 | module Commands 2 | 3 | let mutable commands : (GameState.T -> GameState.T) list = [] 4 | 5 | let addCommand x = 6 | commands <- x::commands 7 | 8 | let executeAllCommands (gs:GameState.T) = 9 | match List.length commands with 10 | | 0 -> 11 | gs 12 | | _ -> 13 | let grandCommand = List.reduce (<<) commands // Compose all functions in the command list into one superfunction 14 | let newGs = grandCommand gs // Run the grand command on our gamestate to get the output gamestate, and return it 15 | commands <- [] 16 | newGs 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data Files/leveldata.txt: -------------------------------------------------------------------------------- 1 | 2 1,1,2 1,1 2 | 2 1,1,2,2 1,1,1 3 | 2 1,1,1,2,2 1,1,1 4 | 2 1,1,1,1,1,2,2,3 1,1,1,1,1 5 | 2 1,1,1,1,1,1,2,2,2,3 1,1,1,1,1 6 | 2 1,1,1,1,1,1,2,2,3,3 1,1,1,1,1 7 | 2 1,1,1,1,1,2,2,2,3,3 1,1,1,1,1,1 8 | 2 1,1,1,1,2,2,2,3,3,3 1,1,1,1,1,1,1 9 | 2 1,1,1,1,2,2,2,2,3,3,3,3 1,1,1,1,1,1,1,1 10 | 1 10 0 11 | 1 0 0 -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/CameraData.fs: -------------------------------------------------------------------------------- 1 | module CameraData 2 | 3 | type T = { position: float * float; 4 | rotation: float * float; 5 | scale: float * float; 6 | width: float; 7 | height: float; 8 | shakeTime: float } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/CommonEntityData.fs: -------------------------------------------------------------------------------- 1 | module CommonEntityData 2 | 3 | type T = { id: int; 4 | position: float * float; 5 | speed: float; 6 | direction: float; 7 | isMoving: bool; 8 | data: EntityType.T; 9 | iframes: float; 10 | sprite: string } 11 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/ControlModel.fs: -------------------------------------------------------------------------------- 1 | module ControlModel 2 | 3 | type T = { left : string; 4 | right : string; 5 | up : string; 6 | down : string; 7 | melee : string; 8 | range : string; 9 | dodge : string; 10 | active : string; } 11 | 12 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/EffectData.fs: -------------------------------------------------------------------------------- 1 | module EffectData 2 | 3 | type T = { effid: int; 4 | stacks: int } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/EnemyData.fs: -------------------------------------------------------------------------------- 1 | module EnemyData 2 | 3 | type T = { health: int; 4 | weapon: WeaponData.T; 5 | effects: EffectData.T list; 6 | enemyType: string; 7 | behaviorId: int; 8 | aiId: int; 9 | isBoss: bool } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/EntityType.fs: -------------------------------------------------------------------------------- 1 | module EntityType 2 | 3 | type T = 4 | | Player of PlayerData.T 5 | | Enemy of EnemyData.T 6 | | Item of ItemData.T 7 | | Weapon of WeaponData.T 8 | | Projectile of ProjectileData.T -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/GameData.fs: -------------------------------------------------------------------------------- 1 | module GameData 2 | 3 | // Highest floor, remaining time, and lowest total time are stored here because writing to the file takes a longer time than loading a new scene 4 | // This eliminates the need to wait for the high scores to write to the file before loading game over and not loading the most recent scores 5 | 6 | type T = { time: float; 7 | totaltime: float; 8 | floortime: float; 9 | floor: int; 10 | highestFloor: int; 11 | highestRemaining: float; 12 | lowestTotal: float; 13 | camera: CameraData.T } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/GameState.fs: -------------------------------------------------------------------------------- 1 | module GameState 2 | 3 | type T = { 4 | entities : Collections.Map; // map from id to entity 5 | playerPos : (float*float) list // list of player positions 6 | level: LevelData.T; 7 | levelParams: LevelParam.T[]; 8 | gamedata: GameData.T; 9 | nextid: int // the next created entity will have this id 10 | spawnIds: int list 11 | killIds: int list 12 | updateLevel: bool 13 | random: System.Random 14 | } 15 | 16 | let createInitialGameState () = 17 | { 18 | entities = Map.empty; 19 | playerPos = []; 20 | level = { 21 | LevelData.grid = []; 22 | LevelData.validTiles = []; 23 | LevelData.size = (0,0); 24 | LevelData.startpos = (0,0); 25 | LevelData.stairpos = (-14,-7); 26 | LevelData.complete = false; 27 | LevelData.generator = 1; 28 | LevelData.stairsSpawned = true 29 | }; 30 | levelParams = [||]; 31 | gamedata = { 32 | GameData.time = 60.0; 33 | GameData.totaltime = 0.0; 34 | GameData.floortime = 0.0; 35 | GameData.floor = 1; 36 | GameData.highestFloor = 0; 37 | GameData.highestRemaining = 0.0; 38 | GameData.lowestTotal = 0.0; 39 | GameData.camera = { 40 | position = (-0.5, -0.5); 41 | rotation = (0.0, 0.0); 42 | scale = (1.0, 1.0); 43 | width = 36.0; 44 | height = 18.0; 45 | shakeTime = 0.0; 46 | } 47 | }; 48 | nextid = 1 49 | spawnIds = [] 50 | killIds = [] 51 | updateLevel = false 52 | random = new System.Random() 53 | } 54 | 55 | let mutable instance: T = createInitialGameState () 56 | 57 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/ItemData.fs: -------------------------------------------------------------------------------- 1 | module ItemData 2 | 3 | type T = { itemName: string; 4 | behaviorID: int } 5 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/LevelData.fs: -------------------------------------------------------------------------------- 1 | module LevelData 2 | 3 | type T = { grid: TileData.T list list; 4 | validTiles: (int*int) list; 5 | size: int * int; 6 | startpos: int * int; 7 | stairpos: int * int; 8 | complete: bool; 9 | generator: int; 10 | stairsSpawned: bool } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/LevelParam.fs: -------------------------------------------------------------------------------- 1 | module LevelParam 2 | 3 | type T = { generator: int; 4 | enemies: int list; 5 | items: int list } 6 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/PlayerData.fs: -------------------------------------------------------------------------------- 1 | module PlayerData 2 | 3 | type T = { melee: WeaponData.T; 4 | ranged: WeaponData.T; 5 | roll: WeaponData.T; 6 | active: WeaponData.T; 7 | items: ItemData.T list; 8 | effects: EffectData.T list; 9 | controlModel: ControlModel.T } -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/ProjectileData.fs: -------------------------------------------------------------------------------- 1 | module ProjectileData 2 | 3 | type T = { damage: int; 4 | effects: EffectData.T list; 5 | lifespan: float; 6 | degrees: float; 7 | behaviorID: int; 8 | health: int; // number of things it can hit before it dies 9 | team: int } // 0 is friendly, 1 is enemy, 2+ can damage anyone -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/TileData.fs: -------------------------------------------------------------------------------- 1 | module TileData 2 | 3 | type T = { blockID: int; 4 | pos: float * float; 5 | gridpos: int * int } 6 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Data/WeaponData.fs: -------------------------------------------------------------------------------- 1 | module WeaponData 2 | 3 | type Category = 4 | | Melee 5 | | Ranged 6 | | Roll 7 | | Active 8 | 9 | type T = { weaponName: string; 10 | cooldown: float; 11 | firerate: float; 12 | damage: int; 13 | effects: EffectData.T list; 14 | weaponType: Category; 15 | behaviorID: int} -------------------------------------------------------------------------------- /FuncGameDev/FSharp/FSharp.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 16 4 | VisualStudioVersion = 16.0.29001.49 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp", "FSharp.fsproj", "{D0A0E3C6-57F6-488B-99FA-8A159EDAC7ED}" 7 | EndProject 8 | Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "TestProject", "..\TestProject\TestProject.fsproj", "{0A0B9FCB-C1DD-4D7B-B61C-2C1D7D083B38}" 9 | EndProject 10 | Global 11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 12 | Debug|Any CPU = Debug|Any CPU 13 | Release|Any CPU = Release|Any CPU 14 | EndGlobalSection 15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 16 | {D0A0E3C6-57F6-488B-99FA-8A159EDAC7ED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 17 | {D0A0E3C6-57F6-488B-99FA-8A159EDAC7ED}.Debug|Any CPU.Build.0 = Debug|Any CPU 18 | {D0A0E3C6-57F6-488B-99FA-8A159EDAC7ED}.Release|Any CPU.ActiveCfg = Release|Any CPU 19 | {D0A0E3C6-57F6-488B-99FA-8A159EDAC7ED}.Release|Any CPU.Build.0 = Release|Any CPU 20 | {0A0B9FCB-C1DD-4D7B-B61C-2C1D7D083B38}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 21 | {0A0B9FCB-C1DD-4D7B-B61C-2C1D7D083B38}.Debug|Any CPU.Build.0 = Debug|Any CPU 22 | {0A0B9FCB-C1DD-4D7B-B61C-2C1D7D083B38}.Release|Any CPU.ActiveCfg = Release|Any CPU 23 | {0A0B9FCB-C1DD-4D7B-B61C-2C1D7D083B38}.Release|Any CPU.Build.0 = Release|Any CPU 24 | EndGlobalSection 25 | GlobalSection(SolutionProperties) = preSolution 26 | HideSolutionNode = FALSE 27 | EndGlobalSection 28 | GlobalSection(ExtensibilityGlobals) = postSolution 29 | SolutionGuid = {E3B246A1-8041-49B4-B071-1B608B7F003C} 30 | EndGlobalSection 31 | EndGlobal 32 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/HighScore.txt: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | 999999999 -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Interpretation/CameraInterpreter.fs: -------------------------------------------------------------------------------- 1 | module CameraInterpreter 2 | 3 | open UnityEngine 4 | 5 | let GetCameraWidth = GameState.instance.gamedata.camera.width 6 | let GetCameraHeight = GameState.instance.gamedata.camera.height 7 | let GetCameraPosition = GameState.instance.gamedata.camera.position 8 | let GetCameraRotation = GameState.instance.gamedata.camera.rotation 9 | let GetCameraScale = GameState.instance.gamedata.camera.scale 10 | 11 | let updateCamera delta pos rot scale width height = CameraBehavior.updateCamera delta pos rot scale width height |> Commands.addCommand 12 | let tickCamera delta = CameraBehavior.updateCamera delta GetCameraPosition GetCameraRotation GetCameraScale GetCameraWidth GetCameraHeight |> Commands.addCommand 13 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Interpretation/Interpreter.fs: -------------------------------------------------------------------------------- 1 | module Interpreter 2 | 3 | open UnityEngine 4 | 5 | let MovePlayerRight id = CommonEntityBehavior.move id 0.0 |> Commands.addCommand 6 | let MovePlayerLeft id = CommonEntityBehavior.move id 180.0 |> Commands.addCommand 7 | let MovePlayerUp id = CommonEntityBehavior.move id 90.0 |> Commands.addCommand 8 | let MovePlayerDown id = CommonEntityBehavior.move id 270.0|> Commands.addCommand 9 | 10 | let MoveEntityInDirection id direction = CommonEntityBehavior.move id direction |> Commands.addCommand 11 | let ActivateWeapon weapon eid xy degrees = WeaponBehavior.attack weapon eid xy degrees |> Commands.addCommand -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Interpretation/UserContoller.fs: -------------------------------------------------------------------------------- 1 | namespace FSharp.Interpretation 2 | 3 | open UnityEngine 4 | 5 | type UserControllerScript() = 6 | inherit MonoBehaviour() 7 | member this.Update() = 8 | if Input.GetKeyDown(KeyCode.RightArrow) 9 | then Debug.Log("Player moved right. Call move right function here.") 10 | if Input.GetKeyDown(KeyCode.LeftArrow) 11 | then Debug.Log("Player moved left. Call move left function here.") 12 | if Input.GetKeyDown(KeyCode.UpArrow) 13 | then Debug.Log("Player moved up. Call move up function here.") 14 | if Input.GetKeyDown(KeyCode.DownArrow) 15 | then Debug.Log("Player moved down. Call move down function here.") 16 | 17 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Services/InputConfigurationService.fs: -------------------------------------------------------------------------------- 1 | module InputConfigurationService 2 | 3 | open System.IO 4 | open System 5 | 6 | let mutable PlayersToControls : Collections.Map = Map.ofList[] 7 | 8 | let AddControlsToMap (stream : StreamReader) (player : string) = 9 | let playerNumber = player |> int 10 | let parsedUp = stream.ReadLine() 11 | let parsedDown = stream.ReadLine() 12 | let parsedLeft = stream.ReadLine() 13 | let parsedRight = stream.ReadLine() 14 | let parsedMelee = stream.ReadLine() 15 | let parseRanged = stream.ReadLine() 16 | let parseRoll = stream.ReadLine() 17 | let parseActive = stream.ReadLine() 18 | PlayersToControls.Add(playerNumber, {right = parsedRight; left = parsedLeft; up = parsedUp; down = parsedDown; 19 | melee = parsedMelee; range = parseRanged; dodge = parseRoll; active = parseActive}) 20 | () 21 | 22 | let Read = 23 | 24 | // Read in a file 25 | use stream = new StreamReader @"C:\Game_Controls.txt" 26 | 27 | // Continue reading while valid lines. 28 | let valid = true 29 | while (valid) do 30 | let line = stream.ReadLine() 31 | if (line = null) then 32 | () 33 | else 34 | if (line |> Seq.forall Char.IsDigit) 35 | then AddControlsToMap stream line 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Services/LevelDataService.fs: -------------------------------------------------------------------------------- 1 | module LevelDataService 2 | 3 | open System.IO 4 | 5 | let parseLevelParam (levelParamSplit:string[]) = 6 | let generator = levelParamSplit.[0] |> int 7 | let enemies = levelParamSplit.[1].Split([|','|]) |> Array.toList |> List.map System.Int32.Parse 8 | let items = levelParamSplit.[2].Split([|','|]) |> Array.toList |> List.map System.Int32.Parse 9 | (generator, enemies, items) 10 | 11 | let splitLevelParam (levelParam:string) = 12 | levelParam.Split([|' '|]) |> parseLevelParam 13 | 14 | let createLevelParam levelParamSplit = 15 | let generator,enemies,items = levelParamSplit 16 | { LevelParam.T.generator = generator; 17 | LevelParam.T.enemies = enemies; 18 | LevelParam.T.items = items } 19 | 20 | 21 | let loadLevelParams (gs:GameState.T) = 22 | let baseDirectory = __SOURCE_DIRECTORY__ 23 | let baseDirectory' = Directory.GetParent(baseDirectory) 24 | let filePath = "Data Files/leveldata.txt" 25 | let fullPath = Path.Combine(baseDirectory'.FullName, filePath) 26 | let levelParamData = File.ReadAllLines(fullPath) 27 | let levelParamDataSplit = levelParamData |> Array.map splitLevelParam 28 | let levelParams = levelParamDataSplit |> Array.map createLevelParam 29 | { gs with levelParams = levelParams } 30 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Services/ScoreSavingService.fs: -------------------------------------------------------------------------------- 1 | module ScoreSavingService 2 | 3 | open System.IO 4 | 5 | // Scores is an array of Strings. 6 | // Scores [0] represents the floor reached 7 | // Scores [1] represents the time remaining 8 | // Scores [2] represents the total time spent 9 | let getScores = 10 | let baseDirectory = __SOURCE_DIRECTORY__ 11 | let baseDirectory' = Directory.GetParent(baseDirectory) 12 | let filePath = "HighScore.txt" 13 | let fullPath = Path.Combine(baseDirectory'.FullName, filePath) 14 | let scores = File.ReadAllLines(fullPath) 15 | scores 16 | 17 | let storeScores scores = 18 | let baseDirectory = __SOURCE_DIRECTORY__ 19 | let baseDirectory' = Directory.GetParent(baseDirectory) 20 | let filePath = "HighScore.txt" 21 | let fullPath = Path.Combine(baseDirectory'.FullName, filePath) 22 | File.WriteAllLines(fullPath, scores) 23 | () -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/CameraManager.fs: -------------------------------------------------------------------------------- 1 | module CameraManager 2 | 3 | open UnityEngine 4 | 5 | let updateCamera() = 6 | CameraInterpreter.tickCamera (Time.deltaTime |> float) 7 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Collision/PlayerCollision.fs: -------------------------------------------------------------------------------- 1 | namespace FSharp.Unity.Collision 2 | 3 | open UnityEngine 4 | 5 | type PlayerCollision()= 6 | inherit MonoBehaviour() 7 | 8 | member this.OnTriggerEnter2D (col : Collider2D) = 9 | 10 | let collisionFunction = match col.gameObject.tag with 11 | | "Enemy" -> PlayerBehavior.collideWithEnemy 12 | | "Item" -> PlayerBehavior.collideWithItem 13 | | "Weapon" -> PlayerBehavior.collideWithWeapon 14 | | "Projectile" -> PlayerBehavior.collideWithProjectile 15 | | _ -> PlayerBehavior.collideWithNothing 16 | 17 | match col.gameObject.tag with 18 | | "Wall" -> 19 | () // don't try to look up wall in entity list or you'll crash 20 | | "Stairs" -> 21 | PlayerBehavior.collideWithStairs |> Commands.addCommand 22 | | _ -> 23 | let selfWrapper = GameObjectWrapper.findWrapperForGameObject this.gameObject 24 | let otherWrapper = GameObjectWrapper.findWrapperForGameObject col.gameObject 25 | let selfData = GameStateUtils.getEntityByID GameState.instance selfWrapper.id 26 | let otherData = GameStateUtils.getEntityByID GameState.instance otherWrapper.id 27 | collisionFunction selfData otherData |> Commands.addCommand 28 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Collision/ProjectileCollision.fs: -------------------------------------------------------------------------------- 1 | namespace FSharp.Unity.Collision 2 | 3 | open UnityEngine 4 | 5 | type ProjectileCollision()= 6 | inherit MonoBehaviour() 7 | 8 | member this.OnTriggerEnter2D (col : Collider2D) = 9 | () 10 | let collisionFunction = match col.gameObject.tag with 11 | | "Player" -> ProjectileBehavior.collideWithPlayer 12 | | "Enemy" -> ProjectileBehavior.collideWithEnemy 13 | | _ -> PlayerBehavior.collideWithNothing 14 | 15 | match col.gameObject.tag with 16 | | "Wall" -> 17 | let selfWrapper = GameObjectWrapper.findWrapperForGameObject this.gameObject 18 | let selfData = GameStateUtils.getEntityByID GameState.instance selfWrapper.id 19 | ProjectileBehavior.collideWithWall selfData |> Commands.addCommand // don't try to look up wall in entity list or you'll crash 20 | | "Stairs" -> 21 | () 22 | | _ -> 23 | () 24 | let selfWrapper = GameObjectWrapper.findWrapperForGameObject this.gameObject 25 | let otherWrapper = GameObjectWrapper.findWrapperForGameObject col.gameObject 26 | let selfData = GameStateUtils.getEntityByID GameState.instance selfWrapper.id 27 | let otherData = GameStateUtils.getEntityByID GameState.instance otherWrapper.id 28 | collisionFunction selfData otherData |> Commands.addCommand 29 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Destroyer/Destroyer.fs: -------------------------------------------------------------------------------- 1 | module Destroyer 2 | 3 | open UnityEngine 4 | 5 | let removeGameObject id = 6 | let goWrapper = GameObjectWrapper.findWrapperWithID id 7 | goWrapper.go |> UnityEngine.Object.Destroy 8 | GameObjectWrapper.removeWrapperWithId id 9 | () 10 | 11 | let update killIds = 12 | // destroy all gameobjects with ids matching those in the killIds list 13 | GameState.instance <- { GameState.instance with killIds = [] } 14 | killIds |> List.iter removeGameObject 15 | () 16 | 17 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/EnemyAI/EnemyAI.fs: -------------------------------------------------------------------------------- 1 | module EnemyAIScript 2 | 3 | open UnityEngine 4 | open System 5 | 6 | 7 | // AI that randomly moves the enemy in a Cardinal direction 8 | let randomEnemyAI id = 9 | let randomizer = new Random() 10 | let rand = randomizer.Next(4) 11 | // left 12 | if rand < 1 then CommonEntityBehavior.move id 180.0 |> Commands.addCommand 13 | // right 14 | elif rand < 2 then CommonEntityBehavior.move id 0.0 |> Commands.addCommand 15 | // up 16 | elif rand < 3 then CommonEntityBehavior.move id 90.0 |> Commands.addCommand 17 | // down 18 | else CommonEntityBehavior.move id 270.0 |> Commands.addCommand 19 | 20 | 21 | 22 | let determineUpdate (enemy:EnemyData.T) id = 23 | let ai = Map.find enemy.behaviorId EnemyAITable.Instance 24 | ai id 25 | 26 | let callEnemyAI id (entity:CommonEntityData.T) = 27 | let entityOption = GameState.instance.entities.TryFind(id) 28 | match entityOption with 29 | | None -> () 30 | | Some entityData -> match entityData.data with 31 | | EntityType.Enemy enemy -> determineUpdate enemy id 32 | | _ -> () 33 | 34 | 35 | //member this.Update() = 36 | // [1..GameState.instance.entities.Count] |> List.map callEnemyAI -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/EnemyAI/EnemyAIFunctions/GolemBossAI.fs: -------------------------------------------------------------------------------- 1 | module GolemBossAI 2 | 3 | open UnityEngine 4 | open System 5 | 6 | let ai id = 7 | // TODO: Modify this to pick a random player or maybe the closest player later on 8 | let player = GameStateUtils.getEntityByID GameState.instance 1 9 | let enemy = GameStateUtils.getEntityByID GameState.instance id 10 | 11 | 12 | 13 | let enraged = match enemy.data with 14 | | EntityType.Enemy data -> 15 | data.health <= 750 16 | | _ -> 17 | false 18 | 19 | let speedMult = match enraged with 20 | | false -> 1.0 21 | | true -> 2.0 22 | 23 | let time = GameState.instance.gamedata.time 24 | let step = (time*4.0 |> int) % 32 25 | let isThrowing = match enraged with 26 | | false -> (step = 0 or step = 1) 27 | | true -> (step = 0 or step = 1 or step = 16 or step = 17) 28 | let isCharging = match enraged with 29 | | false -> (step = 16 or step = 17 or step = 18) 30 | | true -> (step = 8 or step = 9 or step = 24 or step = 25) 31 | let isWalking = match enraged with 32 | | false -> (step % 4 = 0 or step % 4 = 1) 33 | | true -> (step % 2 = 1) 34 | 35 | match isThrowing with 36 | | true -> 37 | EnemyBehavior.attack id |> Commands.addCommand 38 | | false -> 39 | match isCharging with 40 | | true -> 41 | EnemyBehavior.updateSpeed id (8.0*speedMult) |> Commands.addCommand 42 | | false -> 43 | EnemyBehavior.updateSpeed id (1.5*speedMult) |> Commands.addCommand 44 | match (isWalking or isCharging) with 45 | | true -> 46 | TrackerAI.ai id 47 | | false -> 48 | () -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/EnemyAI/EnemyAIFunctions/JumperAI.fs: -------------------------------------------------------------------------------- 1 | module JumperAI 2 | 3 | open UnityEngine 4 | open System 5 | 6 | let ai id = 7 | // TODO: Modify this to pick a random player or maybe the closest player later on 8 | let player = GameStateUtils.getEntityByID GameState.instance 1 9 | 10 | let time = GameState.instance.gamedata.time 11 | let isJumping = (((time*2.0 |> int) % 3) = 0) 12 | match isJumping with 13 | | true -> 14 | TrackerAI.ai id 15 | | false -> 16 | () 17 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/EnemyAI/EnemyAIFunctions/StanderAI.fs: -------------------------------------------------------------------------------- 1 | module StanderAI 2 | 3 | // AI that stands there and does absolutely nothing 4 | let ai id = 5 | () -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/EnemyAI/EnemyAIFunctions/TrackerAI.fs: -------------------------------------------------------------------------------- 1 | module TrackerAI 2 | 3 | open UnityEngine 4 | open System 5 | 6 | let ai id = 7 | match List.length GameState.instance.playerPos > 0 with 8 | | true -> 9 | let enemy = GameState.instance.entities.TryFind(id); 10 | let epos = enemy.Value.position 11 | let enemyPos = new Vector3(float32(fst epos), float32(snd epos)) 12 | 13 | let closestPlayerPos = EnemyAIUtils.getClosestPlayer epos GameState.instance.playerPos 14 | let playerPos = new Vector3(float32(fst closestPlayerPos), float32(snd closestPlayerPos)) 15 | let result = playerPos - enemyPos 16 | let direction = Vector3.Normalize(result) 17 | let angle = Math.Atan2(float(direction.y), float(direction.x)) 18 | let degreeAngle = angle * float(Mathf.Rad2Deg) 19 | CommonEntityBehavior.move id degreeAngle |> Commands.addCommand 20 | | false -> 21 | () -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/EnemyAI/EnemyAITable.fs: -------------------------------------------------------------------------------- 1 | module EnemyAITable 2 | 3 | let Instance = 4 | Map.empty 5 | .Add(1, StanderAI.ai) 6 | .Add(2, TrackerAI.ai) 7 | .Add(3, JumperAI.ai) 8 | .Add(10, GolemBossAI.ai) -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/EnemyAI/EnemyAIUtils.fs: -------------------------------------------------------------------------------- 1 | module EnemyAIUtils 2 | 3 | let getCloserPosToPos (enemyPos: float*float) (pos1: float*float) (pos2: float*float) = 4 | let dist1 = sqrt (((fst enemyPos - fst pos1) ** 2.0) + ((snd enemyPos - snd pos1) ** 2.0)) 5 | let dist2 = sqrt (((fst enemyPos - fst pos2) ** 2.0) + ((snd enemyPos - snd pos2) ** 2.0)) 6 | match dist1 <= dist2 with 7 | | true -> pos1 8 | | false -> pos2 9 | 10 | let getClosestPlayer (enemyPos: float*float) (playerPos: (float*float) list) = 11 | let getCloserPos = getCloserPosToPos enemyPos 12 | List.reduce getCloserPos playerPos -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/GameObjectWrapper.fs: -------------------------------------------------------------------------------- 1 | module GameObjectWrapper 2 | 3 | open UnityEngine 4 | 5 | type T = { id: int; 6 | go: GameObject } 7 | 8 | let mutable wrappers: Map = Map.empty 9 | 10 | let findWrapperWithID id = 11 | Map.find id wrappers 12 | 13 | let findWrapperForGameObject go = 14 | let mutable foundGo = { id = -1 ; go = null } 15 | wrappers |> Map.iter (fun key value -> 16 | if value.go = go then 17 | foundGo <- value 18 | else 19 | ()) 20 | foundGo 21 | 22 | let removeWrapperWithId id = 23 | wrappers <- Map.remove id wrappers 24 | 25 | let addWrapper (wrapper:T) = 26 | wrappers <- Map.add wrapper.id wrapper wrappers 27 | 28 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/GameOverController.fs: -------------------------------------------------------------------------------- 1 | namespace FSharp.Unity 2 | 3 | open UnityEngine 4 | open UnityEngine.SceneManagement 5 | open TMPro 6 | 7 | type GameOverController() = 8 | inherit MonoBehaviour() 9 | 10 | member this.Start() = 11 | let highestFloor = GameState.instance.gamedata.highestFloor |> string 12 | let highestRemaining = System.Math.Round (GameState.instance.gamedata.highestRemaining, 3) |> string 13 | let lowestTotal = System.Math.Round (GameState.instance.gamedata.lowestTotal, 3) |> string 14 | let txt = this.GetComponentInChildren() 15 | txt.text <- "Highest Floor: " + highestFloor + "\nHigh Score: " + highestRemaining + "\n Least Time Used: " + lowestTotal 16 | () 17 | 18 | member this.BackToMain() = 19 | "MainMenu" |> SceneManager.LoadScene 20 | 21 | member this.QuitGame() = 22 | "Quitting" |> Debug.Log 23 | Application.Quit() 24 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/HUD/HUDFloorUpdate.fs: -------------------------------------------------------------------------------- 1 | namespace FSharp.Unity 2 | 3 | open UnityEngine 4 | 5 | 6 | // This script must be placed on a gameobject called HUD with a TextMesh 7 | type HUDFloorUpdate() = 8 | inherit MonoBehaviour() 9 | 10 | member this.Update() = 11 | let camera = GameObject.Find("Main Camera") 12 | let txt = this.GetComponent() 13 | let floor : int = int GameState.instance.gamedata.floor 14 | let floor_string : string = string floor 15 | txt.text <- "Floor: " + floor_string 16 | this.transform.position <- new Vector3(14.0f, 7.5f, 5.0f) + camera.transform.position 17 | () -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/HUD/HUDTimerUpdate.fs: -------------------------------------------------------------------------------- 1 | namespace FSharp.Unity 2 | 3 | open UnityEngine 4 | 5 | 6 | // This script must be placed on a gameobject called HUD with a TextMesh 7 | type HUDTimerUpdate() = 8 | inherit MonoBehaviour() 9 | 10 | member this.Update() = 11 | let camera = GameObject.Find("Main Camera") 12 | let txt = this.GetComponent() 13 | let time : int = int GameState.instance.gamedata.time 14 | let time_string : string = string time 15 | txt.text <- "Time: " + time_string 16 | this.transform.position <- new Vector3(-14.0f, 7.5f, 5.0f) + camera.transform.position 17 | () -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/LevelGameObject.fs: -------------------------------------------------------------------------------- 1 | module LevelGameObject 2 | 3 | open UnityEngine 4 | 5 | let mutable tiles: GameObject list list = [] 6 | let mutable stairs: GameObject = null 7 | 8 | let getTileAtPosition x y = 9 | tiles.[x].[y] -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/MainMenuController.fs: -------------------------------------------------------------------------------- 1 | namespace FSharp.Unity 2 | 3 | open UnityEngine 4 | open UnityEngine.SceneManagement 5 | 6 | type MainMenuController() = 7 | inherit MonoBehaviour() 8 | 9 | member this.PlaySinglePlayerGame() = 10 | "Singleplayer" |> SceneManager.LoadScene 11 | 12 | member this.PlayMultiplayerPlayerGame() = 13 | "Multiplayer" |> SceneManager.LoadScene 14 | 15 | member this.QuitGame() = 16 | "Quitting" |> Debug.Log 17 | Application.Quit() 18 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/PauseMenuController.fs: -------------------------------------------------------------------------------- 1 | namespace FSharp.Unity 2 | 3 | open UnityEngine 4 | open UnityEngine.SceneManagement 5 | 6 | type PauseMenuController() = 7 | inherit MonoBehaviour() 8 | 9 | let mutable _isPaused = false 10 | 11 | [] 12 | [] val mutable _pauseMenu : GameObject 13 | 14 | member this.Start() = 15 | this._pauseMenu.SetActive(false) 16 | _isPaused <- false 17 | 18 | member this.Update() = 19 | if (not _isPaused && Input.GetKeyDown(KeyCode.Escape)) then 20 | this.Pause() 21 | 22 | member this.Pause() = 23 | _isPaused <- true 24 | this._pauseMenu.SetActive(true) 25 | Time.timeScale <- 0.0f 26 | 27 | member this.Play() = 28 | _isPaused <- false 29 | this._pauseMenu.SetActive(false) 30 | Time.timeScale <- 1.0f 31 | 32 | member this.Quit() = 33 | this.Play() 34 | "MainMenu" |> SceneManager.LoadScene 35 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/ProceduralGenerators/EntityGenerator.fs: -------------------------------------------------------------------------------- 1 | module EntityGenerator 2 | 3 | open UnityEngine 4 | 5 | let createEntity (gs:GameState.T) spawnFunction entityID (validTiles:(int*int) list) = 6 | let pos = validTiles.Length |> gs.random.Next |> (List.nth validTiles) 7 | spawnFunction (pos |> fst |> float, pos |> snd |> float) entityID 8 | List.except [pos] validTiles 9 | 10 | let generateEntities gs spawnFunction entities validTiles = 11 | let createEntityFunList = entities |> List.map (createEntity gs spawnFunction) 12 | List.fold (fun validTiles func -> func validTiles) validTiles createEntityFunList 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Spawner/Spawner.fs: -------------------------------------------------------------------------------- 1 | module Spawner 2 | 3 | open UnityEngine 4 | 5 | let spawnWeapon xy bid = 6 | WeaponBehavior.spawn xy bid |> Commands.addCommand 7 | 8 | let spawnItem xy bid = 9 | ItemBehavior.spawn xy bid |> Commands.addCommand 10 | 11 | let spawnEnemy xy bid = 12 | EnemyBehavior.spawn xy bid |> Commands.addCommand 13 | 14 | let spawnPlayer xy cm = 15 | PlayerBehavior.spawnPlayer xy cm |> Commands.addCommand 16 | 17 | let spawnEntity (gs:GameState.T) eid = 18 | let entity = GameStateUtils.getEntityByID gs eid 19 | let entityName = 20 | match entity.data with 21 | | EntityType.Player player -> "Player" 22 | | EntityType.Enemy enemy -> enemy.enemyType 23 | | EntityType.Item item -> "Item" 24 | | EntityType.Weapon weapon -> "Weapon" 25 | | EntityType.Projectile projectile -> entity.sprite 26 | let go = entityName |> Resources.Load |> GameObject.Instantiate 27 | go.transform.position <- new Vector3(entity.position |> fst |> float32, entity.position |> snd |> float32) 28 | go.transform.Rotate(0.0f, 0.0f, entity.direction |> float32) 29 | (eid, { GameObjectWrapper.T.id = eid; GameObjectWrapper.T.go = go}) 30 | 31 | 32 | let spawnGameObjects (gs:GameState.T) = 33 | let gameObjects = gs.spawnIds |> (gs |> spawnEntity |> List.map) // call spawnEntity with given gamestate on all ids in spawnIds 34 | let gameObjectsMap = Map.ofList gameObjects 35 | GameState.instance <- { gs with spawnIds = List.empty } 36 | gameObjectsMap 37 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/UpdateLoop.fs: -------------------------------------------------------------------------------- 1 | module UpdateLoop 2 | 3 | open UnityEngine 4 | 5 | let Updateloop() = 6 | CameraManager.updateCamera () 7 | GameState.instance <- GameObjectWrapper.wrappers |> CommonEntityUpdater.updateGameStateEntities GameState.instance 8 | Time.deltaTime |> float |> GameDataUtils.decreaseTime |> Commands.addCommand 9 | GameState.instance <- PlayerUpdater.updatePlayerPos GameState.instance 10 | UpdaterDispatcher.issueUpdateCommands GameState.instance GameObjectWrapper.wrappers 11 | GameState.instance.entities |> Map.iter UserController.tryQueryInput 12 | GameState.instance.entities |> Map.iter EnemyAIScript.callEnemyAI 13 | GameState.instance <- Commands.executeAllCommands GameState.instance 14 | UpdaterDispatcher.updateAllGameObjects GameState.instance GameObjectWrapper.wrappers 15 | Spawner.spawnGameObjects GameState.instance |> Map.iter (fun key value -> GameObjectWrapper.addWrapper value) 16 | Generator.tryGenerateLevel GameState.instance 17 | GameState.instance <- GameStateUtils.removeMarkedEntities GameState.instance 18 | GameState.instance.killIds |> Destroyer.update 19 | LevelUpdater.update () 20 | () 21 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Updater/CameraUpdater.fs: -------------------------------------------------------------------------------- 1 | module CameraUpdater 2 | 3 | open UnityEngine 4 | 5 | let update() = 6 | 7 | let cameraData = GameState.instance.gamedata.camera 8 | let unityCameraTransform = Camera.main.transform 9 | 10 | let pos = cameraData.position 11 | let rot = cameraData.rotation 12 | let scale = cameraData.scale 13 | 14 | let posV = new Vector3(fst pos |> float32, snd pos |> float32, unityCameraTransform.transform.position.z) 15 | let rotV = new Quaternion(fst rot |> float32, snd rot |> float32, unityCameraTransform.transform.rotation.z, unityCameraTransform.transform.rotation.w) 16 | let scaleV = new Vector3(fst scale |> float32, snd scale |> float32, unityCameraTransform.transform.localScale.z) 17 | match cameraData.shakeTime > 0.0 with 18 | | true -> 19 | let random = new System.Random() 20 | let randomX = posV.x + ((random.Next(3) - 1) |> float32) 21 | let randomY = posV.y + ((random.Next(3) - 1) |> float32) 22 | Camera.main.transform.position <- new Vector3(randomX, randomY, posV.z) 23 | | false -> 24 | Camera.main.transform.position <- posV 25 | Camera.main.transform.rotation <- rotV 26 | Camera.main.transform.localScale <- scaleV 27 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Updater/CommonEntityUpdater.fs: -------------------------------------------------------------------------------- 1 | module CommonEntityUpdater 2 | 3 | open UnityEngine 4 | 5 | let updateGameStateEntity (gs:GameState.T) id (wrapper:GameObjectWrapper.T) = 6 | let entity = GameStateUtils.getEntityByID gs id 7 | let transform = wrapper.go.transform.position 8 | let newPos = (transform.x |> float, transform.y |> float) 9 | let iframes = Mathf.Max(((entity.iframes |> float32) - Time.deltaTime), 0.0f) |> float 10 | let fixedEntity = { entity with isMoving = false ; position = newPos ; iframes = iframes } 11 | { gs with entities = Map.add id fixedEntity gs.entities } 12 | 13 | let updateGameStateEntities (gs:GameState.T) (goWrappers:Map) = 14 | goWrappers |> Map.fold updateGameStateEntity gs 15 | 16 | let update (entityData:CommonEntityData.T) (gameObject:GameObject) = 17 | let anim = gameObject.GetComponent() 18 | anim.SetBool("isMoving", entityData.isMoving) 19 | let dir_int = entityData.direction |> int 20 | let direction = ((dir_int % 360) + 360) % 360 21 | anim.SetFloat("direction", direction |> float32) 22 | match entityData.isMoving with 23 | | true -> 24 | let x = entityData.position |> fst |> float32 25 | let y = entityData.position |> snd |> float32 26 | let angle = (entityData.direction |> float32) * Mathf.Deg2Rad 27 | let direction = new Vector3(angle |> Mathf.Cos, angle |> Mathf.Sin, 0.0f) 28 | let step = (entityData.speed |> float32) * Time.deltaTime 29 | gameObject.transform.Translate(direction * step) 30 | | false -> 31 | () 32 | 33 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Updater/EnemyUpdater.fs: -------------------------------------------------------------------------------- 1 | module EnemyUpdater 2 | 3 | open UnityEngine 4 | 5 | let update (entityData:CommonEntityData.T) (enemyData:EnemyData.T) (gameObject:GameObject) = 6 | // update enemies 7 | EnemyBehavior.tickWeaponCooldown (Time.deltaTime |> float) entityData.id enemyData.weapon |> Commands.addCommand 8 | () 9 | 10 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Updater/GameDataUpdater.fs: -------------------------------------------------------------------------------- 1 | module GameDataUpdater 2 | 3 | open UnityEngine 4 | 5 | let update (gameData:GameData.T) (gameObject:GameObject) = 6 | // update timer and floor number 7 | () 8 | 9 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Updater/ItemUpdater.fs: -------------------------------------------------------------------------------- 1 | module ItemUpdater 2 | 3 | open UnityEngine 4 | 5 | let update (entityData:CommonEntityData.T) (itemData:ItemData.T) (gameObject:GameObject) = 6 | // update items 7 | () 8 | 9 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Updater/LevelUpdater.fs: -------------------------------------------------------------------------------- 1 | module LevelUpdater 2 | 3 | open UnityEngine 4 | 5 | let update() = 6 | let levelData = GameState.instance.level 7 | match levelData.stairsSpawned with 8 | | true -> // if stairs are supposed to be spawned, move them to their normal position 9 | LevelGameObject.stairs.transform.position <- new Vector3(levelData.stairpos |> fst |> float32, levelData.stairpos |> snd |> float32) 10 | | false -> // if stairs aren't supposed to be spawned (e.g. boss is alive), move them offscreen 11 | LevelGameObject.stairs.transform.position <- new Vector3(-100.0f, -100.0f) 12 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Updater/PlayerUpdater.fs: -------------------------------------------------------------------------------- 1 | module PlayerUpdater 2 | 3 | open UnityEngine 4 | 5 | let update (entityData:CommonEntityData.T) (playerData:PlayerData.T) (gameObject:GameObject) = 6 | // update player's weapons and stuff 7 | PlayerBehavior.tickWeaponCooldown (Time.deltaTime |> float) entityData.id playerData.melee |> Commands.addCommand 8 | PlayerBehavior.tickWeaponCooldown (Time.deltaTime |> float) entityData.id playerData.ranged |> Commands.addCommand 9 | PlayerBehavior.tickWeaponCooldown (Time.deltaTime |> float) entityData.id playerData.roll |> Commands.addCommand 10 | PlayerBehavior.tickWeaponCooldown (Time.deltaTime |> float) entityData.id playerData.active |> Commands.addCommand 11 | () 12 | 13 | let updatePlayerPosHelper (gs:GameState.T) eid (data:CommonEntityData.T) = 14 | match data.data with 15 | | EntityType.Player player -> 16 | { gs with playerPos = List.Cons (data.position, gs.playerPos) } 17 | | _ -> 18 | gs 19 | 20 | let updatePlayerPos (gs:GameState.T) = 21 | Map.fold updatePlayerPosHelper { gs with playerPos = [] } gs.entities 22 | 23 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Updater/ProjectileUpdater.fs: -------------------------------------------------------------------------------- 1 | module ProjectileUpdater 2 | 3 | open UnityEngine 4 | 5 | let update (entityData:CommonEntityData.T) (projectileData:ProjectileData.T) (gameObject:GameObject) = 6 | // update projectiles 7 | let deltaTime = Time.deltaTime |> float 8 | let direction = 0.0f |> float 9 | // need to move these just straight forward due to transform.rotate for the sprite 10 | ProjectileBehavior.decreaseLifespan entityData.id deltaTime |> Commands.addCommand 11 | CommonEntityBehavior.move entityData.id direction |> Commands.addCommand 12 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Updater/UpdaterDispatcher.fs: -------------------------------------------------------------------------------- 1 | module UpdaterDispatcher 2 | 3 | open UnityEngine 4 | 5 | let updateDispatch (entityData:CommonEntityData.T) (gameObject:GameObject) = 6 | match entityData.data with 7 | | EntityType.Player playerData -> 8 | PlayerUpdater.update entityData playerData gameObject 9 | () 10 | | EntityType.Enemy enemyData -> 11 | EnemyUpdater.update entityData enemyData gameObject 12 | () 13 | | EntityType.Item itemData -> 14 | ItemUpdater.update entityData itemData gameObject 15 | () 16 | | EntityType.Projectile projectileData -> 17 | ProjectileUpdater.update entityData projectileData gameObject 18 | () 19 | | EntityType.Weapon weaponData -> 20 | WeaponUpdater.update entityData weaponData gameObject 21 | () 22 | 23 | let updateObject (gs:GameState.T) eid (gameObjectWrapper:GameObjectWrapper.T) = 24 | let id = gameObjectWrapper.id 25 | let entityData = GameStateUtils.getEntityByID gs id 26 | CommonEntityUpdater.update entityData gameObjectWrapper.go 27 | () 28 | 29 | let updateAllGameObjects (gs:GameState.T) (gameObjects:Map) = 30 | let callUpdaterWithGameState = updateObject gs 31 | gameObjects |> Map.iter callUpdaterWithGameState 32 | () 33 | 34 | let issueUpdateCommand (gs:GameState.T) eid (gameObjectWrapper:GameObjectWrapper.T) = 35 | let id = gameObjectWrapper.id 36 | let entityData = GameStateUtils.getEntityByID gs id 37 | updateDispatch entityData gameObjectWrapper.go 38 | 39 | let issueUpdateCommands (gs:GameState.T) (gameObjects:Map) = 40 | let callDispatchWithGameState = issueUpdateCommand gs 41 | gameObjects |> Map.iter callDispatchWithGameState 42 | () 43 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/Unity/Updater/WeaponUpdater.fs: -------------------------------------------------------------------------------- 1 | module WeaponUpdater 2 | 3 | open UnityEngine 4 | 5 | let update (entityData:CommonEntityData.T) (weaponData:WeaponData.T) (gameObject:GameObject) = 6 | // update weapons 7 | () 8 | 9 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/.signature.p7s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/.signature.p7s -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/FSharp.Core.4.6.2.nupkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/FSharp.Core.4.6.2.nupkg -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/lib/net45/FSharp.Core.optdata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/lib/net45/FSharp.Core.optdata -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/lib/net45/FSharp.Core.sigdata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/lib/net45/FSharp.Core.sigdata -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/lib/netstandard1.6/FSharp.Core.optdata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/lib/netstandard1.6/FSharp.Core.optdata -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/lib/netstandard1.6/FSharp.Core.sigdata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/FSharp.Core.4.6.2/lib/netstandard1.6/FSharp.Core.sigdata -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/.signature.p7s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/.signature.p7s -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/LICENSE.TXT: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) .NET Foundation and Contributors 4 | 5 | All rights reserved. 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in all 15 | copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 23 | SOFTWARE. 24 | -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/System.ValueTuple.4.4.0.nupkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/System.ValueTuple.4.4.0.nupkg -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/MonoAndroid10/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/MonoAndroid10/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/MonoTouch10/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/MonoTouch10/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/netcoreapp2.0/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/netcoreapp2.0/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/netstandard2.0/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/netstandard2.0/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/xamarinios10/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/xamarinios10/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/xamarinmac20/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/xamarinmac20/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/xamarintvos10/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/xamarintvos10/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/xamarinwatchos10/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/lib/xamarinwatchos10/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/MonoAndroid10/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/MonoAndroid10/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/MonoTouch10/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/MonoTouch10/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/netcoreapp2.0/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/netcoreapp2.0/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/netstandard2.0/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/netstandard2.0/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/xamarinios10/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/xamarinios10/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/xamarinmac20/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/xamarinmac20/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/xamarintvos10/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/xamarintvos10/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/xamarinwatchos10/_._: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/ref/xamarinwatchos10/_._ -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/useSharedDesignerContext.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AugustDailey/Time-Runner/6724847e6d4bca11ef9d629b992c6a140483d344/FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/useSharedDesignerContext.txt -------------------------------------------------------------------------------- /FuncGameDev/FSharp/packages/System.ValueTuple.4.4.0/version.txt: -------------------------------------------------------------------------------- 1 | 8321c729934c0f8be754953439b88e6e1c120c24 2 | -------------------------------------------------------------------------------- /FuncGameDev/FuncGameDev.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 16 4 | Global 5 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 6 | Debug|Any CPU = Debug|Any CPU 7 | Release|Any CPU = Release|Any CPU 8 | EndGlobalSection 9 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 10 | EndGlobalSection 11 | GlobalSection(SolutionProperties) = preSolution 12 | HideSolutionNode = FALSE 13 | EndGlobalSection 14 | EndGlobal 15 | -------------------------------------------------------------------------------- /FuncGameDev/Logs/Packages-Update.log: -------------------------------------------------------------------------------- 1 | 2 | === Thu Sep 12 13:19:35 2019 3 | 4 | Packages were changed. 5 | Update Mode: mergeDefaultDependencies 6 | 7 | The following packages were added: 8 | com.unity.package-manager-ui@2.2.0 9 | com.unity.ext.nunit@1.0.0 10 | com.unity.test-framework@1.0.13 11 | com.unity.ide.vscode@1.1.0 12 | com.unity.ide.rider@1.1.0 13 | com.unity.ugui@1.0.0 14 | com.unity.modules.androidjni@1.0.0 15 | The following packages were updated: 16 | com.unity.collab-proxy from version 1.2.9 to 1.2.16 17 | com.unity.textmeshpro from version 2.0.0 to 2.0.1 18 | com.unity.timeline from version 0.0.0-builtin to 1.1.0 19 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | m_Volume: 1 7 | Rolloff Scale: 1 8 | Doppler Factor: 1 9 | Default Speaker Mode: 2 10 | m_SampleRate: 0 11 | m_DSPBufferSize: 1024 12 | m_VirtualVoiceCount: 512 13 | m_RealVoiceCount: 32 14 | m_SpatializerPlugin: 15 | m_AmbisonicDecoderPlugin: 16 | m_DisableAudio: 0 17 | m_VirtualizeEffects: 1 18 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 7 7 | m_Gravity: {x: 0, y: -9.81, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_DefaultSolverIterations: 6 13 | m_DefaultSolverVelocityIterations: 1 14 | m_QueriesHitBackfaces: 0 15 | m_QueriesHitTriggers: 1 16 | m_EnableAdaptiveForce: 0 17 | m_ClothInterCollisionDistance: 0 18 | m_ClothInterCollisionStiffness: 0 19 | m_ContactsGeneration: 1 20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 21 | m_AutoSimulation: 1 22 | m_AutoSyncTransforms: 0 23 | m_ReuseCollisionCallbacks: 1 24 | m_ClothInterCollisionSettingsToggle: 0 25 | m_ContactPairsMode: 0 26 | m_BroadphaseType: 0 27 | m_WorldBounds: 28 | m_Center: {x: 0, y: 0, z: 0} 29 | m_Extent: {x: 250, y: 250, z: 250} 30 | m_WorldSubdivisions: 8 31 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: 8 | - enabled: 0 9 | path: Assets/Scenes/SampleScene.unity 10 | guid: 2cda990e2423bbf4892e6590ba056729 11 | - enabled: 1 12 | path: Assets/Scenes/MainMenu.unity 13 | guid: d068e39e872057c4f931cf687c3beb17 14 | - enabled: 1 15 | path: Assets/Scenes/Singleplayer.unity 16 | guid: b037d387d974066429f696f49adb1771 17 | - enabled: 1 18 | path: Assets/Scenes/GameOver.unity 19 | guid: 105904a4296a5214881872b1406c50d2 20 | - enabled: 1 21 | path: Assets/Scenes/Multiplayer.unity 22 | guid: 7873a41d5fa5846429de92a311dc3293 23 | m_configObjects: {} 24 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 7 7 | m_ExternalVersionControlSupport: Visible Meta Files 8 | m_SerializationMode: 2 9 | m_LineEndingsForNewScripts: 2 10 | m_DefaultBehaviorMode: 1 11 | m_SpritePackerMode: 4 12 | m_SpritePackerPaddingPower: 1 13 | m_EtcTextureCompressorBehavior: 1 14 | m_EtcTextureFastCompressor: 1 15 | m_EtcTextureNormalCompressor: 2 16 | m_EtcTextureBestCompressor: 4 17 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd 18 | m_ProjectGenerationRootNamespace: 19 | m_UserGeneratedProjectSuffix: 20 | m_CollabEditorSettings: 21 | inProgressEnabled: 1 22 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshProjectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | m_LastAgentTypeID: -887442657 73 | m_Settings: 74 | - serializedVersion: 2 75 | agentTypeID: 0 76 | agentRadius: 0.5 77 | agentHeight: 2 78 | agentSlope: 45 79 | agentClimb: 0.75 80 | ledgeDropHeight: 0 81 | maxJumpAcrossDistance: 0 82 | minRegionArea: 2 83 | manualCellSize: 0 84 | cellSize: 0.16666667 85 | manualTileSize: 0 86 | tileSize: 256 87 | accuratePlacement: 0 88 | debug: 89 | m_Flags: 0 90 | m_SettingNames: 91 | - Humanoid 92 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!149 &1 4 | NetworkManager: 5 | m_ObjectHideFlags: 0 6 | m_DebugLevel: 0 7 | m_Sendrate: 15 8 | m_AssetToPrefab: {} 9 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/PresetManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1386491679 &1 4 | PresetManager: 5 | m_ObjectHideFlags: 0 6 | m_DefaultList: [] 7 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2019.2.5f1 2 | m_EditorVersionWithRevision: 2019.2.5f1 (9dace1eed4cc) 3 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: 7 | - Item 8 | - Projectile 9 | layers: 10 | - Default 11 | - TransparentFX 12 | - Ignore Raycast 13 | - 14 | - Water 15 | - UI 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | - 41 | - 42 | m_SortingLayers: 43 | - name: Default 44 | uniqueID: 0 45 | locked: 0 46 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.1 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 1 7 | m_Enabled: 1 8 | m_TestMode: 0 9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events 10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events 11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com 12 | m_TestInitMode: 0 13 | CrashReportingSettings: 14 | m_EventUrl: https://perf-events.cloud.unity3d.com 15 | m_Enabled: 0 16 | m_LogBufferSize: 10 17 | m_CaptureEditorExceptions: 1 18 | UnityPurchasingSettings: 19 | m_Enabled: 0 20 | m_TestMode: 0 21 | UnityAnalyticsSettings: 22 | m_Enabled: 0 23 | m_TestMode: 0 24 | m_InitializeOnStartup: 1 25 | UnityAdsSettings: 26 | m_Enabled: 0 27 | m_InitializeOnStartup: 1 28 | m_TestMode: 0 29 | m_IosGameId: 30 | m_AndroidGameId: 31 | m_GameIds: {} 32 | m_GameId: 33 | PerformanceReportingSettings: 34 | m_Enabled: 0 35 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/VFXManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!937362698 &1 4 | VFXManager: 5 | m_ObjectHideFlags: 0 6 | m_IndirectShader: {fileID: 0} 7 | m_RenderPipeSettingsPath: 8 | -------------------------------------------------------------------------------- /FuncGameDev/ProjectSettings/XRSettings.asset: -------------------------------------------------------------------------------- 1 | { 2 | "m_SettingKeys": [ 3 | "VR Device Disabled", 4 | "VR Device User Alert" 5 | ], 6 | "m_SettingValues": [ 7 | "False", 8 | "False" 9 | ] 10 | } -------------------------------------------------------------------------------- /FuncGameDev/TestProject/bin/Debug/TestProject.XML: -------------------------------------------------------------------------------- 1 | 2 | 3 | TestProject 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Functional-Game-Development-Senior-Project 2 | Team 3 Senior Project Repository 3 | --------------------------------------------------------------------------------