Cocos Creator | 飞刀大乱斗开发教程系列(一)

预览效果

具体内容

■ 这一期,主要讲解主页下方列表选项如何实现。也就是游戏开始后,加载所有现有的英雄列表,这一功能的实现,如下图部分。

■ 列表使用 ScrollView 实现,横向滚动,设置好上下左右的边距、选项之间的间距,内容部分使用 Layout 来做自动排版,最终列表显示内容,如上图所示即可。

■ 重点是列表中的英雄预制体。预制体一共有三种状态:已解锁、使用中、未解锁。具体显示效果如下图所示。游戏中存储每一级英雄的状态,根据状态数据,绘制英雄列表显示。

状态的显示控制

■ 如上所述,一共有三种状态,理论上,游戏开始时,只有第一关是解锁的,后面的关卡根据游戏的进行,不断的开启。预制的状态由一个变量控制,不同值表示不同状态。

■ 预制节点下,留有不同状态的根节点,根据英雄不同的状态,控制不同状态的节点显示以达到状态变化的效果。

英雄武器显示控制

■ 英雄和武器,都是总共 12 个等级,根据不同的等级,选择对应的英雄和武器纹理,进行纹理的动态更新即可,下图中的英雄有两种状态,后期操作需要用到,目前可以忽视 _p 结尾的, _n 是这次需要用到的。

■ 武器和英雄,都依托在一个精灵上,对应的纹理,使用纹理数据存储即可,为了方便,会按照等级顺序存储,这样方便取出等级纹理图片。

英雄选择控制

■ 因为在游戏过程中,一次只能使用一个英雄,所以使用中状态的英雄,永远只会有一个。而且,未解锁的英雄,是无法使用的,点击也需要做特别处理。

■ 如上图代码,在选择的时候,需要判断新选择的是否和之前的一样,这种不需要做处理;如果获取到新选择的英雄未解锁,目前是没有做其他任何处理的。

■ 添加英雄的时候,需要给每个预制体注册一个回调函数,预制体点击的时候,会调用注册的函数,为了获取点击的节点,需要把预制体本身节点传递出来。

加载英雄列表

■ 游戏一开始,根据英雄列表数据,绘制英雄列表,数据单机的,存储在内存。存储的数据包括:各等级的英雄名称,状态信息,后续游戏过程中,触发某些条件,再更新对应数据,重新绘制列表即可,如果有需要,也可以存储起来,目前是用来学习的 demo,就暂时用全局变量存储。

你可能感兴趣的:(Cocos Creator | 飞刀大乱斗开发教程系列(一))