Commit Graph

381 Commits

Author SHA1 Message Date
9aed4b418f Several small bugfixes
- Wrong image in generic lever dialog
- Crash in adventure notes dialog
- Incorrect spell costs shown on second page of spellcasting dialog
- Enable messages in "if context" node, but only for legacy scenarios
- Fix recorded dialogue not working
- Fix special items leaking between scenarios
- Fix training dialog
- Fix scenario editor sometimes crashing on scenarios that it wrote itself
2016-09-26 20:23:09 -04:00
59b68dc78d Remove a mostly-redundant static array 2016-09-15 22:28:44 -04:00
4cbd0d3013 New toolbar buttons for placing boats and horses; replaces the edit boats/horses dialogs 2016-08-25 21:28:42 -04:00
aecbea01a4 Fix incorrect fire barrier icon in help dialog 2015-10-15 15:42:48 -04:00
e2a88873e7 Minor improvement to "save legacy scenario" dialog. 2015-10-12 14:11:54 -04:00
d19880a463 Stop storing preferences and legacy flags in the saved game
- Nuke global preference variables (they're now fetched with get_xxx_pref whenever needed)
- Nuke magic SDFs that store preferences and other info
- The only preferences now stored in the saved game are those related to difficulty
- play_sound no longer takes an option repeat parameter, but instead takes a delay which will be used if sounds are disabled
- SDF array increased to 350x50
- When saving a legacy scenario, a dialog is shown to remind you to update and to allow you to clear the legacy flag
2015-10-06 22:17:25 -04:00
f8deb48edb Add keyboard shortcuts to the death dialog and the quit confirm dialogs 2015-10-04 18:47:17 -04:00
5e8530969d Update Erdos's name in the credits, at his request 2015-10-03 23:56:11 -04:00
d908cdff9c Tweak Vahnatai PC traits and add Magery item ability
- Vahnatai no longer have a bonus to mage spells (that's now the Magery item ability)
- Vahnatai XP gain bonus changed
- Fix sliths being noted as resistant to poison (they aren't and never have been)
2015-10-03 23:55:52 -04:00
547e78dc86 Minor fix to about dialog 2015-10-03 12:30:47 -04:00
8b90fa614b Make stack control a real container instead of a controller
- Also add framed/outlined attributes to it and to LED groups
2015-10-03 12:30:26 -04:00
b176918dda DialogXML: Make the frame style format parameter a first-class citizen
- It's now exposed in the schema with a new attribute, outline, on all elements that accept framed
- It now has four possible values: solid, outset, inset, double. Dashed or dotted may be added later; they're a lot harder.
- Second make scenario dialog uses a custom frame style
2015-10-03 11:13:33 -04:00
8b5396c980 Remove all def-key='enter' in favour of defbtn attribute
In addition, the default button is finally properly outlined when specified with the defbtn attribute.
(It would also be outlined if specified with def-key='enter'.)
The following preset buttons (available to special nodes) now respond to the enter key:
- "Leave", "Done", "OK"
2015-10-03 03:40:48 -04:00
da58f09fca All dialogs now use default skin and foreground colour
(The attributes are still available in the schema though, and will not be removed.)
2015-10-03 03:00:22 -04:00
893fa1e4ff Dialog formatting
- Newlines at end of file
- Remove debug attribute
- Indentation in the XSL
2015-10-03 02:50:44 -04:00
84dc913241 Improve dialog preview XSL sheet
- Now uses apply-templates, meaning output is in the same order as input
- Fully accounts for stack and pane, including adjusting coordinates
2015-10-03 02:33:40 -04:00
03bc3d05e6 Remove key-mod attribute from dialog schema
- Modifiers are now given in the def-key attribute, as originally intended
- Dialogs that have a help button now assign F1 to that button (replacing shift+/ in some cases)
- F1 also brings up help in the main game (in addition to shift+/)
2015-10-03 00:53:32 -04:00
0f273eba7e Fix resize outdoors dialog using the dark skin 2015-10-03 00:07:08 -04:00
5f7654046d Update About Blades of Exile dialog
- Some text in this update contributed by ADoS

Also:
- Make scroll panes scroll 5 pixels per click instead of 1
- Make scroll pane page size depend on the height
2015-10-02 18:46:21 -04:00
a455941d92 New scroll pane control in the dialog engine
Also:
- Use a scroll pane for the credits in the about dialog, so that new credits can be added without altering other elements
- Use a scroll pane for the list of sections to be deleted in the resize outdoors dialog
- New cContainer superclass for controls that contain other controls
- Scrollbars consider their maximum as part of their state
2015-10-02 17:03:25 -04:00
f6183cad63 Separate "Splits When Hit" from "Immune to Assassinate" 2015-10-01 22:53:32 -04:00
1222cb57f5 Move Set Town Start to Town menu and make it work the same as Set Out Start
- Also fix problem with initial starting town in new scenarios (it was uninitialized)
2015-09-27 14:50:00 -04:00
249e0e0027 Add UI for scenario init special and hail townsperson special 2015-09-24 10:13:36 -04:00
152fd6a3ed Typos 2015-09-20 22:20:47 -04:00
21a797fc03 Fix arrow keys activating buttons in edit monster dialog 2015-09-14 23:30:58 -04:00
71584d4401 Remove obsolete commented doctype declarations from dialogs 2015-09-13 14:32:03 -04:00
47217b12b0 Several new status icons
- Remove staticonhelp.png in favour of placing this information directly in the relevant help dialog definition
- New status icons for enlightenment, magic attract, forcecage, hyperactivity, flight, detect life, firewalk, stealth (replacing the BoA-sourced ones)
- Status icons for fear, drunkenness, charm (none of which are currently implemented as PC status effects)
2015-08-31 13:22:15 -04:00
960e4cdf23 Remove map and text bar patterns, move dither patterns to separate sheet 2015-08-31 11:37:27 -04:00
9ad0681205 Fix scenario editor build 2015-07-07 19:07:02 -04:00
6cc9e81a7b Widen spellcasting dialog so that Weak Summoning fits 2015-07-05 08:32:06 -04:00
aa72575270 Fix Show PC Spells dialog and the Alchemy button in PC Info 2015-07-05 08:31:30 -04:00
26cb146d4f Fix magic/identified mixup in item info dialog 2015-07-05 08:03:27 -04:00
973e765efd Fix Set SDF dialog (debug mode / PC editor)
- No longer crashes when pressing enter
- Enter now sets the SDF, escape exits the dialog
2015-07-04 17:02:29 -04:00
2d73bb01ae Nuke oopsError and out-dated "can't load game" error dialogs 2015-07-03 18:11:03 -04:00
c045c315aa Add a missing referenced dialog 2015-06-30 22:12:12 -04:00
74273783b9 Misc little things
- Some item abilities didn't appear in the editor ability selection dialog
- If have (+take) nodes took by default (ie when left at -1)
- Rename button in edit terrain dialog, as the old name barely fit
2015-06-30 12:53:42 -04:00
5a3637c370 Now you can hold Alt while starting a scenario to skip party creation
(Only if party not loaded)
2015-06-30 12:49:01 -04:00
7fd6c85e37 Update status icon help to include new icons 2015-06-28 12:15:40 -04:00
a0ec2490c7 Fix text overflow in edit outdoor encounter dialog 2015-06-26 22:03:28 -04:00
ef0cdebec4 New editor commands: Resize Outdoors and Import Sector
This includes the following changes (mostly related to the above):
- Move loc_compare functor to location.hpp
- Add reattach() function to rebind a town or outdoor section to a different scenario object. (I don't think this is strictly necessary, as the scenario reference is only used in limited situations in the game itself, not in the editor, but it's better not to keep a reference to freed memory around when importing a town or sector from another scenario, even if the reference is never accessed.)
- Fix imported towns not being officially "loaded" until you explicitly use Load a New Town to reload them
- Fix Choose button in Load New Sector dialog
- More functions in the vector2d implementation
2015-06-25 23:55:55 -04:00
8a4e7a7a72 Mass fix use of curly quotes in dialogs 2015-06-24 16:00:15 -04:00
2951e0228c Tweak New Scenario dialog and add Save As option
- You now specify your name instead of the scenario filename in the first dialog
- A file dialog pops up after the second dialog, to let you choose the filename and location
- Fixed using Warrior's Grove even if you chose not to
- Fixed not recognizing .EXS as a valid legacy-scenario extension and appending .boes, resulting in .EXS.boes
- Adjust Difficulty scenario flag set on by default
2015-06-24 14:43:41 -04:00
9d74f78df3 Implement all the missing parts of the Edit Sheets and Edit Sounds dialogs
- On load, the game now detects graphic sheets and sounds whose IDs are "discontinuous", as well as graphics intended to directly replace preset graphic sheets.
- Edit sheets dialog can now handle "discontinuous" graphics. (The edit sounds dialog already could.)
- Edit sheets dialog prompts user to create a new sheet if there are none already, and also if there are some but not ID 0 (in the latter case they can cancel and still edit the sheets).
- Edit sheets dialog prompts user to convert sheets if the scenario is legacy, rather than doing it silently
- Edit sheets dialog now has "new" and "delete" buttons
- Edit sounds dialog now has functioning "delete" button
2015-06-17 04:29:10 -04:00
580f70f49a Add a dialog in scenario editor to import/export custom sounds in WAV format 2015-06-17 01:03:17 -04:00
e055b97c9f Add dialog allowing you to alter the scenario's graphics sheets from within the scenario editor
- You can copy/paste images into the sheet, or import/export to/from png files

Also:
- Picture controls in the dialog engine have a new "scaled" flag; if set, the picture will be scaled into the provided bounds rather than overflowing. Currently, only full sheets honour the setting.
2015-06-15 16:20:03 -04:00
a990921e90 Several tweaks/fixes
- Nuke some uses of strcpy, sprintf, etc; current info strings in the scenario editor are now stored as std::string instead of C-strings.
- A smarter method of calculating the "erase" terrain for a given terrain type. In case of impassable spaces, trims, and walkways, instead of using the ground terrain, the trim terrain (if any) is used as the erase terrain; if there's no trim, ground 0 (cave, by default) is used. The method of determining if two terrains are essentially the same (ie, whether to paint or erase) has also been improved a little.
- Also, to reduce confusion, the erase terrain is now shown beneath the paint terrain.

Terrain changes:
- Add "archetype" flag as a better way of determining which amongst a set of terrains sharing the same ground type should be considered as the most basic terrain of that ground type. It's automatically applied to any terrains using original graphics when importing an old scenario; generally, any with no terrain special will be marked as an archetype, but if the lava graphic was used, it's instead any with a terrain special. It's a crude method that may easily break, but probably not possible to do better.
- When importing old scenarios, set the two walkways to be separate ground types while the crops should have grass as their ground, and the conveyors have cave.
- Fix fly, boat, block horse LEDs not being cleared if a terrain lacks that flag when using the arrow buttons. This could lead to terrains accidentally picking up the flags of nearby terrains in the list.
- Fix the block horse flag was not correctly saved when closing the dialog.
- Fix the block horse flag not being correctly loaded from the scenario file
2015-06-11 22:32:28 -04:00
2d9c3ba2d9 Remove the arbitrary limits on the following quantities:
- Number of terrain types - as long as the last terrain in the list is unused, you can delete it
- Number of monster types - as long as the last monster in the list is unused, you can delete it
- Number of item types - as long as the last item in the list is unused, you can delete it
- Number of special items
- Number of strings (scenario, journal, outdoors, town)
- Number of signs (outdoors, town)
- Number of description rectangles (outdoors, town)
- Number of town entrances (outdoors)
- Number of dialog nodes (town); number of personalities per town is still limited, but since you can use personalities from any town and the number of towns is unlimited, you still have effectively unlimited personalities

Other related stuff:
- Fix ability to select nonexistent terrains/items/monsters from the palette
- Fix inability to find unused special strings in some cases
- Fix sometimes incorrectly selecting the current node as the next node in the chain, instead of a new node
- When cancelling from the special node dialog, it's a bit more intelligent about whether or not to drop nodes from the end of the list
- Edit string dialog now has a cancel button
- Save otherwise unused talk nodes if they contain strings, to avoid loss of data that might be important
- Fix scenario and journal strings loading incorrectly if some strings were blank
- Fix some issues with list modes activated by menu not appearing until the mouse moves over the window
- Fix incorrect instructions in list modes (it's alt-click, not command-click as the instructions indicated)
- Implement "erase town entrance" button and create a visual difference between town entrances with an assigned town and those without
- Fix inability to erase monsters after the first 60 in town
- Fix escape key accepting changes in the shop dialog, instead of cancelling
- Fix quest/shop list resetting to top after editing one
2015-06-08 22:14:47 -04:00
58fbf3b287 Lots of monster stuff, particularly documenting monster abilities
- Monster radiate abilities can now specify a spell pattern to use
- Fix some abilities being incorrectly shown in the editor's ability details dialog (for example, radiate abilities were shown as "Summon aid")
- Add the recently-added monster missile types to the options offered in the editor
- Fix chance of activating not being editable for the martyr's shield ability
- Show the monster summoned for summoning abilities (finally!)
- Show the subcategory for unusual abilities (one of active, passive death)
- Fix the displayed percentage chance for summon abilities (the permille was shown instead)
- Fix incorrect action point display in the editor for the two recently-added monster missiles
- Fix crash when editing a missile ability
- Fix abilities page not showing the newly-added or recently-edited ability after exiting the detail/option dialog
- Fix pick monster button for summoning abilities being off by one
2015-06-06 21:03:35 -04:00
510da3cf72 Update terrain dialog and some other tweaks/fixes
- Fix documentation of how to format map graphics, to match the logic in the code
- Fix display of map graphics both on the automap and in dialogs
- Add Choose button to select the map graphic
- Fix the vanishing text bug again (this time it only triggered for fields with a single character in them)
2015-06-06 02:51:30 -04:00
aaf3443900 Add choose buttons for the SDF fields in rectangle special nodes 2015-06-05 02:48:05 -04:00