* Some sound code cleanups
* Renamed soundBase::soundNames into soundBase::soundID
* Add a music handler destructor
* Add Archdevil and vampire pre and post movement sounds
I've applied minor change to fix CMusicHandler - GeniusAI conflict: moved sounds bimap to the .cpp file.
(vcmi_sounds_cleanup.diff
vcmi_sounds_cleanup2.diff
vcmi_sounds_cleanup3.diff
vcmi_add_sounds.diff)
* new spells:
- frost ring
- fireball
- inferno
- meteor shower
- death ripple
- destroy undead
* spellbook button is inactive when hero cannot cast any spell
* obstacles will be placed more properly when resolution is different than 800x600
* minor changes
Windows should be shown using pushInt and closed with popInt or PopIntTotally (if interface needs to be also deleted).
Some things are not working yet properly, I'll try to fix them ASAP.
* provisional support for "Save" button in System Options Window
* forbidden buildings will be shown as forbidden, even if there are no res / other conditions are not fulfilled
* improved damage calculation formula
* several minor improvements
* more logging around #19 from that thread
* glowing effect of yellow border around creatures
* blue glowing border around hovered creature
* making animation on battlefield more smooth
* standing stacks have more static animation
* corrected some obstacles entries
* removed two stack corruption bugs
* a few tweaks in battle path/available hexes calculation (more of them is needed)
* actual stack's morale/luck is displayed in creature info window
* initialization of morale/luck for siege machines
* removed redundant copies of spell casting code in CGameHandler.cpp
* corrected duration of frenzy spell which was incorrect in certain cases
* removed unwanted behavior - VCMI allows now for attacking when move action fails (command walk & attack) [to be tested as I'm not sure if I've done enough]
* battle result window properly displayed
* fixed defender projectile animation
* you don't have to select location for spells which don't need them
* fixed calculating stack speed when it's under slow spell effect
* changed some 17's into BFIELD_WIDTH
* added frenzy spell
* repaired order in stack queue in case a unit has waited (it should work correctly now)
* added spell positiveness info, positive spells cannot be cast on hostile stacks and vice versa
* Merged CPreGameTextHandler into CGeneralTextHandler and moved to VCMI_Lib.dll (update your project files)
* Genius AI will be used as a default AI
* more code for save/load