aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/io/github/moulberry/notenoughupdates/commands/ScreenCommand.java
blob: 483e8bac004143affa8fa7b82cfd9b9d1d096c2a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package io.github.moulberry.notenoughupdates.commands;

import io.github.moulberry.notenoughupdates.NotEnoughUpdates;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;

public class ScreenCommand extends ClientCommandBase {

    private final ScreenOpener opener;

    protected ScreenCommand(String name, ScreenOpener opener) {
        super(name);
        this.opener = opener;
    }

    @Override
    public void processCommand(ICommandSender sender, String[] args) throws CommandException {
        NotEnoughUpdates.INSTANCE.openGui = opener.open();
    }

    @FunctionalInterface
    public interface ScreenOpener {
        GuiScreen open();
    }
}