Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mount parrot on shoulder #3

Open
MinecraftAdmin opened this issue Jun 15, 2017 · 9 comments
Open

Mount parrot on shoulder #3

MinecraftAdmin opened this issue Jun 15, 2017 · 9 comments

Comments

@MinecraftAdmin
Copy link

Would be a fantastic addition! 🐦

@MinecraftAdmin MinecraftAdmin changed the title Mount pet on shoulder Mount parrot on shoulder Jun 15, 2017
@Arnuh
Copy link
Owner

Arnuh commented Jun 17, 2017

I looked at it a bit yesterday but then got occupied with games/talking and never finished it.. Looks like you can set every? entity onto your shoulder. So I'll initially code it to work with only the parrot(If it even will work properly at all) and then later make it possible for every pet I think.

Also seems like I'll have to 'remove' the pets from your shoulders before logout or else they will become permanent entities, but that is just a theory from looking at the decompiled code.

@MinecraftAdmin
Copy link
Author

MinecraftAdmin commented Jun 18, 2017

Even though something like a wither would look super derpy, being able to mount a silverfish or those small endermites, or even better, vexes would looks fabulous :3

Also like the spawning/despawning on login/logout should take care of the "removal" shouldn't it?

@Arnuh
Copy link
Owner

Arnuh commented Jun 18, 2017

The whole shoulder thing adds an NBTTagCompound to the player class, and on logout does a spawnXXX. Which calls spawnEntityFromShoulder and does world.addEntity based off that NBTTagCompound data provided creating a whole new mob.(Which also means I have to remove the pet when mounting it on a players shoulder)

I should be able to stop minecraft from spawning the entity with SpawnReason.SHOULDER_ENTITY incase I don't have a way to convert it properly back to a pet.

@Arnuh
Copy link
Owner

Arnuh commented Jun 28, 2017

I made some progress on this a couple days ago where I got the parrot mounted on my shoulder. I tried a few other mobs and unless I messed up something it doesn't seem to work, I don't know exactly why it doesn't work but.. I'll try and see.

Haven't spent much time on EchoPet for last bit so I don't know when I'll be able to release the shoulder mounting.

Here is the pic I took

Also my theory that it'll spawn the pet as a real entity on logout was true but it wont be a hard thing to work around.

@TheIntelloBox
Copy link

Will you add it ? :)

@Arnuh
Copy link
Owner

Arnuh commented Jul 30, 2018

Some progress has been made in commits but it likely needs some more work before anyone uses it.

If I'm ever interested I'll look into finishing it after 1.13 and the new 1.13 mobs are added.

@johngonole
Copy link

yea the parrot feature would be super awesome. I can see a lot of players liking that pet just for that feature.

@andrewkm
Copy link
Contributor

andrewkm commented Dec 9, 2018

From my testing @Arnuh It seems that the LEFT_SHOULDER and RIGHT_SHOULDER variants do not show up in the pet menu.

I can however toggle them.

Seems to work fine with /pet parrot:LEFT_SHOULDER
However, if you /pet remove - the parrot stays glitched on your shoulder (visual glitch that is fixed with a relog back to the server.)

I'd say it would be nice to add someway for players to find out that you can select the left and right shoulder options without knowing about them.

Otherwise however, this looks implemented and could be closed :)

@andrewkm
Copy link
Contributor

andrewkm commented Dec 9, 2018

Ok scratch that, there does seem to be quite a few problems here.
Many glitches, many appearing/dissappearing parrots.
Sometimes two appear on your shoulders, sometimes one. Sometimes two with one following.
Impossible to remove as well without server restart, more than visual, etc.

If you'd like a full in depth report one day let me know.
Doesn't seem too important to fix, but do let me know if you're ever working on this and I'll get to it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants