Files
TheGame/README.md
Björn Blomberg 61b03c5801 Add initial project files and implement core game features
- Created README.md with project description and setup instructions
- Added project configuration files (TheGame.csproj, TheGame.sln, project.godot)
- Implemented main game scenes (MainMenu.tscn, Game.tscn, LoadGameMenu.tscn)
- Developed game logic in C# scripts (Game.cs, MainMenu.cs, LoadGameMenu.cs, PauseMenu.cs, SaveManager.cs)
- Introduced save/load functionality and timer display
- Included icon.svg for game branding
2025-10-16 10:50:04 +02:00

130 lines
4.2 KiB
Markdown

# TheGame
Ett 2D spel byggt i Godot med C# som innehåller en startmeny, timer och save/load funktionalitet.
## Funktioner
- **Startmeny** med knappar för Start Game, Load Game och Exit
- **Timer** som räknar speltid i övre högra hörnet
- **Pausmeny** med knapp i övre vänstra hörnet som innehåller:
- Pause/Resume funktionalitet
- Save Game
- Exit to Main Menu
- Exit to Desktop
- **Save/Load System** som sparar speltid i `saves/` mappen
- **Load Game Menu** som visar alla sparade spel med datum
- Load Game knappen är automatiskt utgråad om inga sparade spel finns
## Krav och Dependencies
### Systemkrav
- **Godot 4.2** eller senare med C# support
- **.NET 6.0** SDK eller senare
- **Windows** (testat på Windows, men bör fungera på andra plattformar)
### Dependencies
Projektet använder följande .NET dependencies:
- `Godot.NET.Sdk` - Godot's .NET SDK
- `System.Text.Json` - För JSON serialisering av sparfiler
## Installation och Setup
### 1. Installera Godot med C# Support
1. Ladda ner Godot 4.2+ **Mono version** från [godotengine.org](https://godotengine.org/download)
2. Installera .NET 6.0 SDK från [Microsoft](https://dotnet.microsoft.com/download)
### 2. Öppna Projektet
1. Starta Godot
2. Klicka på "Import"
3. Navigera till projektmappen och välj `project.godot`
4. Klicka "Import & Edit"
### 3. Första Kompilering
1. I Godot editorn, gå till **Project → Tools → C# → Create C# solution**
2. Vänta tills kompileringen är klar
3. Om fel uppstår, kontrollera att .NET SDK är korrekt installerat
## Kompilering och Körning
### Utvecklingsläge (Godot Editor)
1. Öppna projektet i Godot
2. Tryck **F5** eller klicka på "Play"-knappen
3. Första gången kommer du behöva välja `scenes/MainMenu.tscn` som main scene
### Bygga för Distribution
1. I Godot editorn, gå till **Project → Export**
2. Lägg till en export template för din målplattform (Windows, Linux, macOS)
3. Konfigurera export-inställningar
4. Klicka **Export Project** för att skapa en körbar fil
### Alternativ Kompilering via Terminal
```bash
# Navigera till projektmappen
cd c:\Repo\TheGame
# Bygg projektet
dotnet build
# Kör Godot projekt från kommandoraden (kräver Godot i PATH)
godot --path . scenes/MainMenu.tscn
```
## Projektstruktur
```
TheGame/
├── project.godot # Godot projektfil
├── TheGame.csproj # C# projektfil
├── scenes/ # Godot scener
│ ├── MainMenu.tscn # Huvudmeny
│ ├── Game.tscn # Spelscen
│ └── LoadGameMenu.tscn # Ladda spel meny
├── scripts/ # C# scripts
│ ├── MainMenu.cs # Huvudmeny logik
│ ├── Game.cs # Spel logik och timer
│ ├── PauseMenu.cs # Pausmeny logik
│ ├── SaveManager.cs # Save/Load hantering
│ ├── LoadGameMenu.cs # Ladda spel meny
│ └── GameState.cs # Spelstatus hantering
├── saves/ # Sparade spel (skapas automatiskt)
└── README.md # Denna fil
```
## Kontroller
- **ESC** - Pausa/återuppta spelet
- **Musklick** - Navigera menyer och knappar
- **Pausknapp** (☰) - Pausa spelet (övre vänstra hörnet)
## Felsökning
### Vanliga Problem
1. **"C# script compilation failed"**
- Kontrollera att .NET 6.0 SDK är installerat
- Kör `dotnet --version` i terminal för att verifiera
2. **"Cannot find Godot.NET.Sdk"**
- Se till att du använder Godot Mono version
- Återskapa C# solution via Project → Tools → C# → Create C# solution
3. **Save-filer sparas inte**
- Kontrollera att spelet har skrivrättigheter till projektmappen
- Saves sparas i `saves/` mappen bredvid den körbara filen
4. **Load Game knapp fungerar inte**
- Detta är förväntat beteende om inga sparfiler finns
- Knappen blir automatiskt klickbar när du har sparat minst ett spel
## Utveckling
För att utveckla projektet vidare:
1. Öppna projektet i Godot
2. C# scripts kan redigeras i valfri IDE (Visual Studio, VS Code, Rider)
3. Godot kommer automatiskt att kompilera om scripten när de ändras
4. Använd Godot's debugger för att felsöka runtime-problem
## Licens
Se `LICENSE` filen för licensinformation.