1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-07-15 01:24:45 +02:00
Commit Graph

55 Commits

Author SHA1 Message Date
ce8fa33efc Introduced new spell configuration options (not used yet) 2014-11-13 13:37:42 +03:00
bab7198cd7 Use some constants in SRSLPraserHelpers 2014-11-13 08:13:06 +03:00
4042757f93 Move spell range calculation to Mechanics
* made ISpellMechanics opaque
2014-11-13 07:34:20 +03:00
b62ee20880 Move TargetInfo initialization to constructor 2014-11-13 06:29:41 +03:00
a06dae1f96 Move getAffectedCreatures to CSpell. + more drafts 2014-11-13 04:53:25 +03:00
5ba53da9bf Extract SpellMechanics to separate file 2014-11-12 11:36:34 +03:00
22178151aa More general spell school handling 2014-11-12 11:03:55 +03:00
d7800b834e get rid of CBattleInfoCallback::calculateSpellDmg 2014-11-12 09:52:11 +03:00
ddf98a5920 +SpecialRisingSpellMechanics::isImmuneByStack 2014-11-12 08:34:43 +03:00
639b915391 Move calculateSpellBonus to CSpell 2014-11-12 08:02:27 +03:00
059698217c Use CLONE and DISPEL_HELPFUL_SPELLS Mechanics classes in immunity caculation 2014-11-12 07:41:12 +03:00
61d6bca3ff Extract some spell imuunity mechanics + draft of overall design (UNTESTED) 2014-11-12 07:09:05 +03:00
a49da360d2 Use ESpellCastProblem inside SpellHandler 2014-11-12 06:17:03 +03:00
c4fdca45d9 Small cleanup 2014-11-12 03:48:10 +03:00
f2b61f7e69 Spell configuration: introduce simplifaction mechanism for level conficuration
* also aviable for other handlers
2014-05-18 18:47:18 +04:00
950ca1156a Use absoluteLimit
* all "old" limits are now absolute
2014-05-18 17:55:26 +04:00
7cf64a0628 Made onlyAlive flag a part of TargetInfo 2014-05-18 17:03:01 +04:00
d9368ca5ba Use new battleGetStacksIf method 2014-05-18 17:02:59 +04:00
3e101d89ef few formatting. Mostly space-> tab 2014-05-07 03:58:58 +04:00
9c0df68cb8 Fixing spelling mistakes. Patch from josch, fixes #1759 2014-03-23 12:59:03 +00:00
9cac0af7be [Spells] More spell related refactoring
+ smart target modifier
- CREATURE_EXPERT_MASSIVE target type
* save format changed

spell format changes already documented in http://wiki.vcmi.eu/index.php?title=Spell_Format
2014-03-17 13:11:10 +00:00
065b8366fb [Spells] Added basic support for icons and sounds
* few changes in spell format
* save format changed
2014-03-10 16:00:58 +00:00
c959fdcce0 SpellHandler: cleanup, formatting, simplification. 2014-03-08 23:18:51 +00:00
7d1e54baa7 Fixed compilation with MSVC. 2014-03-08 19:02:47 +00:00
afcb7072eb Implemented #1379
+ added new flag for special spells. Special spells can be obtained only with BONUS::SPELL.
* made Titans` thunder special.
2014-03-07 16:10:20 +00:00
4203d69525 Part 2 of new spell configuration
1) spell handler refactored to support modding in general way
2) imunnity icons moved to WoG as they depends on wog`s graphics
3) introduced new class template for handlers (todo: use this in other handlers)
4) save format changed
5) introduced "absolute immunity" - unaffected by "the Orb" etc. (todo: use it in config)
6) new format documented on wiki, added json schema.

* more split of registertypes - fixes 32 mingw build
2014-03-07 13:21:09 +00:00
2b45e13c5c c++03 -> c++11 switch:
- use std versions of function, bind and ref
- OVERRIDE -> override
- NULL -> nullptr
- use std versions of random distributions

NOTE: this may be last revision that supports gcc-4.5
2013-06-26 11:18:27 +00:00
0dc5a13596 Fixed missing spell effects, root cause of #1257. 2013-04-23 09:54:57 +00:00
4db13ba845 - proper destructors for handlers and lib objects 2013-04-21 16:38:31 +00:00
c6cc6e6301 Large changeset, first part of editing H3 objects via mods feature. Changes:
- loading of all objects (including H3 objects) will be directed by mod handlers
- common base for all handlers accessible from mod system (IHanderBase)
- json format changes: use struct with string ID's instead of vector

- fixed some gcc/clang errors and warnings
- fixed several cases of memory leaks and invalid memory access (mostly related to usage of bonus system and/or identifiers resolution)

