Commit Graph

2117 Commits (12684f65bd29538a00f9592ad54975cf8e0dfdbc)

Author SHA1 Message Date
lethosor e2b6ae9beb Allocate Lua PenArray objects using an existing buffer 2015-03-28 11:27:47 -04:00
lethosor 99f4ea4d2b Implement a PenArray class for caching parts of rendered screens 2015-03-27 22:56:30 -04:00
lethosor ac2f537bf4 Merge branch 'async-zoom' into develop 2015-03-26 19:41:02 -04:00
Lethosor ee16c6d1ab Fix "delete" in console on OS X/Linux 2015-03-25 23:31:23 -04:00
lethosor 7f98a632ce Update xml 2015-03-25 17:58:00 -04:00
lethosor 01c6d05775 Add custom enabler::zoom_display() method (screen.zoom in Lua) 2015-03-25 17:55:56 -04:00
lethosor 42e4f584b9 Add SDL_SemWait and SDL_SemPost hooks 2015-03-25 16:08:25 -04:00
lethosor 38fa416ad1 Lua: Indent array values 2015-03-22 14:04:03 -04:00
lethosor 96e5c5d2fd Fix whitespace 2015-03-20 19:55:32 -04:00
lethosor b976053be0 Add Lua JSON library 2015-03-20 19:51:24 -04:00
lethosor f3508f82c1 Add jsonxx to depends/ 2015-03-20 15:45:38 -04:00
lethosor 625be319c9 Re-enable memory range logging on OS X if an environment variable is set 2015-03-19 19:37:10 -04:00
Lethosor 3639920a50 Merge pull request #575 from lethosor/game-type
Add gametype checks to World module
2015-03-13 22:25:37 -04:00
lethosor 016f67e83f Expose strerror to Lua 2015-03-10 16:32:43 -04:00
lethosor afca7419dc Add gametype checks to World.cpp 2015-03-09 20:08:21 -04:00
lethosor ea1c9fa0df Allow plugin exports to be defined in plugins (and looked up when needed) 2015-03-07 17:25:35 -05:00
lethosor 1570af3f4d Allow plugins to export additional functions through a class 2015-03-07 15:56:43 -05:00
lethosor 1591e67bf2 Replace backslashes with forward slashes in command names 2015-03-06 16:53:57 -05:00
lethosor 0c09feae5b Prevent backslashes from being used in command names 2015-02-27 18:46:29 -05:00
lethosor 45acf61b17 Update xml 2015-02-26 16:12:12 -05:00
lethosor 88ff51c755 Add PushEvent hook on OS X
See #553
2015-02-21 21:28:35 -05:00
lethosor bd809d7bbc Replace most interposed functions with dlsym wrappers on OS X 2015-02-21 21:28:35 -05:00
lethosor db9bcc27e4 Make plugin load errors more descriptive 2015-02-21 21:28:35 -05:00
lethosor 0f77a1a578 Move DFHack version to a separate (static) library
This allows the DFHack version to be changed without recompiling
everything
2015-02-19 12:08:23 -05:00
lethosor c80fbbc397 Remove AS prefixes from add-spatter.cpp
The actual cause of this crash was fixed in #558

See #205
2015-02-19 12:05:32 -05:00
lethosor c399377f08 Ensure that command usage information always ends with a newline 2015-02-16 20:17:47 -05:00
lethosor b7f15ef2d6 Update xml, stonesense for 0.40 ui_advmode_menu changes
Closes #552
2015-02-16 19:10:15 -05:00
lethosor 10cfef0553 Fix whitespace issues 2015-02-14 22:53:06 -05:00
lethosor a8a8fc43ef Add df2console() wrapper
Closes #522
2015-02-13 17:56:29 -05:00
lethosor 56dfc66309 Implement map load/unload scripts and allow additional scripts to be registered 2015-02-11 15:03:47 -05:00
lethosor 37f391ea6d Don't store runScript() in script environments 2015-02-10 17:22:16 -05:00
lethosor 337598e0d6 Restore lua environment persistence and update modified timestamp correctly
See #544
2015-02-10 16:36:21 -05:00
lethosor e3b67b2985 Use short plugin name in error messages when possible 2015-02-09 22:06:33 -05:00
lethosor 15d3b7831f hide/show: Provide feedback on unsupported platforms 2015-02-08 09:30:40 -05:00
lethosor a1691b6777 Merge remote-tracking branch 'warmist/console-hide' into develop
Conflicts:
	library/Console-darwin.cpp
