Commit Graph

608 Commits

Author SHA1 Message Date
Maciej 'agaran' Pijanka 10307f23a7 Do not run converters twice. 2017-03-15 19:00:22 -04:00
number Zero 7d5329834d Fix supply converter bug 2017-03-15 19:00:22 -04:00
Carter Kolwey c4acb7225a Don't require a full network recalculation to add or remove a dead end
A dead end (node with only one connection) can be simply added or removed from the network without needing to traverse the whole thing.
2017-03-11 00:57:52 -06:00
Vanessa Ezekowitz 343c7946d9 power monitor changes
New textures, uses facedir, connects from the back as well.
2017-03-10 14:15:38 -05:00
Carter Kolwey 088eea1e3b Fixes for network calculation issues
This fixes several issues:
* More than one switching station could become active on large networks
 - Switching stations now semi-permanently become disabled if another is present
 - Power monitors have been added to replace the function of "slave" switching stations, to discourage overuse of switching stations
* Networks did not reliably "split" when cutting a cable
 - I "may" have caused this issue, but I believe it is solved by this
* Machines did not run without a player near the switching station
 - Active switching stations now forceload themselves, and free the forceloaded block if disabled, dug, or disconnected
 - Machines are only loaded to run them (as before), so only one mapblock (or two if the bottom edge of the switching station is a mapblock boundary) is loaded
 - Cables are still only loaded during a full network recalculation
