Alexander Gavrilov
ee94894516
Disable pointer auto-vivification unless new is specified.
...
Since it is essentially allocating non-gc managed objects,
it can lead to memory leaks and shouldn't happen invisibly.
Also support using the 'assign' key to request assign()
from another object before processing the current map.
2012-03-28 11:28:42 +04:00
Alexander Gavrilov
d6e6fc483f
Fix F keys in keybindings: they obviously don't have unicode symbols.
2012-03-28 11:25:55 +04:00
Quietust
be2a7af362
Merge branch 'master' of https://github.com/angavrilov/dfhack
2012-03-27 14:14:04 -05:00
Quietust
6656852fff
win32 SetConsoleTextAttribute doesn't know what COLOR_RESET (-1) is
2012-03-27 13:22:45 -05:00
Alexander Gavrilov
bc74c5984e
Implement recursive transfer of values from lua to c++ structures.
...
E.g. df.global.cursor = { x = 1, y = 2, z = 3 }. The lua data
must be represented by raw lua tables.
For structs, the entries in the table are assigned to matching fields.
For containers, if a 'resize' field is missing or nil, the table is
treated like 1-based lua array, and the container is resized to match
its # length. Otherwise, the field must be either an explicit number,
true or false. If it is true, the size is selected by the highest index
in the table. After that, entries are copied using 0-based indices.
For pointers, the table must match the target object. If the pointer
is null, the object is auto-allocated; this can be controlled using
the 'new' field, the value of which will be passed to df.new().
2012-03-27 21:47:52 +04:00
Alexander Gavrilov
22d775f95c
Fix sscanf parsing the memory map on linux, so that dfusion loads.
2012-03-26 21:05:24 +04:00
Petr Mrázek
4e78947b10
Track structures
2012-03-26 16:13:41 +02:00
Alexander Gavrilov
157f23be5c
Fix warnings.
2012-03-26 12:42:05 +04:00
Alexander Gavrilov
00a5bfcf3e
Work around a msvc issue with spurious specialization ambiguity errors.
2012-03-26 10:46:51 +04:00
Petr Mrázek
1a19e17695
Track structures, stonesense
2012-03-26 03:39:14 +02:00
Alexander Gavrilov
d0090e9551
Fix lua wrapper: create one function identity instance per method.
...
Otherwise all methods of the same prototype are lumped into one.
2012-03-25 21:12:20 +04:00
Alexander Gavrilov
1d81cb56ba
Make enum attributes accessible through the lua wrapper.
...
TODO: make them completely read-only.
2012-03-25 19:12:59 +04:00
Alexander Gavrilov
0412aaebe4
Add a delete() method to the objects in the lua wrapper.
2012-03-25 15:48:18 +04:00
Alexander Gavrilov
7209e4d3f2
Attach static methods to the type objects in the lua wrapper.
2012-03-25 15:20:58 +04:00
Alexander Gavrilov
8d345be6e7
Expose virtual methods in the lua wrapper.
2012-03-25 14:06:05 +04:00
Quietust
947adeac83
Silence warning 4482
2012-03-24 18:18:29 -05:00
Petr Mrázek
645e5eb2c1
track structures
2012-03-24 22:44:16 +01:00
Petr Mrázek
39f722339c
Track structures
2012-03-24 17:10:45 +01:00
Alexander Gavrilov
517b2ffadb
Merge remote-tracking branch 'peterix/master'
2012-03-24 16:30:07 +04:00
Alexander Gavrilov
0c7fc233bd
Support resize/erase/insert for containers, and allow any index in BitArray.
2012-03-24 16:28:53 +04:00
Petr Mrázek
8a847dbaba
Tweaks and cleanups
...
Removed t_virtual.
Made lua use C++ compiler
Removed many silly exception types from Error.h and renamed the rest.
Removed Brush classes from tiletypes plugin.
2012-03-24 12:13:51 +01:00
Alexander Gavrilov
d865d54a90
Split LuaWrapper.cpp into two files.
2012-03-24 13:25:10 +04:00
Alexander Gavrilov
053bfe345c
Implement allocation and copy for c++ objects in the lua wrapper.
2012-03-24 12:43:53 +04:00
Petr Mrázek
90de6a1b62
Track submodules
2012-03-23 22:59:40 +01:00
Alexander Gavrilov
2b1f8aa2bb
Add a _field method that returns refs to struct and container items.
...
Hack: allocate ad-hoc pointer identities as full lua userdata.
2012-03-23 12:55:29 +04:00
Alexander Gavrilov
6b2006361d
Add a _displace method that implements offsetting a pointer by an int.
2012-03-23 11:54:59 +04:00
Alexander Gavrilov
78437310d0
Add a sizeof method/function to retrieve object/type size and address.
2012-03-23 11:30:54 +04:00
Alexander Gavrilov
ccc8fac166
Get rid of the write mode field table in metamethods.
...
Two separate tables can be confusing, e.g. if a builtin field
overrides a writable custom one only in the read table.
2012-03-23 10:56:29 +04:00
Alexander Gavrilov
ead28db451
Remove the return type from lua_read, because it always returns 1.
2012-03-23 09:38:49 +04:00
Alexander Gavrilov
27824642d9
Minor refactoring of container indexing and object allocation.
2012-03-22 10:56:32 +04:00
Alexander Gavrilov
ad10303cec
Implement bitfields and add a _kind metadata field to types and objects.
2012-03-21 20:04:37 +04:00
Alexander Gavrilov
9b78fffe92
Support containers in the lua wrapper.
2012-03-21 13:26:53 +04:00
Alexander Gavrilov
73e138c9fd
Support ordinary struct and class fields.
2012-03-20 21:34:27 +04:00
Alexander Gavrilov
6c661bcaa9
Add support for primitive type fields in lua wrapper.
2012-03-20 13:56:29 +04:00
Alexander Gavrilov
dbbd9acfad
Export the type tree with enum keys to lua.
2012-03-19 20:12:27 +04:00
Alexander Gavrilov
296d3a0af3
Skeleton type metadata for future use in lua bindings.
2012-03-19 16:59:11 +04:00
Alexander Gavrilov
bfb226b92e
Add a few comments.
2012-03-19 11:33:30 +04:00
Quietust
cf58876a8e
Need to return a value here
2012-03-18 14:42:36 -05:00
Alexander Gavrilov
d4626f9751
Add unit professions and filtering on status.
2012-03-18 15:35:38 +04:00
Alexander Gavrilov
e33414fa69
Export unit curse, squad, death and burrow info.
2012-03-18 13:52:39 +04:00
Alexander Gavrilov
415ae35dff
Add RPC calls to query some global state.
2012-03-18 12:09:06 +04:00
Alexander Gavrilov
b9ecd03fe2
Make the server suspend the core around calls unless disabled.
...
I expect the majority of methods will have to suspend the core
first thing anyway, so this will reduce typing and bugs.
Also get rid of the "me->" ugliness by splitting threadFn.
2012-03-18 11:04:15 +04:00
Alexander Gavrilov
aa63493bb8
Add a ListSquads request.
2012-03-17 20:04:15 +04:00
Alexander Gavrilov
3d80a1ee35
Use a more obscure serialize method to avoid recalculating byte size.
2012-03-17 17:52:23 +04:00
Alexander Gavrilov
368b92f81f
Add a RPC call to retrieve unit info.
...
For performance reasons, material flag arrays are changed to use ints,
with enum item name mappings retrievable via a different RPC call.
2012-03-17 17:41:56 +04:00
Alexander Gavrilov
15ccfbb086
Add a ListMaterials remote call for bulk download of basic material info.
2012-03-17 15:36:42 +04:00
Alexander Gavrilov
58eb199036
Add many new template functions for enums & bitfields.
...
An incompatible change: ENUM_KEY_STR returns std::string now.
The old behavior is available via enum_item_key_str function.
2012-03-17 12:52:22 +04:00
Alexander Gavrilov
14d6a62e1d
Move CoreService to a separate file.
2012-03-17 12:09:30 +04:00
Petr Mrázek
3168a2ef62
Add a tiletype function to get basic shapes from shapes. Track modules.
2012-03-16 20:41:07 +01:00
Alexander Gavrilov
976fa18d72
A number of interface tweaks in RemoteClient.
...
- Associate a default output stream with the whole connection.
If not explicitly specified in the constructor, uses stdout.
- Add methods that use this default stream to RemoteFunction.
- Add easily usable wrappers for CoreSuspend and CoreResume.
2012-03-16 14:11:46 +04:00
Quietust
5464564ef6
Merge branch 'master' of git://github.com/angavrilov/dfhack
...
Conflicts:
library/xml
2012-03-15 20:12:01 -05:00
Quietust
4d66218783
Update bprobe to print civzone subtypes
2012-03-15 20:09:56 -05:00
Petr Mrázek
c72fb76316
MSVC fixage for the new socket API
2012-03-15 22:05:33 +01:00
Quietust
52aca6e05a
Rename "interface" to "interfacest" and just avoid all of these MSVC problems
2012-03-15 13:00:47 -05:00
Quietust
57a41a0deb
Fix indentation
2012-03-15 11:50:38 -05:00
Alexander Gavrilov
f84b1539a8
Change to the traits representation of enum and bitfield properties.
2012-03-15 20:46:08 +04:00
Petr Mrázek
e5efbc5895
Merge https://github.com/angavrilov/dfhack
2012-03-15 15:40:35 +01:00
Petr Mrázek
1ac8025025
Merge https://github.com/angavrilov/dfhack
...
Conflicts:
plugins/workflow.cpp
2012-03-15 14:43:05 +01:00
Alexander Gavrilov
4eb4811777
Make the DF suspend lock recursive, and add RPC calls for batch suspend.
...
The idea is that if you have to execute many RPC calls, it is
faster to suspend once. The service class takes care to auto-resume
in the destructor in case the client just disappears.
2012-03-15 15:33:19 +04:00
Alexander Gavrilov
605ee9669a
Plugin-exported functions now actually work.
2012-03-15 14:06:50 +04:00
Alexander Gavrilov
87f925e72e
Add support for exporting functions from plugins, with example in rename.
...
TODO: test by actually calling them remotely.
2012-03-15 13:01:23 +04:00
Alexander Gavrilov
e7851f5abd
Improve support for void RPC functions, dfhack-run, etc.
2012-03-15 11:07:43 +04:00
Alexander Gavrilov
560e977f05
Implement trivial RPC interface for dfhack via TCP & protobufs.
...
Use it to make an executable capable of calling commands remotely.
2012-03-14 19:57:29 +04:00
Alexander Gavrilov
c42e2ff053
Support crafts and add a couple of options in workflow.
2012-03-14 12:09:02 +04:00
Alexander Gavrilov
a05cbcc2de
Rename the world substruct with the save directory name.
2012-03-14 10:56:30 +04:00
Petr Mrázek
d75908b95c
Merge https://github.com/ClaytonHughes/dfhack
...
Conflicts:
library/Core.cpp
plugins/workflow.cpp
Just had to fix a few minor things.
2012-03-14 01:52:58 +01:00
Quietust
a4ce1fff13
Update MapCache to allow decoding tiles underneath ice and constructions, and allow revflood to take those into account
2012-03-13 15:40:38 -05:00
Quietust
8e933fb75e
Ignore the .rule file too
2012-03-13 12:17:00 -05:00
Petr Mrázek
9079ffa4ff
Add clsocket as a dependency for dfhack lib.
2012-03-13 17:10:46 +01:00
Petr Mrázek
eb4757043b
Move depends out of main library, make them (static) libraries.
2012-03-13 14:46:48 +01:00
Petr Mrázek
b3f6bccdf6
Merge branch 'cleanups' of https://github.com/plaes/dfhack
2012-03-12 15:05:44 +01:00
Petr Mrázek
ea8a2ad9a2
Remove references to never implemented commands...
2012-03-12 15:05:23 +01:00
Clayton Hughes
4cb8995a05
Fixed script loading improperly checking for errors.
...
Also closed the file for good measure. I couldn't find any documentation that said that ~ifstream() did this.
2012-03-12 00:33:59 -07:00
Clayton Hughes
445b580ad1
Added 'script' command to load DFHack scripts from file. Syntax is the same as dfhack.init / interactive.
2012-03-11 23:31:29 -07:00
Petr Mrázek
db93b548db
Check for a valid plugin_shutdown function when unloading plugins
...
Fixes related segfault
2012-03-11 23:07:38 +01:00
Petr Mrázek
32cc4c8928
Fix MSVC build error related to min and max macros
...
Tinythread was leaking those.
2012-03-10 20:47:10 +01:00
Petr Mrázek
75113b715a
Misc fixes for warnings...
2012-03-10 16:03:11 +01:00
Petr Mrázek
cff654bca6
Track structures
2012-03-10 15:51:50 +01:00
Petr Mrázek
003a0f9eb8
Merge https://github.com/angavrilov/dfhack
2012-03-10 15:51:45 +01:00
Petr Mrázek
50b7db982f
Fix zlib, protobuf.
...
Zlib is now found using CMake on linux and set to harcoded paths
on windows, yet uniform in use throughout the build system.
protobuf-lite now compiles under MSVC properly.
2012-03-10 15:31:46 +01:00
Alexander Gavrilov
8cc82d5876
Make plugins accept explicit output stream references.
...
This is an incompatible change to the plugin ABI.
The Console is not thread-safe unless used indirectly
via color_ostream_proxy, so everything should use their
per-thread stream.
2012-03-10 15:55:42 +04:00
Alexander Gavrilov
b2737e2bed
Pull out a colored text output interface out of the Console class.
2012-03-10 13:29:33 +04:00
Petr Mrázek
c260aca3f1
Merge https://github.com/angavrilov/dfhack
2012-03-10 02:15:34 +01:00
Alexander Gavrilov
75c569b097
Add some experimental message definitions to the main library.
2012-03-09 21:42:22 +04:00
Alexander Gavrilov
edf77cf270
Link protobuf to dfhack core as a shared library.
...
- Change protobuf libraries to build as DLLs.
- Move some stream features to the lite library.
- Install the lite library and use it from dfhack.
Note that:
- A couple of protobuf headers had to be tweaked.
- The lite library is used because the full one is
absolutely incompatible with reloading plugins.
- Shutting down protobuf also can't be allowed.
2012-03-09 19:46:21 +04:00
Clayton Hughes
47bbe1a3ff
Fixed up formatting, debug messages in new Windows Hotkey stuff.
2012-03-09 01:07:47 -08:00
Clayton Hughes
3d1ce32785
Windows now detects hotkeys using the correct keyboard layout.
2012-03-09 00:56:09 -08:00
Petr Mrázek
3598282ed7
Update readme, track df2mc and structures
2012-03-07 23:40:22 +01:00
Petr Mrázek
b6df6c2eff
Track structures
2012-03-07 21:02:46 +01:00
Alexander Gavrilov
9b071097de
Fix advtools metal-detector
...
Trader items are now inside tables, and thus not in the block
item lists. Thus it is necessary to scan the global item vector
and look up blocks by coords.
2012-03-07 18:10:53 +04:00
Petr Mrázek
f83db86258
Use tile buffers!
2012-03-05 02:24:02 +01:00
Petr Mrázek
a45fc82743
First pass at windowing, track df2mc, stonesense
2012-03-05 01:34:04 +01:00
Petr Mrázek
6aa2a3e676
Track structures
2012-03-04 11:58:41 +01:00
Petr Mrázek
99abd4102d
Merge https://github.com/quietust/dfhack
2012-03-04 11:58:37 +01:00
Petr Mrázek
d33e9a9770
Sort layer materials in prospector by depth.
2012-03-03 23:18:12 +01:00
Quietust
2b2c30ac43
DEEP_ANY got renamed to SPECIAL
2012-03-03 16:03:35 -06:00
Petr Mrázek
7fe8762852
Get rid of Simple namespace, Gui module is now a namespace.
2012-03-03 14:38:24 +01:00
Petr Mrázek
022822277d
Fix the ugly Materials code...
2012-03-01 01:52:13 +01:00
Petr Mrázek
2682c54fce
Fix horrible errors and make MSVC shut upt about non-issues.
2012-03-01 01:29:55 +01:00
Petr Mrázek
c6fd508ee3
Fix possible source of vile errors.
2012-03-01 00:33:11 +01:00
Petr Mrázek
a322b3ad87
Track structures
2012-02-29 17:44:51 +01:00
Petr Mrázek
f0fc0d4428
Bump version to 0.34.03-r1, update docs to list new plugins.
2012-02-28 22:30:55 +01:00
Petr Mrázek
a13717212a
Track structures
2012-02-28 19:05:55 +01:00
Petr Mrázek
d1a1c790ec
Paint DFHack in corner if supported.
2012-02-28 18:19:13 +01:00
Petr Mrázek
95ac3db542
Fix normal hooks.
2012-02-28 12:59:02 +01:00
Petr Mrázek
731472a478
Add eggy hooks (linux only for now)
2012-02-28 03:37:56 +01:00
Petr Mrázek
f8721c88b5
dev version. update structures, stonesense
2012-02-27 20:10:31 +01:00
Petr Mrázek
8afafd0430
Get rid of ntdll, update stonesense
2012-02-25 22:59:32 +01:00
Petr Mrázek
75bec0dfb2
fix spatter objects
2012-02-25 21:17:45 +01:00
Alexander Gavrilov
ad7b9d42a1
Add a command for swapping body with another units in adventure mode.
...
Based on dfusion code, with lots of safety checks added. Supports two
swap modes: transient and permanent; the former does a minimal change
and is intended for managing companion inventory. The permanent one
performs all known actions necessary to turn it into the real adventurer.
Note: the transient mode is a hack and may cause the game to crash
if not reverted while within range of the real adventurer unit.
2012-02-25 17:08:05 +04:00
Priit Laes
1299b0d4c6
Don't compile Lua on UNIX
2012-02-23 13:49:07 +02:00
Petr Mrázek
6696e79838
Disable 34.01 symbol tables
2012-02-23 09:02:10 +01:00
Petr Mrázek
2b761e450f
Add the init file to builds, mention it in readme.
2012-02-23 08:57:11 +01:00
Petr Mrázek
2371b93b3d
move sortable to top level
2012-02-22 23:22:41 +01:00
Petr Mrázek
390859dd98
Update xml
2012-02-22 22:58:33 +01:00
Petr Mrázek
58e3813d56
Fix more MSVC fail, make console recognize 'man' command.
2012-02-22 19:54:07 +01:00
Petr Mrázek
a9c9ac98fe
Silence some MSVC warnings.
2012-02-22 19:28:40 +01:00
Petr Mrázek
15cc08debc
Fix the fail.
2012-02-22 19:02:06 +01:00
Petr Mrázek
0807baf0c0
Merge https://github.com/mikestewart/dfhack
2012-02-22 15:22:19 +01:00
Petr Mrázek
8ee27e182a
Hidden weather command raw value override
2012-02-22 15:21:29 +01:00
Mike Stewart
baea253578
Merge remote-tracking branch 'upstream/master'
2012-02-21 23:31:53 -08:00
Mike Stewart
14b471a459
Add ability menu/area map width reading and writing to the Gui module, and use the new information in follow to properly center the screen regardless of menu configuration. Also general fixing and cleanup in follow.
2012-02-21 23:30:44 -08:00
Petr Mrázek
34c9c2d663
Fix stonesense, MSVC fail
2012-02-21 18:30:31 +01:00
Petr Mrázek
2cd2ee9b0c
New plugin interface
2012-02-21 18:19:17 +01:00
Petr Mrázek
0b9e849096
Update submodules, sort 'ls' output.
2012-02-21 15:21:50 +01:00
Petr Mrázek
931121e5fd
Update structures
2012-02-20 17:55:33 +01:00
Alexander Gavrilov
02e486be88
Support the new unitlist screen; it's same as joblist, but with pages.
2012-02-20 17:53:39 +04:00
Petr Mrázek
80cedd2ff8
Fix header includes, update structures.
2012-02-20 11:42:40 +01:00
Petr Mrázek
7c7cf0b302
Don't throw exceptions on dummy global-address elements.
2012-02-20 08:30:33 +01:00
Petr Mrázek
33f77c8837
Merge https://github.com/quietust/dfhack
2012-02-19 20:28:08 +01:00
Petr Mrázek
252895708f
Fixage.
2012-02-19 20:27:44 +01:00
Petr Mrázek
27e3e0f2c2
Update submodules
2012-02-19 20:08:29 +01:00
Quietust
d394dc406b
Update t_building, change subtype into a union of all possible subtypes (depending on type)
2012-02-18 11:34:52 -06:00
Petr Mrázek
1511a6b7ed
Use hexadecimal numbers in tilesieve
2012-02-18 15:07:55 +01:00
Petr Mrázek
fa6ec63535
Add zoom to kittens, fix tilesieve.
2012-02-17 05:30:34 +01:00
Petr Mrázek
28059a7f35
Tilesieve devel tool
2012-02-16 16:22:05 +01:00
Petr Mrázek
1bf5080828
Fixage. Runs with 34.01
2012-02-15 21:35:44 +01:00
Petr Mrázek
448e270421
Merge https://github.com/quietust/dfhack
...
Conflicts:
plugins/mapexport/mapexport.cpp
2012-02-14 09:59:33 +01:00
Petr Mrázek
bdbfbf5988
Fix catsplosion.
2012-02-14 09:37:30 +01:00
Quietust
2fd2e3dce2
Get rid of t_effect_40d and EFFECT_TYPE - they're in the XML now, and they're actually correct too
2012-02-13 21:56:47 -06:00
Quietust
2ddd3df3a8
When searching for tile types, only require candidate tile to match variant or special if it actually has them
2012-02-13 20:32:41 -06:00
Quietust
b152a40e83
Fix remaining issues
2012-02-13 19:56:55 -06:00
Quietust
d15d38d536
Finish conversion, fix compile errors
2012-02-13 19:17:38 -06:00
Quietust
d0a8c2edd8
Move TileTypes to XML, part 1 - a bunch of stuff is now broken
2012-02-13 16:56:33 -06:00
Petr Mrázek
f600928ec1
Move catsplosion, tweak for build targets under MSVC.
2012-02-13 17:43:41 +01:00
Quietust
9f43d61c2c
Fix MapCache crash when in Arena mode
2012-02-13 09:56:35 -06:00
Alexander Gavrilov
e39852ff2e
Make BitArray(unsigned) treat the argument as the number of bytes.
2012-02-12 18:06:00 +04:00
Alexander Gavrilov
1047c2517d
Add size-defining constructors for BitArray.
2012-02-12 17:44:19 +04:00
Alexander Gavrilov
c04a140713
Add a new DfArray class to match generated headers.
...
Also, add working assignment and copy constructor to BitArray, and
change the unsafe conversion to int from an operator to a method.
2012-02-12 16:44:35 +04:00
Petr Mrázek
ed53ee7031
Update to use the new symbols file.
2012-02-11 19:24:44 +01:00
Petr Mrázek
8527547cbe
Merge branch 'master' into purge
...
Conflicts:
library/DataDefs.cpp
2012-02-11 18:48:17 +01:00
Alexander Gavrilov
f469fab1e6
Use globals defined by the latest codegen.
2012-02-11 16:27:12 +04:00
Petr Mrázek
aee5efe7c0
Make it run on Windows, re-added more missing globals to memory.xml
2012-02-10 02:35:51 +01:00
Quietust
952f621ee2
Synchronize with df-structures
2012-02-08 22:35:22 -06:00
Petr Mrázek
8f680dcf94
Make it build and run on linux (no stonesense, df2mc, dfusion)
2012-02-09 03:07:26 +01:00
Petr Mrázek
f7d8635be1
Remove fat from memory.xml, simplify memory.xml loading, break
...
everything.
2012-02-08 13:22:42 +01:00
Quietust
0d11d1b79c
Synch with structures changes
2012-02-07 15:37:21 -06:00
Petr Mrázek
0a5ee01f6e
update structures
2012-02-06 10:04:58 +01:00
Petr Mrázek
8f1a2ebf7f
Added missing keybinding mention to 'ls', DFusion hotfix.
2012-02-06 04:47:13 +01:00
Petr Mrázek
0c79682fc5
Update structures
2012-02-06 01:35:07 +01:00
Petr Mrázek
e7f8e539f7
Update structures
2012-02-05 20:51:15 +01:00
Petr Mrázek
2b22b0b336
Make dwarf export optional. Update structures.
2012-02-05 20:16:00 +01:00
Petr Mrázek
1bcf96f4e8
Update structures
2012-02-05 19:55:32 +01:00
Alexander Gavrilov
ec5f3cc4b3
Update fixpositions to match the new data definition naming.
2012-02-05 16:13:19 +04:00
Petr Mrázek
e51e4f6bd2
More docs work.
2012-02-05 06:02:44 +01:00
Mike Stewart
4b3a2bfe05
Merge.
2012-02-03 23:29:05 -08:00
Petr Mrázek
2ff994c18f
Make perl executable tweakable.
2012-02-04 03:43:14 +01:00
Alexander Gavrilov
878bc3d3a1
Implement pre-embark estimate in prospector.
...
Requires careful tuning of the vein density computation.
2012-02-02 22:14:49 +04:00
Petr Mrázek
22aeb6e2ac
Added linkage to libdl, fix for mode.
2012-02-01 04:12:15 +01:00
Mike Stewart
7d55b84545
Merge remote-tracking branch 'upstream/master'
2012-01-31 11:45:20 -08:00
Petr Mrázek
e5b1433d44
Update structures.
2012-01-31 18:52:02 +01:00
Quietust
9afcea3deb
In all loops that iterate across a vector, use a size_t as the index
2012-01-31 10:55:38 -06:00
Mike Stewart
09f197fa6d
Fixed mapexport build on Linux.
2012-01-31 08:42:25 -08:00
Quietust
a82f4c9138
Cleanup code to get rid of MSVC warning C4482
2012-01-31 10:17:27 -06:00
Mike Stewart
dcc02506b7
Merge remote-tracking branch 'quietust/master'
2012-01-29 12:05:30 -08:00
Mike Stewart
3dece3395d
Merge remote-tracking branch 'upstream/master'
2012-01-29 12:04:33 -08:00
Quietust
70454842ae
Add missing direction indicators to smooth wall tiles, and cleanup spacing
2012-01-29 11:38:34 -06:00
Alexander Gavrilov
e5be2c75c2
Merge remote-tracking branch 'q-github/master'
2012-01-29 14:14:05 +04:00
Mike Stewart
05c37af4c9
Mapexport now puts stuff out to a binary file compressed with zlib. Added liquid type and flow size to output as well.
2012-01-28 23:55:42 -08:00
Mike Stewart
bd26c54259
Merge remote-tracking branch 'quietust/master'
2012-01-28 13:33:26 -08:00
Mike Stewart
b07d3b25b5
Merge upstream/master
2012-01-28 13:32:48 -08:00
Quietust
8a4740c479
Make all "origin" fields strongly typed, and fix building.origin to actually be meaningful
2012-01-28 14:12:41 -06:00
Quietust
9e40228767
Adjust Maps typedefs a bit
2012-01-28 13:54:59 -06:00
Alexander Gavrilov
fa4fb4b407
Modify a number of commands to use CR_WRONG_USAGE for displaying help.
2012-01-28 16:03:56 +04:00
Quietust
69b8f168cc
Improve Translation::isValid() - make sure world exists
2012-01-27 22:01:59 -06:00
Quietust
34f9d98d45
Simplify TranslateName a bit using a helper function
2012-01-27 21:46:52 -06:00
Quietust
116e5d60be
Update Translation::TranslateName to include the first name, plus have it follow the init setting for nickname display (in Dwarf mode)
2012-01-27 21:36:01 -06:00
Mike Stewart
b89cd43b85
More work on getting the map exporter up to speed.
2012-01-27 17:32:52 -08:00
Quietust
ccad6efeb8
Remove UTF-8 BOMs
2012-01-27 09:47:14 -06:00
Quietust
5521459fc1
"unknown1" was renamed to "body_info"
2012-01-27 09:41:51 -06:00
Petr Mrázek
1d7ed14442
Merge https://github.com/quietust/dfhack
...
Re-add some get* forms of module calls.
Conflicts:
plugins/mapexport/mapexport.cpp
2012-01-27 06:27:57 +01:00
Petr Mrázek
d5d4875532
Make things work properly.
2012-01-27 05:54:26 +01:00
Quietust
be892beba9
Update materials module to match XML changes
2012-01-26 21:32:47 -06:00
Quietust
fe34e07d2b
Re-add the ability to request simplified copies of Constructions, Engravings, and Plants; also fix the "isValid" checks for those modules to actually be meaningful
2012-01-26 20:29:59 -06:00
Quietust
cfca04f2d2
Cleanup TileTypes
...
* Group tiletypes by 0x10 instead of by 10
* Change tile type parameters to use int16_t consistently
* Various description fixes
2012-01-26 10:38:18 -06:00
Petr Mrázek
0375be549c
Merge https://github.com/mikestewart/dfhack
2012-01-26 05:37:50 +01:00
Petr Mrázek
850ede3e72
Sync structures.
2012-01-26 05:36:35 +01:00
Quietust
3c60b43a38
Fix "origin" field on mapblock40d to actually be correct
2012-01-25 07:57:11 -06:00
Quietust
902e0c4d90
Strip out old offsets from Gui module and use df::global vars where available
2012-01-24 22:18:21 -06:00
Quietust
9a683ffda4
Switch some World module stuff to read out of appropriate df::global vars, and fix setPauseState to only write a byte instead of a dword
2012-01-24 21:51:17 -06:00
Quietust
26730dc6c2
Kill the Constructions module
2012-01-24 16:11:48 -06:00
Mike Stewart
e68cdee95b
Merge remote-tracking branch 'quietust/master'
2012-01-24 12:27:38 -08:00
Quietust
8861e93848
Kill the Vegetation module, replacing it with the same 3 simple methods used in Engravings
2012-01-24 12:02:12 -06:00
Quietust
6d1af090c5
Tweak Engravings.h
2012-01-24 11:57:47 -06:00
Quietust
f8ce959402
Kill the Engravings module
2012-01-24 11:53:49 -06:00
Quietust
cc7c7795a1
Kill the Units module, and add another pair of methods to the Items module to simplify some things
2012-01-24 11:32:34 -06:00
Quietust
02d75e2c94
Building module is gone, so this function doesn't exist anymore
2012-01-24 10:59:26 -06:00
Quietust
a3904b99dd
Remove bad assert from Translation, as well as <cassert> from other modules that don't use it
2012-01-24 10:57:25 -06:00
Quietust
466bf89578
Goodbye, Translation module
2012-01-24 10:54:12 -06:00
Alexander Gavrilov
174d9d0739
Tweak showmood, add a few validity checks, commit a dfhack.init example.
2012-01-24 15:36:30 +04:00
Quietust
6adadb396e
df::tool_uses is now implicitly int16_t, so no more enum_field<> here
2012-01-23 19:40:02 -06:00
Mike Stewart
031119ac73
Made mapexport build with latest Material changes.
2012-01-22 15:47:39 -08:00
Mike Stewart
0d79fd9b15
Merge remote-tracking branch 'quietust/master'
2012-01-22 15:31:34 -08:00
Quietust
7f23c322a2
Cleanup
2012-01-21 19:24:58 -06:00
Quietust
ccf22bed10
Replace df_plant with df::plant - this leaves the Vegetation module a bit empty, but I'll leave it in case we decide to add something new there
2012-01-21 17:54:57 -06:00
Mike Stewart
debeebb7c4
Merge remote-tracking branch 'quietust/master'
2012-01-21 11:26:12 -08:00
Quietust
d2c78646ea
t_creaturecaste shouldn't be using t_attrib, because those AREN'T actual attribute values, just the PHYS/MENT_ATT_RANGE values from the raws
2012-01-21 13:24:38 -06:00
Quietust
7b2835e2a9
Get rid of df_name
2012-01-21 13:12:40 -06:00
Quietust
8052305c2e
Cleanup the Units module
2012-01-21 13:03:39 -06:00
Quietust
118e5c6617
Major cleanup of Materials modul, precursor to eventually nuking it
2012-01-21 10:12:26 -06:00
Quietust
d504479fc2
Merge https://github.com/angavrilov/dfhack
2012-01-21 09:59:54 -06:00
Quietust
d9c4f259a0
These will become necessary shortly
2012-01-21 08:59:19 -06:00
Alexander Gavrilov
b0cda1526e
Adjust FOR_ENUM_ITEMS to account for ENUM_LAST_ITEM being inclusive now.
2012-01-21 18:50:44 +04:00
Alexander Gavrilov
2449b80010
Update to match the data definitions.
2012-01-21 17:18:53 +04:00
Mike Stewart
df08914549
Better fix for building protobufs with C++0x turned on.
2012-01-20 16:21:50 -08:00
Mike Stewart
bf60f5975a
Cleaned up the protobuf and mapexport build scripts a lot, and added two more simple proto files to store map geometry information.
2012-01-20 11:21:29 -08:00
Mike Stewart
9b0b0d53f9
Merge remote-tracking branch 'quietust/master'
2012-01-20 09:47:32 -08:00
Mike Stewart
941c643b5c
Cleaned up the protobuf build a bit, and made git ignore files generated in doing so. Fixed building mapexport on Linux by forcing CMake to create a directory for protobuf output files.
2012-01-20 09:17:08 -08:00
Quietust
1b419313f4
Merge https://github.com/angavrilov/dfhack
2012-01-20 10:40:25 -06:00
Alexander Gavrilov
80292bd49e
Update Maps to match the new geo_biome definitions.
2012-01-20 20:27:39 +04:00
Quietust
67f60a07bd
Fix crash bug in dfprobe
2012-01-20 08:30:09 -06:00
Alexander Gavrilov
cc510a2c4b
Replace DFCoord with df::coord and df::coord2d.
2012-01-20 14:28:00 +04:00
Quietust
c0a0702882
Improve error handling within Maps module - only throw exceptions if there's no meaningful return type
2012-01-19 22:11:43 -06:00
Quietust
e7ecda1434
Kill the Maps module
2012-01-19 21:44:17 -06:00
Mike Stewart
1e59811e65
Fixed check for old GCC versions.
2012-01-19 14:55:10 -08:00
Mike Stewart
494a4202df
Added Google Protocol Buffers to the library dependencies folder (though nothing yet depends on it). This definitely works in Linux, but needs checking in Windows.
2012-01-19 14:44:01 -08:00
Quietust
e7dcd4c66a
Fix stupid typo
2012-01-19 14:57:55 -06:00
Quietust
4bb724cd6c
Significant cleanup of Maps module - next step will be to kill it properly
2012-01-19 14:11:52 -06:00
Alexander Gavrilov
e2d7359bdd
Add the gps global to Memory.xml.
2012-01-19 17:26:21 +04:00
Alexander Gavrilov
7db467a740
Update code to accomodate the new coord/coord2d/coord_path structs.
...
Also replicate the methods of DFCoord.
2012-01-19 14:30:22 +04:00
Quietust
35ad84c58a
angavrilov changed general_ref_type to be all uppercase
2012-01-18 08:26:08 -06:00
Quietust
fd653a0227
Kill the Items module
2012-01-16 22:12:58 -06:00
Quietust
9d8c67b710
Kill the Kitchen module (which was never really a proper module to begin with)
2012-01-16 21:22:42 -06:00
Quietust
a9eb555b99
Get rid of t_itemimprovement (wasn't even used)
2012-01-16 20:41:09 -06:00
Quietust
7c5835d318
t_itemref -> df::general_ref
2012-01-16 20:40:29 -06:00
Quietust
c18619520d
df_contaminant -> df::contaminant
2012-01-16 20:18:40 -06:00
Quietust
64b55acf37
df_item -> df::item, t_itemflags -> df::item_flags
2012-01-16 20:16:16 -06:00
Quietust
97bae19c13
Update BitArray to automatically grow whenever setting/toggling bits beyond the end
2012-01-15 18:08:35 -06:00
Quietust
e82055986e
Only use #include <> for system libraries - for everything else, use ""
2012-01-15 14:54:14 -06:00
Petr Mrázek
d972b07d57
Merge https://github.com/quietust/dfhack
...
Conflicts:
plugins/autodump.cpp
plugins/cleaners.cpp
2012-01-15 19:51:34 +01:00
Alexander Gavrilov
bcb51d8ff7
Use the announcement API to report starting and stopping workflow jobs.
2012-01-15 15:39:20 +04:00
Alexander Gavrilov
0f56611edc
Support showing announcements, as suggested by Q.
2012-01-15 15:19:20 +04:00
Alexander Gavrilov
a31542862a
Add utility functions to retrieve the selected job/unit/item.
...
Units can be selected via 'u', 'j', 'v' and 'k'; full-screen
unit details view not supported.
Items can be selected via 't', 'k', 'v'->inventory.
Also, when viewing a container item full-screen, the selected
contained item or unit is returned; never the container itself.
The api is used in rename to allow setting nicknames for
arbitrary units, including animals and enemies.
2012-01-14 19:31:43 +04:00
Alexander Gavrilov
53e9a1659b
Add automatic drybucket and melting to workflow.
2012-01-12 20:07:53 +04:00
Quietust
555183cb25
Remove unreferenced variables
2012-01-11 10:57:05 -06:00
Quietust
6d2ce7b8a9
Add default return value to MaterialInfo::matches
2012-01-11 10:50:38 -06:00
Alexander Gavrilov
9a86087db5
Add timeouts when a job is cancelled, and color the command output.
2012-01-11 20:04:04 +04:00
Quietust
24576ffe19
Silence annoying warning in MSVC
2012-01-11 08:54:54 -06:00
Petr Mrázek
cc2ac0b04f
Merge https://github.com/angavrilov/dfhack
...
Conflicts:
library/xml
2012-01-10 19:50:13 +01:00
Petr Mrázek
1d4b9ac318
Track structures
2012-01-10 19:47:48 +01:00
Alexander Gavrilov
7f5aa4de62
Support the most important job types in workflow.
2012-01-10 17:23:37 +04:00
Petr Mrázek
571498ea21
Vermin tweaks.
2012-01-10 00:45:43 +01:00
Alexander Gavrilov
50386f66a3
Update structures and implement modifying the job_item item type.
2012-01-09 16:20:17 +04:00
Alexander Gavrilov
ea790f1346
Move a few functions into the core, and add some more.
2012-01-08 20:02:12 +04:00
Alexander Gavrilov
64a9a49ec0
Merge remote-tracking branch 'origin/master'
2012-01-08 16:19:58 +04:00
Alexander Gavrilov
22071e2d51
Update data defs.
2012-01-08 16:10:38 +04:00
Petr Mrázek
da2b00d480
Sync structures
2012-01-08 07:02:05 +01:00
Petr Mrázek
8a46386502
Dissolve vermin module.
2012-01-08 06:59:52 +01:00
Petr Mrázek
72016d9188
Buildings aren't a module anymore, fix probe segfaults.
2012-01-08 02:22:13 +01:00
Alexander Gavrilov
87009c0535
Add a plugin that protects specific repeat jobs from disappearing.
...
If they do disappear, they are re-added in a suspended state.
2012-01-07 21:47:23 +04:00
Alexander Gavrilov
07ad9ad972
Add persistent data storage in fake historical figure names.
2012-01-07 19:21:31 +04:00
Alexander Gavrilov
f5e121a196
Move a bunch of stuff from the jobutils plugin into the core.
2012-01-07 19:21:07 +04:00
Alexander Gavrilov
0e90e6b78e
Support multi-valued enum attributes.
2012-01-06 22:08:09 +04:00
Petr Mrázek
a2cad00dbb
Remove GetCustomWorkshopType, custom workshop types are now saner.
2012-01-06 01:08:30 +01:00
Petr Mrázek
e520a1d43b
Fix building coord variables.
2012-01-06 00:24:00 +01:00
Petr Mrázek
756b8131c1
Small fix in Buildings, update stonesense.
2012-01-06 00:09:49 +01:00
Petr Mrázek
72a4698968
Merge https://github.com/angavrilov/dfhack
2012-01-05 23:54:33 +01:00
Petr Mrázek
8e993fedc3
Update df structures.
2012-01-05 23:51:47 +01:00
Petr Mrázek
78a98de37e
Fix MSVC builds, break buildings :D
2012-01-05 23:39:14 +01:00
Alexander Gavrilov
687245abd9
Allow setting job item materials.
2012-01-05 22:04:05 +04:00
Alexander Gavrilov
4a59690968
Don't print empty parentheses without any flags to fill them.
2012-01-04 20:22:56 +04:00
Alexander Gavrilov
284009e873
Add a hotkey command to duplicate jobs in workshops.
2012-01-04 19:39:38 +04:00
Alexander Gavrilov
99dda069de
Update data definitions.
2012-01-04 18:46:39 +04:00
Petr Mrázek
86464b99cc
Remove DfVector, break MSVC builds until further notice.
2012-01-04 01:45:11 +01:00
Alexander Gavrilov
1d1cd63800
Implement printing job details.
2012-01-03 22:56:05 +04:00
Alexander Gavrilov
f8814909a9
Move the MaterialInfo class to the main library.
2012-01-03 19:25:55 +04:00
Alexander Gavrilov
fb736a8556
Support more ways to binsearch in a vector.
2012-01-03 13:07:49 +04:00
Alexander Gavrilov
326c58f793
Add a plugin to tweak inorganic materials in jobs.
...
It also auto-seeks in the build item list if used in that context.
2012-01-02 18:46:24 +04:00
Alexander Gavrilov
bfcaca9266
Update xml defs with more ui info.
2012-01-02 15:18:23 +04:00
Alexander Gavrilov
6476d61e59
Update structure definitions & add the fixwagons plugin from Q.
2012-01-01 23:05:45 +04:00
Petr Mrázek
3f9e1b0c2b
Update xml
2012-01-01 04:26:22 +01:00
Petr Mrázek
6029949ca3
Update library/xml so things actually build.
2012-01-01 03:46:36 +01:00
Petr Mrázek
f2a69188ea
Use submodule for memory structure definitions (df-structures).
2012-01-01 03:34:29 +01:00
Petr Mrázek
52dfa842cc
Add missing MiscUtils.cpp
2011-12-31 13:14:08 +01:00
Petr Mrázek
f35cdb84cd
Merge https://github.com/angavrilov/dfhack
...
Conflicts:
library/Core.cpp
library/PluginManager.cpp
library/include/Core.h
library/include/PluginManager.h
library/modules/Gui.cpp
plugins/stockpiles.cpp
2011-12-31 13:09:12 +01:00
Petr Mrázek
9db20bd84d
Header changes/cleanup.
2011-12-31 12:48:42 +01:00
Alexander Gavrilov
b652ec4132
Implement context-sensitive keybinding support.
...
Allow defining commands with guard conditions, and binding
one or more commands to alphabetic and function keys. When
the relevant key is pressed, the first listed command with
successfully evaluated guard is chosen.
For consistency, the guard is also checked when the command
is invoked from the console; this requires suspending the
core inside PluginManager, before invoking plugin code.
2011-12-31 13:25:46 +04:00
Petr Mrázek
1284b30f79
Merge https://github.com/angavrilov/dfhack
2011-12-31 01:40:08 +01:00
Alexander Gavrilov
2222757e77
Implement context-sensitive keybinding support.
...
Allow defining commands with guard conditions, and binding
one or more commands to alphabetic and function keys. When
the relevant key is pressed, the first listed command with
successfully evaluated guard is chosen.
For consistency, the guard is also checked when the command
is invoked from the console; this requires suspending the
core inside PluginManager, before invoking plugin code.
2011-12-30 23:25:50 +04:00
Alexander Gavrilov
4aa77f5530
Execute commands from the dfhack.init file on startup.
2011-12-30 23:11:34 +04:00
Alexander Gavrilov
b71e577771
Allow specifying parameters in hotkey commands.
...
Now that hotkeys can be set to arbitrary strings, tokenize them.
2011-12-30 18:27:55 +04:00
Alexander Gavrilov
53346328e8
Notify plugins about game being loaded or unloaded.
...
As a test, make seadwatch deactivate on these events.
2011-12-30 18:12:15 +04:00
Espen Wiborg
1a88df201c
Traits are active if MORE than 10 away from 50
2011-12-30 10:20:16 +08:00
Petr Mrázek
e6ff6b04fc
Merge https://github.com/warmist/dfhack
2011-12-30 03:12:29 +01:00
Alexander Gavrilov
298e2fe92d
Add a plugin to rename squads and hotkeys (without the 9 char limit).
2011-12-29 17:37:07 +04:00
Alexander Gavrilov
5173a1235b
Fix plugin reloading.
2011-12-29 16:46:08 +04:00
Alexander Gavrilov
b14e2a0c0d
Update the XML definitions.
2011-12-29 16:46:08 +04:00
Alexander Gavrilov
d513e75365
Use the updated code generator with support for vtables & constructors.
2011-12-29 16:46:01 +04:00
Warmist
2643e0c5a7
Merge branch 'master' of git://github.com/peterix/dfhack
2011-12-28 22:49:31 +02:00
Petr Mrázek
51dae5a5dc
Fix for minor MSVC error.
2011-12-24 14:34:10 +01:00
Petr Mrázek
e9f9f9b92e
Merge https://github.com/angavrilov/dfhack
2011-12-24 14:27:58 +01:00
Petr Mrázek
59c32b1ee9
Some changes required on windows.
2011-12-24 14:27:35 +01:00
Alexander Gavrilov
2eb56d0480
Make strongly-typed 'any virtual class' pointers optional.
...
It seems they might not work properly on msvc.
2011-12-24 17:17:01 +04:00
Alexander Gavrilov
81ad287c06
Generate very simple static functions to find objects in global vectors.
2011-12-24 16:22:10 +04:00
Warmist
dc78e99f75
Added getKeys to OffsetGroup (for easy lua access to all things that memory.xml has)
2011-12-24 13:53:59 +02:00
Alexander Gavrilov
79ac2a781a
Add infrastructure necessary to use the generated headers.
...
As a usage example, allow toggling water level display and idlers,
and implement a ui tweak for easily copying stockpiles.
Also disable df2mc by default - default options shouldn't
require anything not in the base package.
2011-12-24 14:51:58 +04:00
Alexander Gavrilov
0b5a470a38
Add header generation from xml.
2011-12-24 14:38:28 +04:00
Petr Mrázek
b36e5ac248
Add missing files.
2011-12-07 20:50:37 +01:00
Petr Mrázek
647916e109
Graphic module
2011-12-07 20:37:09 +01:00
Petr Mrázek
f7d78539d3
Renaming Creatures to Units
2011-12-02 10:56:40 +01:00
Petr Mrázek
9dba6003bc
Small Items tweak.
2011-11-30 07:42:59 +01:00
Petr Mrázek
57b5ed8fa7
Made invalid tile types really invalid, license and unused depends cleanup.
2011-11-25 18:54:50 +01:00
Petr Mrázek
44dad25690
No nullptr, propector -> prospect
2011-11-14 09:24:36 +01:00
Petr Mrázek
7e475970fb
Fix crash when using load, unload and reload commands.
2011-11-07 10:55:18 +01:00
Petr Mrázek
2c27119d85
Set CXXFLAGS properly to ensure compatibility with i686 systems.
2011-11-06 21:16:16 +01:00
Petr Mrázek
9968d387a0
Add zlib as windows depend for df2mc, fix md5 on windows.
2011-11-06 03:26:24 +01:00
Petr Mrázek
9be4092c7f
creature thoughts
2011-11-06 01:22:11 +01:00
Petr Mrázek
9dca825ef7
Fix include in md5 (memory.h is obsolete).
2011-11-04 19:24:04 +01:00
Petr Mrázek
da21fa1d79
MATERIAL_SOIL tweak
2011-11-04 18:51:52 +01:00
Petr Mrázek
321f9e589e
Switched out md5 implementation for a different one.
2011-11-04 09:33:33 +01:00
Petr Mrázek
af46b262b5
More init hardening.
2011-11-04 09:08:29 +01:00
Petr Mrázek
0f42dee97a
More material changes.
2011-11-03 05:01:25 +01:00
Petr Mrázek
4f0695a6d5
Messing with materials.
2011-11-03 04:30:59 +01:00
Petr Mrázek
a6eea1adfd
More checks added to MD5.
2011-11-03 02:40:49 +01:00
Petr Mrázek
f0417e12dd
Hardening.
2011-11-01 13:06:27 +01:00
Petr Mrázek
98cab0e9ad
Really fix linux Console.
2011-10-31 04:17:35 +01:00
Petr Mrázek
84e1a95205
Fix race condition in Linux version of Console.
2011-10-31 03:34:22 +01:00
Petr Mrázek
7f6fa2a008
Add an enum for base material types.
2011-10-30 21:32:43 +01:00
Petr Mrázek
063894276c
Tiny type fixes for spatter veins, updated df2mc.
2011-10-30 15:25:29 +01:00
Petr Mrázek
dc12c41d86
Fix kitchen exclusion class not being exported.
2011-10-30 03:26:50 +01:00
Petr Mrázek
a29bb4578f
Move kitchen exclusion module methods to a source file.
2011-10-30 03:20:54 +01:00
Petr Mrázek
a3a1629521
Fix seedwatch some more.
2011-10-30 02:52:25 +01:00
Petr Mrázek
4688f6557e
Fix problem with magic numbers in fastdwarf.
2011-10-28 06:22:07 +02:00
Petr Mrázek
e74aae6f3e
Rename some plant material variables
2011-10-28 05:25:49 +02:00
Petr Mrázek
bfc8df3005
Added plant raw struct
2011-10-28 04:40:35 +02:00
Petr Mrázek
61be3413e3
Make seedwatch work on linux, still with ugly hacks.
2011-10-27 03:31:13 +02:00
Petr Mrázek
335ad28fe5
Add item contaminants vector to df_item, fixed up cleanitems plugin to use it.
2011-10-27 01:08:59 +02:00
Petr Mrázek
c8cd307bcf
Added missing method stubs to df_item.
2011-10-26 23:47:45 +02:00
Petr Mrázek
1f0e91c3d0
Add enum for item types.
2011-10-26 23:12:20 +02:00
Petr Mrázek
b545de7f43
Items refactor. readItem turned into copyItem, most Items methods now accept plain df_item * instead of the copies.
2011-10-26 22:18:13 +02:00
Petr Mrázek
866b63f567
More of the items overhaul
2011-10-25 13:30:41 +02:00
Petr Mrázek
2adf1d22eb
Item description method found!
2011-10-25 05:31:37 +02:00
Petr Mrázek
04495a304c
Kill item variable accessors. YES.
2011-10-25 04:48:06 +02:00
Petr Mrázek
998d85919f
Windows offset for save name, some tweaks, updated stonesense submodule to current.
2011-10-23 22:23:54 +02:00
Petr Mrázek
a83d9fa944
Added mouse position and designation coord, along with a 'trackpos' command for kittens plugin.
2011-09-26 03:39:27 +02:00
Petr Mrázek
83ae8d6c12
Creature likes (at least the structures are back), malloc wrapper that sets memory to 0xCC.
2011-09-25 01:29:55 +02:00
Petr Mrázek
dc81367a68
Gems are now properly detected in prospector. Nuked some legacy garbage.
2011-09-24 06:48:06 +02:00
Petr Mrázek
71de950919
Possible creature variables
2011-09-21 21:48:54 +02:00
Petr Mrázek
1df71d2b7a
More tweaks related to creatures, murder implication flag for items/corpse pieces.
2011-09-21 13:47:12 +02:00
Petr Mrázek
dca4c43b0b
Creatures module rewrite
2011-09-18 13:49:10 +02:00
Petr Mrázek
d47e9b35a0
Update stonesense, fix small text alignment error.
2011-09-04 14:16:12 +02:00
Petr Mrázek
e48f8af9a8
Remove stray include.
2011-08-31 14:41:46 +02:00
Petr Mrázek
e5f0c7637e
Fixes to help/readme entries related to digcircle.
2011-08-27 15:12:03 +02:00
gsvslto
b173a59a42
Change < to " for dfhack/BitArray.h include
...
Unchanged, I got and error when building in MSVC++ 2010 Express
Not sure if line endings are UNIX as online edit from Windows machine
2011-08-23 10:57:37 +02:00
gsvslto
90163c4be5
Added includes for <maps> and <vector>
...
Without, I got errors when building in MSVC++ 2010 Express
Not sure if line endings are UNIX as online edit from Windows machine
2011-08-23 10:48:28 +02:00
Petr Mrázek
4922be0a75
Circle dig designation tool.
2011-08-22 15:18:35 +02:00
Petr Mrázek
b1868f802c
Make autodump fix the block-local item ID vectors.
2011-08-21 23:02:05 +02:00
Petr Mrázek
d2d4ce898d
Added weather plugin info to readme, option to make the console not catch 'CTRL+C' on linux.
2011-08-18 22:09:30 +02:00
Petr Mrázek
09cb6a6828
Added exporatory mining patterns tool.
2011-08-17 13:26:03 +02:00
Petr Mrázek
03e3e9002b
Linux debug...
2011-08-16 23:39:18 +02:00
Petr Mrázek
a0f99ef707
Many tweaks to plugins, reorganized the build system and removed more cruft.
2011-08-14 08:42:21 +02:00
Petr Mrázek
81e6bce92c
Command history separated from Console.
2011-08-13 14:42:09 +02:00
Petr Mrázek
d93032de3b
Fix formatting in Core.cpp
2011-08-07 08:41:46 +02:00
Petr Mrázek
fedb6150f4
Merge https://github.com/warmist/dfhack
2011-08-06 21:00:54 +02:00
Petr Mrázek
cb93b5542e
Fix problem with running interactive commands from hotkeys.
2011-08-06 04:37:29 +02:00
Petr Mrázek
4d6ad9e073
A whole bunch of fixes for crash bugs.
2011-08-05 05:02:36 +02:00
Petr Mrázek
be358ec1de
Ported deramp, cleanowned and cleartask tools.
2011-08-05 00:41:31 +02:00
Warmist
4b9786f8af
Thread safety for void* sharing part of DFHack::Core
2011-08-04 22:33:54 +03:00
Warmist
9985b5de0f
DFHack::Core modification: added a way to share void* between plugins and/or plugin unloads.
2011-08-04 22:00:21 +03:00
Petr Mrázek
6cc66d3434
Merged grow and immolate tools into plants plugin.
2011-08-02 02:21:25 +02:00
Petr Mrázek
b0659224fa
Fix windows build.
2011-08-01 06:30:29 +02:00
Petr Mrázek
fa970fc8fa
Hotkey commands work with TEXT mode (limited).
2011-08-01 04:40:23 +02:00
Petr Mrázek
331ada8f91
Don't take over console in TEXT mode.
2011-08-01 03:31:52 +02:00
Petr Mrázek
a36d8b0619
Merge https://github.com/warmist/dfhack
2011-07-31 23:29:34 +02:00
Petr Mrázek
262e915b93
Make building DFusion optional.
2011-07-30 22:08:24 +02:00
Petr Mrázek
9cf69164ed
BitArray implementation, now used in Maps for the flags.
2011-07-30 16:47:49 +02:00
Petr Mrázek
a9a3a3ff5f
Merge branch 'topic_tools'
2011-07-28 02:36:25 +02:00
Warmist
bc23cc9eca
Made Process::setPermisions functions, to set memory page's permisions
2011-07-28 01:00:12 +03:00
Petr Mrázek
2a95a4edf2
Windows part of mutex rewrite.
2011-07-27 14:22:37 +02:00
Petr Mrázek
2470e564a9
Linux-side of threading function rewrite. Windows=broken.
2011-07-27 05:59:09 +02:00
Petr Mrázek
8dec3546a3
More plugin work
2011-07-26 11:01:16 +02:00
Petr Mrázek
d65f5596cb
Ported mode, probe. Some changes required for that.
2011-07-25 10:14:58 +02:00
Petr Mrázek
a8ff3d9d48
Merge pull request #116 from matthew-cline/TOPIC-items
...
Improved Items module and itemhacks plugin
2011-07-25 01:10:07 -07:00
Matthew Cline
109f34cd6e
Improved Items module and itemhacks plugin
...
Items module:
* Identified flags for "owned by hostile" and "owned by trader".
* Identified an unknown uint32_t field as being the item age.
* Added and documented ClassNameCheck for more item ref types, though
they aren't used yet (other than to mark that item ref class as a
"known" class).
* Added method to get list of an item's unknown item ref classes.
* Made all unknown flags have name 'unk#', instead of some also having
the name 'u_ngrd#'.
Itemhacks plugin:
* Folded second command into "dumpitems unknown", which will list
any items which have the unknown vector field non-empty (which seems
to be associated with tasked items).
* "dumpitems unknown" will also dump any item with a set unknown flag
or with item refs of an unknown class.
2011-07-24 21:35:50 -07:00
Matthew Cline
41130cb613
ClassNameCheck tracks class names used
...
Each time the ClassNameCheck constructor is called it adds to the list
of class names given to it, which can later be retrieved by a class
static method.
2011-07-24 21:24:34 -07:00
Petr Mrázek
bd9643c8cc
Merge branch 'dfapi'
...
Conflicts:
CMakeLists.txt
library/DFProcess-linux.cpp
library/include/dfhack-c/modules/Creatures_C.h
library/include/dfhack/modules/Maps.h
library/modules/Creatures_C.cpp
2011-07-23 17:29:05 +02:00
Petr Mrázek
6b6eed34cc
Merge https://github.com/zilpin/dfhack
2011-07-23 17:08:15 +02:00
Petr Mrázek
97ee2a2a39
Merge pull request #95 from matthew-cline/TOPIC-pregnancy
...
creatures: read and write pregnancy counter
2011-07-23 08:07:34 -07:00
Petr Mrázek
caf6f881df
Minimize notes module.
2011-07-23 03:25:42 +02:00
Petr Mrázek
35cf108040
Fix up material color names and basic flag array type in Materials.
2011-07-22 03:54:09 +02:00
Petr Mrázek
e00a4e8888
Fix ore/gem sorting.
2011-07-22 03:00:56 +02:00
Petr Mrázek
7325808c98
Fixes to materials.
2011-07-22 02:44:36 +02:00
Petr Mrázek
131c32494a
Added DF material structs reversed by Quietust
2011-07-21 22:37:02 +02:00
Matthew Cline
86577d4f8a
Notes module
...
Gets a vector of pointers to note structs
2011-07-20 18:26:52 -07:00
Petr Mrázek
bde3616015
Merge pull request #110 from matthew-cline/TOPIC-inorganic
...
More info on inorganic materials
2011-07-20 12:35:58 -07:00
Petr Mrázek
873cbd8388
Make 'die' plugin a builtin, made the console interaction less confusing.
2011-07-20 20:58:19 +02:00
Matthew Cline
6631f97a6a
More info on inorganic materials
...
Get value, wall tile, boulder tile, smelting info and strand extraction
info for inorganic materials. Prospector uses this to separete out vein
materials into ores, gems and other.
Offsets provided for both Linux and Windows, but only tested on Linux.
2011-07-20 06:18:50 -07:00
Petr Mrázek
0defcc9889
Making Items a bit more sane. It's still using Accessors though.
2011-07-20 10:41:13 +02:00
zilpin
3d5169901c
minor bug fixes
2011-07-18 16:34:35 -04:00
zilpin
4eb13800cd
-WriteVein(), and some convenience functions for the vein bitmaps.
2011-07-18 15:55:41 -04:00
Petr Mrázek
00cf7bc39e
Merge branch 'dfapi' of github.com:peterix/dfhack into dfapi
2011-07-18 16:28:06 +02:00
Petr Mrázek
84f74bc091
Added plugin loading/unloading/reloading. Many locks. Too many damn locks.
2011-07-18 16:22:49 +02:00
Petr Mrázek
e021199178
Merge pull request #106 from matthew-cline/TOPIC-folder
...
Get game's current world save folder
2011-07-17 02:26:06 -07:00
Petr Mrázek
fdb5397a1d
Safer console shutdown.
2011-07-17 11:06:45 +02:00
Matthew Cline
a923d19f76
Get game's current world save folder
...
Use World::ReadWorldFolder() to get "region1" (or whatever it currently
is). Only have offset for Linux.
2011-07-16 16:00:50 -07:00
Petr Mrázek
9f822af45a
Process: added a method for getting the main module base (windows). Returns 0 on linux.
2011-07-16 23:00:28 +02:00
Petr Mrázek
d6d108dd34
Qt plugin fixes for windows, renamed interface to df_interface in Gui.
2011-07-16 18:10:08 +02:00
Petr Mrázek
9025066a2b
Added SDLreal.dll on windows.
2011-07-16 10:32:18 +02:00
Petr Mrázek
0d1dd5aead
Extended escape sequences are 4 bytes, not 5.
2011-07-16 10:31:49 +02:00
Petr Mrázek
003ad63c56
Disabled ctrl+c on windows (null signal handler). Some small fixes.
2011-07-16 08:00:13 +02:00
Petr Mrázek
fd418cd2dc
cmake cleanup in library/
2011-07-16 07:59:36 +02:00
Petr Mrázek
9eea07fb66
The console is now awesome when you use C++ streams too.
2011-07-16 00:15:20 +02:00
Petr Mrázek
b85f196dc4
The console is now awesome on Windows too.
2011-07-15 19:58:17 +02:00
Petr Mrázek
459d48d75a
Made the linux console super awesome. The dfhack script won't LD_PRELOAD dfhack for gdb.
2011-07-15 15:55:01 +02:00
Petr Mrázek
0af631aaa3
And nuke the rest of linenoise...
2011-07-14 12:28:41 +02:00
Petr Mrázek
3ecf244e67
Nuke linenoise. Now it's integrated in Console.
2011-07-14 12:21:07 +02:00
Petr Mrázek
d21b196766
Error printing call for Console, the NYAN CAT!
2011-07-14 11:15:23 +02:00
Petr Mrázek
f2b46274ec
Fix for a bug in command history queue access. dfhack script can run valgrind.
2011-07-14 08:02:29 +02:00
zilpin
de24b01a69
-fix pillar tile types to be TILE_SMOOTH instead of TILE_NORMAL.
...
-Added working (though clumsy) draw tile tool.
-Began lumberjack and veinswap tools.
2011-07-13 23:44:37 -04:00
Petr Mrázek
96153a7b05
Merge branch 'dfapi' of github.com:peterix/dfhack into dfapi
2011-07-14 04:06:12 +02:00
Petr Mrázek
792d272fbf
Windows side of the Console rewrite
2011-07-14 04:05:27 +02:00
Petr Mrázek
a40153a8e1
Merge pull request #98 from matthew-cline/TOPIC-vermin
...
Vermin module and colonies plugin
2011-07-13 04:24:38 -07:00
Petr Mrázek
630b746cfe
Integrate linenoise into Console - Linux part
2011-07-13 11:45:30 +02:00
Matthew Cline
d1170d54c3
Vermin module and colonies plugin
...
This is the start of the vermin module. Right now it just gets a list
of the positions at which vermin are created (spawn points). Most
spawn points are invisible and transient, but colonies (ant hills and
such) are permanent and visible. The address of the spawn points vector
is only provided for Linux 0.31.25
The colonies plugin uses the vermin module to list the location and
species of colonies, and can either wipe them all out or turn them all
into honey bee colonies.
2011-07-12 23:17:51 -07:00
Matthew Cline
a30a4a2720
CMake linux: copy LD_PRELOAD script
...
Copy package/linux/dfhack to the games directory; it's the same as the
normal df script, but sets LD_PRELOAD properly.
Also, CMAkeLists.txt now checks to see that the output directory is set
to the game directory, and fatally fails if it isn't.
2011-07-12 17:25:27 -07:00
Petr Mrázek
b5a6087da5
Forgot to commit a file.
2011-07-12 23:27:09 +02:00
Petr Mrázek
3a67a4d3c7
Added linenoise library to allow line editing in the terminal.
2011-07-12 12:13:14 +02:00
Petr Mrázek
aeeece5c5f
Made kittens plugin optional, and disabled by default.
2011-07-12 00:07:59 +02:00
Petr Mrázek
fa4d2d9b2e
Removed some silly data races from using cerr...
2011-07-11 23:07:42 +02:00
Petr Mrázek
4015586d89
Eliminated the core suspend latency, possibly added a heap of race conditions. Added vdig.
2011-07-11 22:23:13 +02:00
Matthew Cline
5c1526d6d9
creatures: read and write pregnancy counter
...
Also change creaturemanger to print out the ticks-until-birth for
pregnant creatures.
2011-07-11 02:48:10 -07:00
Matthew Cline
5da4eb3344
readSTLString() new/free mismatch fix
...
valgrind caught a problem where memory was allocated with "new[]" but
freed with "delete"; changed it to free with "delete[]".
2011-07-11 02:06:38 -07:00
Petr Mrázek
3850954449
Hotkey input works on windows/under wine. Added skeleton for the veindigger plugin.
2011-07-10 21:07:14 +02:00
Matthew Cline
cb9c9aae7c
Deal with third flag group in creatures
...
Added support for reading and writing the third creature flag group,
t_creaturflags3 (the offest already exists in Memory.xml). So far I've
only figured out three of the flags (out of an apparent 13):
1) announce_titan, which causes the creature to be announced as if
it was a titan or FB which had just arrived.
2) scuttle, which causes the creature to be die like it had been
killed in the game. That is, it leaves behind a corpse, and
will generate unhappy thoughts in dwarves if approriate.
3) ghostly, for creatures which are the ghosts of dead dwarves.
I updated creaturemanager to use scuttle for --kill, and added the
action --erase to kill in the old way which doesn't leave a corpse or
creatre unhappy thoughts.
2011-07-10 04:00:52 -07:00
Petr Mrázek
07c11c704d
Fix Windows build (untested, expect explosions).
2011-07-09 16:05:40 +02:00
Petr Mrázek
d894ef0ffa
Hotkey UI for linux.
2011-07-09 11:33:58 +02:00
Petr Mrázek
65d7278f53
Added a bunch of butchered SDL headers, catching SDL events on linux.
2011-07-08 03:55:37 +02:00
Petr Mrázek
367d79bcfa
Weather plugin to mirror the weather tool.
2011-07-07 10:57:57 +02:00
Petr Mrázek
8b298f8d91
More maps tweaks, function for block event removal, added cleanmap version that nukes spatter objects instead of rewriting their
...
bitmaps.
2011-07-07 09:49:58 +02:00
Petr Mrázek
4ff5db06be
Maps no longer copy the map block pointer array, blocks are structs, map data is public.
2011-07-07 07:00:36 +02:00
Petr Mrázek
74ab0f94aa
Added std namespace use for stl types in MapExtras.h
2011-07-06 12:26:18 +02:00
Petr Mrázek
56a409d9a4
sync, some map data structures, commented out some dead code
2011-07-06 11:13:36 +02:00
Petr Mrázek
b1d4163095
Fixed prospector, added the command list back, removed the plugin init console spam.
2011-06-27 04:49:56 +02:00
Petr Mrázek
00ddb45dbd
Added optional plugin_onupdate function, called each Core update.
2011-06-27 02:13:01 +02:00
Petr Mrázek
722531f590
Added destructor code for PluginManager, console color reset funstion.
2011-06-25 08:05:17 +02:00
Petr Mrázek
6fd7d42f00
Plugin manager, reworked kittens and reveal.
2011-06-25 05:35:29 +02:00
Petr Mrázek
0bb097296a
Prospector prints text again. Plugin lookup is better (ignores more non-library files)
2011-06-24 02:48:56 +02:00
Petr Mrázek
857decbcce
Plugins go into a folder, disabled console close button on windows because of bugs.
2011-06-22 18:04:22 +02:00
Petr Mrázek
8f27966540
Console revamp - windows part
2011-06-22 14:25:39 +02:00
Petr Mrázek
f8cdd95b09
Console revamp - linux part.
2011-06-22 08:14:21 +02:00
Petr Mrázek
c6dc4900d2
Very basic plugin system.
2011-06-20 04:29:38 +02:00
Petr Mrázek
ffd2ca3281
License updates done, removed argstream.
2011-06-20 01:17:49 +02:00
Petr Mrázek
f2b91d3269
Making ready for adding plugins. Fixes all over the place, more removal of obsolete parts.
2011-06-20 01:12:07 +02:00
Petr Mrázek
e0fb8f7c81
Crud removal: Context is gone. Added missing FakeSDL.h
2011-06-17 15:02:43 +02:00
Petr Mrázek
4da11927af
Kittens, now for real. Also a lightweight curses relacement. Use it, love it.
2011-06-17 02:09:03 +02:00
Petr Mrázek
93be1eb1fb
Yay, kittens! Also some license cleanup, IO thread usage, more SDL wrapping and ability to run reveal from DFHack console.
2011-06-16 23:53:39 +02:00
Petr Mrázek
7136ac7aa4
Get rid of the stdint.h garbage and use the real header.
2011-06-15 17:35:47 +02:00
Petr Mrázek
b29871cb8c
Fixed tick count offset, hotkey support is back from the dead (untested)
2011-06-15 06:09:24 +02:00
Petr Mrázek
71d46d533f
Some windows console refinement.
2011-06-14 16:49:53 +02:00
Petr Mrázek
22b79bb46e
Now works on Windows again, some more cleanups, added a singleton Core object for holding all the globals.
2011-06-14 16:13:28 +02:00
Petr Mrázek
0a428b509e
Vegetation module becomes rather skeletal.
2011-06-13 21:11:02 +02:00
Petr Mrázek
511f459182
Stripped nonsense from the DFHack vector wrapper. Next step: removal.
2011-06-13 01:14:10 +02:00
Petr Mrázek
81d648dfa7
First 'working' DFHack inside DF, for 'some' values of 'working'.
2011-06-12 23:17:40 +02:00
Petr Mrázek
da2fb1cb1a
Fix creature owned items vector offset on Windows, added support for owned items to more versions.
2011-05-28 10:18:50 +02:00
Petr Mrázek
6e00dc4c8e
Update version numbers, readme file. Adding a lot of batch scripts for the windows versions of new tools.
2011-05-27 08:20:52 +02:00
Petr Mrázek
07bb0408c1
Fix memory.xml and pdcurses.dll copy problems for good.
2011-05-26 12:33:38 +02:00
Petr Mrázek
a459ee8137
Added 'glowing barrier' to the known tile types.
2011-05-26 05:51:04 +02:00
Petr Mrázek
0661248d1f
Cleanmap filters on matter state. Anything non-solid is removed (including mud and water). Solid mud and snow stay.
2011-05-26 02:14:42 +02:00
Petr Mrázek
6d32802dd4
Vegetation update order is a 16bit integer!
2011-05-26 02:13:29 +02:00
Petr Mrázek
608b0f9f56
Better document Items module
2011-05-26 02:10:23 +02:00
Petr Mrázek
e7d9bc6f91
matter states for tile coverings, pig iron watch in dfstatus
2011-05-25 05:13:24 +02:00
Petr Mrázek
d2e01ec579
Fix many warnings from MSVC builds.
2011-05-23 21:30:51 +02:00
Petr Mrázek
040b5be290
Reformat stopwatch.h for readability
2011-05-23 04:19:17 +02:00
Petr Mrázek
c6b749e7e5
Small tweak to process enumeration on Windows.
2011-05-23 03:24:16 +02:00
Petr Mrázek
e5e0391d76
stop dfstatus from wasting time. added 'stopwatch.h' to extras for getting accurate unix time in milliseconds
2011-05-21 21:54:53 +02:00
Petr Mrázek
bb99924b24
Curses support across platforms!
2011-05-21 20:32:53 +02:00
Petr Mrázek
909cd8b60b
Move termutil to a globally accessible area.
2011-05-17 08:36:38 +02:00
Petr Mrázek
61dea59e29
Fix a big heap of warnings.
2011-05-15 22:24:40 +02:00
Petr Mrázek
515f4952a9
Merge https://github.com/angavrilov/dfhack
...
Conflicts:
library/include/dfhack/DFProcess.h
2011-05-15 21:50:20 +02:00
Petr Mrázek
fe6eb4b70a
Fix for MSVC build, added prototype cmd.exe detection on windows.
2011-05-15 05:19:51 +02:00
Petr Mrázek
4d3f4c2c23
Unknown 3 was update order.
2011-05-15 02:21:24 +02:00
Petr Mrázek
d9e9fae7a0
Unknown 1 was the grow counter. Added the immolate and grow tools.
2011-05-15 01:53:43 +02:00
Petr Mrázek
43fc15476a
Added ability to set trees on fire.
2011-05-15 00:26:44 +02:00
Petr Mrázek
b65c4ed55b
New vegetation variables, fixed vegetation vector for 31.25 linux
2011-05-14 15:51:11 +02:00
Petr Mrázek
7dbb41cc66
Add method for writing block/map feature indexes
2011-05-13 05:00:29 +02:00
Alexander Gavrilov
a7be2aee33
Support actually removing owner links between items and creatures.
2011-05-12 21:10:29 +04:00
Alexander Gavrilov
c7f4f8c281
Support printing refs in dfitemdump, and add methods for containers.
2011-05-12 21:10:29 +04:00
Alexander Gavrilov
77dda6faea
Support overwriting and removing values in STL vectors.
2011-05-12 21:10:20 +04:00
Petr Mrázek
4631ec2e0d
Item quantity support for 31.25
2011-05-11 23:53:16 +02:00
Alexander Gavrilov
ed1477b53d
Support listing items owned by a creature.
2011-05-09 14:49:44 +04:00