UltraCosmetics icon indicating copy to clipboard operation
UltraCosmetics copied to clipboard

Allow to set per-world categories

Open Enz0Z opened this issue 1 year ago • 3 comments

Describe the feature and how it would be used

Hello there!

I'm currently testing UC, everything it has is great, and I would like to propose some options:

  • Allow to set per-world categories. For example, a Minigame-server has a lobby world, and minigame-worlds, in this minigame-worlds, I don't want players to use Gadgets or Morphs, but I want to keep, death effects, projectile effect and particles activated.

  • Allow to set in which world the option "Menu-Item" should be executed, allowing server-owners to only give the "Menu-Item" in the lobby world.

Are there alternatives?

The only alternative is to only set "Enabled-Worlds" into the lobby world.

Additional information

No response

Enz0Z avatar Sep 30 '24 17:09 Enz0Z

Hello there!

Allow to set per-world categories. For example, a Minigame-server has a lobby world, and minigame-worlds, in this minigame-worlds, I don't want players to use Gadgets or Morphs, but I want to keep, death effects, projectile effect and particles activated.

This is actually already possible using UC's uc-blocked-categories WorldGuard flag. Each world has a __global__ region that applies to everyone in that world, so you can use that to block specific categories. For example:

/rg flag -w minigame-worlds __global__ uc-blocked-categories GADGETS,MORPHS

Allow to set in which world the option "Menu-Item" should be executed, allowing server-owners to only give the "Menu-Item" in the lobby world.

This isn't currently possible, but I've been meaning to add a WorldGuard flag for that as well, which you would use in a similar way to the above to enable/disable it in entire worlds.

datatags avatar Sep 30 '24 19:09 datatags

Hey, thanks for replying to me that fast!

Good solution, but in my case, I don't have WorldGuard, but even installing it, I load/unload worlds on-demand with different names :(. Thinking of a solution... I could listen to the world change event, and if it is not the lobby, clear what the player has activated, the issue is that ~~I don't know if it is possible to deactivate only certain options with the /uc clear command.~~

EDIT: I just checked the documentation and it is possible.


Likewise, if at some point you wanted to do it, I think a config like this would be easy to understand:

Categories:
  Gadgets:
    Main-Menu-Item: IRON_AXE
    Go-Back-Arrow: true
    # You wanna show the cooldown of current gadget in actionbar?
    Cooldown-In-ActionBar: true
    # Whether a player can disable gadgets for themself using `/uc gadgets` or the menu button.
    # When gadgets are disabled for a player, they cannot use gadgets or be affected by others' gadgets.
    # When set to false, gadgets are always per-player enabled for all players.
    # Disabling the gadgets category entirely will work regardless of this setting.
    Allow-Disable-Gadgets: true
    Enabled-Worlds:
    - 'lobby'
  Particle-Effects:
    Main-Menu-Item: BLAZE_POWDER
    Go-Back-Arrow: true
    Enabled-Worlds:
    - '*'
  Mounts:
    Main-Menu-Item: SADDLE
    Go-Back-Arrow: true
    Enabled-Worlds:
    - 'lobby'

Enz0Z avatar Sep 30 '24 21:09 Enz0Z

I see, I can look at adding that when I have time then, though I haven't had a lot of time recently

datatags avatar Oct 02 '24 04:10 datatags