2015-02-08 09:20:05 -05:00
expwnent e5e0d93ef1 Added modtools/reaction-product-trigger. 2015-02-02 02:39:05 -05:00
expwnent 712892fb71 Only reload and recompile Lua scripts if they have moved or been updated. 2015-02-02 02:24:43 -05:00
expwnent bf5e491647 Allow Lua scripts to be used as modules. 2015-01-31 22:43:54 -05:00
expwnent 92bd6349a7 Fix listdir_recursive on Windows. 2015-01-31 22:28:17 -05:00
expwnent e9b4fc513a Merge remote-tracking branch 'cdombroski/zone-plugin-cleanup' into temp
Conflicts:
	NEWS
	plugins/zone.cpp
2015-01-31 21:01:41 -05:00
expwnent aa5d7c11bc Merge remote-tracking branches 'lethosor/patch-12' and 'lethosor/fs-expansion' into develop
Conflicts:
	NEWS
2015-01-31 20:25:01 -05:00
lethosor 066adfdf95 Implement a function to list directories recursively 2015-01-30 17:29:17 -05:00
lethosor 3ab558c72d Check for init.lua existence properly
Fixes #501
2015-01-30 16:37:23 -05:00
Chris Dombroski f608235b1e Fix some Lua things 2015-01-29 19:56:50 -05:00
Chris Dombroski f2eec3198c Rename findPenPitAtCoord 2015-01-29 15:02:54 -05:00
Chris Dombroski 868a9944fd Update LuaApi for new Units/Buildings functions. 2015-01-29 14:59:06 -05:00
Chris Dombroski 86495270a6 Remove duplicate isMilkable definition. 2015-01-29 14:40:09 -05:00
Chris Dombroski 48b6cf1beb Export functions to Buildings.h 2015-01-29 13:57:50 -05:00
Chris Dombroski 1514233aaa Add missing null checks to Units.cpp 2015-01-29 13:57:50 -05:00
lethosor daf739fcec Remove FIFO support 2015-01-28 21:39:17 -05:00
Chris Dombroski c179f5b913 Extract some stuff from zone.cpp to plugins/Units.{h,cpp} 2015-01-28 21:28:32 -05:00
lethosor f98e2964e6 Fix a few Windows compilation errors 2015-01-28 20:05:24 -05:00
lethosor bebceffa5f Add Filesystem::listdir() 2015-01-28 19:15:58 -05:00
lethosor e8c0482fdc Add atime()/ctime()/mtime() 2015-01-28 18:18:06 -05:00
lethosor 2e3261565c Clean up Filesystem.h 2015-01-28 17:15:09 -05:00
expwnent 1445b0a919 Allowed Lua scripts to share variables with run_script and corrected dfhack.findScript so that it can find save-specific scripts. 2015-01-26 21:45:31 -05:00
expwnent 4c5b6a5282 For multiline comments, delete the backslash instead of changing it to a space. 2015-01-26 19:24:31 -05:00
expwnent 1993c5fb1b Added support for multiline commands inside dfhack.init and the script command. 2015-01-26 17:18:30 -05:00
expwnent 4e447fc19a Update XML. 2015-01-25 14:08:42 -05:00
expwnent dda780eb8e Update xml. 2015-01-23 21:53:35 -05:00
lethosor a9f2c5bc90 Change MOD_* to DFH_MOD_*
MOD_* constants are defined in Winuser.h on Windows
2015-01-17 08:56:49 -05:00
lethosor 592d42c665 Update xml (0.40.24 OS X offsets) 2015-01-17 08:54:31 -05:00
lethosor 4d194da530 Merge remote-tracking branch 'origin/develop' into 0.40.24-dev 2015-01-17 08:53:49 -05:00
expwnent 14aa68a27f Merge remote-tracking branches 'lethosor/remove-embark', 'lethosor/search-menus', 'lethosor/osx-package-name', 'lethosor/expose-modstate' and 'lethosor/patch-11' into develop 2015-01-15 22:24:05 -05:00
expwnent 8f4b766107 EventManager: Fix a crash bug with EQUIPMENT_CHANGE event. 2015-01-15 18:13:19 -05:00
lethosor 43d7f59e0b Bump version to 0.40.24-r0 and update xml 2015-01-14 15:09:23 -05:00
lethosor 077d149d64 Expose key modifier state to C++/Lua 2015-01-11 12:51:02 -05:00
expwnent 7e11ad821f Update xml. 2015-01-05 19:33:39 -05:00
lethosor d932c76242 Fix MapCache compiling error on Windows 2015-01-05 17:28:42 -05:00
lethosor 5de5d4420a Update xml 2015-01-05 17:01:03 -05:00
lethosor 182f317fcc Merge remote-tracking branch 'lethosor/plugload-posix' 2015-01-05 16:50:43 -05:00
lethosor 0cfe6a11a3 Merge remote-tracking branch 'eswald/alt-stuck'
Conflicts:
	NEWS
