void PrintDebug(const char *format, ...) { if (global_verbosity_level >= VerbosityLevel::VerboseDebug) { ChangeConsoleColor(TextColor::Green, 0); va_list args; va_start(args, format); vprintf(format, args); va_end(args); ResetConsoleColor(); } }
void PrintWarning(const char *format, ...) { if (global_verbosity_level >= VerbosityLevel::VerboseWarning) { ChangeConsoleColor(TextColor::Yellow, 1); va_list args; va_start(args, format); vprintf(format, args); va_end(args); ResetConsoleColor(); } }
void PrintError(const char *format, ...) { if (global_verbosity_level >= VerbosityLevel::VerboseError) { ChangeConsoleColor(TextColor::Red, 1); va_list args; va_start(args, format); vprintf(format, args); va_end(args); ResetConsoleColor(); } }
void ScreenColors::ChangeErrorTextColor(int color) { SetConsoleTextAttribute(hConsole_, color); int x = 0; for(auto &i : colorList) { if((i.second) == color) { std::cout<<"\n"<<colorNames[x]; break; } x++; } ResetConsoleColor(); }
void ScreenColors::DecidePlayerScreenColor() { const std::string space = "\t"; const std::string dash = " - "; char choiceLoop = 'a'; system("cls"); std::cout<<"What color do you want your piece to be?\n"; int x = 1; for(auto &i : colorList) { if((i.second) == 0) continue; SetConsoleTextAttribute(hConsole_, (i.second)); std::cout<<space<<choiceLoop++<<dash<<colorNames[x]; if((x + 1) == constListSize) std::cout<<"\n"; else if((x % 2) == 0) std::cout<<"\n"; x++; } ResetConsoleColor(); char selection; std::cout<<"Please enter the letter which represents your choice.\n"; std::cout<<"Ex. a\n"; selection = GetSelection(); bool checkForOtherPlayer = false; while(!checkForOtherPlayer) { ScreenColorListsIters_C colorListIter; //Reset choiceLoop back to the letter a choiceLoop = 'a'; if(otherPlayerColor_ == -1) { int x = 1; bool selectionGood = false; for(char i = 'a'; i <= 'o'; i++) if(selection == i || selection == (i - 32)) { colorListIter = colorList.find(x++); SetPlayerTextColor(colorListIter->second); checkForOtherPlayer = true; selectionGood = true; break; } else x++; if(!selectionGood) { SoundEngine::GetInstance()->PlaySoundFromQueue(badMoveErrorSound); ResetConsoleColor(); std::cout<<"\nThat wasn't one of your choices.\n"; std::cout<<"Please re-enter your choice.\n"; selection = GetSelection(); } } else { int x = 1; bool selectionGood = false; bool reCheck = false; for(char i = 'a'; i <= 'o'; i++) if(selection == i || selection == (i - 32)) { colorListIter = colorList.find(x++); if(otherPlayerColor_ == (colorListIter->second)) { SoundEngine::GetInstance()->PlaySoundFromQueue(badMoveErrorSound); ChangeErrorTextColor((colorListIter->second)); std::cout<<" has already been chosen by the other player.\n"; std::cout<<"Please make another choice.\n"; selection = GetSelection(); reCheck = true; break; } else { colorAttribute_ = colorListIter->second; checkForOtherPlayer = true; selectionGood = true; break; } } else x++; if(!selectionGood && !reCheck) { SoundEngine::GetInstance()->PlaySoundFromQueue(badMoveErrorSound); ResetConsoleColor(); std::cout<<"\nThat wasn't one of your choices.\n"; std::cout<<"Please re-enter your choice.\n"; selection = GetSelection(); } } } screenColorInitialized_ = true; }
void ScreenColors::OutputCharacterWithColor(char c, int color) { SetConsoleTextAttribute(hConsole_, color); putchar(c); ResetConsoleColor(); }