forked from VoxeLibre/VoxeLibre
Compare commits
2 Commits
beehive_dr
...
master
Author | SHA1 | Date |
---|---|---|
FossFanatic | d83c6fe906 | |
FossFanatic | 61ee14b1a6 |
|
@ -226,7 +226,7 @@ if mcl_weather.allow_abm then
|
|||
}
|
||||
for a=1, #around do
|
||||
local apos = vector.add(pos, around[a])
|
||||
if mcl_weather.is_outdoor(apos) then
|
||||
if mcl_weather.is_outdoor(apos) and mcl_weather.has_rain(apos) then
|
||||
minetest.remove_node(pos)
|
||||
minetest.sound_play("fire_extinguish_flame", {pos = pos, max_hear_distance = 8, gain = 0.1}, true)
|
||||
return
|
||||
|
@ -244,7 +244,7 @@ if mcl_weather.allow_abm then
|
|||
chance = 1,
|
||||
action = function(pos, node, active_object_count, active_object_count_wider)
|
||||
-- Rain is equivalent to a water bottle
|
||||
if mcl_weather.rain.raining and mcl_weather.is_outdoor(pos) then
|
||||
if mcl_weather.rain.raining and mcl_weather.is_outdoor(pos) and mcl_weather.has_rain(pos) then
|
||||
if node.name == "mcl_cauldrons:cauldron" then
|
||||
minetest.set_node(pos, {name="mcl_cauldrons:cauldron_1"})
|
||||
elseif node.name == "mcl_cauldrons:cauldron_1" then
|
||||
|
@ -267,7 +267,7 @@ if mcl_weather.allow_abm then
|
|||
interval = 22.0,
|
||||
chance = 3,
|
||||
action = function(pos, node, active_object_count, active_object_count_wider)
|
||||
if mcl_weather.rain.raining and mcl_weather.is_outdoor(pos) then
|
||||
if mcl_weather.rain.raining and mcl_weather.is_outdoor(pos) and mcl_weather.has_rain(pos) then
|
||||
if node.name == "mcl_farming:soil" then
|
||||
minetest.set_node(pos, {name="mcl_farming:soil_wet"})
|
||||
end
|
||||
|
|
|
@ -48,25 +48,16 @@ local dig_hive = function(pos, node, oldmetadata, digger)
|
|||
local beenest = string.find(node.name, "mcl_beehives:bee_nest")
|
||||
local silk_touch = mcl_enchanting.has_enchantment(wield_item, "silk_touch")
|
||||
local is_creative = minetest.is_creative_enabled(digger:get_player_name())
|
||||
local inv = digger:get_inventory()
|
||||
|
||||
if beehive then
|
||||
if not is_creative then
|
||||
minetest.add_item(pos, "mcl_beehives:beehive")
|
||||
if not silk_touch then mcl_util.deal_damage(digger, 10) end
|
||||
elseif is_creative and inv:room_for_item("main", "mcl_beehives:beehive") and not inv:contains_item("main", "mcl_beehives:beehive") then
|
||||
inv:add_item("main", "mcl_beehives:beehive")
|
||||
end
|
||||
minetest.add_item(pos, "mcl_beehives:beehive")
|
||||
if not silk_touch and not is_creative then mcl_util.deal_damage(digger, 10) end
|
||||
elseif beenest then
|
||||
if not is_creative then
|
||||
if silk_touch then
|
||||
minetest.add_item(pos, "mcl_beehives:bee_nest")
|
||||
awards.unlock(digger:get_player_name(), "mcl:total_beelocation")
|
||||
else
|
||||
mcl_util.deal_damage(digger, 10)
|
||||
end
|
||||
elseif is_creative and inv:room_for_item("main", "mcl_beehives:bee_nest") and not inv:contains_item("main", "mcl_beehives:bee_nest") then
|
||||
inv:add_item("main", "mcl_beehives:bee_nest")
|
||||
if silk_touch or is_creative then
|
||||
minetest.add_item(pos, "mcl_beehives:bee_nest")
|
||||
awards.unlock(digger:get_player_name(), "mcl:total_beelocation")
|
||||
else
|
||||
mcl_util.deal_damage(digger, 10)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue