Add a way to give a guide to a new player without them having to know how to craft one
Sea-Kerman opened this issue ยท 0 comments
As previously discussed on Discord, we could have it fall from the sky (and continue doing so periodically until the player picks one up)
- Use an advancement to track whether the player was ever in posession of an AE2 guide and use that advancement to disable the automated spawning of new guides
- There should be an initial delay between a player first being encountered in the world and the first chance of spawning the event. We could use the inherent GameProfile->Player database that AE2 maintains if Vanilla does not offer a way to track the age of a server players profile on that server. This should be time-played based if possible.
- Use a hidden advancement to track if the player has ever obtained the guide in any way. This should disable: Spawning on first login (if config option is set that way) or spawning the hit-in-the-head event.
- Provide configs:
- Set the guide-grant mode: off (never granted), on-login (grant on login), event (via the time based event)
- Set damage received when hit by the book (default: 1/2 heart)
- Set the minimum player health before the event is triggered (default: 3 hearts)
- Set the minimum play-time before the first time the event can trigger (per player)
- Set the minimum play-time between triggers of the event (if the book is somehow destroyed before the player can pick it up)
- Global delay between attempts at spawning such a guide (we should use a global tick handler)
- Preconditions for the event:
- Player does not have the owned-guide-advancement
- The player can see the sky
- A ray from the eye-vector outwards 10 blocks is not occluded