Skip to content

Conversation

JustAHuman-xD
Copy link
Contributor

@JustAHuman-xD JustAHuman-xD commented Oct 6, 2025

Resolves #227 #327

Changes the SettingsPage to have no buttons by default but buttons can be added with SettingsPage#addSetting, adds a waila settings button (which expands into the different options), a resource pack settings option (which holds block texture & armor texture settings), and added a setting for disabling research effects for players.

There are now a few default settings buttons that can be used for simple options (toggles, cycles, and numeric settings), the previously hardcoded toggle & cycle buttons have been removed and have had their usages replaced with these new buttons.

The waila can now be globally disabled by setting the tick interval to be <= 0. I reworked the waila itself a little bit to allow for ActionBar waila and for more configurability, as well as internally changing it to use only 1 raycast call, added events for both block and entity wailas, and added entity waila overrides, as only blocks could have their waila overriden. I also moved the waila out of the blocks package, as it isn't only for blocks.

I remember seeing somewhere a discussion on allowing players to enable the waila for vanilla blocks/entities but I couldn't find an issue for it, but it is implemented by this as well.

While adapting the system I also made it so servers can disable armor textures, and added the option to force block or armor textures as well. (For servers that have a server-side resource pack for ex)

@JustAHuman-xD JustAHuman-xD linked an issue Oct 7, 2025 that may be closed by this pull request
Copy link
Member

@Seggan Seggan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any WAILA problems can now be git blamed on Justin

import org.bukkit.event.HandlerList
import org.bukkit.event.player.PlayerEvent

class PylonBlockWailaEvent(
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needs docs

import org.bukkit.event.HandlerList
import org.bukkit.event.player.PlayerEvent

class PylonEntityWailaEvent(
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needs docs

import xyz.xenondevs.invui.item.ItemProvider
import xyz.xenondevs.invui.item.impl.AbstractItem

data class CycleSettingButton<S> (
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This and siblings need docs

}

@JvmStatic
fun addWailaOverride(entity: Entity, provider: (Player) -> WailaDisplay?) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needs docs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Allow hiding buttons in settings Action bar WAILA
2 participants