Gestion dans une classe à part des mots censurés
This commit is contained in:
parent
d1fec96e8e
commit
dbae5bea01
@ -1,10 +1,11 @@
|
||||
Format des fichiers de configuration
|
||||
==========
|
||||
_____
|
||||
___________________
|
||||
|
||||
## config.yml
|
||||
Ce fichier est au format YAML, et sa lecture est déjà géré par l'API Bukkit.
|
||||
_____
|
||||
|
||||
___________________
|
||||
|
||||
## worldborder.txt
|
||||
Ce fichier est au format texte. Chaque ligne correspond au paramètre de bordure pour un monde donné. Voici un format exemple que doit prendre une ligne :
|
||||
@ -15,4 +16,12 @@ Ce fichier est au format texte. Chaque ligne correspond au paramètre de bordure
|
||||
- `14` et `134.5` correspondent aux coordonnées x et z du centre du carré de bordure
|
||||
- `2000` correspond à la distance de chaque bordure par rapport aux coordonnées indiquées
|
||||
|
||||
Les lignes vides et les lignes dont le premier caractère est un `#` seront ignorés. Les caractères non imprimables en début et fin de lignes seront supprimés avant analyse.
|
||||
Les lignes vides et les lignes dont le premier caractère est un `#` seront ignorés. Les caractères non imprimables en début et fin de lignes seront supprimés avant analyse.
|
||||
|
||||
___________________
|
||||
|
||||
## badwords.txt
|
||||
Ce fichier est au format texte. Chaque ligne est une expression régulière correspondant à un élément censuré.
|
||||
|
||||
Les lignes vides seront ignorés (ou ne contenant que des caractères non imprimable). Lescaractères non imprimables en début et fin de ligne sont conservés
|
||||
|
||||
|
@ -0,0 +1,24 @@
|
||||
package net.mc_pandacraft.java.plugin.pandacraftutils.config;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
public class ChatBadWordsConfig extends AbstractConfig {
|
||||
|
||||
private final List<String> config;
|
||||
|
||||
public ChatBadWordsConfig() throws IOException {
|
||||
super("badwords.txt", FileType.FILE);
|
||||
|
||||
|
||||
config = getFileLines(true, false, false);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public List<String> getBadWords() {
|
||||
return Collections.unmodifiableList(config);
|
||||
}
|
||||
|
||||
}
|
@ -53,6 +53,7 @@ public class ConfigManager {
|
||||
|
||||
public final DefaultConfig defaultConfig;
|
||||
public final WorldBorderConfig worldBorderConfig;
|
||||
public final ChatBadWordsConfig chatBadWordsConfig;
|
||||
|
||||
|
||||
|
||||
@ -67,6 +68,7 @@ public class ConfigManager {
|
||||
|
||||
defaultConfig = new DefaultConfig();
|
||||
worldBorderConfig = new WorldBorderConfig();
|
||||
chatBadWordsConfig = new ChatBadWordsConfig();
|
||||
|
||||
|
||||
// dossier qui doit contenir les messages automatiques
|
||||
@ -81,13 +83,8 @@ public class ConfigManager {
|
||||
File multiCommandsDir = new File(configDir, "multicommands");
|
||||
multiCommandsDir.mkdir();
|
||||
|
||||
// fichier qui doit contenir les insultes à censurer
|
||||
File badWordsFile = new File(configDir, "badwords.txt");
|
||||
badWordsFile.createNewFile();
|
||||
|
||||
|
||||
|
||||
initChatAnalysisBadWord();
|
||||
initCommandAlias();
|
||||
initAutomessages();
|
||||
initMultiCommand();
|
||||
@ -148,60 +145,6 @@ public class ConfigManager {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public List<String> ChatAnalysis_badWords; // les insultes
|
||||
|
||||
private void initChatAnalysisBadWord() {
|
||||
ChatAnalysis_badWords = new ArrayList<String>();
|
||||
|
||||
/*
|
||||
* Insultes
|
||||
*/
|
||||
ChatAnalysis_badWords.add("pu+tes?");
|
||||
ChatAnalysis_badWords.add("conn?a(rd?|ss?e?)");
|
||||
ChatAnalysis_badWords.add("sal(o+|au)pe?s?");
|
||||
ChatAnalysis_badWords.add("[ea]ncul(é|e|er|ai(s|t|))");
|
||||
ChatAnalysis_badWords.add("merdes?");
|
||||
ChatAnalysis_badWords.add("ni(qu|k)e? ta m(è|e|é)re?");
|
||||
ChatAnalysis_badWords.add("fil?s de putes?");
|
||||
ChatAnalysis_badWords.add("ta m(è|e|é)re? l(a|e) putes?");
|
||||
ChatAnalysis_badWords.add("tafiole?s?");
|
||||
ChatAnalysis_badWords.add("vas? te pendre");
|
||||
ChatAnalysis_badWords.add("fuck");
|
||||
ChatAnalysis_badWords.add("mother ?fuc?ker");
|
||||
ChatAnalysis_badWords.add("dick");
|
||||
ChatAnalysis_badWords.add("ass");
|
||||
ChatAnalysis_badWords.add("bitch");
|
||||
//ChatAnalysis_badWords.add("");
|
||||
|
||||
|
||||
/*
|
||||
* Pub pour des serveurs (avec sous domaines type *.mtxserv.fr ou nom de serveur connu genre Minefield)
|
||||
*/
|
||||
ChatAnalysis_badWords.add("minefield");
|
||||
ChatAnalysis_badWords.add("mineplex");
|
||||
ChatAnalysis_badWords.add("hypixel");
|
||||
ChatAnalysis_badWords.add("mtxserv");
|
||||
ChatAnalysis_badWords.add("spycraft");
|
||||
ChatAnalysis_badWords.add("verygames");
|
||||
ChatAnalysis_badWords.add("minecraft-mania");
|
||||
//ChatAnalysis_badWords.add("");
|
||||
//ChatAnalysis_badWords.add("");
|
||||
//ChatAnalysis_badWords.add("");
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Alias pour les commandes
|
||||
*/
|
||||
|
@ -254,7 +254,7 @@ public class ChatAnalysisManager implements Listener {
|
||||
|
||||
|
||||
// pour chaque insultes présentes dans la configuration du plugin
|
||||
for (String regex : ConfigManager.getInstance().ChatAnalysis_badWords)
|
||||
for (String regex : ConfigManager.getInstance().chatBadWordsConfig.getBadWords())
|
||||
{
|
||||
if (s.matches("(?i:(.+[^a-zA-Z]|)"+regex+"(|[^a-zA-Z].+))"))
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user