public LetterEngine(ConfigFile config){
// Add word processors.
// NOTE: These settings should be compared to the per player settings done in the EnginePlayerConfig constructor.
if (config.getBoolean(ConfPaths.CHAT_TEXT_GL_WORDS_CHECK, false)){
FlatWordsSettings settings = new FlatWordsSettings();
settings.maxSize = 1000;
settings.applyConfig(config, ConfPaths.CHAT_TEXT_GL_WORDS);
processors.add(new FlatWords("glWords",settings));
}
if (config.getBoolean(ConfPaths.CHAT_TEXT_GL_PREFIXES_CHECK , false)){
WordPrefixesSettings settings = new WordPrefixesSettings();
settings.maxAdd = 2000;
settings.applyConfig(config, ConfPaths.CHAT_TEXT_GL_PREFIXES);
processors.add(new WordPrefixes("glPrefixes", settings));
}
if (config.getBoolean(ConfPaths.CHAT_TEXT_GL_SIMILARITY_CHECK , false)){
SimilarWordsBKLSettings settings = new SimilarWordsBKLSettings();
settings.maxSize = 1000;
settings.applyConfig(config, ConfPaths.CHAT_TEXT_GL_SIMILARITY);
processors.add(new SimilarWordsBKL("glSimilarity", settings));
}
// TODO: At least expiration duration configurable? (Entries expire after 10 minutes.)
dataMap = new EnginePlayerDataMap(600000L, 100, 0.75f);
}