mirror of
https://github.com/sys4-fr/server-nalc.git
synced 2024-11-17 15:58:26 +01:00
Added cow dung - O_o?
This commit is contained in:
parent
8fd91ad8c2
commit
75da167428
@ -61,10 +61,7 @@ lifetimer = def.lifetimer or 600,
|
|||||||
blood_texture = def.blood_texture or "mobs_blood.png",
|
blood_texture = def.blood_texture or "mobs_blood.png",
|
||||||
shoot_offset = def.shoot_offset or 0,
|
shoot_offset = def.shoot_offset or 0,
|
||||||
floats = def.floats or 1, -- floats in water by default
|
floats = def.floats or 1, -- floats in water by default
|
||||||
replace_rate = def.replace_rate,
|
replacements = def.replacements or {},
|
||||||
replace_what = def.replace_what,
|
|
||||||
replace_with = def.replace_with,
|
|
||||||
replace_offset = def.replace_offset or 0,
|
|
||||||
timer = 0,
|
timer = 0,
|
||||||
env_damage_timer = 0, -- only if state = "attack"
|
env_damage_timer = 0, -- only if state = "attack"
|
||||||
attack = {player=nil, dist=nil},
|
attack = {player=nil, dist=nil},
|
||||||
@ -180,16 +177,28 @@ lifetimer = def.lifetimer or 600,
|
|||||||
end
|
end
|
||||||
|
|
||||||
-- check for mob drop/replace (used for chicken egg and sheep eating grass/wheat)
|
-- check for mob drop/replace (used for chicken egg and sheep eating grass/wheat)
|
||||||
if self.replace_rate
|
--[[
|
||||||
and math.random(1,self.replace_rate) == 1
|
old fields :
|
||||||
|
replace_rate = def.replace_rate,
|
||||||
|
replace_what = def.replace_what,
|
||||||
|
replace_with = def.replace_with,
|
||||||
|
replace_offset = def.replace_offset or 0,
|
||||||
|
]]--
|
||||||
|
for _, fields in pairs(self.replacements) do
|
||||||
|
|
||||||
|
if fields.replace_rate
|
||||||
|
and math.random(1,fields.replace_rate) == 1
|
||||||
and self.child == false then
|
and self.child == false then
|
||||||
|
|
||||||
|
fields.replace_offset = fields.replace_offset or 0
|
||||||
|
|
||||||
local pos = self.object:getpos()
|
local pos = self.object:getpos()
|
||||||
pos.y = pos.y + self.replace_offset
|
pos.y = pos.y + fields.replace_offset
|
||||||
if #minetest.find_nodes_in_area(pos,pos,self.replace_what) > 0
|
if #minetest.find_nodes_in_area(pos,pos,fields.replace_what) > 0
|
||||||
and self.object:getvelocity().y == 0
|
and self.object:getvelocity().y == 0
|
||||||
and self.replace_what then
|
and fields.replace_what then
|
||||||
--and self.state == "stand" then
|
minetest.set_node(pos, {name = fields.replace_with})
|
||||||
minetest.set_node(pos, {name = self.replace_with})
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -56,9 +56,13 @@ mobs:register_mob("mobs:chicken", {
|
|||||||
follow = "farming:seed_wheat",
|
follow = "farming:seed_wheat",
|
||||||
view_range = 8,
|
view_range = 8,
|
||||||
-- replace air with egg (lay)
|
-- replace air with egg (lay)
|
||||||
|
replacements = {
|
||||||
|
{
|
||||||
replace_rate = 2000,
|
replace_rate = 2000,
|
||||||
replace_what = {"air"},
|
replace_what = {"air"},
|
||||||
replace_with = "mobs:egg",
|
replace_with = "mobs:egg",
|
||||||
|
}
|
||||||
|
},
|
||||||
-- right click to pick up chicken
|
-- right click to pick up chicken
|
||||||
on_rightclick = function(self, clicker)
|
on_rightclick = function(self, clicker)
|
||||||
local tool = clicker:get_wielded_item()
|
local tool = clicker:get_wielded_item()
|
||||||
|
@ -53,9 +53,19 @@ mobs:register_mob("mobs:cow", {
|
|||||||
-- follows wheat
|
-- follows wheat
|
||||||
follow = "farming:wheat", view_range = 8,
|
follow = "farming:wheat", view_range = 8,
|
||||||
-- replace grass/wheat with air (eat)
|
-- replace grass/wheat with air (eat)
|
||||||
|
replacements = {
|
||||||
|
{
|
||||||
replace_rate = 50,
|
replace_rate = 50,
|
||||||
replace_what = {"default:grass_3", "default:grass_4", "default:grass_5", "farming:wheat_8"},
|
replace_what = {"default:grass_3", "default:grass_4",
|
||||||
|
"default:grass_5", "farming:wheat_8"},
|
||||||
replace_with = "air",
|
replace_with = "air",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
replace_rate = 2000,
|
||||||
|
replace_what = {"air"},
|
||||||
|
replace_with = "mobs:dung",
|
||||||
|
}
|
||||||
|
},
|
||||||
-- right-click cow with empty bucket to get milk, then feed 8 wheat to replenish milk
|
-- right-click cow with empty bucket to get milk, then feed 8 wheat to replenish milk
|
||||||
on_rightclick = function(self, clicker)
|
on_rightclick = function(self, clicker)
|
||||||
local tool = clicker:get_wielded_item()
|
local tool = clicker:get_wielded_item()
|
||||||
@ -169,3 +179,29 @@ minetest.register_craft({
|
|||||||
{'mobs:cheeseblock'},
|
{'mobs:cheeseblock'},
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
-- Dung
|
||||||
|
-- O_o?
|
||||||
|
|
||||||
|
minetest.register_node("mobs:dung", {
|
||||||
|
description = "Cow dung",
|
||||||
|
tiles = {"mobs_dung.png"},
|
||||||
|
inventory_image = "mobs_dung.png",
|
||||||
|
visual_scale = 0.7,
|
||||||
|
drawtype = "plantlike",
|
||||||
|
wield_image = "mobs_dung.png",
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
is_ground_content = true,
|
||||||
|
sunlight_propagates = true,
|
||||||
|
selection_box = {
|
||||||
|
type = "fixed",
|
||||||
|
fixed = {-0.2, -0.5, -0.2, 0.2, 0, 0.2}
|
||||||
|
},
|
||||||
|
groups = {snappy=2, dig_immediate=3},
|
||||||
|
after_place_node = function(pos, placer, itemstack)
|
||||||
|
if placer:is_player() then
|
||||||
|
minetest.set_node(pos, {name="mobs:dung", param2=1})
|
||||||
|
end
|
||||||
|
end
|
||||||
|
})
|
||||||
|
BIN
mods/mobs/textures/mobs_dung.png
Normal file
BIN
mods/mobs/textures/mobs_dung.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 635 B |
Loading…
Reference in New Issue
Block a user