diff --git a/README.md b/README.md index 83db887..3cea151 100644 --- a/README.md +++ b/README.md @@ -1,56 +1,12 @@ EAA_MOD =============== -This MOD is created by the "Eggwars Am Abend" (EAA) Squad, to increase fun playing Minecraft by avoiding hacking/idiotic players and providing some useful tools. -This mod is 100% client side and does not interact with the server you are playing on. - -## Features -Following a list of features, this mod provides -### TAG -It's basically a report system. - -Users are able to tag other players with a set of tags. As example as Hacker/Friend/Good player and so on. -In addition, the tag gets weighted by a scale from 0 to 10. - -Tagged players are shown when pressing TAB, including their recent tag with grade. -Other commands like playercheck/lobbycheck also use tag data. - -### Ping as Number -Heavily inspired by this cool project, check it out! - -https://www.curseforge.com/minecraft/mc-mods/better-ping-display-fabric - -### Echo -uhm ... yeh ... it echos ... uhm ... you - -(used as PoC, will be removed sooner or later) - -## Commands -All mod commands start with a double slash (`//`), so they don't get confused with other commands - -* `//tag ` - * Tags player with chosen tag and grade. On success, a notification is shown. -* `//lobby` - * Checks if any unwanted players (Hacker/Idiot/Noob) are in the current lobby. -* `//check ` - * shows detailed information about a player, including past player names and tags. -* `//echo ` - * reply with text -* `//reload` - * reloads cashed players. Useful when playing in a team and someone tagged another player. Otherwise, the tag would not appear till next game start. - ## Settings -Mod needs a file in mod folder called settings.properties containing following values: +Mod needs a file in modfolder called settings.properties containing following values: ``` url=mysql:/// user= password= db_name= -``` - -A working sample config is provided in the config folder, setup with a read only user of the developers Database. - -## Database -Database-Model and SQL-Starterscript can be found in the config/database folder. -The Mod itself does not create the needed Database structure. The user has to init the Database by himself. \ No newline at end of file +``` \ No newline at end of file diff --git a/build.gradle b/build.gradle index a1eb4bc..128dc3f 100644 --- a/build.gradle +++ b/build.gradle @@ -1,5 +1,5 @@ plugins { - id 'fabric-loom' version '0.10-SNAPSHOT' + id 'fabric-loom' version '0.7-SNAPSHOT' } sourceCompatibility = JavaVersion.VERSION_1_8 @@ -24,11 +24,12 @@ dependencies { modImplementation "net.fabricmc:fabric-loader:${project.loader_version}" //include group: 'org.postgresql', name: 'postgresql', version: '42.2.9' // https://mvnrepository.com/artifact/mysql/mysql-connector-java - include group: 'mysql', name: 'mysql-connector-java', version: "${project.jdbc_mysql}" - implementation group: 'mysql', name: 'mysql-connector-java', version: "${project.jdbc_mysql}" + //implementation(include('mysql:mysql-connector-java:8.0.25')) + include group: 'mysql', name: 'mysql-connector-java', version: '8.0.25' + implementation group: 'mysql', name: 'mysql-connector-java', version: '8.0.25' //modImplementation(group: 'mysql', name: 'mysql-connector-java', version: '8.0.25') - include group: 'com.googlecode.json-simple', name: 'json-simple', version: "${project.json_simple}" - implementation group: 'com.googlecode.json-simple', name: 'json-simple', version: "${project.json_simple}" + include group: 'com.googlecode.json-simple', name: 'json-simple', version: '1.1.1' + implementation group: 'com.googlecode.json-simple', name: 'json-simple', version: '1.1.1' // Fabric API. This is technically optional, but you probably want it anyway. modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}" diff --git a/config/settings.properties b/config/settings.properties deleted file mode 100644 index 8bc9426..0000000 --- a/config/settings.properties +++ /dev/null @@ -1,4 +0,0 @@ -url=mysql://mysql2f88.netcup.net/ -user=k85020_EAA_MOD_RO -password=EeChf3dfZmwDgMo4rYSFj9bC9i5EaFkKtXfw5F7hPSQyKTZfNv3qougR3jn99ehUiRAgyr9ypLQJUyQhDQAdLf35ymst5sXf34Zo -db_name=k85020_EAA_MOD \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 9983820..e223165 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,19 +4,14 @@ org.gradle.jvmargs=-Xmx1G # Fabric Properties # check these on https://fabricmc.net/versions.html minecraft_version=1.16.5 - yarn_mappings=1.16.5+build.10 - loader_version=0.12.11 + yarn_mappings=1.16.5+build.9 + loader_version=0.11.3 + # Mod Properties - mod_version = 1.1.3 + mod_version = 1.1.1 maven_group = net.saltymc.eaa archives_base_name = EAA_MOD # Dependencies # currently not on the main fabric site, check on the maven: https://maven.fabricmc.net/net/fabricmc/fabric-api/fabric-api (or https://fabricmc.net/versions.html) - fabric_version=0.42.0+1.16 - -#SQL -jdbc_mysql=8.0.27 - -#JSON -json_simple=1.1.1 \ No newline at end of file + fabric_version=0.34.2+1.16 \ No newline at end of file diff --git a/src/main/java/net/saltymc/eaa/commands/TagCommand.java b/src/main/java/net/saltymc/eaa/commands/TagCommand.java index fc3dfe2..c02d634 100644 --- a/src/main/java/net/saltymc/eaa/commands/TagCommand.java +++ b/src/main/java/net/saltymc/eaa/commands/TagCommand.java @@ -35,17 +35,15 @@ public class TagCommand extends EaaModCommand{ .then( argument("player", StringArgumentType.word()) .suggests((ctx, builder) -> EntityArgumentType.player().listSuggestions(ctx, builder)) - .then( - argument("tag", StringArgumentType.word()) - .suggests(((context, builder) -> { - for (DB_Tag.Type tag : DB_Tag.Type.values()) - builder.suggest(tag.name()); - return builder.buildFuture(); - })) - .then( - argument("grade", IntegerArgumentType.integer(0,10)) - .suggests((ctx, builder) -> IntegerArgumentType.integer(0,10).listSuggestions(ctx, builder)) - .executes(this) - ))); + .then(argument("tag", StringArgumentType.word()) + .suggests(((context, builder) -> { + for (DB_Tag.Type tag : DB_Tag.Type.values()) + builder.suggest(tag.name()); + return builder.buildFuture(); + })) + .then( + argument("grade", IntegerArgumentType.integer(0,10)) + .executes(this) + ))); } } diff --git a/src/main/java/net/saltymc/eaa/function/LobbyFunction.java b/src/main/java/net/saltymc/eaa/function/LobbyFunction.java index 9d026af..a427705 100644 --- a/src/main/java/net/saltymc/eaa/function/LobbyFunction.java +++ b/src/main/java/net/saltymc/eaa/function/LobbyFunction.java @@ -38,7 +38,7 @@ public class LobbyFunction { if (type == DB_Tag.Type.HACKER){ dangerLvl = 2; break; - } else if (type == DB_Tag.Type.IDIOT || type == DB_Tag.Type.NOOB){ + } else if (type == DB_Tag.Type.IDIOT){ dangerLvl = 1; } } @@ -49,7 +49,7 @@ public class LobbyFunction { SystemToast.add(source.getClient().getToastManager(), SystemToast.Type.WORLD_BACKUP, Text.of("OKAY!"), Text.of("No Hackers found")); break; case 1: - SystemToast.add(source.getClient().getToastManager(), SystemToast.Type.TUTORIAL_HINT, Text.of("MEH!"), Text.of("There is an Idiot or Noob!")); + SystemToast.add(source.getClient().getToastManager(), SystemToast.Type.TUTORIAL_HINT, Text.of("MEH!"), Text.of("There is an Idiot!")); break; case 2: SystemToast.add(source.getClient().getToastManager(), SystemToast.Type.WORLD_ACCESS_FAILURE, Text.of("ALARM!"), Text.of("There is a Hacker!")); diff --git a/src/main/java/net/saltymc/eaa/util/database/DB_Tag.java b/src/main/java/net/saltymc/eaa/util/database/DB_Tag.java index 8b94394..05dbf8a 100644 --- a/src/main/java/net/saltymc/eaa/util/database/DB_Tag.java +++ b/src/main/java/net/saltymc/eaa/util/database/DB_Tag.java @@ -1,5 +1,7 @@ package net.saltymc.eaa.util.database; +import net.minecraft.util.Formatting; + import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; diff --git a/config/database/datenbank_shema.mwb b/src/main/resources/datenbank/datenbank_shema.mwb similarity index 100% rename from config/database/datenbank_shema.mwb rename to src/main/resources/datenbank/datenbank_shema.mwb diff --git a/config/database/datenbank_shema.png b/src/main/resources/datenbank/datenbank_shema.png similarity index 100% rename from config/database/datenbank_shema.png rename to src/main/resources/datenbank/datenbank_shema.png diff --git a/config/database/datenbank_shema.sql b/src/main/resources/datenbank/datenbank_shema.sql similarity index 100% rename from config/database/datenbank_shema.sql rename to src/main/resources/datenbank/datenbank_shema.sql