Commit Graph

3487 Commits (136eb0f03a074b22fe6a01b14ddd829ebe4d2160)

Author SHA1 Message Date
codefactor-io a08f08ae5f [CodeFactor] Apply fixes 2018-07-01 15:25:53 +00:00
Pauli 645ec0d591 Improve kittens thread safety and shutdown with core
The bools could use acquire&release memory order or even relaxed but I
didn't think code was worth auditing for such low level optimizations.
Sequantial consistent is fast enough but much harder to use incorrectly.

The timeLast is protected by CoreSuspender lock. plugin_update is only
called when CoreSuspender lock is held.

The last_menu is protected by trackmenu_flg loads and stores.
2018-06-30 21:53:12 +03:00
Pauli 0727403ac1 Fix devel plugins linking in linux 2018-06-30 21:12:42 +03:00
lethosor 105ddd86d8 Merge remote-tracking branch 'suokko/jsoncpp_upgrade_to_submodule' into develop 2018-06-29 22:33:00 -04:00
Pauli afd942a94b ruby: Support automatic array size from index-enum 2018-06-26 23:48:54 +03:00
Pauli 1fc37f8ddc Checke Console::lineedit error return values
Console::lineedit can return -1 to indicate input error and -2 to
indicate the program is closing. But most users don't check possible
unusual return values which can lead to exit hang.
2018-06-22 17:57:37 +03:00
lethosor 9c7bd562d4 fix-unit-occupancy, autogems: stop running while embarking
Related to #1286 fix
2018-06-21 16:16:54 -04:00
lethosor 46e31305a1 Merge remote-tracking branch 'PatrikLundell/embark-assistant' into develop 2018-06-21 15:54:03 -04:00
lethosor f20dae5a4c Merge remote-tracking branch 'suokko/fix_dramp_to_check_jobs_1228' into develop 2018-06-21 15:20:41 -04:00
PatrikLundell 8e1a1851be Removed temporary comments 2018-06-21 21:00:59 +02:00
PatrikLundell 9a8e251853 Updated evil weather 2018-06-21 20:51:36 +02:00
PatrikLundell f02f4b8bcc Updated evil weather 2018-06-21 20:51:05 +02:00
PatrikLundell 91aa16216b Updated evil weather 2018-06-21 20:50:30 +02:00
PatrikLundell 1382c04696 Updated evil weather 2018-06-21 20:49:49 +02:00
PatrikLundell 14b0ea5b98 Updated evil weather 2018-06-21 20:49:08 +02:00
PatrikLundell ad5328e119 Updated evil weather 2018-06-21 20:48:35 +02:00
lethosor 42eadf97b0 Update stonesense (#1302, dfhack/df-structures#247) 2018-06-21 12:00:12 -04:00
lethosor d9917e9a1d cxxrandom: remove pragmas, fix format warnings, misc. cleanup 2018-06-21 12:00:04 -04:00
lethosor 7a5e7c7c86 Rename unit_flags1.dead to killed, update submodules/changelog
Follow-up for dfhack/df-structures#247
2018-06-21 11:17:09 -04:00
lethosor 46b6bfd3f7 Merge remote-tracking branch 'suokko/fix_stocks_to_filter_military_items_1288' into develop 2018-06-21 00:04:06 -04:00
lethosor b2fd0b062b Merge remote-tracking branch 'PatrikLundell/dead_plugins' into develop 2018-06-20 16:18:07 -04:00
Pauli 72029e7de9 Avoid closing DF if launching command-prompt from prompt 2018-06-20 22:16:23 +03:00
Pauli 9b6781f0f2 Temporary lower command-prompt when executing the command
command-prompt viewscreen may affect command execution if they are
looking for UI state. To make commands execute simillary to hotkeys or
console commands the viewscreen needs to removed from the top position.

Fixes #1194
2018-06-20 21:51:45 +03:00
lethosor cdca28ddfa Merge branch 'develop' of gh:dfhack/dfhack into develop 2018-06-20 12:10:52 -04:00
lethosor 7036cc376b Fix warnings in devel plugins introduced by #1302 2018-06-20 12:03:14 -04:00
lethosor 6077a8ce4c Merge remote-tracking branch 'suokko/printf_warnings' into develop 2018-06-20 11:25:14 -04:00
lethosor 862fa08ba6 Merge remote-tracking branch 'cppcooper/cxxrandom-rel' into develop 2018-06-20 11:00:43 -04:00
Pauli f90eebdd2d Add designation job check to deramp
Fixes #1228
2018-06-20 15:54:31 +03:00
Pauli bd0d36ec82 Fix stockpile inventory not to include inventory items
Inventory items have stale position information. The coordinates can be
very old if item is owned and continuesly carried for long time. The fix
checks if item is carried. To avoid filtering carried items that are
assigned (containers) to the stockpile the assignment needs to be
checked.

Fixes #1288
2018-06-19 18:06:28 +03:00
Pauli 9c59b7ff48 Fix unlikely memory leaks if Screen::show fails
The Screen::show takes ownership of the screen pointer. I decided to
switch the parameter to std::unique_ptr to make the pointer ownership
explicit. The unique_ptr then provides automatic screen destruction in
Screen::show unless pointer is inserted or is already in the linked list
that is managed by df.
2018-06-19 16:41:31 +03:00
Pauli 6f7ace1f6d stockpiles: Fix unusable and usable loading for weapon and armor
Fixes #1294
2018-06-14 22:22:51 +03:00
Pauli 2b79b4cce7 Use jsoncpp 1.8.4 as a submodule
This makes jsoncpp a submodule that can be build directly from git
sources. This changes depends/jsoncpp to depends/jsoncpp-sub to avoid
filename conflict if someone tries to use git bisect.

jsoncpp library name changes to jsoncpp_lib_static.

jsoncpp version is the latest tagged release.
2018-06-14 21:20:46 +03:00
lethosor aac892c560 Adapted to changed Units functions
Squashed version of #1307

Closes #1307
2018-06-14 10:30:35 -04:00
PatrikLundell cf780ce035 dead flag -> !isActive 2018-06-14 12:35:17 +02:00
PatrikLundell cac749429a dead flag -> !isActive 2018-06-14 12:34:41 +02:00
PatrikLundell 3be27a49b5 dead flag -> !isInactive 2018-06-14 12:33:18 +02:00
PatrikLundell f076d00ede dead flag -> !isActive 2018-06-14 12:32:38 +02:00
PatrikLundell b38dfe2e43 dead flag -> !isActive 2018-06-14 12:31:52 +02:00
PatrikLundell da0aa85b05 dead flag -> !isActive 2018-06-14 12:31:15 +02:00
PatrikLundell aa361f3a0d dead flag -> !isActive 2018-06-14 12:30:41 +02:00
PatrikLundell 6901c53bd5 dead flag -> !isActive 2018-06-14 12:29:48 +02:00
PatrikLundell 897a818f4c Switch to Units functions 2018-06-14 09:42:45 +02:00
lethosor 39194e5e38 Merge remote-tracking branch 'suokko/cxx14_enabling' into develop (actually c++11) 2018-06-13 16:08:41 -04:00
lethosor cddb1b59e1 title-version: move to bottom of options screen
This avoids overlapping the window border when a world is loaded
2018-06-13 15:57:13 -04:00
lethosor de0521e618 title-version: add to options screen 2018-06-12 16:38:53 -04:00
lethosor 40d0d946a4 autogems: avoid crash with non-workshop links, add some logging
Also update changelog, including revflood change

Fixes #1303
2018-06-12 12:17:04 -04:00
Pauli 8f2cf3ad26 Fix printf format warnings 2018-06-11 19:57:06 +03:00
Pauli 01abcb756e Request c++14 support from compilers
All platforms seems to either have compiler supporting c++14. Windows
already requires msvc2015 that supports c++14 which should make it
minimal issue to require c++14 support from all compilers because gcc
is pretty easy to upgrade.
2018-06-10 23:15:33 +03:00
Quietust 8717144f14 Fix revflood bug, was revealing some tiles from below inappropriately
When scanning floor tiles from below, don't just leave them hidden, but
skip checking neighbors as well
2018-06-09 14:19:52 -06:00
lethosor 7e57450e78 Change buildingplan quality adjustment keys per #1284 comment, for consistency 2018-06-08 22:25:56 -04:00
lethosor c4692b1c8d Merge remote-tracking branch 'TotallyGatsby/buildingplanmax' into develop 2018-06-08 22:07:54 -04:00
PatrikLundell 0ec3df6022 dead/killed flags 2018-06-08 11:09:11 +02:00
PatrikLundell 654f798b83 dead/killed flags 2018-06-08 11:08:35 +02:00
lethosor 03968db344 Fix GCC warnings in 'tweak kitchen-prefs-all' and dev plugins 2018-06-01 10:02:38 -04:00
lethosor f57327e7c8 Fix periodic events in several plugins
Also stop running buildingplan/fortplan while loading a world, and stop running
autogems while paused

Fixes #1286
2018-05-29 23:24:02 -04:00
Vitaly Pronkin 06b9dc0c1c remove trailing spaces 2018-05-25 12:43:30 +12:00
Vitaly Pronkin a44f5b57cb don't need this 2018-05-25 01:34:57 +12:00
Vitaly Pronkin 0217916568 mousequery plugin with TWBT modifications 2018-05-25 01:07:12 +12:00
lethosor e206a6d88b mousequery: leave menus safely, without looping
Fixes #1285
2018-05-22 16:37:44 -04:00
lethosor 5f81cac3b7 dwarfmonitor.lua: use dmerror() consistently 2018-05-21 21:23:52 -04:00
Phillip Spiess 3e54a136fd Use two keys for min/max 2018-05-20 20:50:42 -07:00
Phillip Spiess 385ac3f9f5 Add 'Max Quality' setting to buildingplan 2018-05-20 14:36:50 -07:00
lethosor 50a863a48e Fix Kitchen.h include (case-sensitive) 2018-05-17 20:11:46 -04:00
lethosor b551e70ffa prospector: Avoid crashing due to invalid vein materials
Fixes #1276, ref #1277
2018-05-17 19:56:48 -04:00
lethosor 759ba5c420 New tweak: kitchen-prefs-all
Options to toggle brew/cook for all listed items

Also fixed kitchen lua docs and moved kitchen search option
2018-05-17 19:47:56 -04:00
lethosor 17ba492992 Add some exclusion functions to Kitchen module, expose to Lua, fix build 2018-05-17 19:34:03 -04:00
lethosor fa8a2fa670 Merge branch 'develop' of gh:dfhack/dfhack into develop 2018-05-17 00:12:59 -04:00
lethosor 79a0794658 Add kitchen preferences search 2018-05-17 00:11:52 -04:00
Japa b6c6b4a8a0
Merge pull request #1252 from JapaMala/remote_reader
Bump RFR version number.
2018-05-17 07:48:18 +05:30
lethosor c85274eb01 tweak max-wheelbarrow: fix conflict with building renaming
Reported by xordae on bay12:
http://www.bay12forums.com/smf/index.php?topic=164123.msg7762438#msg7762438
2018-05-16 16:51:45 -04:00
lethosor 0be16d4422 New tweak: stone-status-all
Adds an option to toggle the economic status of all stones

Also suggested by xq on IRC
2018-05-14 22:54:20 -04:00
lethosor 914b376082 Add stone status search
Suggested by xq on IRC
2018-05-14 22:30:21 -04:00
Ben Lubar ee85ed4011
Remove $(NOINHERIT) from Stonesense 2018-05-14 00:56:18 -05:00
Ben Lubar f838b5695d
Remove $(NOINHERIT) which was inexplicably included in a bunch of plugins. 2018-05-14 00:12:22 -05:00
lethosor 06031bdd0e Merge branch 'develop' of gh:dfhack/dfhack into develop 2018-05-13 13:11:29 -04:00
lethosor e2cd1fca58 Reorder dfhack-md5 GCC flags, fix another embark-assistant warning 2018-05-13 13:09:51 -04:00
Ben Lubar 586051510c
Update stonesense. 2018-05-13 10:38:59 -05:00
lethosor 016dab3990 Fix more warnings, including stonesense 2018-05-12 22:10:07 -04:00
lethosor e9ec08f419 Add Buildings::getRoomDescription(), moved from search plugin, +cleanup 2018-05-12 17:00:21 -04:00
lethosor 7d0df117ee dwarfmonitor: fix typo in function name 2018-05-12 14:59:26 -04:00
lethosor ad518faeec cursecheck: Replace setUnitNickname (older) with Units::setNickname 2018-05-12 14:59:04 -04:00
lethosor c15571caa0 Move isRouteVehicle, isSquadEquipment from workflow to Items module 2018-05-12 14:49:30 -04:00
lethosor abb903d28f command-prompt: support getSelectedPlant() 2018-05-12 13:02:52 -04:00
lethosor a34b34d3cb Move a few item functions from autotrade/stocks into DFHack::Items 2018-05-12 12:04:46 -04:00
Lethosor fbe652d7a0
Merge pull request #1265 from db48x/allow-calling-blueprint-from-lua
this allows the blueprint plugin to be called from lua
2018-05-11 23:52:16 -04:00
lethosor 018deec912 Fix another occasional segfault in block-labors
Fixes #1057
2018-05-11 22:18:26 -04:00
lethosor 9d353c1ea7 tweak block-labors: fix crash if unit is null
Fixes #1057
2018-05-11 10:21:05 -04:00
Ben Lubar 58636f5a27
Make 32-bit Linux builds also check for undefined symbols. 2018-05-10 11:20:19 -05:00
lethosor 8e76c612f6 Add SDL to RFR libs on Linux 2018-05-09 21:48:27 -04:00
lethosor 77ee74be50 Only require symbols to be defined in plugins
Core uses some unresolved symbols on Linux
2018-05-09 21:36:51 -04:00
Daniel Brooks a550c81628 update the CMakeList to link the blueprint plugin against the lua library 2018-05-09 18:25:26 -07:00
Daniel Brooks b127522992 Merge branch 'develop' into allow-calling-blueprint-from-lua 2018-05-09 12:55:17 -07:00
lethosor 2ada907420 Move stockpiles option (load/save) below stocks/autodump/etc
Fixes #1161
2018-05-09 10:33:41 -04:00
lethosor ead0092765 Ignore added stockpile keys when renaming stockpiles
Fixes #1267
2018-05-09 10:25:55 -04:00
lethosor 2a52582c1f Add Gui::inRenameBuilding 2018-05-09 10:23:05 -04:00
Daniel Brooks d15f87715e update comments 2018-05-08 13:04:14 -07:00
Daniel Brooks 554814920b this allows the blueprint plugin to be called from lua 2018-05-08 11:42:41 -07:00
lethosor 9d7feaf39d autogems: load blacklist from autogems.json
Closes #1027
2018-05-05 12:49:06 -04:00
lethosor 60d1c270c2 Display autogems config option 2018-05-04 23:07:21 -04:00
Josh Cooper bc32d15bea [Release] cxxrandom v2.0
Major Revision
update v2.0
=-=-=-=-=
Native functions(exported to lua):
-GenerateEngine:  returns engine id              (args: seed)
-DestroyEngine:   destroys corresponding engine  (args: rngID)
-NewSeed          re-seeds engine                (args: rngID, seed)
-rollInt          generates random integer       (args: rngID, min, max)
-rollDouble       generates random double        (args: rngID, min, max)
-rollNormal       generates random normal[gaus.] (args: rngID, avg, stddev)
-rollBool         generates random boolean       (args: rngID, chance)
-MakeNumSequence  returns sequence id            (args: start, end)
-AddToSequence    adds a number to the sequence  (args: seqID, num)
-ShuffleSequence  shuffles the number sequence   (args: rngID, seqID)
-NextInSequence   returns the next number in seq.(args: seqID)

Lua plugin functions:
-MakeNewEngine    returns engine id              (args: seed)

Lua plugin classes:
-crng
    methods:
        -init(id, df, dist)     :: constructor
            id                           - Reference ID of engine to use in RNGenerations
            df (optional)                - bool indicating whether to destroy the Engine when the crng object is garbage collected
            dist (optional)              - lua number distribution to use
        -__gc()                 :: destructor
        -changeSeed(seed)       :: alters engine's seed value
        -setNumDistrib(distrib) :: set's the number distribution crng object should use
            distrib                      - number distribution object to use in RNGenerations
        -next()                 :: returns the next number in the distribution
        -shuffle()              :: effectively shuffles the number distribution
-normal_distribution
    methods:
        -init(avg, stddev)      :: constructor
        -next(id)               :: returns next number in the distribution
            id                           - engine ID to pass to native function
-real_distribution
    methods:
        -init(min, max)         :: constructor
        -next(id)               :: returns next number in the distribution
            id                           - engine ID to pass to native function
-int_distribution
    methods:
        -init(min, max)         :: constructor
        -next(id)               :: returns next number in the distribution
            id                           - engine ID to pass to native function
-bool_distribution
    methods:
        -init(min, max)         :: constructor
        -next(id)               :: returns next boolean in the distribution
            id                           - engine ID to pass to native function
-num_sequence
    methods:
        -init(a, b)             :: constructor
        -add(num)               :: adds num to the end of the number sequence
        -shuffle()              :: shuffles the sequence of numbers
        -next()                 :: returns next number in the sequence

Adds missing function exports.

Fixes numerous problems I won't go into
2018-04-29 21:08:44 -07:00