用C++做一个简单的传奇

编程入门 行业动态 更新时间:2024-10-24 16:23:41

用C++<a href=https://www.elefans.com/category/jswz/34/1770767.html style=做一个简单的传奇"/>

用C++做一个简单的传奇

这个是用控制台输出的,能实现基础功能:刷怪,打怪的功能(装备目前没做好)

#include <stdio.h>
#include <conio.h>
#include <windows.h>//创建地图
char map[50][50] = {"#################################################","#O                                              #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#                                               #","#################################################",};
//隐藏光标
void Hide()
{HANDLE hOut;CONSOLE_CURSOR_INFO	curInfo;hOut=GetStdHandle(STD_OUTPUT_HANDLE); curInfo.dwSize=1;curInfo.bVisible=0;SetConsoleCursorInfo(hOut,&curInfo);
}
//开始界面
void Start() {printf("\n \n     欢迎来到传奇");printf("\n \n     请按任意键开始");getch();system("cls");
}
//字体设置
void SetFont(int size) {CONSOLE_FONT_INFOEX cfi;cfi.cbSize = sizeof cfi;cfi.nFont = 0;cfi.dwFontSize.X = 0;cfi.dwFontSize.Y = size;cfi.FontFamily = FF_DONTCARE;cfi.FontWeight = FW_NORMAL;wcscpy_s(cfi.FaceName, L"Microsoft YaHei UI");SetCurrentConsoleFontEx(GetStdHandle(STD_OUTPUT_HANDLE), FALSE, &cfi);
}
int main() {SetFont(30);Hide();Start();int x,y;x=1,y=1;char key;int money = 100;//初始化地图for (int i = 0;i <= 22;i++){puts(map[i]);}//初始化提示printf("按P刷怪物    ");printf("按K消灭怪物    ");//键盘输入,移动操作while(1) {key = getch();if (key == 'w'){if (map[x-1][y] == ' '){map[x][y] = ' ';x--;map[x][y] = 'O';}}if (key == 's'){if (map[x+1][y] == ' '){map[x][y] = ' ';x++;map[x][y] = 'O';}}if (key == 'a'){if (map[x][y-1] == ' '){map[x][y] = ' ';y--;map[x][y] = 'O';}}if (key == 'd'){if (map[x][y+1] == ' '){map[x][y] = ' ';y++;map[x][y] = 'O';}}//刷怪物if (key == 'p'){int px = rand()%22;int py = rand()%42;map[px][py] = 'Z';}//消灭怪物if (key == 'k'){if (map[x][y+1] == 'Z'){map[x][y+1] = ' ';money += 50;}else if (map[x][y-1] == 'Z'){map[x][y-1] = ' ';money += 50;}else if (map[x+1][y] == 'Z'){map[x+1][y] = ' ';money += 50;}else if (map[x-1][y] == 'Z'){map[x-1][y] = ' ';money += 50;}}system("cls");//循环输出地图for (int i = 0;i <= 22;i++){puts(map[i]);}//提示printf("按P刷怪物    ");printf("按K消灭怪物     ");}
}

更多推荐

用C++做一个简单的传奇

本文发布于:2024-02-10 23:11:48,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1677846.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:做一个   简单   传奇

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!