Skip to content

Commit 7409f43

Browse files
authored
Merge pull request #6 from TechPro424/1.20.1-temp
Add per dimension blacklist and make commands op only
2 parents 558215f + e4ec7f7 commit 7409f43

21 files changed

+177
-130
lines changed

build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ dependencies {
5252

5353
// modImplementation "net.fabricmc.fabric-api:fabric-api-deprecated:${project.fabric_version}"
5454
modApi include("maven.modrinth:mixintrace:1.1.1+1.17")
55+
modApi include("blue.endless:jankson:1.2.2")
5556
}
5657

5758
modrinth {

gradle.properties

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@ org.gradle.parallel=true
44

55
# Fabric Properties
66
# check these on https://fabricmc.net/develop
7-
minecraft_version=1.20
8-
yarn_mappings=1.20+build.1
7+
minecraft_version=1.20.1
8+
yarn_mappings=1.20.1+build.2
99
loader_version=0.14.21
1010

1111
# Mod Properties
12-
mod_version = 0.1.0-mc1.20
12+
mod_version = 0.2.0-mc1.20
1313
maven_group = in.techpro424
1414
archives_base_name = itemblacklist
1515

1616
# Dependencies
17-
fabric_version=0.83.0+1.20
17+
fabric_version=0.83.1+1.20.1

remappedSrc/in/TechPro424/itemblacklist/commands/AddIdToBlacklistCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public static int run(CommandContext<ServerCommandSource> context) {
2424

2525
Config.addIdToConfig(id);
2626

27-
context.getSource().sendFeedback(Text.literal("Added §b" + id + "§r to the blacklist."), true);
27+
context.getSource().sendFeedback(() -> Text.literal("Added §b" + id + "§r to the blacklist."), true);
2828
return 1;
2929
}
3030
}

remappedSrc/in/TechPro424/itemblacklist/commands/ListIdsInBlacklistCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public static void register(CommandDispatcher<ServerCommandSource> dispatcher, C
2020
public static int run(CommandContext<ServerCommandSource> context) {
2121
String idsInConfig = Config.listConfig();
2222

23-
context.getSource().sendFeedback(Text.literal(idsInConfig), true);
23+
context.getSource().sendFeedback(() -> Text.literal(idsInConfig), true);
2424
return 1;
2525
}
2626
}

remappedSrc/in/TechPro424/itemblacklist/commands/RemoveIdFromBlacklistCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public static int run(CommandContext<ServerCommandSource> context) {
2424

2525
Config.removeIdFromConfig(id);
2626

27-
context.getSource().sendFeedback(Text.literal("Removed §b" + id + "§r from the blacklist."), true);
27+
context.getSource().sendFeedback(() -> Text.literal("Removed §b" + id + "§r from the blacklist."), true);
2828
return 1;
2929
}
3030
}

src/main/java/in/techpro424/itemblacklist/ItemBlacklist.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ public class ItemBlacklist implements ModInitializer {
1313

1414
@Override
1515
public void onInitialize() {
16-
1716
JsonOperations.loadConfigFromFile();
1817
ModCommandRegister.registerCommands();
1918
}

src/main/java/in/techpro424/itemblacklist/commands/AddIdToBlacklistCommand.java

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package in.techpro424.itemblacklist.commands;
22

3+
import com.google.common.collect.Iterables;
34
import com.mojang.brigadier.CommandDispatcher;
45
import com.mojang.brigadier.context.CommandContext;
56

@@ -14,17 +15,26 @@
1415
public class AddIdToBlacklistCommand {
1516
public static void register(CommandDispatcher<ServerCommandSource> dispatcher, CommandRegistryAccess access, RegistrationEnvironment environment) {
1617

17-
dispatcher.register(CommandManager.literal("addIdToBlacklist")
18+
dispatcher.register(CommandManager.literal("addIdToBlacklist").requires(source -> source.hasPermissionLevel(4))
1819
.then(CommandManager.argument("id", IdentifierArgumentType.identifier())
19-
.executes(AddIdToBlacklistCommand::run)));
20+
.then(CommandManager.literal("global").executes(AddIdToBlacklistCommand::run))
21+
.then(CommandManager.literal("overworld").executes(AddIdToBlacklistCommand::run))
22+
.then(CommandManager.literal("nether").executes(AddIdToBlacklistCommand::run))
23+
.then(CommandManager.literal("end").executes(AddIdToBlacklistCommand::run))
24+
));
25+
26+
27+
2028
}
2129

2230
public static int run(CommandContext<ServerCommandSource> context) {
2331
String id = IdentifierArgumentType.getIdentifier(context, "id").toString();
32+
String blacklist = Iterables.getLast(context.getNodes()).getNode().getName();
33+
2434

25-
Config.addIdToConfig(id);
35+
Config.addIdToConfig(id, blacklist);
2636

27-
context.getSource().sendFeedback(() -> Text.literal("Added §b" + id + "§r to the blacklist."), true);
37+
context.getSource().sendFeedback(() -> Text.literal("Added §b" + id + "§r to the \u00A7l" +blacklist+ "§r blacklist."), true);
2838
return 1;
2939
}
3040
}