2015-01-05 16:50:16 -05:00
lethosor 0c768796e2 Merge remote-tracking branch 'danaris/fortplan'
Conflicts:
	plugins/buildingplan.cpp
2015-01-05 16:47:35 -05:00
lethosor 06029c92c2 Merge remote-tracking branches 'lethosor/export-dt-ini-0.40.21' and 'lethosor/patch-9' 2015-01-05 16:40:44 -05:00
lethosor 57f6a94133 Merge remote-tracking branch 'lethosor/osx-libstdc++'
Also update NEWS
2015-01-05 16:39:42 -05:00
lethosor 6e36b224d1 Merge remote-tracking branch 'ramblurr/stockpiles'
Also update stockpiles plugin to use REQUIRE_GLOBAL()

Conflicts:
	plugins/stockpiles.cpp
2015-01-05 16:16:29 -05:00
lethosor ca0860c3bd Merge remote-tracking branch 'lethosor/plugin-globals' 2015-01-05 16:05:40 -05:00
lethosor 983f096a60 Merge remote-tracking branch 'quipyowert/define-maxlayers' into 0.40.23-r1 2015-01-05 16:04:37 -05:00
lethosor 9f2bdc2bdc Disable excessive logging in Process-darwin.cpp 2015-01-05 15:58:02 -05:00
lethosor e7ee29b1e3 Clean up whitespace in Hooks-darwin.cpp 2015-01-05 15:57:34 -05:00
lethosor e0a8cc8537 Merge PlugLoad-linux.cpp and PlugLoad-darwin.cpp 2014-12-29 10:33:54 -05:00
Eric Wald a1c9f85a64 Repairing the stuck Alt key
SDL has been reporting the modifier key state incorrectly after alt-tabbing between the DF and DFHack windows.
Fixes issue #448, though more testing is warranted.
2014-12-28 21:43:48 -07:00
Lethosor 3c0ac70615 Remove output from filetype()
Not sure how this made it in, but it's causing problems with PRINT_MODE:TEXT (not to mention filling up stdout.log)
2014-12-27 15:05:43 -05:00
Timothy Collett 5547722414 Initial work on fortplan plugin, including separating out code that needs to be shared with buildingplan 2014-12-23 16:56:15 -05:00
lethosor 02f2d88f35 Add option to install newer libstdc++ on OS X
Also include a bzipped copy of libstdc++.6.dylib
Fixes #437
Fixes #436
Fixes #460
Fixes #462
2014-12-23 10:31:00 -05:00
expwnent 8e6fcac92e persist-table bug. 2014-12-07 07:56:33 -05:00
lethosor 5de3e6110a Merge remote-tracking branch 'origin/develop' into plugin-globals 2014-12-06 17:32:44 -05:00
Casey Link 7072252902 fix build error on windows
with certain #include permutations the lack of this define would
break the build on windows as windows.h pollutes the namespace with min
and max macros that conflict with std::min and std::max.
2014-12-05 12:35:24 +01:00
expwnent bd7cb578eb Update xml. 2014-12-04 23:31:05 -05:00
lethosor f1a863eb79 Use short plugin name 2014-12-03 23:27:52 -05:00
lethosor cac2245438 Update some plugins to use REQUIRE_GLOBAL 2014-12-03 23:26:54 -05:00
lethosor e206c242c6 Add a plugin_globals vector to aid in safety checks for plugins that require globals
This allows "using df::global::foo" to be replaced by "REQUIRE_GLOBAL(foo)",
and DFHack will refuse to load the plugin if df::global::foo is NULL
2014-12-02 21:32:04 -05:00
Alexander Gavrilov 760acf017b Update version to v0.40.19 2014-12-02 13:51:44 +03:00
quipyowert f4e8fa2f30 Define a static variable to fix debug mode crash.
Fixes #404
2014-12-01 17:19:20 -08:00
expwnent 83d3785735 Update xml. 2014-11-30 14:03:00 -05:00
expwnent 868bc4c7fb Update xml. 2014-11-30 11:32:46 -05:00
lethosor 445640f80c Allow commands invoked through command-prompt to access selected items/units/buildings
Fixes #273
2014-11-25 20:25:31 -05:00
expwnent 855d27745d Update xml. 2014-11-19 23:57:02 -05:00
lethosor a003ce7394 Print fatal errors to stdout on Linux/OS X 2014-11-17 15:12:33 -05:00
expwnent 97b44d5898 persist-table tweaks, delete debug print messages 2014-11-16 20:41:11 -05:00
expwnent 7560fbdb6b library/lua/persist-table.lua: now it uses metatables to make persistent memory storage even easier. 2014-11-16 17:06:59 -05:00
expwnent 798bec3ced Merge branch 'delvintemp' into develop 2014-11-15 16:28:52 -05:00
expwnent 2edc3594b8 Make it compile. 2014-11-15 16:03:36 -05:00
expwnent 3021fa47db Merge remote-tracking branches 'jjyg/develop', 'putnam/patch-4' and 'eswald/blank-histories' into develop
Conflicts:
	NEWS
