lethosor
e8c8953cbb
Re-add and update misery plugin
...
Closes #1037
Ref #1011
2016-12-10 18:22:32 -05:00
lethosor
3bae9d9d65
Lua API: Make bitfield.whole return an integer, not a decimal
2016-12-10 12:27:43 -05:00
David Corbett
acdb369aa8
Avoid non-trivial bitfield constructors
2016-12-09 13:41:14 -05:00
lethosor
6e16a7a20c
Update xml, scripts
2016-12-09 11:27:44 -05:00
lethosor
8521b830b2
Merge remote-tracking branch 'CannibalVox/job_remove' into develop
2016-12-05 15:24:37 -05:00
Stephen Baynham
595f3857b6
Reverse the param order of these two methods
...
The current way doesn't match other Job module methods
2016-12-01 20:13:49 -08:00
Stephen Baynham
7920f71517
Bad formatting
2016-11-25 00:25:18 -08:00
Stephen Baynham
de0e211e07
Figured I could like test my code.
2016-11-24 23:35:03 -08:00
Stephen Baynham
e490afdf00
Rebuilt slightly to offer bool return val
...
We fail on unknown general ref types now, without modifying the job at
all yet
2016-11-24 22:36:11 -08:00
Stephen Baynham
8b964ca2dc
Wipe job_items vector
2016-11-21 06:51:21 -08:00
Stephen Baynham
fba32f2e2f
Also disconnect the job from its items.
2016-11-17 23:25:48 -08:00
Stephen Baynham
67af9f5e82
Add lua bindings for removeJob
2016-11-17 23:04:48 -08:00
Stephen Baynham
74f5df99db
Add job remove method
...
Job remove eliminates a job's worker & holder references, if any, puts
the worker on cd, if appropriate, removes the job's postings, eliminates
the job from the global linked list, and then finally deletes it. This
code was tested by incorporating it into autochop and it does make the
plugin work. However, chop jobs don't have holder building references,
and anyway, with DF being 90% edge case by volume, this could use a heck
of a lot more testing.
I saw elsewhere code that prevented worker removal if the job was a
special job, and that made me feel funny so I made the job remove method
not work if the job is a special job.
2016-11-17 19:54:41 -08:00
lethosor
ae59b4f5ad
Update xml, scripts
2016-11-10 14:25:05 -05:00
lethosor
04ad7a0a42
Replace some instances of "cmake -E copy_if_different" with a standalone script
...
@JapaMala reported that CMake < 3.5 doesn't support copy_if_different with
multiple source files.
https://cmake.org/cmake/help/v3.5/release/3.5.html#command-line
2016-11-02 16:23:32 -04:00
lethosor
2c230f0d3e
Improve protobuf file regeneration (no longer uses a dummy status.txt file)
2016-10-24 22:51:27 -04:00
lethosor
4fdbba0207
Only touch protobuf generated files if they actually changed
2016-10-24 22:28:51 -04:00
lethosor
b19a0b4305
Update scripts, xml
...
Fixes #1005
2016-10-19 09:53:51 -04:00
lethosor
b1e3c1088c
Give loadfile() result a better name for tracebacks
2016-10-19 09:53:12 -04:00
lethosor
4c21bbd5ae
Add Lua::TableInsert() helper
2016-10-15 14:55:48 -04:00
lethosor
8a138fcc4c
Avoid polluting global namespace in MapCache.h
2016-10-15 14:53:10 -04:00
Japa
b2424f9a59
Merge branch 'develop' of https://github.com/DFHack/dfhack into develop
2016-10-15 10:32:13 +05:30
Japa
08cc9f3188
Cast size_t to int explicitly to avoid compiler warning C4267
2016-10-15 10:31:38 +05:30
Japa
98ab357df0
Use size_t in both path methods, to avoid warning C4267
2016-10-15 10:17:38 +05:30
lethosor
9f541481ea
Fix some warnings with GCC -Wall
2016-10-15 00:37:18 -04:00
Japa
980b6dd12f
Update XML again.
2016-10-13 19:42:40 +05:30
Japa
d5e8b5eeba
Update XML
2016-10-13 19:35:40 +05:30
lethosor
e6bb7357df
Update xml
2016-10-08 17:09:23 -04:00
lethosor
f6a91c2f30
Log architecture on startup
2016-10-08 16:58:08 -04:00
lethosor
70d3c07cdb
Initial lua getDwarfmodeViewDims rewrite
2016-10-07 23:51:58 -04:00
lethosor
a5338d2f59
Fix rebase_delta type mismatch
...
See #984 . GCC wasn't complaining about this on x64 for some reason.
Also reordered includes.
2016-09-28 20:43:02 -04:00
Quietust
27d2229665
Fix follow_jmp for 64-bit code - skip REX prefix if found
2016-09-25 18:29:57 -05:00
Japa
b09ee3407c
Merge branch 'v0.43.03' of https://github.com/JapaMala/dfhack into develop
...
Conflicts:
library/xml
plugins/remotefortressreader.cpp
2016-08-29 22:06:37 +05:30
lethosor
41e298bdfc
Update submodules
2016-08-27 15:27:57 -04:00
lethosor
85ebbf0e9c
Fix df_expr_to_ref for raw userdata
2016-08-24 17:18:55 -04:00
lethosor
6ce470ad57
Add basic lua expression support to memview
...
Currently just supports basic field accesses (world.x, screen.y.z).
No support for world.x - 4, etc.
Closes #976
2016-08-24 16:26:34 -04:00
lethosor
7487f44fc8
Implement a helper to create lua environments with shortcuts (e.g. scr, unit)
...
Used in gui/gm-editor and lua
Closes #977
2016-08-23 21:47:41 -04:00
lethosor
2dccd1d0ff
Add CheckedArray:__tostring() method
2016-08-22 23:18:30 -04:00
lethosor
1dab45ffed
Replace lua_pushnumber with lua_pushinteger in LuaApi.cpp
2016-08-22 23:18:08 -04:00
lethosor
e983e66a1a
Update xml and scripts
2016-08-21 20:59:24 -04:00
lethosor
70ac99cbfa
Fix Buildings::setOwner() persistence
...
Needed to set bld->owner_id for changes to persist across save/load
Fixes #983 , thanks to Quietust
2016-08-21 20:58:40 -04:00
lethosor
98a187ca43
Update xml
2016-08-18 17:28:44 -04:00
lethosor
9e4a6d7591
Update default base address on 64-bit Linux
2016-08-18 17:28:18 -04:00
lethosor
0b6597ddb2
Stop field_offset from crashing due to missing vtables
...
Now, a pointer to NULL is cast to the type in question, avoiding the need to
call new() or delete() with potentially-misaligned types. Also,
virtual_identity::find has been tweaked to prevent it from crashing on NULL
vtable pointers.
This was suggested by Angavrilov.
2016-08-18 15:59:46 -04:00
lethosor
c2997b9c79
Fix save_dir
2016-08-18 15:47:40 -04:00
lethosor
de731b0299
Move save_dir back into cur_savegame and update submodules
2016-08-14 12:41:09 -04:00
lethosor
e965f5318f
Replace many includes with forward declarations in modules/Maps.h
2016-08-13 21:44:01 -04:00
lethosor
576174ea0b
Lua: Add lengths of (some) containers to their string representations
2016-08-13 19:52:14 -04:00
lethosor
eef6f9bfb7
Add df.new() support for char and unsigned long
2016-08-11 00:01:52 -04:00
lethosor
a1ff432bf8
Restore fixed-width types in string representations of lua fields
...
e.g. tostring(df.new('int16_t')) was returning "<short: 0xaddr>"
2016-08-10 23:58:45 -04:00
lethosor
215afa34f3
Update for 64-bit unit changes
...
Includes xml, stonesense, scripts
Ref DFHack/df-structures@25cb373
2016-08-10 23:50:00 -04:00
Lethosor
6e741b1a80
Merge pull request #969 from Qartar/win64
...
Minor fixes/updates for Visual Studio 2015 Win64
2016-08-10 15:15:44 -04:00
lethosor
02eef95147
Fix base address for Darwin x64
2016-08-09 20:00:31 -04:00
lethosor
e22b3b1de7
Use non-fixed-width types in integer identity_traits definitions
...
In some situations (e.g. 32-bit Linux), "intptr_t" is defined as "int", which is
equivalent to "int32_t", leading to issues with duplicate definitions. In other
situations with GCC, "intptr_t" is "long", which isn't covered by any intNN_t
types. Also, definitions for "long" already had to be added on Windows, because
no fixed-width types in MSVC are equivalent to "long".
Switching to non-fixed-width types should hopefully cover all of these
situations. If this doesn't cover any integer types that we need, it will
be caught quickly, e.g. by references to integer_traits<T> in LuaWrapper.cpp.
2016-08-08 11:46:20 -04:00
lethosor
298d16238e
Remove a few unneeded includes in DataStaticsFields.cpp
2016-08-08 11:45:00 -04:00
lethosor
aeac8b4fef
Update xml
2016-08-05 18:04:42 -04:00
lethosor
ee7357b60e
x86: fix vector validity check
2016-08-05 17:51:08 -04:00
lethosor
dde6901534
x86: fix lua address display
2016-08-05 17:50:49 -04:00
Japa
2fda01d90b
Add support for site towers.
2016-08-03 10:22:30 +05:30
Japa
9189e3dc7e
Send world buildings through remotefortressreader.cpp
2016-08-02 10:30:17 +05:30
Carter Bray
44913609c8
Fix format string warnings
2016-08-01 19:03:26 -07:00
lethosor
79377669a1
Merge remote-tracking branch 'NCommander/dwarfvet' into develop
2016-07-29 16:25:53 -04:00
lethosor
158f18106f
Merge remote-tracking branch 'NCommander/vs2015' into develop
2016-07-29 15:30:32 -04:00
lethosor
55970a71ab
Fix Lua::Push for enums
2016-07-29 11:06:16 -04:00
lethosor
e8fe72826f
Add new integer types to memscan and update find-offsets
2016-07-29 00:05:12 -04:00
lethosor
dc79e2477b
Expose long/[u]intptr_t to lua and fix some integer return values
2016-07-29 00:02:51 -04:00
lethosor
b7856fd9f2
Use enable_if for Lua::Push specializations
2016-07-28 22:04:46 -04:00
lethosor
7b7f7a1b79
Fix support for integer fields in Lua 5.3
2016-07-28 16:36:02 -04:00
lethosor
41a81f9021
Fix some more warnings (GCC 4.8)
2016-07-28 11:00:52 -04:00
lethosor
42c620bb9c
Download non-broken libstdc++ on OS X
2016-07-27 21:43:38 -04:00
lethosor
828fee532a
Switch to downloading zlib.lib and SDLreal.dll on Windows
2016-07-27 21:08:24 -04:00
Vitaly Pronkin
223c83071e
win64 fixes: doReadClassName, ParseVersion
...
cherry-picked from 2f734ae2317060edb83021f17cffc966c435ad7b
2016-07-27 20:21:57 -04:00
lethosor
ddd56d7825
Fix (for win64) and avoid duplicating base address
2016-07-27 20:10:03 -04:00
lethosor
50144b60ea
A few %08x to %p changes
2016-07-27 19:54:19 -04:00
Vitaly Pronkin
8916aba3bf
win64 fixes (partial)
...
cherry-picked from 2f734ae2317060edb83021f17cffc966c435ad7b
2016-07-27 19:46:49 -04:00
Vitaly Pronkin
fe18f176f7
More 64-bit fixes
...
Cherry-picked from 7eb3ba6
- Lua update already done in e2c6350
, 4dd411e
- Excluded library/modules/Buildings.cpp
2016-07-26 23:47:53 -04:00
Vitaly Pronkin
3833ff2e09
proper 64bit address formatting
2016-07-26 23:30:50 -04:00
lethosor
a684e1dd0f
Merge remote-tracking branch 'lethosor/64-bit' into develop
2016-07-26 22:54:36 -04:00
Michael Casadevall
e10397370b
Merge branch 'develop' of github.com:DFHack/dfhack into vs2015
2016-07-11 18:59:22 -05:00
Michael Casadevall
ed6fb69012
Fix whitespace spacing
...
Signed-off-by: Michael Casadevall <mcasadevall@ubuntu.com>
2016-07-11 18:54:03 -05:00
lethosor
cede0528f2
Merge branch 'develop' of https://github.com/dfhack/dfhack into develop
2016-07-06 21:00:20 -04:00
lethosor
39aa143cfa
Update NEWS and submodules
2016-07-06 20:59:49 -04:00
Lethosor
4f96bdd0eb
Merge pull request #950 from TC01/linux-system-tinyxml
...
Support linking against an external tinyxml if EXTERNAL_TINYXML is set
2016-07-06 20:37:28 -04:00
lethosor
2de2e6a983
Update CMakeLists and submodules
2016-07-06 20:30:28 -04:00
lethosor
b4063352cf
Fix crash in vprinterr due to va_list misuse
2016-07-03 23:33:07 -04:00
lethosor
2455e36510
Initial 64-bit support
2016-07-03 23:32:43 -04:00
lethosor
163207e362
Give more feedback for DF detection failures with mismatched XML versions
...
This may help address issues where people forget to read the documentation,
don't run "git submodule update", and end up with a df-structures version
that's too old (which is somewhat common, it turns out).
2016-06-30 20:42:27 -04:00
lethosor
cfaba3ec71
Update various references to scripts/ and mention old git issues in Compile.rst
2016-06-29 19:38:15 -04:00
lethosor
af906d6582
Remove library/scripts submodule
2016-06-29 19:06:00 -04:00
Ben Rosser
ae55d2d526
Support linking against an external tinyxml if EXTERNAL_TINYXML is set
...
As best as I can tell, the copy of tinyxml dfhack uses is unmodified
from whenever it was first bundled. This commit adds an option to CMake,
EXTERNAL_TINYXML, that if set to ON, will attempt to link against a system
tinyxml instead of using the dfhack-bundled one. It defaults to OFF,
so there is no change in default behavior.
The DFHACK_TINYXML variable is then set to either "tinyxml" or "dfhack-tinyxml"
so the library (and any plugins that need updating) can link against one
or the other.
The FindTinyXML.cmake script was taken from https://github.com/ros/cmake_modules
(licensed under the 3-clause BSD license).
Add license text to new CMake file.
2016-06-29 17:53:16 -04:00
Michael Casadevall
d509cf2fb5
It helps when you pop pragmas
...
Signed-off-by: Michael Casadevall <mcasadevall@ubuntu.com>
2016-06-28 09:39:46 -05:00
Michael Casadevall
d49032ef73
Supress a lot of compiler noise in hopes of finding real errors. Right now, a plugin free DFHack can be built with VS2015
2016-06-28 08:34:11 -05:00
Japa
b338d0218e
Merge branch 'develop' of https://github.com/DFHack/dfhack into develop
2016-06-20 13:22:25 +05:30
Japa
36aafd550b
Increased the message size limit in RemoteClient from 8mb to 64mb.
2016-06-20 13:17:30 +05:30
lethosor
6d1c4cd9ce
Merge branch 'develop' of https://github.com/dfhack/dfhack into develop
2016-06-16 23:37:21 -04:00
lethosor
a7d5c2132a
update xml
2016-06-16 23:37:01 -04:00
Japa
0918efd02d
fix word_wrap not returning a value.
2016-06-16 20:52:16 +05:30
lethosor
27a84a8246
Move scripts to library/scripts
...
git can't cope with replacing scripts/3rdparty/* submodules with a single
scripts submodule.
2016-06-15 18:45:08 -04:00
lethosor
9de4550fde
Update submodules
2016-06-15 12:11:20 -04:00
lethosor
022a1bf9e8
Wrap script descriptions in `ls` output and remove description length cap
2016-06-14 21:24:27 -04:00
lethosor
4f3a2b39d7
Update xml
2016-06-14 13:21:59 -04:00
lethosor
f07bc03c69
Update clsocket and Open()/Listen() usage
2016-06-14 13:21:51 -04:00
Lethosor
a2b2c66798
Merge pull request #931 from warmist/advfort2
...
Advfort2
2016-06-14 09:45:33 -04:00
Michael Casadevall
90c7dc41ec
Update where library/xml to point to current master
...
Signed-off-by: Michael Casadevall <mcasadevall@ubuntu.com>
2016-06-13 17:10:58 -04:00
Michael Casadevall
a03b32846a
Modify DFHack to handle new produce() prototype. Major thanks to lethosor, and ragundo for their help in this
...
Signed-off-by: Michael Casadevall <mcasadevall@ubuntu.com>
2016-06-13 16:57:45 -04:00
Michael Casadevall
e45fbfc61d
Modified dwaftvet plugin to work with latest DFHack
...
Initial commit of the dwarfvet plugin
Signed-off-by: Michael Casadevall <mcasadevall@ubuntu.com>
2016-06-08 04:14:59 -04:00
lethosor
a47a1c83ba
Update xml, clsocket
2016-06-07 08:17:40 -04:00
lethosor
fa1c589391
Update xml
2016-05-30 16:58:51 -04:00
lethosor
d44bc069ad
Merge remote-tracking branch 'BenLubar/thread-memory-leak' into develop
2016-05-30 16:24:42 -04:00
lethosor
9fc43cff4d
Make const method wrappers possible
...
Reverts ae3052f
Ref #935
2016-05-28 20:11:42 -04:00
lethosor
113325f885
update xml
2016-05-28 10:29:53 -04:00
lethosor
ae3052f79a
Make knowledge_scholar_category_flag::value() non-const
...
const methods can't be wrapped at the moment, at least without changing things
in DataFuncs.h
2016-05-28 10:28:22 -04:00
lethosor
4d3df60470
Update xml (offsets)
2016-05-27 17:51:01 -04:00
lethosor
c1ba435058
Update version and xml
2016-05-27 17:41:23 -04:00
Ben Lubar
e76258b040
knowledge category flag
2016-05-26 15:15:42 -05:00
Ben Lubar
700392ba55
Fix tinythread memory leak in two ways:
...
1. update to tinythread version 1.1, which provides a detach method
2. move the thread disassociation to the join function, which allows
attached threads to be joined even after they finish (this was the main
leak)
Also update RemoteServer.cpp to detach threads and delete the thread
objects instead of leaking them (although they are much smaller than the
actual threads).
2016-05-21 19:17:08 -05:00
Warmist
6c64b3441d
Fixes to gui/advfort.lua
2016-05-20 13:55:59 +03:00
lethosor
d93cf2cd2e
Update xml
2016-05-17 23:26:21 -04:00
lethosor
b7aa8aca26
Update xml
2016-05-14 22:27:21 -04:00
lethosor
1832e563b7
Update xml
2016-05-14 19:41:41 -04:00
lethosor
a89251cdf8
Find job in job screen
2016-05-14 16:07:27 -04:00
lethosor
118d88e44f
Update xml
2016-05-14 16:07:10 -04:00
lethosor
55e58e5f06
Update handling of viewscreen_workshop_profilest in Gui module, search/sort plugins
2016-05-14 11:43:37 -04:00
lethosor
97f7cd6081
Bump version and update xml
2016-05-12 16:03:33 -04:00
lethosor
fee6e57b40
Disable viewscreen_layer_workshop_profilest focus handler for now
2016-05-11 17:52:56 -04:00
lethosor
ed81be16b3
Improve logging of vtable interpose errors
2016-05-11 17:52:10 -04:00
lethosor
38051a5a48
remove tweak manager-quantity
2016-05-11 17:51:57 -04:00
lethosor
b53f829737
Update to 0.43.01-alpha0 and update xml
2016-05-10 17:48:50 -04:00
lethosor
c1e44c178f
Add on_click/on_rclick handlers to widgets.Label
...
Closes #919
2016-05-09 21:30:34 -04:00
lethosor
402a96b0e6
Expose new unit functions to lua and add some basic safety checks
2016-04-23 21:52:50 -04:00
lethosor
bc7c689d93
update xml
2016-04-23 20:33:03 -04:00
lethosor
52728babd4
Merge branch 'develop' into zone-unassign
2016-04-22 18:41:15 -04:00
lethosor
b36193857c
Add string:startswith(), endswith()
2016-04-16 17:13:41 -04:00
lethosor
0d37209063
use trade_state enum
2016-04-13 09:44:57 -04:00
Warmist
7c91b8f755
Add more informative focus_path
...
This with conjunction of changes in eventful will make the sidebar overlay more bug-free :)
2016-04-10 16:53:18 +03:00
Warmist
8b8ce4eff9
Spelling mistake
2016-04-10 15:45:43 +03:00
Warmist
d1c45d00d2
Fix some bugs in workshopOverlay
...
Fix bugs relating to "remove building"/"suspend remove" part of overlay.
2016-04-10 14:44:09 +03:00
Warmist
80521d1bb1
add onGetSelectedBuilding to workshop overlay
...
This will make other stuff that depends on dfhack.gui.getSelectedBuilding work with workshop overlay
2016-04-10 12:28:15 +03:00
lethosor
49863a9f32
Add a file-like lua JSON wrapper
2016-04-08 17:40:14 -04:00
lethosor
b97d33ca28
moveToBuilding improvements
...
- Don't set in_building by default when use_mode is 0 (consistent with most vanilla DF items)
- make use_mode optional and default to 0 (including in Lua API)
Resolves #885
2016-04-05 11:43:02 -04:00
lethosor
d9e368cab4
Update xml
2016-04-03 21:10:02 -04:00
lethosor
e0ae7bde79
Add Lua primitives: ptr-string, pointer, ptr-vector, bit-vector, bit-array
...
These are most useful with df.reinterpret_cast, but df.new can also be used for
most of these (except ptr-string)
2016-04-03 20:48:57 -04:00
lethosor
37c81df21c
Add reverse vtable name lookup
2016-04-03 20:45:44 -04:00
lethosor
a49f313f84
update xml
2016-04-03 13:34:52 -04:00
lethosor
ec5e91bd6a
Update xml
2016-03-28 21:00:27 -04:00
lethosor
b115fdc73f
Load script paths from dfhack-config/script-paths.txt
2016-03-27 15:56:23 -04:00
lethosor
866d31f121
Update xml
2016-03-26 11:12:06 -04:00
lethosor
af4a3428a6
Split DataStaticsFields into multiple compilation units
2016-03-22 17:34:25 -04:00
lethosor
b8bbf5f545
field_offset: Use actual type instances instead of reinterpret_cast(type, 1)
...
ui_build_selector is a virtual class as of 0.42.06, so reinterpret_cast-ing it
with bad addresses will crash. 'df.new(df.ui_build_selector)' works just fine.
2016-03-22 17:27:53 -04:00
Japa
a3ddc63836
Merge branch 'develop' of https://github.com/DFHack/dfhack into develop
...
Conflicts:
plugins/remotefortressreader.cpp
2016-03-20 16:30:49 +05:30