学习制作游戏--Card Game
cfan_yjr
2020-03-28
这个游戏开发中,我们需要先做一个游戏开发文档,用来描述游戏规则,目标和原理,可能的话,也可以添加游戏背景,角色描述等内容。
规则
- 游戏是有时间限制的,玩家需要在时间用完前完成目标。
- 玩家一回合只能翻开两张。
- 纸牌匹配的条件是前面的图形是一样的。
- 如果玩家发现了所有的纸牌,游戏就结束。
- 如果时间用完,游戏就结束。
- 玩家可以在任何时候重置游戏,重新开始游戏。
从上面的游戏规则上,我们需要实现下面的内容:
- 纸牌:游戏的要素。可以翻,有两面和不同的类型。
- 桌面:收集纸牌。
- 时间:计算用时,可以重置。
- 游戏控制者:一个对象,用于检查规则和胜利条件。
GameMaker:Studio 2上我们用鼠标点击进行翻转纸牌。当纸牌翻过来后,记录下图形用于和第二个纸牌比对。第一个纸牌将显示正面直到点第二个纸牌。翻译成GML的代码就是,我们需要一个obj_card 游戏对象设置两个事件。
- Create:纸牌初始化参数信息
- Left Pressed:写入翻转和选择的代码
首先,我们要有几个纸牌素材,8个纸牌的正面和1个背面。用变量0到7来代码它们。用数组来把变量记录下来。
一维数组
二维数组
数组对于信息的整合,有很大的用处。比如,菜单,RPG状态,道具栏等。
在Create事件里添加下面的代码
1 // Initializing the main properties for a card object
2 index = noone; // the position of the card in the deck
3 type = 0; // associates the card with its sprite (0-7)
4 face = 1; // the face the card is showing (0 = back,1 = front)
这样我们就初始化了纸牌的参数。
(转发自:原日志地址)