Andrey Filipenkov
db98575d10
fix unaligned memory access (UB) on Clang/GCC/MSVC
...
sample UBSAN report:
client/gui/CAnimation.cpp:329:24: runtime error: load of misaligned address 0x62d0004b094f for type 'const ui32' (aka 'const unsigned int'), which requires 4 byte alignment
2023-01-08 01:33:26 +02:00
nordsoft
e8845244f7
Fix tactic button
2023-01-03 13:02:54 +04:00
nordsoft
660d25a335
Make control panel configurable
2023-01-03 13:02:54 +04:00
Ivan Savenko
7a35bcc812
Merge pull request #1221 from IvanSavenko/warnings_fix
...
Fix remaining compiler warnings
2022-12-29 21:51:55 +02:00
Nordsoft91
785787e454
Merge branch 'develop' into interface-builder
2022-12-24 21:56:29 +04:00
Ivan Savenko
eb20a4b208
Merge remote-tracking branch 'vcmi/develop' into warnings_fix
2022-12-23 14:40:45 +02:00
Ivan Savenko
f073c676f9
Merge 1.1 release into develop
2022-12-23 14:17:18 +02:00
nordsoft
cb76cc54ac
Move logging to debug level
2022-12-22 02:08:26 +04:00
nordsoft
e245dbaf9d
Use kind-of-factory approach for widget builders
2022-12-22 02:05:29 +04:00
nordsoft
8f7025328f
Read default template from config, named custom types
2022-12-22 01:37:33 +04:00
nordsoft
7e7071fc95
Merge remote-tracking branch 'upstream/develop' into interface-builder
2022-12-22 01:24:29 +04:00
nordsoft
c7f430f051
Added debug lines
2022-12-22 01:13:32 +04:00
nordsoft
521328addd
Adding macros for targeted object binding
2022-12-22 00:54:06 +04:00
Ivan Savenko
b5925995b1
Fix transparency checks that were broken for palette images with alpha
2022-12-19 22:57:58 +02:00
Ivan Savenko
57dba9433c
Correctly update drag-and-drop cursor if our window gets deactivated
2022-12-18 14:34:38 +02:00
nordsoft
9b76a8000f
Making team alignments widget customizable
2022-12-17 20:38:16 +04:00
nordsoft
b1f2c7aed4
Team alignments implemented
2022-12-17 08:19:16 +04:00
nordsoft
268b87052b
Fix for hint
2022-12-16 02:49:52 +04:00
nordsoft
1d59dfecef
Support translations
2022-12-16 02:48:07 +04:00
nordsoft
d3c3feb037
Configurable template selection
2022-12-16 02:15:53 +04:00
nordsoft
1d4209d97e
Continue refactoring
2022-12-16 00:57:10 +04:00
nordsoft
2371e3e9a2
Interface builder refactored
2022-12-16 00:46:36 +04:00
nordsoft
2fe951f819
Merge remote-tracking branch 'upstream/develop' into interface-builder
...
# Conflicts:
# client/lobby/RandomMapTab.cpp
2022-12-15 04:47:11 +04:00
nordsoft
f90cb1be90
Template list prototype looks fine
2022-12-13 03:47:29 +04:00
Ivan Savenko
d40d5250b7
changes to status bar according to review comments:
...
- renamed IStatusBar API to more clear names
- removed "locking" of status bar
- added comments for IStatusBar API
- removed dynamic_casts to CGStatusBar, now IStatusBar API is fully
sufficient
2022-12-12 18:23:41 +02:00
nordsoft
690ff773f4
Remove files
2022-12-12 11:53:23 +04:00
nordsoft
cd58e8a860
Rename InterfaceBuilder
2022-12-12 11:48:39 +04:00
nordsoft
34bf741936
Fix compilation error
2022-12-12 11:43:54 +04:00
nordsoft
5e3504f578
Add improvements
2022-12-12 11:38:27 +04:00
nordsoft
3be9969154
Prevent crashes for custom config
2022-12-12 03:58:39 +04:00
nordsoft
0104c77d61
Interface builder for random map tab
2022-12-12 03:27:59 +04:00
Ivan Savenko
c302efd315
Fix crash on accessing not yet created object
2022-12-12 00:04:46 +02:00
Ivan Savenko
ac839ad26a
Changes to rest of the code according to review:
...
- renamed status bar method clearMatching -> clearIfMatching
- renamed class ColorShifterAddMul -> ColorShifterMultiplyAndAdd
- fixed missing return from function
- fixed potential access to deleted object
2022-12-11 23:43:43 +02:00
Ivan Savenko
7f5e5259c8
Changes to Canvas class according to review:
...
- renamed CCanvas -> Canvas.cpp
- replaced shared_ptr<Canvas> with Canvas&
- removed getSurface method
2022-12-11 22:09:57 +02:00
Ivan Savenko
c855823528
Renamed files in client/battle to match new names of classes
2022-12-09 13:38:46 +02:00
Ivan Savenko
facf77b3ae
vstd::unique -> std::unique
2022-12-07 23:36:20 +02:00
Ivan Savenko
6f6d350228
Formatting cleanup
2022-11-28 16:43:38 +02:00
Ivan Savenko
9f21569a79
Next batch of siege fixes
2022-11-27 22:50:18 +02:00
Ivan Savenko
e76cd1b6a7
Bugfixing: fix crashes on battle start & most noticeable glitches
2022-11-27 02:26:02 +02:00
Ivan Savenko
0cae259f53
Most of rendering in BattleInt is done via canvas
...
- refactoring of CBattleStacksController.cpp
- moved EAlignment enum to Geometries.h from CIntObject
- renamed EAlignment to ETextAlignment, to avoid conflict with good/evil
alignemt
- ETextAlignment is now enum class
2022-11-26 23:12:20 +02:00
Ivan Savenko
4f91b062db
Refactoring of projectile controller
...
- projectiles now separated based on type
- each type has its own rendering method
- refactoring of CShootingAnimation
2022-11-25 16:32:23 +02:00
Ivan Savenko
abb553d975
Next step of code refactoring:
...
- refactoring of CBattleFieldController code (except for 2 arcane
methods)
- introduced class CCanvas for encapsulated rendering surface
- battleint rendering is now partially done with CCanvas
- removed unused includes of CBitmapHandler
2022-11-25 11:46:47 +02:00
Ivan Savenko
6b3beb05e5
BattleInt split is finished, start of refactoring:
...
- Refactoring of siege controller code
- Replaced some usages of C struct SDL_Surface with proper c++ class
IImage
- Refactoring of rendering of battlefield objects (WIP)
2022-11-25 00:26:14 +02:00
Ivan Savenko
7a6ad671ab
Separated battle control panel into new class, refactoring of
...
CGStatusBar to allow shared API with battle console
2022-11-18 17:54:10 +02:00
Ivan Savenko
48be492517
Fix parameter order in case of right-to-left lines, formatting
2022-11-16 12:28:07 +02:00
Ivan Savenko
6678a747bb
Implemented ray-like projectiles for shooters
...
- Added missing support for ray-like projectiles
- Archmages, Evil Eyes and Beholders now use ray for shooting
- New method to draw 1 pixel-wide line with color gradient at arbitrary
angle
- fixed incorrect attackClimaxFrame field for Archmages
2022-11-15 21:42:16 +02:00
Andrey Filipenkov
3ab21d8491
show loading indicator when starting local server
...
single player or hosting a multiplayer game
2022-09-24 15:55:25 +03:00
Andrey Filipenkov
e1c9903a45
extract iOS helpers into a shared lib
2022-09-24 15:55:24 +03:00
Andrey Filipenkov
ff635edc0b
wrap all library code into namespace if VCMI_LIB_NAMESPACE is defined
...
preparation for having client and server in a single process
2022-09-24 15:55:21 +03:00
Andrey Filipenkov
217c83a7e7
convert text input rect to screen coordinates
...
workarounds SDL bug related to moving window ensuring that the input is always above the native keyboard
kambala-decapitator/vcmi#31
2022-09-24 15:55:19 +03:00