As the final project for my (independent study)[../independent-study], I had to write a program to meet the needs of a customer. A faculty member in charge of the school newspaper asked me to implement a version of Pac-Man inspired by our mascot, a pirate.
The game logic relies heavily on a few state machines and a decision tree for each ghost. It uses the Allegro 2D game programming library to handle input, output, and audio.