AlexVinS
3ce238e4d3
Tweak
2017-07-03 13:40:22 +03:00
AlexVinS
e4c14c4cc2
avoid assertions in stack position checks
2017-07-03 12:59:33 +03:00
AlexVinS
4f8c7bd4bb
CStack refactoring
...
* removed all occurrences of attackerOwned
* Use BattleSide enum
* more tweaks
2017-07-01 19:17:08 +03:00
ArseniyShestakov
2f305cc68d
Remove code related to duel mode ( #312 )
...
Remove code related to duel mode
2017-07-01 16:30:13 +03:00
FeniksFire
8ccdda6d2d
Improve formatting, update other config information about includes.
2017-06-27 17:00:44 +02:00
FeniksFire
4113bdab01
Moving some files from lib to the battle subdirectory.
2017-06-26 15:26:08 +02:00
AlexVinS
0af9aa382c
Possible fix for https://bugs.vcmi.eu/view.php?id=2692
2017-06-14 04:53:26 +03:00
AlexVinS
0f5202689e
Cumulative spell effects
...
* Added experimental support for cumulative effects for ENCHANTED bonus
* Updated and fixed SPECIAL_PECULIAR_ENCHANT processing
* Initial implementation of cumulative spell effects.
* Scheme for new spell feature - cumulative bonus.
2017-06-13 21:50:50 +03:00
Arseniy Shestakov
3f7cb9f893
Client: add some shortcuts for spectator mode
...
Following mode only work when client is started in spectator mode:
F5 - Pause / resume game by locking of pim
F6 - Toggle spectate-ignore-hero
F7 - Toggle spectate-skip-battle
F8 - Toggle spectate-skip-battle-result
F9 - Skip current battle
2017-06-06 07:30:16 +03:00
Arseniy Shestakov
18161d3688
Client: implement spectator mode via command-line options
...
If running with --spectate/-s CPlayerInterface will appear even without human players.
Following command-line options also available:
--spectate-ignore-hero
--spectate-hero-speed=N
--spectate-battle-speed=N
--spectate-skip-battle
--spectate-skip-battle-result
Boolean options can also be changed in runtime via client console:
set spectate-ignore-hero on / off
Spectator mode also:
- Work with --onlyAI option when starting game or loading saves.
- Allow to use any cheat codes.
- Give recon on towns and heroes.
2017-06-06 07:30:16 +03:00
AlexVinS
6c308956f9
get rid of CBattleInfoCallback::battleCanCastThisSpellHere
2017-06-05 23:25:48 +03:00
AlexVinS
4d430f6ad8
get rid of CPlayerBattleCallback::battleCanCastSpell
2017-06-05 22:16:12 +03:00
Arseniy Shestakov
4a302d4fe5
CBattleHero::clickRight: more elegant code for side detection
2017-06-03 04:28:03 +03:00
AlexVinS
f5cdaece6f
Fixed CID 1375687
2017-05-28 14:40:36 +03:00
FeniksFire
d390dff54d
Fix game crash after autofight.
...
Vcmi makes crash when I turn on autofight in the battle and wait until I
close result battle window.
2017-05-13 09:54:03 +02:00
Arseniy Shestakov
09d593e59b
CBattleInterface: avoid freezes on end of battle. Fix issue 1897
2017-03-19 05:15:31 +03:00
FeniksFire
3de891b4b4
Moving/dividing classes from BattleState to separate files.
2017-03-17 16:48:44 +01:00
dydzio
141e5ad032
Implement "emergency" projectile init attempt
2017-02-03 23:25:46 +01:00
Dydzio
6c8ef79727
Merge branch 'develop' into MakeWOGGreatAgain
2017-02-01 23:14:36 +01:00
dydzio
3e285c2004
Add santa gremlin missing creature ability, fix shooter init bug
2017-01-26 20:53:28 +01:00
Michał Kalinowski
4d39f652bf
Making more detailed options when choosing AI in launcher: http://
...
bugs.vcmi.eu/view.php?id=2369
2017-01-17 12:34:28 +01:00
AlexVinS
2dd6a47764
try to plug a few coverity false positives
2016-11-28 02:50:41 +03:00
AlexVinS
abe4beebc6
Fixed CID 1197516
2016-11-27 19:13:40 +03:00
AlexVinS
c4ab962cc0
Fixed a few CWE-457
2016-11-27 17:48:18 +03:00
AlexVinS
80666fb134
Tweaks
2016-11-25 22:12:22 +03:00
AlexVinS
4e28efb8b4
Fixed CID 1288860
2016-11-25 16:09:14 +03:00
Vadim Markovtsev
79c85be93f
Fix large obstacles drawing in front of the stacks
2016-10-30 04:51:35 +01:00
Vadim Markovtsev
ab7a0d64eb
Fix formatting
2016-10-28 23:37:20 +02:00
AlexVinS
feaccead36
fixed missed initialization
2016-10-18 02:37:02 +03: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
AlexVinS
63cbf960df
cleaned up spell window creation
2016-10-16 09:27:22 +03:00
AlexVinS
c5440a1c6c
Fixed http://bugs.vcmi.eu/view.php?id=2541
2016-10-02 01:32:28 +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
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
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
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
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
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
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
f0b3a13ed5
Fixed memory leak in CCreatureAnimation
2016-08-30 05:38:56 +03: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
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
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
ArseniyShestakov
c550484613
Merge pull request #181 from vcmi/feature/drawbridgeMechanics
...
Feature/drawbridge mechanics
2016-02-14 16:32:24 +03:00
Arseniy Shestakov
f453172d53
CBattleInterface: cleaner implementation of optional drawbridge blit
...
Checking against nullptr isn't clean solution so we only blit in case gate opened or destroyed.
2016-02-14 15:38:58 +03:00
Arseniy Shestakov
2cfdfca7e5
Battles: fix more cases where invalid wall hex position present
2016-02-14 14:38:24 +03:00
Arseniy Shestakov
c5cfc8467f
Battles: change naming from drawbridge to gate for everything
...
This way code is shorter and cleaner while in future we may support towns with gate only.
2016-02-13 17:40:31 +03:00
Arseniy Shestakov
b946c52242
CBattleInterface: introduce EWallVisual instead of ids with comments
2016-02-13 17:10:14 +03:00
Arseniy Shestakov
422d5cabdf
CBattleInterface: first pass on client drawbridge visualization
2016-02-10 07:10:32 +03:00
AlexVinS
ba017c443d
Start from diff of pull request #124 from vcmi/issue/1372
2016-01-29 21:05:17 +03:00
Vadim Markovtsev
40cb48d65e
Replace std::remove_if with vstd::erase_if
2016-01-26 10:19:58 +03:00
Arseniy Shestakov
9fd1cff090
Refactoring: always use std prefix for shared_ptr, unique_ptr and make_shared
...
Long time ago it's was used without prefix to make future switch from boost to std version easier.
I discusses this with Ivan and decide to drop these using from Global.h now.
This change wouldn't break anything because there was already code with prefix for each of three cases.
2015-12-29 05:43:33 +03:00
Ivan Savenko
c3ce4b25df
Removed all #include's of CMap.h from headers.
...
To all - please, avoid #include's in headers as much as possible
This kills incremental build compile times
2015-12-02 21:05:10 +02:00
edeksumo
ba1062ed3c
Formating2
...
Change ani to anim
2015-11-07 23:30:01 +01:00
edeksumo
dd525da153
Formatting
2015-11-04 23:37:53 +01:00
edeksumo
75a76c0bf0
FixDefenceAni
2015-11-04 00:19:40 +01:00
Alexander Shishkin
fca4deaad2
Merge pull request #122 from vmarkovtsev/feature/warnings
...
Fix warnings produced by recent Clang build
2015-10-14 07:28:47 +03:00
Vadim Markovtsev
d24fd10e21
Fix std::abs warning
...
Recent clang wants std::abs instead of plain abs
2015-10-13 21:05:46 +03:00
Vadim Markovtsev
e4b1ef1405
Add "override" to virtual overriden methods
2015-10-13 21:05:36 +03:00
AlexVinS
2677d4a677
Fixed action cancel on active stack remove
2015-10-08 08:15:29 +03:00
AlexVinS
f99bf099ca
Made player interface tolerant to active stack removal.
2015-10-06 03:46:35 +03:00
AlexVinS
a06e34cf61
Cleanup
2015-09-29 19:14:24 +03:00
AlexVinS
70d9be8447
Use ISpellCaster in battle callback
2015-09-29 17:26:52 +03:00
AlexVinS
d9cbe487c7
remove useless function CSpell::getTargetInfo
2015-09-29 17:26:47 +03:00
AlexVinS
2b434111bf
More hero|creature casting unification
2015-09-29 17:26:40 +03:00
AlexVinS
92990c887c
Fix creatures can always cast on self
2015-09-29 17:26:37 +03:00
AlexVinS
caf8ae62cc
Allow custom effect animation on any stack during spell cast.
2015-09-14 06:21:49 +03:00
AlexVinS
0f0e67dbe3
Do not include resisted stacks in affected
2015-09-14 05:45:05 +03:00
AlexVinS
9d0a1f0eef
Added logging for CDummyAnimation creation (like other types)
2015-09-13 00:01:36 +03:00
AlexVinS
cbd8900c0b
Added CBattleConsole tracing
2015-09-12 23:03:45 +03:00
AlexVinS
075b65b31b
Use dummy animations
2015-09-12 21:09:53 +03:00
AlexVinS
832d69ec11
Hide battle log algorithm in spell classes.
...
* not finished, to be moved to json of splitted between mechanics classes
2015-09-12 21:09:51 +03:00
AlexVinS
5d0ecd9cdf
More battle log refactoring
2015-09-12 21:09:50 +03:00
AlexVinS
7cf9bd36b7
Display AGE effect with any value (not only -50%).
2015-09-12 21:09:49 +03:00
AlexVinS
3a5a02e73b
Use boost::fromat in CBattleInterface::spellCast
2015-09-12 21:09:48 +03:00
AlexVinS
805c839761
More CBattleInterface::spellCast refactoring
2015-09-12 21:09:47 +03:00
AlexVinS
8171924eb4
More simplification of CBattleInterface::spellCast
...
* was started in previous branch
2015-09-12 21:09:46 +03:00
AlexVinS
9482852020
few tweaks
2015-09-12 21:09:45 +03:00
AlexVinS
fb5903d610
Initial experiments on hero & creature casting unification
2015-09-12 21:09:44 +03:00
AlexVinS
b512005d38
Get rid of CSDL_Ext::colorSetAlpha
2015-09-02 18:49:29 +03:00
AlexVinS
a8c45df732
Merge branch 'SDL1Wipe' into develop
2015-06-22 14:24:00 +03:00
AlexVinS
dca1e28bc1
SDL1 wipe, part 1. Untested.
2015-06-21 01:59:30 +03:00
AlexVinS
2cb6cb7baa
Remove useless durationType selector
...
* duration is a mask, equality comparison is not enough
2015-06-02 07:12:02 +03:00
AlexVinS
e1deff089d
Actually use ANY_CREATURE possible action
...
* this fixes mantiss 0002140
2015-04-11 10:56:35 +03:00
AlexVinS
a061e3c2f7
Fix use-after-free in spell window
2015-04-11 10:18:40 +03:00
Fay
1cb54689cf
Prevents first aid tents from melee attacking;
...
Moves attack possibility checks to battle callback (for consistency with shooting checks);
2015-04-09 21:49:11 +02:00
AlexVinS
67a7cd8350
Allow FREE_LOCATION action over dead stack. This fixes 0001560
2015-03-29 16:24:43 +03:00
AlexVinS
9600446cf9
+smart target, +hit animation
2015-03-18 17:48:32 +03:00
AlexVinS
69c458e881
initial implementation.
2015-03-18 13:27:07 +03:00
AlexVinS
025a00362b
Simplify CBattleInterface::spellCast
2015-02-26 08:39:58 +03:00
AlexVinS
685deddac1
Start spell-relatet files reorganisation
...
* moved existing files to separate directory
-> todo: split mechanics
2015-02-26 08:39:48 +03:00
AlexVinS
a3f2667376
Remove some deprecated fields from CSpell
...
* now only new SpellScholl API is used
(!) untested
2015-02-26 08:39:43 +03:00
Fay
4b5b6edd44
Added space between both text entries;
2015-01-26 17:16:39 +01:00
Fay
413523956f
Fixed missing info about dealt damage in combat log when there were casualties;
...
Fixed blank row in combat log in the same case;
2015-01-25 18:03:34 +01:00
AlexVinS
d94f15bdf4
Added configurable animation for SPELL_LIKE_ATTACK
2014-11-28 00:36:14 +03:00
AlexVinS
943a5bf0d3
cleanup
2014-11-27 22:10:36 +03:00
AlexVinS
0612042928
Tweak creature spell projectile start position
...
* need more finetuning
2014-11-27 21:33:57 +03:00
AlexVinS
04202eb030
Shoot spell projectile from creature
2014-11-27 21:06:11 +03:00
AlexVinS
657385e32c
We need to know caster stack ID for proper projectile animation
2014-11-27 20:47:37 +03:00
AlexVinS
6893509f65
Fix manaGain animation always showing
2014-11-27 19:09:59 +03:00
AlexVinS
c67f52732a
Fix CSpellEffectAnimation call parameters
...
(!) need check areaEffect usage
2014-11-27 17:39:37 +03:00
AlexVinS
75b93b070d
Implemented configurable hit/affect animation
...
* need more testing
2014-11-27 16:51:16 +03:00
AlexVinS
256894d18a
Use configuration for spell projectile
2014-11-27 00:27:38 +03:00
AlexVinS
f7ff61ce4f
Merge remote-tracking branch 'remotes/origin/develop' into SpellsRefactoring4
2014-11-24 12:41:17 +03:00
DjWarmonger
c094e70784
Replaced legacy sprintf with boost::format.
2014-11-22 12:45:13 +01:00
KroArtem
82b278307f
fixed typo
2014-11-17 23:08:08 +03:00
KroArtem
e73c60740c
corrected text in vcmibuilder, corrected errors and warnings from cppcheck
2014-11-16 20:48:29 +03:00
AlexVinS
752965ff69
Merge branch 'develop' into SpellsRefactoring4
...
Conflicts:
lib/CSpellHandler.cpp
2014-11-14 05:28:23 +03:00
AlexVinS
81fb2ae584
Fix crash when casting firewall-like spells after creature casting
...
#1910
2014-11-14 04:12:50 +03:00
AlexVinS
9e8b09d747
Use clearAffected flag
2014-11-13 15:00:45 +03:00
Ilya Zhuravlev
62a3dfb086
Fixed "Hex grid" button crash, partially fixes 1907.
2014-11-04 15:34:30 +03:00
AlexVinS
66b022f93e
initializer lists part1
2014-10-02 19:43:46 +04:00
Ivan Savenko
6aef70eca1
Fixed animation order in lucky attacks. May fix 1891.
2014-09-23 17:30:36 +03:00
Ivan Savenko
a5c3ed080f
Fixes 1892 - properly handle animation of dying clones
2014-09-23 16:02:30 +03:00
Ivan Savenko
1e5e02c7df
Compilation fixes caused by merge, replaced some remaining boost::bind with std's
2014-08-09 15:14:31 +03:00
Ivan Savenko
b1285bc506
Merged GUI refactoring into develop, fixed conflicts
2014-08-09 15:01:55 +03:00
beegee1
5139378319
- migrated boost::function/ref/bind to std:: variants
2014-08-04 20:33:59 +02:00
Ivan Savenko
77a73fbaa9
Merge branch 'feature/freegfx' into refactoring/guiClasses
...
Conflicts:
client/windows/CHeroWindow.cpp
client/windows/CQuestLog.cpp
client/windows/GUIClasses.cpp
2014-08-03 18:50:59 +03:00
Ivan Savenko
10fc1892a8
Large refactoring of button classes:
...
- renamed CAdventureMapButton to more expectable CButton
- merged CButtonBase into CButton
- created more generic class for clickable elements
- created more generic class for selectable elements
- renamed CHighlightableButton to CToggleButton
- renamed CHighlightableButtonsGrous to CToggleGroup
- minimized differences between API of all these classes
- removed all but one contructors in buttons, with same parameters across all classes
2014-08-03 14:16:19 +03:00
Ivan Savenko
731aedf3a1
Split CIntObjectClasses into multiple smaller files. This should be the last change in files
2014-07-15 10:14:49 +03:00
Ivan Savenko
9f5704f8ba
Uploaded recreated stack queue backgrounds
2014-07-14 22:38:13 +03:00
Ivan Savenko
92d22bae63
Merge branch 'feature/creatureWindow' into refactoring/guiClasses
2014-07-14 17:23:24 +03:00
Ivan Savenko
647b9c683f
Reorganized client source tree:
...
- client/widgets for reusable GUI elements
- client/windows for independent windows
- client/gui for base GUI classes which should remain internal
2014-07-13 20:53:37 +03:00
Ivan Savenko
7a9547bb44
New creature window made without use of H3 graphics
...
This is import of ancient unfinished branch from svn. As of now window is largely finished but commander-related elements are still TODO.
Note that I also uploading graphical content - this is intended and necessary for final goal - to make VCMI functional without any additional graphical pack.
2014-07-02 21:38:38 +03:00
AlexVinS
638dac90af
centralize key color management
2014-07-02 22:20:54 +04:00
AlexVinS
082c9a506e
Fix battle absolute obstactes rendering
2014-07-02 21:38:15 +04:00