1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-28 08:48:48 +02:00
Commit Graph

3242 Commits

Author SHA1 Message Date
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
nordsoft
41e652dad2 Move buttons blocks at proper place 2022-11-25 14:36:17 +04:00
nordsoft
ebb65b5d0e Prevent multiple clicks 2022-11-25 14:26:59 +04: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
Andrii Danylchenko
0ccb706782
Merge pull request #1155 from Nordsoft91/fix-camp-919
Fix for #919
2022-11-25 11:43:25 +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
cb6fe1eedf Moved battle effects into a new class 2022-11-24 16:30:04 +02:00
nordsoft
aead3854b9 Fix for campaign advance 2022-11-23 02:06:43 +04:00
nordsoft
2de168b3fe Do not reconnect for lobby mode 2022-11-22 03:36:50 +04:00
Nordsoft91
3133c238b8 Merge pull request #1146 from IvanSavenko/ray_projectile
Implemented ray-like projectiles for shooters
2022-11-22 03:36:50 +04:00
Ivan Savenko
e6afd8621c Minor improvements & fixes to music player
- music will be selected correctly after rapid leaving and reentering
town screen
- music sets are now store as single std::map instead of unnecessary
"map of maps"
- fixed computation of resume time for restarted/looped music tracks
- updated & clarified some comments
- converted C functions for SDL_Mixer callbacks into lambdas
- formatting fixes
2022-11-21 16:20:20 +02:00
Ivan Savenko
61eca7e3be Hotfix: erase stored music position once it has been used
Fixes infinite loop on attempts to resume music track from position
larger than music duration
2022-11-20 23:42:50 +02:00
Ivan Savenko
02fe0425c7 Moved battle actions handling into a separate class 2022-11-20 22:56:42 +02:00
Ivan Savenko
b01737daf2 Moved stacks & animations handling into a separate class 2022-11-20 19:11:34 +02:00
SoundSSGood
e6e669d024 ArtifactUtils::isSlotBackpack() func + refactoring 2022-11-18 23:13:44 +02:00
SoundSSGood
30bbb57619
Apply suggestions from code review
Co-authored-by: Nordsoft91 <nordsoft@yahoo.com>
2022-11-18 22:15:03 +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
nordsoft
625c18a889 Fix #3234 2022-11-18 04:05:35 +04:00
SoundSSGood
e9ab894638 backpack assemble 2022-11-18 01:55:29 +02:00
SoundSSGood
16b650136a backpack disassemble 2022-11-18 01:27:39 +02:00
Ivan Savenko
3c5858f01e Separated battlefield background&hexes handling into a new class 2022-11-17 23:57:51 +02:00
SoundSSGood
2d078132bf assemble in backpack initial 2022-11-17 19:43:54 +02:00
Ivan Savenko
9c2a6dc9fc moved battle obstacle handling into separate class 2022-11-17 19:36:25 +02:00
Ivan Savenko
a65dd0726d Separated siege-related part of BattleInterface into separate class
- added constants for BattleHex'es of castle towers
2022-11-17 18:50:12 +02:00
Ivan Savenko
bd1b2e4977 Battle Interface refactoring: separated projectile handling into a
separate class (untested)
2022-11-17 13:21:03 +02:00
Ivan Savenko
0b7edd471c
Merge pull request #1128 from IvanSavenko/movement_fix
Fix #1088 - Refactoring of hero movement animation code
2022-11-17 13:05:15 +02:00
Nordsoft91
1893212abb
Merge pull request #1146 from IvanSavenko/ray_projectile
Implemented ray-like projectiles for shooters
2022-11-16 22:45:00 +04:00
Ivan Savenko
b3067c0e3f Attemts to improve timing of ranged attacks:
- when computing number of steps/frames to display projectile round to
nearest instead of rounding down
- end projectile animation only *after* last step was shown
2022-11-16 17:53:40 +02:00
Ivan Savenko
d1c95204c5 Code formatting 2022-11-16 12:29:07 +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
nordsoft
915d215076 Fix connections amount problem 2022-11-15 22:09:47 +04:00
nordsoft
e7a8466e2b Merge remote-tracking branch 'upstream/develop' into lobby 2022-11-15 22:09:46 +04:00
Andrii Danylchenko
6974d4ea53
Merge pull request #1130 from IvanSavenko/banned_skills_fix
Fixes #1096 - do not propose banned skills on levelup
2022-11-15 09:32:12 +02:00
Andrii Danylchenko
8b964be71f
Merge pull request #1111 from GermanAizek/develop
Code refactor and fix condition bug
2022-11-15 09:23:16 +02:00
lainon
7fdad4e0f6 Code refactor following C++ standard and condition fixes 2022-11-15 03:20:55 +03:00
Ivan Savenko
729357824b Added common method for secondary skill availability checks 2022-11-14 19:08:49 +02:00
Andrii Danylchenko
b6bcfec329
Merge pull request #1129 from IvanSavenko/new_day_sound_fix
Fixes #825 - do not wait for new week dialog in single-player
2022-11-14 17:45:57 +02:00
Ivan Savenko
4fe8ff9b01 Fixes #825 - do not wait for new week dialog in single-player 2022-11-14 15:53:07 +02:00
Ivan Savenko
153315e8c3 Refactoring of hero movement animation code
Replaced ancient and obscure code that had separate routines for each
possible movement direction with generic version.
Fixes #1088 which apparently was due to bug in one of these routines
2022-11-14 12:32:40 +02:00
Andrii Danylchenko
86972d7164
Merge pull request #1112 from SoundSSGood/bulk-move-swap-artifacts-rev2
Bulk move and swap artifacts rev2
2022-11-14 08:31:48 +02:00
Andrii Danylchenko
38f36fa720
Merge pull request #1127 from IvanSavenko/resume_music
Fix #985 - resume town & terrain themes
2022-11-13 21:18:46 +02:00
Ivan Savenko
2324148187 Fix compilation using older SDL library 2022-11-13 14:59:28 +02:00
Ivan Savenko
38b8fc0af8 Formatting: space -> tabs 2022-11-13 14:24:15 +02:00
Ivan Savenko
4af9bc2461 Music: remember playback position of music tracks
Town & terrain themes will now resume from previously stopped position
instead of playing from start, as it was in original game.
Fixes #965
2022-11-13 14:05:51 +02:00
Andrii Danylchenko
41825e8c92
Merge pull request #1125 from GermanAizek/fix-3144
Fix [3144]
2022-11-13 09:00:03 +02:00
lainon
79bc82af63 Fix [3144] 2022-11-13 05:35:16 +03:00
nordsoft
56757bb5c2 Pass port from client to server for ios 2022-11-11 18:35:40 +04:00
nordsoft
eeeca5ba8d Add additional logging 2022-11-11 18:00:09 +04:00
SoundSSGood
3142f32cbb Fix for callback return. More code optimization 2022-11-11 01:28:04 +02:00
SoundSSGood
9647758812 Apply suggested changes next part 2022-11-10 23:24:41 +02:00
SoundSSGood
6e5932c016 Apply suggested changes next part 2022-11-10 21:02:06 +02:00
SoundSSGood
ad47a7573c Code style. Typo. Code clean up. 2022-11-10 18:29:39 +02:00
nordsoft
8871c7abbd Attempt to fix ios build 2022-11-10 16:02:11 +04:00
nordsoft
6406157038 Attempt to fix ios build 2022-11-10 14:53:12 +04:00
nordsoft
0ad06af593 Attempt to fix ios build 2022-11-10 14:08:19 +04:00
nordsoft
b3aa87fe10 Attemp to fix ios build 2022-11-10 12:48:17 +04:00
nordsoft
16ab5f9e02 Revert "Attempt to fix ios build"
This reverts commit eab8abef67.
2022-11-10 05:14:19 +04:00
nordsoft
eab8abef67 Attempt to fix ios build 2022-11-10 04:27:26 +04:00
nordsoft
9ffc50457a Bypass command line args to vcmiserver 2022-11-08 18:05:47 +04:00
nordsoft
17d8c646f2 Command line arguments for ios 2022-11-08 05:02:26 +04:00
nordsoft
97e5fc8a07 Lobby works 2022-11-08 04:44:34 +04:00
SoundSSGood
ff63167553
warnings fixed 2022-11-07 18:31:22 +02:00
SoundSSGood
3a3b559a0b attempt to fix the build 2022-11-07 14:20:28 +02:00
SoundSSGood
203c54e956 BulkMoveArtifacts structure optimization 2022-11-07 14:13:36 +02:00
nordsoft
7b6d9c23b3 Attempt to pass lobby parameters as command line arguments 2022-11-07 13:44:58 +04:00
SoundSSGood
0032947735 regression fixed. Artifact assemble dialog shows multiple times. 2022-11-07 00:36:13 +02:00
SoundSSGood
f72a3e3884 function ArtifactUtils::checkSpellbookIsNeeded for the artifacts like a Titan's thunder 2022-11-07 00:18:05 +02:00
SoundSSGood
95ab343116 Net Packs BulkMoveArtifacts structure and BulkMoveArtifacts::applyCl 2022-11-06 23:54:50 +02:00
SoundSSGood
d0895e30ef callback functions and cleaning up unused code 2022-11-06 23:41:29 +02:00
nordsoft
0eb74b85c9 Merge remote-tracking branch 'upstream/develop' into lobby 2022-11-07 00:23:20 +04:00
nordsoft
dffd7c0f24 Fix crash related to V hotkey during AI turn 2022-11-04 18:29:45 +04:00
nordsoft
6995911d6e Preventing multiple AI from being created 2022-11-03 22:01:20 +04:00
nordsoft
e21c2a02ce Merge remote-tracking branch 'upstream/develop' into lobby 2022-11-02 18:33:33 +04:00
nordsoft
52b3b329a4 Fix [965] 2022-11-01 19:16:45 +04:00
nordsoft
1c84cc4521 Merge remote-tracking branch 'upstream/develop' into lobby 2022-11-01 16:30:27 +04:00
nordsoft
27bff89e66 Write port override 2022-10-30 19:59:43 +04:00
nordsoft
dd45d1a9cf Develop game part 2022-10-25 05:27:53 +04:00
Andrii Danylchenko
c2cc801f60
Merge pull request #1073 from kambala-decapitator/ios-conan
[Conan] add iOS support, bump dependencies, improvements
2022-10-22 12:40:48 +03:00
Andrii Danylchenko
288f36c0c3
Merge pull request #1052 from Nordsoft91/mp-disconnection
MP handle disconnection
2022-10-19 09:56:18 +03:00
Andrey Filipenkov
409ab51036 [iOS] workaround having TBB symlink in NullkillerAI’s RPATH
AltStore doesn't sign symlinks
2022-10-18 20:50:38 +03:00
Andrey Filipenkov
f10e5e3b99 [Conan] add iOS support 2022-10-16 13:25:38 +03:00
nordsoft
297f518eb0 Code review tweaks 2022-10-13 00:18:15 +04:00
nordsoft
ea49b8cf40 Cleanup code 2022-10-06 17:56:54 +04:00
nordsoft
16e185343a Add host commands to control game 2022-10-06 15:54:46 +04:00
nordsoft
895ec2d302 Make console available during other players' turn 2022-10-05 19:04:51 +04:00
nordsoft
3ff38b84a2 Support hotseat over multiplier 2022-10-05 01:54:31 +04:00
Andrii Danylchenko
b83a40db87 #1054 - fix crash and UI 2022-10-04 21:54:14 +03:00
nordsoft
930f03e812 uuid check 2022-10-04 20:54:40 +04:00
nordsoft
83f4a5b561 Use host and port from config 2022-10-04 18:45:54 +04:00
nordsoft
a9ad583158 Restore AI controlled player for client disconnection 2022-10-04 18:11:12 +04:00
nordsoft
0ea5a8fbe7 Merge remote-tracking branch 'upstream/develop' into mp-disconnection
# Conflicts:
#	server/CVCMIServer.cpp
2022-10-04 17:41:43 +04:00
nordsoft
722acb2a1d Reconnection works 2022-10-04 05:42:14 +04:00
nordsoft
16a5414247 Reconnection partially works 2022-10-04 05:09:03 +04:00
nordsoft
b91bb41a80 One step forward 2022-10-04 02:25:22 +04:00
Andrii Danylchenko
04490b709a
Merge pull request #1000 from vcmi/multiplayer
Multiplayer
2022-10-03 20:16:39 +03:00
nordsoft
512cf014aa Freeze current state 2022-10-03 20:47:00 +04:00
nordsoft
f4b7cf8196 Transfer player ownership to AI 2022-10-03 20:47:00 +04:00
nordsoft
135be21f07 Fix another crash with disconnecting hero 2022-10-03 20:47:00 +04:00
nordsoft
628abd1428 Fix campaign serialization 2022-10-03 01:48:03 +04:00
Andrii Danylchenko
3600d09ece
Merge pull request #1034 from kambala-decapitator/save-last-mp-address
restore last used address in Multiplayer join dialog
2022-10-02 10:04:46 +03:00
Andrii Danylchenko
d07586ccf6
Merge pull request #1022 from kambala-decapitator/apple-set-app-version
[Apple] set proper app and build versions
2022-10-01 20:48:37 +03:00
Andrii Danylchenko
5f5a259974
Merge pull request #1013 from kambala-decapitator/ios-chat-text-enter
use SDL's standard input handling for in-game console
2022-10-01 19:50:15 +03:00
Andrii Danylchenko
34ef0efa74
Merge pull request #1029 from kambala-decapitator/options-highlight-current-resolution
highlight current resolution in the resolution selector in game options
2022-10-01 18:32:17 +03:00
Andrey Filipenkov
8f51a8756b restore last used address in Multiplayer join dialog
in all other cases (when machine is host) hardcoded localhost address is displayed
2022-10-01 17:41:12 +03:00
Andrey Filipenkov
ebeff94130 inherit CHeroWindow from CStatusbarWindow for proper status bar support 2022-10-01 11:21:16 +03:00
Andrey Filipenkov
c9ae43abe8 highlight current resolution in the resolution selector in game options 2022-10-01 10:33:48 +03:00
Andrii Danylchenko
5b72284aba
Merge pull request #1023 from kambala-decapitator/unlock-advmap-after-battle-result
unlock adventure map UI after closing battle result dialog
2022-10-01 09:17:03 +03:00
Andrii Danylchenko
a2dbb6c8ac
Merge pull request #978 from kambala-decapitator/hide-unsupported-resolutions
Hide unsupported resolutions
2022-09-30 17:34:07 +03:00
nordsoft
3621b05682 Rename variable 2022-09-30 18:28:17 +04:00
Andrey Filipenkov
c4c2e03b6e fix typo 2022-09-30 15:06:56 +03:00
Andrey Filipenkov
4de0300c76 unlock adventure map UI after closing battle result dialog 2022-09-30 15:06:50 +03:00
Andrey Filipenkov
7801a2ad85 [iOS] show app and bundle version in system settings 2022-09-30 12:52:45 +03:00
Andrey Filipenkov
8e066a00bc [iOS] set bundle version to date-commit 2022-09-30 12:51:47 +03:00
Andrey Filipenkov
3f61e6f964 [iOS] allow setting custom app name 2022-09-30 12:33:37 +03:00
Andrii Danylchenko
4835387004
Merge pull request #1015 from kambala-decapitator/prohibit-dig-while-waiting
prohibit digging while waiting for your turn to start
2022-09-30 08:39:48 +03:00
nordsoft
8a8716ce8a Pass loaded game over network too 2022-09-29 21:33:44 +04:00
nordsoft
b888e640f3 Fix compilation 2022-09-29 21:18:30 +04:00
nordsoft
fea05a4320 Finally game restart works
# Conflicts:
#	lib/CGameState.cpp
#	server/CVCMIServer.cpp
2022-09-29 21:08:05 +04:00
Andrii Danylchenko
dae726b82d
Merge pull request #1005 from kambala-decapitator/ios-min-12
raise iOS deployment target to 12.0
2022-09-29 19:57:04 +03:00
DjWarmonger
58a3abb643
Merge pull request #963 from vcmi/terrain-rewrite
Terrain rewrite
2022-09-29 18:24:05 +02:00
Andrii Danylchenko
878aabd4d6
Merge pull request #981 from kambala-decapitator/fix-analyzer-warnings
Fix Clang Analyzer warnings
2022-09-29 19:23:24 +03:00
Andrey Filipenkov
836d7dc2d6 prohibit digging while waiting for your turn to start 2022-09-29 15:52:28 +03:00
Andrey Filipenkov
8c8394b6ed fix passing coordinates of the status bar when triggering in-game console input 2022-09-29 13:24:23 +03:00
Andrey Filipenkov
593df25df5 [iOS] use SDL's standard input handling for in-game chat 2022-09-29 13:23:15 +03:00
Andrey Filipenkov
e8a1709fc4 fix typo in file name 2022-09-29 12:47:31 +03:00
Tomasz Zieliński
20c102e648 Remove T prefix from new typedefs 2022-09-29 11:44:46 +02:00
nordsoft
0eb589fb58 Load map by itself 2022-09-29 00:09:18 +04:00
nordsoft
2eb497b477 Looks like everything works 2022-09-28 23:38:41 +04:00
nordsoft
7ee4fca120 Pass whole gamestate over network 2022-09-28 23:15:05 +04:00
Tomasz Zieliński
475f835769 More style tweaks 2022-09-28 11:38:08 +02:00
Andrey Filipenkov
76b36b8951 iOS can use any resolution 2022-09-27 11:56:12 +03:00
Andrey Filipenkov
6e6bf1e77b don't list resolutions larger than the current screen's in the game options 2022-09-27 11:56:12 +03:00
Andrey Filipenkov
f0b909f772 code improvement 2022-09-27 11:56:12 +03:00
Tomasz Zieliński
f386f42166 Merge remote-tracking branch 'origin/develop' into terrain-rewrite
# Conflicts:
#	lib/Terrain.cpp
#	lib/Terrain.h
#	lib/battle/CBattleInfoEssentials.cpp
#	lib/rmg/ObstaclePlacer.cpp
#	lib/rmg/RiverPlacer.cpp
2022-09-27 07:50:17 +02:00
Andrey Filipenkov
1dc7ccb7d0 remove declaration of non-existent function 2022-09-27 07:06:17 +03:00
Andrey Filipenkov
53ac61b52b iOS: don't create unused CConsoleHandler 2022-09-27 07:05:10 +03:00
Andrey Filipenkov
70c51e4370 iOS: don't compile unused function 2022-09-27 07:01:16 +03:00
Andrey Filipenkov
802147c5b7 add some asserts that shouldn't fire 2022-09-26 14:06:55 +03:00
Tomasz Zieliński
25f66097cc Handle RoadType by value / reference 2022-09-26 10:20:39 +02:00
Tomasz Zieliński
f804f8a326 Store RiverType by value, handle by reference 2022-09-26 09:51:36 +02:00
Tomasz Zieliński
11dd71515a comment 2022-09-26 09:18:01 +02:00
Tomasz Zieliński
2bd30556a3 Store TerrainType by havlue and handle by reference 2022-09-26 09:17:55 +02:00
Tomasz Zieliński
cd3a1a02c2 More style tweaks 2022-09-25 21:47:44 +02:00
Andrii Danylchenko
27dbee6069
Merge pull request #975 from Nordsoft91/incomatibility-response
Incompatibility response
2022-09-25 18:26:02 +03:00
Andrii Danylchenko
d6c2d05376
Merge pull request #992 from kambala-decapitator/msvc-ai-dlls
[MSVC] place AI dependencies into the right location at build time
2022-09-25 17:53:16 +03:00
Andrii Danylchenko
127a7e6653
Merge pull request #959 from kambala-decapitator/fix-cursor-attack
fix cursor image on hover when there're multiple creatures nearby
2022-09-25 17:44:10 +03:00
Andrey Filipenkov
3286eb613d [msvc] move AI dll dependencies to the main bin dir after build 2022-09-25 14:09:09 +03:00
Andrey Filipenkov
96c2db4d56 remove useless variable 2022-09-25 13:13:37 +03:00
Nordsoft91
d4f97aadf0
Merge branch 'develop' into incomatibility-response 2022-09-25 13:26:07 +04:00