Codebase
Navigate the Codebase using the tree view. Use the filters to highlight where various files are grouped to aid understanding.
Getting Started Commands
Project Structure
Below is a short description of the key directories of the project to aid you when understanding where key files are located.
.github/ - Contains GitHub-specific configuration files and workflows.
.github/workflows/ - Holds the YAML files that define the continuous integration (CI) workflows for the project.
.github/workflows/azure.yml - A CI workflow configuration file for Azure Pipelines.
.gitignore - Lists the files and directories that Git should ignore during commits.
Core/ - Contains the core game logic and utility classes.
css/ - Holds the CSS files for styling the game's user interface.
doc/ - Contains documentation files, such as the PacMan Dossier and screenshots.
Engine.ts, GameStorage.ts, LICENSE.txt, PacmanJs.sln, PacmanJs.sln.DotSettings, Web.config, controlPanel.js, index.html, loadState.js, package.json, readme.md, server.js, tsconfig.json, tslint.json - Various configuration files, scripts, and the main entry points for the game.
Game/ - Contains the game-specific classes, such as actors, scenes, and game-related utilities.
Ghosts/ - Contains the classes related to the ghosts' behavior, movement, and sprites.
img/ - Contains the game's images, including icons, sprites, and backgrounds.
lib/ - Holds third-party libraries used in the project, such as Hammer.js, Howler.js, and Require.js.
Scenes/ - Contains the classes for the different game scenes, such as the attract mode, game over, and level finished scenes.
snd/ - Contains the game's sound effects and music files.
todo.txt - A list of tasks that still need to be completed.
Entrypoints
Below are files we identified as entrypoints for to the codebase. This is where the application starts and a good place to start when learning.
main.js - Path: /main.js
server.js - Path: /server.js