Ivan Savenko
2c3e8c3390
Merge pull request #2168 from IvanSavenko/gui_handler_event_handling_refactoring
...
Event handling refactoring
2023-05-23 15:08:10 +03:00
Ivan Savenko
956ff22e64
Merge pull request #2163 from IvanSavenko/adventure_map_zoom
...
Adventure map zoom
2023-05-20 13:35:53 +03:00
Ivan Savenko
f4d67fe675
Restore SDL_main in CMT.cpp
2023-05-20 01:51:49 +03:00
Ivan Savenko
0e70f2998f
SDL event handling is now done exclusively in input handler
2023-05-20 01:51:49 +03:00
Ivan Savenko
1f513fd280
Extracted event management from GuiHandler and CIntObject
2023-05-20 01:51:49 +03:00
Ivan Savenko
be2e101c8c
Fix map freeze on enemy turn
2023-05-19 13:22:18 +03:00
Ivan Savenko
872b68c59a
Implemented zoom reset shortcut (backspace)
2023-05-17 14:54:19 +03:00
Ivan Savenko
9e3bc87a6b
Allow zooming with mouse wheel
2023-05-17 00:49:24 +03:00
Ivan Savenko
3e9da333cf
Basic version of zoomable adventure map
2023-05-16 23:42:51 +03:00
Ivan Savenko
ad3e54e6c0
Reduced usage of topWindow() method
2023-05-16 21:57:45 +03:00
Ivan Savenko
e2ef136003
Renamed "Int" -> "Window" in WindowHandler API
2023-05-16 19:10:22 +03:00
Ivan Savenko
7838190ef4
Moved window stack management from GuiHandler to new class
2023-05-16 19:10:21 +03:00
Ivan Savenko
03df274450
Framerate manager is now in a separate file and private member of GH
2023-05-14 22:22:37 +03:00
Ivan Savenko
64cc246358
Fix positioning of console log overlay
2023-05-13 18:00:14 +03:00
Ivan Savenko
c5a48a01ce
Remove no longer used code
2023-05-09 13:10:33 +03:00
Ivan Savenko
edd5d11734
Fix issues discovered by self-review
2023-05-09 13:10:33 +03:00
Ivan Savenko
c01b74434c
Fix cancelling spellcast with escape
2023-05-09 13:10:33 +03:00
Ivan Savenko
243773b6ef
Renamed some adventure map files & classes
2023-05-09 13:10:33 +03:00
Ivan Savenko
b1bd49ecd8
Fix main menu resize on resolution change
2023-05-09 13:10:33 +03:00
Ivan Savenko
ca15bf5698
Added autoselection of in-game console log width
2023-05-09 13:10:33 +03:00
Ivan Savenko
8b27780c11
Fixed scrolling blocking with Ctrl
2023-05-09 13:10:33 +03:00
Ivan Savenko
a6fda031ed
Fixed widget disabling during enemy turn & spellcasting
2023-05-09 13:10:33 +03:00
Ivan Savenko
7228b08d1d
Implemeted runtime generation of player-colored background texture
2023-05-09 13:10:33 +03:00
Ivan Savenko
342ea138f9
Fix remaining graphical artifacts on switching from world view
2023-05-09 13:10:33 +03:00
Ivan Savenko
8e320d8454
Fixed world view mode
2023-05-09 13:10:33 +03:00
Ivan Savenko
5ae507505a
Fixed toggleable buttons (sleep/wake & subterra/surface)
2023-05-09 13:10:33 +03:00
Ivan Savenko
a0f1bf3928
Implemented user-selectable UI scaling mode
2023-05-09 13:10:33 +03:00
Ivan Savenko
fd3933e589
Support for changing resolution without game restart
2023-05-09 13:10:33 +03:00
Ivan Savenko
97426a3f7c
Implemented disabling of buttons based on condition
2023-05-09 13:10:33 +03:00
Ivan Savenko
d4098059b8
Proper support for player-colored buttons in UI
2023-05-09 13:10:33 +03:00
Ivan Savenko
7aacba6e55
Fix adventure map left-clicking
2023-05-09 13:10:33 +03:00
Ivan Savenko
019d7b6811
Integrated shortcuts into adventure window configuration
2023-05-09 13:10:33 +03:00
Ivan Savenko
0000541291
Fixed map rendering
2023-05-09 13:10:33 +03:00
Ivan Savenko
18a66a4376
Rename method to better name
2023-05-09 13:10:33 +03:00
Ivan Savenko
d96edd9f56
Added larger town list for higher resolutions
2023-05-09 13:10:33 +03:00
Ivan Savenko
4958190e82
Fixed visibility of corner gems
2023-05-09 13:10:33 +03:00
Ivan Savenko
a015bf6507
Initial part of dynamically-sized adventure map:
...
- removed no longer used CConfigHandler
- remove no longer use resolutions.json
- moved widget management from adventure map to a separate class
- adventure map layout is now loaded from config
2023-05-09 13:10:33 +03:00
Ivan Savenko
dea10e6091
Use more descriptive names for hotkeys
2023-05-01 17:59:20 +03:00
Ivan Savenko
a654cc2391
Removed vstd::advance. Added vstd::next to handle similar cases.
2023-05-01 17:58:18 +03:00
Ivan Savenko
832e56e005
Implementation of (very basic) shortcuts system
...
- Added EShortcut enumeration that contains all in-game shortcuts
- CIntObject::keyPressed now receive values from hotkey enumeration
- On keypress, SDL key code will be translated to shortcut ID
- Removed access to SDL key codes from most of engine
2023-05-01 17:58:17 +03:00
Ivan Savenko
fb739e7186
Merge beta -> develop
2023-04-26 22:48:08 +03:00
Ivan Savenko
80b37a3019
Fixed remaining regressions
2023-04-20 22:19:10 +03:00
Ivan Savenko
bb08a0afc8
Moved selection logic to player state
2023-04-20 22:04:24 +03:00
Ivan Savenko
e8718a46cc
Fix regressions
2023-04-20 22:04:24 +03:00
Ivan Savenko
dd227d24c3
Formatting and cleanup
2023-04-20 22:04:24 +03:00
Ivan Savenko
365f552fa1
Added API for owned towns access
2023-04-20 22:04:24 +03:00
Ivan Savenko
5cbd0f8fc8
API for wandering heroes access
2023-04-20 22:04:24 +03:00
Ivan Savenko
3eac6f323e
added API for sleeping heroes access
2023-04-20 22:04:24 +03:00
Ivan Savenko
6a46138617
Moved current selection to local state class
2023-04-20 22:04:24 +03:00
Ivan Savenko
f6d480cbb2
Moved player-specific heroes & towns information to new class
2023-04-20 22:04:24 +03:00
Ivan Savenko
4a169972f0
Further refactoring to cleanup code of advmap and locplint
2023-04-20 22:04:24 +03:00
Ivan Savenko
20de44d4a5
Reodered methods in file to group similar code
2023-04-20 22:04:24 +03:00
Ivan Savenko
7db67a3101
int3 now has proper hasher function
2023-04-20 22:04:24 +03:00
Ivan Savenko
4ec32e4dcd
Renamed CAdvMapInt to its proper full name
2023-04-20 22:04:24 +03:00
Ivan Savenko
f1902ab247
Initial refactoring to encapsulate adventure map
2023-04-20 22:03:28 +03:00
Ivan Savenko
5c9ae8aafc
Implemented spell range overlay for Dimension Door and Scuttle Boat
2023-04-20 14:15:08 +03:00
Konstantin
7a5775a9f9
vcmi: use std::optional
2023-04-17 00:43:13 +03:00
Ivan Savenko
dfa2e2a349
Merge beta into develop
2023-04-11 19:37:35 +03:00
Ivan Savenko
e2d0cd37e4
Merge pull request #1910 from IvanSavenko/beta_fixes
...
Fixes for 1.2 branch
2023-04-09 20:09:03 +03:00
Ivan Savenko
4d37686eb3
Merge pull request #1901 from rilian-la-te/disable-info-bar-scroll
...
InfoBar: disable scrollbar
2023-04-08 19:12:48 +03:00
Ivan Savenko
0abc00f82e
Fix assertion failure in in-game console
2023-04-08 18:53:47 +03:00
Konstantin
50c9a57133
InfoBar: fix tiny selection with data
2023-04-08 01:44:08 +03:00
Konstantin
f8c15f3a4b
InfoBar: disable scrollbar
2023-04-07 20:50:47 +03:00
Konstantin
11b237a23c
vcmi: massive refactoring v1
2023-04-05 22:33:12 +03:00
krs
a8f13bb927
Add RALT key check for movement info
2023-04-01 00:20:51 +03:00
Adriankhl
8c5c943da9
Show movement cost immediately after pressing left alt key
2023-03-31 17:48:31 +02:00
Ivan Savenko
339bbce7b7
Added more checks to avoid potential nullptr dereference crash
2023-03-25 23:54:51 +02:00
Ivan Savenko
a8fe8c0f3b
Converted timer event into tick event that is called every frame
2023-03-22 23:10:50 +02:00
Ivan Savenko
c81d57ab8c
Remove excessive totalRedraw's
2023-03-22 00:57:08 +02:00
Ivan Savenko
bb03abdce6
Fix crash on switching players in hotseat
2023-03-21 19:06:38 +02:00
Konstantin
5462a92930
Fix #1688 again
2023-03-18 01:19:41 +03:00
Ivan Savenko
21407b26dd
Fix minimap redraw on fow reveal
2023-03-16 18:36:31 +02:00
Ivan Savenko
a0e9e01b48
Renamed & reorganized all game mechanics settings names
2023-03-16 18:11:35 +02:00
Ivan Savenko
383387ef29
Integrated defaultMods into mod system
2023-03-16 17:55:09 +02:00
Konstantin
4ab9cdd75a
infobar: fix tiny rendering
2023-03-15 14:35:34 +03:00
Ivan Savenko
e1310f88e3
Merge pull request #1675 from rilian-la-te/scholar-infobox
...
Fix #1385 and similar
2023-03-13 12:49:30 +02:00
Konstantin
40222e3f77
vcmi: fix week animation
2023-03-13 01:22:19 +03:00
Konstantin
18200d1d98
vcmi: move getEstimatedComponentHeight
2023-03-13 00:24:26 +03:00
Konstantin
3d33da0a9e
vcmi: request pop all when hero is moved
...
This way new pickup will show immidately.
2023-03-11 21:41:57 +03:00
Konstantin
de211e9f13
vcmi: all notifications now shows inside the infobar properly
...
No more dangling images or text.
2023-03-11 21:41:57 +03:00
Konstantin
bc228a938a
vcmi: use enum class for EComponentType
...
There is really no reason not to use it
2023-03-11 21:41:57 +03:00
Konstantin
1ca89c8492
vcmi: implement splitting by ID in infobar
...
This will get a much better result than naive sorting
2023-03-11 21:41:57 +03:00
Konstantin
a6cb7fd192
vcmi: allows to more than 8 components in infobar
2023-03-11 21:41:57 +03:00
Konstantin
a0c644a0e5
vcmi: actually implement AUTO for CInfoWindow
...
This is possible to use infobar interactions now.
2023-03-11 21:41:57 +03:00
Konstantin
75358a68a7
vcmi: name infobar height and width
2023-03-11 21:41:57 +03:00
Konstantin
4617ce10e5
vcmi: allow showing more than one components in infobar
...
Up to 8, AFAIK. So, we can show multi-reward in infobox now.
One issue remain - cannot dynamically choose components size
based on text size.
2023-03-11 21:41:57 +03:00
Konstantin
2fb2a79ca4
vcmi: fix components other than resources in infobar
...
Do not redraw infobar when components shows and
we request to show current adventure hero.
Player already knows which hero he used to pick up
components.
2023-03-11 21:41:57 +03:00
Konstantin
5366f9190e
vcmi: reduce boost::lexical_cast usage
2023-03-09 16:36:46 +03:00
Adriankhl
368def1609
Fix sleep/wake button, now the icon is updated properly after left click
2023-03-07 13:51:05 +01:00
Ivan Savenko
7ef5163d9d
Merge pull request #1581 from IvanSavenko/map_render_rewrite
...
Adventure Map - rendering rewrite
2023-03-05 19:51:07 +02:00
Ivan Savenko
c328aadfed
Update hero paths on new day
2023-03-05 18:02:59 +02:00
Ivan Savenko
b61cae5b37
Fixed minor issues discovered during testing
2023-03-05 18:02:59 +02:00
Ivan Savenko
58aa5c0427
Formatting
2023-03-05 18:02:59 +02:00
Ivan Savenko
b57a07b10f
Restored ambient sounds functionality
2023-03-05 18:02:59 +02:00
Ivan Savenko
cdcd5a29dd
Updated path to renamed directory
2023-03-05 18:02:59 +02:00
Ivan Savenko
b9e55db223
Minor fixes
2023-03-05 18:02:59 +02:00
Ivan Savenko
6196d538e7
Fix terrain tooltip
2023-03-05 18:02:59 +02:00
Ivan Savenko
45e2875342
Completely removed old TerrainRect class
2023-03-05 17:57:36 +02:00
Ivan Savenko
b9056ef248
Moved swipe handling to TerrainRect class
2023-03-05 17:57:34 +02:00
Ivan Savenko
0282e6dad0
Attempt to improve caching
2023-03-05 17:48:02 +02:00