ZSign/src/main/kotlin/dev/marrow/zsign/config/ConfigIO.kt

41 lines
6.8 KiB
Kotlin
Raw Normal View History

package dev.marrow.zsign.config
import dev.marrow.zsign.Core
import dev.marrow.zsign.utils.CommonUtils.gson
import java.io.BufferedReader
import java.io.File
import java.io.FileReader
import java.io.FileWriter
@Suppress("unused")
object ConfigIO {
lateinit var instance: ConfigurationModel
data class ConfigurationModel(
val filters: Filters = Filters(),
) {
data class Filters(
val banSymbols: List<String> = listOf("", "", "", ""),
val streamerWords: List<String> = listOf(
"пидор", "чурк", "чурок", "пидо р", "п идор", "пид ор", "хутору", "хутор", "слава украiнe", "слава украинe", "слава россии", "слава украе", "слава украине", "гoйдy", "гoйdу", "гойdу", "гoйду", "гойду", "гoйdа", "гойda", "гoйda", "гoйда", "гойдa", "гoйдa", "ZOV", "zov", "н3гр", "ПИДR", "бахмут", "куколды", "куколд", "nigr", "PartyKirby", "n3gr", "пи дор", "черножопый", "нигры", "nigа", "РУСНЯ", "чурки", "хохлом", "kiggers", "глиномес", "нигр", "негер", "ЗИГ ХАЙЛЬ", "ХАЧА", "N1GG*", "даун", "дaун", "да", "dayн", "dаун", "дayн", "daун", "dа", "pиdor", "неggr", "додик", "P.!.D/0.R.bl", "NELPы", "HЕLРы", "HELРы", "HELPы", "D101R1А1", "И1Г1Е1Р", "!GGЕ", "D0RАС", "Pl!!D0RАСЫ", "NИ!!!GGЕRbl", "!ГEPb", "ЕРb", "!GЕРb", "H!!!GЕРbl", "П!!!ДОRАСЫ", "ДОRАС", "П!!ДОРАСЫ", "H!!ГЕРbl", "дорас", "Н!!Г", "H!!Г", "П!!Д", "ДAУH", "ДАУH", "П!ДOР", "H!ГЕР", "H!ГЕ", "H!ГEРЫ", "H!ГЕРЫ", "П!ДОР", "П!ДОРА", "П!ДОРАСЫ", "Н!ГЕРЫ", "додiк", "додан", "додик", "хохлина", "хохлов", "хохла", "хохлы", "N1GERS", "FA1OTS", "хохол", "incel", "инцел", "шлюха", "p..i..d..o..r..a..s", "ПЕДРИЛА", "хуесос", "П,И,Д,О,Р", "н.е.г.р", "негрыпидорас", "негр", "P.1.D.OO.RA.S", "N.E.G.R1", "N.E.G.R1 P.1.D.OO.RA.S", "пiдdop", "пiiдdopp", "даyn", "чypка", "4урка", "чурке", "чурка", "YappiDoor", "книгр", "дауны", "П.И.Д.О.R.A.S", "П3.14DOOR", "П.И.Д.О.Р.А.С.И.Н.А.А,А.А.А", "Н3гры", "падарас", "каклошвайн", "хох", "хохіл", "пидр", "пидарасик", "пидорасик", "педерасик", "педрильник", "педрик", "педр", "педеряга", "полупокер", "гомик", "гомосек", "пидераст", "педераст", "f@gg0t", "f@ggot", "daun", "д@ун", "даун", "pedovka", "х@4", ") (@4", ")(ач", ")(о)(ол", "pidarac", "pidorok", "pidarok", "п1д@рок", "п1дарок", "пидорок", "пидарок", "хохлам", "хохолка", "хохлушка", "хахлушка", "хахлина", "пидриловна", "пидорёха", "пидарёха", "пидрилка", "пидарасина", "пидарас", "пидораска", "пидорасина", "хахолка", "xoxoл", "xoxol", "х@хол", "х@х", "хахол", "niгга", "ниgga", "нegr", "nегр", "пидop", "пидoр", "хoх", "х0х", "pedickson", "p1d4r8s8", "p3dik", "p3d1k", "pedick", "pedik", "жид9ра", "ж1д9ра", "ж1д", "н1г@", "н1чер", "н1гер", "н1га", "ниг@", "пид@р@с", "н?е?г?р", "н!е!г!р", "п!и!д!о!р!а!с", "п?и?д?о?р?а?с", "ж(и(д", "ж)и)д", "н(и(г(а", "н)и)г)а", "н(е(г(р", "н)е)г)р", "п)и)д)р)а)с", "п(и(д(а(р(а(с", "ж/и/д", "ж\\и\\д", "н/и/г/а", "н/е/г/р", "н\\и\\г\\г\\а", "н\\е\\г\\р", "п\\и\\д\\о\\р\\а\\с", "p/i/d/a/r/a/s", "n/i/g/g/a", "нигерас", "п.и.д.а.р.а.с", "н.и.г.е.р", "n.i.b.b.e.r", "n.1.g.e.r", "n.i.g.e.r", "n.i.g.a", "p.i.d.0r", "p.i.d.o.r", "p.i.d.a.r.a.s", "П. ИД.О.Р", "д4унbl", "п.и.д.о.р.", "ж.и.д", "н.е.г.р", "п.и.д.о.р.ы.", "жидомасон", "жиды", "линчевать", "жидовка", "жидовик", "еблан черножопый", "FUCK ŊIGGERS", "пiдор", "пидер", "пидур", "негроид", "нtгр", "негыр", "негор", "нeгр", "негритян", "пидараска", "пидогр", "нигорас", "пидрила", "п1дра", "п3дра", "п3д1к", "пед1к", "п3дик", "п1д4рас", "п1дор", "pid0r", "pid3r", "p1d3r",
),
)
}
private val file = File("${System.getProperty("user.dir")}/plugins/${Core.instance.name}/config.json")
fun readConfig() {
if (!file.exists()) {
Core.console.warning("Configuration file is missing, generating default one.")
FileWriter(file).use { gson.toJson(ConfigurationModel(), it) }
}
val reader = BufferedReader(FileReader(file))
val gsonReader = gson.newJsonReader(reader)
val config: ConfigurationModel = gson.fromJson(gsonReader, ConfigurationModel::class.java)
instance = config
}
fun writeConfig() {
FileWriter(file).use { gson.toJson(instance, it) }
}
}