Commit Graph

103 Commits

Author SHA1 Message Date
3d7f8f1d2a style fixup 2020-02-20 23:41:55 -05:00
12bde373b1 Refactor dialog parsing to reduce code duplication
- Refactor dialog format parameter management to use a single protected control function
- Format parameters "frame" and "frame style" merged
- Colour is now a first-class format parameter (though it still has a separate setter)
2020-02-20 23:41:40 -05:00
3c748ca071 Fix node step-thru mode remaining active if debug mode disabled 2020-02-19 23:35:50 -05:00
x-qq
b4bb2dce13 restore click_shop_rect until a better functionality is available 2020-02-11 15:49:49 +02:00
x-qq
158de40ce3 Fix unclickable shop info icons 2020-02-11 11:35:14 +02:00
xq
1d23a55131 Cleanup variable usage that used to be bool 2020-02-11 04:33:34 +02:00
xq
4711871a1c Adjust damage_pc to report damage values as well 2020-02-11 04:24:17 +02:00
xq
9b3db0a5ab Fix incorrect damage values in transcript 2020-02-11 04:06:07 +02:00
6c6b24b297 A little graphics reshuffling
- Pointing arrows moved from terscreen to invenbtns
- Target mark moved from trim to invenbtns
- Road pieces moved from trim to fields
- Diagonal pointing arrows added
- trim is now a monochrome image
2020-02-09 23:12:35 -05:00
760a172526 Some style tweaks 2020-02-09 18:24:09 -05:00
deac7b0cb6 Merge pull request #251 from x-qq/fix_scrollbar_segfaults
fix for scrollbar segfaults

* fixes #206
* fixes broken mousewheel scrolling of the scenedit palette
* removed boost threads dependency
* added foundation for further refactoring of the drawing and event handling code: interfaces and drawable manager with layering
* removed a bunch of unneeded redraw calls
* removed some repeated recalculation of effectively constant values (boe.actions)
* removed recalculation of effectively constant scrollbar and button positions (boe.graphics)

Closes #251
2020-02-09 15:55:51 -05:00
b8492a29b0 Extract shopping/talking colours to global constants
Adapted from patch by @clort81
2020-02-07 20:39:13 -05:00
2a34447ab5 Merge pull request #252 from x-qq/fix_211 2020-02-05 23:54:56 -05:00
bcf3208eed Merge pull request #253 from x-qq/fix_barrier_animation 2020-02-05 23:50:55 -05:00
xq
60eece4b60 Fis Escape button not closing the minimap
fixes #211
2020-02-06 06:46:46 +02:00
xq
43d274f532 fixed barrier animation 2020-02-06 06:34:33 +02:00
357cd2e165 Fix 3-choice dialogs using "Stay" instead of "Leave" for the cancel button 2020-02-04 22:26:06 -05:00
66252fbc53 Substitute some cases of SFML B&W with BoE B&W
Requested by @clort81 to ease making a build with a custom colour scheme
2020-02-04 20:15:10 -05:00
2520f56fb0 I suppose it's a little cleaner to have separate modes for bashing a door and picking a lock 2020-02-04 00:34:01 -05:00
aad9918f13 Remove the explicit assignment of mode numbers
Also remove MODE_CUTSCENE, which is unused and may never be used since the
cutscenes implementation ended up using something else.
2020-02-04 00:25:43 -05:00
37e10ed3ad Make missile animations slower
They were running at max frame rate, making them too fast to see on most modern machines.

Except the 5ms increment, this patch is from @x-qq
2020-02-04 00:20:55 -05:00
72bd8265fa Game modes cleanup
- Fix some cases where modes were still referenced by number
- Replace most cases of mode range-comparison with is_out(), is_town(), and/or is_combat()

There could be some minor errors in the replacements.
2020-02-04 00:02:08 -05:00
7e73a21f5c Add "Add Item" and F1 menu key accelerator on Linux
Patch from @x-qq