src/main/java/in/techpro424/itemblacklist/commands/ListIdsInBlacklistCommand.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package in.techpro424.itemblacklist.commands;
22

3+
import com.google.common.collect.Iterables;
34
import com.mojang.brigadier.CommandDispatcher;
45
import com.mojang.brigadier.context.CommandContext;
56

@@ -13,12 +14,18 @@
1314
public class ListIdsInBlacklistCommand {
1415
public static void register(CommandDispatcher<ServerCommandSource> dispatcher, CommandRegistryAccess access, RegistrationEnvironment environment) {
1516

16-
dispatcher.register(CommandManager.literal("listIdsInBlacklist")
17-
.executes(ListIdsInBlacklistCommand::run));
17+
18+
dispatcher.register(CommandManager.literal("listIdsInBlacklist").requires(source -> source.hasPermissionLevel(4))
19+
.then(CommandManager.literal("global").executes(ListIdsInBlacklistCommand::run))
20+
.then(CommandManager.literal("overworld").executes(ListIdsInBlacklistCommand::run))
21+
.then(CommandManager.literal("nether").executes(ListIdsInBlacklistCommand::run))
22+
.then(CommandManager.literal("end").executes(ListIdsInBlacklistCommand::run))
23+
);
1824
}
1925

2026
public static int run(CommandContext<ServerCommandSource> context) {
21-
String idsInConfig = Config.listConfig();
27+
String blacklist = Iterables.getLast(context.getNodes()).getNode().getName();
28+
String idsInConfig = Config.listConfig(blacklist);
2229

2330
context.getSource().sendFeedback(() -> Text.literal(idsInConfig), true);
2431
return 1;

src/main/java/in/techpro424/itemblacklist/commands/RemoveIdFromBlacklistCommand.java

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package in.techpro424.itemblacklist.commands;
22

3+
import com.google.common.collect.Iterables;
34
import com.mojang.brigadier.CommandDispatcher;
45
import com.mojang.brigadier.context.CommandContext;
56

@@ -13,18 +14,25 @@
1314

1415
public class RemoveIdFromBlacklistCommand {
1516
public static void register(CommandDispatcher<ServerCommandSource> dispatcher, CommandRegistryAccess access, RegistrationEnvironment environment) {
16-
17-
dispatcher.register(CommandManager.literal("removeIdFromBlacklist")
17+
18+
dispatcher.register(CommandManager.literal("removeIdToBlacklist").requires(source -> source.hasPermissionLevel(4))
1819
.then(CommandManager.argument("id", IdentifierArgumentType.identifier())
19-
.executes(RemoveIdFromBlacklistCommand::run)));
20+
.then(CommandManager.literal("global").executes(RemoveIdFromBlacklistCommand::run))
21+
.then(CommandManager.literal("overworld").executes(RemoveIdFromBlacklistCommand::run))
22+
.then(CommandManager.literal("nether").executes(RemoveIdFromBlacklistCommand::run))
23+
.then(CommandManager.literal("end").executes(RemoveIdFromBlacklistCommand::run))
24+
));
2025
}
2126

27+
28+
2229
public static int run(CommandContext<ServerCommandSource> context) {
2330
String id = IdentifierArgumentType.getIdentifier(context, "id").toString();
31+
String blacklist = Iterables.getLast(context.getNodes()).getNode().getName();
2432

25-
Config.removeIdFromConfig(id);
33+
Config.removeIdFromConfig(id, blacklist);
2634

27-
context.getSource().sendFeedback(() -> Text.literal("Removed §b" + id + "§r from the blacklist."), true);
35+
context.getSource().sendFeedback(() -> Text.literal("Removed §b" + id + "§r from the \u00A7l" +blacklist+ "§r blacklist."), true);
2836
return 1;
2937
}
3038
}

src/main/java/in/techpro424/itemblacklist/config/Config.java

Lines changed: 45 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,32 +3,65 @@
33
import java.util.ArrayList;
44
import java.util.Arrays;
55

6-
import in.techpro424.itemblacklist.util.FormatArrayList;
6+
import in.techpro424.itemblacklist.util.Formatting;
77

88
public class Config {
99

10-
ArrayList<String> itemBlacklist = new ArrayList<String>(Arrays.asList("mod_id:item_id","mod_id:item2_id"));
10+
ArrayList<String> globalBlacklist = new ArrayList<String>(Arrays.asList("mod_id:item_id","mod_id:item2_id"));
11+
ArrayList<String> overworldBlacklist = new ArrayList<String>();
12+
ArrayList<String> netherBlacklist = new ArrayList<String>();
13+
ArrayList<String> endBlacklist = new ArrayList<String>();
1114

1215
static Config instance = JsonOperations.loadConfigFromFile();
1316

14-
public static void addIdToConfig(String id) {
15-
if(configIncludesId(id)) return;
16-
instance.itemBlacklist.add(id);
17+
public static void addIdToConfig(String id, String blacklist) {
18+
if(configIncludesId(id, blacklist)) return;
19+
20+
switch(blacklist) {
21+
case "global" -> instance.globalBlacklist.add(id);
22+
case "overworld" -> instance.overworldBlacklist.add(id);
23+
case "nether" -> instance.netherBlacklist.add(id);
24+
case "end" -> instance.endBlacklist.add(id);
25+
26+
};
27+
1728
JsonOperations.writeConfig(true);
1829
}
1930

20-
public static void removeIdFromConfig(String id) {
21-
if(!configIncludesId(id)) return;
22-
instance.itemBlacklist.remove(id);
31+
public static void removeIdFromConfig(String id, String blacklist) {
32+
if(!configIncludesId(id, blacklist)) return;
33+
34+
switch(blacklist) {
35+
case "global" -> instance.globalBlacklist.remove(id);
36+
case "overworld" -> instance.overworldBlacklist.remove(id);
37+
case "nether" -> instance.netherBlacklist.remove(id);
38+
case "end" -> instance.endBlacklist.remove(id);
39+
40+
};
41+
2342
JsonOperations.writeConfig(true);
2443
}
2544

26-
public static String listConfig() {
27-
return FormatArrayList.formatArrayList(instance.itemBlacklist);
45+
public static String listConfig(String blacklist) {
46+
return switch(blacklist) {
47+
case "global" -> Formatting.formatArrayList(instance.globalBlacklist);
48+
case "overworld" ->Formatting.formatArrayList(instance.overworldBlacklist);
49+
case "nether" -> Formatting.formatArrayList(instance.netherBlacklist);
50+
case "end" -> Formatting.formatArrayList(instance.endBlacklist);
51+
default -> "The given blacklist does not exist.";
52+
};
2853
}
2954

30-
public static boolean configIncludesId(String id) {
31-
return instance.itemBlacklist.contains(id);
55+
public static boolean configIncludesId(String id, String blacklist) {
56+
if(instance.globalBlacklist.contains(id)) return true;
57+
return switch(blacklist) {
58+
case "global" -> instance.globalBlacklist.contains(id);
59+
case "overworld" -> instance.overworldBlacklist.contains(id);
60+
case "nether" -> instance.netherBlacklist.contains(id);
61+
case "end" -> instance.endBlacklist.contains(id);
62+
default -> false;
63+
};
64+
3265
}
3366

3467
}

0 commit comments

Comments
 (0)