Tuesday, 9 June 2009

Game Engine version 016u7

----------------------------
Sprite
----------------------------
ReleaseQuickAnimation - added, allow you to remove a quick animation before it has finished going back to previous state

Did some optimising of the sprite Update code(won't have much effect on PC side but hopefully does on 360 side). The whole engine is in need of a total re-write to make use of static allocation, but that won't happen until I build the next version over Summer.
----------------------------
PadHelper - new class added
----------------------------
This allows more flexible support for pad button handling.It automatically keeps track of pad state, so you can track accuratelythe status of all buttons on the gamepad. You can still use you're existing code for gamepad handling and timers but if you need easy access to the following functions, you can with just 2 simplemodifications to you're input code.

Status - added, this updates the gamepad status (tracking the history) mimics the GamePad.GetState method currently used.

Pressed - added, this method checks to see if a button not previously pressed has just been pressed. Using this will stop buttons repeating without the use of a timer, as it will only be true if the button was released before being pressed.

Released - added, this method checks to see if a button previously held has just been released. Using this will let you react to a button being let go for instance charging an energy bar (or the jump angle in track & field).

Held - added, this method checks to see if a button held previously is still being held.

----------------------------
KeyHelper - new class added
----------------------------
This allows more flexible support for keyboard handling.It automatically keeps track of keyboard state, so you can track accuratelythe status of all keys in the keyboard. You can still use you're existing code for keyboard handling and timers but if you need easy access to the following functions you can with just 2 simplemodifications to you're input code.

Status - added, this updates the keyboard status (tracking the history) mimics the Keyboard.GetState method currently used.

Pressed - added, this method checks to see if a key not previously pressed has just been pressed. Using this will stop keys repeating without the use of a timer, as it will only be true if the key was released before being pressed.

Released - added, this method checks to see if a key previously held has just been released. Using this will let you react to a key being let go for instance charging an energy bar (or the jump angle in track & field).

Held - added, this method checks to see if a key held previously is still being held.

----------------------------
TrackManager
----------------------------
SpecifyEndTrackHandler - added, this allows you to call an update routine when a sprite reaches the end of a track, so you can take some action

RemoveEndTrackHandler - added, this removes any end of track handler

----------------------------
Menu
----------------------------
reference to EngineManager -added, this enables Show and Hide to work without going through the MenuManager (gameMenus)

Show(), Hide() - added, this can be directly used with a menu object

e.g. optionsMenu.Show();

----------------------------
MenuManager
----------------------------
AddMenu - altered, to pass a reference to the EngineManager to each menu. The MenuManager is now just responsible for updating all the menus, everything else is now the responsiblity of the menus directly.