之前,我偶看到 FAL 利用 Processing/p5.js 制作的一些迷你小游戏(倘若你对此感兴趣,请点击这里)。Simple but fun,这亦让我萌生了学习制作游戏的念头。文学、音乐、舞蹈、雕塑、绘画、建筑、戏剧、电影,“Game”作为备受争议的第九艺术,其优势在于,它是可以是多项艺术的结合。当然,我不想在此讲这些套话,而仅仅是尝试以一个游戏制作初学者的身份,just do it!

黄金矿工是一款什么游戏?如若你并不知晓,你可以看看度娘怎么说。而最好地是,Let’s play games together。当然,你也有更多的选择,根据这个案例,尝试编写自己的游戏。

So,我们该怎么做“Gold Miner”?
首先,我们得梳理一下自己的思路。这是我做的一张“Gold Miner”项目的简易流程图:

游戏开发者的思路清晰十分重要,如若不然,你可以先观看运行效果或者运行一下我已编写好的代码,这样对你会有帮助。
以下是本文的目录大纲:
- GameMain
- GamePlay
- GameWin
- GameLost
- Others
- Last…
好吧,just do it!
####GameMain
在这里,游戏主界面只有一个简单的功能——实现主界面与游戏界面之间的切换。因此,我们只需制作一个按钮即可。

######代码1 主界面实现:
void draw() {
if (condition==0) { // 游戏初始界面
image(pic1, 0, 0);
image(button1, 600, 300);
}
}
void mousePressed() {
if (mouseButton == LEFT&&dist(665, 360, mouseX, mouseY)<50) { // 切换到开始游戏界面
condition=1;
}
}
注:condition 这个 int 型的参数,即用于界面间切换。condition=0:主界面;condition=1:目标分数界面;condition=2:游戏进行界面;condition=3:胜利界面;
condition=4:游戏失败界面。
####GamePlay
游戏界面是整个游戏的核心,它包括了目标分数界面和游戏进行界面。相对于其他界面而言,游戏 UI 比较复杂,除了背景与角色、金矿等的绘制,还要处理游戏时满足胜利与失败条件的事件。


为了让条理更加清楚,我们将一步一步地来实现它:
第一步,添加游戏 UI。condition=1 时,绘制目标分数界面;condition=2 时,绘制游戏进行界面。
######代码2 添加游戏 UI:
void draw() {
if (condition==1) { // 开始游戏界面
image(pic2, 0, 0);
image(object1, width/2-object1.width/2, 0);
image(button2, width/2-button2.width/2, 360);
fill(#98295F);
tex

本文介绍了如何利用Processing编程语言开发黄金矿工小游戏。从GameMain到GameWin和GameLost,详细阐述了游戏界面设计、核心游戏逻辑、胜利与失败条件、升级系统以及音效的实现。通过逐步解析代码,帮助读者理解游戏开发过程。

5394

被折叠的 条评论
为什么被折叠?



