summaryrefslogtreecommitdiff
path: root/api.txt
diff options
context:
space:
mode:
authorTenPlus1 <kinsellaja@yahoo.com>2017-07-04 20:12:57 +0100
committerTenPlus1 <kinsellaja@yahoo.com>2017-07-04 20:12:57 +0100
commitf78f7c305903f89038ab778c752d6a25dc29660b (patch)
tree37c5d095bf5e4698d398bedc56e836b4f9e51eed /api.txt
parentbad4dcb36f1e29676a3fc834439e6e4562d1610c (diff)
add on_replace function (thanks wuzzy)
Diffstat (limited to 'api.txt')
-rw-r--r--api.txt13
1 files changed, 11 insertions, 2 deletions
diff --git a/api.txt b/api.txt
index d30ea93..e8a4df0 100644
--- a/api.txt
+++ b/api.txt
@@ -1,5 +1,5 @@
-MOB API (2nd July 2017)
+MOB API (4th July 2017)
The mob api is a function that can be called on by other mods to add new animals or monsters into minetest.
@@ -105,12 +105,21 @@ This functions registers a new mob as a Minetest entity.
'explode' sound when exploding
'distance' maximum distance sounds are heard from (default is 10)
-Mobs can look for specific nodes as they walk and replace them to mimic eating
+Mobs can look for specific nodes as they walk and replace them to mimic eating.
'replace_what' group if items to replace e.g. {"farming:wheat_8", "farming:carrot_8"}
'replace_with' replace with what e.g. "air" or in chickens case "mobs:egg"
'replace_rate' how random should the replace rate be (typically 10)
'replace_offset' +/- value to check specific node to replace
+ 'on_replace(self, pos, oldnode, newnode)' gets called when mob is about to replace a node
+ self: ObjectRef of mob
+ pos: Position of node to replace
+ oldnode: Current node
+ newnode: What the node will become after replacing
+
+ If false is returned, the mob will not replace the node.
+
+ By default, replacing sets self.gotten to true and resets the object properties.
The 'replace_what' has been updated to use tables for what, with and y_offset e.g.