менять цвет после нажатия на кнопку

Версия Minecraft
1.16.5
API
Forge
163
7
24
Как можно сохранять переменную? пробовал через конфиг, тогда цвет меняются сразу у все кнопок (понятно, потому что static) которые создал. Есть ли встроенный метод или переменная чтобы проверить нажатие?
Java:
package ru.madara.gui.button;

import com.mojang.blaze3d.matrix.MatrixStack;
import net.minecraft.client.gui.AbstractGui;
import net.minecraft.client.gui.widget.Widget;
import net.minecraft.nbt.CompoundNBT;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.TranslationTextComponent;
import ru.madara.Wrapper;
import ru.madara.config.ModConfigMy;
import ru.madara.font.styled.StyledFontRenderer;

import java.awt.*;
import java.util.function.Consumer;


public class RenderSmallToggle extends Widget implements Wrapper {
    private final Consumer<Widget> onPress;
    private TranslationTextComponent TextInButton;
    boolean  loadedToggleButtonState = true;
    int toggleID = 1;

    public RenderSmallToggle(int x, int y, int width, int height,
                             ITextComponent title, TranslationTextComponent text, Consumer<Widget> onPress) {
        super(x, y, width, height, title);

        TextInButton = text;
        this.onPress = onPress;

    }

    @Override
    public void renderButton(MatrixStack matrixStack, int mouseX, int mouseY, float delta) {
        StyledFontRenderer.drawShadowedCenteredYString(matrixStack, font, TextInButton, 40, 60 - font.getFontHeight(), Color.WHITE);

        int buttonWidth = this.getWidth();
        int buttonHeight = this.getHeight();
        int buttonX = this.x;
        int buttonY = this.y;


        int argbColor =  loadedToggleButtonState ? Color.red.getRGB() : Color.green.getRGB();


        AbstractGui.fill(matrixStack, buttonX, buttonY, buttonX + buttonWidth, buttonY + buttonHeight, argbColor);
    }

    @Override
    public void onClick(double mouseX, double mouseY) {
        super.onClick(mouseX, mouseY);
        if (onPress != null) {
            onPress.accept(this);
            loadedToggleButtonState = !loadedToggleButtonState;
         
        }
    }


}
 
Последнее редактирование:
88
4
6



Три вечно популярных гайдов, в моддинге
 
88
4
6
Сверху