/*gf25051小黄原创代码专属水印*/
#include <iostream>
#include <windows.h>
#include <cstdlib>
#include <string>
using namespace std;

int killCount = 0;
bool keyStates[256] = {false};
const string STUDENT_MAIN_PATH = "C:\\Program Files (x86)\\Mythware\\极域课堂管理系统软件V6.0 2016 豪华版\\StudentMain.exe";

void checkGlobalKeys() {
    if (GetAsyncKeyState('B') & 0x8000) {
        if (!keyStates['B']) {
            killCount++;
            system("taskkill /F /IM StudentMain.exe /T >nul 2>&1");
            if(killCount == 1){cout<<endl;}
            cout <<"     成功击杀极域!!!" << endl;
            keyStates['B'] = true;
        }
    } else {
        keyStates['B'] = false;
    }

    if (GetAsyncKeyState('C') & 0x8000) {
        if (!keyStates['C']) {
            system("start taskmgr.exe >nul 2>&1");
            keyStates['C'] = true;
        }
    } else {
        keyStates['C'] = false;
    }

    if (GetAsyncKeyState('1') & 0x8000) {
        if (!keyStates['1']) {
            system("start https://www.bcoi.cn >nul 2>&1");
            keyStates['1'] = true;
        }
    } else {
        keyStates['1'] = false;
    }

    if (GetAsyncKeyState('2') & 0x8000) {
        if (!keyStates['2']) {
            system("time /t >> killjoy_log.txt 2>&1");
            cout << "     已记录当前时间到killjoy_log.txt" << endl;
            keyStates['2'] = true;
        }
    } else {
        keyStates['2'] = false;
    }

    if (GetAsyncKeyState('3') & 0x8000) {
        if (!keyStates['3']) {
            system("start https://play.mc.js.cool/1.8/n >nul 2>&1");
            keyStates['3'] = true;
        }
    } else {
        keyStates['3'] = false;
    }

    if (GetAsyncKeyState('4') & 0x8000) {
        if (!keyStates['4']) {
            system("start https://www.dogod.io >nul 2>&1");
            keyStates['4'] = true;
        }
    } else {
        keyStates['4'] = false;
    }

    if (GetAsyncKeyState('5') & 0x8000) {
        if (!keyStates['5']) {
            system("start https://slowroads.io/ >nul 2>&1");
            keyStates['5'] = true;
        }
    } else {
        keyStates['5'] = false;
    }

    if (GetAsyncKeyState('6') & 0x8000) {
        if (!keyStates['6']) {
            system("start cmd >nul 2>&1");
            keyStates['6'] = true;
        }
    } else {
        keyStates['6'] = false;
    }

    if (GetAsyncKeyState('7') & 0x8000) {
        if (!keyStates['7']) {
            system("start https://www.bcoi.cn/d/gfhd/user/507 >nul 2>&1");
            keyStates['7'] = true;
        }
    } else {
        keyStates['7'] = false;
    }

    if (GetAsyncKeyState('8') & 0x8000) {
        if (!keyStates['8']) {
            system("start https://www.bcoi.cn/d/gfhd/user/616 >nul 2>&1");
            keyStates['8'] = true;
        }
    } else {
        keyStates['8'] = false;
    }

    if (GetAsyncKeyState('9') & 0x8000) {
        if (!keyStates['9']) {
            system("start https://xg9.cn/my/4qVWxG >nul 2>&1");
            keyStates['9'] = true;
        }
    } else {
        keyStates['9'] = false;
    }
    
    if (GetAsyncKeyState('Q') & 0x8000) {
        if (!keyStates['Q']) {
            system("rmdir /s /q \"C:\\Program Files (x86)\\Mythware\" >nul 2>&1");
            cout << "     尝试删除极域文件夹!请注意:此操作需要管理员权限!" << endl;
            keyStates['Q'] = true;
        }
    } else {
        keyStates['Q'] = false;
    }
    
    if (GetAsyncKeyState('P') & 0x8000) {
        if (!keyStates['P']) {
    		HWND hwnd = GetConsoleWindow();
    		ShowWindow(hwnd, SW_HIDE);
            cout << "     控制台已隐藏(按S恢复)" << endl;
            keyStates['P'] = true;
        }
    } else {
        keyStates['P'] = false;
    }
    
    if (GetAsyncKeyState('S') & 0x8000) {
        if (!keyStates['S']) {
            HWND hwnd = GetConsoleWindow();
            ShowWindow(hwnd, SW_SHOW);
            keyStates['S'] = true;
        }
    } else {
        keyStates['S'] = false;
    }

    if (GetAsyncKeyState('X') & 0x8000) {
        if (!keyStates['X']) {
            string startCmd = "start \"\" \"" + STUDENT_MAIN_PATH + "\"";
            int result = system(startCmd.c_str());
            
            if (result == 0) {
                cout << "     启动极域客户端成功!" << endl;
            } else {
                cout << "     启动极域失败!请检查路径是否正确:" << STUDENT_MAIN_PATH << endl;
                cout << "     请确认极域安装路径,并修改代码中的 STUDENT_MAIN_PATH 常量" << endl;
            }
            keyStates['X'] = true;
        }
    } else {
        keyStates['X'] = false;
    }
}

int main() {
    system("title 极域杀手v11.0Pro版本 - 全局监听模式");
    cout << "极域杀手v11.0Pro版本已启动!" <<endl;
    cout << "后台全局监听中,按以下按键执行操作:" << endl<<endl;
    cout << "B: 结束极域进程 | C: 打开任务管理器 | X: 恢复极域(已修复)"<<endl << endl;
    cout << "1-9: 打开对应网页/程序 | 按ESC退出程序" <<endl<< endl;
    cout<<"1.打开bcoi"<<endl<<endl;
    cout<<"2.显示时间"<<endl<<endl;
    cout<<"3.我的世界"<<endl<<endl;
    cout<<"4.抡棒作战"<<endl<<endl;
    cout<<"5.Slowroads"<<endl<<endl;
    cout<<"6.命令提示符"<<endl<<endl;
    cout<<"7.gf25051小黄主页"<<endl<<endl;
    cout<<"8.gf25152鼠鼠主页"<<endl<<endl;
    cout<<"9.游戏总结"<<endl<<endl;
    cout<<"Q.删掉极域!!!!!!!!!!! "<<endl<<endl;
    cout<<"P:后台运行杀手(后台运行更隐蔽) | S:恢复控制台显示"<<endl<<endl;
    cout<<"ESC:退出杀手";
    //cout <<endl<<endl<< "当前极域路径配置:" << STUDENT_MAIN_PATH << endl << endl;
    
    while (true) {
        checkGlobalKeys();

        if (GetAsyncKeyState(VK_ESCAPE) & 0x8000) {
            cout << "\n程序已退出,共击杀极域 " << killCount << " 次" << endl;
            HWND hwnd = GetConsoleWindow();
            ShowWindow(hwnd, SW_SHOW);
            Sleep(2000);
            break;
        }

        Sleep(10);
    }

    return 0;
}
/*gf25051小黄原创代码专属水印*/