欢迎转载,请注明出处
存档更新,可以存档了!!!!
存档后会有一个文件在与你存放主程序一样的目录,请勿删除!
农场耕种部分下次编写(1.2.1(std1))
如果有bug,评论区见………………
#include<iostream>
#include<cstring>
#include<algorithm>
#include<unistd.h>
#include<bits/stdc++.h>
using namespace std;
#include<windows.h>
#define cls system("cls")
void x();
void xx();
void linchang();
void kuangdong();
void baoxiang();
void beibao();
void hecheng();
void vip();
void hall();
void shangchang();
void bgf();
void nongchang();
void dacaochang();
void xinxi();
void yelianchang();
void out(int x);
bool has_gzt,has_bx,has_rl;
int td;
int vip_money=2e9,money=100;
/*
1.原木
2.木板
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果
10.小麦
11.小麦种子
12.铁矿
13.石头
14.煤
15.火把
16.金矿
17.钻石
18.钻石矿
19.熔炉
20.石剑
21石稿
22石斧
23石锄
24铁剑
25铁稿
26铁斧
27铁锄
28钻石剑
29钻石稿
30钻石斧
31钻石锄
*/
string names[10000]={"","原木","木板","工作台","木棍","木剑","木稿","木锄","木斧","苹果","小麦","小麦种子","铁矿","石头","煤","火把","金矿","钻石","钻石矿","熔炉","石剑","石稿","石斧","石锄","铁剑","铁稿","铁斧","铁锄","钻石剑","钻石稿","钻石斧","钻石锄","铁锭","金锭"};
int number[10000];
void bgf()
{
cout<<"暂时不开放";
sleep(1);
hall();
}
int rand(int l,int r)
{
return rand()%(r-l+1)+l;
}
void x(string n)
{
for(int i=0;i<n.size();i++)
{
cout<<n[i];
usleep(3000);
}
cout<<endl;
}
void xx(string n)
{
for(int i=0;i<n.size();i++)
{
cout<<n[i];
usleep(3000);
}
}
void linchang()
{
cls;
x("1.砍树");
x("2.回主界面");
int x1;
cin>>x1;
if(x1==2)
{
hall();
return;
}
while(1)
{
cls;
x("0.回主界面");
x("请问您要砍几棵树");
int xx;
cin>>xx;
if(xx==0)
{
hall();
break;
}
x("砍树中……");
int res1=0;
int res2=0;
for(int i=1;i<=xx;i++)
{
sleep(1),res1++;
if(rand(1,4)==3) res2++;
}
number[1]+=res1;
number[9]+=res2;
cout<<"你获得了"<<res1<<"个原木"<<endl<<res2<<"个苹果"<<endl<<"-------------"<<endl<<"两秒后退出";
sleep(2);
}
hall();
}
void kuangdong()
{
cls;
x("欢迎来到大陆的唯一一个矿洞,这里有许许多多的矿,都有一定的概率挖到,具体概率见主界面的信息板块");
x("您要挖几个随机矿石?");
int xx;
cin>>xx;
cout<<"挖矿中......";
int res1=0,res2=0,res3=0,res4=0,res5=0;
for(int i=1;i<=xx;i++)
{
cout<<"还剩"<<xx-i+1<<"个随机矿石";
Sleep(7500);
int tt=rand()%36+1;
if(tt<=18) res1++;
else if(tt<=30) res2++;
else if(tt<=32) res3++;
else if(tt<=35) res4++;
else res5++;
}
cout<<"你获得了\n"<<res1<<"个石头\n"<<res2<<"个煤\n"<<res3<<"个金矿\n"<<res4<<"个铁矿\n"<<res5<<"个钻石";
number[13]+=res1;
number[14]+=res2;
number[16]+=res3;
number[12]+=res4;
number[18]+=res5;
sleep(2);
hall();
}
/*
x("矿洞:\n挖一个需要5秒,石头1/2,煤1/3,金矿1/18,铁矿3/36,钻石1/36");
1.原木
2.木板
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果
10.小麦
11.小麦种子
12.铁矿
13.石头
14.煤
15.火把
16.金矿
17.钻石
18.钻石矿
*/
void baoxiang()
{
cls;
if(has_bx) x("你已经拿过宝箱了!");
else
{
int a=rand(1,5);
money+=a*50;
xx("你获得了"),cout<<a*50,xx("元");
has_bx=1;
}
sleep(2);
hall();
}
void beibao()
{
cls;
xx("您有钱");
cout<<money;
x("元");
for(int i=1;i<10000;i++)
if(number[i]!=0&&names[i]!="")
cout<<names[i]<<" "<<number[i]<<endl;
sleep(2);
hall();
}
void hecheng()
{
cls;
x("请输入编号");
if(number[1]>0) cout<<"1.原木1个->木板4个\n";
if(number[2]>=2) cout<<"2.木板2个->木棍4个\n";
if(number[2]>=4) cout<<"3.木板4个->一个工作台\n";
if(number[2]>=2&&number[4]>0&&has_gzt) cout<<"4.木板2个+木棍1个->木剑1个\n";
if(number[2]>=3&&number[4]>=2&&has_gzt) cout<<"5.木板3个+木棍2个->木稿1个\n";
if(number[2]>=3&&number[4]>=2&&has_gzt) cout<<"6.木板3个+木棍2个->木斧1个\n";
if(number[2]>=2&&number[4]>=2&&has_gzt) cout<<"7.木板2个+木棍2个->木锄1个\n";
if(number[13]>=8&&has_gzt) cout<<"8.石头8个->熔炉一个\n";
if(number[13]>=2&&number[4]>0&&has_gzt) cout<<"9.石头2个+木棍1个->石剑1个\n";
if(number[13]>=3&&number[4]>=2&&has_gzt) cout<<"10.石头3个+木棍2个->石稿1个\n";
if(number[13]>=3&&number[4]>=2&&has_gzt) cout<<"11.石头3个+木棍2个->石斧1个\n";
if(number[13]>=2&&number[4]>=2&&has_gzt) cout<<"12.石头2个+木棍2个->石锄1个\n";
if(number[32]>=2&&number[4]>0&&has_gzt) cout<<"13.铁2个+木棍1个->铁剑1个\n";
if(number[32]>=3&&number[4]>=2&&has_gzt) cout<<"14.铁3个+木棍2个->铁稿1个\n";
if(number[32]>=3&&number[4]>=2&&has_gzt) cout<<"15.铁3个+木棍2个->铁斧1个\n";
if(number[32]>=2&&number[4]>=2&&has_gzt) cout<<"16.铁2个+木棍2个->铁锄1个\n";
if(number[17]>=2&&number[4]>0&&has_gzt) cout<<"17.钻石2个+木棍1个->钻石剑1个\n";
if(number[17]>=3&&number[4]>=2&&has_gzt) cout<<"18.钻石3个+木棍2个->钻石稿1个\n";
if(number[17]>=3&&number[4]>=2&&has_gzt) cout<<"19.钻石3个+木棍2个->钻石斧1个\n";
if(number[17]>=2&&number[4]>=2&&has_gzt) cout<<"20.钻石2个+木棍2个->钻石锄1个\n";
if(number[4]>0&&number[14]>0) cout<<"21.木棍一个+煤一个->火把一个\n";
int x,y;
cin>>x;
if(x==1) number[1]--,number[2]+=4;
if(x==2) number[2]-=2,number[4]+=4;
if(x==3&&!has_gzt) number[2]-=4,number[3]++,has_gzt=1;
if(x==4) number[2]-=2,number[4]-=1,number[5]++;
if(x==5) number[2]-=3,number[4]-=2,number[6]++;
if(x==6) number[2]-=2,number[4]-=2,number[8]++;
if(x==7) number[2]-=2,number[4]-=2,number[7]++;
if(x==8&&!has_rl) number[13]-=8,number[19]++,has_rl=1;
if(x==9) number[13]-=2,number[4]-=1,number[20]++;
if(x==10) number[13]-=3,number[4]-=2,number[21]++;
if(x==11) number[13]-=2,number[4]-=2,number[22]++;
if(x==12) number[13]-=2,number[4]-=2,number[23]++;
if(x==13) number[32]-=2,number[4]-=1,number[24]++;
if(x==14) number[32]-=3,number[4]-=2,number[25]++;
if(x==15) number[32]-=2,number[4]-=2,number[26]++;
if(x==16) number[32]-=2,number[4]-=2,number[27]++;
if(x==17) number[17]-=2,number[4]-=1,number[28]++;
if(x==18) number[17]-=3,number[4]-=2,number[29]++;
if(x==19) number[17]-=2,number[4]-=2,number[30]++;
if(x==20) number[17]-=2,number[4]-=2,number[31]++;
cout<<"兑换成功!";
sleep(1);
hall();
}
/*
x("矿洞:\n挖一个需要5秒,石头1/2,煤1/3,金矿1/18,铁矿3/36,钻石1/36");
1.原木
2.木板
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果
10.小麦
11.小麦种子
12.铁矿
13.石头
14.煤
15.火把
16.金矿
17.钻石
18.钻石矿
19.熔炉
20.石剑
21石稿
22石斧
23石锄
24铁剑
25铁稿
26铁斧
27铁锄
28钻石剑
29钻石稿
30钻石斧
31钻石锄
32.铁
*/
void vip()
{
cls;
x("请输入密码");
string ss;
cin>>ss;
if(ss[0]=='g'&&ss[1]=='z'&&ss[2]=='a'&&ss[3]=='1'&&ss[4]=='2'&&ss[5]=='3'&&ss[6]=='4'&&ss[7]=='5'&&ss[8]=='6')
{
money=vip_money;
hall();
}
else
{
hall();
}
}
void hall()
{
cls;
x("我的世界alpha1.2.1(pre1)版本(农场更新)");
x("1.林场");
x("2.矿洞");
x("3.商场");
x("4.打草场");
x("5.冶炼场");
x("6.农场");
x("7.宝箱");
x("8.背包");
x("9.合成");
x("10.VIP密码输入");
x("11.关于本游戏的信息");
x("12.载入存档");
x("13.存档并退出");
x("请输入编号");
int x;
cin>>x;
if(x==1) linchang();
else if(x==2) kuangdong();
else if(x==3) shangchang();
else if(x==4) dacaochang();
else if(x==5) yelianchang();
else if(x==6) nongchang();
else if(x==7) baoxiang();
else if(x==8) beibao();
else if(x==9) hecheng();
else if(x==10) vip();
else if(x==11) xinxi();
else if(x==12) out(1);
else if(x==13) out(2);
else cout<<"错误编号!",sleep(1),hall();
}
void shangchang()
{
cls;
x("你要买(1)还是卖(2)?");
int t;
cin>>t;
if(t==1)
{
x("本商店只卖原料,自己去合成");
x("1.原木 15元一个");
x("2.木棍 12元一个");
int tt;
cin>>tt;
if(tt==1)
{
if(money>=15) money-=15,number[1]++;
else cout<<"你不能买!";
}
else if(tt==2)
{
if(money>=12) money-=12,number[4]++;
else cout<<"你不能买!";
}
}
else
{
x("1.原木 14元一个");
x("2.木棍 11元一个");
int tt;
cin>>tt;
if(tt==1)
{
if(number[1]==0) cout<<"你不能卖!";
else money+=14,number[1]--;
}
else if(tt==2)
{
if(number[1]==0) cout<<"你不能卖!";
else money+=14,number[4]--;
}
}
hall();
}
void nongchang()
{
cls;
x("欢迎来到本世界最大的农场,您一共有");
if(number[6]>0) printf("1.木锄 %d个",number[6]);
if(number[23]>0) printf("2.石锄 %d个",number[23]);
if(number[27]>0) printf("3.铁锄 %d个",number[27]);
if(number[31]>0) printf("4.钻石锄 %d个",number[31]);
if(number[6]==number[23]&&number[23]==number[27]&&number[27]==number[31]&&number[31]==0) cout<<".\n.\n.\n",sleep(1),cout<<"你没有锄头,还来这里干啥?",hall();
else
{
x("请输入锄头编号");
int xx;
cin>>xx;
int speed=xx;
cls;
x("请输入您要锄的土地的个数");
int yy;
cin>>yy;
for(int i=1;i<=yy;i++)
{
cout<<"还剩"<<yy-i+1<<"个\n";
Sleep(1000/xx);
cls;
}
cout<<"锄好了,您获得了"<<yy<<"个锄好的土地\n";
td+=yy;
sleep(2);
cls;
hall();
}
}
/*
x("矿洞:\n挖一个需要5秒,石头1/2,煤1/3,金矿1/18,铁矿3/36,钻石1/36");
1.原木
2.木板
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果
10.小麦
11.小麦种子
12.铁矿
13.石头
14.煤
15.火把
16.金矿
17.钻石
18.钻石矿
19.熔炉
20.石剑
21石稿
22石斧
23石锄
24铁剑
25铁稿
26铁斧
27铁锄
28钻石剑
29钻石稿
30钻石斧
31钻石锄
32.铁锭
33.金锭
*/
void dacaochang()
{
cls;
x("欢迎来到打草场,这里有许许多多的草,打草有一定的概率掉落小麦种子,可以在农场中种植");
sleep(2);
cls;
x("你要打几棵草?");
int xt,s=0;
cin>>xt;
cls;
for(int i=1;i<=xt;i++)
{
cls;
cout<<"打草中,还剩";
cout<<xt-i+1;
cout<<"秒";
if(rand()%3==0) s++;
sleep(1);
}
cls;
xx("你打到了");
cout<<s;
xx("个小麦种子");
number[11]+=s;
sleep(1);
hall();
}
void xinxi()
{
cls;
x("打草掉落小麦种子概率:1/3");
x("挖木头掉落苹果概率:1/4,挖一个木头1秒");
x("矿洞:\n挖一个需要7.5秒,石头1/2,煤矿1/3,金矿1/18,铁矿3/36,钻石1/36");
x("现在还有农场耕种部分未编写");
x("本游戏版本为alpha1.2.1(pre1),后续更新版本需等待");
sleep(2);
hall();
}
void yelianchang()
{
cls;
if(has_rl)
{
x("你总算有熔炉了,快来炼矿吧!");
x("你可以炼成");
for(int i=1;i<=5;i++) xx("."),Sleep(0.1);
cout<<"1."<<number[12]<<"个铁矿"<<endl<<"2."<<number[16]<<"个金矿"<<endl;
cout<<"输入编号|_|(空格)数量,如1 2表示炼两个铁矿";
int a,b;
cin>>a>>b;
if(a==1)
{
if(b>=1&&b<=number[12]) number[12]-=b,number[32]+=b;
else cout<<"厂长:小子,没有这么多矿还想来诈骗,哼,你的电脑即将关机!(假)";
}
else
{
if(b>=1&&b<=number[16]) number[16]-=b,number[33]+=b;
else cout<<"厂长:小子,没有这么多矿还想来诈骗,哼,你的电脑即将关机!(假)";
}
cout<<"冶炼成功!";
}
else x("厂长:小子,没有熔炉还想来冶炼场?痴人做梦!哼,你的电脑即将关机!(假)");
hall();
}
void out(int x)
{
if(x==2)
{
ofstream ocout;
ocout.open("游戏数据(误删).txt");
ocout<<has_gzt<<' '<<has_rl<<' '<<has_bx<<' '<<td<<' '<<money;
ocout<<endl;
for(int i=1;i<10000;i++)
if(names[i]!="")
ocout<<number[i]<<endl;
ocout.close();
}
else
{
ifstream icin;
icin.open("游戏数据(误删).txt");
icin>>has_gzt>>has_rl>>has_bx>>td>>money;
for(int i=1;i<10000;i++)
if(names[i]!="")
icin>>number[i];
icin.close();
hall();
}
}
int main(){
srand(time(NULL));
cls;
hall();
}
tql,支持
qpzc
所以都这么久了为什么没人评论