Dev-C++5.11游戏创作之躺平发育2

小伙伴们,今天继续上躺平发育的各种模式

点赞冲起来!

第一个:无限门盾模式

#include<bits/stdc++.h>
#include<windows.h>
#include<unistd.h>
using namespace std;
void rules();
int main(void) {
	int c=1;
	int m=1;
	long long m_x=1000;
	long long m_xl=1000;
	int g_a=250;
	int g_d=200;
	int coins=100;
	int p_n=1;
	int n=0;
	int win=100;
	int buy;
	int d_n=0;
	int p_a=75;
	int cnt=0;
	int m_n=1;
	int cheak=m_n*m_xl;
	int cheak_2=cheak;
	int ji=n*g_a;
	int p_na, jj_a, jj_d;
	system("cls");
	cout<<"请选择难度:"<<endl;
	cout<<endl;
	cout<<endl;
	cout<<"A.初级难度"<<endl;
	cout<<endl;
	cout<<"B.中级难度"<<endl;
	cout<<endl;
	cout<<"C.地狱难度"<<endl;
	cout<<"请输入:";
	char x;
	cin>>x;
	if(x=='A'){
		jj_a=100;
		jj_d=60;
		p_na=50;
	} 
	else if(x=='B'){
		jj_a=125;
		jj_d=75;
		p_na=55;
	}
	else if(x=='C'){
		jj_a=175;
		jj_d=125;
		p_na=45;
	}
	while(win>=0) {

		m_xl-=n*g_a;
		cheak=m_n-1*m_xl+n*g_a+m_xl;
		cheak-=ji;
		if(n<0){
			n=0;
		}
		if(win<=0){
			break;
		}
		if(cheak_2-m_xl*m_n>=m_xl){
			m_n-=cheak-m_xl*m_n/m_xl;
			system("cls");
			cout<<"噬梦者破坏了您的一道门盾!"<<endl;
			system("pause");
		}
		if(m_n<=0){
			cout<<"您被噬梦者打败了!"<<endl;
			return 0;
		} 
		if(m_xl<=0) {
			system("cls");
			cout<<"您的门已经被噬梦者攻破,G A M E    O V E R!"<<endl;
			return 0;
		}
		system("cls");
		cout<<"金币:"<<coins<<" 电力:"<<d_n<<"  炮台:"<<p_n<<"个  "<<"门的血量:▓▓▓▓▓▓"<<endl;
		cout<<endl;
		cout<<"      墙墙墙墙    墙墙墙墙"<<endl;
		cout<<"      墙◎◎墙    墙◎◎墙"<<endl;
		cout<<"      墙◎◎墙    墙◎◎墙"<<endl;
		cout<<"      墙◎◎墙    墙◎◎墙"<<endl;
		cout<<"      墙◎◎墙    墙◎◎墙"<<endl;
		cout<<"      墙    墙 怪 墙    墙"<<endl;
		cout<<"      墙  ◎墙 "<<n<<" 墙    墙"<<endl;
		cout<<"墙墙墙墙    墙 门 墙    墙墙墙墙"<<endl;
		cout<<"墙           ■■■           墙"<<endl;
		cout<<"墙           ■床■     ☆☆☆墙"<<endl;
		cout<<"墙           ■■■     ☆★★墙"<<endl;
		cout<<"墙                      ☆★★墙"<<endl;
		cout<<"墙墙墙墙墙墙墙墙墙墙墙墙墙墙墙墙"<<endl;
		cout<<endl;
		cout<<"您正在床上发育……"<<endl;
		cout<<"有"<<n<<"个噬梦者在挠你的门!"<<endl;
		cout<<"您还需要击败"<<win<<"个噬梦者"<<endl; 
		cout<<"目前的噬梦者攻击力为:"<<g_a<<"  防御力为:"<<g_d<<endl;
		cout<<"您的炮台攻击力为:"<<p_a<<endl;
		cout<<"输入1以建造炮台:25金币"<<endl;
		cout<<"输入2以升级门:  50金币"<<endl;
		cout<<"输入3以升级床:  35金币"<<endl;
		cout<<"输入4以放弃此次建造机会"<<endl;
		cout<<"输入5以拆除1个炮台:获得15金币"<<endl;
		cout<<"输入6以让门回血(免费)"<<endl;
		cout<<"输入7以建造一扇门(免费)"<<endl;
		cout<<"您的门的级位是"<<m<<"级"<<endl;
		cout<<"您的床是"<<c<<"级"<<endl;
		cout<<"您现在有"<<m_n<<"个门盾"<<endl;
		cout<<"◎:炮台"<<endl;
		cout<<"☆:维修台"<<endl;
		cout<<"★:发电机"<<endl;
		cout<<"■:门盾"<<endl;
		n-=p_n*p_a/g_d;
		win-=p_n*p_a/g_d;
		cin>>buy;
		switch(buy) {
			case 1:
				if(coins<25) {
					cout<<"您的钱不够"<<endl;
					break;
				}
				if(p_n==17){
					cout<<"最大上限为17个炮台!"<<endl;
					break;
				} 
				coins-=25;
				p_n++;
				break;
			case 2:
				if(coins<50) {
					cout<<"您的钱不够"<<endl;
					break;
				}
				if(m==19){
					cout<<"您的门已达到黄金门,不能够再次升级了!"<<endl;
					system("pause");
					break;
				}
				coins-=50;
				m++;
				m_x*=5;
				m_xl=m_x;
				break;
			case 3:
				if(coins<35) {
					cout<<"您的钱不够"<<endl;
					break;
				}
				coins-=35;
				c++;
				break;
			case 4:
				break;
			case 5:
				coins+=15;
				p_n--;
			case 6:
				m_xl=m_x;
				break;
			case 7:
				if(m_n==13){
					cout<<"门盾最多建造13个!"<<endl;
				}
				m_n++;
				break;
			default:
				cout<<"没有此选项"<<endl;
				break;
		}
		if(m_xl==0) {
			system("cls");
			cout<<"您的门已经被噬梦者攻破,梦境惊醒!"<<endl;
			cout<<"        G A M E    O V E R!      "<<endl;
			return 0;
		}
		if(n==31) {
			n--;
		}
		coins+=c*15;
		sleep(2);
		n++;
		if(n==31) {
			n--;
		}
		d_n+=4*10000;
	}
	cout<<"恭喜您打败了所有噬梦者,获得了胜利!"<<endl;
}

