summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTenPlus1 <kinsellaja@yahoo.com>2016-05-23 19:19:40 +0100
committerTenPlus1 <kinsellaja@yahoo.com>2016-05-23 19:19:40 +0100
commitc6d4b957686ca97748ba1145274fea4c0eef1759 (patch)
tree9c84ed5fa14feeb31d6a1193bc6b30d3cd609614
parente4a919da02e23a54d68a03312b5b893c1040bbb2 (diff)
tweaked pathfinding with 2 modes, 1 to find, 2 to build/break
-rw-r--r--api.lua4
-rw-r--r--api.txt2
2 files changed, 2 insertions, 4 deletions
diff --git a/api.lua b/api.lua
index ab2b37c..a8aa12c 100644
--- a/api.lua
+++ b/api.lua
@@ -14,7 +14,6 @@ local remove_far = minetest.setting_getbool("remove_far_mobs")
-- pathfinding settings
local enable_pathfinding = true
-local enable_pathfind_digging = false
local stuck_timeout = 3 -- how long before mob gets stuck in place and starts searching
local stuck_path_timeout = 10 -- how long will mob follow path before giving up
@@ -811,10 +810,9 @@ function smart_mobs(self, s, p, dist, dtime)
if not self.path.way then
self.path.following = false
--- self.path.stuck = true
-- lets make way by digging/building if not accessible
- if enable_pathfind_digging then
+ if self.pathfinding == 2 then
-- add block and remove one block above so
-- there is room to jump if needed
diff --git a/api.txt b/api.txt
index 5c0a5ae..8946ea8 100644
--- a/api.txt
+++ b/api.txt
@@ -73,7 +73,7 @@ This functions registers a new mob as a Minetest entity.
'on_die' a function that is called when the mob is killed the parameters are (self, pos)
'floats' 1 to float in water, 0 to sink
'on_rightclick' its same as in minetest.register_entity()
- 'pathfinding' when true mobs will use pathfinder feature to locate player (only works with dogfight attack)
+ 'pathfinding' set to 1 for mobs to use pathfinder feature to locate player, set to 2 so they can build/break also (only works with dogfight attack)
'attack_type' the attack type of a monster
'dogfight' follows player in range and attacks when in reach
'shoot' shoots defined arrows when player is within range