Main engine file is in `JavaProjectTemplate.java`. If you choose to rename this file you should probably have your IDE refactor it so all references change accordingly. Better to just leave it as-is.
You will find all possible drawing features under the `game` Panel object that is initialized for you. Draw commands all start with `Draw`. The example program contains quite a few of the possible draw commands available.
Sprites can be placed in the `sprites` folder and referenced accordingly. Instantiating a new `Sprite` class or `AnimatedSprite` class with the name will auto-load it in. Animated Sprites need their base width and height defined, the engine will figure out the animation frames for the rest of the image. `DrawAnimatedSprite` functions request what index of the animation to draw, you feed that yourself. Only horizontal animation strips are supported by default.
Keyboard input is handled much the same way with the `Key` static instance. Also has `Held`,`Pressed`, and `Released` statuses per key. Keycodes come from the Java Swing `KeyEvent` class (ex.`KeyEvent.VK_UP`).
Sounds can be loaded up and played by creating new instances of the `Sound` class. There is also a loop variable which determines whether or not a sound loops. You can set it in the constructor using the `new Sound(filename,loop)` constructor or set it using the `setCanLoop()` function. You can control the volume of a suond using `setVolume(val)` where val is a number between 0-100 (percent). By default sounds play at 100% their original volume.
Each sound consumes an active line on your sound device. To clear the line, use the `unload()` function, which is useful when your game no longer needs to use that sound or when trying to load a different sound to replace it (say background music).
I include some compile scripts, but you are free to use your own. `./sig` lists all possible commands, `./sig build` builds and tries to run the compiled Java classes. `./sig jar` will output a jar. `./sig zip` will piece together the sprites folder, bin folder, and a run script (for Linux) to run a finished java jar, which provides an easy way to "export" the game.