This repository has been archived on 2024-10-31. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
LibZontreck/src/main/java/dev/zontreck/libzontreck/commands/CreditsCommand.java

51 lines
1.5 KiB
Java

package dev.zontreck.libzontreck.commands;
import com.mojang.brigadier.CommandDispatcher;
import dev.zontreck.libzontreck.chestgui.ChestGUI;
import dev.zontreck.libzontreck.chestgui.ChestGUIButton;
import dev.zontreck.libzontreck.util.heads.CreditsEntry;
import dev.zontreck.libzontreck.util.heads.HeadCache;
import dev.zontreck.libzontreck.vectors.Vector2i;
import net.minecraft.commands.CommandSourceStack;
import net.minecraft.commands.Commands;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
public class CreditsCommand {
public static void register(CommandDispatcher<CommandSourceStack> dispatch)
{
dispatch.register(Commands.literal("credits_ariasmods").executes(s->credits(s.getSource())));
}
private static int credits(CommandSourceStack source) {
// Open the credits GUI
if(source.getEntity() instanceof Player)
{
// OK.
ChestGUI gui = ChestGUI.builder().withGUIId(new ResourceLocation("ariasmods", "credits-gui")).withPlayer(source.getEntity().getUUID());
Vector2i pos = new Vector2i();
for(CreditsEntry entry : HeadCache.CREDITS)
{
gui = gui.withButton(new ChestGUIButton(entry.compile(), ()->{}, pos));
pos.y++;
if(pos.y>=9)
{
pos.x++;
pos.y=0;
}
}
gui.open();
return 0;
}else return 1;
}
}