Skip to content

Commit

Permalink
Add whitelist to Slippy (MeteorDevelopment#3902)
Browse files Browse the repository at this point in the history
  • Loading branch information
Paddyk45 authored and thebest9178 committed Aug 18, 2023
1 parent f8034db commit 4751a37
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public float getSlipperiness(float original) {
Slippy slippy = Modules.get().get(Slippy.class);
Block block = (Block) (Object) this;

if (slippy.isActive() && !slippy.ignoredBlocks.get().contains(block)) {
if (slippy.isActive() && (slippy.listMode.get() == Slippy.ListMode.Whitelist ? slippy.allowedBlocks.get().contains(block) : !slippy.ignoredBlocks.get().contains(block))) {
return slippy.friction.get().floatValue();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,7 @@

package meteordevelopment.meteorclient.systems.modules.movement;

import meteordevelopment.meteorclient.settings.BlockListSetting;
import meteordevelopment.meteorclient.settings.DoubleSetting;
import meteordevelopment.meteorclient.settings.Setting;
import meteordevelopment.meteorclient.settings.SettingGroup;
import meteordevelopment.meteorclient.settings.*;
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import net.minecraft.block.Block;
Expand All @@ -27,13 +24,33 @@ public class Slippy extends Module {
.build()
);

public final Setting<ListMode> listMode = sgGeneral.add(new EnumSetting.Builder<ListMode>()
.name("list-mode")
.description("The mode to select blocks.")
.defaultValue(ListMode.Blacklist)
.build()
);

public final Setting<List<Block>> ignoredBlocks = sgGeneral.add(new BlockListSetting.Builder()
.name("ignored-blocks")
.description("Decide which blocks not to slip on")
.visible(() -> listMode.get() == ListMode.Blacklist)
.build()
);

public final Setting<List<Block>> allowedBlocks = sgGeneral.add(new BlockListSetting.Builder()
.name("allowed-blocks")
.description("Decide which blocks to slip on")
.visible(() -> listMode.get() == ListMode.Whitelist)
.build()
);

public Slippy() {
super(Categories.Movement, "slippy", "Changes the base friction level of blocks.");
}

public enum ListMode {
Whitelist,
Blacklist
}
}

0 comments on commit 4751a37

Please sign in to comment.