Commit Graph

214 Commits

Author SHA1 Message Date
sfence
ed62ae3275
Fix use_texture_alpha warnings (#79) 2021-08-21 09:42:00 +02:00
tuedel
843dbd2276
Replace deprecated function calls (#70) 2020-08-12 21:15:36 +02:00
tuedel
1c85c822e8
auto_controller: Avoid nil error when digging slopes (#69)
Crashes otherwise if offset field is left empty.
Related: https://github.com/minetest/minetest/issues/10180
2020-08-11 18:57:09 +02:00
Thomas--S
eea743185d
Change after_dig_node() callbacks to supply metadata as table (#68)
Metadata was previously lost according to my testing.
Now, the behaviour will be as specified in Minetest's lua_api.txt.
2020-07-31 18:33:09 +02:00
OgelGames
93573f22ee
Fix and simplify battery usage (#65)
Changes digtron.tap_batteries function so that battery wear and charge is set directly to 0 instead of needlessly calculating it.

Fixes a crash that happens if a battery item doesn't define tool capabilities.
2020-06-01 11:22:28 +02:00
gpcf
c969676657
Forbid dropping loaded digtron crates (see #44) (#61)
* Forbid dropping loaded digtron crates (see #44)

This workaround forbids dropping the crates, so the servers should no
longer crash so often because of loaded digtron crates.

* Check for protection when taking crates
2020-02-25 12:43:22 -07:00
SX
f3d526eda7
Prevent punching with invalid userdata (#64)
Fixes for https://github.com/pandorabox-io/pandorabox.io/issues/445
2020-02-25 12:42:57 -07:00
David Leal
a691afb6d8 Add (soft) dependencies to "mod.conf" (#58) 2019-09-22 23:34:19 -05:00
FaceDeer
d0ce43e2fe add some safety checks to update_builder_item 2019-08-18 14:19:19 -06:00
disba1ancer
b394214ffa Add support for all rechargeble items from technic (#42)
* Add support for all rechargeble items from technic

* Changed comment about batteries

* Changed second comment about batteries
2019-07-19 18:42:47 -05:00
FaceDeer
8b1c63f067 lossless compression of textures 2019-07-05 23:51:58 -06:00
FaceDeer
0b4ec531c7 Use new style of itemstack metadata to show description in inventory 2019-07-05 23:50:55 -06:00
FaceDeer
4b810fc584 removing collectgarbage() from layout creation 2019-06-28 15:56:27 -06:00
FaceDeer
aa927fe26a protect against extremely large builder periods causing entities to be added out of range 2019-06-09 23:53:09 -06:00
Thomas Rudin
445140abaa limit size of the digtron with config option: digtron_size_limit, default to 1000 nodes (#52) 2019-06-09 23:15:27 -06:00
Alex
b3d01a714c Update layout to prevent duplication (#54) 2019-06-06 19:45:25 +02:00
Pierre-Yves Rollo
6726897413 Avoid crate corruption when dug with special tools (#53) 2019-06-06 19:45:11 +02:00
tuedel
d41190a842 execute_downward_dig_cycle: Add missing parameter (#45) 2019-03-17 10:32:35 +01:00
FaceDeer
e09f1b9f56 found a way for incomplete digtron layouts to be created 2019-01-13 16:02:41 -07:00
FaceDeer
556b80bc22 Another guard against a nil that shouldn't be possible 2019-01-13 11:19:40 -07:00
FaceDeer
8ea6d7eb70 collectgarbage hammer fix, and add some asserts to crash before corrupting anything in impossible situations. 2019-01-13 03:02:02 -07:00
FaceDeer
03beff0d33 Add block count to default crate title 2019-01-09 00:39:40 -07:00
FaceDeer
1d5d1d20df a little more optimization, and sounds when placing nodes on builders and diggers 2019-01-09 00:20:02 -07:00
FaceDeer
d4a03478e2 prevent digging of immortal nodes 2019-01-05 22:55:46 -07:00
FaceDeer
5985788181 fixing extrusion - place a copy of the example item, not the example item itself 2019-01-05 22:04:56 -07:00
FaceDeer
5c0700456c
Optimization of table allocation, more sophisticated entity damage (#37)
This pass cleans up a lot of unnecessary table allocation and disposal, which should help with memory usage and garbage collection.

It also adds some sophistication to the entity damage process from diggers, allowing items to be picked up into Digtron inventory.
2019-01-04 22:06:12 -07:00
FaceDeer
fe753a9bed check for presence of node def before testing wallmounted 2019-01-02 20:36:21 -07:00
FaceDeer
1f778ba0fe Handle some formspecs differently, allowing digtron components to be placed on builders and intermittent diggers more easily 2019-01-01 23:31:51 -07:00
FaceDeer
8ff9239274 validate parameters 2019-01-01 23:22:52 -07:00
Alex
cff5385881 Awards: Use custom triggers (#32)
* Awards: Use custom triggers

* Remove extra trigger

* Remove non-existent type

* Replace missed player arg
2018-12-23 19:06:49 -07:00
Alex
bcc2f64c2e Use updated awards API (#31)
* Use updated awards API

* Fix dig/place incrementing

* Use awards.player() in crates

* Use new 'dig' incrementor for digtron packing

* Only initialize tables if they dont exist

* Fix typo

* Remove init function, use checks instead
2018-12-14 00:48:41 -07:00
Thomas Rudin
1011901938 fix crate protection (#25)
* fix crate protection

all crates check area protection (minetest.is_protected)
protected crates check area and owner (even if not in protected area)

* separate check and action

* whitespace stuff

* another missing whitespace

* add suggestion from T4im
2018-10-15 17:13:06 -06:00
Thomas Rudin
d3397563ec Fix undeclared global variable warnings
Closes #26 (trivial)
2018-08-28 20:25:13 +02:00
FaceDeer
0cb8d2dc33 add ability for Digtron to emerge unloaded map blocks 2018-06-10 23:00:54 -06:00
FaceDeer
1c41a2cdcd update readme 2018-06-09 21:06:02 -06:00
FaceDeer
b33d33074c
Merge pull request #20 from numberZero/fix-global
No need to make auto_cycle global
2018-05-09 08:18:55 -06:00
FaceDeer
6ef9f95a60
Merge pull request #21 from shivajiva101/shivajiva101-patch-1
fix crash vector
2018-05-09 08:17:46 -06:00
shivajiva101
bdc7e8e4f2
fix crash vector
add nil check to prevent crash, fixes #17
2018-05-09 09:48:01 +01:00
FaceDeer
9cc5288326
Merge pull request #18 from joejulian/broken_inventory_hack
Create missing tables
2018-02-25 23:51:25 -07:00
number Zero
3209856d6b No need to make auto_cycle global 2018-01-26 23:29:26 +03:00
Joe Julian
564bc11799 Create missing tables
After a failure to move the digtron with its metadata, some nodes were
broken. This worked around crashes that occurred if the inventory table
was missing.
2018-01-11 11:13:10 -08:00
FaceDeer
33995bc6ec attempt to recover from failure to write to map
There have been reports of large, distant-from-player Digtrons apparently failing to completely write their layouts to the map, resulting in an inconsistency.

This adds an attempt to brute-force a solution. When a map write fails it will be retried until it succeeds, or until 1 second elapses (at which point the write is aborted in a hopefully somewhat clean manner).
2018-01-07 13:38:25 -07:00
FaceDeer
fdde32283a add logging and crash-proofing for issue 17
A user has reported a crash that appears to involve a builder node (group 4) that lacks a "main" inventory somehow. This code prevents a crash in this circumstance and logs the node_image to hopefully identify the culprit.
2017-12-31 18:21:44 -07:00
FaceDeer
1de57191b0 configurable duration for crate markers 2017-11-17 18:49:43 -07:00
FaceDeer
123e470544 Add filters to prevent non-whitelisted craft items from being built 2017-11-16 16:53:01 -07:00
FaceDeer
317877cda5 documentation and locale update 2017-10-24 21:37:02 -06:00
FaceDeer
c5a9d9fff9 add locked Digtron crate 2017-10-24 21:25:46 -06:00
FaceDeer
a4b89dd762 add node_box definitions to fix inventory images 2017-10-24 21:16:37 -06:00
FaceDeer
1224a34615 add Digtron duplicator block 2017-10-22 19:50:11 -06:00
FaceDeer
ae0a24b19b fix fuelstore formspec on construct 2017-10-22 19:48:46 -06:00