Arma Reforger Explorer 1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Loading...
Searching...
No Matches
SCR_ProfaneFilter.c
Go to the documentation of this file.
1
3{
4 // TODO@mour:speedrun solution, look into performance!!!
5
6 //------------------------------------------------------------------------------------------------
12 static bool ReplaceProfanities(string input, out string output, string replaceChar = "*")
13 {
14 bool profanityFound = false;
15
16 if (input.IsEmpty())
17 {
18 output = string.Empty;
19 return false;
20 }
21
22 if (replaceChar.IsEmpty())
23 replaceChar = "*";
24 else
25 if (replaceChar.Length() > 1)
26 replaceChar = replaceChar[0];
27
28 int inputLength = input.Length();
29 string inputLC = input;
30 inputLC.ToLower();
31 foreach (string profanity : s_aProfanityBlacklist)
32 {
33 int indexOf = inputLC.IndexOf(profanity);
34 if (indexOf < 0)
35 continue;
36
37 profanityFound = true;
38
39 int profanityLength = profanity.Length();
40 string replacement = SCR_StringHelper.PadLeft("", profanityLength, "*");
41 while (indexOf > -1)
42 {
43 if (indexOf > 0)
44 input = input.Substring(0, indexOf) + replacement + input.Substring(indexOf + profanityLength, inputLength - profanityLength - indexOf);
45 else
46 input = replacement + input.Substring(profanityLength, inputLength - profanityLength);
47
48 indexOf = inputLC.IndexOfFrom(indexOf + profanityLength, profanity);
49 }
50 }
51
52 output = input;
53 return profanityFound;
54 }
55
57 protected static ref array<string> s_aProfanityBlacklist = {
58 "figlio di puttana",
59 "shokubutsuningen",
60 "madonna puttana",
61 "seishinhakujaku",
62 "seisinhakuzyaku",
63 "syokubutuningen",
64 "chingada madre",
65 "testa di cazzo",
66 "klu klux klan",
67 "masturbazione",
68 "porca madonna",
69 "succhia cazzi",
70 "goldenshowers",
71 "koroshiteyaru",
72 "motherfuckers",
73 "tokushugakkyu",
74 "tokusyugakkyu",
75 "jungle bunny",
76 "masturbacion",
77 "moon cricket",
78 "porch monkey",
79 "fukashokumin",
80 "fuuuuuuuuuck",
81 "hakuzyakusya",
82 "hukasyokumin",
83 "ku klux klan",
84 "motherfucker",
85 "semushiotoko",
86 "cameljockey",
87 "ching chong",
88 "durka durka",
89 "beefwhistle",
90 "enzyokousai",
91 "fujinoyamai",
92 "fuuuuuuuuck",
93 "fuuuuuuuuuu",
94 "hakujakusha",
95 "huzinoyamai",
96 "intercourse",
97 "junglebunny",
98 "m07th3rfukr",
99 "m0th3rfvk3r",
100 "m0th3rfvker",
101 "moth3rfucer",
102 "moth3rfvk3r",
103 "moth3rfvker",
104 "semusiotoko",
105 "ushigoroshi",
106 "vvhitepower",
107 "white power",
108 "cocksucker",
109 "dio bestia",
110 "masturbare",
111 "masturbate",
112 "nhiggerman",
113 "paedophile",
114 "puttaniere",
115 "schwuchtel",
116 "spanishick",
117 "spanishook",
118 "spanishunk",
119 "vaffanculo",
120 "xblrewards",
121 "zipperhead",
122 "arseholing",
123 "arselicker",
124 "bestiality",
125 "butagorosi",
126 "chikusatsu",
127 "circlejerk",
128 "cotton pic",
129 "cotton pik",
130 "enjokousai",
131 "fuuuuuuuck",
132 "hakuroubyo",
133 "inugoroshi",
134 "manberries",
135 "masterbate",
136 "masturbait",
137 "mitsukuchi",
138 "sangokujin",
139 "sangokuzin",
140 "seishinijo",
141 "seisinizyo",
142 "shinheimin",
143 "torukoburo",
144 "whitepower",
145 "yabunirami",
146 "arschloch",
147 "auschwitz",
148 "chlamydia",
149 "crackhead",
150 "deez nuts",
151 "ejaculate",
152 "hurensohn",
153 "kilurself",
154 "masterbat",
155 "miststück",
156 "ricchione",
157 "testicles",
158 "vaccagare",
159 "vatefaire",
160 "akimekura",
161 "arseholed",
162 "arseholes",
163 "beeeyotch",
164 "bin laden",
165 "chieokure",
166 "chourimbo",
167 "chourinbo",
168 "chourippo",
169 "chuurembo",
170 "chuurenbo",
171 "coon hunt",
172 "coon kill",
173 "cottonpic",
174 "cottonpik",
175 "fuuuuuuck",
176 "golliwogg",
177 "hantoujin",
178 "hantouzin",
179 "holocaust",
180 "inugorosi",
181 "koon hunt",
182 "koon kill",
183 "koumoujin",
184 "koumouzin",
185 "n1ggerman",
186 "n4ggerman",
187 "naggerman",
188 "niggerman",
189 "nyggerman",
190 "pedophile",
191 "sinheimin",
192 "sofa king",
193 "torukozyo",
194 "towelhead",
195 "tyourinbo",
196 "tyourippo",
197 "usigorosi",
198 "anushead",
199 "ballsack",
200 "bitching",
201 "bullshit",
202 "butthole",
203 "buttplug",
204 "chingado",
205 "chingate",
206 "coglione",
207 "coglioni",
208 "dickhead",
209 "fickdich",
210 "inculato",
211 "jack off",
212 "red tube",
213 "schlampe",
214 "tarlouse",
215 "abortion",
216 "anuslick",
217 "arsehole",
218 "bakachon",
219 "bakatyon",
220 "beeyotch",
221 "binladen",
222 "butthead",
223 "castrate",
224 "chankoro",
225 "chonkoro",
226 "clitoris",
227 "coonhunt",
228 "coonkill",
229 "deeznuts",
230 "etahinin",
231 "foreskin",
232 "fuuuuuck",
233 "god damn",
234 "gollywog",
235 "jiggaboo",
236 "kichigai",
237 "klu klux",
238 "knobhead",
239 "koonhunt",
240 "koonkill",
241 "manshaft",
242 "mitukuti",
243 "molester",
244 "molestor",
245 "n1german",
246 "negerman",
247 "nggerman",
248 "nigerman",
249 "nimpinin",
250 "ninpinin",
251 "santorum",
252 "shinajin",
253 "shirakko",
254 "sofaking",
255 "tieokure",
256 "torukojo",
257 "tyankoro",
258 "tyonkoro",
259 "tyurenbo",
260 "a55hole",
261 "bastard",
262 "beeatch",
263 "bellend",
264 "bukakke",
265 "caralho",
266 "cocaine",
267 "dumbass",
268 "fanculo",
269 "fucking",
270 "jerkoff",
271 "jigaboo",
272 "maricon",
273 "mulatto",
274 "nipples",
275 "nutsack",
276 "panties",
277 "pendejo",
278 "pussies",
279 "puttana",
280 "puttane",
281 "scheiße",
282 "shemale",
283 "tapatte",
284 "tapette",
285 "xl3lpet",
286 "ainujin",
287 "ainuzin",
288 "asshole",
289 "beeotch",
290 "beyitch",
291 "beyotch",
292 "blowjob",
293 "coituss",
294 "cojelon",
295 "cojones",
296 "deeznut",
297 "facking",
298 "fuuuuck",
299 "fxuxcxk",
300 "gestapo",
301 "hairpie",
302 "jackass",
303 "kikeiji",
304 "kikeizi",
305 "kitigai",
306 "kluklux",
307 "kurombo",
308 "n166ers",
309 "n1gg3rs",
310 "n1ggers",
311 "niggers",
312 "nigglet",
313 "phaggot",
314 "preteen",
315 "raghead",
316 "rizzape",
317 "rompari",
318 "schlong",
319 "sinazin",
320 "suck my",
321 "tea bag",
322 "teensex",
323 "tosatsu",
324 "w3tb4ck",
325 "w3tback",
326 "wetb4ck",
327 "wetback",
328 "xbl pet",
329 "beaner",
330 "beetch",
331 "cabron",
332 "cadela",
333 "cagada",
334 "chinga",
335 "cooter",
336 "culear",
337 "culero",
338 "darkie",
339 "downie",
340 "encule",
341 "fetish",
342 "foutre",
343 "herpes",
344 "hooker",
345 "mierda",
346 "molest",
347 "nignog",
348 "nutted",
349 "pinche",
350 "putain",
351 "rapage",
352 "raping",
353 "reggin",
354 "salaud",
355 "salope",
356 "scrote",
357 "shitty",
358 "tampon",
359 "tranny",
360 "xblpet",
361 "anuses",
362 "asshat",
363 "biotch",
364 "blowme",
365 "blyadt",
366 "ceemen",
367 "chinpo",
368 "chonga",
369 "chonko",
370 "cocain",
371 "coitus",
372 "condom",
373 "douche",
374 "etambo",
375 "etanbo",
376 "faggot",
377 "fatass",
378 "fucker",
379 "fuuuck",
380 "hitl3r",
381 "hitler",
382 "inc3st",
383 "incest",
384 "j1g4b0",
385 "j1g4bo",
386 "j1gab0",
387 "j1gabo",
388 "jig4b0",
389 "jig4bo",
390 "jigabo",
391 "lezzie",
392 "n1663r",
393 "n166er",
394 "n1gg3r",
395 "n1gger",
396 "n4gg3r",
397 "nagg3r",
398 "ni66er",
399 "niggaz",
400 "nigger",
401 "nigguh",
402 "niggur",
403 "niglet",
404 "niqqer",
405 "pedoph",
406 "penile",
407 "phagot",
408 "pu555y",
409 "pun4ni",
410 "pun4nl",
411 "punan1",
412 "punani",
413 "punanl",
414 "pusss1",
415 "pussse",
416 "pusssi",
417 "pusssl",
418 "pusssy",
419 "r3c7um",
420 "r4p15t",
421 "r4p1st",
422 "r4pi5t",
423 "r4pist",
424 "raibyo",
425 "rap15t",
426 "rap1st",
427 "rapi5t",
428 "rapist",
429 "rectum",
430 "retard",
431 "rimjob",
432 "suckmy",
433 "teabag",
434 "teebag",
435 "tosatu",
436 "tyonga",
437 "tyonko",
438 "v461n4",
439 "v461na",
440 "v46in4",
441 "v46ina",
442 "v4g1n4",
443 "v4g1na",
444 "v4gin4",
445 "v4gina",
446 "va61n4",
447 "va61na",
448 "va6in4",
449 "va6ina",
450 "vag1n4",
451 "vag1na",
452 "vagin4",
453 "vagina",
454 "wanker",
455 "x8lp3t",
456 "かわらこじき",
457 "ころしてやる",
458 "とるこじょう",
459 "はんとうじん",
460 "カワラコジキ",
461 "コロシテヤル",
462 "arsch",
463 "baise",
464 "biach",
465 "cacca",
466 "cazzo",
467 "downy",
468 "fanny",
469 "fotze",
470 "gooch",
471 "injun",
472 "joder",
473 "kurva",
474 "kurwa",
475 "merda",
476 "merde",
477 "minge",
478 "nonce",
479 "penis",
480 "perra",
481 "pikey",
482 "pizda",
483 "polla",
484 "porra",
485 "punal",
486 "pussy",
487 "raped",
488 "semen",
489 "skank",
490 "sodom",
491 "taint",
492 "ahole",
493 "anuss",
494 "aokan",
495 "arsed",
496 "arses",
497 "b00bz",
498 "bitch",
499 "bladt",
500 "blyad",
501 "bon3r",
502 "boner",
503 "boobs",
504 "ch1nk",
505 "chink",
506 "choad",
507 "chode",
508 "dildo",
509 "dongs",
510 "f3lch",
511 "fcuuk",
512 "felch",
513 "fuuck",
514 "g000k",
515 "goook",
516 "h1tl3",
517 "h1tle",
518 "hitlr",
519 "honky",
520 "hymen",
521 "k k k",
522 "kxkxk",
523 "l3sb0",
524 "lezbo",
525 "manko",
526 "n1664",
527 "n166a",
528 "n1g3r",
529 "n3gro",
530 "n4g3r",
531 "nag3r",
532 "natzi",
533 "ni666",
534 "ni66a",
535 "ni66g",
536 "ni6g6",
537 "ni6gg",
538 "nig66",
539 "nig6g",
540 "nigar",
541 "nigg3",
542 "nigg6",
543 "nigga",
544 "niggr",
545 "niggy",
546 "niqqa",
547 "nugga",
548 "omeko",
549 "p3n15",
550 "p3n1s",
551 "p3ni5",
552 "p3nis",
553 "p3nl5",
554 "p3nls",
555 "pen15",
556 "pen1s",
557 "peni5",
558 "penis",
559 "penl5",
560 "penls",
561 "penus",
562 "phuck",
563 "pr1ck",
564 "prick",
565 "pu55y",
566 "pub1c",
567 "pubic",
568 "puss1",
569 "puss3",
570 "puss5",
571 "pusse",
572 "pussi",
573 "puzzy",
574 "pvssy",
575 "queef",
576 "raape",
577 "reipu",
578 "secks",
579 "teino",
580 "tinpo",
581 "tunbo",
582 "wh0r3",
583 "wh0re",
584 "whor3",
585 "whore",
586 "Блядь",
587 "いぬごろし",
588 "かわらもの",
589 "ちょんこう",
590 "ちょんころ",
591 "とるこぶろ",
592 "にんぴにん",
593 "イヌゴロシ",
594 "カワラモノ",
595 "チョンコウ",
596 "チョンコロ",
597 "トルコ風呂",
598 "1488",
599 "aids",
600 "anal",
601 "bamf",
602 "btch",
603 "csam",
604 "culo",
605 "dyke",
606 "fckn",
607 "fick",
608 "fupa",
609 "hure",
610 "joto",
611 "kike",
612 "meth",
613 "mong",
614 "orgy",
615 "paki",
616 "pedo",
617 "porn",
618 "pube",
619 "puta",
620 "pute",
621 "puto",
622 "raip",
623 "stds",
624 "shat",
625 "tard",
626 "thot",
627 "tits",
628 "vank",
629 "anus",
630 "arse",
631 "b1tc",
632 "blad",
633 "bung",
634 "c0ck",
635 "cl1t",
636 "cli7",
637 "clit",
638 "cock",
639 "coon",
640 "cun7",
641 "cunt",
642 "cvn7",
643 "cvnt",
644 "cyka",
645 "d1kc",
646 "d4go",
647 "dago",
648 "dikc",
649 "dong",
650 "f0ck",
651 "f0kc",
652 "fcuk",
653 "fock",
654 "fokc",
655 "fucc",
656 "fuck",
657 "fuct",
658 "fvck",
659 "fxck",
660 "g00k",
661 "g0ok",
662 "go0k",
663 "gook",
664 "h0m0",
665 "h0mo",
666 "hom0",
667 "homo",
668 "hor3",
669 "jizz",
670 "k1k3",
671 "kik3",
672 "kun7",
673 "milf",
674 "n4z1",
675 "naz1",
676 "nazi",
677 "nazl",
678 "nggr",
679 "ni6g",
680 "r4p3",
681 "rape",
682 "sh17",
683 "sh1t",
684 "shi7",
685 "shit",
686 "shl7",
687 "shlt",
688 "slut",
689 "tw47",
690 "tw4t",
691 "twat",
692 "сука",
693 "あおかん",
694 "いんばい",
695 "おなにー",
696 "きけいじ",
697 "きちがい",
698 "きんたま",
699 "くろんぼ",
700 "しなじん",
701 "たちんぼ",
702 "ちょん公",
703 "アオカン",
704 "インバイ",
705 "オナニー",
706 "キケイジ",
707 "キチガイ",
708 "キンタマ",
709 "クロンボ",
710 "シナジン",
711 "タチンボ",
712 "トルコ嬢",
713 "8=d",
714 "ass",
715 "cum",
716 "fgt",
717 "gyp",
718 "nig",
719 "smd",
720 "std",
721 "vag",
722 "vog",
723 "vop",
724 "fag",
725 "fck",
726 "fku",
727 "jap",
728 "kkk",
729 "sex",
730 "ちんぽ",
731 "つんぼ",
732 "まんこ",
733 "れいぷ",
734 "オメコ",
735 "チンポ",
736 "ツンボ",
737 "ニガー",
738 "ニグロ",
739 "マンコ",
740 "レイプ",
741 "支那人",
742 "精薄者",
743 "低能",
744 "屠殺",
745 "強姦",
746 "援交",
747 "精薄",
748 "輪姦",
749
750// // added: English variants
751// "dick",
752// "d1ck",
753// // "asshole",
754// "a55hole",
755// "a55h0le",
756// "assh0le",
757// "4sshole",
758// "455h0le",
759//
760// // added: French variants
761// "batard",
762// "batar",
763// "bâtard",
764// "bâtârd",
765// "batârd",
766// "b4t4rd",
767// "b4t4r",
768// "branleur",
769// "branleuse",
770// "branleuze",
771// " branler",
772// " catin",
773// "enculé",
774// "ankulé",
775// "ankuler",
776// "connard",
777// "conard",
778// "conar",
779// "konar",
780// "connasse",
781// "conasse",
782// "conass",
783// "konasse",
784// "konass",
785// "konasse",
786// "ma bite",
787// "masturbation",
788// "masturber",
789// "pédé",
790// "pédophile",
791// "pétasse",
792// "petasse",
793// "pouffiasse",
794// "poufiasse",
795// "pouffiase",
796// "poufiase",
797// "pouffiace",
798// "poufiace",
799// "salop",
800// "salop",
801// "suce ma",
802// "suse ma",
803// "sus ma",
804// " chier",
805// "chieur",
806// "chieuse",
807// "chieuze",
808// "nique ta",
809// "nik ta",
810// "niq ta",
811// "niquer ta",
812// "niker ta",
813// "niqer ta",
814// "niqué ta",
815// "niké ta",
816// "niqé ta",
817// // " fdp", // les fdport
818// " teub",
819// // "te viol", // porTE VIOLette
820// "violer",
821// "violé",
822 };
823}
Handles filtering profanities in texts.
static ref array< string > s_aProfanityBlacklist
profanities must be lowercase
static string PadLeft(string input, int length, string padding=SPACE)