写点什么

趣味俄罗斯游戏开发心得

  • 2022 年 8 月 28 日
    广东
  • 本文字数:1428 字

    阅读完需:约 5 分钟

前言


在完成做趣味俄罗斯方块过程中 我是打算自己设计游戏区和操作提示区的,用 c++开发的 easyX 来实现的 但是我发现一个又快又好看的方法,(画图工具终于被我用上了🤦‍♂️)


更新时间: 2022、5、11 、16:11


演示视频传送门传送门


源码见:


gitee: 传送门0 积分 可直接下载:传送门


完整源码以及讲解见:


文章: 传送门


绘图部分源码展示:


#define _CRT_SECURE_NO_WARNINGS#include"UI.h"
//设置图片类IMAGE BeginImage;IMAGE GameImage;//游戏欢迎界面void UI_WelcomeView(){ initgraph(700, 500); setbkmode(TRANSPARENT); putimage(0, 0, &BeginImage);
setcolor(BLACK); settextstyle(45, 0, _T("楷体")); outtextxy(150, 150, "Welcome to the Game");
settextstyle(18, 0, _T("仿宋")); setcolor(RGB(20, 20, 120)); outtextxy(230, 460, "--按空格键开始游戏--");
Sleep(1000);
}
//游戏开始倒计时函数void UI_StartView(){ closegraph(); //存放num转化字符 并留一个‘/0’所以str[2]长度为2 char str[2] = { 0 };
//创建游戏窗口 initgraph(InterfaceX, InterfaceY);
//字体大小及风格 settextstyle(30, 0, _T("仿宋")); //文字输出 outtextxy(110, 180, "俄罗斯方块开始倒计时"); //倒计时 for (int num = 3; num > 0; num--) { //整数 _itoa_s(num, str,10); //sprintf(str, "%c", num); outtextxy(240, 480, str); //延时 Sleep(1e3); //1-1ms } }

//显示游戏主界面void UI_GameView(){ //清屏函数 cleardevice(); //必须要先清屏,不然会报错 // //显示图片背景 setbkmode(TRANSPARENT); putimage(0, 0, &GameImage);
//字体大小及风格 settextstyle(20, 0, _T("仿宋")); /* //游戏区域 rectangle(GameViewX_1, GameViewY_1, GameViewX_2, GameViewY_2); //操作说明框 rectangle(GameOperaX_1, GameOperaY_1, GameOperaX_2, GameOperaY_2); //分数 级别框 rectangle(GameScoreX_1, GameScoreY_1, GameScoreX_2, GameScoreY_2); //显示下一个方块框 rectangle(GameRemindX_1, GameRemindY_1, GameRemindX_2, GameRemindY_2); */ //文本提示框 outtextxy(350,195,"下一个方块"); settextcolor(RED); outtextxy(380,260,"分数"); outtextxy(393,285,'0'); outtextxy(380,315,"等级"); outtextxy(393,340,'0');
//操作说明 //颜色也可以用RGB红绿蓝RGB(225,225,225)和十六进制一样的 settextcolor(RGB(150,105,204)); outtextxy(337,410,"操作说明:"); outtextxy(337,440,"←:向左移动"); outtextxy(337,470,"↓:向下移动"); outtextxy(337,500,"→:向右移动"); outtextxy(337,530,"↑:向上移动"); outtextxy(337,560,"Space:方块旋转");

}
//加载图片void UI_LoadImage(){ loadimage(&BeginImage, "img/R-C (2).jpg",700,500,1); loadimage(&GameImage, "img/back1.jpg",500,610,1);}
复制代码


这是自己用文本输出各种函数做到的页面:



这是用画图工具按照所需像素绘图,甚至不用输出文本函数,直接在绘图中用文本输出,而且比较美观简洁。



可以直接少打几十行代码,并且不用费劲脑筋考虑页面坐标,当时精心设计每个像素🤯真的很麻





总结一下:


游戏开发,还是很好玩的哈哈哈,很多地方都看你的创新思维,总体游戏逻辑实现了其实 后面按照需求 增加功能就比较简单了。

用户头像

还未添加个人签名 2022.08.13 加入

还未添加个人简介

评论

发布
暂无评论
趣味俄罗斯游戏开发心得_8月月更_计算机魔术师_InfoQ写作社区