1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-24 22:14:36 +02:00
Commit Graph

143 Commits

Author SHA1 Message Date
Fay
e64c08df27 Initial; 2015-01-28 20:07:57 +01:00
Fay
77908dcf76 Added missing deletes in map handler dtor; 2015-01-20 20:51:09 +01:00
Fay
01029779d7 World view mode drawing: refactoring, part 2 (further merging of common functionalities; abstracted puzzle view to separate blitter); 2015-01-19 20:08:19 +01:00
Fay
97d89d1d6c World view mode drawing: refactoring, part 1 (merged main drawing method); 2015-01-18 18:53:40 +01:00
Fay
e3dc37fece Fixed hotkeys in world view mode (added missing hotkeys + disabled non-world-view hotkeys);
Fixed minimap radar calculation for world view mode;
2015-01-17 13:41:59 +01:00
Fay
447119e2f5 Changed zoom factors to resemble OH3 as closely as possible;
Minor refactoring;
2015-01-17 11:56:12 +01:00
Fay
9b3b69b108 Fixed incorrect display of scaled+rotated map images in world view mode;
Fixed miscalculated viewport sizes in somee cases;
2015-01-16 23:49:15 +01:00
Fay
8e840d2c30 Changed map surface-cache key from int to intptr_t; 2015-01-15 17:17:26 +01:00
Fay
3823631a57 Fixed recoloring world view panel info icons after current player change;
Refactored ui objects handling in CAdvMapInt to slightly reduce clutter;
Minor other improvements;
2015-01-15 00:22:20 +01:00
Fay
4b248c2762 World view impl -- initial; 2015-01-13 20:57:41 +01:00
DjWarmonger
495c39304d Fixed crash due to incorrect RMG options. 2014-09-18 14:29:57 +02:00
AlexVinS
30d6eab20b Do not render fully hidden tiles 2014-07-03 20:41:42 +04:00
AlexVinS
195eae48ca Merge branch 'develop' into SDL2
Conflicts:
	client/CPlayerInterface.cpp
