CSCI 3132 Assignment 3: Mixed Paradigm Programming in C++
You work for TerminalTomes Inc., a company whose mission is to “revolutionize console storytelling”, i.e., stories told on a computer console—admittedly a pretty niche market these days. You are working on the authoring tool, a console-based application that allows authors to interactively write and test out their stories.
Your current task is to fashion the character-creation interface. This menu-driven console interface needs to provide the following options:
New character: create a new character.
1. The user is prompted for a name for the character. Duplicate character names are allowed.
2. The user is prompted for a text description for the character.
3. The user is given a numbered list of emojis (at least 6 options). The user enters the number matching the emoji they would like to associate with the character.
4. The user is given a numbered list of types of pet (at least 6 options, including “none”).
The user enters the number matching the type of pet they would like (or “none” for no pet). If a pet is selected:
a. The user enters a name for the pet.
b. The emoji corresponding to the type of pet selected is automatically associated with the character’s pet.
5. The application prints the new character (format details below) and then returns to the main menu.
View character: print a description of a specific character.
1. The user is presented with a numbered list of characters. The list presents each character’s name and their emoji.
2. The user enters the number matching the character they would like to print.
3. The matching character is printed in the format described below.
4. The application returns to the main menu after printing.
Delete character: delete a specific character.
1. The user is presented with a numbered list of characters. The list presents each character’s name and their emoji.
2. The user enters the number matching the character they would like to delete.
3. The matching character is printed in the format described below.
4. The user is prompted to confirm deletion. If yes, the character is deleted. If they have a
pet, the pet is also deleted.
5. The application returns to the main menu.
Quit: quits the application. Note that characters do not need to be persisted (saved).