Commit Graph

66 Commits

Author SHA1 Message Date
5b7649543f Merge race and monster type enums 2014-12-03 18:27:34 -05:00
7a2a0f93d3 Finally, a working parser!
--> At least, it parses the sample file correctly

- I reverted the choice of using a skip parser, because it was failing and I couldn't figure out why. This means there's a lot of *ws where whitespace can go.
- Grammar rearranged a little
2014-12-03 05:03:10 -05:00
d1a8db9b70 Sample nodes file, more semantic actions
- Note: This parser is still untested.
2014-12-02 17:07:39 -05:00
01f0a62160 Define a grammar for special node definition files 2014-12-02 15:59:38 -05:00
d61c0a5c1e Convert five more dialogs and fix the string choice dialog
(The latter was always returning 0)
2014-12-02 09:44:21 -05:00
d64770b1e0 Use folder references for strings and dialogs.
This means I won't have to remember to explicitly add each new file to the build.
It also means they'll be automatically kept sorted.
2014-12-01 22:51:18 -05:00
73c3430f05 Argh! How did I forget to commit this file? 2014-12-01 22:13:42 -05:00
c62ac56702 More enumeration in the schema instead of arbitrary integers 2014-12-01 20:11:45 -05:00
3a1de0c890 Strictify item variety enum 2014-12-01 14:46:17 -05:00
84f53a8a7d Dialog tab order implementation
- Defaults to order of definition in file
- tab-order attribtue can be set to a postive number to force towards the start, or a negative number to force towards the end
2014-11-29 16:03:54 -05:00
13d00cd27a Convert the edit special item dialog 2014-11-29 12:12:01 -05:00
c5b1416c33 Whoops, forgot that file 2014-11-29 03:21:40 -05:00
6f73841764 Schemas for monster, item, and terrain definitions 2014-11-29 03:20:07 -05:00
c855983de4 Convert item type editing dialogs 2014-11-29 02:13:49 -05:00
bc7d1a3772 Simplification 2014-11-28 16:22:43 -05:00
5d1697c206 Schema for town dialogue 2014-11-28 16:22:33 -05:00
6e2e6d31a1 Schema for outdoors definitions 2014-11-28 15:10:35 -05:00
c1c4ce4b5c Forgot area description rects 2014-11-28 14:41:44 -05:00
d96ef5713b Move entry and wandering locs to the map data 2014-11-28 14:38:35 -05:00
d3c640b782 Formalize scenario ratings 2014-11-28 14:31:01 -05:00
b64cc7b8c6 Add xml extension 2014-11-28 14:19:26 -05:00
1a9f85da29 In the scenario file, rects require all four attributes 2014-11-28 14:11:03 -05:00
f21ef07111 Formalize schema for town definition file 2014-11-28 14:10:40 -05:00
de7489d47d Forgot storage shortcuts, also validate language codes 2014-11-28 12:07:42 -05:00
fbb0b70626 Formalize scenario schema
- Except ratings, those still need to be formalized
2014-11-28 11:58:58 -05:00
7d287769ab CRLF-->LF 2014-11-28 11:57:19 -05:00
07ff864f4b Convert monster abilities dialog 2014-11-28 02:19:07 -05:00
41c3396aa3 Tear out most of the legacy code in the scenario editor - see below for details
- All Carbon code is gone
- Many dialogs converted; some are still left unimplemented since they still need to be converted
- Menus converted to a xib file
- The giant arrays specifying the configuration of the special node dialog for each special node type have been replaced with maps and sets.