第二个:大招模式

#include<bits/stdc++.h>
#include<windows.h>
#include<unistd.h>
using namespace std;
char dz;
void dazhao();
void rules();
int main(void) {
	int c=1;
	int m=1;
	long long m_x=1000;
	long long m_xl=1000;
	int g_a=250;
	int g_d=200;
	int coins=50;
	int p_n=0;
	int n=0;
	int win=100;
	int buy;
	int d_n=0;
	int p_a=75;
	int p_na, jj_a, jj_d;
	system("cls");
	cout<<"请选择难度:"<<endl;
	cout<<endl;
	cout<<endl;
	cout<<"A.初级难度"<<endl;
	cout<<endl;
	cout<<"B.中级难度"<<endl;
	cout<<endl;
	cout<<"C.地狱难度"<<endl;
	cout<<"请输入:";
	char x;
	cin>>x;
	if(x=='A') {
		jj_a=100;
		jj_d=60;
		p_na=50;
	} else if(x=='B') {
		jj_a=125;
		jj_d=75;
		p_na=55;
	} else if(x=='C') {
		jj_a=175;
		jj_d=125;
		p_na=45;
	}
	dazhao();
	switch( dz ) {
		case 'A':
			for(int i=1; i<=3; i++) {
				srand(time(NULL));
				int sj=rand()%3+1;
				if(sj==1)
					m++;
				else if(sj==2)
					c++;
				else if(sj==3)
					p_n++;
			}
			break;
		case 'B':
			coins+=10000;
			break;
		case 'D':
			p_na*=2;
			break;
		case 'E':
			c=5;
			break;
	}

	while(win>=0) {
		
		if( dz=='C' && buy==4 ){
			m_xl+=n*g_a;
		}
		if(n<0) {
			n=0;
		}
		if(win<=0) {
			break;
		}
		m_xl-=n*g_a;
		if(m_xl<=0) {
			system("cls");
			cout<<"您的门已经被噬梦者攻破,G A M E    O V E R!"<<endl;
			return 0;
		}
		system("cls");
		cout<<"金币:"<<coins<<" 电力:"<<d_n<<"  炮台:"<<p_n<<"个  "<<"门的血量:"<<m_xl<<endl;
		cout<<endl;
		cout<<"      墙墙墙墙    墙墙墙墙"<<endl;
		cout<<"      墙◎◎墙    墙◎◎墙"<<endl;
		cout<<"      墙◎◎墙    墙◎◎墙"<<endl;
		cout<<"      墙◎◎墙    墙◎◎墙"<<endl;
		cout<<"      墙    墙    墙    墙"<<endl;
		cout<<"      墙    墙 怪 墙    墙"<<endl;
		cout<<"      墙    墙 "<<n<<" 墙    墙"<<endl;
		cout<<"墙墙墙墙    墙 门 墙    墙墙墙墙"<<endl;
		cout<<"墙          ◎ ◎ ◎          墙"<<endl;
		cout<<"墙          ◎ 床 ◎    ☆☆☆墙"<<endl;
		cout<<"墙                      ☆★★墙"<<endl;
		cout<<"墙                      ☆★★墙"<<endl;
		cout<<"墙墙墙墙墙墙墙墙墙墙墙墙墙墙墙墙"<<endl;
		cout<<endl;
		cout<<"您正在床上发育……"<<endl;
		cout<<"有"<<n<<"只噬梦者在挠你的门!"<<endl;
		cout<<"您击败了"<<100-win<<"只噬梦者"<<endl;
		cout<<"还要击败"<<win<<"只噬梦者"<<endl; 
		cout<<"输入1以建造炮台:25金币"<<endl;
		cout<<"输入2以升级门:  50金币"<<endl;
		cout<<"输入3以升级床:  35金币"<<endl;
		cout<<"输入4以放弃此次建造机会"<<endl;
		cout<<"输入5以拆除1个炮台:获得15金币"<<endl;
		cout<<"输入6以让门回血"<<endl;
		cout<<"您的门的级位是"<<m<<"级"<<endl;
		cout<<"您的床是"<<c<<"级"<<endl;
		cout<<"◎:炮台"<<endl;
		cout<<"☆:维修台"<<endl;
		cout<<"★:发电机"<<endl;
		n-=p_n*p_a/g_d;
		win-=p_n*p_a/g_d;
		cin>>buy;
		switch(buy) {
			case 1:
				if(coins<25) {
					cout<<"您的钱不够"<<endl;
					break;
				}
				if(p_n==17) {
					cout<<"最大上限为17个炮台!"<<endl;
					break;
				}
				coins-=25;
				p_n++;
				break;
			case 2:
				if(coins<50) {
					cout<<"您的钱不够"<<endl;
					break;
				}
				if(m==19) {
					cout<<"您的门已达到黄金门,不能够再次升级了!"<<endl;
					system("pause");
					break;
				}
				coins-=50;
				m++;
				m_x*=7;
				m_xl=m_x;
				break;
			case 3:
				if(coins<35) {
					cout<<"您的钱不够"<<endl;
					break;
				}
				coins-=35;
				c++;
				break;
			case 4:
				break;
			case 5:
				coins+=15;
				p_n--;
			case 6:
				m_xl=m_x;
				break;
			default:
				cout<<"没有此选项"<<endl;
				break;
		}
		if(m_xl==0) {
			system("cls");
			cout<<"您的门已经被噬梦者攻破,G A M E    O V E R!"<<endl;
			return 0;
		}
		if(n==31) {
			n--;
		}
		coins+=c*15;
		sleep(2);
		n++;
		if(n==31) {
			n--;
		}
		d_n+=4*10000;
	}
	cout<<"恭喜您打败了所有噬梦者,获得了胜利!"<<endl;
}
void dazhao() {
	system("cls");
	char get;
	cout<<"欢迎进入大招模式,在此模式中,您可以选择自己喜欢的招法来帮助您安心躺平"<<endl;
	sleep(1);
	cout<<"A. 无中生有"<<endl;
	cout<<"   此招法能任意升级床,门,或者建造炮台(能连续使用三次)"<<endl<<endl;
	sleep(1);
	cout<<"B. 财源滚滚"<<endl;
	cout<<"   此招法能天降10000金币"<<endl<<endl;
	sleep(1);
	cout<<"C. 终极门盾"<<endl;
	cout<<"   此招法能让您的门在放弃建造建筑时,让您的门进入无敌状态"<<endl<<endl;
	sleep(1);
	cout<<"D. 双管炮射"<<endl;
	cout<<"   此招法能让噬梦者受到炮台双倍的攻击"<<endl<<endl;
	sleep(1);
	cout<<"E. 先人一步"<<endl;
	cout<<"   此招法能让您的床直接变成5级"<<endl<<endl;
	sleep(1);
	cout<<endl;
	cout<<endl;
	cout<<endl;
	cout<<"请输入您喜欢的招法的编号:";
	cin>>get;
	dz=get;
}

