chessmasterhong/WaterEmblem — pull request #19 by DrkSephy (2014-03-03 00:07:21+00:00)
Title: Loads of Graphical/Player Updates

This pull request is basically a major graphical inclusion, as well as a fair amount of content added for each player as well as a lot of polishing. Here are the changes:

* Added legitimate stats for all player entities. Some of these will be tweaked in the future, but for the most part they are fair.

* Added legitimate level up percentages for all player entities. I followed what is commonly done by most Fire Emblem games, with a -little- bit of deviation. I've also added a new stat, SKL [short for Skill], which will factor into the derived stats for hit percentages.

* Added legitimate name properties for all units.

* Extracted, cleaned up and added several GUI elements. The elements are described below.

* [1] Modal for characters. As discussed, when inside of the "Free moving state", A.K.A no unit has been selected and we are hovering over a player, a modal containing the player's HP and Level is displayed. I went ahead and both prepared this GUI, and you can view it by pressing 'H'. Also, I went ahead and got the small sprites for the modals, which are essentially chibi versions of the characters portraits used inside these small character modals. In addition, I went ahead and applied the modals to **all** player entities (except for the entity named "advancedHero". Go ahead and try them out!

* [2] Character portraits for character statistics GUI. Like before, if you press the ENTER button, you will see the stat screen for the current active unit. I've included portraits for **all** player entities, except for the "advancedHero" entity. Go ahead and check them out! In the future, we would probably like to view this screen by right clicking on an entity.

* [3] I've included the Terrain Modal, which spawns when you press 'T'. This modal will be used to show the terrain name and bonuses when the cursor is over it, also when no playable unit is selected for movement. "Free moving state". Right now we can just test it by pressing 'T'.

* [4] Included GUI for both "Battle Summary" and "Equip Summary". "Battle Summary" will be used to show various things, such as damage you will deal, hit percentage, names of battling units and maybe more. As for the "Equip Summary", that should be self-explanatory based on what is on it. In the future, we will spawn the "Battle Summary" after the player selects their attack target with the mouse, and "Equip Summary" will be spawned when the player hovers over an item (if it can be equipped).

* [5] Extracted, cleaned up and re-drew the fancy animation screen. Whew, that one took a little bit of reworking. It is now ready for use, and will act as an overlay for the fancy animations. On this screen, we'll be printing the current HP of both battling units, as well as their names on the top left/top right, and both of their HIT percentages, damage they will deal and their critical hit rate.

* [6] Finished gathering the rest of the animation sheets. I've also hooked them up with the above mentioned changes.

* [7] Added buttons for Attack and Trade. Currently they are just placeholders with console.log messages. Will be hooked to real functionality once "selection based battle system" is implemented, which relies on being able to detect if the active unit is near a friendly or enemy unit.

* [8] Added a new tradeItems ( ) function which *should* work when we hook up trade. Unless I overlooked something, it should be ready for use.

Upcoming future work:

* I plan to redo some of the first animation sheets I did to restructure the animation layout. This way I can just inherit the animations from the base_player and remove **all** of the animation code in the other entities.
* Generating a decent font so that I can fill in all the stats for modals, player stat screens and in-game messages.
* Hooking up the trade system once Kevin is finished with "Detect friendly/enemy units nearby" and "Selection based damage system".
* More tweaking of player stat system.
* Gathering the graphics needed for putting together the fancy animations.