2017-03-10 01:35:58 -06:00
Diego Martínez 186f9b70ac Temporary fix for crash in constructor. 2017-03-06 23:02:39 -03:00
Vanessa Ezekowitz 60b5ca5594 Merge pull request #308 from thatgraemeguy/mk3_drill_fix
Make mk3 drill in 3x3 mode drill nodes from top to bottom
2017-03-06 14:22:25 -05:00
Vanessa Ezekowitz 32b6ca9816 Merge pull request #298 from t4im/fix/quarry_loops
Mitigate server freezes due to item-transportation loops with quarries.
2017-03-06 14:11:40 -05:00
Vanessa Ezekowitz 05dfc14fdb Merge pull request #297 from t4im/fix/drill_pointed_thing
Remove reading of undefined global to fix drill drilling pointed_thing.above in combination with other badly coded mods.
2017-03-06 14:08:06 -05:00
Vanessa Ezekowitz 314d8c6c23 Merge pull request #288 from numberZero/control-supply_converter
Supply converter control
2017-03-06 14:07:12 -05:00
Vanessa Ezekowitz 8596ca7c19 Merge pull request #283 from ghost/patch-1
Updated Italian locale
2017-03-06 14:01:03 -05:00
Vanessa Ezekowitz d26797d9de Merge pull request #272 from veikk0/master
Replace nuclear reactor alarm sound
2017-03-06 13:59:58 -05:00
Vanessa Ezekowitz e3b33e21c7 Merge pull request #314 from thomas31415/master
Fixed set mode for mining drill mk2 and mk3
2017-03-06 13:35:16 -05:00
Vanessa Ezekowitz ff6675ef28 Merge pull request #315 from cheapie/master
Only update the associated network(s) when placing/digging nodes
2017-03-06 00:35:44 -05:00
Carter Kolwey d3f40e0fd0 Only update the associated network(s) when placing/digging nodes 2017-03-05 04:09:23 -06:00
Thomas 1765c31eaa Fixed set mode for mining drill mk2 and mk3 2017-03-05 09:01:50 +01:00
Thomas 11610cd9cb Fixed set mode for mining drill mk2 and mk3 2017-03-04 19:44:39 +01:00
Vanessa Ezekowitz fd609d0f7b lower the cap on water mill to 1575 EU
2250 is just too much
2017-03-02 19:06:40 -05:00
Carter Kolwey dab5fa7105 Grind gravel into sand 2017-02-27 18:03:39 -06:00
Carter Kolwey 5e19514c60 Add dirt recipe to centrifuge
4 dirt -> 2 clay lumps, 1 sand, 1 gravel
2017-02-27 17:58:43 -06:00
Carter Kolwey 0139eab9a2 Rework dirt crafting
Dirt is now crafted from stone dust, leaves, water, and sand, instead of by grinding gravel. Stone dust can be obtained by grinding stone or sand.
2017-02-27 17:51:33 -06:00
Vanessa Ezekowitz 1f49ef973d cap water mill output at `max_output` and 100% :P 2017-02-26 15:16:41 -05:00
number Zero cbe97434dc Add option to disable radiation protection 2017-02-25 20:55:15 -05:00
number Zero 73afc40d9c Immortal entities support 2017-02-25 20:55:15 -05:00
number Zero b739ed6cb1 Made radiation configurable 2017-02-25 20:55:15 -05:00
number Zero 51be33deea Restored weak shielding 2017-02-25 20:55:15 -05:00
number Zero 1810f417d2 Radiation improved
Now it is applied to mobs too.
Moreover, it should now respect "radiation" armor group, or fall back to "fleshy" group to detect vulnerable things
2017-02-25 20:55:15 -05:00
Vanessa Ezekowitz 4888581bee Make hydro generators sense the water flow volume around them
Water flow around a gen is shown more or less directly by the water's
param2, range 0 to 15, so four sides could total 60.  Cap the result to 45
so that three sides' worth of full flow (or four sides at reduced flow) still
registers as "100%", and raise the maximum outpu to 2250 EU.
2017-02-21 13:36:58 -05:00
Vanessa Ezekowitz 8cab1a0aec don't allow standing water to power a gen,
and add support for default flowing river water
2017-02-21 13:21:23 -05:00
ThatGraemeGuy 5dd6191175 Make mk3 drill in 3x3 mode drill nodes from top to bottom 2017-01-30 12:14:26 +02:00
ShadowNinja 06dec20326 Add longer-term radiation damage
Radiation now slowly damages you for a while after exposure,
with the effect's time and intensity proportional to the
amount of radiation received.  The radioactivity of some
items is reduced to account for the increased damage.
2017-01-28 17:51:14 -05:00
ShadowNinja 1da213a5e4 Split radiation from nuclear reactor code 2017-01-28 17:51:14 -05:00
ShadowNinja 26de2f7c88 Tweak radioactivity
This simplifies radioactivity by removing the 1000 and 0.25 multipliers.
It also increases the effectiveness of protection (I think it was too low
before -- most of the advantage of adding protective layers was just from
the increased distance).
2017-01-28 17:51:14 -05:00
ShadowNinja 8ccb6d97ec Switch nuclear reactor to a lead shield
The reactor originaly used a stainless steel shield only
because lead wasn't yet available.  Stainless steel shields
are automatically converted to lead shields for legacy reasons.
2017-01-28 17:51:14 -05:00
Tim d39797aad8 Handle CONTENT_IGNORE when checking windmill conditions.
Windmills always span more than one mapblock, so even with a switching station next to the generators, they will stop working if unloaded due to the windmill check failing to handle CONTENT_IGNORE of the frames at the foot of the windmill, unless a second switching station would be placed there.

