How 896pw85v/cs61b-sp24-proj-3-byow works
This is a Java tile-world dungeon generator with a small playable/rendering demo and an autograder-facing world-generation entry point. The principal workflow seeds a world, lays out rooms, links their origins, adds walls, then returns or renders the tile grid; the demo also places an avatar and applies hard-coded movement. The graph reflects the sampled implementation. The README is empty, and other source files were not sampled, so no additional capabilities or wiring are inferred.
Main entry points: World.java World builder · Main.java Demo loop · TETile.java Tile value · TERenderer.java Tile renderer
Components 11
Entry points
- Demo loop
src/core/Main.java - Input adapter
src/core/AutograderBuddy.java
World generation
- World builder
src/core/World.java - Origin network
src/core/OriginNet.java - Room origin
src/core/Origin.java
Tiles and rendering
- Tile palette
src/tileengine/Tileset.java - Tile value
src/tileengine/TETile.java - Tile renderer
src/tileengine/TERenderer.java - Random helpers
src/utils/RandomUtils.java
Other components
- Player
- StdDraw
Connections 14
- Player → Demo loop: starts demo
- Demo loop → World builder: generates world
- Demo loop → Tile palette: marks avatar
- Demo loop → Tile renderer: draws tiles
- Demo loop → StdDraw: reads mouse, draws HUD
- Input adapter → World builder: seeds and generates
- World builder → Origin network: builds links
- World builder → Room origin: creates origins
- World builder → Tile palette: fills grid
- World builder → Tile renderer: renders progress
- Origin network → Room origin: stores origins
- Tile renderer → Tile value: draws each tile
- Tile value → StdDraw: draws glyphs
- Tile value → Random helpers: varies color