1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-07-03 00:46:55 +02:00

78 Commits

Author SHA1 Message Date
298ec472bf Split BattleInterfaceClasses into smaller files 2025-06-18 17:29:20 +03:00
35644da2b7 Reogranize callback-related classes on 1 file = 1 class basis 2025-05-12 22:07:09 +03:00
e567e1b820 Fix possible memory leaks in sound handler, simplify API 2025-04-29 12:11:10 +03:00
ffd37a8fa8 Removed CGI in favor of VLC. Map handle is for now global variable 2025-02-21 16:53:14 +00:00
f657e85305 Integrated CClientState into GameEngine class 2025-02-21 16:53:14 +00:00
cacceda950 Renamed CGuiHandler to GameEngine
- class CGuiHandler is now called GameEngine to better describe its
functionality
- renamed global GH to more clear ENGINE
- GH/ENGINE is now unique_ptr to make construction / deconstruction
order more clear and to allow interface / implementation split
- CGuiHandler.cpp/h is now called GameEngine.cpp/h and located in root
directory of client dir
2025-02-21 16:53:13 +00:00
28a8d4f4a1 Implemented bloodlust, clone, and petrify effects for xbrz mode 2025-02-14 11:01:20 +00:00
dbe82b94f6 Changes following review:
- shared_ptr for destructibleEnemyTurns instead of raw pointer
- drop implicit int conversion for BattleHex class
  and implement toInt() instead
- implement necessary operators in BattleHex
- adjust code to work properly with JSON serializer
2025-01-08 07:24:43 +01:00
ac8104d56d SonarCloud recomendations.
Code review follow-up:
- Replace std::vector with boost::small_vector
- Rename function merge to insert
2025-01-06 23:28:45 +01:00
a99274d72e BattleHexArray - new container for BattleHexes 2025-01-06 23:18:18 +01:00
dfe6e04464 Implemented semi-transparent spell effects 2024-11-17 19:48:16 +00:00
251155d913 More robust management of body/shadow/overlay split 2024-11-17 17:54:55 +00:00
36c1ed670f Support for configurable town fortifications
Removed most of hardcoded checks for fort level or for presence of fort/
citadel/castle buildings.

It is now possible to define which parts of town fortifications are
provided by town buildings

Configuration for H3-like fortifications is provided in
buildingsLibrary.json and will be used automatically by mods as long as
mods have buidings named "fort", "citadel" and "castle".

Alternatively, mods can separately define:
- hitpoints of walls (shared value for all sections)
- hitpoints of central, upper and lower towers (separate values)
- presence of moat
- shooters for each tower (separate values)
2024-08-28 19:42:14 +00:00
0d6ec0d224 Reviewed usage of EBlitMode, now specified clearly in all cases 2024-07-19 10:08:50 +00:00
230add02e4 Remove no longer used code 2024-07-19 10:08:50 +00:00
a1fb3b8b01 Reduce direct access to CAnimation, removed various caching schemes 2024-07-19 10:08:50 +00:00
02e429e973 Fix typos using https://github.com/crate-ci/typos
Changes were reviewed manually
2024-06-24 03:47:19 +02:00
d27b854cb1 Reorganized music, video and sound players:
- All XXXplayers are now in client/media directory
- Reogranized code on one class per file basis
- Extracted interfaces from handlers. Handlers now implement
corresponding interface.
- CCS now only stores pointer to an interface
2024-05-15 17:05:12 +00:00
0d0d3d8c80 Renamed speed -> getMovementRange, remove misleading default parameter 2024-01-14 17:14:36 +02:00
a1a5bc28c2 convert line endings from CRLF (Windows) to LF (Linux/Unix)
Mixed line endings cause problems when exporting patches with
git-format-patch and then trying to "git am" a patch with mixed and
non-matching line endings. In such a situation git will fail to apply
the patch.

This commit runs the dos2unix tools on the remaining files with CRLF
(\r\n) line endings to convert them to line-feeds (\n) only.

Files that are Windows specific like *.vcxproj and *.props files were
not converted.

Closes: #3073
2023-10-19 16:23:21 +02:00
f39fbe5151 Merge pull request #2757 from IvanSavenko/filesystem_refactor
Filesystem refactor - part 1
2023-09-07 10:51:02 +03:00
41210c1dbf Client-side support for multiple battles 2023-09-06 16:03:47 +03:00
1d0e696db6 Added RenderHandler that acts as factory for images and animations 2023-09-04 18:22:34 +03:00
8dfdfffd87 Use ResourcePath for audio files 2023-09-04 18:22:34 +03:00
823ffa7a07 Always use ResourcePath for referencing images and animations 2023-09-04 18:22:34 +03:00
43795c39a5 Replaced all usage of SDL_Color outside of render with ColorRGBA 2023-07-31 21:07:30 +03:00
8a31aeb94b Battle animations use tick() for updates 2023-05-14 22:23:00 +03:00
03df274450 Framerate manager is now in a separate file and private member of GH 2023-05-14 22:22:37 +03:00
05eccbc2bb vcmi: split bonus to enumerator and HeroBonus.h 2023-05-03 18:01:06 +03:00
b472c89276 vcmi: make some CStack properties private
There is a getters for this properties already available
2023-04-27 20:58:49 +03:00
fb739e7186 Merge beta -> develop 2023-04-26 22:48:08 +03:00
6df85be4b3 Fixed death animation of Efreeti killed by petrification attack 2023-04-20 18:13:01 +03:00
e3ed728193 Merge pull request #1932 from rilian-la-te/proper-teleport
VCMI: teleport redesign
2023-04-16 22:52:01 +03:00
bc1aad3b26 vcmi: remove deprecated CStack::getCreature()
Function battle::Unit::unitType() does the same.
2023-04-13 11:24:19 +03:00
506c3d29bc Replaced vstd clamp with std version 2023-04-12 01:03:14 +03:00
11b237a23c vcmi: massive refactoring v1 2023-04-05 22:33:12 +03:00
e0715a76c8 vcmi: reduce CStack usage a little bit 2023-04-04 23:02:54 +03:00
307065a633 Merge beta into develop 2023-04-04 16:06:20 +03:00
7543fdf787 vcmi: add reverse effect animation type
To be used later with obstacle removal
2023-03-31 01:01:25 +03:00
fd3f80e860 Fix game hang on invalid shooter animation config 2023-03-28 17:04:18 +03:00
2864a04bda Minor refactoring 2023-03-20 20:19:05 +02:00
31b718898a Fix playback of shooter animations at max speed 2023-03-20 20:19:05 +02:00
688b8db3eb Removed delays due to thread waits from battle animations 2023-03-20 20:19:05 +02:00
d34efaeb81 All battle effects now use time-based timings 2023-01-28 13:19:35 +02:00
0e8ee929df Renamed CCursorHandler -> CursorHandler 2023-01-15 21:18:34 +02:00
a25214ae71 Fixes graphical artifacts on toggling stack queue visibility
Battlefield rendering now uses local coordinates
2023-01-05 14:16:01 +02:00
6b2490903d Fix casting of massive spells by creatures 2023-01-04 21:26:13 +02:00
d8c4209ded Movement animation is now more smooth at high animation speeds 2023-01-04 17:21:40 +02:00
ae3f6c5e79 Renamed PointEffectAnimation -> EffectAnimation 2022-12-25 21:39:55 +02:00
5b41ced427 Removed sound playback from PointEffectAnimation 2022-12-25 21:35:13 +02:00