Commit Graph

671 Commits

Author SHA1 Message Date
d29093fcd8 Make cStack page forward/backward a member function 2025-03-07 08:31:36 -05:00
6c1e831e8e DRY getting location string 2025-03-07 08:31:36 -05:00
4ebb8e890c Make target-lock a feature flag 2025-03-06 21:35:48 -05:00
3e10e2923b Move camera to show the most possible targets in range 2025-03-06 21:35:48 -05:00
c9f79ba071 preferences add led for target-lock feature 2025-03-06 21:35:48 -05:00
9ca2f05c0b Don't display 'no item' response if another PC can shop. (#679)
These are the rules:

- If the active PC gets an empty shop, iterate from the first to last PC until finding someone who can see a shop item
    - If none can shop, show the 'no item' response
- When the active PC buys something, if this clears out the shop, iterate from the first to last PC until finding someone who can see a shop item
    - if none can see an item, stay on the empty shop of the PC that was active when the last item was bought.
- When shopping ends, if the shop interface was the last thing to change the player's active PC, it puts it back how it was.

Fix #669
2025-03-06 21:26:25 -05:00
14c36ed5a8 Debug action: crash the game 2025-03-06 21:24:07 -05:00
4cc6d7efb9 On catching fatal error, prompt to save the log and report 2025-03-06 21:24:07 -05:00
823fb8904d Set scale-aware text size when initializing the object 2025-03-06 21:23:57 -05:00
Nathan R
598fd4836a Fixed up: Move file-static RenderWindow and RenderTexture instances inside functions to fix GL race condition on startup (#682) 2025-03-06 19:40:40 -05:00
bb3937d40a New feature: dialogs with pictures can animate 2025-03-05 19:27:10 -05:00
9b05c23d15 Rework parentage and naming of dialog controls.
All controls now store a reference to their direct parent,
whether it be the dialog itself or a container control.

Every dialog control now has a guaranteed parent, which abstracts away
the three possible types of parents (dialog, container, and plain window).

The control name is now stored in the control from the moment it is parsed from the XML.
This means that it's set before the parseContent function, though after parseAttribute.
2025-03-02 19:13:01 -05:00
7cd48a44ee remove -> void where unnecessary 2025-03-02 01:15:53 -05:00
03b9bf5abf Confirm before debug-switching scenario 2025-03-02 01:15:53 -05:00
92f698cc57 Debug actions to quick-launch core scenarios 2025-03-02 01:15:53 -05:00
1d63e76c26 More buttons for debug help window 2025-03-02 01:15:53 -05:00
068e87ea39 Debug enter town: Move outdoor location. Fix #664 2025-03-02 01:15:53 -05:00
a7ba60a6d5 Allow limited debug mode in startup menu 2025-03-02 01:15:53 -05:00
f464526d0d preview_dialog_xml don't try to load empty filename 2025-03-02 01:15:53 -05:00
ad43e8ab81 Draw item scrollbar in boom_space. Fix #650 2025-03-02 01:13:53 -05:00
8973618dff Wait action: always print to buffer when can't 2025-03-02 01:13:30 -05:00
91f28d3c9d Fix menubar alchemy clicking 'Ask About' in talk mode 2025-03-02 01:13:30 -05:00
9dfc9e7287 DRY a frequently used buffer string 2025-03-02 01:13:30 -05:00
0afed5db59 A feature flag denotes whether a scenario uses the new or old format for its metadata. With the old format (legacy scenarios and openBoE scenarios created prior to this PR) everything displays in the scenario picker as before, and scenario designers get 2 text fields to display however they want, and 2 text fields that are pretty much useless.
With the new format, Author and Contact info are formatted onto the first line in the scenario picker display. The scenario designer gets 1 line to write a teaser.

Fix #593

Also fix a bug where scenario ratings were appearing as integers ingame instead of the correct "G", "PG", etc.
2025-03-02 01:09:03 -05:00
06abd20f8f make 'i' show inventory 2025-02-27 08:55:56 -05:00
a862c362fb Switch debug keys for clearing souls 2025-02-27 08:55:56 -05:00
04183c7fbe Fix summoning exported monsters 2025-02-27 08:55:56 -05:00
bbddbefa99 Debug action: clear trapped souls 2025-02-27 08:55:56 -05:00
f2869494bb Buffer message when no souls for simulacrum 2025-02-27 08:55:56 -05:00
36a9c237d7 fix pick buttons in simulacrum menu 2025-02-27 08:55:56 -05:00
b200dc2e20 Fix special item Use button 2025-02-23 21:04:32 -05:00
ca8da469e1 Debug give item: try give to active PC. Fix #635 2025-02-23 19:19:42 -05:00
c7ec0e3a85 Debug action: fill active PC's inventory 2025-02-23 19:19:42 -05:00
23adcac665 Debug mode: infinite PC turns 2025-02-23 19:19:42 -05:00
756324ad05 Exclude more invalid indices from damage_target 2025-02-23 19:11:30 -05:00
b505dc5852 Don't double-adjust boom text pos. Fix #127 2025-02-23 19:11:30 -05:00
942442ab26 Refactor: use damage_target() to remove repetitive if-else 2025-02-23 19:11:30 -05:00
3689adcc12 Fix text bar flicker. Fix #602 2025-02-23 19:09:53 -05:00
f92e7abe56 Only redraw textbar when text changes 2025-02-23 19:09:53 -05:00
d4675ed4c7 Refactor text-bar text calculation 2025-02-23 19:09:53 -05:00
6ff155434c don't access uninitialized sf::Event 2025-02-23 15:09:32 -06:00
32e644b9f5 some actions shouldn't be recorded in every context 2025-02-23 15:09:32 -06:00
f601678f33 replay handle_victory must pass force 2025-02-23 14:09:52 -06:00
13532fe09a update unused key list 2025-02-23 09:38:26 -06:00
651348cf7e record debug end scenario 2025-02-23 09:38:25 -06:00
60b178d6e8 Debug action to save out (and keep saving) the log in memory 2025-02-23 09:38:23 -06:00
64702b3a88 support for recording replay in memory 2025-02-23 09:38:22 -06:00
5ee8f91f5d fix replay show_debug_help 2025-02-23 09:38:22 -06:00
99f3cdc1c4 Fix party invisible outdoors 2025-02-20 20:03:13 -05:00
9bfe8e3f12 -1 is supposed to be no face pic (#645)
Fix #74
2025-02-20 20:02:56 -05:00