This package contains the files and such that constitute HECC-UP (The HECC Ultra Parser). Basically, the bits that read in a .hecc file, and convert them into a playable game.
- gameParts
- This contains some of the game data classes that are/were used in HECC-UP.
-
- Responsible for actually outputting the heccin' game into a folder.
-
FolderOutputterMetadataInterface
- Interface implemented by ./gameParts/Metadata.java, this just provides access to the important bits that the FolderOutputter actually needs access to.
-
-
Responsible for parsing the .hecc file into a map of OutputtablePassages and a Metadata object.
-
It does this via some overuse of regex, or it might have been abuse.
- This was first written in August 2020, but has recieved substantial improvements since then, such as making it object-oriented for easier maintainability, some better comments in it, etc.
-
Basically it's given a string of the contents of a .hecc file, and turns it into a format that the FolderOutputter can actually output it in.
-
-
-
The GUI for HECC-UP.
-
It uses Swing for the GUI, and was written by hand, so all of the code that sets up the layout is in there.
-
What it does
-
Asks users for a .hecc file (can choose via a JFileChooser), and for a folder to output the HECCIN' Game described by that .hecc file to.
-
Calls the HeccUpHandler to convert that .hecc file into a HECCIN' Game.
-
If there's a problem with the .hecc file, it has a 'console' where the warning can be logged and read by the user.
-
If processed successfully, it offers the user the option to just open the index.html of their HECCIN' Game in their browser.
-
-
Usage
-
Initial plan
- User launches main of HeccUpGUI, manually selects .hecc file and folder, then attempts to output it.
-
Current usage
-
User selects .hecc file for HECC-IT, may open it in HECC-UP instantly or after editing it a bit with OH-HECC.
-
.hecc file pre-selected, and a folder within same directory as .hecc file is also pre-selected.
-
Unless user wants to change the output folder location, they just need to press the 'HECC-IT!' button to output the game.
-
-
-
Implements LoggerInterface
-
There's a JTextArea in a JScrollPane at the bottom of the window.
-
Info is logged there, where the user can read it.
-
-
-
- This handles the behind-the-scenes stuff for HECC-UP.
-
Calls the HeccParser and such to parse the .hecc file, and also gets the FolderOutputter to actually output that parsed .hecc file.
-
If there's a problem, it'll tell the LoggerInterface object to, well, log it.
-
And if it works, that will be logged by the LoggerInterface object as well.
-
- This handles the behind-the-scenes stuff for HECC-UP.
-
- Logs stuff.
- Has a method,
logInfo(String infoToLog)
, and implementing classes must log that given string of info to log, in some way, shape, or form.
- Has a method,
- Default implementation
- Literally just prints it to console.
- Logs stuff.
-
-
@Deprecated
. -
Was used for checking if HECC-UP worked, by taking in a sample .hecc file and seeing what that would be output as.
-
100% in console, 100% uninteractable, probably could just get rid of it tbh.
-
-
- Some unit tests for HECC-UP, to demonstrate that it does, in fact, work.