C++小游戏

全新C++小游戏全新来袭!

操作方法看教程!

代码:

// By School //

#include 
#include 
#include 
 
using namespace std;

void ccc(string s);
void c_slow(string s);
void cls();
void Error();
void zhuye();
void inti();

long long lvl = 1;
long long sum;
long long money = 50;
long long wuqi = 5;
long long MAX_SUM = 10;

void ccc(string s) {
	for(int i = 0; i < s.size(); i++) {
		cout << s[i];
		Sleep(25); 
	}
	cout << "\n";
}

void c_slow(string s) {
	for(int i = 0; i < s.size(); i++) {
		cout << s[i];
		Sleep(444); 
	}
	cout << "\n";
}

void cls() {
	system("cls");
}

void Error() {
	cls();
	c_slow("Input Error!");
	Sleep(500);
	zhuye();
}

void zhuye() {
	cls();
	ccc("1.教程 2.征战 3.升级 4.招募 5.我的信息");
	char a = getch();
	if(a == '1') {
		cls();
		ccc("每次征战会获得财宝和武器");
		ccc("财宝和武器到达一定数量可以升级军队等级");
		ccc("军队等级的升级会大幅增加士兵上限和士兵战斗力");
		ccc("加油吧,指挥官!");
		ccc("请按任意键继续");
		char n = getch();
		zhuye();
	}
	else if(a == '2') {
		cls();
		ccc("输入等级 (<=50) 输入0返回");
		int n;
		cin >> n;
		if(n == 0) zhuye(); 
		cls();
		printf("敌方士兵数:");
		cout << pow(3,n) << "\n";
		printf("我方士兵数:%d\n",sum);
		printf("敌方等级:%d\n",n);
		printf("我方等级:%d\n",lvl);
		ccc("指挥官,是否发动进攻? 输入'Y'或'N' Y代表攻击 N代表逃跑");
		char num = getch();
		if(num == 'Y') {
			if((pow(3,n) * pow(2,lvl) < sum * pow(2,lvl))) {
				cls();
				c_slow("You Win!");
				ccc("恭喜收获:");
				printf("\t"); cout << pow(5,n + 1) << "元\n";
				printf("\t"); cout << pow(10,n - 1) << "把武器\n";
				printf("\t"); cout << floor(pow(3,n) / 5) << "名俘虏\n";
				ccc("请按任意键继续");
				char s = getch();
				money += pow(5,n + 1);
				wuqi += pow(10,n - 1);
				sum += pow(3,n) / 5;
				zhuye();
			} else { ccc("You Lose!"); zhuye(); }
		} 
		else if(num == 'N') {
			cls();
			ccc("你损失了一些军费!");
			printf("损失了:"); cout << pow(10,n) << "元"; money -= pow(10,n);
			Sleep(1000);
			zhuye();
		}
		else Error(); 
	}
	else if(a == '3') {
		cls();
		printf("你的当前等级是%d,升级需要",lvl);
		cout << pow(20,lvl + 1);
		printf("元和");
		cout << pow(3,lvl + 1);
		printf("把武器\n");
		ccc("是否购买? Please Input 'Y' or 'N'");
		char n = getch();
		if(n == 'Y') {
			if(money < pow(20,lvl + 1)) {
				cls();
				ccc("You Don't Have Enough Money!");
				zhuye();
			} else if(wuqi < pow(3,lvl + 1)) {
				cls();
				ccc("You Don't Have Enough Weapon!");
				zhuye();
			} else {
				money -= pow(20,lvl + 1); 
				wuqi -= pow(10,lvl);
				lvl++;
				MAX_SUM *= 5;
				ccc("OK!");
				Sleep(500);
				zhuye();
			}
		}
		else if(n == 'N') zhuye();
		else Error();
	}
	else if(a == '4') {
		cls();
		printf("招募一个士兵需要");
		cout << pow(10,lvl);
		printf("元,一把武器\n");
		ccc("你要多少? 输入数字 输入-1可以购买最大上限个士兵");
		int n;
		cin >> n;
		if(n == -1) {
			int n1 = (money / (pow(10,lvl))), n2 = wuqi;
			int num = min(n1,n2); int k = MAX_SUM - sum; if(num > k) num = k;
			money -= num * pow(10,lvl);
			wuqi -= num;
			sum += num;
			cls();
			ccc("OK!");
			printf("购买了%d个士兵",num);
			Sleep(500);
			zhuye();
		}
		else if(money < pow(10,lvl) * n) {
			cls();
			ccc("You Don't Have Enough Money!");
			zhuye();
		}
		else if(wuqi < n) {
			cls();
			ccc("You Don't Have Enough Weapon!");
			zhuye();
		}
		else if(sum + n > MAX_SUM) {
			cls();
			ccc("It Is So Big! Please add your level");
			zhuye(); 
		}
		else {
			sum += n;
			money -= pow(10,lvl) * n;
			cls();
			ccc("OK!");
			Sleep(500);
			zhuye();
		}
	} 
	else if(a == '5') {
		cls();
		printf("等级:%d\n",lvl);
		printf("士兵数量:%d\n",sum);
		printf("士兵上限:%d\n",MAX_SUM);
		printf("钱:%d\n",money);
		printf("武器数量:%d\n",wuqi);
		ccc("请按任意键继续");
		char n = getch();
		zhuye(); 
	}
	else Error();
}

void inti() {
	system("color 09");
	c_slow("By School");
	cls();
	c_slow("Loading……");
	cls();
	zhuye();
}

int main() { inti(); }

你可能感兴趣的:(c++,开发语言)