一些小游戏(自创)
崔化博
·
·
个人记录
围堵阿伟的游戏:
#include <iostream>
#include <windows.h>
#include <cstdio>
#include <conio.h>
#include <time.h>
#include <stdlib.h>
using namespace std;
struct node {
int x,y;
};
void kaishi();
string map[10][10];
node cat;
void print(string s) {
for(int i=0; i<s.size(); ++i) {
cout<<s[i];
Sleep(500);
}
}
void game() {
system("cls");
for(int i=1; i<=9; ++i) {
for(int j=1; j<=9; ++j)
cout<<map[i][j];
cout<<endl;
}
if(cat.x==1||cat.x==9||cat.y==1||cat.y==9) {
cout<<"阿伟跑了!你悲伤地开始了继续找下一个人!";
exit(0);
}
node ren= {cat.x,cat.y};
string w=map[ren.x][ren.y];
map[ren.x][ren.y]="◎";
char c;
while((c=getch())!=13) {
//cout<<ren.x<<' '<<ren.y<<endl;
//Sleep(500);
switch(c) {
case 'W':
case 'w': {
if(ren.x==1)
break;
map[ren.x][ren.y]=w;
w=map[ren.x-1][ren.y];
ren.x-=1;
map[ren.x][ren.y]="◎";
break;
}
case 'A':
case 'a': {
if(ren.y==1)
break;
map[ren.x][ren.y]=w;
w=map[ren.x][ren.y-1];
ren.y-=1;
map[ren.x][ren.y]="◎";
break;
}
case 'S':
case 's': {
if(ren.x==9)
break;
map[ren.x][ren.y]=w;
w=map[ren.x+1][ren.y];
ren.x+=1;
map[ren.x][ren.y]="◎";
break;
}
case 'D':
case 'd': {
if(ren.y==9)
break;
map[ren.x][ren.y]=w;
w=map[ren.x][ren.y+1];
ren.y+=1;
map[ren.x][ren.y]="◎";
break;
}
}
system("cls");
for(int i=1; i<=9; ++i) {
for(int j=1; j<=9; ++j)
cout<<map[i][j];
cout<<endl;
}
//Sleep(200);
}
map[ren.x][ren.y]="●";
IE:
;
if((map[cat.x-1][cat.y]=="●")&&(map[cat.x+1][cat.y]=="●")&&(map[cat.x][cat.y-1]=="●")&&(map[cat.x][cat.y+1]=="●")) {
system("cls");
for(int i=1; i<=9; ++i) {
for(int j=1; j<=9; ++j)
cout<<map[i][j];
cout<<endl;
}
cout<<"呜呼呼!阿伟被你成功控制在房间内!";
exit(0);
}
int q=rand()%4+1;
switch(q) {
case 1: {
if(map[cat.x-1][cat.y]!="○")
goto IE;
map[cat.x][cat.y]="○";
cat.x-=1;
map[cat.x][cat.y]="♂";
break;
}
case 2: {
if(map[cat.x][cat.y-1]!="○")
goto IE;
map[cat.x][cat.y]="○";
cat.y-=1;
map[cat.x][cat.y]="♂";
break;
}
case 3: {
if(map[cat.x+1][cat.y]!="○")
goto IE;
map[cat.x][cat.y]="○";
cat.x+=1;
map[cat.x][cat.y]="♂";
break;
}
case 4: {
if(map[cat.x][cat.y+1]!="○")
goto IE;
map[cat.x][cat.y]="○";
cat.y+=1;
map[cat.x][cat.y]="♂";
break;
}
}
game();
}
void begin() {
for(int i=1; i<=9; ++i)
for(int j=1; j<=9; ++j)
map[i][j]="○";
node one,two,three,four;
I:;
cat.x=rand()%9+3;
cat.y=rand()%9+3;
if(cat.x==1||cat.x==9||cat.y==1||cat.y==9)
goto I;
one.x=rand()%9+1;
one.y=rand()%9+1;
two.x=rand()%9+1;
two.y=rand()%9+1;
three.x=rand()%9+1;
three.y=rand()%9+1;
four.x=rand()%9+1;
four.y=rand()%9+1;
map[cat.x][cat.y]="♂";
map[one.x][one.y]="●";
map[two.x][two.y]="●";
map[three.x][three.y]="●";
map[four.x][four.y]="●";
game();
}
int main() {
srand(time(NULL));
CONSOLE_CURSOR_INFO cursor_info = {1, 0};
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);
print("创作作者:chb");
cout<<"\nWASD 选择地方,回车确定";
cout<<"\n空地:○ 有障碍:● 阿伟:♂";
cout<<"\n按下任意键开始";
getch();
begin();
return 0;
}
人生重开模拟器(未完结)
#include <bits/stdc++.h>
#include <conio.h>
#include <windows.h>
#include <time.h>
#include <string>
using namespace std;
int a,b,c,yz,zl,tz,jj,kl,xb,sn;
/*
a,b,c 3种天赋
yz 颜值
zl 智力
tz 体质
jj 家境
kl 快乐
xb 性别 1女 0男
sn 是否能变成魔法少女
*/
string s;
string huoqv(int p){
string q="";
while(p){
q.push_back(p%10+'0');
p/=10;
}
return q;
}
void tianfu();
void shuxing();
void ks();
void kaishi();
void ks(int year) {
system("cls");
printf("--------------------------\n");
printf("|颜值|智力|体质|家境|快乐|\n");
printf("--------------------------\n");
printf("|%4d|%4d|%4d|%4d|%4d|\n",yz,zl,tz,jj,kl);
printf("--------------------------\n");
if(year==0){
s+="0岁:你出生了。";
if(a==5||b==5||c==5){
s+="[半神]发动成功,全属性+2";
yz+=2;
zl+=2;
tz+=2;
jj+=2;
kl+=2;
}
s+="\n";
}
if(year==1){
s+="1岁:";
if((rand()%2+1)==1||a==4||b==4||c==4) {
s+="你的性别为女。";
xb=1;
}
else {
s+="你的性别为男。";
xb=0;
}
s+="\n";
}
if(year==2){
s+="2岁:";
if((rand()%5+1)==1){
s+="你的籍贯是美利坚。";
}
else{
s+="你的籍贯是中国。";
}
s+="\n";
}
if(year==3){
s+="3岁:";
if(jj>=4)
s+="你上了一个不错的幼儿园。";
else
s+="你上了一个普通的幼儿园。";
s+="\n";
}
if(year>3&&year<6){
s+=huoqv(year);
s+="岁:";
int p=rand()%10+1;
if(p>7&&jj<=3){
printf("今年干旱,由于饥饿你死了。");
getch();
kaishi();
}
if(p>7){
s+="你努力学习。";
++zl;
}
if(p<=7&&p>=5){
s+="你被表扬了。";
++kl;
}
if(p<=4&&p>=2){
s+="你被批评了。";
--kl;
}
if(p==1&&zl>=6){
s+="你发现你的想法与其他小朋友的想法不一样。";
}
if(p==1&&zl<6){
s+="你和其他小朋友相处得很好";
}
s+="\n";
}
if(year==6){
s+="6岁:你上了小学\n";
}
if(year>6&&year<12){
int p=rand()%10+1;
s+=huoqv(year);
s+="岁:";
if((p==10||(p>=5&&(a==6||b==6||c==6)))&&sn==0){
s+="你喜欢看动漫,喜欢看剧情棒的动漫。";
if((a==3||b==3||c==3)&&xb==1){
sn=1;
}
}
else{
if(p>6&&yz>=4){
s+="你被评选为班里的班";
if(xb==1)
s+="花。";
else
s+="草。";
}
else{
if(p>=5&&p<=8){
s+="你努力学习。";
}
else{
if(p==9||p==10){
s+="你第一次看A片。";
}
else{
if(p==4){
s+="时间穿梭,你穿梭到了。";
int ppp=rand()%100+1;
s+=huoqv(ppp);
s+="岁。";
ks(ppp);
}
else{
if(p>=1&&p<=3&&kl<=-1){
s+="你感觉你越来越抑郁。";
--kl;
}
else{
if(p==1){
s+="你和其他小朋友相处得很好。";
++kl;
}
else{
if(p==2){
s+="家里买上了另一个地方的房子,你搬到了那个地方住。";
++jj;
}
else{
s+="你摔了一跤。";
--zl;
}
}
}
}
}
}
}
}
s+="\n";
}
if(year==12){
s+=huoqv(year);
s+="岁:";
if(sn){
s+="你使用魔法棒,变身成了魔法少女。";
}
else{
if(jj>=7){
s+="你进了贵族中学。";
}
else{
if(zl>=5){
s+="你通过努力,考上了一个不错的初中。";
}
else{
s+="你上了普通的初中。";
}
}
}
}
cout<<s;
getch();
ks(year+1);
}
void tianfu() {
system("cls");
printf("选择你的天赋(3个)!\n");
printf("1.神秘的小盒字(100岁后开启)\n");
printf("2.渡劫失败转世重修\n");
printf("3.魔法棒(不知道有啥用)\n");
printf("4.生而为女\n");
printf("5.半神(全属性+2)\n");
printf("6.动漫高手(入宅可能翻6倍)\n");
cin>>a>>b>>c;
if(a==b||b==c||a==c) {
system("cls");
printf("天赋选择错误,请重新选择");
tianfu();
}
shuxing();
}
void shuxing() {
system("cls");
printf("请选择你的属性点(20点)\n");
printf("颜值:");
cin>>yz;
printf("智力:");
cin>>zl;
printf("体质:");
cin>>tz;
printf("家境:");
cin>>jj;
if(yz+zl+tz+jj>20||yz+zl+tz+jj<20)
shuxing();
ks(0);
}
void kaishi() {
kl=1;
system("cls");
printf("按下任意键开始!");
getch();
tianfu();
}
int main() {
srand(time(NULL));
kaishi();
return 0;
}
谁是卧底
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <string>
#include <vector>
#include <algorithm>
#include <windows.h>
#include <time.h>
#define N 60
using namespace std;
int n,wodi,xvanzhong,p,wodi1,wodi2,b[100005];
//a[i]=1卧底a[i]=0平民
string a[10005];
struct node{
string s1,s2;
}name[100005];
void kaishi();
void youxi();
void toupiao(){
printf("\n请输入投票最多的玩家的编号(如出现同票请自行继续):");
int p;
cin>>p;
if(b[p]){
printf("\n该玩家已出局,请重新投票");
toupiao();
}
else{
b[p]=1;
printf("他的身份是:");
if(p==wodi1){
printf("卧底");
if(wodi2==0||b[wodi2]){
printf("\n平民胜利!");
printf("\n是否继续(1继续0退出)");
int q;
cin>>q;
if(q==1)
kaishi();
else
exit(0);
}
else{
printf("\n继续游戏。\n");
youxi();
}
}
else{
if(p==wodi2){
printf("卧底");
if(b[wodi1]){
printf("\n平民胜利!");
printf("\n是否继续(1继续0退出)");
int q;
cin>>q;
if(q==1)
kaishi();
else
exit(0);
}
else{
printf("\n继续游戏。\n");
youxi();
}
}
else{
printf("平民");
int sum=0;
for(int i=1;i<=n;++i){
if(!b[i])
++sum;
}
// cout<<sum<<'\n';
if(sum<=2){
printf("\n卧底胜利!");
printf("\n是否继续(1继续0退出)");
int q;
cin>>q;
if(q==1)
kaishi();
else
exit(0);
}
else{
printf("\n继续游戏。\n");
youxi();
}
}
}
}
}
void youxi(){
printf("请自由发言(按回车键开始投票)");
getchar();
toupiao();
}
void shuoren(){
b[0]=1;
system("cls");
getchar();
printf("开始游戏");
Sleep(100);
for(int i=1;i<=n;++i){
system("cls");
printf("%d号玩家的身份:(按回车键继续)",i);
getchar();
// printf()
cout<<a[i];
printf("\n按下回车键取消");
getchar();
system("cls");
}
youxi();
}
void xvanci(){
if(n<=5){
wodi=1;
p=rand()%2+1;
xvanzhong=rand()%N+1;
// cout<<xvanzhong<<'\n';
if(p){
wodi1=rand()*rand()%n+1;
for(int i=1;i<=n;++i){
if(i==wodi1){
a[i]=name[xvanzhong].s1;
}
else{
a[i]=name[xvanzhong].s2;
}
}
}
else{
wodi1=rand()*rand()%n+1;
for(int i=1;i<=n;++i){
if(i==wodi1){
a[i]=name[xvanzhong].s2;
}
else{
a[i]=name[xvanzhong].s1;
}
}
}
}
else{
wodi=2;
p=rand()%2+1;
xvanzhong=rand()%N+1;
if(p){
wodi1=rand()*rand()%n+1;
do{
wodi2=rand()*rand()%n+1;
}while(wodi1==wodi2);
for(int i=1;i<=n;++i){
if(i==wodi1||i==wodi2){
a[i]=name[xvanzhong].s1;
}
else{
a[i]=name[xvanzhong].s2;
}
}
}
else{
wodi1=rand()*rand()%n+1;
do{
wodi2=rand()*rand()%n+1;
}while(wodi1==wodi2);
for(int i=1;i<=n;++i){
if(i==wodi1||i==wodi2){
a[i]=name[xvanzhong].s2;
}
else{
a[i]=name[xvanzhong].s1;
}
}
}
}
shuoren();
}
void kaishi(){
memset(b,0,sizeof(b));
system("cls");
printf("请输入人数(3-5人 一个卧底,6-10人两个卧底)");
cin>>n;
if(n<3){
printf("\n人数不合法!");
kaishi();
}
if(n>10){
printf("\n暂时不支持更多人玩法!");
kaishi();
}
xvanci();
}
int main(){
srand(time(NULL));
// freopen("文档.txt","w",stdout);
// for(int i=48;i<=60;++i){
// string s1,s2;
// cin>>s1>>s2;
// cout<<"name["<<i<<"].s1=\""<<s1<<"\",name["<<i<<"].s2=\""<<s2<<"\";\n";
// }
name[1].s1="爸爸",name[1].s2="妈妈";
name[2].s1="白心火龙果",name[2].s2="红心火龙果";
name[3].s1="凤梨",name[3].s2="菠萝";
name[4].s1="氧气",name[4].s2="二氧化碳";
name[5].s1="音响",name[5].s2="音箱";
name[6].s1="手机",name[6].s2="电话";
name[7].s1="凉鞋",name[7].s2="拖鞋";
name[8].s1="七大姑",name[8].s2="八大姨";
name[9].s1="古诗",name[9].s2="故事";
name[10].s1="秀才",name[10].s2="书生";
name[11].s1="油漆",name[11].s2="颜料";
name[12].s1="英语",name[12].s2="美语";
name[13].s1="帅哥",name[13].s2="美女";
name[14].s1="电影",name[14].s2="动画";
name[15].s1="叛徒",name[15].s2="卧底";
name[16].s1="鸡蛋",name[16].s2="鸟蛋";
name[17].s1="大提琴",name[17].s2="小提琴";
name[18].s1="夏令营",name[18].s2="冬令营";
name[19].s1="期末",name[19].s2="期中";
name[20].s1="钢琴",name[20].s2="电子琴";
name[21].s1="五谷",name[21].s2="五菜";
name[22].s1="六六大顺",name[22].s2="一帆风顺";
name[23].s1="黑无常",name[23].s2="白无常";
name[24].s1="牛头",name[24].s2="马面";
name[25].s1="板砖",name[25].s2="地砖";
name[26].s1="盒子",name[26].s2="箱子";
name[27].s1="辣翅",name[27].s2="烤翅";
name[28].s1="玩电脑",name[28].s2="玩手机";
name[29].s1="洗衣粉",name[29].s2="皂角粉";
name[30].s1="汉堡包",name[30].s2="肉夹馍";
name[31].s1="皇帝",name[31].s2="太子";
name[32].s1="面包",name[32].s2="蛋糕";
name[33].s1="蜘蛛侠",name[33].s2="蝙蝠侠";
name[34].s1="冠军",name[34].s2="第一";
name[35].s1="亚军",name[35].s2="第二";
name[36].s1="季军",name[36].s2="第三";
name[37].s1="卷发",name[37].s2="直发";
name[38].s1="电脑",name[38].s2="iPad";
name[39].s1="炼金",name[39].s2="炼丹";
name[40].s1="火狐",name[40].s2="谷歌";
name[41].s1="雪碧",name[41].s2="可乐";
name[42].s1="110",name[42].s2="120";
name[43].s1="查寝",name[43].s2="突袭";
name[44].s1="迷你世界",name[44].s2="我的世界";
name[45].s1="士力架",name[45].s2="德芙";
name[46].s1="水兵",name[46].s2="伞兵";
name[47].s1="金鲲冥",name[47].s2="冻鲲冥";
name[48].s1="微信",name[48].s2="QQ";
name[49].s1="橙子",name[49].s2="橘子";
name[50].s1="风油精",name[50].s2="花露水";
name[51].s1="孔子",name[51].s2="?";
name[52].s1="857857",name[52].s2="114514";
name[53].s1="骨头",name[53].s2="化石";
name[54].s1="红椒",name[54].s2="青椒";
name[55].s1="红烧鱼",name[55].s2="清蒸鱼";
name[56].s1="老子",name[56].s2="空调";
name[57].s1="风扇",name[57].s2="饼干";
name[58].s1="巧克力",name[58].s2="书店";
name[59].s1="图书馆",name[59].s2="男人";
name[60].s1="女人",name[60].s2="近视眼镜";
printf("游戏创作 by chb");
getchar();
kaishi();
return 0;
}
/*
1 2 3 4 5 7
1 2 3 4
1 3 5 7 9 7
*/