Waystones

Waystones

123M Downloads

Replace dimensionalWarp, dimensionalWarpAllowList and dimensionalWarpDenyList with more granular options

BlayTheNinth opened this issue ยท 0 comments

commented

Since Waystones grew, having only "ALLOW", "GLOBAL_ONLY" and "DENY" is no longer flexible enough. There are use cases where you would want only sharestones to allow dimensional teleport, or only warp plates, or only the inventory button, or only players who have unlocked a certain advancement, ...

The new cost modifier system can represent these cases pretty well if a "refuse()" option is added. Might even rename it something like "warpConfig" to better fit for cases where it's not strictly a "cost". Would also need to support parameters in conditions (which is good to have anyways).

Example for denyList:

warpConfig = [
    "[is_dimension(the_nether)] refuse()"
    "[is_dimension(the_end)] refuse()"
]

Example for allowList:

warpConfig = [
    "[is_not_dimension(overworld), is_not_dimension(mining_world)] refuse()"
]
  • other conditions could be used (like source_is_global to replicate GLOBAL_ONLY from before).