1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-06-27 00:41:08 +02:00
Commit Graph

71 Commits

Author SHA1 Message Date
de6752c048 Implement CArtHandler::isBigArtifact and CArtifact::isTradable 2014-12-24 20:43:35 +03:00
32240da34e Reduced number of #include's in headers. May break compilation on Win
since some net packs now need DLL_LINKAGE
2014-06-25 17:11:07 +03:00
ab475195ac Banks now use new scheme as well
- Implemented Bank Constructor object.
- Merged Pyramid object into common Bank class. Banks can now grant
spells as part of their reward.
- Move bank config code to config/objects/creatureBanks.json. Note: WoG
banks are not updated yet, should be moved to WoG mod.
- Updated AI code so it can correctly evaluate bank danger (should be
generic enough for use with other objects)
- New files JsonRandom.* that contain routines for loading random
objects from Json (still WiP but should be stable)
2014-06-22 13:39:40 +03:00
fe1b16a7ec Some preparation towards mantis #1743:
- refactored CRandomGenerator (added util methods, improved method names)
- usages of std::minstd_ran are replaced by CRandomGenerator (not in entire code base, C rand() usages are still not replaced)
- refactored getArtSync method of CArtHandler -> now named pickRandomArtifact
- fixed some compiler warnings
- updated source code URL in VCMI spec
2014-03-17 19:51:07 +00:00
3560bbb7f3 two patches/pull requests from janisozaur
- replace our custom bmap with std::map::at()
- compile fixes for editor
2013-11-12 10:45:42 +00:00
ee6cdbeffe went through the rest of cppcheck warnings, mostly harmless 2013-11-07 12:48:41 +00:00
0eb496fb57 Fixed #1338 and #1341. Introduced post-load step to ease initialization of bonus source ids. 2013-07-21 14:19:29 +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
3285f1910b - finally, solution for imageIndex fields. All image lists will be generated in runtime
- iconIndex fields from json are no longer used
- simple check for missing icons on startup
2013-04-22 19:51:22 +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
5082dafd62 - h3 hero classes and artifacts can be modified via json
- commander artifacts are now merged into main artifacts.json, todo - split 2.5k file into something manageable
2013-03-12 14:56:23 +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
b5fcefe455 - moved all system-specific handling of filesystem to VCMIDirs.cpp (new file)
- fixed #1128, artifact constituents are now stored as pointers
2013-03-02 18:41:25 +00:00
f306d7bb70 some changes towards editing H3 objects via mods. Should be stable, report if not.
- removed duplicated json loading code in handlers
- simpler and mod-friendly handling of combined artifacts
- reorganized CCreature to avoid huge number of fields in one structure
2013-03-02 16:55:51 +00:00
5f4fb22f53 Several fixes to combined artifacts added via mods. 2013-03-02 09:11:52 +00:00
d45a554fec Significant changes to saving system. Now both client and server store their lib part.
Desync detection upon loading. Fixed many desyncs. (more remain)
Monsters won't have creature count 0 even if that is set as creature properties.
2013-02-18 22:37:22 +00:00
9e00090c42 * refactoring, a few intriguing problems remain 2013-02-13 23:55:42 +00:00
9c1a117c1c * refactoring 2013-02-12 22:24:48 +00:00
bda766b697 * refactoring 2013-02-12 19:49:40 +00:00
86dc9386d6 * refactoring, including a generic solution for IDs 2013-02-10 23:24:57 +00:00
f1c78e3260 * creature ID refactoring
* double week creatures are configurable now
2013-02-07 17:34:50 +00:00
af5287c193 * fixed opening custom campaign selection window
* artifact positions refactored
* vstd::advance allows moving between enum values
2013-02-06 23:24:43 +00:00
a9d458c8f4 few more refactorings 2013-02-04 21:58:42 +00:00
25663ce7af * fixed vector<bool> serialization
* refactoring
2013-02-04 19:43:16 +00:00
c4e03ef0de * enum serialization/deserialization (si32 as basetype ought to be enough for anybody)
* some fields in classes refactored to use appropriate enums (not yet finished)
2013-02-01 22:04:25 +00:00
5b2f176c27 compile fix 2013-01-21 18:27:00 +00:00
cf7108f075 - Made sure that stack artifacts will not spawn when they are turned off
- Description for "Spell-like attack"
2013-01-21 15:11:37 +00:00
0311e5e6f5 - Added basic mock/test generation - Added stub for terrain editing 2013-01-06 19:30:12 +00:00
c0e09679f1 - Mod artifacts can have components
- Mod artifacts can be for commander / stack
- Commander / stack artifacts will be automatically disabled from random spawning is related module is disabled
2012-12-27 11:00:28 +00:00
d50f9c8d34 Moved combo artifacts to config file, they are now handled by string id.
TODO: use same solution for new mod artifacts.
2012-12-25 19:04:15 +00:00
99e7177d57 Fixed unitialized ptrs in CArtifacts.
Parsing for adventure map def for artifacts.
2012-12-16 11:35:14 +00:00
62a281a665 Complete parsing for new Artifacts. iconIndex needs to be handled.
Otherwise, they are ready for test.
2012-12-13 14:27:33 +00:00
730cbd930a Parsing for new artifact format: http://wiki.vcmi.eu/index.php?title=Artifact_Format
Not finished, not tested.
2012-12-10 13:55:54 +00:00
cff758cfba Moved artifact-related text to CArtifact class. 2012-12-06 19:03:47 +00:00
2cd774fe42 - gcc 4.5 compatibility 2012-11-02 20:08:37 +00:00
652ea4036e * artifact bonuses are read from config file now
* removed two commented-out methods
2012-10-03 18:11:19 +00:00
f3f4a7633d * fixed 1085
* fixed starting hero is granted in normal scenarios
* introduced TArtifactInstanceID
2012-09-25 14:40:39 +00:00
6a81c8b1af * campaign against magic numbers
* ArtifactID was misleading and wrongly used in one place -- renamed and fixed
* minor changes
2012-09-23 18:01:04 +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
cf45239332 Fixed #1035.
Support for commander artifacts that accumulate bonus after battle.
2012-07-16 16:18:02 +00:00
4d62525ff7 - Restored missing code for BattleInfo::getAvaliableHex - Elementals will now be placed correctly
- Fixes for BattleHex::getDistance returning 0 for adjacent hexes
- All stacks will now be placed after obstacles (fixes #1004)
- Removed unused code from ArtHandler
2012-06-16 14:25:39 +00:00
e0135ab6a6 Fixed Commander artifacts management, including #968. 2012-05-25 15:10:38 +00:00
88639be91b Enabled commander artifacts. Don't work yet. 2012-05-20 08:39:19 +00:00
6419f953cb Some (disabled) work for commander artifacts. Hero artifacts window seems broken.
Minor fixes.
2012-05-19 18:27:23 +00:00
82f3bc8135 - Commanders will now be properly intialized
- Commanders show in the battle
2012-04-28 11:41:20 +00:00
05311dd30c - Fixed and simplified Teleport casting
- Stack artifacts will now not be wearable by hero (by default)
- Fixed crash involving clone
2012-04-18 13:24:18 +00:00
294276ea13 - Second part of battle interface.
- Testing for Stack Artifacts feature.
2012-04-17 08:46:09 +00:00
66f5b5e2d7 - gcc compile fixes 2012-04-14 16:28:36 +00:00
722ec55384 Redid stack artifacts. Broken save compatibility. Added serializer support for boost::variant and sending CStackInstace* over network by implicitly passing IDs. Moved seeds and checksum to StartInfo. Various minor changes. 2012-04-14 02:20:22 +00:00
9e5fcc3152 Stack artifact backup.
Still doesn't serialize properly, though.
2012-02-10 10:32:21 +00:00