51 lines
1.1 KiB
C++
51 lines
1.1 KiB
C++
// #include "term.h"
|
|
|
|
/* [1] Operations terminal
|
|
=========================================================*/
|
|
void clear_screen(){ // efface l'ecran
|
|
cout << "\033[H\033[2J";
|
|
}
|
|
|
|
void setfont(const TERM_COLOR c, const TERM_STYLE s){
|
|
cout << "\033[" << s << ";" << c << "m";
|
|
}
|
|
|
|
void err(string msg){
|
|
// On affiche le WARNING
|
|
setfont(RED, BOLD);
|
|
cout << "/!\\ ";
|
|
|
|
// On affiche le message d'erreur
|
|
setfont(RED);
|
|
cout << msg << endl;
|
|
|
|
// On attends l'appui sur une touche
|
|
setfont();
|
|
sleep(1);
|
|
}
|
|
|
|
|
|
// Affiche un texte avec une couleur par caractere
|
|
void multicolor(string str, const TERM_STYLE s){
|
|
srand(time(0)); // initialisation du random
|
|
|
|
// On recupere les valeurs possibles (couleurs)
|
|
int *colorvalues = TERM_COLOR_VALUES;
|
|
int len = sizeof(colorvalues);
|
|
int color;
|
|
TERM_COLOR tc;
|
|
|
|
|
|
// Pour chaque caractere de la string
|
|
for( int i = 0 ; i < str.size() ; i++ ){
|
|
color = rand() % len; // on prends une couleur aleatoire
|
|
tc = static_cast<TERM_COLOR>(colorvalues[color]); // on la met au bon format
|
|
setfont(tc, s);
|
|
cout << str.at(i);
|
|
setfont();
|
|
}
|
|
|
|
|
|
|
|
|
|
} |