第三个:圈地模式(这个模式暂时还有点小bug,不过不影响)

#include<bits/stdc++.h>
#include<windows.h>
#include<unistd.h>
using namespace std;
void Sout(string s);
struct game {
	int m_i[1000], m_j[1000];
	int set_m_i[1000], set_m_j[1000];
	int c=1;//床的等级
	int m=1;//门的数量
	int m_abc=1;//所有门的级位
	long long m_x=100000000;//这级门该有的血量
	long long m_xl=100000000;//实际上的血量
	int g_a=250;//怪物的攻击力
	int g_d=200;//怪物的防御力
	int coins=50;//钱
	int p_n=0;//炮台数量
	int n=0;//怪物数量
	int buy;//买的东西的编号
	int p_a=75;//炮台攻击力
	bool hd, hdfsq, hdfs;
	string weapon="炮";
	string men="门";
	bool cw=false;
};
void gotoxy(int y,int x) {
	COORD  coord;
	coord.X=x;
	coord.Y=y;
	HANDLE a=GetStdHandle(STD_OUTPUT_HANDLE);
	SetConsoleCursorPosition(a,coord);
}
game player;
int main(void) {
	int count=0;
	player.m_xl=player.m*player.m_xl;
	while( !player.hdfs ) {


		if(player.n<0) {
			player.n=0;
		}
		if(player.hdfs) {
			break;
		}
		player.m_xl-=player.n*player.g_a;
		if(player.m_xl<=0) {
			system("cls");
			cout<<"您的门已经被噬梦者攻破,G A M E    O V E R!"<<endl;
			return 0;
		}
retipe:
		system("cls");

		gotoxy(0,0);
		cout<<"┏ ┳ ┳ ┳ ┳ ┳ ┳ ┳ ┳ ┓"<<endl;
		cout<<"                            1"<<endl;
		cout<<"┣ ╭─╮ ╋ ╋ ╋ ╋ ╋ ╋ ┫"<<endl;
		cout<<"                            2"<<endl;
		cout<<"┣╰ ━ ╯╋ ╋ ╋ ╋ ╋ ╋ ┫"<<endl;
		cout<<"                            3"<<endl;
		cout<<"┣ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ┫"<<endl;
		cout<<"                            4"<<endl;
		cout<<"┣ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ┫"<<endl;
		cout<<"                            5"<<endl;
		cout<<"┣ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ┫"<<endl;
		cout<<"                            6"<<endl;
		cout<<"┣ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ┫"<<endl;
		cout<<"                            7"<<endl;
		cout<<"┣ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ┫"<<endl;
		cout<<"             床             8"<<endl;
		cout<<"┣ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ╋ ┫"<<endl;
		cout<<"                            9"<<endl;
		cout<<"┗ ┻ ┻ ┻ ┻ ┻ ┻ ┻ ┻ ┛"<<endl;
		cout<<" 1 2 3 4 5 6 7 8 9"<<endl;
		cout<<endl;
		gotoxy(0,0);
		for(int i=1; i<=count; i++) {
			for(int j=1; j<=count; j++) {
				gotoxy(player.m_i[i]+1, player.m_j[i]+1);
				cout<<player.weapon<<" ";
			}
		}
		for(int i=1; i<=count; i++) {
			for(int j=1; j<=count; j++) {
				gotoxy(player.set_m_i[i]+1, player.set_m_j[i]+1);
				cout<<player.men<<" ";
			}
		}
		gotoxy(20,0);
		cout<<"您正在床上发育……"<<endl;
		cout<<"有"<<player.n<<"只噬梦者在挠你的门!"<<endl;
		cout<<"输入1以      建造门:  50金币"<<endl;
		cout<<"输入2以    建造炮台:  25金币"<<endl;
		cout<<"输入3以升级所有的门:  35金币"<<endl;
		cout<<"输入4以    让门回血"<<endl;
		cout<<"输入5以    升级床铺: 35金币"<<endl;
		cout<<"输入6以建造核弹发射器"<<endl;
		cout<<"输入7以    购买核弹"<<endl;
		cout<<"输入8以    发射核弹"<<endl;
		cout<<"输入9以    天降金币"<<endl;
		cout<<"金币:"<<player.coins<<"  炮台:"<<player.p_n<<"个  "<<"门的血量:"<<player.m_xl<<endl;
		cout<<endl;
		cout<<"您的门的级位是"<<player.m_abc<<"级"<<endl;
		cout<<"您的床是"<<player.c<<"级"<<endl;
		player.n-=player.p_n*player.p_a/player.g_d;
		cin>>player.buy;
		switch(player.buy) {
			case 1:
				player.m++;
				player.m_xl+=player.m_x;
				cout<<"请输入门放置的位置:";
				cin>>player.set_m_i[count]>>player.set_m_j[count];
				break;
			case 2:
				player.p_n++;
				player.coins+=25;
				cout<<"请输入炮台放置的位置:";
				cin>>player.m_i[count]>>player.m_j[count];
				break;
			case 3:
				player.m_abc++;
				player.coins+=player.m*75;
				break;
			case 4:
				player.m_xl=player.m_x;
				player.coins+=50;
				break;
			case 5:
				player.c++;
				player.coins+=35;
				break;
			case 6:
				if(player.coins<=88888888) {
					system("cls");
					Sout("您的钱不够");
					system("pause");
					break;
				}
				player.coins-=88888888;
				player.hdfsq=true;
				break;
			case 7:
				if(player.coins<=10000) {
					system("cls");
					Sout("您的钱不够");
					system("pause");
					break;
				}
				player.coins-=10000;
				player.hd=true;
				break;
			case 8:
				if( !player.hd ) {
					system("cls");
					Sout("请购买核弹&核弹发射器");
					system("pause");
					break;
				} else if( !player.hdfsq ) {
					system("cls");
					Sout("请购买核弹&核弹发射器");
					system("pause");
					break;
				}
				player.hdfs=true;
				break;
			case 9:
				player.coins*=888888;
				break;
			default:
				cout<<"没有此选项"<<endl;
				goto retipe;
				break;
		}
		count++;
		if(player.m_xl==0) {
			system("cls");
			Sout("您的门已经被噬梦者攻破,G A M E    O V E R!");
			return 0;
		}
		if(player.n==31) {
			player.n--;
		}
		player.coins+=player.c*15;
		player.n++;
		if(player.n==31) {
			player.n--;
		}
	}
	system("cls");
	Sout("您购买了核弹发射器与核弹,轰炸了所有噬梦者,胜利了!");
}

void Sout(string s) {
	for(int i=0; i<s.size(); i++) {
		cout<<s[i];
		Sleep(200);
	}
	cout<<endl;
}

好了!今天就到这里,大家有什么想法,可以关注我私聊哦!

886!ヾ( ̄▽ ̄)Bye~Bye~

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

C++小盆友

你的鼓励将是我创作的最大动力呦

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值