Commit Graph

603 Commits

Author SHA1 Message Date
39ed4eb1f3 while running, editor remember view states of towns and outdoors 2025-05-11 10:51:09 -05:00
21536fa1fa extract editor state vars in cScenario to a new struct 2025-05-11 10:51:08 -05:00
005d40806c Flesh out acid as a real damage type 2025-05-11 10:51:08 -05:00
e95d4dcaf8 Write editor state to a new, separate xml file (fix #728) 2025-05-11 10:51:02 -05:00
744a7eb591 don't write empty feature-flags tag 2025-05-11 10:51:02 -05:00
18f4f17943 +/- keyboard shortcuts for zoom 2025-05-11 10:50:04 -05:00
10791fc25a Fix SFX burst nodes. Fix #644 2025-05-11 10:49:54 -05:00
76d14741b8 Re-add old baby hydra graphic, make more monsters pickable 2025-05-11 10:49:52 -05:00
9b92cc2910 don't show empty preview dialog that the game would skip 2025-05-11 10:49:40 -05:00
31b425633a default preview for special node dialogs 2025-05-11 10:49:39 -05:00
20373acf68 pass parent to preview dialog 2025-05-11 10:49:37 -05:00
0911d35696 Fix preview town/outdoor dialog crash 2025-05-11 10:49:36 -05:00
e2e7907e1a example preview button for ONCE_DIALOG 2025-05-11 10:49:36 -05:00
203edc46f1 Scaffold for dialog previews in the scen editor 2025-05-11 10:49:35 -05:00
58107f1856 str("") is unsafe on its own for clearing stream 2025-05-11 10:49:27 -05:00
06624d810c try to fix linker errors without new globals 2025-05-11 10:49:23 -05:00
6f2ae680de declare map_visible to make editors compile
Please forgive me
2025-05-11 10:49:23 -05:00
7cce42ce12 Scenario editor can launch unpacked scenario 2025-03-30 11:51:09 -05:00
1ab5a9f5e9 move choose_status_effect to common code for a debug action 2025-03-19 19:31:22 -05:00
4bb83e6f59 Update labels for If Context node and add a picker for the spell when context is "targeting" 2025-03-17 19:37:49 -04:00
c73cb6220b Fix a crash when editing a special node. 2025-03-16 14:09:05 -04:00
bcf8bf963e Show road to the right of the toolbar when the road tool is active, like what happens with other field types. 2025-03-16 14:09:05 -04:00
4e736a7e93 Fix foreground terrain to the right of the toolbar being drawn as a tiny square when the item palette is active and an item with a tiny graphic is selected. 2025-03-16 14:09:05 -04:00
2fd35b1053 Rework the scenario editor toolbars.
* The rightmost column is now mostly dedicated to non-modifying operations – eyedropper and zoom are moved there, pushing the 3 palette buttons down in town mode.
* Set Starting Location and Set Town Boundaries moved from the menus into the toolbar.
* Place Same Creature and Place Same Monster removed, since placing a monster or creature no longer resets the mode, so you can place as many of the same one as you like.
* Erase Town Entrance removed – what is it even good for? Removing the entrance without removing the town terrain is nonsensical. A town entrance can now be erased just by painting over it.
* Copy Item, Copy Monster, and Copy Terrain added. The latter copies a rectangle of terrain.
* Paste Special is removed. Instead there's a generic Paste button which pastes whatever type of thing you copied last, whether it be a special, a monster, an item, or even some terrain.
* Horse and boat no longer share a row with road. Instead, some of the fields have been reshuffled, so now fields take up three rows (though not three complete rows)
2025-03-16 14:09:05 -04:00
61c4bfdc99 Add two new town sizes to the create town dialog.
Huge towns are a whopping 128x128 tiles and don't fit in the terrain view even when fully zoomed out.

Tiny towns are just 24x24 tiles.
2025-03-16 14:09:05 -04:00
96e92b1655 Allow selecting any preset terrain when creating a town.
The option of "grass with flowers" is removed. If you want that, select grass, then select frill up terrain.
2025-03-16 14:09:05 -04:00
ca07ef172b Rework base processing to be more generic.
It now makes no assumptions about the terrains that might be defined in the base scenario.
* The existing terrain in the base's outdoors (previously ignored entirely) is now partitioned into 9 segments and plopped down to form the border of the new scenario's outdoors.
* It treats the locations (23,23) amd (24,24) specially, assuming they contain a sign and a town respectively. These are left as-is in the top left sector but replaced with the base ground in every other sector.
* Since there are now two separate bases, one for cave and one for surface, no substitution of terrain is done in the starter town.
2025-03-16 14:09:05 -04:00
16703ae7a2 Don't implicitly call recalcRect() 2025-03-16 14:03:53 -04:00
5cfc6ba328 Fix all the compile warnings that occur on Mac.
(Except the OpenGL deprecation warning and some warnings coming from Boost.Process.)
2025-03-08 20:43:04 -05:00
44f1f449c2 Add a stub for the rectangle picker that hasn't been implemented. 2025-03-08 20:05:12 -05:00
e92904e153 Implement the quest picker for the special node editor, even though it's currently unused. 2025-03-08 20:05:12 -05:00
f58381d707 Fix sound picker overwriting the value even when you click cancel. 2025-03-08 20:05:12 -05:00
678518a053 Add a string editor for the Story Dialog special node 2025-03-08 20:05:12 -05:00
3c811ef43d Use SDF picker in Townperson Advanced and Outdoor Encounter dialogs 2025-03-08 20:05:12 -05:00
c032307280 Add picker buttons and a cancel button to the Set Variable Town Entry dialog
Partially addresses #685
2025-03-08 20:05:12 -05:00
c1303f6e97 Use the personality picker for the Start Conversation special node 2025-03-08 20:05:12 -05:00
b86ef8ae39 The special node dictionary now supports specifying different labels or pickers based on the value of another field. 2025-03-08 20:05:12 -05:00
628b0ee677 Add a new spell pattern picker.
The picker is used in the special node dialog and also in monster abilities.

Some changes were made to the game as well:
* If the rotatable wall is used for a field missile or touch ability, there's no longer an option for the designer to pick an orientation. Instead, it behaves like the rotatable wall in a radiate field ability, selecting an orientation based on the creature's facing direction.
* The magic values sent to place_spell_pattern for direct damage were rearranged to match the order of the eDamageType enum. This should have no effect, since the core place_spell_pattern function is only called by the various wrapper overloads. It also simplifies the code quite a bit.
* The Protective Circle spell pattern is now exposed to the place patten special nodes. It can be used as just a radius 4 circle, but the effect of different layers of fields can also be obtained by specifying a field type or damage type of -1.

There is also a change to the dialog engine:
* Calling setText() also implicitly calls recalcRect()
2025-03-08 20:05:12 -05:00
aad5460acb Implement the special version of the skill picker for the Has Enough of Statisic? node 2025-03-08 20:05:12 -05:00
50637d3ddd Use an editable string picker for job boards when editing quests or dialogue nodes 2025-03-08 20:05:12 -05:00
6e94d23e05 Add pickers to a bunch of dialogue nodes that didn't have them.
This also includes something similar to the special node button dictionary for dialogue nodes.
2025-03-08 20:05:12 -05:00
b546f9c5e5 Omit the Create New String option for sign and area rect strings, as creating one here would leave it orphaned 2025-03-08 20:05:12 -05:00
a1bc923de8 Remove the Edit Saved Item Rectangles menu item in favour of a toolbar button.
The limit of 3 saved item rectangles has been removed - you can now add as many as you want.
However, the 1 per town limit is now strictly enforced.

The saved item rectangle is now shown with a cyan border when editing town.
2025-03-08 20:05:12 -05:00
18294b4f1b make fancy file picker function game-specific 2025-03-07 08:43:16 -05:00
5696b97491 Fix Scenario Details 2025-03-06 20:17:23 -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
cf736d1835 animate fake damage only allow static booms 2025-03-05 19:27:10 -05:00
bb3937d40a New feature: dialogs with pictures can animate 2025-03-05 19:27:10 -05:00
7ceeb51c50 allow choosing animated booms in pict dlg 2025-03-05 19:27:10 -05:00
9b4af4e69c Let individual dialogs toggle pict animations 2025-03-05 19:27:10 -05:00