Fix group attack for slime, zombie and zombiepig

This commit is contained in:
Wuzzy 2019-03-09 01:50:00 +01:00
parent f3b4c56772
commit 47ef78bf6a
5 changed files with 20 additions and 10 deletions

View file

@ -2569,12 +2569,20 @@ local mob_punch = function(self, hitter, tflp, tool_capabilities, dir)
if obj then
-- only alert members of same mob
if obj.group_attack == true
-- only alert members of same mob or friends
if obj.group_attack
and obj.state ~= "attack"
and obj.owner ~= name
and obj.name == self.name then
do_attack(obj, hitter)
and obj.owner ~= name then
if obj.name == self.name then
do_attack(obj, hitter)
elseif type(obj.group_attack) == "table" then
for i=1, #obj.group_attack do
if obj.name == obj.group_attack[i] then
do_attack(obj, hitter)
break
end
end
end
end
-- have owned mobs attack player threat

View file

@ -78,6 +78,8 @@ functions needed for the mob to work properly which contains the following:
punches when nearby.
'group_attack' when true has same mob type grouping together to attack
offender.
[MCL2 extension:] When a table, this is a list of
mob types that will get alerted as well (besides same mob type)
'attack_type' tells the api what a mob does when attacking the player
or another mob:
'dogfight' is a melee attack when player is within mob reach.
@ -222,6 +224,7 @@ functions needed for the mob to work properly which contains the following:
'glow' same as in entity definition
'child' if true, spawn mob as child
Node Replacement
----------------