Commit Graph

40 Commits (d352d0f42db60084f3ab0e230277621ca6d50790)

Author SHA1 Message Date
Casey Link d352d0f42d stockpiles: remove dependency on full protobuf 2014-11-27 14:23:54 +01:00
Casey Link b6f5bcb7dc stockpiles: fix compilation on windows
VS2010 only supports a subset of C++11
2014-11-27 13:28:17 +01:00
Casey Link 063b669f6b stockpiles: cleanup output and add docs 2014-11-22 18:57:56 +01:00
Casey Link 00c1676744 stockpiles: correct typo 2014-11-22 18:54:22 +01:00
Casey Link e599f4b1e1 stockpiles: more user documentation 2014-11-22 18:33:49 +01:00
Casey Link f2d4bf53bd stockpiles: fix empty list crash
I was clear()ing all empty stockpile index vectors , but DF expects them
to be initialized with '\0' despite the fact they aren't used.

To keep DF happy and prevent segfaults, we now initialize all lists to
their appropriate sizes with a sane default value.
2014-11-22 18:33:49 +01:00
Casey Link 869a92dfc5 stockpiles: handle all metals and stones 2014-11-22 18:33:49 +01:00
Casey Link 0e8832f05d stockpiles: overwrite existing files 2014-11-22 18:33:49 +01:00
Casey Link f1ce575be3 stockpiles: animals list still shown even when disabled 2014-11-22 18:33:49 +01:00
Casey Link 4f2851199e stockpiles: handle animal cages and prepared meals 2014-11-22 18:33:49 +01:00
Casey Link e525b47815 stockpiles: make gem other mats more robust 2014-11-22 18:33:49 +01:00
Casey Link eb3a71c739 stockpiles: fix finished goods quality 2014-11-22 18:33:48 +01:00
Casey Link 12b27e09bb stockpiles: handle furniture sand_bags field 2014-11-22 18:33:48 +01:00
Casey Link 98a1278128 stockpiles: fix quality unserialization 2014-11-22 18:33:48 +01:00
Casey Link cc1e4d16a2 stockpiles: allow loading without file extension 2014-11-22 18:33:48 +01:00
Casey Link 79c65e0fcf stockpiles: fix male/female creature mat lookups 2014-11-22 18:33:48 +01:00
Casey Link 44af084e8e stockpiles: import from disk and write to memory 2014-11-22 18:33:48 +01:00
Casey Link 543a88d03d stockpiles: pass correct filename 2014-11-22 18:33:48 +01:00
Casey Link c251aeabe3 stockpiles: add optional debug output 2014-11-22 18:33:48 +01:00
Casey Link 86ba81a3a9 stockpiles: format with ANSI style and 4 spaces 2014-11-22 18:33:48 +01:00
Casey Link a4d19070e8 stockpiles: write some documentation 2014-11-22 18:33:48 +01:00
Casey Link f7ed821ef9 stockpiles: serialization complete
* working file import/export
2014-11-22 18:33:48 +01:00
Casey Link 224a19295d stockpiles: serialize through weapons+trap components
* generalize itemdefs
2014-11-22 18:33:48 +01:00
Casey Link 25f6c440d8 stockpiles: serialize through cloth 2014-11-22 18:33:47 +01:00
Casey Link d74ac1b3a6 stockpiles: serialize through leather
* more code reuse!
2014-11-22 18:33:47 +01:00
Casey Link e863df512b stockpiles: serialize through finished goods
* add stubs for remaining categories
* refactor w/ generics to reuse code
2014-11-22 18:33:47 +01:00
Casey Link dc5f0fed1a stockpiles: serialize ammo and coins 2014-11-22 18:33:47 +01:00
Casey Link d167b3f385 stockpiles: basic serialization for animals - stone 2014-11-22 18:33:47 +01:00
Petr Mrázek 004acdad4e Tweaks!
Strip commands.clear() from all plugins
Fix changeitem - a variable name has changed in item flags
2012-03-29 18:37:22 +02: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
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 2cd2ee9b0c New plugin interface 2012-02-21 18:19:17 +01:00
Petr Mrázek 80cedd2ff8 Fix header includes, update structures. 2012-02-20 11:42:40 +01:00
Quietust e82055986e Only use #include <> for system libraries - for everything else, use "" 2012-01-15 14:54:14 -06: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
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 d7faa6c471 Properly cleanup state when copystock in q during rect selection. 2011-12-29 16:46:08 +04: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