(日常水讨论愉悦身心)

博客地址:link

从洛谷账号 xutongwei 的博客中 小游戏 • 17 蒟蒻的猫国建设者 复制过来。

目前更新到矿业。

代码在第一层评论发。

4 条评论

  • @ 2023-1-25 22:42:02

    划水

    其实早就咕透了()

    • @ 2022-1-24 14:30:19

      看起来讨论区的长度限制还是太长了 🤔

      • @ 2022-1-24 16:28:36

        要是压行是不是还可以不超过👀️

    • @ 2022-1-24 9:46:15
      1. 建议用paste.ubuntu.com
      2. 如果效果没原作好,应有创新
      • @ 2022-1-24 21:56:39

        现在 Ubuntu Pastebin 要登录了,感觉没以前那种感觉了了

      • @ 2022-1-24 22:15:31

        @ 我现在用 paste.nichi.co (

    • @ 2022-1-22 14:03:48

      建议不要改数据……

      #include <iostream>
      #include <cstdio>
      #include <string>
      #include <algorithm>
      #include <cmath>
      #include <cstdlib>
      #include <ctime>
      #include <windows.h>
      #include <conio.h>
      #include <bitset>
      using namespace std;
      #define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
      #define KEY_DOWM(vk_c) (GetAsyncKeyState(vk_c)&0x8000?1:0)
      void color(int a){
          SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),a);
      }
      void HideCursor(){
          CONSOLE_CURSOR_INFO cursor_info = {1, 0}; 
          SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);
      }
      void block(int x,int y){
          HANDLE   hCon;
          hCon = GetStdHandle(STD_OUTPUT_HANDLE);  
          COORD   setps;
          setps.X = x;
          setps.Y = y;
          SetConsoleCursorPosition(hCon,setps);  
      }
      bitset<128>pre;
      bitset<128>down;
      void pan(char c){
      	bool hahbhchdhehfhg;
      	if(c == 'w'){
      		if(!KEY_DOWN(VK_UP))hahbhchdhehfhg=0;
          	else hahbhchdhehfhg=1;
      	}else if(c == 's'){
      		if(!KEY_DOWN(VK_DOWN))hahbhchdhehfhg=0;
          	else hahbhchdhehfhg=1;
      	}else if(c == 'a'){
      		if(!KEY_DOWN(VK_LEFT))hahbhchdhehfhg=0;
          	else hahbhchdhehfhg=1;
      	}else if(c == 'd'){
      		if(!KEY_DOWN(VK_RIGHT))hahbhchdhehfhg=0;
          	else hahbhchdhehfhg=1;
      	}else if(c == '1'){
      		if(!KEY_DOWN(VK_NUMPAD1) && !KEY_DOWN('1'))hahbhchdhehfhg=0;
          	else hahbhchdhehfhg=1;
      	}else if(c == '2'){
      		if(!KEY_DOWN(VK_NUMPAD2) && !KEY_DOWN('2'))hahbhchdhehfhg=0;
          	else hahbhchdhehfhg=1;
      	}else if(c == '3'){
      		if(!KEY_DOWN(VK_NUMPAD3) && !KEY_DOWN('3'))hahbhchdhehfhg=0;
          	else hahbhchdhehfhg=1;
      	}else{
      		if(!KEY_DOWN(c))hahbhchdhehfhg=0;
          	else hahbhchdhehfhg=1;
      	}
          if(hahbhchdhehfhg)down[c]=1;
          else down[c]=0;
      }
      bool check(char c){
          if(down[c] != pre[c]){
              pre[c] = down[c];
              if(down[c]){
                  return true;
              }
          }
          return false;
      }
      int heng[31] = {0, 1, 4};
      int shu[31][101] = {{0},
      {0, 1, 2, 3, 4},
      {0, 1},
      {0, 1}
      };
      string hengs[31] = {"0", "营火", "小村庄", "科学", "成就", "工坊", "贸易", "独角兽"};
      string shus[31][101] = {{"0"}, 
      {"0", "采集猫薄荷", "猫薄荷田", "锻造木头", "小屋", "图书馆", "粮仓", "矿井", "工坊"},
      {"0", "伐木工", "农民", "学者", "猎人", "矿工"},
      {"0", "日期", "农业", "箭业", "采矿", "畜牧业", "金属加工", "行政部门", "数学", "建筑业"},
      {"0"},
      {"0", "矿石锄", "生铁锄", "矿石斧", "生铁斧", "扩容粮仓", "加强粮仓", "投石索"}
      }; 
      int shus1[101] = {0, 1, 2, 3, 4, 5, 6, 7, 8};
      int shus2[101] = {0, 1, 2, 3, 4, 5};
      bool z1[1010];
      int hengl = 2, shul[31] = {0, 4, 0, 1};
      int x = 1;
      int y = 1;
      int zz11 = 1;
      double zz12[101][5] = {{0}, {0, 0}, {0, 10}, {0, 100}, {0, 5}, {0, 25}, {0, 70}, {0, 100}, {0, 100, 400}};
      int zz13[101] = {0, 0, 1, 1, 2, 2, 2, 2, 302};
      string zz14[31] = {"0", "猫薄荷", "木头", "矿物", "科学", "铁"};
      int zz15[101] = {0};
      int zz16[101][5] = {{0}, {0, 0}, {0, 10}, {0, 100}, {0, 5}, {0, 25}, {0, 70}, {0, 100}, {0, 100, 400}};
      double zz17[101]  = {0, 0, 1.12, 0, 2.5, 1.15, 1.25, 1.15, 1.15};
      bool zz31[101];
      int zz32[101] = {0, 30, 100, 300, 500, 500, 900};
      int zz33 = 1;
      int zz21[10];
      int zz22 = 0;
      int zz23 = 1;
      int zz41[1010] = {};
      int zz42[1010][5] = {};
      int zz43[1010] = {};
      int zz44;
      double bohe1 = 0;
      double mutou1 = 0;
      double keji1 = 0;
      double catli1 = 0;
      double kuangwu1 = 0;
      double tie1 = 0;
      int cat1 = 0;
      int cat2 = 0;
      int bohe2 = 5000;
      int mutou2 = 200;
      int keji2 = 500;
      int catli2 = 150;
      int kuangwu2 = 250;
      int tie2 = 100;
      bool maopi1 = false;
      double maopi = 0.0;
      bool xiangya1 = false;
      double xiangya = 0.0;
      bool xinqing1 = false;
      int xinqing = 100;
      int tim0 = 0, tim1 = 1, tim2 = 1, tim3 = 0;
      int timm1 = 0, timm2 = 0; 
      string tim[5] = {"0", "春", "夏", "秋", "冬"};
      bool h1 = true;
      
      bool pai1(int x1, int y1){
      	return shus1[x1] < shus1[y1];
      }
      
      bool pai2(int x1, int y1){
      	return shus2[x1] < shus2[y1];
      }
      
      void output(double x){
      	if(x >= 1000000){
      		x /= 1000000;
      		if((int)x != x){
      			if((int)(x * 10) / 10.0 != x){
      				printf("%.2fM", x);
      			}else{
      				printf("%.1fM", x);
      			}
      		}else{
      			cout << x << "M"; 
      		}
      	}else if(x >= 10000){
      		x /= 1000;
      		if((int)x != x){
      			if((int)(x * 10) / 10.0 != x){
      				printf("%.2fK", x);
      			}else{
      				printf("%.1fK", x);
      			}
      		}else{
      			cout << x << "K"; 
      		}
      	}else{
      		if((int)x != x){
      			if((int)(x * 10) / 10.0 != x){
      				printf("%.2f", x);
      			}else{
      				printf("%.1f", x);
      			}
      		}else{
      			cout << x; 
      		}
      	}
      }
      
      void output00(){
      	int m1 = 3;
      	if(xinqing1){
      		color(13);
      		block(1, m1);
      		cout << "                    ";
      		block(1, m1);
      		cout << "幸福度:" << xinqing << "%";
      		m1++;
      	}
      	color(15);
      	block(1, m1);
      	cout << "                    ";
      	block(1, m1);
      	cout << "猫薄荷:" ;
      	if(bohe1 > bohe2){
      		bohe1 = bohe2;
      	}
      	if(bohe1 >= bohe2 * 0.9){
      		color(14);
      	}
      	output(bohe1);
      	color(7);
      	cout << "/";
      	output(bohe2);
      	m1++;
      	color(15);
      	block(1, m1);
      	cout << "                    ";
      	block(1, m1);
      	cout << "木头:";
      	if(mutou1 > mutou2){
      		mutou1 = mutou2;
      	}
      	if(mutou1 >= mutou2 * 0.9){
      		color(14);
      	}
      	output(mutou1);
      	color(7);
      	cout << "/";
      	output(mutou2);
      	m1++;
      	if(zz31[4]){
      		color(15);
      		block(1, m1);
      		cout << "                    ";
      		block(1, m1);
      		cout << "矿物:";
      		if(kuangwu1 > kuangwu2){
      			kuangwu1 = kuangwu2;
      		}
      		if(kuangwu1 >= kuangwu2 * 0.9){
      			color(14);
      		}
      		output(kuangwu1);
      		color(7);
      		cout << "/";
      		output(kuangwu2);
      		m1++;
      	}
      	if(zz31[3]){
      		color(15);
      		block(1, m1);
      		cout << "                    ";
      		block(1, m1);
      		color(12);
      		cout << "猫力:";
      		if(catli1 > catli2){
      			catli1 = catli2;
      		}
      		if(catli1 >= catli2 * 0.9){
      			color(14);
      		}else{
      			color(15);
      		}
      		output(catli1);
      		color(7);
      		cout << "/";
      		output(catli2);
      		m1++;
      	}
      	if(zz15[5] > 0){
      		color(15);
      		block(1, m1);
      		cout << "                    ";
      		block(1, m1);
      		color(11);
      		cout << "科技点:";
      		if(keji1 > keji2){
      			keji1 = keji2;
      		}
      		if(keji1 >= keji2 * 0.9){
      			color(14);
      		}else{
      			color(15);
      		}
      		output(keji1);
      		color(7);
      		cout << "/";
      		output(keji2);
      		m1++;
      	}
      	if(cat2 > 0){
      		color(15);
      		block(1, m1);
      		cout << "                    ";
      		block(1, m1);
      		cout << "小猫:";
      		if(cat1 == cat2){
      			color(14);
      		}
      		cout << cat1;
      		color(7);
      		cout << "/" << cat2;
      		m1++;
      	}
      	if(maopi1){
      		color(15);
      		block(1, m1);
      		cout << "                    ";
      		block(1, m1);
      		color(13);
      		cout << "毛皮:";
      		color(15);
      		output(maopi);
      		m1++;
      	}
      	if(xiangya1){
      		color(15);
      		block(1, m1);
      		cout << "                    ";
      		block(1, m1);
      		color(13);
      		cout << "象牙:";
      		color(15);
      		output(xiangya);
      		m1++;
      	}
      }
      
      void output01(){
      	color(15);
      	for(int i = 4; i <= 23; i++){
      		block(20, i);
      		cout << "                         ";
      	}
      }
      
      void output02(){
      	color(15);
      	if(tim3 == 20){
      		tim3 = 0;
      		tim2++;
      	}
      	if(tim2 == 100){
      		tim2 = 0;
      		tim1++;
      	}
      	if(tim1 == 5){
      		tim1 = 1;
      		tim0++;
      	}
      	if(zz31[1]){
      		block(1, 1);
      		cout << "                    ";
      		block(1, 1);
      		cout << "第" << tim0 << "年," << tim[tim1] << "季第" << tim2 << "天";
      	}else{
      		block(1, 1);
      		cout << tim[tim1];
      	}
      }
      
      void output0(){
      	for(int i = 1; i <= hengl; i++){
      		if(i == x){
      			color(0 + 15 * 16);
      		}else{
      			color(15);
      		}
      		block(i * 8 + 20, 1);
      		cout << "       |";
      		block(i * 8 + 20, 1);
      		cout << hengs[heng[i]];
      		block(i * 8 + 20, 2);
      		cout << "-------|";
      	}
      }
      
      void output13(){
      	block(43, zz11);
      	color(15);
      	cout << "                     ";
      	block(43, zz11 + 1);
      	cout << "                     ";
      	block(43, zz11 + 2);
      	cout << "                     ";
      }
      
      void output12(int x1){
      	color(15);
      	if(shu[1][y] == 1){
      		block(43, x1);
      		cout << "1.采集";
      	}else if(shu[1][y] == 3){
      		block(43, x1);
      		cout << "1.锻造100猫薄荷";
      	}else{
      		block(43, x1);
      		cout << "1.建造";
      		int i = 1;
      		while(zz12[shu[1][y]][i] != 0){
      			block(49, x1 + i - 1);
      			output(zz12[shu[1][y]][i]);
      			cout << zz14[zz13[shu[1][y]] % (int)(pow(10, i * 2)) / (int)(pow(10, (i * 2 - 2)))];
      			i++;
      		}
      	}
      	zz11 = x1;
      }
      
      void output11(int y1){
      	for(int i = 1; i <= 5; i++){
      		if(i > shul[1]){
      			break;
      		}
      		if(y1 + i == y){
      			output12(i * 3 + 1);
      			color(0 + 15 * 16);
      		}else{
      			color(15);
      		}
      		block(25, i * 3 + 1);
      		cout << "╭——————╮";
      		block(25, i * 3 + 2);
      		cout << "|              |";
      		block(27, i * 3 + 2);
      		cout << shus[1][shu[1][y1 + i]] << "(" << zz15[shu[1][y1 + i]] << ")";
      		block(25, i * 3 + 3);
      		cout << "╰——————╯";
      	}
      }
      
      void output1(){
      	if(x != 1){
      		cout << "???";
      		Sleep(500);
      		return;
      	}
      	output13();
      	if(shul[1] <= 5){
      		output11(0);
      	}else if(y < 3) {
      		output11(0);
      	}else if(y > shul[1] - 2){
      		output11(shul[1] - 5);
      	}else{
      		output11(y - 3);
      	}
      }
      
      void output31(int x3, int y3){
      	if(x3 == y){
      		block(43, x3 * 3 + 1);
      		if(zz31[shu[3][y3]]){
      			cout << "已研发";
      		}else{
      			cout << "1.研发"; 
      			output(zz32[shu[3][y3]]);
      			cout << "科技点";
      		}
      		color(0 + 15 * 16);
      		zz33 = x3 * 3 + 1;
      	}else{
      		color(15);
      	}
      	block(25, x3 * 3 + 1);
      	cout << "╭——————╮";
      	block(25, x3 * 3 + 2);
      	cout << "|              |";
      	block(27, x3 * 3 + 2);
      	cout << shus[3][shu[3][y3]];
      	block(25, x3 * 3 + 3);
      	cout << "╰——————╯";
      }
      
      void output3(){
      	color(15);
      	block(43, zz33);
      	cout << "                       ";
      	int x3 = 1;
      	for(int i = 1; i <= shul[3]; i++){
      		output31(x3, i);
      		x3++;
      	}
      }
      
      void output2(){
      	color(15);
      	block(43, zz23);
      	cout << "                       ";
      	block(43, zz23 + 1);
      	cout << "                       ";
      	block(43, zz23 + 2);
      	cout << "                       ";
      	for(int i = 1; i <= shul[2]; i++){
      		if(i == y){
      			block(43, i * 3 + 1);
      			cout << "1.加";
      			block(43, i * 3 + 2);
      			cout << "2.减";
      			if(shu[2][i] == 4){
      				block(43, i * 3 + 3);
      				cout << "3.派出猎人";
      				if(catli1 > 199){
      					cout << "×" << (int)(catli1 / 100);
      				}
      			}
      			color(0 + 15 * 16);
      			zz23 = i * 3 + 1;
      		}else{
      			color(15);
      		}
      		block(25, i * 3 + 1);
      		cout << "╭——————╮";
      		block(25, i * 3 + 2);
      		cout << "|              |";
      		block(27, i * 3 + 2);
      		cout << shus[2][shu[2][i]] << "(" << zz21[shu[2][i]] << ")";
      		block(25, i * 3 + 3);
      		cout << "╰——————╯";
      	}
      }
      
      void output43(){
      	block(43, zz44);
      	color(15);
      	cout << "                     ";
      	block(43, zz44 + 1);
      	cout << "                     ";
      	block(43, zz44 + 2);
      	cout << "                     ";
      }
      
      void output42(int x1){
      	color(15);
      	block(43, x1);
      	cout << "1.研发";
      	zz44 = x1;
      }
      
      void output41(int y1){
      	for(int i = 1; i <= 5; i++){
      		if(i > shul[4]){
      			break;
      		}
      		if(y1 + i == y){
      			output12(i * 3 + 1);
      			color(0 + 15 * 16);
      		}else{
      			color(15);
      		}
      		block(25, i * 3 + 1);
      		cout << "╭——————╮";
      		block(25, i * 3 + 2);
      		cout << "|              |";
      		block(27, i * 3 + 2);
      		cout << shus[4][shu[4][y1 + i]];
      		block(25, i * 3 + 3);
      		cout << "╰——————╯";
      	}
      }
      
      void output4(){
      	output43();
      	if(shul[4] <= 5){
      		output41(0);
      	}else if(y < 3) {
      		output41(0);
      	}else if(y > shul[4] - 2){
      		output41(shul[4] - 5);
      	}else{
      		output41(y - 3);
      	}
      }
      
      void output_1(){
      	if(heng[x] == 1){
      		output1();
      	}else if(heng[x] == 3){
      		output3();
      	}else if(heng[x] == 2){
      		output2();
      	}
      }
      
      int main( ){
      	system("mode con cols=70 lines=25");
      	color(15);
      	HideCursor();
      	Sleep(1500);
      	cout << "欢迎来到(高仿版)猫国建设者!" << endl;
      	Sleep(1000);
      	cout << "	//本游戏原型为 https://likexia.gitee.io/cat-zh#/" << endl;
      	Sleep(500);
      	cout << "	//本游戏由XTW蒟蒻编制而成" << endl;
      	Sleep(500);
      	cout << endl << "请按任意键继续……";
      	char zzzzzzzzzzzzzzzzzzzz = getch();
      	system("cls");
      	output0();
      	output00();
      	output1();
      	while(true){
      		output00();
      		output02();
      		pan('w');
      		pan('s');
      		pan('a');
      		pan('d');
      		pan('1');
      		pan('2');
      		pan('3');
      		if(check('w')){
      			if(y > 0){
      				y--;
      				output_1();
      			}
      		}else if(check('s')){
      			if(y < shul[heng[x]]){
      				y++;
      				output_1();
      			}
      		}else if(check('a')){
      			if(y == 0 && x > 1){
      				x--;
      				output0();
      				output01();
      				output_1();
      			}
      		}else if(check('d')){
      			if(y == 0 && x < hengl){
      				x++;
      				output0();
      				output01();
      				output_1();
      			}
      		}else if(check('1')){
      			if(heng[x] == 1){
      				if(shu[1][y] == 1){
      					bohe1 += 1;
      				}else if(shu[1][y] == 3){
      					if(bohe1 >= 100){
      						bohe1 -= 100;
      						mutou1 += 1;
      					}
      				}else{
      					h1 = true;
      					int i = 1;
      					while(zz12[shu[1][y]][i] != 0){
      						if(zz13[shu[1][y]] % (int)(pow(10, i * 2)) / (int)(pow(10, (i * 2 - 2))) == 1){
      							if(bohe1 < zz12[shu[1][y]][i]){
      								h1 = false;
      								break;
      							}
      						}else if(zz13[shu[1][y]] % (int)(pow(10, i * 2)) / (int)(pow(10, (i * 2 - 2))) == 2){
      							if(mutou1 < zz12[shu[1][y]][i]){
      								h1 = false;
      								break;
      							}
      						}else if(zz13[shu[1][y]] % (int)(pow(10, i * 2)) / (int)(pow(10, (i * 2 - 2))) == 3){
      							if(kuangwu1 < zz12[shu[1][y]][i]){
      								h1 = false;
      								break;
      							}
      						}else{
      							block(1, 19);
      							cout << zz13[shu[1][y]] % (int)(pow(10, i * 2)) / (int)(pow(10, (i * 2 - 2)));
      							cout << "?????";
      							Sleep(1500);
      						}
      						i++;
      					}
      					if(h1){
      						i = 1;
      						while(zz12[shu[1][y]][i] != 0){
      							if(zz13[shu[1][y]] % (int)(pow(10, i * 2)) / (int)(pow(10, (i * 2 - 2))) == 1){
      								zz15[shu[1][y]]++;
      								bohe1 -= zz12[shu[1][y]][i];
      								zz12[shu[1][y]][i] = (int)(pow(zz17[shu[1][y]], zz15[shu[1][y]]) * zz16[shu[1][y]][i] * 100 + 0.5) / 100.0;
      							}else if(zz13[shu[1][y]] % (int)(pow(10, i * 2)) / (int)(pow(10, (i * 2 - 2))) == 2){
      								zz15[shu[1][y]]++;
      								mutou1 -= zz12[shu[1][y]][i];
      								zz12[shu[1][y]][i] = (int)(pow(zz17[shu[1][y]], zz15[shu[1][y]]) * zz16[shu[1][y]][i] * 100 + 0.5) / 100.0;
      							}else if(zz13[shu[1][y]] % (int)(pow(10, i * 2)) / (int)(pow(10, (i * 2 - 2))) == 3){
      								zz15[shu[1][y]]++;
      								kuangwu1 -= zz12[shu[1][y]][i];
      								zz12[shu[1][y]][i] = (int)(pow(zz17[shu[1][y]], zz15[shu[1][y]]) * zz16[shu[1][y]][i] * 100 + 0.5) / 100.0;
      							}
      							i++;
      						}
      						if(shu[1][y] == 4){
      							cat2 += 2;
      							catli2 += 75;
      							if(!z1[1]){
      								hengl++;
      								heng[2] = 2;
      								heng[3] = 4;
      								shul[2] = 1;
      								z1[1] = true;
      								shul[1]++;
      								shu[1][5] = 5;
      								output0();
      							}
      						}else if(shu[1][y] == 5){
      							keji2 += 250;
      							if(!z1[2]){
      								hengl++;
      								heng[3] = 3;
      								heng[4] = 4;
      								shu[2][2] = 3;
      								shul[2]++;
      								z1[2] = true;
      							}
      						}else if(shu[1][y] == 6){
      							bohe2 += 5000;
      							mutou2 += 200;
      							kuangwu2 += 250;
      						}else if(shu[1][y] == 7){
      							if(!z1[3]){
      								shul[2]++;
      								shu[2][shul[2]] = 5;
      								sort(shu[2] + 1, shu[2] + shul[2] + 1, pai2);
      								shul[1]++;
      								shu[1][shul[1]] = 8;
      								sort(shu[1] + 1, shu[1] + shul[1] + 1, pai1);
      								z1[3] = true;
      							}
      						}
      					}
      				}
      				output1();
      			}else if(heng[x] == 2){
      				if(zz22 > 0){
      					zz21[shu[2][y]]++;
      					zz22--;
      					output2();
      				}
      			}else if(heng[x] == 3){
      				if(keji1 >= zz32[shu[3][y]]){
      					zz31[shu[3][y]] = true;
      					keji1 -= zz32[shu[3][y]];
      					if(shu[3][y] == 1){
      						shul[3] = 1;
      						shu[3][1] = 2;
      						output_1();
      					}else if(shu[3][y] == 2) {
      						shul[3] = 2;
      						shu[3][1] = 3;
      						shu[3][2] = 4;
      						shu[2][2] = 2;
      						shu[2][3] = 3;
      						shul[2]++;
      						shul[1]++;
      						shu[1][6] = 6;
      					}else if(shu[3][y] == 3){
      						shu[3][y] = 5;
      						shul[2]++;
      						shu[2][shul[2]] = 4;
      						sort(shu[2] + 1, shu[2] + 1 + shul[2], pai2);
      						xinqing1 = true;
      					}else if(shu[3][y] == 4){
      						shu[3][y] = 6;
      						shul[1]++;
      						shu[1][shul[1]] = 7;
      						sort(shu[1] + 1, shu[1] + 1 + shul[1], pai1);
      					}
      					output3();
      				}
      			}
      		}else if(check('2')){
      			if(heng[x] == 1){
      				
      			}else if(heng[x] == 2){
      				if(zz21[shu[2][y]] > 0){
      					zz21[shu[2][y]]--;
      					zz22++;
      					output2();
      				}
      			}
      		}else if(check('3')){
      			if(heng[x] == 1){
      				
      			}else if(heng[x] == 2){
      				if(shu[2][y] == 4 && catli1 >= 100){
      					catli1 -= 100;
      					srand(time(NULL));
      					int sui1 = (rand() % 2001) + 3000;
      					int sui2 = (rand() % 1001);
      					int sui3 = (rand() % 3);
      					maopi1 = true;
      					maopi += sui1 / 100.0;
      					if(sui3 == 0){
      						xiangya1 = true;
      						xiangya += sui2 / 100.0; 
      					}
      				}
      			}
      		}
      		if(tim1 == 1){
      			bohe1 += zz15[2] * 0.063 * 1.5;
      		}else if(tim1 == 4){
      			bohe1 += zz15[2] * 0.063 * 0.25;
      		}else{
      			bohe1 += zz15[2] * 0.063;
      		}
      		bohe1 -= cat1 * 0.4; 
      		mutou1 += zz21[1] * 0.009 * xinqing / 100;
      		bohe1 += zz21[2] * 0.5 * xinqing / 100;
      		keji1 += zz21[3] * 0.0175 * (1 + 0.1 * zz15[5]) * xinqing / 100;
      		catli1 += zz21[4] * 0.03 * xinqing / 100;
      		kuangwu1 += zz21[5] * 0.025 * (1 + 0.2 * zz15[7]) * xinqing / 100;
      		if(maopi > 0){
      			maopi -= cat1 * 0.005;
      			if(maopi < 0){
      				maopi = 0;
      			}
      		}
      		if(xiangya > 0){
      			xiangya -= cat1 * 0.0035;
      			if(xiangya < 0){
      				xiangya = 0;
      			}
      		}
      		if(!xinqing1 && cat1 > 4){
      			xinqing1 = true;
      		}
      		xinqing = 100 - max(cat1 * 2 - 10, 0);
      		if(maopi > 0){
      			xinqing += 10;
      		}
      		if(xiangya > 0){
      			xinqing += 10;
      		}
      		if(bohe1 <= 0 && cat1 > 0){
      			timm2 = 0;
      			bohe1 = 0;
      			timm1++;
      			if(timm1 == 54){
      				cat1--;
      				if(zz22 <= 0){
      					for(int i = 1; i <= shul[2]; i++){
      						if(zz21[shu[2][i]] > 0){
      							zz21[shu[2][i]]--;
      							break; 
      						}
      					}
      				}else{
      					zz22--;
      				}
      				timm1 = 0;
      			}
      		}else{
      			timm1 = 0;
      			if(cat2 > cat1){
      				timm2++;
      				if(timm2 == 108){
      					cat1++;
      					zz22++;
      					timm2 = 0;
      				}
      			}
      		}
      		if(z1[30] == 0 && cat2 >= 8){
      			hengs[2] = "村庄";
      			z1[30]++;
      		}
      		Sleep(100);
      		tim3++;
      	}
      	return 0;
      }
      
      • @ 2022-5-4 16:21:57

        说句实话,copy 是个好东西

    • 1