Dydzio
cd78779d9c
Remove false warning indicating something is wrong
2019-05-19 12:22:41 +02:00
Dydzio
e50efdc279
Creature spellcast refactor ( #569 )
...
* Move some logic to lib
* Mouse action priority queue enhancement
* Get rid of siegehandler dependency
* Improve AI offensive spellcasting
* CBattleInterface cleanup
2019-05-04 06:42:55 +03:00
Alexander Shishkin
34f934370b
Merge pull request #565 from dydzio0614/moralewaitfix
...
Fix lack of unit action with morale+wait
2019-03-24 10:49:49 +03:00
Alexander Shishkin
9ad71b200f
Merge pull request #562 from dydzio0614/BattleIntroFix
...
Battle action start on client after intro sound
2019-03-24 10:36:01 +03:00
Dydzio
9e4619c08d
Fix lack of unit action with morale+wait
2019-03-23 23:51:50 +01:00
Dydzio
68992fbbb8
Minor fix
2019-03-23 12:12:25 +01:00
Dydzio
262057ad1c
Battle action start on client after intro sound
2019-03-22 21:39:53 +01:00
Dydzio
e1bf821c27
Tweak effect / spell animation speed
...
After reducing the value by half effect / spell projectile speed is really close to original H3 compared to other actions on same speed setting.
2019-03-22 14:21:27 +01:00
AlexVinS
4b5910c2f4
VCAI performance improvements
...
* Node graph initialization optimized.
* Fixed "Unathorized obstacle access".
* Pathfinding tracing disabled with ifdef.
* Misc bonus calculation optimizations.
* Removed timestamp from log lines. Date formatting eats too much CPU.
* Paths for all heroes in Client are now cached
2019-01-17 10:50:56 +03:00
Dydzio
0fd729fd86
Fix creature animation callback circular reference
2018-11-14 23:36:38 +01:00
Fior.in
47ba3b2476
Hero scheme: allow each hero to have a unique battle animation ( #480 )
...
* attribute for battle image added on hero class, allowing on hero schemes each hero have a unique battle .def in 'images' structures sided with portraits and specialties images
2018-08-27 09:42:36 +03:00
Alexander Shishkin
75f8c8b29a
Gui cleanup4 ( #446 )
...
* use smart pointers for almost all widget fields
* use SDL2 texture for cursor
* a lot af small tweaks and formatting
* removed CompImage class, it is actually useless as long as regular SDLImage support margins
* CGuiHandler: use smart pointers for [push|pop]Int
2018-07-25 01:36:48 +03:00
Karlis Senko
7fb7ceaad7
Prevent out of bounds array access.
2018-04-30 23:59:36 +03:00
Johannes 'josch' Schauer
ed5df13e50
client/battle/CBattleInterface.cpp: uncomment unused variable until soundh->playSound() is implemented
2018-04-19 15:20:26 +02:00
Alexander Shishkin
5c09f751b3
Gui cleanup3 - UI refactoring to use smart pointers ( #440 )
...
* Changed most gui classes to use shared pointers
* Store and use IImage as shared_ptr
* CSpellWindow redesign
* AdventureMapClasses cleanup
* CLabel: store background as smart pointer
* Store CObjectList items as smart pointers
* Removed destroy function of list item
* Store toggle buttons as smart pointers
* Use CComponent as smart pointer
* Attempt to fix artifact merchant drawing
2018-04-07 18:34:11 +07:00
AlexVinS
43acfa160b
[tweaks] IImage * -> auto
2018-03-30 14:02:04 +03:00
Raphnalor
0f00dbf8cf
Fix highlighting of a selected bonus for campaign. ( #432 )
2018-03-17 12:23:22 +08:00
Dydzio
e68a2e7ef5
Fix arrow tower destruction mechanics
2018-03-02 15:23:07 +01:00
Nikolay Shalakin
3795985de9
Eliminate warnings / errors. Pull request #388
2018-02-11 15:17:14 +03:00
AlexVinS
0b70baa95e
Spells configuration version 2 (effect-based)
...
* Indirect spell effects loading
* Json serializer improvements
* spell->canBeCastAt do not allow useless cast for any spell
* Added proxy caster class for spell-created obstacles
* Handle damage from spell-created obstacles inside mechanics
* Experimental GameState integration/regression tests
* Ignore mod settings and load only "vcmi" mod when running tests
* fixed https://bugs.vcmi.eu/view.php?id=2765 (with tests)
* Huge improvements of BattleAI regarding spell casts
* AI can cast almost any combat spell except TELEPORT, SACRIFICE and obstacle placement spells.
* Possible fix for https://bugs.vcmi.eu/view.php?id=1811
* CStack factored out to several classes
* [Battle] Allowed RETURN_AFTER_STRIKE effect on server side to be optional
* [Battle] Allowed BattleAction have multiple destinations
* [Spells] Converted limit|immunity to target condition
* [Spells] Use partial configuration reload for backward compatibility handling
* [Tests] Started tests for CUnitState
* Partial fixes of fire shield effect
* [Battle] Do HP calculations in 64 bits
* [BattleAI] Use threading for spell cast evaluation
* [BattleAI] Made AI be able to evaluate modified turn order (on hypothetical battle state)
* Implemented https://bugs.vcmi.eu/view.php?id=2811
* plug rare freeze when hypnotized unit shots vertically
* Correctly apply ONLY_MELEE_FIGHT / ONLY_DISTANCE_FIGHT for unit damage, attack & defense
* [BattleAI] Try to not waste a cast if battle is actually won already
* Extended JsonSerializeFormat API
* fixed https://bugs.vcmi.eu/view.php?id=2847
* Any unit effect can be now chained (not only damage like Chain Lightning)
** only damage effect for now actually uses "chainFactor"
* Possible quick fix for https://bugs.vcmi.eu/view.php?id=2860
2018-02-08 11:37:21 +03:00
AlexVinS
fc1938c341
fix
2017-10-08 11:03:12 +03:00
AlexVinS
891eb5771a
Use hero battle victory and failure animations
2017-09-27 17:35:30 +03:00
AlexVinS
270e1b75ce
Support for creature 2-hex attack, alternate death and cast animation types
...
* margin option .json animation
* Use ranged attack animation for spell cast if there is no cast animation, display cast animation only on active casting.
2017-09-12 19:51:54 +03:00
AlexVinS
c30d9f2fd6
Fix
2017-09-06 15:50:59 +03:00
AlexVinS
3bbff27127
Wiped CDefEssential
2017-09-06 15:13:28 +03:00
AlexVinS
6cd0dd9843
Use CAnimation for creature projectiles
2017-09-05 20:04:17 +03:00
AlexVinS
05bb8b13e9
Use CAnimation for battle creature animation
2017-09-05 18:59:26 +03:00
AlexVinS
78b86224a0
Use CAnimation fro custom battle effects
2017-09-05 17:21:44 +03:00
AlexVinS
882e279818
Use CAnimation in CBattleInterfaceClasses
2017-09-05 16:44:27 +03:00
AlexVinS
b964a53abe
Fixed battle animation
2017-09-04 17:52:36 +03:00
AlexVinS
64d9dadd64
Logging cleanup.
2017-08-11 15:47:50 +03:00
AlexVinS
c293589c07
A bit more logging cleanup
2017-08-10 23:47:58 +03:00
AlexVinS
143ff682bc
Logging cleanup
2017-08-10 21:59:55 +03:00
AlexVinS
61e241308d
Logging cleanup
2017-08-10 19:52:05 +03:00
ArseniyShestakov
cb40c093f8
Avoid boost::optional assignment for Boost 1.64 compatibility ( #360 )
...
Two options here: to use emplace from 1.56 or boost::make_optional.
Unfortunately Ubuntu 14.04 is using 1.54 and I'd rather not to break it.
2017-08-05 16:09:29 +03:00
Arseniy Shestakov
6d9f99d4de
Code style: and one more pass on lambda expressions parameter list
2017-07-19 02:11:17 +03:00
Arseniy Shestakov
2da3d8a563
Code style: remove senseless comments
2017-07-18 00:04:00 +03:00
ArseniyShestakov
b2f74a93cf
Code style: add empty parameter list to all lambda expressions ( #345 )
2017-07-17 15:35:57 +03:00
Dydzio
81ccecedca
Fix color change of highlighted hex borders ( #343 )
2017-07-17 01:15:05 +03:00
ArseniyShestakov
b52cfe5283
Code style: use parentheses for creating heap-based objects ( #344 )
2017-07-16 12:58:05 +03:00
AlexVinS
7374689301
Fixed https://bugs.vcmi.eu/view.php?id=2715
2017-07-16 00:02:55 +03:00
ArseniyShestakov
a4c0ad94b1
Code style: remove default value hints in definitions ( #342 )
...
Some are outdated and this is something IDE are useful for.
2017-07-15 14:08:20 +03:00
ArseniyShestakov
ea0ceb1805
Merge pull request #323 from vcmi/CStackTweaks
...
CStack tweaks
2017-07-15 00:42:08 +03:00
Arseniy Shestakov
f1e5797834
Code style: move or add licensing information on top of every file
2017-07-14 01:26:03 +03:00
Arseniy Shestakov
dbcd79c48a
Code cleanup: remove double and unneded semicolons
2017-07-12 22:01:10 +03:00
AlexVinS
1fe01b7254
Moved defensive stance log message building to server side.
2017-07-10 04:05:36 +03:00
AlexVinS
7bf8c9bd69
fixed and cleanup
2017-07-08 21:20:38 +03:00
AlexVinS
4f14f22d3a
Unified CStack ammo, casts and counterattacks
...
* it is possible now to add casts and shoots OTF (f.e. with spell bonus)
Centralized stack 'ammo' loading from bonus system.
* introduced small proxy class for local bonus cache
(no need to use global cache if particular selector used on node only in one place)
* handle killing resurrected creatures
* use IBonusBearer::MaxHealth() where possible
* Fixed https://bugs.vcmi.eu/view.php?id=2486
* Possible fix for 0 HP after resurrection.
* Hack-fixed https://bugs.vcmi.eu/view.php?id=2584
* Unified CStack health API
* Use CHealth for CStack count and health points
* increased SERIALIZATION_VERSION
2017-07-08 20:29:59 +03:00
ArseniyShestakov
3634af10ba
Merge pull request #330 from dydzio0614/AmountBoxTweaks
...
Tweak battle creatures amount box hiding
2017-07-08 15:54:18 +03:00
Dydzio
2d6f964d65
Amount box support for stacked war machines
2017-07-07 19:04:29 +02:00
Dydzio
ae2323672a
Tweak battle creatures amount box hiding
2017-07-07 18:11:05 +02:00
AlexVinS
4d204095cf
fix
2017-07-07 02:55:23 +03:00
ArseniyShestakov
5dfb7a5771
Merge pull request #317 from vcmi/attackerOwned
...
Refactored CStack::attackerOwned to CStack::side
2017-07-03 16:19:54 +03:00
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
AlexVinS
195eae48ca
Merge branch 'develop' into SDL2
...
Conflicts:
client/CPlayerInterface.cpp
2014-07-02 17:15:12 +04:00
Ivan Savenko
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
AlexVinS
3b8d0e44d4
Merge branch 'develop' into SDL2
2014-06-24 14:09:44 +04:00
AlexVinS
0ef16feca9
Refactoring towards backward compatibility (WiP)
2014-06-13 07:55:41 +04:00
AlexVinS
62d42465de
fix compilation
...
* may not even run
* text input disabled
2014-06-13 07:55:38 +04:00
Ivan Savenko
b2e8c92383
Cleanup:
...
- removed commented-out #includ'es
- renamed some files to match name of class
2014-06-05 20:26:50 +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
beegee1
a87363c0f1
- fixed mantis #783 - play sound when entering message in chat box
2014-06-01 18:48:40 +02:00
beegee1
1d57b75bc5
- random number generation refactoring
...
- fixed mantis #1743
2014-04-10 19:22:32 +02:00
Ivan Savenko
771c1ce255
- some effords to get rid of bottlenecks in AI code
...
- fixes, probably partially #1577
- enabled code for reading map object templates from json, still not
used
- disabled PCH for launcher due to speed issues.
2014-03-23 16:36:16 +00:00
Ivan Savenko
9c0df68cb8
Fixing spelling mistakes. Patch from josch, fixes #1759
2014-03-23 12:59:03 +00:00
alexvins
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
alexvins
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
alexvins
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
Ivan Savenko
47c91e03b5
- fix to last commit
...
- workaround to crash on disabling auto-battle (somehow client
"remembers" one command given during auto-battle)
2014-01-14 14:34:08 +00:00
Ivan Savenko
c5b74a2dce
Miscellaneous fixes:
...
- proper block of "back" button in campaign menu.
- proper block of AI switch in battles
- vertical garrisons can now be attacked from top
- better UI logging, vcmi will print to log file all pressed buttons
- server will not try to build already existing building
2014-01-13 17:44:21 +00:00
beegee1
69eee05ccc
- Partially fixed mantis #1065 (Gate with hex 95 can't be attacked)
...
- Fixed 'catapult tried to attack non-catapultable hex!' problem, now catapult attacks attackable wall parts only
- Fixed problem that the server performed applying damage on a wall part twice
- Added methods for checking what wall parts are attackable and if a wall part is potentially attackable
- Added functionality to trace net packages
- Added functionality to trace std::vectors
- Added tracing for CatapultAttack(CPack)
- Updated various toString methods to use {} instead of []
- Refactoring
2013-12-08 17:54:13 +00:00
beegee1
41e274b4aa
- Moved FunctionList from /client to /lib -> used in client and server
...
- Updated project files
2013-11-30 10:08:38 +00:00
beegee1
e01ef8e36a
- Fixed mantis #1576 (doesn't hang game)
...
- Implemented output stream operator<< for various classes(BattleAction, BattleHex,...) to improve debugging and logging
2013-11-09 16:25:20 +00:00
Ivan Savenko
55577d0ac4
- fixed missing DLL_LINKAGE
...
- use precalculated checksum for zip files
- UNUSED macro to silence some warnings
2013-11-09 13:49:36 +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
beegee1
94bee3fd1b
- Changed visibility of curInt member of BattleInterface from public to private and provided a getter method
2013-11-03 16:44:47 +00:00
Ivan Savenko
0e3eae3095
patch from KroArtem
2013-11-03 12:51:25 +00:00
beegee1
aa1c193b88
Fixed mantis #1582
2013-11-02 20:07:45 +00:00
Ivan Savenko
6cb3cb006d
Several minor fixes/features
...
- moved all traslatable strings into one json file, removed threats.txt file
- implemented "spellbook animation" option
- fixed missing central tower when attacking fort
2013-10-27 13:05:01 +00:00
Ivan Savenko
d09294e40a
compile fix, fixes blit order of heroes in siege
2013-09-30 08:45:26 +00:00
Michał W. Urbańczyk
0abbe71b25
Merged fixes from the branch.
2013-09-28 00:58:33 +00:00
Michał W. Urbańczyk
4f29b526ca
The battle callback method battleGetAllStacks will by default omit the arrow turrets. Fixes #1453 , #1455 and related.
2013-09-27 19:42:17 +00:00
DjWarmonger
d06b02638b
Partially implemented #481
2013-09-17 12:02:33 +00:00
Michał W. Urbańczyk
b62bb096a7
Fixed #1430 , work-around to make #1435 non-crashing.
...
Fixed at least one of the #1428 infinite turns cases.
2013-09-11 21:57:08 +00:00
Ivan Savenko
76c77d58f6
const-ified CTown. May fix #1444
2013-09-06 21:57:16 +00:00
Michał W. Urbańczyk
385f4ab7f5
#1153 and #1395 should be fixed. Terrible, terrible, terrible.
...
Fixed crash in battles, when attempted to access <0 screen coordinates.
2013-09-01 22:55:57 +00:00
Ivan Savenko
45c2bd7511
hopefully fixes #1397 . Still too much magic in this code :(
2013-08-09 17:37:41 +00:00
Ivan Savenko
8beee29482
- corrected "isToReverse" check, partially fixes 1397
...
- ballistics fix
- minor
2013-08-06 15:25:51 +00:00
Ivan Savenko
c81a31c74a
- catapult attacks should be identical to H3
...
- catapult may miss and attack another part of wall instead (this is how it works in H3)
- minor fixes
2013-08-06 11:20:28 +00:00
Michał W. Urbańczyk
58ccaa2e93
The cmath "fix" was not needed after all, the includes order decides.
2013-08-02 08:28:52 +00:00
Michał W. Urbańczyk
7a90ead051
VS-2013 issue.
2013-08-01 11:58:30 +00:00
Ivan Savenko
b57b14b752
- fixed several bugs with siege graphics, including #1389
...
- removed "shooterHeight" property - seems to be same in all towns.
2013-07-31 22:24:44 +00:00
Ivan Savenko
b87897096c
Filesystem handling is now more flexible
...
- removed CResourceLoader class in favor of one that implements resource loader interface
- removed global pool of files, in favour of more dynamic approach
- renamed some files to match current situation
All these changes are needed mostly for future mod manager + .zip support
2013-07-28 14:49:50 +00:00
DjWarmonger
5f310aa20f
Fixed all issues with Resurrection: #123 , #1358
2013-07-27 19:01:31 +00:00
DjWarmonger
b36be10e30
2013-07-25 11:53:36 +00:00
Michał W. Urbańczyk
d8a27d8f3c
Refactored player-specific data into single struct BattleState.
2013-07-21 22:01:29 +00:00
Ivan Savenko
a148c39e0a
more battles animations:
...
- UI will be correctly greyed-out during opponent turn
- fixed remaining issues with blit order
- a bit better handling of catapult attack
- fixes #1362
2013-07-21 10:10:38 +00:00
Michał W. Urbańczyk
e45d174ba5
Fixed crashes on Land Mines / Fire Wall casting.
2013-07-20 21:35:12 +00:00
Ivan Savenko
096d6ebf9c
refactoring of CBattleInterface::show() and all related code
...
fixes most of blit order-related bugs in battles (#1200 , #1238 , #226 )
known issues, will fix soon:
- there are still some minor blitting issues during movement
- destruction of walls in siege is out of sync with catapult projectile movement
2013-07-19 16:35:16 +00:00