2014-07-02 17:15:12 +04:00
Ivan Savenko
a0689fa377 Refactoring of hoverText from objects:
- removed hoverText field
- split getHoverText() method into 3:
- - getObjectName() for generic name
- - getHoverText(Player) for player-specific text
- - getHoverText(Hero) for hero-specific strings
2014-06-24 20:39:47 +03:00
Ivan Savenko
5ebc0e8614 First part of object instance API cleanup
- removed passability() method in favour of passableFor(PlayerColor)
- moved operator < code to map handler
- updated class documentation
2014-06-24 20:39:47 +03:00
AlexVinS
3b8d0e44d4 Merge branch 'develop' into SDL2 2014-06-24 14:09:44 +04:00
Ivan Savenko
47639832b1 Probably fixed bug with map border rendering in rectangular maps 2014-06-23 20:47:09 +03:00
AlexVinS
2ec8c31558 Partial fix for hero flag rendering
(-) blue & teal heroes are still gitchy. IDN why ...
2014-06-21 14:54:41 +04:00
Ivan Savenko
09d595e385 - Implemented "mapObject" entry for hero classes
- Updated schemas
- Some bugfixing
2014-06-16 19:27:26 +03:00
Ivan Savenko
652ceb2bde Finally shattered CObjectHandler.cpp into tiny bits
- This file is now split into multiple smaller files in mapObjects
directory
- CObjectHandler itself now contains only core classes (Handler itself,
CGObject and interfaces)
- Cleaned up excessive #include's through whole project
2014-06-05 19:52:14 +03:00
Ivan Savenko
0afdfa529c Moved all object-related files to lib/mapObjects directory.
Renamed some classes to more readable names
2014-06-05 14:19:47 +03:00
Ivan Savenko
32b6568b65 Merged changes from upstream and fixed compilation caused by API changes 2014-06-03 22:45:18 +03:00
Ivan Savenko
7f276185bd Moving files:
- new config for objects (config/objects/generic.json)
- renamed lib/CDefObjectHandler to lib/CObjectClassesHandler
2014-05-24 02:07:54 +03:00
Ivan Savenko
6bd6be0835 Object class handler is now a proper "handler"
- Some changes in interfaces
- Fixed some missing fields in serialization
- Moved object names to new handler
2014-05-24 01:56:51 +03:00
beegee1
80765eb0a3 - fixed clang compiler warnings (detects now unused constant vars) 2014-05-16 19:22:21 +02:00
beegee1
1d57b75bc5 - random number generation refactoring
- fixed mantis #1743
2014-04-10 19:22:32 +02:00
Ivan Savenko
1f325bafb3 fixes #1619 and #1647
- removed some no longer needed code from map handler
- blocked "back" button on campaign map screen if some of scenarios are
already completed
2014-01-05 13:45:44 +00:00
Ivan Savenko
2c4c964a45 Large rewrite of adventure map objects:
- replaced CDefObjInfo with ObjectTemplate class
- ObjectTempate is a direct member of objects instead of pointer with
shared ownership across CMap, handler and game objects
- simplified handling of objects that can change appearance (e.g. towns)
- all object queries regarding object appearance/blockmaps use h3m pos
instead of relative positions
- removed need of modhandler::reload
- cleanup of some old code
2014-01-02 23:48:38 +00:00
Ivan Savenko
41cb1603e1 Fix for #1624 :
- recreate adventure map interface on each scenario (to make sure that
there is no garbage data from prev. game)
- added check to avoid such situations in future
2013-12-20 15:00:48 +00:00
beegee1
68bdf71db6 - Fixed GCC compiler warnings
- Implemented move heroes to next scenario partially
2013-12-20 13:07:58 +00:00
Ivan Savenko
ee6cdbeffe went through the rest of cppcheck warnings, mostly harmless 2013-11-07 12:48:41 +00:00
Ivan Savenko
71d6b0fea9 - Fixed some warnings from cppcheck
- Minor improvements to JSON validation
- Cleanup in SDL_Extensions.cpp
- Implemented new propery for creature format: idle animation duration
- Disabled idle animation of some of conflux creatures (was clearly
broken)
2013-11-06 13:42:58 +00:00
Ivan Savenko
f82122d9be second part of c++11 update. gcc 4.5 and VS 2010 are no longer supported
- BOOST_FOREACH -> for
- replaced several boost classes with std (e.g. unordered)
- removed gcc-4.5 workarounds
- ran clang c++11 migration tool to detect some cases:
- - pointer initialized with "0" to nullptr
- - replace for with iterators with range-based for
- - use auto in some situations (type name specified twice, avoid long iterators type names)
2013-06-29 13:05:48 +00:00
Ivan Savenko
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
Michał W. Urbańczyk
be7c2bd07f CGHeroInstance* can be serialized over network even when hero has been defeated. Strongly typed hero type ID introduced.
Should fix #1260.
2013-05-18 22:30:48 +00:00
beegee1
03c2aa9153 - Refactored CMapEditManager(added structure for undo functionality) - Refactored CMap(terrain pointer is private, safe access via getTile) 2013-04-19 11:43:11 +00:00
beegee1
c7c2686379 - Integrated the logging API into the client and the lib - Remove some more comments and switched to /// style - Fixed recursive locks - Added Global.h to CMakeLists(now visible in qt-creator) - Removed usage of shared_mutex - Added unique_ptr to CLogger targets 2013-04-09 14:31:36 +00:00
beegee1
30bcec42c6 - Renamed client/BattleInterface to client/battle and client/UIFramework to client/gui 2013-04-07 11:52:07 +00:00
beegee1
ee51c5beb5 - Renamed /lib subfolders to lowercase 2013-04-07 10:48:07 +00:00
stopiccot
f2309d70dd replaced extern SDL_Surface* X; all over the code with single header 2013-04-04 14:58:54 +00:00
mateuszb
dbec99ffc7 * PlayerColor and TeamID refactoring 2013-03-03 17:06:03 +00:00
Michał W. Urbańczyk
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
mateuszb
9c1a117c1c * refactoring 2013-02-12 22:24:48 +00:00
mateuszb
a1da195b85 * minor refactoring 2013-01-31 20:11:25 +00:00
alexvins
4bc2fd5519 [c::b] renamed map subfolder to workaround dependency tracking bug 2013-01-03 12:19:20 +00:00
Ivan Savenko
e36bc50504 - support for new heroes and hero classes
- moved hero-specific data from text handler to CHero
- moved hero classes-specific data into heroClasses.json
2012-12-16 13:47:53 +00:00
Ivan Savenko
ffe8b99369 - reorganized hero classes
- artifact iconIndex should work
- new file with hardcoded string constants: lib/StringConstants.h