Note that right now loading is much slower than before due to excessive json validation (or not fast enough validator)
2013-04-21 12:49:26 +00:00
2eb8263e51 Basic Configuration for bonus types
* introduced new handler BonusTypeHandler
* config\bonusnames.json converted to common format and splitted info main and localizable parts
* hanlders initialization refactored
2013-03-06 18:49:56 +00:00
ceea466f54 [refactor] spell handling
* more config options for spells
  + mind immunity handled by config
  + direct damage immunity handled by config
  + immunity icon configurable
- removed mind_spell flag 
* more use of new spell identifacation
2013-02-13 19:35:43 +00:00
86dc9386d6 * refactoring, including a generic solution for IDs 2013-02-10 23:24:57 +00:00
0003d30991 * refactoring 2013-02-08 22:42:46 +00:00
a9d458c8f4 few more refactorings 2013-02-04 21:58:42 +00:00
b376ac8568 refactor map loading, few small tweaks 2013-02-02 17:20:31 +00:00
53b684180d [refactor]
* use spells configuration (all timed effects for battle spells)
* a few more cleanups
+register erm resource types (useful in future and less noise in log now)
2013-01-16 11:19:04 +00:00
68e91ada1c [refactor]
* spells are now more configurable (unused yet, WiP)
* a few more cleanups
2013-01-15 14:20:48 +00:00
0311e5e6f5 - Added basic mock/test generation - Added stub for terrain editing 2013-01-06 19:30:12 +00:00
94c55e2632 - string ID's for spells (not configurable due to hardcode)
- spell chances in new towns guilds can be specified in config
2012-12-18 10:32:11 +00:00
74f9c19a7c Implemented spell countering. 2012-09-13 23:41:03 +00:00
d390113c23 * New files for lib: CBattleCallback.cpp and CBattleCallback.h
* Updated MSVC project files
* Filesystem: My version of .SND archive does not have \0 after WAV extension. Fixed (though hardcoded 3-char extension length).
* New bonus types: BLOCK_MAGIC_ABOVE for blocking casting spells above given level and BLOCK_ALL_MAGIC for blocking all magic.
* Heavy rewrite of battle callbacks. Fixed some minor bugs. Code reusage between lib/client/server (removed proxy calls). Better access control and support for various perspectives.
* Fixed #1031
* Fixed Orb of Inhibition and Recanter's Cloak (they were incorrectly implemented). Fixed #97.
* Fleeing hero won't lose artifacts. Spellbook won't be captured. Fixed #980.
* Fixed crash when attacking stack dies before counterattack (ie. because of Fire Shield)
* Server does some basic checks if action requests during battle are valid
* Minor stuff.
2012-08-26 09:07:48 +00:00
cf15ca1cf0 - replaced loadToIt with better H3 parser.
- moved hero class to heroes.json
2012-08-25 08:44:51 +00:00
d168f3eac2 * Implemented Moat functionality during siege (stops movement and deals dmg)
* Mostly implemented battle spells:
 - Fire Wall
 - Force Field
 - Land Mine
 - Quicksands
2012-05-18 20:50:16 +00:00
45c2809a40 - pregame will use same resolution as main game
- disabled most of now unused code for changing resolution
- added missing spell effect sounds
- adventure map spells sounds
- remaining fixes for big endian systems
2012-05-18 17:35:46 +00:00
a9af0da0ab Rewritten handling mouse movement over hex and l-clicking hex into one procedure. That way the tooltip and cursor are always accurate, because they're set by the same routing that selects action. Having that logic duplicated in two methods was unmaintainable. [though the new one is still monstrous...] By the way fixed numerous issues, including:
* #785 and parts of #760
* first aid tent can heal only creatures that suffered damage
* war machines can't be healed by tent
* creatures casting spells won't try to cast them during tactic phase
* console tooltips for first aid tent
* console tooltips for teleport spell
* cursor is reset to pointer when action is requested
* fixed a few other missing or wrong tooltips/cursors

Implemented opening creature window by l-clicking on stack. Master Genie's spell is picked by server, not client.
Minor changes.
2012-03-30 21:36:07 +00:00
4baf4e13ed * fixed #857 and #858
* fixed crash when AI attacked player before his first turn
* fixed various crashes when mass-effect spells affected town turrets in sieges
* some refactoring around spell positiveness
2012-02-16 21:19:07 +00:00
855cebfe81 - MIND_IMMUNITY bonus replaces separate protectons from various spells
- Creature Window can handle descriptions of spellcasting abilities
2012-01-27 07:25:29 +00:00
7f04ed990b Major refactoring. First part: BattleInterface
Introduction of pre compiled headers,...
2011-12-13 21:23:17 +00:00
364a207f71 Fixes for previous commit. 2011-11-11 15:39:46 +00:00