2014-11-15 15:07:20 -05:00
expwnent 59ef4e0cc2 It is now possible to remove syndromes by SYN_CLASS. 2014-11-14 23:33:49 -05:00
expwnent 5e3bf9a494 Make it compile for OSX. 2014-11-14 22:21:03 -05:00
expwnent 4464d7318d EventManager: make REPORT events only trigger for new reports, not ones that already exist in the save. 2014-11-14 22:07:48 -05:00
Eric Wald c85d4994cf Preventing blank history files 2014-11-14 17:35:06 -07:00
expwnent d120e5aa84 Merge pull request #386 from ace13/develop
Missing includes.
2014-11-14 18:59:53 -05:00
expwnent 428fe6a400 interaction-trigger tweaks 2014-11-14 18:50:19 -05:00
expwnent e2f4d3e4cb Fix persist-table so that all data is persistently stored properly. 2014-11-14 18:49:40 -05:00
expwnent 828852c36f Made persist-table correctly clear its stuff after exiting a game. 2014-11-10 01:09:50 -05:00
expwnent 593424cd6d new Lua library for persistent maps of arbitrary degree. 2014-11-10 01:03:20 -05:00
expwnent 779ac3fd50 Updated interaction-trigger to work better. 2014-11-09 18:36:21 -05:00
Alexander "Ace" Olofsson 804aa8d398 Add missing <algorithm> include for std::min & std::max 2014-11-09 11:19:40 +01:00
expwnent 0f5efb47ae Update to 0.40.15. 2014-11-09 01:30:43 -05:00
expwnent fa401f8637 EventManager tweak. 2014-11-07 14:16:10 -05:00
expwnent dcdb6aae1b EventManager: properly deal with frame_counter getting reset. 2014-11-06 23:44:13 -05:00
expwnent 29d6bba669 Fix trackstop ambiguity complaints, update df-structures. 2014-11-02 11:55:01 -05:00
expwnent 4e0ad256a5 Update XML. 2014-11-02 04:06:51 -05:00
expwnent 87443035a9 Merge remote-tracking branch 'quietust/develop' into develop
Conflicts:
	plugins/manipulator.cpp
