Jump to content

Recommended Posts

Posted

Hello, I have an armor, and it's special ability should be flying when you wear it, so i made a check in the entity update event and if you are wearing a full set, player.capabilities.allowFlying is set to true, and if you are not it's set to false except if you are in the creative mode. It works, but the problem is , it might make a conflict with other mods. If they want to set that to true, then my mod will set it to false because the player is not wearing the armor. Is there a solution for this , or I will have to remake vanilla flying?

:D
Posted

You can try using the onArmorTick function in your armor class, so check each piece of armor, if they compose a full set of your armor then allow player to fly, else deny

Don't blame me if i always ask for your help. I just want to learn to be better :)

Posted

Isn't that function only called when the armor is on player? If yes, then I can't check if a player is wearing the armor because it won't be called.

:D
Posted

I think is called each time a player equip a piece of armor, so if he has already the 3 pieces equipping the last will call this function and do some stuff (in this case allow flying) ;) I used that function in 1.7.10 to do the same thing and it works ;)

Don't blame me if i always ask for your help. I just want to learn to be better :)

Posted

You can't use #onArmorTick for removing flight (because it is only called when the armor is worn), but you can use it for adding flight.

 

There are lots of topics on this, especially over at Minecraft Forums.

 

To sum up the common theme of all of them:

 

1. There isn't really a good way to not conflict with other mods, though there are some things you can try.

 

Your best bet is to set the player's flying capability EVERY tick while your flight should be allowed; if every mod does this, then even when you set flying to false, the other mod should set it to true shortly thereafter (though it may still cause the player to fall out of the sky...).

 

2. The only reliable way to remove item-based flight is to check using the PlayerTickEvent, as this is called every tick no matter whether the player is holding or wearing the item(s) or not. So, you may as well use it to add flight, too.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.