Moved source files to /src and moved yape inside of /src. Changed README
to reflect this change. Added a main.sh for easily running from project
root
Moved fsm dispatch and utils into a separate source directory.
Separated screen from game_assets and put into separate dir as well
Decoupled Level from Screen and Camera. Made Screen take a custom camera class
in __init__. Changed camera name to PerTileCamera. Moved asset_loaders into yape
Deleted stray asset_loaders file that was moved in last commit
Fixed a circular import introduced in the last commit by moving the
load_font and load_image functions into assets.py for now. Renamed
game_assets and game_state to assets and state.
Made dispatch take a state machine as an argument to handle_events
Removed attach_state_machine method
Simplified dispatcher register_listener decorator and improved docstrings
Improved docstrings and api of Screen and Camera classes
Made player methods take a container (w/ width/height) like Camera
First pass at adding a Manager class, that loads assets and stores weak
references to them for other objects to use. This will help centralize the
storing and retrieval of assets in memory, so many objects can share
references to the same resource without regard to how it is obtained/freed
Merge branch 'refactor/engine-folder' of https://github.com/calebsmith/razzytails into refactor/engine-folder
Moved new manager module to the correct directory structure introduced
in the previous commit
Fixed JSONManager to allow weakref's to referenece JSON data.
Improved docstrings of manager
Removed Manager module for now. Unused by yape for now. Saving for
a later refactor of asset loading
Adding an asset manager module
Made LoadableAsset take a manager instance and use get_json for
loading asset data. Removed old JSONLoader and Loader classes
Added a manager to the Asset class and its constructor as well
Added load_fields method to base assets for auto-loading images, json
and fonts on assets. Changed Config class to auto-load its assets
Made all assets use the manager to load images