【低质小游戏】谁偷了我的估值
XiaoYang_awa · · 休闲·娱乐
肝了好久喵喵喵
可能有bug
创建时间2025/2/7
- 2025/2/8:修改了码风,修复了一些BUG
源代码:
#include<bits/stdc++.h>
#include<windows.h>
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME)&0x8000)?1:0)
using namespace std;
int G=0;
void print(string s){
for(int i=0;i<s.length();i++){
cout<<s[i];
Sleep(10);
}
}
void hh(){
cout<<"\n";
}
void qp(){
system("cls");
}
void wait_key(char c){
while(!KEY_DOWN(c)){}
}
void wait_Nkey(char c){
while(KEY_DOWN(c)){}
}
void bag(string s){
printf("--------------------------------\n");
printf("当前估值:%d\n距离红名还差:%d\n",200+G,30-G);
printf("\n物品栏:");cout<<s;
printf("\n--------------------------------\n");
}
void jq1(){
print("你的估值被偷走了一部分!你需要全部找回,重新成为红名大佬!(230咕)");hh();
print("(按下[Enter]键继续)");
getchar();qp();
print("操作方式:");hh();
print(" [w][s][a][d]上下左右移动;");hh();
print(" [k]交互;");hh();
print(" [Enter]继续;");hh();
print(" [f]继续;");hh();
print(" [0][1][2][3][4][5][6][7][8][9]输入答案。");hh();hh();
print("按下[Enter]键,开始寻咕之旅!");
getchar();qp();
return;
}
void yx1(){
int Map[9][9]={{1,1,1,1,1,1,1,1,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,0,2,0,0,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,3,0,0,0,1},{1,1,1,1,1,1,1,1,1}};
int h=3,l=3;
string wp="空空如也";
while(1){
qp();
cout<<"第一关【骂人】\n\n";
for(int i=0;i<9;i++){
for(int j=0;j<9;j++){
if(Map[i][j]==1)cout<<"墙";
else if(Map[i][j]==2)cout<<"箱";
else if(i==h&&j==l)cout<<"人";
else if(Map[i][j]==3)cout<<"机";
else cout<<" "; }cout<<"\n";
}
bag(wp);
if(h==7&&l==3){
Sleep(1500);
break;
}
while(1){
if(KEY_DOWN('W')){
if(h!=1&&(Map[h-1][l]!=2))h--;
break;
}
else if(KEY_DOWN('S')){
if(h!=7&&(Map[h+1][l]!=2))h++;
break;
}
else if(KEY_DOWN('A')){
if(l!=1&&(Map[h][l-1]!=2))l--;
break;
}
else if(KEY_DOWN('D')){
if(l!=7&&(Map[h][l+1]!=2))l++;
break;
}
if(KEY_DOWN('K')){
if((h==5&&l==4)||(h==5&&l==6)||(h==4&&l==5)||(h==6&&l==5)){
wp="【箱子里的纸条】纸上啥也没写";break;
}
}
}
wait_Nkey('W'),wait_Nkey('S'),wait_Nkey('A'),wait_Nkey('D'),wait_Nkey('K');
}
qp();
cout<<"【通过】第一关:\n";
print(" 解锁成就/通关秘籍:脏话(来源:人机)");hh();
print(" 成功夺回5点估值!当前估值:205 距离红名:25");hh();hh();
G+=5;
print("按下[f]键下一关");
wait_key('F');qp();
}
void yx2(){
string wp="空空如也";
qp();
cout<<"第二关【猜谜】\n\n";
cout<<"墙墙墙墙墙墙墙\n墙人 墙\n墙墙墙墙墙墙墙\n";
bag(wp);hh();
print("“唉,好像动不了……”");hh();
print("……");hh();Sleep(500);
print("“嗯?墙上好像有一张纸条?”");hh();Sleep(500);
print("按下[k]键取下纸条");
wait_key('K');
wp="【墙上的纸条】上面的内容:要想通过本关,需要先解答一个困扰无数数学家2.5秒钟的问题!这个问题是:逸一时误一世x+逸久逸久罢以岭=2263352,x=?";
qp();
cout<<"第二关【猜谜】\n\n";
cout<<"墙墙墙墙墙墙墙\n墙人 墙\n墙墙墙墙墙墙墙\n";
bag(wp);hh();
print("问题的答案:(按下某个数字键)");
while(1){
if(KEY_DOWN('0')||KEY_DOWN('1')||KEY_DOWN('2')||KEY_DOWN('3')||KEY_DOWN('4')||KEY_DOWN('5')||KEY_DOWN('6')||KEY_DOWN('7')||KEY_DOWN('8')||KEY_DOWN('9')){
if(KEY_DOWN('3')){
qp();cout<<"【通过】第二关:\n";
print(" 解锁成就/通关秘籍:不臭问题(来源:114514;1919810)");hh();
print(" 成功夺回5点估值!当前估值:210 距离红名:20");hh();hh();G+=5;print("按下[f]键下一关");
wait_key('F');qp();break;
}
else{
qp();
print("答错了。回家吧好不好。重开吧。你估值全没了。");
while(1){}
}
}
}
}
void yx3(){
int Map[18][18]={{1,1,1,1,1,1,1,1,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,1},{1,0,0,0,0,2,0,0,1},{1,1,1,1,1,1,1,1,1}};
int h=3,l=3,maxn=9;
string wp="空空如也";
while(1){
bool f=0;
qp();cout<<"第三关【俺觉得可以】\n\n";
for(int i=0;i<9;i++){
for(int j=0;j<maxn;j++){
if(Map[i][j]==1)cout<<"墙";
else if(i==h&&j==l)cout<<"人";
else if(Map[i][j]==2)cout<<"盒";
else if(Map[i][j]==3)cout<<"盆";
else cout<<" ";
}
cout<<"\n";
}
bag(wp);
while(1){
if(KEY_DOWN('W')){
if(h!=1&&(Map[h-1][l]!=2))h--;
break;
}
else if(KEY_DOWN('S')){
if(h!=7&&(Map[h+1][l]!=2))h++;
break;
}
else if(KEY_DOWN('A')){
if(l!=1&&(Map[h][l-1]!=2))l--;
break;
}
else if(KEY_DOWN('D')){
if((Map[h][l+1]!=2&&maxn!=15)||(maxn==15&&l!=13))l++;
break;
}
if(KEY_DOWN('K')){
if((h==7&&l==4)||(h==7&&l==6)||(h==6&&l==5)){wp="【盒子里的钻石】";
break;}
}
if(KEY_DOWN('K')){
if(((h==5&&l==11)||(h==5&&l==13)||(h==6&&l==12)||(h==4&&l==12))&&wp!="空空如也"){
hh();print("你将宝石放入盆里,随着“哒”的一声,门打开了。");
hh();print("按下[k]键出门");f=1;
wait_key('K');break;
}
}
}
wait_Nkey('W'),wait_Nkey('S'),wait_Nkey('A'),wait_Nkey('D'),wait_Nkey('K');
if(l==8&&maxn==9){
int MMap[20][20]={{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,0,0,0,0,3,0,1},{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}};
for(int i=0;i<9;i++){
for(int j=0;j<15;j++)Map[i][j]=MMap[i][j];
}
maxn=15;
}
if(f)break;
}
qp();cout<<"【通过】第三关:\n";
print(" 解锁成就/通关秘籍:JUST DO IT(来源:我觉得能穿墙就能穿)");hh();
print(" 成功夺回5点估值!当前估值:215 距离红名:15");hh();hh();
G+=5;print("按下[f]键下一关");wait_key('F');qp();
}
void yx4(){
int Map[9][9]={{1,1,1,1,1,1,1,1,1},{1,0,1,0,0,0,0,0,1},{1,0,1,0,1,0,1,0,1},{1,0,0,0,1,0,1,0,1},{1,1,0,1,1,1,1,0,1},{1,0,0,1,0,0,0,0,1},{1,0,1,1,0,1,1,1,1},{1,0,1,0,0,0,0,0,1},{1,1,1,1,1,1,1,1,1}};
int h=1,l=1;
string wp="【一张不知道从哪里来的纸条】内容:能不能无缘无故送@Mr_yang1(作者)一台MataBookE啊";
while(1){
qp();
cout<<"第四关【迷宫】\n\n";
for(int i=0;i<9;i++){for(int j=0;j<9;j++){if(Map[i][j]==1)cout<<"墙";else if(i==h&&j==l)cout<<"人";else cout<<" "; }cout<<"\n";}
bag(wp);
if(h==7&&l==7){Sleep(1000);break;}
while(1){
if(KEY_DOWN('W')){
if(h!=1&&(Map[h-1][l]!=1))h--;
break;
}
else if(KEY_DOWN('S')){
if(h!=7&&(Map[h+1][l]!=1))h++;
break;
}
else if(KEY_DOWN('A')){
if(l!=1&&(Map[h][l-1]!=1))l--;
break;
}
else if(KEY_DOWN('D')){
if(l!=7&&(Map[h][l+1]!=1))l++;
break;
}
}
wait_Nkey('W'),wait_Nkey('S'),wait_Nkey('A'),wait_Nkey('D'),wait_Nkey('K');
}
qp();
cout<<"【通过】第四关:\n";
print(" 解锁成就/通关秘籍:平平无奇(来源:普普通通走迷宫)");hh();
print(" 成功夺回5点估值!当前估值:220 距离红名:10");hh();hh();
G+=5;print("按下[f]键下一关");
wait_key('F');qp();
}
void yx5(){
string wp="空空如也";
cout<<"第五关【四面围墙】\n\n";
cout<<"墙墙墙\n墙人墙\n墙墙墙\n";
bag(wp);hh();
print("有经验的你直接撕下了墙上的纸条");hh();Sleep(1500);
wp="【墙上的纸条】内容:传说,有一个王国叫做猪国,它们有一个比赛,叫做聪明猪猪大赛,那么这个聪明猪猪大赛是什么呢?1.CSP;2.GESP;3.IOI;4.NOI;5.NOIP;6.ICPC/CCPC;7.省选;8.蓝桥杯";
qp();cout<<"第五关【四面围墙】\n\n";
cout<<"墙墙墙\n墙人墙\n墙墙墙\n";bag(wp);hh();
print("问题的答案:(按下某个数字键)");
while(1){
if(KEY_DOWN('0')||KEY_DOWN('1')||KEY_DOWN('2')||KEY_DOWN('3')||KEY_DOWN('4')||KEY_DOWN('5')||KEY_DOWN('6')||KEY_DOWN('7')||KEY_DOWN('8')||KEY_DOWN('9')){
if(KEY_DOWN('6'))break;
else if(KEY_DOWN('0')||KEY_DOWN('9')){qp();print("发什么颠,有这个选项吗(白眼)。。。");while(1){}}
else {qp();print("这都不知道的可以去洛谷搜一下T550966,来源:洛谷公开赛。");while(1){}}
}}qp();
cout<<"【通过】第五关:\n";
print(" 解锁成就/通关秘籍:太有梗了(来源:洛谷出题组太有活了)");hh();
print(" 成功夺回5点估值!当前估值:225 距离红名:5");hh();hh();
G+=5;print("按下[f]键下一关");
wait_key('F');qp();
}
void yx6(){
string wp="【求】";
cout<<"第六关【最后争夺】\n\n";
cout<<"墙墙墙\n墙人墙\n墙墙墙\n";
bag(wp);hh();
print("black客:“嘤嘤嘤好歹给我留5估值吧,不要再找回了嘤嘤嘤”");hh();
print("你的选择是:");hh();
print(" 1.留给black客");hh();
print(" 2.要求black客归还所有估值,自己可以成为红名");hh();
while(1){
if(KEY_DOWN('0')||KEY_DOWN('1')||KEY_DOWN('2')||KEY_DOWN('3')||KEY_DOWN('4')||KEY_DOWN('5')||KEY_DOWN('6')||KEY_DOWN('7')||KEY_DOWN('8')||KEY_DOWN('9')){
if(KEY_DOWN('1')){qp();print("发什么颠,就你善良是吧。。。好的,后续:black客忘恩负义把你估值全盗了,你成灰名了。");while(1){}}
else if(KEY_DOWN('2')){return;}
else{qp();print("发什么颠,有这个选项吗(白眼)。。。");while(1){}}
}
}
}
int main(){
CONSOLE_CURSOR_INFO cursor_info={1,0};
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info);
jq1();
yx1();
yx2();
yx3();
yx4();
yx5();
yx6();
qp();
cout<<"当前估值:225";Sleep(500);qp();
cout<<"当前估值:226";Sleep(500);qp();
cout<<"当前估值:227";Sleep(500);qp();
cout<<"当前估值:228";Sleep(500);qp();
cout<<"当前估值:229";Sleep(500);qp();
cout<<"当前估值:230";Sleep(100);qp();
qp();
print("终于,你历经千辛万苦达到230估值,得到了红名!!!");hh();
print("(按下[f]继续)");wait_key('F');qp();
system("color 74");cout<<"红名";
while(1){}
}