Note: some minor bugs, will fix soon:
- slow to open hero window
- hero adventure map images serialization is broken\incorrect
2012-12-14 15:32:53 +00:00
beegee1
53169abea7 - Foundation for starting a random map is done - Moved StdInc.h to header file in some /Map and /RMG compilation units(better syntax highlighting, should have no negative impact) 2012-11-20 17:53:45 +00:00
Ivan Savenko
f7915d9e61 - removed creature-related code from ModHandler
- new towns can be loaded as mods
 - removed separate DefInfos for towns\capitals
 - a bit simpler handling of adventure map def's
2012-11-13 11:52:23 +00:00
beegee1
105083dd70 * Code convention updates * Default values for CMap types * Updated BinaryReader c-tor * Converted "bool" int types to bool in CMap classes * Removed map event operators in favor of member methods 2012-11-06 16:39:29 +00:00
beegee1
a878f5f79a * Separated map loading from the map object * Moved map classes to lib/Map * Renamed map.h/cpp to CMap.h/cpp * Profiling of map loading is now optional * Updated CMemoryStream 2012-11-03 13:30:47 +00:00
beegee1
720deba838 * Added comments to map.h * Refactoring(renamed attributes, some steps towards coding guidelines, ..) 2012-10-26 17:51:05 +00:00
Michał W. Urbańczyk
f8a27a9fdb * Moved CConfigHandler from client to lib, CMake/Makefile need updating. I believe other projects besides client also need access to settings. (surprisingly there was a "server" category used only by client... and now VCAI.)
* It is possible to set the battle ai that'll be used by neutrals by typing in VCMI console:
setBattleAI <AIName>
VCAI also respects that setting and uses given AI as its battle back-end.
2012-09-29 10:59:43 +00:00
Michał W. Urbańczyk
2ba0427432 * Fixed #1096
* serializing icon index, otherwise creature portraits are gone after loading a game
* VCAI: fixed crash on attempting revisiting a boat (that is no longer present because it was boarded)
* Fixed strange crash with "neutral hero" (there should be no such thing... but somehow it appears, needs further investigation)
2012-09-28 20:49:23 +00:00
mateuszb
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
Ivan Savenko
e67f8afdd9 - removed multiple unused files
- config folder with all json files is used via new FS API
- fixed campaigns loading. Replaced "detect h3m starts" heuristics with CCompessedStream::getNextBlock()
2012-08-02 11:03:26 +00:00
Ivan Savenko
d60f2d57a0 - first part of CIntObject API clean-up.
- - mostly remove usage of (de)activateSomething functions
- - CIntObject's can be safely deleted in active state or without removing from parent first
- - Added CWindowObject to use as base of all windows (will be required for such features as shadows)

Report any crashes or glitches - it should not cause any issues apart from more console output. 