The commit assumes, that a user has to load a block to modify it, and thus unloaded blocks to have the same windmill frame state as before.
This also makes technic_run for windmills a little faster by being able to skip some unnecessary node lookups and generally avoiding creation of 20 tables per windmill per step.
2016-11-17 11:59:48 -05:00
ShadowNinja 1475ee6e40 Add trace_node_ray_fat and use it for mining lasers
This function includes more nodes, so laser tunnels
aren't always only one node wide.
2016-11-17 11:48:19 -05:00
ShadowNinja e501c4622b Replace trace_node_ray algorithm
This is an algorithm that I designed myself.  It fixes an
issue with the old code where it would be more eager to
move in some directions rather than others.  This bug
resulted in, eg, a lead block on a radiation source's
+x side protecting you when you were directly overhead.
2016-11-17 11:48:19 -05:00
ShadowNinja cfd4cb7871 Update mining laser particle API usage 2016-11-17 11:48:19 -05:00
ShadowNinja 2b0a283556 Adjust mining laser start offset 2016-11-17 11:48:19 -05:00
raymoo 63efc395cd fix node dupe exploit in frames
You can dupe nodes by placing them on a frame, because the on_rightclick wouldn't return the new itemstack.
2016-10-14 05:41:31 -03:00
Tim 7890ffe46b Fix drill drilling pointed_thing.above when some other mod declares a global variable above. 2016-10-09 17:46:44 +02:00
Tim 428b1b8709 Mitigate several forms of quarry-placement leading to item-transportation loops, that eventually cause server freezes.
As a nice side effect, items are not gonna be unnecessarily received by the quarry anymore, if another tube is available for transport.
2016-10-09 17:46:06 +02:00
number Zero 03df68461a Power control added 2016-07-24 00:38:29 +03:00
number Zero e8ac23e111 Supply converter now has control panel 2016-07-24 00:34:20 +03:00
Emon 413d20d6c8 Updated Italian locale
Added missing translations
2016-05-18 15:22:20 +02:00
tenplus1 322615542e Fix item drop when digging mv furnace
Fixed crash when digging mv furnace
2016-05-12 23:59:16 +02:00
ShadowNinja 3db3a9cc32 Fix cable alias count 2016-04-01 19:58:37 -04:00
veikk0 2258adb2a9 Replace nuclear reactor alarm sound 2016-03-30 22:53:29 +03:00
ShadowNinja 097d033585 Fix radiation damage 2016-03-20 22:38:30 -04:00
NathanSalapat 584cd82b58 Add support for new trees in minetest game 2016-03-20 13:30:18 -04:00
ShadowNinja 85a984982c Cleanup
Changes:
  * Make rayIter a global utility, and use it for radiation too.
  * prettynum -> pretty_num and cleanup.
  * Remove resolve_name/function_exists (unused).
  * Cleanup nuclear reactor code.
2016-03-20 00:02:33 -04:00
ShadowNinja 83c6494166 Use connected nodeboxes for cables 2016-03-20 00:02:33 -04:00
RealBadAngel c5127f4b1b Fix code style (useless or) 2015-11-28 08:31:27 +01:00
RealBadAngel 46f3f8ec7d Add vacuum cleaner tool (by Phvli) 2015-11-28 08:27:22 +01:00
RealBadAngel 8ef83e8f7e Fix corium greifing disabling not working. 2015-11-14 11:29:16 +01:00
Vanessa Ezekowitz 71b13ab0e8 tile_images --> tiles 2015-10-23 14:15:48 -04:00
est31 54b6d9976c CNC: re-add player inventory to formspec
Fix regression of commit

d732c8dfbd - "Add listring functionality"

by @est31 (me xD).
2015-09-12 08:04:07 +02:00
Vanessa Ezekowitz e7d06b33d1 fix missing radiation resistance for lead block 2015-09-12 01:34:57 -04:00
Vanessa Ezekowitz 1b1780946e add facedir to tool workshop 2015-09-12 01:18:16 -04:00
ThatGraemeGuy a529baba47 Machines should become inactive when output slots are full 2015-07-12 20:43:01 +02:00
est31 a793747d92 Move coal furnaces to other/
They don't use power, move them to where they belong.
2015-06-18 04:16:47 +02:00
est31 d732c8dfbd Add listring functionality
Add shift-click functionality
2015-06-18 04:09:27 +02:00
asl97 7cd848a050 default:mese_block is now default:mese
https://github.com/minetest-technic/technic/blob/master/technic/crafts.lua#L189
2015-06-17 17:10:03 -04:00
Rogier 84812d2307 Make technic_chests not (implicitly) depend on technic
(by moving two images that are used for chests only, from technic/textures
 to technic_chests/textures)
