dydzio
9de5b9f02b
New/load game last selection storing. Fixes #716
2016-11-02 20:10:34 +01:00
DjWarmonger
9db3bfcbf2
Merge pull request #212 from vcmi/refactoring/serialization2
...
Apparently it works - both new and old saves load at least.
2016-11-01 17:25:39 +01:00
Vadim Markovtsev
8d40a4aa95
Fix GUI disposal in creature info window
2016-10-30 22:21:26 +01:00
Vadim Markovtsev
34005228e0
Fix bugs with giving commander's badge to stacks
...
1. SEGFAULT
2. Memory leaks
3. Invalid drawing
4. Fix returning artifacts
2016-10-30 16:32:28 +01:00
Vadim Markovtsev
220e4d2030
Survive giving Commander's badge to stacks
...
Used to SEGFAULT
2016-10-30 14:27:53 +01:00
Vadim Markovtsev
79c85be93f
Fix large obstacles drawing in front of the stacks
2016-10-30 04:51:35 +01:00
Ivan Savenko
256f43f467
Fixes zero-initialized fileVersion member in deserializer
2016-10-29 19:52:19 +03:00
Vadim Markovtsev
ab7a0d64eb
Fix formatting
2016-10-28 23:37:20 +02:00
Alexander Shishkin
0cf5a10bd1
Merge pull request #243 from vcmi/guiCleanup
...
Gui cleanup
2016-10-28 08:53:03 +03:00
AlexVinS
f304c9b2e0
removed unused field
2016-10-27 18:35:53 +03:00
AlexVinS
ffeaef2bda
fixes
2016-10-27 18:19:45 +03:00
Ivan Savenko
5b76c3f4eb
Rebase of codebase changes for refactored serializer
...
Some of newer fixes not yet merged there and save compatibility a bit off.
2016-10-27 18:12:20 +03:00
AlexVinS
f32097339c
Use CSDL_Ext blit for paletted sprites, use SDL blit otherwise.
...
* No solution found to blit paletted images with alpha channel with SDL
2016-10-27 17:32:31 +03:00
Arseniy Shestakov
15b4774076
Logging: always print version of client and server in the begining
2016-10-27 17:14:20 +03:00
Arseniy Shestakov
cb3d6a24e7
Cmake: cleanup for commit hash in build version
...
Since it's available in lib we don't need to include it everywhere.
2016-10-27 17:01:29 +03:00
AlexVinS
3dddbcf2e8
try to use CAnimation for Hero path
2016-10-27 16:34:15 +03:00
AlexVinS
8505a909e1
free Graphics object on quit.
2016-10-27 16:34:13 +03:00
AlexVinS
536f36ede8
use CAnimation fro world view icons
2016-10-27 16:34:12 +03:00
AlexVinS
365c64a345
use CAnimImage for world view legend
2016-10-27 16:34:10 +03:00
AlexVinS
36ac9ac86c
CAdvMapInt tweak
2016-10-27 16:34:07 +03:00
Vadim Markovtsev
da1c9cf249
Fix rebuilding everything on HEAD change
2016-10-23 16:56:53 +02:00
Vadim Markovtsev
d0beb27197
Add git commit hash into the version string
2016-10-23 15:45:47 +02:00
Vadim Markovtsev
4bcc43d3d0
Fix Mantis #2234
...
CPlayerInterface instances were removed from CClient::playerint with
clear() and finish() was not called on each. Added multiple insurance.
2016-10-22 16:22:00 +02:00
Vadim Markovtsev
d51c9a1ff0
Fix uninitialized scrolling state
2016-10-22 10:18:57 +02:00
AlexVinS
feaccead36
fixed missed initialization
2016-10-18 02:37:02 +03:00
AlexVinS
28dd12089b
CSpellWindow fixes.
2016-10-18 02:15:43 +03:00
AlexVinS
a223793405
Get rid of CDefHandler in CPreGame.
...
* also fixes difficulty icon in campaign screen
2016-10-18 01:43:42 +03:00
ArseniyShestakov
eec14028fe
Merge pull request #242 from dydzio0614/MapScrollCursor
...
Implement adventure map scroll cursor change
2016-10-17 16:09:01 +03:00
dydzio
22564dde4b
Implement adventure map scroll cursor change
2016-10-17 14:55:55 +02:00
AlexVinS
b256c4c36d
Improved creature casting GUI.
...
* "F" is new hotkey for creature spells
* creature spells now have lowest priority unless F pressed
* creatures can cast NO_LOCATION spells (only with hotkey)
2016-10-17 08:09:09 +03:00
Alexander Shishkin
4876cc178d
Merge pull request #240 from vcmi/spellWindowRewrite
...
Spell window rewrite
2016-10-17 07:58:56 +03:00
AlexVinS
5346ecb6df
tweak
2016-10-17 05:42:29 +03:00
AlexVinS
3bd8cde8e0
fix
2016-10-17 05:21:43 +03:00
AlexVinS
345dd913f6
use CLabel in SpellArea
2016-10-17 05:05:48 +03:00
AlexVinS
e3ee51a28f
Use label object for mana
2016-10-17 04:05:33 +03:00
AlexVinS
bc2f0ba6f1
fixed spell school ordering http://bugs.vcmi.eu/view.php?id=91
2016-10-17 03:33:29 +03:00
Vadim Markovtsev
89f506658e
Fix issue #2068 - maps list update
2016-10-16 22:15:37 +02:00
AlexVinS
ba5b65ff93
get rid of CDefHandler in CSpellWindow
2016-10-16 15:27:35 +03:00
AlexVinS
2a6bab119b
Use CAnimImage for SpellArea
2016-10-16 13:22:07 +03:00
AlexVinS
3a52a3c663
Allow CAnimImage to share animation object.
2016-10-16 12:58:18 +03:00
AlexVinS
e6829bf271
Removed unused debug data in CAnimation.
2016-10-16 12:02:50 +03:00
AlexVinS
a0300b0447
CSpellWindow widgets capturing
2016-10-16 12:01:18 +03:00
AlexVinS
e1f9b2c74a
SpellArea tweak
2016-10-16 10:43:49 +03:00
AlexVinS
2eb61533fa
use only CSpell in CSpellWindow
2016-10-16 10:32:12 +03:00
AlexVinS
63cbf960df
cleaned up spell window creation
2016-10-16 09:27:22 +03:00
AlexVinS
415bd8247a
Moved SpellbookInteractiveArea into CSpellWindow class
2016-10-16 09:17:23 +03:00
AlexVinS
c4b72342de
CSpellWindow: improved constructor readability
2016-10-16 09:03:13 +03:00
AlexVinS
5506ae036a
Reworked CHillFortWindow
...
* fixed displaying free upgrades
* do not try to print 3rd or more resource in slot cost (in theory possible with mods)
** we need dynamic gui for that
* CDefEssential--
2016-10-16 08:03:52 +03:00
AlexVinS
7ca9ab665a
cleanup
2016-10-16 04:36:03 +03:00
AlexVinS
055c84bc7a
cleanup
2016-10-16 04:23:38 +03:00
AlexVinS
abb875b400
cleanup
2016-10-16 03:52:11 +03:00
AlexVinS
523e33a5e5
cleanup
2016-10-16 03:41:43 +03:00
AlexVinS
e4816c0639
cleanup
2016-10-16 03:14:59 +03:00
AlexVinS
41a5cc1b69
get rid of CCastleInterface::bicons
2016-10-16 03:00:57 +03:00
AlexVinS
153af6e07b
cleanup
2016-10-16 02:47:03 +03:00
Vadim Markovtsev
34cf92cb9b
Change logging style
2016-10-03 20:32:01 +02:00
Vadim Markovtsev
eac5aab396
Survive client<->server ABI mismatch
2016-10-02 22:45:00 +02:00
Vadim Markovtsev
a15b8f4c99
Fix IntObject re-activated with mismatching used and active at game start
2016-10-02 22:45:00 +02:00
Vadim Markovtsev
d5327f3daf
Fix loading "" bitmap at game start
2016-10-02 22:45:00 +02:00
Vadim Markovtsev
6e9431a0fb
Merge pull request #231 from vmarkovtsev/fix-cmake-warnings
...
Fix cmake warnings
2016-10-02 18:17:50 +02:00
Vadim Markovtsev
6d89a2f15c
Fix whitespace dev warnings
...
They are bogus, but still
2016-10-02 17:12:08 +02:00
Vadim Markovtsev
7ac4e6ed18
Fix freshly recruited hero phantom in castle entrance
2016-10-02 16:29:24 +02:00
AlexVinS
85863dbed6
Fix build
2016-10-02 17:25:55 +03:00
AlexVinS
c5440a1c6c
Fixed http://bugs.vcmi.eu/view.php?id=2541
2016-10-02 01:32:28 +03:00
Piotr Wójcik
ea6545b1d3
Prevent flipping empty spellbook
...
When hero has no travel spells he can no longer flip spell book opened from right panel button
2016-10-01 21:39:40 +02:00
AlexVinS
23b7a803b6
cleanup
2016-10-01 20:07:36 +03:00
AlexVinS
7c91d378c8
Display specific message if cast blocked by CURSED_GROUND
2016-10-01 18:35:56 +03:00
AlexVinS
52ae5b4a86
Fixed http://bugs.vcmi.eu/view.php?id=482
2016-10-01 18:18:46 +03:00
AlexVinS
96c17505ae
get rid of IBonusBearer::getSpellBonuses & Selector::anyRange
2016-10-01 09:07:18 +03:00
dydzio
33ea28c5dd
Improve creature upgrade handling. Fix issue #2172
2016-09-30 21:21:41 +02:00
AlexVinS
6ddc1c78a2
Fixed http://bugs.vcmi.eu/view.php?id=2530
2016-09-30 02:35:07 +03:00
Vadim Markovtsev
2c1dddde33
Fix memory problems with BonusList
...
Bonus * -> std::shared_ptr<Bonus>
This cures the following problems:
1) Memory corruption at exit. Some Bonus-es were deleted twice (mods?).
2) Memory leaks. Some Bonuses were not deleted.
3) Reduce the number of "Orphaned child" messages.
Valgrind reports 0 leaked memory now and no invalid reads/writes.
2016-09-29 15:08:00 +02:00
AlexVinS
921d2f6210
Fixed http://bugs.vcmi.eu/view.php?id=2522
2016-09-29 10:21:22 +03:00
dydzio
68af6a0c19
Refactoring InfoAboutHero + GetHeroInfo
2016-09-28 13:22:33 +02:00
dydzio
f9b5ca3374
Remove max mana info leak + tiny refactor
2016-09-28 00:20:45 +02:00
dydzio
f621ef4ce8
Implementing hero battle information window
2016-09-27 22:47:58 +02:00
Arseniy Shestakov
99dcb44851
Add option hideSystemMessages to hide server messages on client
...
Use "set hideSystemMessages on" in client console to activate.
2016-09-26 16:05:27 +03:00
AlexVinS
849e3fc04e
Fixed http://bugs.vcmi.eu/view.php?id=2506
2016-09-24 09:27:58 +03:00
AlexVinS
21de5817e3
fixed http://bugs.vcmi.eu/view.php?id=2499
2016-09-22 18:44:57 +03:00
AlexVinS
ea2e336f54
Merge branch 'develop' into SpellsRefactoring8
2016-09-22 16:40:32 +03:00
Arseniy Shestakov
9963b9e02b
New command line option for testing: testingsavefrequency
...
Saving is slowest part of VCMI and for testing purposes like benchmarking it's helpful to create saves less often.
When --testingsavefrequency=N is specified client going to save only once in N days.
Option only active if other testing options are specified too.
2016-09-22 03:43:30 +03:00
DjWarmonger
264c71c58a
Merge pull request #218 from vmarkovtsev/fix-morale-widget
...
Nice and clean fix.
2016-09-19 20:44:13 +02:00
Vadim Markovtsev
31e5f7b800
Fix morale widget update after dismissing a creature in garrison
2016-09-19 18:59:34 +02:00
Arseniy Shestakov
f721d22dfb
CClient::loadGame: throw proper error if server save is missing
2016-09-19 04:56:20 +03:00
Arseniy Shestakov
58d11d6074
donotstartserver: ask for IP and port even for "host" player
...
When "--donotstartserver" option specified client will show dialog to use any IP/port for host player.
2016-09-18 23:24:08 +03:00
AlexVinS
d993710f8e
Merge branch 'develop' into SpellsRefactoring8
2016-09-17 20:29:44 +03:00
Arseniy Shestakov
1cbe9e1b8b
Client: add donotstartserver option. Alternative way to start a game
...
Option is useful for server profiling also let me test MP over network and much more.
Also there is issues with boost::interprocess on some systems under Windows and this is the way to bypass them.
2016-09-16 20:01:44 +03:00
Arseniy Shestakov
f623865991
CCastleBuildings: add dialog for shipyard when there is boat already
2016-09-14 03:32:03 +03:00
AlexVinS
505e53c17d
Merge remote-tracking branch 'remotes/origin/develop' into SpellsRefactoring8
...
# Conflicts:
# client/battle/CBattleInterface.cpp
# lib/spells/BattleSpellMechanics.cpp
2016-09-12 10:13:40 +03:00
ArseniyShestakov
2543e068ac
Merge pull request #209 from vcmi/fix/saveDesyncs
...
Think I tested it enough to merge it
2016-09-11 21:36:42 +03:00
AlexVinS
33d1895d21
Merge branch 'develop' into SpellsRefactoring8
2016-09-11 18:34:18 +03:00
Arseniy Shestakov
9ab7650746
SetHeroesInTown: properly update all client interfaces in multiplayer
...
All interfaces that hero or town visible for must be updated when hero position in town changes. Fix issue 2089
2016-09-11 13:56:00 +03:00
Arseniy Shestakov
c8faca8f39
Refactoring: only use RNGs explicitly to avoid bug prone code in future
...
Now server-side code should always use CRandomGenerator::getDefault which is serialized in GH.
CGameState::getRandomGenerator should be only used from GS code and CPackForClient-based applyGs.
2016-09-11 00:10:46 +03:00
AlexVinS
4a9978c642
Disabled massive spells fore creatures as they are not fully supported yet.
...
* (WoG) commanders now cast spells properly.
2016-09-10 21:07:36 +03:00
AlexVinS
8eca149eb3
Fixed creature`s aimed spell targeting.
2016-09-10 20:21:51 +03:00
AlexVinS
f36b40e311
fixed typo
2016-09-10 19:38:14 +03:00
AlexVinS
b7509f588f
Support all spell target types (except NO_TARGET) for creature casting.
2016-09-10 19:26:55 +03:00
AlexVinS
be002f6576
Cleanup
2016-09-10 18:56:38 +03:00
AlexVinS
62abde6c46
Prepare battle log for spell-cast on server side.
2016-09-10 18:23:55 +03:00
Piotr Wójcik
88ba42f91d
Fix choosing display
2016-09-08 21:33:47 +02:00
Arseniy Shestakov
02f70464fb
Fix mismatched-tags Clang warnings
...
They're not important at all, but sicne there only few of them left just fix them.
2016-09-08 19:42:59 +03:00
AlexVinS
948a339463
Merge branch 'develop' into SpellsRefactoring8
2016-09-04 11:27:15 +03:00
ArseniyShestakov
5fc1fd4daf
Merge pull request #206 from Chocimier/fixes
...
genBuildingRequirements is tricky one, but in tests it's seems everything is okay
2016-09-04 09:02:34 +03:00
AlexVinS
ad3049e6f8
Merge branch 'krnowak/choose-display' into develop
2016-09-04 04:06:42 +03:00
Arseniy Shestakov
076924166a
CPlayerInterface: always choose hero if there no town. Fix issue 2073
2016-09-01 07:08:37 +03:00
Krzesimir Nowak
46bd1c40cc
Fix memory leak
...
SDL_RWFromMem does not take the ownership of the passed memory, so we
have to free it ourselves.
2016-08-31 11:45:37 +02:00
Krzesimir Nowak
12f2006fbf
Show the game window on the configured display
...
This basically starts respecting the displayIndex setting. When
changing the fullscreen setting in-game, we read the display index
from the already existing window.
2016-08-31 11:12:59 +02:00
AlexVinS
437eadf1ed
do not leak scenarioOpts in CMapInfo
2016-08-31 06:18:01 +03:00
Piotr Wójcik
044e2b9e51
Properly calculate building requirements
...
In OH3 you can't build Capitol when Tavern is not builded.
In VCMI up to now you could.
2016-08-30 22:15:24 +02:00
AlexVinS
5d329b40a4
Factored spell action selection for location target.
2016-08-30 12:20:15 +03:00
AlexVinS
d1579ea620
Simplify spell action selection for creature target.
2016-08-30 12:20:13 +03:00
AlexVinS
750c114648
Drafts
2016-08-30 12:19:57 +03:00
AlexVinS
8d2aa2c8c7
Reduced scope of CBattleInterface spellSelMode
2016-08-30 12:14:12 +03:00
AlexVinS
d4d1693152
Start with a todo note for this branch
2016-08-30 12:12:44 +03:00
AlexVinS
7e0c4e1451
tweak
2016-08-30 08:27:01 +03:00
Arseniy Shestakov
0236309d25
CArtifactsOfHero: use shared_ptr for SCommonPart
2016-08-30 07:05:31 +03:00
AlexVinS
b8f4fdc2f2
fixed memory leak in CTradeWindow::initItems
2016-08-30 05:55:51 +03:00
AlexVinS
e2e5bc4920
fixed fadeAnims memory leak
2016-08-30 05:46:25 +03:00
AlexVinS
f0b3a13ed5
Fixed memory leak in CCreatureAnimation
2016-08-30 05:38:56 +03:00
AlexVinS
ef05a56e49
cleanup
2016-08-30 05:13:45 +03:00
AlexVinS
1c9dd41188
Removed unused STOP_CLIENT SDL event
2016-08-30 03:54:46 +03:00
AlexVinS
4bc27194dd
do not leak screen surface etc. on quit
2016-08-30 03:43:49 +03:00
AlexVinS
2018b4d406
Rewritten video mode check.
...
* check only for current desktop display mode, because we are not using actual fullscreen
* also old check was wrong
2016-08-30 03:27:53 +03:00
AlexVinS
fb7ff8c7fa
Do not use std::atexit. Modified patch from PR #204 by @krnowak.
...
std::atexit generally does not play nice with static objects in other
translation units/libraries - there are no guarantees about the order
of destruction of static objects and atexit functions coming from
different translation units/libraries. Removing calls to atexit fixes
crashes when quitting the game. The crash happened during the dispose
function somewhere inside boost's locale library that is used
indirectly by the logger - some locale function tried to lock a static
mutex that was already destroyed.
2016-08-30 01:26:05 +03:00
Alexander Shishkin
5e5ce0bb09
Merge pull request #203 from vcmi/logFormat
...
boost::format support for CLogger
2016-08-29 17:32:44 +04:00
Arseniy Shestakov
452e28d183
Remove some useless includes found by cppclean
...
This of course was tested and shouldn't break anything
2016-08-26 04:42:16 +03:00
Arseniy Shestakov
a90b657b86
Add reset to some static variables on client
2016-08-25 15:52:20 +03:00
Arseniy Shestakov
f020fa06fd
CPlayerInterface::buildChanged: fix update of advInt townlist
...
Fix issue when town icon on adventure interface is not updated from village after vcmiarmenelos cheat used.
This didn't occur during normal gameplay since usually castleInt is active when you build something.
2016-08-24 06:19:25 +03:00
Arseniy Shestakov
5a387cdaf1
Town: update appearance in applyGs to avoid desyncs. Fix issue 2464
...
Netpacks NewStructures and RazeStructures
2016-08-24 05:15:04 +03:00
AlexVinS
439aeecc8b
[c::b] re-enabled PCH, tested with GCC 5.3. (Older versions may not work)
2016-08-18 13:40:35 +03:00
Arseniy Shestakov
948cca02cc
Fixes to some crashes on exit and to have cleaner valgrind output
2016-08-18 06:52:10 +03:00
AlexVinS
e4091c05ec
fixed unitialized value field
2016-08-17 09:49:43 +03:00
AlexVinS
36c44c2ce7
projects update
2016-08-13 16:57:11 +03:00
AlexVinS
72f79a3ad7
Draft boost::format based log proxy.
2016-08-13 16:57:09 +03:00
Arseniy Shestakov
3a1a6cf338
CBattleInterface: fix crash on defeat in tactics phase. Fix issue 2440
...
It's possible to lose all mobile stacks if you move them on moat so tactics phase must end in that case.
2016-08-09 18:15:58 +03:00
AlexVinS
6e24d1e929
Applied patch by rumianom from http://bugs.vcmi.eu/view.php?id=2442
2016-08-01 18:28:14 +03:00
Arseniy Shestakov
4240ecad01
One more small fix for possible issues with gate surface
2016-03-14 13:11:04 +03:00
Arseniy Shestakov
af05b025e7
CBattleInterface: avoid crashes on gate state changes. Fix issue 2415
2016-03-14 10:37:43 +03:00
Arseniy Shestakov
10dbbead2d
Fix indentation of logging code and around it
...
That wouldn't be as big issue if problem affected few files, but it everywhere in codebase.
Fixed it everywhere since in most files that is the only code with wrong indentation.
2016-03-12 04:46:21 +03:00
Arseniy Shestakov
faae305ec0
CTradeWindow: avoid crash when right click on artifact
...
Fix suggested by @argarak in PR #199
2016-03-12 03:19:38 +03:00
ArseniyShestakov
7886e8986e
Merge pull request #197 from vcmi/issue/2304_2418
...
Issues/2304/2418/2293
2016-03-01 15:20:59 +03:00
AlexVinS
3873e5047e
Attempt to fix 2293
2016-03-01 13:24:46 +03:00
DjWarmonger
8f1fba9551
Merge pull request #146 from vcmi/feature/VCMIMapFormat1
...
Ok let's try it.
2016-03-01 07:49:54 +01:00
AlexVinS
42af83f0dd
Added todo note about ghost stack fadeout
2016-03-01 05:39:04 +03:00
AlexVinS
5c716f6581
Fix hackfix for ghost stack drawing
2016-03-01 04:41:51 +03:00
AlexVinS
94770e7598
Cleanup
2016-03-01 03:09:50 +03:00
AlexVinS
ace52cfdb1
Hackfix for ghost stack draw.
2016-02-29 05:09:13 +03:00
AlexVinS
f890037008
Fixes
2016-02-29 04:42:15 +03:00
AlexVinS
9036d39241
Do not remove battle stacks, make them ghosts instead.
...
* exclude ghost stacks from (hopefully all) get* results for now
2016-02-28 01:08:56 +03:00
Arseniy Shestakov
4f7664926e
New console commands for AI debugging: gosolo and controlai
...
gosolo: make AI to take over every human player in game. Second command would give control back to CPlayerInterface.
controlai: give control of one or all AI players to CPlayerInterface. Command "controlai orange" turn orange to human player while "controlai" without color specified make all AIs human controlled players.
2016-02-25 00:38:10 +03:00