mirror of
https://git.minetest.land/MineClone2/MineClone2.git
synced 2024-12-12 12:43:15 +01:00
Use creative arrow collection behavior from master (except they make pickup noises in creative), make all creative arrows infinity
This commit is contained in:
parent
291d0ee0f0
commit
a63d97d637
@ -108,6 +108,7 @@ local function player_shoot_arrow(itemstack, player, power, damage, is_critical)
|
|||||||
else
|
else
|
||||||
arrow_itemstring = "mcl_bows:arrow"
|
arrow_itemstring = "mcl_bows:arrow"
|
||||||
end
|
end
|
||||||
|
infinity_used = true
|
||||||
else
|
else
|
||||||
if not arrow_stack then
|
if not arrow_stack then
|
||||||
return false
|
return false
|
||||||
|
@ -298,14 +298,15 @@ local function stuck_on_step(self, dtime, entity_def, projectile_def)
|
|||||||
if self._in_player then return true end
|
if self._in_player then return true end
|
||||||
|
|
||||||
-- Pickup arrow if player is nearby (not in Creative Mode)
|
-- Pickup arrow if player is nearby (not in Creative Mode)
|
||||||
if not self._collectable or self._removed then return end
|
if self._removed then return end
|
||||||
|
|
||||||
local objects = minetest.get_objects_inside_radius(pos, 1)
|
local objects = minetest.get_objects_inside_radius(pos, 1)
|
||||||
for i = 1,#objects do
|
for i = 1,#objects do
|
||||||
local obj = objects[i]
|
local obj = objects[i]
|
||||||
if obj:is_player() then
|
if obj:is_player() then
|
||||||
local player_name = obj:get_player_name()
|
local player_name = obj:get_player_name()
|
||||||
if not minetest.is_creative_enabled(player_name) then
|
local creative = minetest.is_creative_enabled(player_name)
|
||||||
|
if self._collectable and not creative then
|
||||||
local arrow_item = self._itemstring or self._arrow_item
|
local arrow_item = self._itemstring or self._arrow_item
|
||||||
if arrow_item and minetest.registered_items[arrow_item] and obj:get_inventory():room_for_item("main", arrow_item) then
|
if arrow_item and minetest.registered_items[arrow_item] and obj:get_inventory():room_for_item("main", arrow_item) then
|
||||||
obj:get_inventory():add_item("main", arrow_item)
|
obj:get_inventory():add_item("main", arrow_item)
|
||||||
|
Loading…
Reference in New Issue
Block a user