Replace dimensionalWarp, dimensionalWarpAllowList and dimensionalWarpDenyList with more granular options
BlayTheNinth opened this issue ยท 0 comments
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 replicateGLOBAL_ONLY
from before).