86 lines
3.1 KiB
86 lines
3.1 KiB
use crate::builtins::{Builtin, BuiltinConfig};
|
|
use crate::error::ShellError;
|
|
use colored::Colorize;
|
|
|
|
|
|
pub struct Blahaj;
|
|
|
|
impl Builtin for Blahaj {
|
|
fn execute(&mut self, _: &mut BuiltinConfig, args: Vec<String>) -> Result<(), ShellError> {
|
|
let blahaj = "
|
|
((/
|
|
,(((/
|
|
/((((( (/
|
|
((((#(( (//
|
|
(((((((. *(((/
|
|
/(######/ *((((/
|
|
*//%#####((/ ((#((/
|
|
,*/********/////////////////(//* (%* ,((##((
|
|
,*/((///(//////////((/(///////(/////(////*,(*#((/(/((//////###(###(/(
|
|
/(((((((//((///((////((((((/(((((((((((((((((/(((##((#%(##(/((///*(&#(##/
|
|
/#((%(#(((((//#((((((((((((((((((((((((#(((((((((((/##(((((//((//* ####(/
|
|
(((###(###(#(#####(###############((#((((((((/((//(((#/(///// ,,
|
|
,(###%####%&%#############(#(#(####(((((((/(((/////*//,
|
|
. .....*#(#######(((###(#(##(##(((/(/(/////,
|
|
.. ....,..........,..*#%#######/(
|
|
.. .............,*%%%%#%((((/
|
|
**,,,****//*(##((###(#(((
|
|
&#(#/#((((((((#";
|
|
|
|
if args.is_empty() {
|
|
println!("{}", blahaj);
|
|
} else {
|
|
if args[0].eq("-t") {
|
|
trans_flag(blahaj);
|
|
} else if args[0].eq("-p") {
|
|
pride_flag(blahaj);
|
|
}else if args[0].eq("-ger"){
|
|
german(blahaj);
|
|
}
|
|
}
|
|
Ok(())
|
|
}
|
|
}
|
|
|
|
fn trans_flag(blahaj: &str) {
|
|
for (index, lines) in blahaj.lines().enumerate() {
|
|
if index % 4 == 0 {
|
|
println!("{}", lines.truecolor(91, 206, 250));//light blue
|
|
} else if index % 2 == 0 {
|
|
println!("{}", lines.white());
|
|
} else { println!("{}", lines.truecolor(245, 169, 184)); }//pink
|
|
}
|
|
}
|
|
|
|
fn pride_flag(blahaj: &str) {
|
|
let mut index = 1;
|
|
for lines in blahaj.lines() {
|
|
if index == 6 {
|
|
println!("{}", lines.truecolor(36, 84, 142));//blue
|
|
index = 0;
|
|
} else if index == 5 {
|
|
println!("{}", lines.truecolor(0, 178, 38));//green
|
|
} else if index == 4 {
|
|
println!("{}", lines.truecolor(255, 237, 0));//yellow
|
|
} else if index == 3 {
|
|
println!("{}", lines.truecolor(255, 140, 0));//orange
|
|
} else if index == 2 {
|
|
println!("{}", lines.truecolor(228, 3, 3));//red
|
|
} else {
|
|
println!("{}", lines.truecolor(115, 41, 130));//violet
|
|
}
|
|
index = index + 1;
|
|
}
|
|
}
|
|
|
|
fn german (blahaj: &str){
|
|
|
|
for (index,lines) in blahaj.lines().enumerate(){
|
|
if index<=7{
|
|
println!("{}",lines.truecolor(30,30,30));
|
|
}else if index>6&&index<=12 {
|
|
println!("{}",lines.truecolor(255,0,0));
|
|
}else { println!("{}", lines.truecolor(255,255,0)); }
|
|
}
|
|
|
|
}
|