Commit Graph

44 Commits

Author SHA1 Message Date
73543caf49 Rename file to reflect its Mac-specific status 2015-09-13 11:56:13 -04:00
832b8b5f91 Set up scons build system
- In its current state, it produces a valid, launchable Mac application package, though one that's not redistributable (relies on system-installed libraries)
- Partial support is already in-place for a Windows build
2015-09-11 23:10:37 -04:00
13801e83ab Several tweaks/bugfixes
- Preview terrain step sound when selecting it
- Fix uninitialized start locations
- Fix missing strings in copy files build phase
- Fix mislabelled terrain flag 3 for Call Special When Used
2015-09-10 12:50:38 -04:00
0c7c64dfc9 Rearrange resource structure
- All resources are now under data/
- Editors and Blades of Exile Base are no longer in Scenario Editor subfolder
- User scenarios are now stored in %APPDATA% / "Application Support"
2015-09-03 19:26:19 -04:00
e3d2774946 Fix not relinking with static libraries when they were updated 2015-09-03 17:44:28 -04:00
8f4d5453cd Basic write tests for towns, dialogue, and outdoors sectors
Also:
- Additional read test for dialogue
- Don't save empty outdoor encounters
- Don't save town timers without an assigned node
2015-09-02 19:46:22 -04:00
78d14c0472 Add /Library/Frameworks to search path (apparently needed for XCode 6) 2015-08-30 22:24:00 -04:00
bbd47088e1 Basic test cases for reading town, dialogue, and outdoor records 2015-08-28 13:38:08 -04:00
2996ab39bb Fix git revision inclusion on Mac 2015-08-19 13:28:11 -04:00
8008ff6dac Show git revision on Blades of Exile title screen and in scenario editor 2015-08-17 23:13:44 -04:00
f4e7eea724 Basic tests for writing item, monster, and terrain definitions 2015-08-01 14:52:10 -04:00
7719d62773 Test cases for reading terrain, monster, and item definitions
- For monster attacks, 'd4' now means '1d4' instead of '0d4', and simple numbers without a 'd' are not accepted
- Pop string path after pushing it in the shop test cases
2015-07-29 15:25:19 -04:00
c957987b45 Tests for reading and writing map data
- Fix saving and loading boat/horse positions and property flag
2015-07-09 15:53:34 -04:00
42734c8599 Test cases to ensure the integrity of the enum stream operators 2015-07-07 14:48:49 -04:00
233e732f5b Update XCode project version 2015-07-07 14:01:44 -04:00
1f5a1118f8 Some test cases for saving scenarios, and fix some bugs they revealed
- Fix variable town entry and saved item rects not being saved if they referenced an invalid town
- Fix "blank" scenario timers being saved
- Fix junk data appearing in timers
- Output operators for location and rectangle types
- Set timer node_type to 2 when loading from town record
2015-07-01 18:05:42 -04:00
d8b4ee9c56 Start building some unit tests using Catch test library
- Current version of Catch is included in the repo at test/catch.hpp
2015-07-01 16:10:36 -04:00
4934bb220a Fix not bundling Boost.Thread in XCode build 2015-06-24 16:00:10 -04:00
525371fb81 Streamline XCode build by using static libraries for common sources
- Also clear out several obsolete build settings
- Disable optimization in debug build
2015-06-21 22:16:57 -04:00
41fb8bd056 XCode build is now completely warning free 2015-06-21 18:22:20 -04:00
f8193a32e7 Add missing Boost.Thread dependency to XCode project,
plus workaround for my old libc++.
2015-06-20 21:17:59 -04:00
9d59b80a5c Bundle all of SFML's dependencies in the application package,
and make sure they're actually found there.
Also, disable state restoration in the schemes.
2015-06-15 12:57:23 -04:00
f0e6e7ef24 Get the makefile basically working in producing an executable of the game
- tinyprint.hpp was renamed to tinyprint.h to conform to the pattern of the makefile rules
2015-06-14 23:32:51 -04:00
0798f98523 Symbolic I/O for more enums
- Nearly every enum that gets written to a file now uses a symbolic form rather than a numeric form. Input supports both forms.
- The special node type enum, however, no longer has a symbolic form output operator, as the only place it's output is in the special nodes file which uses the opcode.
- Collected some enums scattered around the files into one place in simpletypes.hpp
2015-06-13 15:43:29 -04:00
1a3543ebf6 Move resources out of the src directory 2015-06-09 08:37:53 -04:00
01d317b007 .h -> .hpp 2015-06-08 22:14:43 -04:00
aabfe40b00 Scenarios can now be opened in the editor by double-clicking them.
- Character editor also supports dropping saved games on the app icon
2015-06-05 19:42:45 -04:00
d398bfaa80 Implement undo/redo history for dialog text fields
- Also fixed a minor issue with pasting (the character before the insertion point was removed before pasting)
2015-06-05 15:07:28 -04:00
0cd844f8bb Bundle SFML.framework in the app package, since someone got an error that it was missing 2015-02-21 18:20:34 -05:00
Ben Scott
1477fef7ce Fixed warnings and IMPLEMENTED A THING in the menu item switch. 2015-02-12 01:47:48 -05:00
Ben Scott
6b275c9ed9 Little fixes 2015-02-11 21:00:47 -05:00
1894b31e20 Implement loading of scenarios
- This also tweaks the scenario schemas for consistency between schemas and code, adds some unique key restraints, and makes some attributes required.
2015-02-11 14:03:03 -05:00
0bfe08c0d9 Disable that one really annoying warning 2015-02-02 11:38:38 -05:00
07054eb465 Move most of the methods affecting specific status effects into the appropriate files
Other changes:
- PC-on-PC attacks now account for the target's dexterity, evasion items, and parry status
- Harmful spells that inflict a status effect now work if targeted on a PC
- Turn Undead, Dispel Undead, Ravage Spirit spells, when cast by a PC, now consider the possibility of undead/demon party members, and work if targeted on them
- Forcecage is now allowed for monster touch/ray abilities
- Items that inflict curses, slowing, or webs now account for items that grant resistance
2015-02-02 11:38:37 -05:00
99bb11dd3b Split up files so that the scenario editor will build
- cCreature split into seperate file-pair from cMonster/cTownperson
- fileio.cpp split into general, party, and scenario sections
- classes.h file deleted
2015-01-24 21:29:34 -05:00
144945587b Initial stage of major refactor - putting all PC/monster-affecting functions inside the respective classes 2015-01-24 20:02:20 -05:00
44a235673f Update XCode project's knowledge of the file encodings 2015-01-23 22:15:44 -05:00
d77baefcb5 Add new shop type and enhance existing ones a little
- Shops can now sell skill upgrades without skill point costs (currently available only through special node, not through dialogue)
- Spell shops now show level and spell point cost
- Alchemy shops now show ingredients
- Make use of the constants defined for indexing the shop rects
- Support for arbitrary quantities of items in shops, rather than simply infinite for normal shops and one for magic shops (there's no hook for this yet, though, so it can't be used)
2015-01-23 22:04:48 -05:00
bbbdccbd81 Fix PC editor build 2015-01-23 02:58:17 -05:00
0aec4c4c5d Create utility class for writing XML files to a stream 2015-01-13 17:32:36 -05:00
9f57f35428 Change .h -> .hpp in tools/ directory 2015-01-09 22:32:47 -05:00
3b1d083575 Move pictype enum to seperate file from pict control 2015-01-07 17:10:43 -05:00
fe98dec9f6 Clean up unused stuff in the XCode project 2014-12-30 23:23:56 -05:00
af0ee110c6 Rename osx directory to src since it's now the official source base 2014-12-28 12:12:38 -05:00