- Fri Mar 04, 2016 2:36 pm
#196136
I suggest we disable teleportation via Chorus Fruit on private plots.
The rationale for this is teleportation allows players to get to places that they would not be able to get to via normal means. You might say "well this is a part of mc now and it should be allowed." Well, now we need to make our walls 8 blocks thick. In some cases, this is simply not feasible and it constrains what we can build and the things we need to do to prevent other players from messing with our things.
If you vote no, would you agree to making it flag-gable by the plot owner?
Implementation details:
When a player eats a Chorus Fruit, and the chosen destination to teleport to is in a private plot, another attempt should be made to find a suitable location (in the same way another attempt (up to 16) is made if the destination is a solid block; see wiki). If the API does not provide this "re-attempt" ability or if it would over-complicate the logic, then, when the chosen destination is in a private plot, another attempt should not be made and the teleportation should not occur altogether.
In pseudocode:
The rationale for this is teleportation allows players to get to places that they would not be able to get to via normal means. You might say "well this is a part of mc now and it should be allowed." Well, now we need to make our walls 8 blocks thick. In some cases, this is simply not feasible and it constrains what we can build and the things we need to do to prevent other players from messing with our things.
If you vote no, would you agree to making it flag-gable by the plot owner?
Implementation details:
When a player eats a Chorus Fruit, and the chosen destination to teleport to is in a private plot, another attempt should be made to find a suitable location (in the same way another attempt (up to 16) is made if the destination is a solid block; see wiki). If the API does not provide this "re-attempt" ability or if it would over-complicate the logic, then, when the chosen destination is in a private plot, another attempt should not be made and the teleportation should not occur altogether.
In pseudocode:
Code: Select all
Ideally, this is how it should work. Most of it is already in minecraft. You just need to add the "if location is public plot" portion. Again, if the API does not provide the appropriate hooks, the psuedocode may vary.function eatChorusFruit:
16 times do:
get random location around player.
if location is not solid and if location is public plot:
teleport player.
return to calling function.
return to calling function.
Last edited by eah on Fri Mar 04, 2016 2:40 pm, edited 1 time in total.