Changes to dialogs:
- pict choice dialog can now show picts of differing types; this was required for picking a monster graphic, as monsters of all sizes need to be shown in the same dialog
- string choice dialog can set the title, and properly shows the currently selected string
- LEDs now accept font format
- Fixed LED group's calculation of its rect
- Fixed LED group crashing if it has no selection
- Tabbing between text fields now works
- Fix display of larger monster graphics in dialogs
- Fix the script element content showing in the browser preview
2014-07-12 22:13:27 -04:00
bbc9667c88 Fix unwanted transparency in some of the monster graphics 2014-04-25 22:41:40 -04:00
a4430cdf5a Fix spellcasting and dynamic menus
- Spell targeting line and array draws nicely, though not the same as the original
- Fix targeting falsely complaining about being off the edge of town
- Monster info dialog works properly; attacks now display correctly
- Fix dialogs always showing the wrong terrain or monster graphic
- Spell menus, monster menus, and PC editor item menus all work
- Spellcasting dialog now chooses the correct spell
- Fix out-of-place LED in spellcasting dialog
2014-04-22 02:06:31 -04:00
446bb1550d Some more tweaks to cursor handling
- Fix cursor turning into a sword during universe shifts
- Hide cursor along with menubar during splash screen
- Add watch cursor, used during splash screen
- Properly restore cursor after a dialog
- Use sword cursor for dialogs
- Show ibeam cursor in dialog text fields
- Move everything cursor-related out of graphtool
2014-04-21 13:47:52 -04:00
002ee640da Remove the global TextStyle; this should fix some of the textual glitches 2014-04-21 01:49:07 -04:00
b960139d6b Populate item menus in PC editor (they're not functional yet though) 2014-04-17 03:37:44 -04:00
9463ecf2fe Add a few resources for future use:
- Graphics for scrollbars
- DejaVu Sans Book, for "plain" text (to replace Geneva Regular)
- Capriola Regular, for "bold" text (to replace Silom which replaced Geneva Bold)
2014-04-17 02:45:01 -04:00
f449b47f36 Fix a lot of bugs in the PC editor
- Alchemy dialog had black text on dark background
- Buttons didn't depress when clicked
- Edit XP button just said "Edit"
- Two menuitems in Special Edit menu had been left with default names
- Callbacks in Special Edit and Free Extras menu weren't correctly assigned
- Edit XP dialog put the XP to next level in the wrong place
- Fixed alchemy dialog LED naming

Supporting changes in the dialog engine:
- Getting or setting control text as a number now uses the long long type to allow maximal precision
- When adding a label to a button, the dialog's default text colour is used instead of the button's text colour if the dialog's background is dark
2014-04-17 02:24:35 -04:00
eb2e8f3536 Fix button label in one of the PC editor dialogs 2014-04-16 17:50:16 -04:00
199f84e0db Make dialog preview stylesheet default to dark background 2014-04-16 17:49:13 -04:00
caa461f8e7 Tear out most of the legacy code in the PC editor - see below for details
(Scenario Editor is unaffected by this commit.)

- Menubar converted to a .xib file
- Don't include the Info.plist in "Copy Files" stage
- Several more dialogs converted; as before, the source resources have had their resource name changed to the new filename
- One more converted STR# has been included

There were several functions in the PC Editor code that also existed in the BoE game code. I've moved these into the pc.editors.cpp file, so that there's only one copy of each.
- display_alchemy() functions changed signatures
- moved keyToChar() function into a common file (winutil)
- Several constants and globals moved to pc.editors.cpp

Supporting changes to dialog framework:
- New formatting option to set the frame style; this because the PC editor uses a different frame style in some contexts
- Added global default dialog background setting
--> This was necessary to correctly set the default text colour
--> Will also be needed for the scenario editor, which uses a different default background

Other changes:
- Add option to load_scenario to skip loading the strings
- Fix for crash in soundtool in the event of initialization before playing the first sound
2014-04-16 17:07:08 -04:00
2ae75df4a7 Fix the blue arrows for look mode 2014-04-14 22:15:33 -04:00
48f3335160 Fix "missing" Done button in PC info dialog
- Also fix wrong resource name - the pc-spell-info DITL was mistakenly named pc-info
2014-04-14 15:51:30 -04:00
dd02dcc5d3 Realign PC spell list dialog 2014-04-14 15:51:30 -04:00
7b194c26ba Fix mage/priest spell buttons in PC info dialog being labelled with the level of the skill 2014-04-14 15:51:30 -04:00
152f828e44 XSL dialog preview now shows default-state LEDs 2014-04-14 13:55:53 -04:00
8d76aed26c Add preferences option to skip splash screen on startup 2014-04-14 13:55:52 -04:00
85afa07382 Prefs dialog alignment tweaks 2014-04-14 13:55:52 -04:00
860305df91 Organize preferences dialog so that the elements are in display order 2014-04-14 13:55:51 -04:00
fccc1a8c54 Zap fancy apostrophes in strings and dialogs 2014-04-14 13:55:50 -04:00
f79a300e76 Fix incorrect ID in 2str dialogs 2014-04-14 13:55:49 -04:00
68c8ef7ba7 Import the TinyXML dependency into the repository 2014-04-14 13:52:03 -04:00
57abf3ab68 Make the XML validation phase check against the schema, and fixed all the errors it found 2014-04-14 13:52:03 -04:00