diff --git a/.idea/runConfigurations/Minecraft_Server.xml b/.idea/runConfigurations/Minecraft_Server.xml index 4471148..457a381 100644 --- a/.idea/runConfigurations/Minecraft_Server.xml +++ b/.idea/runConfigurations/Minecraft_Server.xml @@ -12,5 +12,5 @@ - + \ No newline at end of file diff --git a/src/main/java/com/expvintl/mctools/FeaturesSettings.java b/src/main/java/com/expvintl/mctools/FeaturesSettings.java index 35c204c..f0f01c0 100644 --- a/src/main/java/com/expvintl/mctools/FeaturesSettings.java +++ b/src/main/java/com/expvintl/mctools/FeaturesSettings.java @@ -11,5 +11,5 @@ public class FeaturesSettings { public final BooleanSetting autoToolIncludePlayer = new BooleanSetting(); public final BooleanSetting autoFish = new BooleanSetting(); public final BooleanSetting noFallPacket = new BooleanSetting(); - + public final BooleanSetting noDarkness=new BooleanSetting(); } diff --git a/src/main/java/com/expvintl/mctools/MCToolsClient.java b/src/main/java/com/expvintl/mctools/MCToolsClient.java index 7519057..8223efb 100644 --- a/src/main/java/com/expvintl/mctools/MCToolsClient.java +++ b/src/main/java/com/expvintl/mctools/MCToolsClient.java @@ -3,12 +3,14 @@ package com.expvintl.mctools; import com.expvintl.mctools.commands.*; import com.expvintl.mctools.modules.BetterTooltip; import com.expvintl.mctools.modules.CameraZoom; +import com.expvintl.mctools.modules.ClearDarknessEffect; import com.expvintl.mctools.texthud.MCInfo; import com.expvintl.mctools.texthud.PotionInfo; import com.mojang.brigadier.CommandDispatcher; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback; import net.fabricmc.fabric.api.client.command.v2.FabricClientCommandSource; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; import net.fabricmc.fabric.api.client.rendering.v1.hud.HudElementRegistry; import net.fabricmc.fabric.api.client.rendering.v1.hud.VanillaHudElements; import net.minecraft.command.CommandRegistryAccess; @@ -22,12 +24,12 @@ public class MCToolsClient implements ClientModInitializer { ClientCommandRegistrationCallback.EVENT.register(MCToolsClient::registerCommands); HudElementRegistry.attachElementBefore(VanillaHudElements.CROSSHAIR, Identifier.of("mctools","DrawInfo"),MCInfo::drawHUD); HudElementRegistry.attachElementBefore(VanillaHudElements.CROSSHAIR, Identifier.of("mctools","DrawPotionInfo"),PotionInfo::drawHUD); - InitModules(); } public void InitModules(){ BetterTooltip.INSTANCE.init(); CameraZoom.INSTANCE.init(); + ClearDarknessEffect.INSTANCE.init(); } private static void registerCommands(CommandDispatcher dispatcher, CommandRegistryAccess registryAccess) { @@ -40,5 +42,6 @@ public class MCToolsClient implements ClientModInitializer { CQServerPluginsCommand.register(dispatcher); CNoFallPacketCommand.register(dispatcher); CFastDropCommand.register(dispatcher,registryAccess); + CNoDarknessCommand.register(dispatcher); } } diff --git a/src/main/java/com/expvintl/mctools/commands/CAutoToolCommand.java b/src/main/java/com/expvintl/mctools/commands/CAutoToolCommand.java index 0bd0a28..da2874d 100644 --- a/src/main/java/com/expvintl/mctools/commands/CAutoToolCommand.java +++ b/src/main/java/com/expvintl/mctools/commands/CAutoToolCommand.java @@ -26,6 +26,7 @@ import net.minecraft.entity.player.PlayerInventory; import net.minecraft.item.*; import net.minecraft.registry.entry.RegistryEntry; import net.minecraft.registry.tag.EntityTypeTags; +import net.minecraft.registry.tag.ItemTags; import net.minecraft.text.Text; import net.minecraft.world.GameMode; @@ -77,7 +78,7 @@ public class CAutoToolCommand { int slot=-1; for(int i=0;i dispatcher){ + CommandUtils.CreateStatusCommand("cnodarkness", FeaturesSettings.INSTANCE.noDarkness, dispatcher); + + dispatcher.register(literal("cnodarkness").then(argument("开关", BoolArgumentType.bool()).executes(CNoDarknessCommand::execute))); + } + + private static int execute(CommandContext context) { + FeaturesSettings.INSTANCE.noDarkness.setValue(context.getArgument("开关", Boolean.class)); + if(FeaturesSettings.INSTANCE.noDarkness.getValue()){ + context.getSource().getPlayer().sendMessage(Text.literal("已禁用黑暗效果!"),false); + }else{ + context.getSource().getPlayer().sendMessage(Text.literal("已启用黑暗效果!"),false); + } + return Command.SINGLE_SUCCESS; + } +} diff --git a/src/main/java/com/expvintl/mctools/gui/MainMenu.java b/src/main/java/com/expvintl/mctools/gui/MainMenu.java deleted file mode 100644 index 4b54418..0000000 --- a/src/main/java/com/expvintl/mctools/gui/MainMenu.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.expvintl.mctools.gui; - -import net.minecraft.client.gui.DrawContext; -import net.minecraft.client.gui.screen.Screen; -import net.minecraft.text.Text; - -public class MainMenu extends Screen { - public MainMenu(Text title) { - super(title); - } - - @Override - protected void init() { - - } - - @Override - public void render(DrawContext context, int mouseX, int mouseY, float delta) { - context.drawText(textRenderer,"Test",100,100,-1,false); - super.render(context, mouseX, mouseY, delta); - } -} diff --git a/src/main/java/com/expvintl/mctools/modules/CameraZoom.java b/src/main/java/com/expvintl/mctools/modules/CameraZoom.java index abd8a69..3bd4908 100644 --- a/src/main/java/com/expvintl/mctools/modules/CameraZoom.java +++ b/src/main/java/com/expvintl/mctools/modules/CameraZoom.java @@ -2,8 +2,11 @@ package com.expvintl.mctools.modules; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; +import net.minecraft.client.MinecraftClient; import net.minecraft.client.option.KeyBinding; import net.minecraft.client.util.InputUtil; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.effect.StatusEffects; import net.minecraft.util.Identifier; import org.lwjgl.glfw.GLFW; @@ -16,5 +19,4 @@ public class CameraZoom { isZoom=zoom.isPressed(); }); } - } diff --git a/src/main/java/com/expvintl/mctools/modules/ClearDarknessEffect.java b/src/main/java/com/expvintl/mctools/modules/ClearDarknessEffect.java new file mode 100644 index 0000000..dc0a726 --- /dev/null +++ b/src/main/java/com/expvintl/mctools/modules/ClearDarknessEffect.java @@ -0,0 +1,21 @@ +package com.expvintl.mctools.modules; + +import com.expvintl.mctools.FeaturesSettings; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.minecraft.client.MinecraftClient; +import net.minecraft.entity.effect.StatusEffects; + +public class ClearDarknessEffect { + public static ClearDarknessEffect INSTANCE=new ClearDarknessEffect(); + + public void init(){ + ClientTickEvents.END_CLIENT_TICK.register(this::tick); + } + public void tick(MinecraftClient client){ + if(client.player!=null && FeaturesSettings.INSTANCE.noDarkness.getValue()){ + if (client.player.hasStatusEffect(StatusEffects.DARKNESS)) { + client.player.removeStatusEffect(StatusEffects.DARKNESS); + } + } + } +}