Closes #195
2020-02-02 22:38:42 -05:00
511b1858a3 Fix Windows build and tests 2020-02-02 22:32:33 -05:00
c4c201db6e Implement the most important menu key accelerators for Linux
Patch from @x-qq
2020-02-02 21:40:58 -05:00
ddd3c8f13d Fix game border not clickable 2020-02-02 19:35:55 -05:00
86d2574aed Some refactor of special node system
- Context type (town/out/scen) is now an enum
- Don't expose internals in the header
- Use a state struct to pass things around through the system
- Fix special AFFECT_DEADNESS case for default party selection
- Maybe other bits and pieces?
2020-02-02 19:12:45 -05:00
973b147a3d Eliminate fake clicks when pressing space bar 2020-02-02 12:37:50 -05:00
0734ec69b6 Eliminate fake clicks for stat window switching
Fixes #217
2020-02-02 12:11:41 -05:00
3df4a2223e Fix broken keyboard shortcuts 2020-02-02 12:11:41 -05:00
6ff18342ef Check Anama trait before Pacifist trait when casting mage spells 2020-02-01 22:41:02 -05:00
91da0ed4d0 Update references to the online documentation 2020-02-01 22:28:25 -05:00
be28588c92 Enable spellcasting items to work with spells that require a PC target
In particular, this allows Nirvana and Augmentation to work.
2020-02-01 22:19:02 -05:00
e9e6581632 Simplify some stuff with a reference 2020-02-01 22:17:14 -05:00
f9f4d5671c Factor out the framerate limiter into a class
Patch from @x-qq
2020-02-01 21:03:56 -05:00
3e686cb908 Tweak text colours to be less blindingly bright and closer to the original Mac BoE 2020-02-01 19:55:30 -05:00
5675ab8c71 Add menus to Linux character editor
Patch from @x-qq
2020-02-01 19:55:30 -05:00
ef734d60d3 Fixes for Linux build 2020-01-30 00:57:50 -05:00
589d919f13 Some tweaks and comments to try and satisfy @x-qq, plus fix scons build 2020-01-30 00:48:34 -05:00
4859fa70bc Factor out the game toolbars into a class.
This includes the following related or incidental changes:
* Remove the win_from_rects global variable. With one minor exception, they were all equal to the relevant render texture's size anyway.
* Split out time advancement from the handle_action function into a separate function
* Split out each individual button action into its own function
* Thanks to the above two, button actions triggered from the keyboard (and menu spells) no longer pass thru handle_action
* Side-effect: keyboard shortcuts and menu spells no longer trigger the button press animation
* Button presses now behave like proper buttons
* Button clicks are now grouped by effect in the handling code, rather than by index
* Removed a variable that mysteriously caused dialogue to become blank
2020-01-30 00:00:40 -05:00
1d61d48ec3 Enable UI scaling in the scenario and implement Linux menus
Patch from @x-qq
Addresses #195

Note: UI scaling for the scenario editor still needs some work,
but it's basically functional.
2020-01-28 20:13:24 -05:00
c2cdeb4990 Fix broken (un)equip clicks 2020-01-27 20:00:41 -05:00
726c46687b Make sure inventory item graphics don't overflow onto the border 2020-01-26 20:29:52 -05:00
d530abe00b Make use of the new resource manager's purgeable flag 2020-01-26 16:14:39 -05:00
a2e73a0223 Fix small item icons being shrunk even further in the inventory screen 2020-01-26 16:07:12 -05:00
14e2597108 Expose the shared pointer instead of the raw pointer in the resource manager and rewrite the custom sheets list to use a vector instead of manual memory management
In particular, this should fix a segmentation fault in the sound system caused by the resource manager pulling a resource that's in use.
2020-01-26 15:10:57 -05:00
542c037342 Integrate a new resource manager which should have better performance 2020-01-26 11:53:19 -05:00
29ef8b9c1e Refactor the game event loop and add menus to the Linux build
Patch from @x-qq
Addresses #195
2020-01-25 17:57:32 -05:00
cf3f20ffcc Clean up outdoor wandering monsters function, removing a useless parameter 2020-01-19 16:25:35 -05:00
166965fdd0 Fix merge error (calling show_logo twice) 2020-01-19 15:55:59 -05:00