2015-06-17 17:06:49 -04:00
sdzen a4f7996b56 Readd myself
a large amount of the 16x16 textures were mine but when RealBad put them back in the information on them mustve been scattered to the winds, just fixing this.
2015-06-06 10:34:45 -04:00
ShadowNinja e393617fa1 Fix undefined global warning 2015-04-26 18:17:04 -04:00
ShadowNinja 35b0f068af Fix grinder name in recipe 2015-04-26 18:00:20 -04:00
est31 1615681e89 Fix autoloading for solar arrays
This autoloads the node above a solar array, so that its light value can be determined.
Previously, solar arrays in unloaded blocks would report an input of 0 to the switching station.
2015-03-23 03:41:03 +01:00
est31 6b800758fb Rename technic.cables and make it private
Give it a more descriptive name.
Previous use outside cables.lua isn't neccessary and gets removed.
2015-03-22 19:35:50 +01:00
Tim 137695ea67 allow activation/deactivation of frames/templates by config
have them deactivated by default due to a larger collection of associated issues
including but not limited to
* #170
* #216
* item duplication involving templates
* runaway machines
* traversal loop issues with huge machines leading to lag-outs
2015-03-16 18:58:41 -04:00
Vanessa Ezekowitz b00e942824 don't run the damage ABM if damage is disabled on the server. 2015-03-15 18:21:28 -04:00
Vanessa Ezekowitz cf75916ea7 Add spheres to the CNC machine
Note: this required renaming the base node name for the oblate spheroid
object, which previously had been named simply "sphere".  The result is
that all such nodes in an old world will change to actual spheres.

Since this includes a formspec change, machines will have to be dug and
re-placed to get the new program button to show up, and/or if the image
on the Oblate Spheroid button shows wrongly.
2015-03-12 00:02:23 -04:00
MT-Modder b8c9028681 Tools don't wear in creative mode v2
- Removed cans (will add again per request)
- Added creative check to global namespace (checking only once as
requested by VanessaE)
2015-03-11 18:08:16 -04:00
Novatux 8b16fc1176 Add lead block, and lead & sulfur dusts 2015-03-08 13:32:59 +01:00
Jay Arndt 0113975160 Fix detection of if the machine should call pipeworks.after_place
The tube variable in these contexts always evaluates to a true value.
data.tube is the variable that indicates if pipeworks needs to be notified.
2015-03-07 21:44:42 -05:00
Jay Arndt c8cbd261ee Drop upgrade items in the after_dig_node handler instead of can_dig
This fixes an item duplication bug triggered by using a screwdriver on an upgraded machine
2015-03-07 21:44:42 -05:00
Tim c6464d3ebe label the switching station abm for profiling purposes
this allows the mtt profiler to profile this abm individually from other abms since t4im/mtt@48eff13
2015-02-28 00:47:15 +01:00
est31 4b179821d3 Get rid of technic.format 2015-02-13 21:13:17 +01:00
Tim 7ed1aa9398 correct injector inventory handling by tubes 2015-02-11 03:15:34 +01:00
Tim ce40d1cfb8 add group tubedevice_receiver to injector to fix the issue of it acting more like a tube than an inventory
it sent the items into all directions, when being injected into, instead of entering the injector as it used to
2015-02-08 12:27:10 +01:00
Vanessa Ezekowitz 5ac93cccc9 simplify pipeworks tube detect
deMorgan's axiom, which I suck at using :P
2015-02-07 12:42:18 -05:00
Vanessa Ezekowitz bccefd6997 fix other machines, battery boxes, etc to work with tube routing. 2015-02-07 03:47:53 -05:00
Tim 48e02b8452 drop upgrade list items if dug (but protect other inventories) 2015-02-06 08:35:42 +01:00
Tim 72d541a607 add trunks: mod support to the chainsaw 2015-02-06 07:59:51 +01:00
Tim a13e7b7ed1 add the option for publicly shared machines via an upgrade item "default:chest
the upgrade slots remain protected