2014-11-02 04:05:51 -05:00
expwnent 4e38ec95b3 Merge pull request #354 from eswald/duplicate-onload
Removing duplicate world and map loading events.
2014-11-02 03:32:36 -05:00
expwnent 4b7c4f8c4b Merge pull request #356 from lethosor/disable-console
Allow console to be disabled by setting an environment variable
2014-11-02 03:31:35 -05:00
Quietust 8769af8935 Merge branch 'develop' of https://github.com/expwnent/dfhack into develop 2014-10-31 13:34:20 -05:00
Alexander Gavrilov 04ec2c9932 Update version to v0.40.14 and hack things so they compile.
Also make the find-offsets script less likely to crash if the
unit structure is misaligned and add more integrity checks.
2014-10-26 16:40:39 +03:00
Alexander Gavrilov beebd624e7 Last xml update for v0.40.13 2014-10-26 13:20:45 +03:00
lethosor e41a33ddea Allow console to be disabled by setting an environment variable 2014-10-06 17:10:33 -04:00
expwnent 0471294b1e Fix syndrome-util. 2014-10-04 21:54:07 -04:00
Eric Wald 6c9b94bcef Removing duplicate world and map loading events.
Saving a game in progress now goes through an extra viewscreen before reaching the condition that had been used to indicate whether the world was still valid, causing the core to emit bogus WORLD_LOADED, MAP_LOADED, MAP_UNLOADED, and WORLD_UNLOADED events.  Adding that viewscreen to the list of loading/saving screens prevents those duplicate events from firing.

Granted, if the game_cleaner viewscreen ever gets hit in play, this fix will cause more bogus events...
2014-09-30 23:02:35 -06:00
Alexander Gavrilov 6046d68639 Support std::fstream in data structures and add file_compressorst to xml.
One tricky thing is that fstream does not have operator=, so the new
file_compressorst requires a manually implemented one that skips it.
2014-09-24 22:47:04 +04:00
Alexander Gavrilov e6901a87d3 Update to 0.40.13 structures and fix compilation. 2014-09-19 00:05:15 +04:00
Timothy Collett 3678c5f649 New SDL hooks to support Stonesense updates 2014-09-16 21:16:52 -04:00
expwnent 0fbc7e22ee Merge remote-tracking branch 'lethosor/patch-4' 2014-09-16 17:21:39 -04:00
expwnent d425c2edf9 Merge remote-tracking branch 'lethosor/lua-printall-ipairs' 2014-09-16 17:08:45 -04:00
expwnent 5a1d88307f Merge remote-tracking branch 'eswald/stockpile-iterator' 2014-09-16 17:05:02 -04:00
expwnent 3e882f35b3 Merge remote-tracking branch 'lethosor/global-onload' 2014-09-16 16:53:31 -04:00
expwnent 8508dd6f04 Update xml. 2014-09-16 16:51:48 -04:00
lethosor 328b95c1ec Merge remote-tracking branch 'origin/develop' into global-onload 2014-09-14 11:56:07 -04:00
Lethosor d21cd54648 Add '@' documentation to dfhack.lua 2014-09-14 11:50:03 -04:00
Lethosor 9d3af4dcb6 Close file opened in load_patch() on success
Fixes #327
2014-09-10 15:09:57 -04:00
lethosor fadca0aef2 Add a variant of printall() that uses ipairs 2014-09-08 20:30:22 -04:00
lethosor 34d4537a11 Support for global onLoadWorld.init/onUnloadWorld.init scripts 2014-09-08 15:52:17 -04:00
expwnent c746d2a182 Update xml. 2014-09-08 15:46:25 -04:00
expwnent 248e4d837b Update xml. 2014-09-08 13:32:34 -04:00
expwnent f5039b37b8 Merge remote-tracking branch 'lethosor/osx-plug-dylib'
Conflicts:
	NEWS
2014-09-08 13:14:28 -04:00
Eric Wald 74e709ec19 Adding getStockpileContents to the Lua API. 2014-09-07 14:52:08 -06:00
Eric Wald 8631da7e4e Convenience method to collect a vector from StockpileIterator. 2014-09-07 14:10:27 -06:00
Eric Wald 567397df85 Stockpile iterator.
Efficient way to operate on all items stored on a stockpile.
Doesn't currently check whether the items match the stockpile settings,
but does ignore empty containers assigned to the stockpile.
2014-09-07 13:52:07 -06:00
Quietust cf06dc3503 Update to 0.40.11, fix a few devel plugins to build again 2014-09-04 08:26:45 -05:00
lethosor 9aee476c6e Make plugins use ".plug.dylib" extension on OS X 2014-08-30 09:21:19 -04:00