Compare commits
No commits in common. "master" and "#8-Grade-As-Number" have entirely different histories.
master
...
#8-Grade-A
10 changed files with 27 additions and 79 deletions
48
README.md
48
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 <player> <tag> <grade>`
|
||||
* 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 <player>`
|
||||
* shows detailed information about a player, including past player names and tags.
|
||||
* `//echo <text>`
|
||||
* 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://<DATABASE_URL>/
|
||||
user=<DATABASE USER>
|
||||
password=<DATABASE USER PASSWORD>
|
||||
db_name=<DATABASE 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.
|
||||
```
|
11
build.gradle
11
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}"
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
url=mysql://mysql2f88.netcup.net/
|
||||
user=k85020_EAA_MOD_RO
|
||||
password=EeChf3dfZmwDgMo4rYSFj9bC9i5EaFkKtXfw5F7hPSQyKTZfNv3qougR3jn99ehUiRAgyr9ypLQJUyQhDQAdLf35ymst5sXf34Zo
|
||||
db_name=k85020_EAA_MOD
|
|
@ -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
|
||||
fabric_version=0.34.2+1.16
|
|
@ -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)
|
||||
)));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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!"));
|
||||
|
|
|
@ -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;
|
||||
|
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Loading…
Reference in a new issue