Bonjour,
voici une mise à jour du script permettant de check les pseudos irrespectueux, il permet un check même en cas de majuscule et d'espace.
module GamePlay
class NameInput < GamePlay::BaseCleanUpdate::FrameBalanced
Pseudo_list = ['connard', 'conard', 'connnard', 'pute', 'con', 'salope', 'sallope', 'salllope', 'sallllo', 'salo', 'salllo', 'connace', 'conace', 'conard', 'connard', 'connnard',
'puuute', 'putte', 'puttte', 'pétace', 'petace', 'pétttace', 'pétaaace', 'pétaace', 'fils de', 'fils', 'fdp', 'fddp', 'fpd', 'pd', 'pedale', 'La Salope', 'la salope', 'grosse pute', 'gros con', 'grosse salope',
'gros pd', 'grosse pd', 'couille', 'grosse couille', 'gros couilles', 'couillon', 'couille', 'putain', 'putein', 'faanculo', 'fanculo', 'merde', 'merdasse', 'merd', 'meeerd', 'meerde', 'meeerrde', 'sale',
'salle', 'tarlouze', 'tarrlouze', 'tarrrlouze', 'Tarlouzze', 'pue', 'tu pue', 'tupue', 'casse couille', 'cassecouille', 'tapette', 'tapettte', 'tg', 'ta gueule', 'tagueule', 'gueule', 'gros chien', 'grooos chien',
'grros chiien', 'fille de', 'fille de pute', 'fuck', 'fuck you', 'fuuck', 'ta mere', 'taa meerre', 'tamerre', 'tamere', 'bite', 'bitte', 'penis', 'vagin', 'pétasse', 'petasse', 'troufion', 'cul', 'cuuul', 'cule', 'cucu',
'cucul', 'sale pute', 'sale merde', 'ahere', 'aeveryone', 'pede']
private
def confirm_name
@return_name = @name_input_ui.chars.join if @name_input_ui.chars.any?
valide = true
if Pseudo_list
Pseudo_list.each do |pseudo|
valide = (!@name_input_ui.chars.join.downcase_remove_accents.gsub(/\s+/, "").include?(pseudo))
break if !valide
end
end
if !valide
@return_name = @default_name
end
@running = false
end
end
end
#-------------------------------------------------------------------------------
# Les chaînes de caractères
#-------------------------------------------------------------------------------
# Ajouts de méthode(s) dans la classe String
class String
# Les correspondant entre les carractères accentués et ceux non accentués
# Hash Tableau de "charactère(s) avec accent" => "charactère sans accent"
HASH_ACCENTS = {
['á','à','â','ä','ã', '@'] => 'a',
['é','è','ê','ë'] => 'e',
['í','ì','î','ï'] => 'i',
['ó','ò','ô','ö','õ'] => 'o',
['ú','ù','û','ü'] => 'u',
['ç'] => 'c',
['ñ'] => 'n'
}
# Met un texte en taille minuscule (downcase) et supprime les accents
# Retourne la chaîne de caractère au bon format
def downcase_remove_accents
str = self.downcase
HASH_ACCENTS.each do |accents, char_no_accent|
accents.each do |char_with_accent|
str = str.gsub(char_with_accent, char_no_accent)
end
end
return str
end
end