TODO:
- remove redundant (de)activate and show(All) calls
- decrease usage of blitAtLoc\printAtLoc methods
- switch all windows to new base
2012-06-02 15:16:54 +00:00
Ivan Savenko
6f6cd6814e - fixed wrong battlefield (#961)
- minor tweaks
2012-05-19 11:47:26 +00:00
DjWarmonger
fb34a48eec Compile fix for previous commit. 2012-05-15 09:21:32 +00:00
Ivan Savenko
90ff99d4eb - fixed ancient #31
- fixed #603
2012-05-14 16:29:06 +00:00
Ivan Savenko
46f48f0676 - bugfixing:
-- fixed #942 and #898
-- removed dublicated code in dwelling loading, #900 is fixed
-- fixed roads rendering for #895
2012-05-11 19:03:40 +00:00
beegee1
156aa6e4d9 * Updated class - file - handling
* Renamed color constants
* Renamed class AdventureMapButton to CAdventureMapButton
* Moved basic controls like CTextBox from GuiClasses to CIntObjectClasses
* Moved new creature window from GuiClasses to CCreatureWindow
2011-12-22 13:05:19 +00:00
beegee1
2f5d6f2684 * CHexField renamed to CBattleHex
* CHexFieldControl renamed to CClickableHex
* CCreatureAnimation.cpp/.h moved to BattleInterface/CCreatureAnimation.cpp/.h
* Removed unused project files
* Added VCMI_client filters file for VS 2010
* Gathered common parts of StdInc.h in Global.h
* Boost.Spirit has been included in PCH for ERM project
* StopWatch renamed to CStopWatch
* GuiBase.cpp split up in UIFramework/...
2011-12-17 18:59:59 +00:00
beegee1
7f04ed990b Major refactoring. First part: BattleInterface
Introduction of pre compiled headers,...
2011-12-13 21:23:17 +00:00
Ivan Savenko
0f2e00c780 -(linux) Moved all (I hope) files created by VCMI to ~/.vcmi to prevents crash on launch from read-only directory
- minor fixes for #362 #835 #836
2011-11-01 12:58:01 +00:00
Frank Zago
c4b8039c1e Added a missing rturn in CGameHandler::isAllowedExchangeForQuery. Fixed several typos. 2011-09-24 01:15:36 +00:00
Michał W. Urbańczyk
6ef44bde5a Work on pathfinder: torn the code out from CGameState into a separate class. It can use Subterranean Gates and Boats. Removed code for handling Fly spell effect. It didn't work as supposed anyway. 2011-09-19 20:50:25 +00:00
ori.bar
5b836f428a Partial fix for 37. Full fix for 27, 64, 600. Fix for bug where code tried to reload non existent file. 2011-09-04 00:04:48 +00:00
Frank Zago
eecb470e74 Fixed all warnings "take address of temporary". 2011-06-11 04:54:41 +00:00
Frank Zago
ff49b852df Silenced several "warning: suggest parentheses around ‘&&’ within ‘||’": added some parenthesis, optimized a couple statments and fix a bug in another. 2011-05-30 19:20:14 +00:00
Ivan Savenko
61af4c745e - recursive directory parser for LodHandler - for creature abilities and new main menu images
- fixed screen updating on closing window
- minor fixes
2011-04-23 10:27:44 +00:00
Ivan Savenko
407acce4c6 - gcc 4.5 / boost 1.46 compilation fixes
- configure will accept CXXFLAGS parameter correctly
- boost version check in ERMParser - to skip compilation with old boost
2011-03-29 17:16:10 +00:00
DjWarmonger
2f4aabca52 Compile issue fixed - it's temporary solution. 2011-02-24 18:27:44 +00:00
mateuszb
ba7eb6ce49 * bug 492 fixed
* boost::filesystem version set to 2 (should work with all relatively new versions of boost)
2011-02-24 15:05:21 +00:00
mateuszb
5e0b0e49b2 * bug 392 fixed 2011-02-23 18:21:51 +00:00
mateuszb
8104a43809 * a voodoo fix of a mysterious bug 2010-12-27 10:48:28 +00:00
mateuszb
49083c4e5a * ConstTransitive CGI more or less done
* hch contents distributed to more appropriate folders
2010-12-20 21:22:53 +00:00
mateuszb
8b831c1f46 Const-transitiveness of CGI almost reached 2010-12-20 13:04:24 +00:00
mateuszb
b15deaa203 * more constTransitivePointers in GameInfo, separated client GUI classes from it, moved def handlers from CGDefInfo 2010-12-19 14:39:56 +00:00
mateuszb
23c501b79e some changes 2010-12-17 18:47:07 +00:00
Frank Zago
dbe38a7062 A few bug fixes and arious warning fixes: unused code/variables, out of order initializations, ... 2010-10-30 21:53:41 +00:00
mateuszb
d1bfe4cbd6 * a bit better screen scrolling for small resolutions
* a bit optimized terrainRect
2010-08-26 15:33:55 +00:00
mateuszb
c45d037bc8 * small bugfix for hiding tiles
* minor changes
2010-08-26 12:06:36 +00:00
mateuszb
fe87ba6608 * fixed crash on displaying right or bottom part of advmap 2010-08-18 10:37:43 +00:00
mateuszb
c96dab5c7e * reverting prevoius revisiom
* minor changes
2010-08-17 12:48:34 +00:00
mateuszb
9aa6d0a7b9 * refactoring of map handler and minor changes 2010-08-16 13:51:31 +00:00
mateuszb
6928f850b9 * fixed 494
* minor changes
2010-08-05 11:47:57 +00:00
Michał W. Urbańczyk
78f44dc648 Support for 16bpp displays. Possible optimizations. 2010-08-05 11:02:18 +00:00
Michał W. Urbańczyk
c6653949e1 Fixed #90, #581, #567.
Broken #87
2010-08-01 14:04:48 +00:00
Michał W. Urbańczyk
3af697b91a Support for Favourable Winds. 2010-07-09 04:29:11 +00:00
DjWarmonger
b118060304 Major optimization of getVisBitmap() 2010-06-03 05:38:59 +00:00
DjWarmonger
931cebdb04 Some conflicts resolved, minor changes. 2010-05-03 06:25:19 +00:00
mateuszb
943c433d3f * moved mapHandler to client folder 2010-04-06 08:59:24 +00:00