From e17f8811b1404250185479ae6e20e568e5eaee3e Mon Sep 17 00:00:00 2001 From: TenPlus1 Date: Mon, 1 Oct 2018 09:20:27 +0100 Subject: [PATCH] added attack_chance to mob definition --- api.lua | 7 ++++--- api.txt | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/api.lua b/api.lua index e3d60e0..64c7292 100644 --- a/api.lua +++ b/api.lua @@ -6,7 +6,7 @@ local use_cmi = minetest.global_exists("cmi") mobs = { mod = "redo", - version = "20180928", + version = "20181001", intllib = S, invis = minetest.global_exists("invisibility") and invisibility or {}, } @@ -117,7 +117,7 @@ local get_distance = function(a, b) end --- collision function based on similar from jordan4ibanez' open_ai mod +-- collision function based on jordan4ibanez' open_ai mod local collision = function(self) local pos = self.object:get_pos() @@ -1447,7 +1447,7 @@ local general_attack = function(self) end -- attack closest player or mob - if min_player then + if min_player and random(1, 100) > self.attack_chance then do_attack(self, min_player) end end @@ -3030,6 +3030,7 @@ minetest.register_entity(name, { follow = def.follow, jump = def.jump ~= false, walk_chance = def.walk_chance or 50, + attack_chance = def.attack_chance or 5, passive = def.passive or false, knock_back = def.knock_back ~= false, blood_amount = def.blood_amount or 5, diff --git a/api.txt b/api.txt index 126de42..f6b8d48 100644 --- a/api.txt +++ b/api.txt @@ -74,6 +74,7 @@ functions needed for the mob to work properly which contains the following: 'docile_by_day' when true has mobs wandering around during daylight hours and only attacking player at night or when provoked. + 'attack_chance' 0 to 100 chance the mob will attack (default is 5). 'attack_monsters' when true mob will attack monsters. 'attack_animals' when true mob will attack animals. 'attack_npcs' when true mob will attack npcs within range.