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
|
Format des fichiers de configuration
|
||||||
==========
|
==========
|
||||||
_____
|
___________________
|
||||||
|
|
||||||
## config.yml
|
## config.yml
|
||||||
Ce fichier est au format YAML, et sa lecture est déjà géré par l'API Bukkit.
|
Ce fichier est au format YAML, et sa lecture est déjà géré par l'API Bukkit.
|
||||||
_____
|
|
||||||
|
___________________
|
||||||
|
|
||||||
## worldborder.txt
|
## 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 :
|
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
|
- `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
|
- `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 DefaultConfig defaultConfig;
|
||||||
public final WorldBorderConfig worldBorderConfig;
|
public final WorldBorderConfig worldBorderConfig;
|
||||||
|
public final ChatBadWordsConfig chatBadWordsConfig;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -67,6 +68,7 @@ public class ConfigManager {
|
|||||||
|
|
||||||
defaultConfig = new DefaultConfig();
|
defaultConfig = new DefaultConfig();
|
||||||
worldBorderConfig = new WorldBorderConfig();
|
worldBorderConfig = new WorldBorderConfig();
|
||||||
|
chatBadWordsConfig = new ChatBadWordsConfig();
|
||||||
|
|
||||||
|
|
||||||
// dossier qui doit contenir les messages automatiques
|
// dossier qui doit contenir les messages automatiques
|
||||||
@ -81,13 +83,8 @@ public class ConfigManager {
|
|||||||
File multiCommandsDir = new File(configDir, "multicommands");
|
File multiCommandsDir = new File(configDir, "multicommands");
|
||||||
multiCommandsDir.mkdir();
|
multiCommandsDir.mkdir();
|
||||||
|
|
||||||
// fichier qui doit contenir les insultes à censurer
|
|
||||||
File badWordsFile = new File(configDir, "badwords.txt");
|
|
||||||
badWordsFile.createNewFile();
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
initChatAnalysisBadWord();
|
|
||||||
initCommandAlias();
|
initCommandAlias();
|
||||||
initAutomessages();
|
initAutomessages();
|
||||||
initMultiCommand();
|
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
|
* Alias pour les commandes
|
||||||
*/
|
*/
|
||||||
|
@ -254,7 +254,7 @@ public class ChatAnalysisManager implements Listener {
|
|||||||
|
|
||||||
|
|
||||||
// pour chaque insultes présentes dans la configuration du plugin
|
// 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].+))"))
|
if (s.matches("(?i:(.+[^a-zA-Z]|)"+regex+"(|[^a-zA-Z].+))"))
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user