Giter Site home page Giter Site logo

egghuntplugin's People

Contributors

hypercoded avatar j0hnl0cke avatar throawayuser avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

egghuntplugin's Issues

Buffs/Bonuses for Holding the Egg

(I have also posted this in the discussion section on the Spigot page but I wanted to post here too)

Hey man I'm super interested in this concept. I'm gonna plug it into my server, but I have a suggestion/request for you.

Do you think you could please add a feature where if a player has the egg in their inventory/in their hand, they get buffs or potion effects such as Strength, Swiftness, Night vision, Regen, etc? Or maybe it gives the same bonus as a golden apple/god apple, but it lasts until the egg leaves their inventory?
I would love it if the egg holder gets some sort of bonus as it adds more incentive to go after it. Not to mention it would make the player who holds it more like a boss, who can replace the ender dragon for those who weren't around to defeat it.

Thanks for posting this plugin, I'll still be using it if you don't see this but I hope you do!

[BUG] Value of first owner's seconds

Describe the bug
When server starts, egg owner isn't defined (and it's ok). When some player obtains egg, his eggOwnedSeconds starts not from 0, but from the time server was started. So If player manages to obtain egg after 10 minutes of server's restart, then his eggOwnedSeconds will be 600 from the start, and it's obviously a bug. Maybe "lastUpdate" variable has initilization on plugin start and then this value compares to current time, when owner grabs egg, in result causing such a big time from the start?

To Reproduce
Start server. Wait for 5 minutes. Grab an egg. Your eggOwnedSeconds will be 300 from the start, but not 0.

Expected behavior
eggOwnedSeconds obviously should be 0 when first player becomes egg owner.

Version Information:

  • "EggHunt-1.1.1-shaded.jar"
  • 1.20.2
  • "paper-1.20.2-318.jar"

Update location when egg teleports

Unclear how to approach this since allowing some degree of uncertainty to the egg's location might improve gameplay

I was thinking of updating the location when punched to where it was before the teleport, so then players would have to look for it

Update: Added a setting for variation in the code

[BUG] Egg holded on second hand does not drop when player logs off

Describe the bug
Any player can put the eng in the second (left hand) and disconnect from the game. The result is that the egg is not dropped and stays in the inventory

To Reproduce
Log in
Put the egg in the second hand selecting it and pressing F
Log out

Expected behavior
The egg is removed from the second hand and dropped on the ground

Actual behavior
The egg stays in the invenotry of the logged out user

Version Information:

  • Version of this plugin: EggHunt-1.1.1-shaded
  • Minecraft version: Minecraft 1.20.4
  • Server software: paper-1.20.4-463

If applicable, also attach the following information:

  • Any other installed plugins (a lot, unrelevant)
  • Server build: paper-1.20.4-463
  • Minecraft client: vanilla minecraft

Configuration and logs:
If applicable, attach the config.yml and data.yml files inside the /plugins/EggHunt/ directory, which is generated when the plugin is first run.

#If enabled, logs extra debugging information to the console. This information will appear in logs regardless of debug setting.
debug: false

#Name of your end world, usually to "world_the_end" on spigot
end: world_the_end

#Whether the egg teleporting causes the owner to no longer count as the owner of the egg
reset_owner: true

#Whether the egg should be invulnerable to damage
egg_inv: true
#Whether the egg should respawn after it is destroyed
resp_egg: true
#Whether the egg respawns immediately (true) or after a new dragon is spawned and killed (false) after the egg is destroyed
resp_imm: false

#Whether to drop any eggs that players have in their ender chest onto the ground.
#Setting this to false will prevent the player from removing that egg from their ender chest.
drop_enderchested_egg: false

#Whether to apply an entity tag to the egg owner (works like `/tag <playerName> add <tagName>`)
#Tag is updated when egg ownership changes and on player login
tag_owner: true
#The name of the tag to apply. Selected like: `/tell @a[tag=<tagName>] <message>`
#If changing this while the egg is claimed, remove the old tag by running `/tag <playerName> remove <oldTagName>`
owner_tag_name: eggOwner

#Whether to create and update scoreboards for time holding the dragon egg
#Scoreboards are updated when the egg changes ownership and when the world saves
#When editing the scores, modify the board tracking seconds. Other times are calculated based on that time
keep_score: true
#Whether entities with custom names are counted on the scoreboard instead of the owner when holding the egg
named_entities_keep_score: false

Also attach any relevant log files.
Do not upload zipped log files (ending in .gz), first unzip the log file(s) inside with a utility like (7-zip)[https://www.7-zip.org/].

Screenshots
If applicable, attach screenshots to help explain the issue.

Additional context
Add any other relevant context about the problem here.

Transfer of egg between inventories

See if the plugin can detect when the egg is put into chests, furnaces, etc, or taken out. Should update location of the egg.

When using an anvil or other temp storage, the egg doesn't switch back to the player immediately after they close the inventory, causing the egg to think it has moved permanently into the anvil's storage. Either don't track moving the egg into such inventoies, or cancel interacting with the egg in these inventories

Transfer between inventories with donkey

When the egg is put into a donkey chest, the plugin should update the location of the egg as the donkey moves, but I don't know how to check if the inventory being placed into is a donkey. Putting the egg into a donkey chest makes the entity null, which causes a null pointer exception when trying to get the egg's location with commands

Consider: do not allow egg to be interacted when non-player inventory is open. (maybe do a switch statement on interacts, so most inventory types can be used to interact with the egg, but the default statement disallows it)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.