this replaces the need for a few forks and also resolves #131 in the process, which is obsolete now
2015-02-06 07:54:29 +01:00
Tim 91e12c41fd fix chainsaw support for default:pinetree 2015-02-05 20:33:11 +01:00
Tim 96788677bb clean up upgrade handling a bit and only allow setting known upgrades 2015-02-05 17:27:28 +01:00
Tim 6ef3438832 limit the upgrade slot to one item per slot, as more are ignored anyway 2015-02-05 16:09:16 +01:00
Tim 41a10a86d5 reduce intllib code 2015-02-05 10:09:14 +01:00
Tim 49e82a604b supress undeclared variable access warnings in cases of intentional declaration checks 2015-02-05 09:47:37 +01:00
Vanessa Ezekowitz 3bcd99f098 fix lighting glitch on bottom of "edge" (quarter-round) models 2015-02-05 01:08:09 -05:00
Vanessa Ezekowitz 122e97ebd9 fix rotation of "edge" models 2015-02-05 00:58:42 -05:00
Vanessa Ezekowitz 63fa7a856e fix broken lighting on CNC meshes, thanks to tip from acerspyro 2015-02-04 20:31:37 -05:00
est31 d452d16fa6 Make technic chests independent from unified inventory
Copy the textures made by RealBadAngel (under WTFPL) from unified inventory to technic to avoid minetest not finding them when unified inventory is not installed.
2015-02-03 07:43:58 +01:00
est31 9444eff7f7 Make switching station only react to nodes from below 2015-02-02 05:29:44 +01:00
est31 18265de3b3 Fix bug for switching stations displaying same input and output 2015-01-31 10:42:55 +01:00
est31 3dc01a6720 Formatting for supply converter too 2015-01-31 10:42:55 +01:00
est31 d9bf9830b0 Better number formating
Is it 120000 or 1200000?
2015-01-31 01:29:16 -05:00
Vanessa Ezekowitz 0c3f55e0c9 fix cobble and gravel grinder recipes 2015-01-30 14:29:50 -05:00
Tim 6dd7ffc455 move from recipe defusion to recipe deactivation to avoid confusion 2015-01-30 20:15:15 +01:00
Tim a0cf9eb8f3 replace overlooked latex->rubber furnace recipe with glue as a form of "rubber cement" 2015-01-30 17:50:06 +01:00
Tim b9173be3b8 remove unnecessary definition fields 2015-01-30 17:47:04 +01:00
Tim 91fceece18 tune latex->rubber alloy recipe based on wikipedia data pointed out by @est31 2015-01-30 17:41:05 +01:00
Vanessa Ezekowitz 5a395928fa add textures for grindings/sawdust 2015-01-30 00:17:28 -05:00
Tim f330d58354 redfine latex->rubber path via alloy furnace
latex is being refined to rubber by drying and adding carbon pigments to strengthen the material
(which also turns it black)
it should not yield more rubber than its latex input, but it may be processed faster than ores
2015-01-30 05:16:49 +01:00
Tim 56e96b2593 add sawdust and tree/wood grindings with arcacia tree for dye and provide a better alternative rubbertree->latex path that yields the same as the tree tap, but requires more machine work
yet without textures
2015-01-30 05:16:41 +01:00
Tim 80f79f5e1e remove _sidways moretree trunks from chainsaw, these would be abm-converted before anyone could saw them anyway 2015-01-30 05:09:21 +01:00
Tim a8c097bcd9 tweak sandstone/sand recipes to a more efficent compressing 2 sand -> sandstone and grinding sandstone -> 2 sand ratio; make sure the default recipes are defused 2015-01-30 05:09:21 +01:00
Tim 3cc568ddbd defuse by fake_fire added recipes, make people use the grinder for those 2015-01-30 05:09:21 +01:00
Tim 9d3f7304fb add a sandstone compression recipe back in place of the default recipe, without leading to an infinite sand/sandstone generation which lead to its removal in c0a1739 in the first place 2015-01-30 05:09:21 +01:00
Tim e4c34c9c32 allow transformer and chainsaw crafts even if required mesecon modules are not loaded 2015-01-30 05:09:21 +01:00
Tim 9087abcde0 add centrifuge recipe for wheat 2015-01-30 05:09:21 +01:00
Tim 00f61dfb81 rewrite extractor dye recipes, adding a few dyes and making it work better with the dye mod
also preventing any issues if it is being run in a game without it
2015-01-30 05:09:20 +01:00
Tim a8b711a7f4 allow grinding wheatseeds to flour, closes #173 2015-01-30 05:09:20 +01:00
Tim fe4372649f reuse the new screwdriver code of minetest/minetest_game in adapted form for the sonic screwdriver 2015-01-29 18:38:23 -05:00
Tim 3252da05d1 use the timers, that are allready running instead of allocating a new one every tick 2015-01-27 19:02:33 +01:00
est31 f250e1632f Give quarries a better inventory icon
Current inventory icon is indistinguishable from carbon steel block. The side with the pick was hidden. This commit moves that part to the front.
2015-01-24 21:23:26 +01:00
est31 86dd5852aa Add cache to quarry
Adds a cache to the quarry in order to reduce load and send larger stacks through pipes instead of just single items. Coin tossing ensures the cache gets purged around every 200 seconds. The interval isn't fixed in order to prevent material spikes from multiple quarries which got loaded simultaneously. When the cache is full, or the quarry finished, it is purged too.
2015-01-24 21:22:49 +01:00
est31 c38da0945c Optimize quarry_run
Don't load the whole digging area when only a small piece is relevant.
Also, move the (time expensive) check whether the air above a block is free to the last position, which spares unneccessary checks when multiple quarries are placed together, or a quarry has to loop over air for another reason.
2015-01-24 19:40:02 +01:00
Vanessa Ezekowitz ec73a8508f add custom collision and selection box handling to CNC machine
also clean up formatting of surrounding code
2015-01-19 13:37:46 -05:00
Tim 7e92fe0a46 use an alternative and cleaner way to overwrite the pipeworks tube-recipes and default bronze 2015-01-18 20:34:15 +01:00
Wayward1 9e1c5740d3 Fix support for acacia trees
Just realized I had the wrong item string >.<
2015-01-16 20:08:25 -05:00
Vanessa Ezekowitz d6b0deb989 fix cnc stick formspec img
(missed the border)
2015-01-16 19:16:39 -05:00
Vanessa Ezekowitz 1a7a17f3d7 new high-resolution imagery for CNC formspec
to go with the new models.
2015-01-16 19:12:02 -05:00
Vanessa Ezekowitz 3726bd9bd2 add the models too 2015-01-16 17:19:11 -05:00
Vanessa Ezekowitz 80cb6a495a Use mesh nodes for all of the more complex CNC machined items 2015-01-16 16:57:34 -05:00
Tim 0114feaf04 Add more nodes to the chainsaw 2015-01-12 17:51:55 -05:00
ThatGraemeGuy 2e04374de8 Add gloopores' Kalite dust as a more effecient fuel than lumps 2015-01-12 17:51:55 -05:00
Vanessa Ezekowitz bc0ac581aa prevent crash if get_recipe_index() is passed a nil or apparent garbage instead
of a table
2015-01-12 17:43:56 -05:00
Novatux 4ac36e9d27 Fix infinite energy with supply converter 2014-12-30 12:10:36 +01:00
ShadowNinja 5382a88aef Fix some global errors 2014-12-15 17:47:07 -05:00
Vanessa Ezekowitz a413904ecd minetest.env:* --> minetest.* 2014-11-30 12:45:42 -05:00
Novatux dd30838245 Add more nodes to chainsaw 2014-11-30 08:28:57 +01:00
Vanessa Ezekowitz 8da4d057b0 update to latest mesecons API
requires mesecons commit 5be179bf110b44bdc06df6dbfde4e61487cf0635 or later.
2014-11-22 13:58:38 -05:00
ShadowNinja 30a37a490f Make the forcefield replace buildable_to nodes and make it faster (about x20) 2014-11-13 12:28:04 -05:00
Zefram f205e5f404 Fix anonymous digging of non-empty machine
The quarry was causing crashes when it reached a machine that was
undiggable due to containing items.
2014-11-06 08:33:14 -05:00
Rick McFarley 7c6c3b9679 Remove extra registration of LV transformer 2014-09-24 20:35:25 -04:00
ShadowNinja 42d0081367 Replace mining laser ray tracer with a simpler iterable one 2014-09-24 20:32:36 -04:00
HybridDog 4d1f9753e3 update mining lasers 2014-09-16 15:23:46 -04:00
ThatGraemeGuy 6d90ebb94e Make generators stop supplying EUs when there is a non-fuel item in the fuel slot 2014-09-16 15:21:14 -04:00
Zefram 0de4fec07c Fix second description of radioactive group value 2014-08-28 15:30:15 +02:00
Zefram 45919b871a Make forcefield properly undiggable 2014-08-28 15:14:05 +02:00
ShadowNinja ec069aa43e Change chainsaw cutting algorithm back to old one
The new algorithm caused horizontal sections of trees to be left, with the
sections above and below them removed.
2014-08-22 20:57:30 -04:00
ShadowNinja 16302cffce Fix chainsaw placing drops and playing sounds at tops of trees 2014-08-22 20:01:15 -04:00
Zefram 78646b2d89 Make tree tap respect item_drop 2014-08-22 14:20:13 +01:00
Zefram 2912e2da78 Rebalance radiation shielding
Squeeze the range of material shielding values.  The strongest shielding
materials get weaker, and weaker shielding materials, especially low-end
ones such as dirt, get stronger.  The radioactivity of the active
reactor core is increased so that the standard shielding is (still)
only narrowly sufficient.
2014-08-20 20:09:41 +01:00
Zefram 7a9d2ffe5f Finer gradations of radioactivity
Make the "radioactive" group value be the safe distance in millimeters
rather than meters, to allow for intermediate values.  Use such
intermediate values for the uranium blocks, using the existing formula
with this finer quantisation.  All other radioactive nodes retain their
existing radioactivity exactly.
2014-08-20 19:14:03 +01:00
Zefram 7d610b7c80 Tube capability for tool workshop
Tool workshop can now accept tools to repair via tube.  It has upgrade
slots.  Battery upgrade reduces its power consumption.  Tube upgrade
makes it eject fully-repaired (or unrepairable) items via tube.
2014-08-18 17:09:37 +01:00
Zefram 814646b542 Smoother link of processing cycles to ABM cycles
Make the generic processing machine code willing to complete more than
one processing cycle in one ABM cycle, and more generally to carry
over leftover processing effort after completing a processing cycle.
The src_time meta item now represents accumulated processing effort
(time multiplied by speed) in a scaled form (to retain fractions),
rather than just time in integral seconds.  This affects the MV furnace,
with speed 4 and most recipe times being 3 s, and will be essential for
faster furnaces.
2014-08-18 15:14:15 +01:00
Zefram d0efa15b98 In quarry, skip past undiggable nodes
The quarry used to get stuck when it encountered an undiggable node.
Change it to skip past that node, digging whatever later stuff it can.
Necessarily, the current digging position becomes semantically-significant
state: it is no longer sufficient to search the quarry cuboid from the top
on each iteration.  The current digging height is reported in the quarry's
interaction form, and can be reset to the top using a button on the form.

Where there is a non-air node within the quarry directly above the
next node to dig, it blocks the quarry's access to that node, even if
everything involved is diggable.  Thus an undiggable node casts a shadow
of undug nodes below it.  Resolving undiggability of a node is a major
reason to use the restart button.
2014-08-18 15:14:15 +01:00