教你如何用c++写2D版我的世界(1)
Helloeveryone!想必大家有时肯定会突然冒出想自己写游戏的想法,可却又不知道怎么写,从今天开始小编就教大家如何用c++编写一个2D版我的世界(如有错误,请大佬多多指出,后续我会修改,大佬勿喷ヾ(≧▽≦*)o)没错,当输出1时,代码停顿了1秒,然后清屏输出2.想必你已经猜到了,Sleep函数是使代码停顿,1000为1秒,而system函数是可以清屏的,但注意要用windows.h头文件(万
Hello everyone!想必大家有时肯定会突然冒出想自己写游戏的想法,可却又不知道怎么写,从今天开始小编就教大家如何用c++编写一个2D版我的世界(如有错误,请大佬多多指出,后续我会修改,大佬勿喷ヾ(≧▽≦*)o)
1. 标题界面
一个游戏都有一个合格的标题界面,但先别急,我们先来学两个函数——Sleep和system函数
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main()
{
cout<<1;
Sleep(1000);
system("cls");
cout<<2;
return 0;
}
把以上代码运行,会发生什么?
没错,当输出1时,代码停顿了1秒,然后清屏输出2.想必你已经猜到了,Sleep函数是使代码停顿,1000为1秒,而system函数是可以清屏的,但注意要用windows.h头文件(万能不行)
这样,我们就可以实现一个游戏的界面了:
#include<bits/stdc++.h>
#include<windows.h>
#include<conio.h>
using namespace std;
int main()
{
//初始菜单
string s="| MINCRAFT 2D |";
string s1="| by Tony |";
string s2="| Pleas type 'p' start the game... |";
string s3="| Type 'o' exit the game.|";
cout<<"@----------------------------------------------------------@"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
for(int i=0;i<s.size();i++){
cout<<s[i];
Sleep(10);//Sleep函数延长时间
}
cout<<endl;
for(int i=0;i<s1.size();i++){
cout<<s1[i];
Sleep(10);
}
cout<<endl;
for(int i=0;i<s2.size();i++){
cout<<s2[i];
Sleep(10);
}
cout<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
for(int i=0;i<s3.size();i++){
cout<<s3[i];
Sleep(10);
}
cout<<endl;
cout<<"| |"<<endl;
cout<<"@----------------------------------------------------------@"<<endl;
return 0;
}
运行后是这样的:
如果你觉得窗口太大了,你可以用system函数的另一个功能:
system("mode con cols=60 lines=37");//设置窗口大小
没错,设置窗口大小,cols指宽,lines指高,可以随意调整。
然后代码就成了:
#include<bits/stdc++.h>
#include<windows.h>
#include<conio.h>
using namespace std;
int main()
{
system("mode con cols=60 lines=37");//设置窗口大小
//初始菜单
string s="| MINCRAFT 2D |";
string s1="| by Tony |";
string s2="| Pleas type 'p' start the game... |";
string s3="| Type 'o' exit the game.|";
cout<<"@----------------------------------------------------------@"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
for(int i=0;i<s.size();i++){
cout<<s[i];
Sleep(10);//Sleep函数延长时间
}
cout<<endl;
for(int i=0;i<s1.size();i++){
cout<<s1[i];
Sleep(10);
}
cout<<endl;
for(int i=0;i<s2.size();i++){
cout<<s2[i];
Sleep(10);
}
cout<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
for(int i=0;i<s3.size();i++){
cout<<s3[i];
Sleep(10);
}
cout<<endl;
cout<<"| |"<<endl;
cout<<"@----------------------------------------------------------@"<<endl;
return 0;
}
效果:
这样就显得很美观了。( •̀ ω •́ )✧
就是最上面的未命名1有点刺眼,没事,system函数永远能帮你:
system("title Minecraft");//标题
这样标题就成了:
最后上完整代码:
#include<bits/stdc++.h>
#include<windows.h>
#include<conio.h>
using namespace std;
int main()
{
system("title Minecraft");//标题
system("mode con cols=60 lines=37");//设置窗口大小
//初始菜单
string s="| MINCRAFT 2D |";
string s1="| by Tony |";
string s2="| Pleas type 'p' start the game... |";
string s3="| Type 'o' exit the game.|";
cout<<"@----------------------------------------------------------@"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
for(int i=0;i<s.size();i++){
cout<<s[i];
Sleep(10);//Sleep函数延长时间
}
cout<<endl;
for(int i=0;i<s1.size();i++){
cout<<s1[i];
Sleep(10);
}
cout<<endl;
for(int i=0;i<s2.size();i++){
cout<<s2[i];
Sleep(10);
}
cout<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
for(int i=0;i<s3.size();i++){
cout<<s3[i];
Sleep(10);
}
cout<<endl;
cout<<"| |"<<endl;
cout<<"@----------------------------------------------------------@"<<endl;
return 0;
}
效果q(≧▽≦q):
今天就写到这了,如有时间,我就会快速更新下一篇(文章如有问题,请指出)( •̀ ω •́ )✧
下期预告:如何用c++写我的世界wasd人物控制。
更多推荐
所有评论(0)