Compare commits
No commits in common. "main" and "0.5" have entirely different histories.
5 changed files with 3 additions and 73 deletions
Binary file not shown.
|
|
@ -6,15 +6,6 @@ antiSpamLightning: false
|
||||||
rainbowChat: true
|
rainbowChat: true
|
||||||
rainbowChatModifier: 'z' # Single word you need to put after & to use the rainbow
|
rainbowChatModifier: 'z' # Single word you need to put after & to use the rainbow
|
||||||
|
|
||||||
# Prevents users from broadcasting sensitive commands by forgetting the /
|
|
||||||
commandTypoBlocker: true
|
|
||||||
commandTypoBlockerCaseSensitive: false
|
|
||||||
commandTypoBlockerVerbose: true
|
|
||||||
commandTypoBlockerVerboseMessage: "&cYour message begins with a sensitive command, you may be leaking something sensitive by forgetting the slash!"
|
|
||||||
commandTypoBlockerWords:
|
|
||||||
- 'login'
|
|
||||||
- 'register'
|
|
||||||
|
|
||||||
# Strikes a lightning to the player who says specific words
|
# Strikes a lightning to the player who says specific words
|
||||||
skibidiBlocker: true
|
skibidiBlocker: true
|
||||||
skibidiBlockerCaseSensitive: false
|
skibidiBlockerCaseSensitive: false
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ author: tenkuma
|
||||||
main: gd.rf.adrianvictor.stuff.GhostsAndStuff
|
main: gd.rf.adrianvictor.stuff.GhostsAndStuff
|
||||||
name: GhostsAndStuff
|
name: GhostsAndStuff
|
||||||
url: https://adrianvictor.rf.gd
|
url: https://adrianvictor.rf.gd
|
||||||
version: '0.6'
|
version: '0.5'
|
||||||
commands:
|
commands:
|
||||||
gettime:
|
gettime:
|
||||||
description: Prints the time for the current world.
|
description: Prints the time for the current world.
|
||||||
|
|
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
package gd.rf.adrianvictor.stuff;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import org.bukkit.event.player.PlayerChatEvent;
|
|
||||||
import org.bukkit.event.player.PlayerListener;
|
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
|
||||||
|
|
||||||
import gd.rf.adrianvictor.lib.Color;
|
|
||||||
import gd.rf.adrianvictor.lib.Log;
|
|
||||||
|
|
||||||
public class CommandTypoBlocker extends PlayerListener {
|
|
||||||
JavaPlugin plugin;
|
|
||||||
Log logger;
|
|
||||||
|
|
||||||
public CommandTypoBlocker(JavaPlugin _plugin, Log _logger) {
|
|
||||||
plugin = _plugin;
|
|
||||||
logger = _logger;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void onPlayerChat(PlayerChatEvent event) {
|
|
||||||
String message = event.getMessage();
|
|
||||||
List<String> protectedCommands = plugin.getConfiguration().getStringList("commandTypoBlockerWords", null);
|
|
||||||
|
|
||||||
if (protectedCommands == null) {
|
|
||||||
logger.warning("Commands list is null!");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (protectedCommands.isEmpty()) {
|
|
||||||
logger.warning("Commands list is empty!");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
boolean caseSensitive = plugin.getConfiguration().getBoolean("commandTypoBlockerCaseSensitive", true);
|
|
||||||
for (String protectedWord : protectedCommands) {
|
|
||||||
String finalMessage;
|
|
||||||
if (!caseSensitive) {
|
|
||||||
finalMessage = message.toLowerCase();
|
|
||||||
} else {
|
|
||||||
finalMessage = message;
|
|
||||||
}
|
|
||||||
if (message.startsWith(protectedWord.toLowerCase()) || message.startsWith(protectedWord.toLowerCase(), 1)) {
|
|
||||||
if (plugin.getConfiguration().getBoolean("commandTypoBlockerVerbose", true)) {
|
|
||||||
event.getPlayer().sendMessage(Color.formatColors(plugin.getConfiguration().getString("commandTypoBlockerVerboseMessage", "&cYour message begins with a sensitive command, you may be leaking something sensitive by forgetting the slash!")));
|
|
||||||
}
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -45,23 +45,11 @@ public class GhostsAndStuff extends JavaPlugin {
|
||||||
pm.registerEvent(Type.PLAYER_CHAT, rainbowChat, Priority.High, this);
|
pm.registerEvent(Type.PLAYER_CHAT, rainbowChat, Priority.High, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
// CommandTypoBlocker
|
|
||||||
if (this.getConfiguration().getBoolean("commandTypoBlocker", true)) {
|
|
||||||
logger.info("Loading module CommandTypoBlocker");
|
|
||||||
List<String> words = this.getConfiguration().getStringList("commandTypoBlockerWords", null);
|
|
||||||
if (words.isEmpty()) {
|
|
||||||
logger.warning("CommandTypoBlocker is enabled, but no words were provided. Disabling.");
|
|
||||||
} else {
|
|
||||||
PlayerListener commandTypoBlocker = new CommandTypoBlocker(this, logger);
|
|
||||||
pm.registerEvent(Type.PLAYER_CHAT, commandTypoBlocker, Priority.High, this);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// SkibidiBlocker
|
// SkibidiBlocker
|
||||||
if (this.getConfiguration().getBoolean("skibidiBlocker", true)) {
|
if (this.getConfiguration().getBoolean("skibidiBlocker", true)) {
|
||||||
logger.info("Loading module SkibidiBlocker");
|
logger.info("Loading module SkibidiBlocker");
|
||||||
List<String> words = this.getConfiguration().getStringList("skibidiBlockerWords", null);
|
List<String> words = this.getConfiguration().getStringList("skibidiBlockerWords", null);
|
||||||
if (words.isEmpty()) {
|
if (words == null || words.isEmpty()) {
|
||||||
logger.warning("SkibidiBlocker is enabled, but no words were provided. Disabling.");
|
logger.warning("SkibidiBlocker is enabled, but no words were provided. Disabling.");
|
||||||
} else {
|
} else {
|
||||||
PlayerListener verboseWorldChange = new SkibidiBlocker(this, logger);
|
PlayerListener verboseWorldChange = new SkibidiBlocker(this, logger);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue