forked from MineClone5/MineClone5
Merge pull request 'fixed-elytra' (#343) from FlamingRCCars/MineClone5-FlamingRCCars:fixed-elytra into master
Reviewed-on: MineClone5/MineClone5#343
This commit is contained in:
commit
d33aba9355
|
@ -209,11 +209,12 @@ minetest.register_tool("mcl_armor:elytra", {
|
|||
_doc_items_longdesc = mcl_armor.longdesc,
|
||||
_doc_items_usagehelp = mcl_armor.usage,
|
||||
inventory_image = "mcl_armor_inv_elytra.png",
|
||||
groups = {armor = 1, non_combat_armor = 1, armor_torso = 1, non_combat_torso = 1, mcl_armor_uses = 10, enchantability = 1},
|
||||
groups = {armor = 1, non_combat_torso = 1, armor_torso = 1, mcl_armor_uses = 10, enchantability = 1},
|
||||
sounds = {
|
||||
_mcl_armor_equip = "mcl_armor_equip_leather",
|
||||
_mcl_armor_unequip = "mcl_armor_unequip_leather",
|
||||
},
|
||||
_repair_material = "mcl_mobitems:leather",
|
||||
on_place = mcl_armor.equip_on_use,
|
||||
on_secondary_use = mcl_armor.equip_on_use,
|
||||
_mcl_armor_element = "torso",
|
||||
|
|
|
@ -229,7 +229,6 @@ local function set_bone_position_conditional(player,b,p,r) --bone,position,rotat
|
|||
end
|
||||
player:set_bone_position(b,p,r)
|
||||
end
|
||||
|
||||
minetest.register_globalstep(function(dtime)
|
||||
|
||||
time = time + dtime
|
||||
|
@ -278,11 +277,20 @@ minetest.register_globalstep(function(dtime)
|
|||
local fly_pos = player:get_pos()
|
||||
local fly_node = minetest.get_node({x = fly_pos.x, y = fly_pos.y - 0.5, z = fly_pos.z}).name
|
||||
local elytra = mcl_playerplus.elytra[name]
|
||||
|
||||
elytra.active = player:get_inventory():get_stack("armor", 3):get_name() == "mcl_armor:elytra"
|
||||
and not player:get_attach()
|
||||
and (elytra.active or control.jump and player_velocity.y < -6)
|
||||
and (fly_node == "air" or fly_node == "ignore")
|
||||
elytra.inv = player:get_inventory():get_stack("armor", 3):get_name() == "mcl_armor:elytra"
|
||||
elytra.enchanted = player:get_inventory():get_stack("armor", 3):get_name() == "mcl_armor:elytra_enchanted"
|
||||
if not elytra.active then
|
||||
elytra.active = player:get_inventory():get_stack("armor", 3):get_name() == "mcl_armor:elytra_enchanted" and not player:get_attach() and (elytra.active or control.jump and player_velocity.y < -6) and (fly_node == "air" or fly_node == "ignore")
|
||||
if not elytra.active then
|
||||
elytra.active = player:get_inventory():get_stack("armor", 3):get_name() == "mcl_armor:elytra" and not player:get_attach() and (elytra.active or control.jump and player_velocity.y < -6) and (fly_node == "air" or fly_node == "ignore")
|
||||
end
|
||||
end
|
||||
if not (fly_node == "air" or fly_node == "ignore") then
|
||||
elytra.active = false
|
||||
end
|
||||
if (not elytra.inv and not elytra.enchanted) then
|
||||
elytra.active = false
|
||||
end
|
||||
|
||||
if elytra.active then
|
||||
mcl_player.player_set_animation(player, "fly")
|
||||
|
|
Loading…
Reference in New Issue