diff --git a/MonoGameLibrary b/MonoGameLibrary index 8f24103..7acf6d4 160000 --- a/MonoGameLibrary +++ b/MonoGameLibrary @@ -1 +1 @@ -Subproject commit 8f241032d24da10a497b5923f532641253c9b84c +Subproject commit 7acf6d43b29b713f83b79dbc160f23a531b22453 diff --git a/ONDClient/Sound/SoundManager.cs b/ONDClient/Sound/SoundManager.cs index e5f9537..5fe14f7 100644 --- a/ONDClient/Sound/SoundManager.cs +++ b/ONDClient/Sound/SoundManager.cs @@ -55,7 +55,6 @@ public static class SoundManager { nekoMove = Core.content.Load("sounds/neko-move1"); bell = Core.content.Load("sounds/bell"); - nekoPurrInstance = nekoPurr.CreateInstance(); ambienceInstance = ambience.CreateInstance(); } @@ -120,6 +119,7 @@ public static class SoundManager { public static void PlayBell() => bell.Play(); public static void StartNekoPurr() { + nekoPurrInstance?.Stop(); nekoPurrInstance = nekoPurr.CreateInstance(); nekoPurrInstance.IsLooped = true; nekoPurrInstance.Play(); diff --git a/ONDServer/GameLogic.cs b/ONDServer/GameLogic.cs index ba9a7e6..657b7fb 100644 --- a/ONDServer/GameLogic.cs +++ b/ONDServer/GameLogic.cs @@ -1,4 +1,3 @@ -using System.Diagnostics; using GlobalClassLib; using ONDServer.Enemies; using ONDServer.Map; @@ -15,10 +14,6 @@ public static class GameLogic { private static readonly OpportunityTimer gamePhaseTimer = new(60_000); public static bool NSecondUpdate{ get; private set; } = false; - public static MapTile P1Office; - public static MapTile P2Office; - public static MapTile[] Offices =>[P1Office, P2Office]; - public static int OfficeDoorUsage{ get; set; } = 10; public static int RemoteDoorUsage{ get; set; } = 3; public static int LightUsage{ get; set; } = 2; @@ -38,8 +33,6 @@ public static class GameLogic { public static void Init() { // Create map MapManager.InitMap(); - P1Office = MapManager.Get(10); - P2Office = MapManager.Get(14); //Send map to client TileConnector[] connectors = MapManager.GetAllConnectors(); @@ -63,7 +56,7 @@ public static class GameLogic { Server.SendPacket(new MapInitPacket{Connectors = connectorsConverted, UpsideDown = false, YourTiles = p1Tiles.ToArray(), OpponentTiles = p2Tiles.ToArray(), LitTiles = neutralTiles.ToArray()}, Server.P1.Peer); Server.SendPacket(new MapInitPacket{Connectors = connectorsConverted, UpsideDown = true, YourTiles = p2Tiles.ToArray(), OpponentTiles = p1Tiles.ToArray(), LitTiles = neutralTiles.ToArray()}, Server.P2.Peer); - spawnOrder = [[new SpotEnemy(3), new MareEnemy(3)], [new DashEnemy(6)], [new LurkEnemy(3), new NekoEnemy(3)]]; + spawnOrder = [[new SpotEnemy(3), new MareEnemy(3)], [new DashEnemy(6)]]; spawnOrder.ForEach(l => l.ForEach(e => EnemyManager.AddEnemy(e))); Thread.Sleep(3000); diff --git a/README.md b/README.md new file mode 100644 index 0000000..bb98714 --- /dev/null +++ b/README.md @@ -0,0 +1,26 @@ +# OneNightDuel +Hra pro 2 hráče inspirovaná hrou Five Nights at Freddy's. + +Dokumentace a teoretická část: `teoreticka-cast.pdf` + +Varování: hra obsahuje jumpscary + + +## Instalace +_(převzato ze sekce INSTALACE v dokumentaci)_ + +### Stažení před-kompilované aplikace + +Nevyžaduje předchozí instalaci žádných knihoven.\ +V sekci Releases (Vydání) na stránce repozitáře lze nalézt zkompilované verze programu pro Linux a Windows. Příslušný archiv je třeba pouze stáhnout a extrahovat. + +### Vlastní kompilace + +Pro případ, že by uživatel chtěl provézt kompilaci na vlastním zařízení. Vyžaduje .Net verze alespoň 9.0. Veškeré kompilační scripty jsou vytvořené pouze pro systém Linux. +Kompilaci lze provézt stažením celého repozitáře a spuštěním scriptu `build-linux.sh` – ten program zkompiluje a vytvoří odkaz na spouštěcí soubor. Scripty `build‑self‑contained-linux.sh` a `build‑self‑contained‑win.sh` slouží pro vytvoření verzí aplikace spustitelných bez předchozí instalace jakýchkoli knihoven (těch verzí, které jsou ke stažení v Releases). + +### Spuštění + +Po absolvování jednoho ze zmíněných postupů naleznete v nejvyšším adresáři spouštěcí soubor pro client nebo odkaz na něj (`OneNightDuel` ve verzi pro Linux, `OneNightDuel.bat` ve verzi pro Windows) a script pro spuštění serveru (`launch‑standalone‑server.sh`, respektive `.bat`) + +_(více informací v dokumentaci)_ \ No newline at end of file diff --git a/teoreticka-cast.pdf b/teoreticka-cast.pdf new file mode 100644 index 0000000..ff55013 Binary files /dev/null and b/teoreticka-cast.pdf differ