How dwatkin-dev/csharpplayersguide works
This repository is a collection of four small C# console exercises, rather than one integrated product. Their workflows are a Minesweeper game, a target-range game, arrow construction and display, and armor damage reduction. The README only names the collection; the architecture below is based on the supplied project tree and sampled program sources.
Main entry points: Minesweeper/Program.cs Game Loop · TheUmbra/Program.cs Round Loop · Scratchpad/Program.cs Arrow Demo · Armored/Program.cs Damage Demo
Components 16
Minesweeper
- Game Entry
Minesweeper/Program.cs - Fixed Board
Minesweeper/Program.cs - Board State
Minesweeper/Program.cs - Cell State
Minesweeper/Program.cs - Game Loop
Minesweeper/Program.cs - Player Input
Minesweeper/Program.cs - Console Renderer
Minesweeper/Program.cs
Umbra Game
- Round Loop
TheUmbra/Program.cs - Game Rules
TheUmbra/Program.cs
Arrow Exercise
- Arrow Demo
Scratchpad/Program.cs - Arrow Model
Scratchpad/Program.cs
Armor Exercise
- Damage Demo
Armored/Program.cs - Puppet Health
Armored/Program.cs - Armor Reduction
Armored/Program.cs
Other components
- Player
- Console I/O
Connections 23
- Player → Game Entry: plays
- Game Entry → Fixed Board: generates board
- Fixed Board → Board State: creates
- Game Entry → Game Loop: starts
- Game Loop → Console Renderer: renders
- Game Loop → Player Input: requests move
- Player Input → Console I/O: reads keys
- Player → Console I/O: enters moves
- Game Loop → Board State: uncovers cells
- Board State → Cell State: stores
- Console Renderer → Board State: reads board
- Console Renderer → Console I/O: draws screen
- Player → Round Loop: plays
- Round Loop → Game Rules: checks rules
- Round Loop → Console I/O: reads and prints
- Player → Console I/O: enters guess
- Player → Arrow Demo: runs demo
- Arrow Demo → Arrow Model: creates arrows
- Arrow Demo → Console I/O: prints arrow data
- Player → Damage Demo: runs demo
- Damage Demo → Puppet Health: applies damage
- Puppet Health → Armor Reduction: reduces damage
- Damage Demo → Console I/O: prints health