Remove dependency on 'kaomoji_ru'

pull/6/head
sgoudham 3 years ago
parent b155ec862b
commit 02a1b77327
Signed by: hammy
GPG Key ID: 44E818FD5457EEA4

@ -1,252 +1,204 @@
pub const FACES_SIZE: usize = 106; pub const ASCII_FACES_SIZE: usize = 33;
pub const FACES: [&[u8]; FACES_SIZE] = [ pub const ASCII_FACES: [&[u8]; ASCII_FACES_SIZE] = [
b"OwO", b"OwO ",
b"UwU", b"UwU ",
b">w<", b">w< ",
b"^w^", b"^w^ ",
b"^-^", b"^-^ ",
b":3", b":3 ",
b"x3", b"x3 ",
b"xDD", b"xDD ",
b";;w;;", b";;w;; ",
b">_<", b">_< ",
b">_>", b">_> ",
b"^.^", b"^.^ ",
b":33", b":33 ",
b"uWu", b"uWu ",
b"(o^ ^o) ",
b"(o-_-o) ",
b"(*^.^*) ",
b"(--_--) ",
b"o(>< )o ",
b"(-_-) ",
b"(T_T) ",
b"(>_<) ",
b"~(>_<~) ",
b"(x_x)V ",
b"(;;;*_*) ",
b"{{ (>_<) }} ",
b"(o_O) ",
b"(O_O;) ",
b"(O.O) ",
b"(o_O)! ",
b"(^-^*)/ ",
b"(o^ ^o)/ ",
b"( ~*-*)~ ",
];
pub const UNICODE_FACES_SIZE: usize = 66;
pub const UNICODE_FACES: [&[u8]; UNICODE_FACES_SIZE] = [
// (* ^ ω ^) // (* ^ ω ^)
kaomoji_ru::positive_emotions::JOY[0], b"(* ^ \xCF\x89 ^) ",
// (´ ∀ ` *) // (´ ∀ ` *)
kaomoji_ru::positive_emotions::JOY[1], b"(\xC2\xB4 \xE2\x88\x80 ` *) ",
// (o^▽^o) // (o^▽^o)
kaomoji_ru::positive_emotions::JOY[4], b"(o^\xE2\x96\xBD^o) ",
// (⌒▽⌒)☆ // (⌒▽⌒)☆
kaomoji_ru::positive_emotions::JOY[5], b"(\xE2\x8C\x92\xE2\x96\xBD\xE2\x8C\x92)\xE2\x98\x86 ",
// <( ̄︶ ̄)>
kaomoji_ru::positive_emotions::JOY[6],
// ヽ(・∀・)ノ // ヽ(・∀・)ノ
kaomoji_ru::positive_emotions::JOY[8], b"\xE3\x83\xBD(\xE3\x83\xBB\xE2\x88\x80\xE3\x83\xBB)\xEF\xBE\x89 ",
// (´。• ω •。`)
kaomoji_ru::positive_emotions::JOY[9],
// ( ̄ω ̄) // ( ̄ω ̄)
kaomoji_ru::positive_emotions::JOY[10], b"(\xEF\xBF\xA3\xCF\x89\xEF\xBF\xA3) ",
// (o・ω・o) // (o・ω・o)
kaomoji_ru::positive_emotions::JOY[12], b"(o\xEF\xBD\xA5\xCF\x89\xEF\xBD\xA5o) ",
// ヽ(*・ω・)ノ
kaomoji_ru::positive_emotions::JOY[14],
// (^人^) // (^人^)
kaomoji_ru::positive_emotions::JOY[16], b"(^\xE4\xBA\xBA^) ",
// (*´▽`*) // (*´▽`*)
kaomoji_ru::positive_emotions::JOY[18], b"(*\xC2\xB4\xE2\x96\xBD`*) ",
// ( ´ ω ` )
kaomoji_ru::positive_emotions::JOY[20],
// (≧◡≦) // (≧◡≦)
kaomoji_ru::positive_emotions::JOY[22], b"(\xE2\x89\xA7\xE2\x97\xA1\xE2\x89\xA6) ",
// (o´∀`o) // (o´∀`o)
kaomoji_ru::positive_emotions::JOY[23], b"(o\xC2\xB4\xE2\x88\x80`o) ",
// (´• ω •`)
kaomoji_ru::positive_emotions::JOY[24],
// (^▽^) // (^▽^)
kaomoji_ru::positive_emotions::JOY[25], b"(\xEF\xBC\xBE\xE2\x96\xBD\xEF\xBC\xBE') ",
// (⌒ω⌒) // (⌒ω⌒)
kaomoji_ru::positive_emotions::JOY[26], b"(\xE2\x8C\x92\xCF\x89\xE2\x8C\x92) ",
// ╰(▔∀▔)╯ // ╰(▔∀▔)╯
kaomoji_ru::positive_emotions::JOY[28], b"\xE2\x95\xB0(\xE2\x96\x94\xE2\x88\x80\xE2\x96\x94)\xE2\x95\xAF ",
// (*^‿^*) // (*^‿^*)
kaomoji_ru::positive_emotions::JOY[30], b"(*^\xE2\x80\xBF^*) ",
// (✯◡✯) // (✯◡✯)
kaomoji_ru::positive_emotions::JOY[32], b"(\xE2\x9C\xAF\xE2\x97\xA1\xE2\x9C\xAF) ",
// (*≧ω≦*) // (*≧ω≦*)
kaomoji_ru::positive_emotions::JOY[34], b"(*\xE2\x89\xA7\xCF\x89\xE2\x89\xA6*) ",
// (☆▽☆) // (☆▽☆)
kaomoji_ru::positive_emotions::JOY[35], b"(\xE2\x98\x86\xE2\x96\xBD\xE2\x98\x86) ",
// (≧▽≦) // (≧▽≦)
kaomoji_ru::positive_emotions::JOY[37], b"\xEF\xBC\xBC(\xE2\x89\xA7\xE2\x96\xBD\xE2\x89\xA6)\xEF\xBC\x8F ",
// ヽ(oo)
kaomoji_ru::positive_emotions::JOY[38],
// (*°▽°*) // (*°▽°*)
kaomoji_ru::positive_emotions::JOY[40], b"(*\xC2\xB0\xE2\x96\xBD\xC2\xB0*) ",
// (✧ω✧) // (✧ω✧)
kaomoji_ru::positive_emotions::JOY[42], b"(\xE2\x9C\xA7\xCF\x89\xE2\x9C\xA7) ",
// ヽ(*⌒▽⌒*)ノ
kaomoji_ru::positive_emotions::JOY[43],
// ヽ(>∀<☆) // ヽ(>∀<☆)
kaomoji_ru::positive_emotions::JOY[48], b"\xE3\x83\xBD(>\xE2\x88\x80<\xE2\x98\x86)\xE3\x83\x8E ",
// o(≧▽≦)o // o(≧▽≦)o
kaomoji_ru::positive_emotions::JOY[49], b"o(\xE2\x89\xA7\xE2\x96\xBD\xE2\x89\xA6)o ",
// (☆ω☆) // (☆ω☆)
kaomoji_ru::positive_emotions::JOY[50], b"(\xE2\x98\x86\xCF\x89\xE2\x98\x86) ",
// (っ˘ω˘ς ) // (っ˘ω˘ς )
kaomoji_ru::positive_emotions::JOY[51], b"(\xE3\x81\xA3\xCB\x98\xCF\x89\xCB\x98\xCF\x82 ) ",
// \(★ω★)/ // \(★ω★)/
kaomoji_ru::positive_emotions::JOY[57], b"\\(\xE2\x98\x85\xCF\x89\xE2\x98\x85)/ ",
// (╯✧▽✧)╯ // (╯✧▽✧)╯
kaomoji_ru::positive_emotions::JOY[60], b"(\xE2\x95\xAF\xE2\x9C\xA7\xE2\x96\xBD\xE2\x9C\xA7)\xE2\x95\xAF ",
// o(>ω<)o // o(>ω<)o
kaomoji_ru::positive_emotions::JOY[61], b"o(>\xCF\x89<)o ",
// (´・ᴗ・ ` )
kaomoji_ru::positive_emotions::JOY[72],
// (¬‿¬ )
kaomoji_ru::positive_emotions::JOY[77],
// („• ᴗ •„)
kaomoji_ru::positive_emotions::JOY[84],
// (´ ω `♡) // (´ ω `♡)
kaomoji_ru::positive_emotions::LOVE[12], b"(\xC2\xB4 \xCF\x89 `\xE2\x99\xA1) ",
// (♡°▽°♡) // (♡°▽°♡)
kaomoji_ru::positive_emotions::LOVE[17], b"(\xE2\x99\xA1\xC2\xB0\xE2\x96\xBD\xC2\xB0\xE2\x99\xA1) ",
// ♡(。- ω -) // ♡(。- ω -)
kaomoji_ru::positive_emotions::LOVE[18], b"\xE2\x99\xA1(\xEF\xBD\xA1- \xCF\x89 -) ",
// (´。• ω •。`) ♡
kaomoji_ru::positive_emotions::LOVE[22],
// (❤ω❤) // (❤ω❤)
kaomoji_ru::positive_emotions::LOVE[39], b"(\xE2\x9D\xA4\xCF\x89\xE2\x9D\xA4) ",
// (´,,•ω•,,)♡
kaomoji_ru::positive_emotions::LOVE[45],
// (*ノωノ) // (*ノωノ)
kaomoji_ru::positive_emotions::EMBARRESMENT[5], b"(*\xEF\xBE\x89\xCF\x89\xEF\xBE\x89) ",
// ( ⁄•⁄ω⁄•⁄ )
kaomoji_ru::positive_emotions::EMBARRESMENT[17],
// (# ̄ω ̄) // (# ̄ω ̄)
kaomoji_ru::negative_emotions::DISSATISFACTION[7], b"(\xEF\xBC\x83\xEF\xBF\xA3\xCF\x89\xEF\xBF\xA3) ",
// () // ()
kaomoji_ru::negative_emotions::DISSATISFACTION[9], b"(\xEF\xBC\x9E\xEF\xBD\x8D\xEF\xBC\x9C) ",
// (」°ロ°)」
kaomoji_ru::negative_emotions::DISSATISFACTION[10],
// (ᗒᗣᗕ)՞ // (ᗒᗣᗕ)՞
kaomoji_ru::negative_emotions::DISSATISFACTION[24], b"(\xE1\x97\x92\xE1\x97\xA3\xE1\x97\x95)\xD5\x9E ",
// (`Д´) // (`Д´)
kaomoji_ru::negative_emotions::ANGER[0], b"(\xEF\xBC\x83`\xD0\x94\xC2\xB4) ",
// (・`ω´・)
kaomoji_ru::negative_emotions::ANGER[4],
// (°ㅂ°╬) // (°ㅂ°╬)
kaomoji_ru::negative_emotions::ANGER[17], b"(\xC2\xB0\xE3\x85\x82\xC2\xB0\xE2\x95\xAC) ",
// (╬ Ò﹏Ó) // (╬ Ò﹏Ó)
kaomoji_ru::negative_emotions::ANGER[25], b"(\xE2\x95\xAC \xC3\x92\xEF\xB9\x8F\xC3\x93) ",
// (´-ω-`) // (´-ω-`)
kaomoji_ru::negative_emotions::SADNESS[2], b"(\xC2\xB4-\xCF\x89-`) ",
// (-ω-、) // (-ω-、)
kaomoji_ru::negative_emotions::SADNESS[6], b"(-\xCF\x89-\xE3\x80\x81) ",
// ( ; ω ; )
kaomoji_ru::negative_emotions::SADNESS[9],
// ( ╥ω╥ ) // ( ╥ω╥ )
kaomoji_ru::negative_emotions::SADNESS[16], b"( \xE2\x95\xA5\xCF\x89\xE2\x95\xA5 ) ",
// (ノωヽ) // (ノωヽ)
kaomoji_ru::negative_emotions::FEAR[0], b"(\xE3\x83\x8E\xCF\x89\xE3\x83\xBD) ",
// (・_・ヾ // (・_・ヾ
kaomoji_ru::neutral_emotions::CONFUSSION[5], b"(\xE3\x83\xBB_\xE3\x83\xBB\xE3\x83\xBE ",
// ╮( ̄ω ̄;)╭ // ╮( ̄ω ̄;)╭
kaomoji_ru::neutral_emotions::CONFUSSION[10], b"\xE2\x95\xAE(\xEF\xBF\xA3\xCF\x89\xEF\xBF\xA3;)\xE2\x95\xAD ",
// (*・ω・)ノ // (*・ω・)ノ
kaomoji_ru::various_actions::GREETING[0], b"(*\xE3\x83\xBB\xCF\x89\xE3\x83\xBB)\xEF\xBE\x89 ",
// (✧∀✧)/ // (✧∀✧)/
kaomoji_ru::various_actions::GREETING[25], b"(\xE2\x9C\xA7\xE2\x88\x80\xE2\x9C\xA7)/ ",
// (つ≧▽≦)つ // (つ≧▽≦)つ
kaomoji_ru::various_actions::HUGGING[1], b"(\xE3\x81\xA4\xE2\x89\xA7\xE2\x96\xBD\xE2\x89\xA6)\xE3\x81\xA4 ",
// (つ✧ω✧)つ // (つ✧ω✧)つ
kaomoji_ru::various_actions::HUGGING[2], b"(\xE3\x81\xA4\xE2\x9C\xA7\xCF\x89\xE2\x9C\xA7)\xE3\x81\xA4 ",
// ⊂(´• ω •`⊂)
kaomoji_ru::various_actions::HUGGING[8],
// ⊂(・ω・*⊂) // ⊂(・ω・*⊂)
kaomoji_ru::various_actions::HUGGING[9], b"\xE2\x8A\x82(\xEF\xBD\xA5\xCF\x89\xEF\xBD\xA5*\xE2\x8A\x82) ",
// (^ω~) // (^ω~)
kaomoji_ru::various_actions::WINKING[3], b"(^\xCF\x89~) ",
// |・ω・) // |・ω・)
kaomoji_ru::various_actions::HIDING[0], b"|\xEF\xBD\xA5\xCF\x89\xEF\xBD\xA5) ",
// ☆ミ(o*・ω・)ノ
kaomoji_ru::various_actions::RUNNING[0],
// C= C= C= C= C=┌(;・ω・)┘
kaomoji_ru::various_actions::RUNNING[1],
// ε===(っ≧ω≦)っ
kaomoji_ru::various_actions::RUNNING[6],
// (-ω-) zzZ
kaomoji_ru::various_actions::SLEEPING[3],
// (=^・ω・^=) // (=^・ω・^=)
kaomoji_ru::animals::CAT[0], b"(=^\xEF\xBD\xA5\xCF\x89\xEF\xBD\xA5^=) ",
// (=^・ェ・^=) // (=^・ェ・^=)
kaomoji_ru::animals::CAT[1], b"(=^\xEF\xBD\xA5\xEF\xBD\xAA\xEF\xBD\xA5^=) ",
// (=①ω①=) // (=①ω①=)
kaomoji_ru::animals::CAT[2], b"(=\xE2\x91\xA0\xCF\x89\xE2\x91\xA0=) ",
// ( =ω=)..nyaa // ( =ω=)..nyaa
kaomoji_ru::animals::CAT[3], b"( =\xCF\x89=)..nyaa ",
// (= ; ェ ; =)
kaomoji_ru::animals::CAT[4],
// (=`ω´=) // (=`ω´=)
kaomoji_ru::animals::CAT[5], b"(=`\xCF\x89\xC2\xB4=) ",
// (=^‥^=) // (=^‥^=)
kaomoji_ru::animals::CAT[6], b"(=^\xE2\x80\xA5^=) ",
// ( =ノωヽ=) // ( =ノωヽ=)
kaomoji_ru::animals::CAT[9], b"(=^ \xE2\x97\xA1 ^=) ",
// (=^ ◡ ^=)
kaomoji_ru::animals::CAT[11],
// (=^-ω-^=) // (=^-ω-^=)
kaomoji_ru::animals::CAT[12], b"(\xEF\xBC\xBE\xE2\x80\xA2 \xCF\x89 \xE2\x80\xA2\xEF\xBC\xBE) ",
// ヾ(=`ω´=)ノ” // ヾ(=`ω´=)ノ”
kaomoji_ru::animals::CAT[13], b"(/ =\xCF\x89=)/ ",
// (^• ω •^)
kaomoji_ru::animals::CAT[14],
// (/ =ω=)/ // (/ =ω=)/
kaomoji_ru::animals::CAT[15], b"\xE0\xB8\x85(\xE2\x80\xA2 \xC9\xAA \xE2\x80\xA2)\xE0\xB8\x85 ",
// ฅ(•ㅅ•❀)ฅ // ฅ(•ㅅ•❀)ฅ
kaomoji_ru::animals::CAT[16], b"\xE0\xAC\xB2(\xE2\x93\x9B \xCF\x89 \xE2\x93\x9B)\xE0\xAC\xB2 ",
// ଲ(ⓛ ω ⓛ)ଲ
kaomoji_ru::animals::CAT[18],
// (^=◕ᴥ◕=^)
kaomoji_ru::animals::CAT[19],
// ( =ω= ) // ( =ω= )
kaomoji_ru::animals::CAT[20], b"(^=\xE2\x97\x95\xE1\xB4\xA5\xE2\x97\x95=^) ",
// (^◔ᴥ◔^) // (^◔ᴥ◔^)
kaomoji_ru::animals::CAT[25], b"\xE0\xB8\x95(=\xCF\x89=)\xE0\xB8\x95 ",
// ( ・ω・)☞ // ( ・ω・)☞
kaomoji_ru::special::POINTING, b"(\xE3\x80\x80\xEF\xBD\xA5\xCF\x89\xEF\xBD\xA5)\xE2\x98\x9E ",
]; ];
pub const ASCII_SIZE: usize = ascii_len(&FACES); pub const MIXED_FACES_SIZE: usize = mixed_len(&ASCII_FACES, &UNICODE_FACES);
pub const ASCII: [&[u8]; ASCII_SIZE] = ascii_array(&FACES); pub const MIXED_FACES: [&[u8]; MIXED_FACES_SIZE] = mixed_array(&ASCII_FACES, &UNICODE_FACES);
pub const fn ascii_len(array: &[&[u8]]) -> usize { pub const fn mixed_len(ascii_array: &[&[u8]], unicode_array: &[&[u8]]) -> usize {
let mut result = 0; unicode_array.len() + ascii_array.len()
let len = array.len();
let mut head = 0;
while head != len {
let mut ascii_head = 0;
let ascii_len = array[head].len();
let mut ascii_res = 0;
while ascii_head != ascii_len {
if array[head][ascii_head].is_ascii() {
ascii_res += 1;
}
ascii_head += 1;
}
if ascii_res == array[head].len() {
result += 1;
}
head += 1;
}
result
} }
pub const fn ascii_array(array: &'static [&'static [u8]]) -> [&'static [u8]; ASCII_SIZE] { pub const fn mixed_array(
let mut ascii_array: [&'static [u8]; ASCII_SIZE] = [&[]; ASCII_SIZE]; ascii_array: &'static [&'static [u8]],
let mut result_head = 0; unicode_array: &'static [&'static [u8]],
let len = array.len(); ) -> [&'static [u8]; MIXED_FACES_SIZE] {
let mut head = 0; let mut mixed_array: [&'static [u8]; MIXED_FACES_SIZE] = [&[]; MIXED_FACES_SIZE];
while head != len { let ascii_len = ascii_array.len();
let mut ascii_head = 0; let mut count = 0;
let ascii_len = array[head].len(); let mut second_count = 0;
let mut ascii_res = 0;
while ascii_head != ascii_len { while count < ascii_len {
if array[head][ascii_head].is_ascii() { mixed_array[count] = ascii_array[count];
ascii_res += 1; count += 1;
}
ascii_head += 1;
}
if ascii_res == array[head].len() {
ascii_array[result_head] = array[head];
result_head += 1;
}
head += 1;
} }
ascii_array
while count < MIXED_FACES_SIZE {
mixed_array[count] = unicode_array[second_count];
count += 1;
second_count += 1;
}
mixed_array
} }
pub const ACTIONS_SIZE: usize = 17; pub const ACTIONS_SIZE: usize = 17;
@ -268,4 +220,4 @@ pub const ACTIONS: [&[u8]; ACTIONS_SIZE] = [
b"*pokes you* ", b"*pokes you* ",
b"*teleports behind you* ", b"*teleports behind you* ",
b"*shuffles closer* ", b"*shuffles closer* ",
]; ];
Loading…
Cancel
Save