初次使用Construct2写鼠标操作型射击游戏

来源:互联网 发布:淘宝挖掘冷门暴利行业 编辑:程序博客网 时间:2024/06/11 23:21

初次使用Construct2写鼠标操作型射击游戏

引言

目前Construct 2成为排名最受欢迎的HTML5跨平台开发工具之首,入门简单快速上手,即使是对编程一无所知的人也可以用它很快地做出作品来,确实是一门可以迅速提升程序员游戏开发兴趣的一款软件,因此,我也来试着从中找到游戏开发的乐趣。

本文以试着开发一个简单的鼠标操作型射击游戏的过程来简单介绍一下Construct2的使用方法,只是希望通过几个基础的操作来起到引导的作用,具体更深奥复杂的使用留给各位读者自己摸索探究。

该游戏效果图:

效果图

目录

  • 初次使用Construct2写鼠标操作型射击游戏
    • 引言
    • 目录
    • 开发前准备
      • 下载安装
      • 素材的准备
    • 界面介绍
      • Layout
      • Properties
      • Layers
      • Objects
      • Event sheet
    • 进行开发
      • 新建项目
      • 修改游戏地图尺寸
      • 修改画面尺寸
      • 添加背景
      • 添加其他对象
      • 让player随鼠标移动
      • 让player发射子弹
      • 添加敌人并让敌人发射子弹
      • 添加碰撞事件
      • 添加得分情况
      • 添加进阶事件
    • 结语

开发前准备

下载安装

到官方网站上下载并安装Construct2软件。

素材的准备

在进行游戏开发前首先对自己想要开发的游戏有一个初步的构思和规划,然后再进行素材的收集,博主在网上找了一张适合做该游戏的背景图片,再用ps画了几个简单的图案作为该游戏的主要对象,完成开发前的素材准备。

素材

界面介绍

Layout

布局,这里是游戏画面的布局,白框的范围就是游戏的整个活动范围,而虚线框内的范围就是显示屏上显示的画面范围,它们的大小都可以通过properties栏进行调整。

Layout

Properties

特性,在这里可以对所有添加对象的属性,包括背景和游戏画面的尺寸进行修改,而对于一个对象比较重要的一个特性Behaviour也可以在这里找到。(下图还没有对象,所以没有Behaviour)

Properties

Layers

层,类似于ps里的图层,每一个图层间都是平行的关系,可以在点击“加号”进行添加Layer,每个Layer可以单独锁定起来,可以防止在修改其他Layer对象的时候把某一对象误删了或误改了,另外不同的Layer有不同的显示级别,Layer越高,就放在越顶层,而下层的对象有可能被上层的对象所遮挡(这个应该是和ps类似的)。

Layers

Objects

对象,所添加对象都会出现在这里。

Objects

Event sheet

事件表,Construt2中实现游戏功能最重要的一个区域,这里相当于人体内部的心脏,也就是“写代码”的地方。在这里给对象添加的每一个事件可以赋予游戏对象一个功能,具体一些事件怎么用下面再详细介绍。

Event

进行开发

新建项目

打开Construct2并新建一个项目。

修改游戏地图尺寸

Properties一栏里找到Layout size,我将其修改为800,800

layout size

修改画面尺寸

点击properties下面的view,见到一个新的界面,找到Window size,我同样将它改为800,800

view

Window size

添加背景

Object的区域点击鼠标右键,找到Insert New object,然后找到Tiled Background,可以修改它的名称,然后点击插入,跟在鼠标指针变为一个”加号”,点击随意空白位置,打开一个窗口,然后点击左上角打开一张图片作为背景图,其后关闭窗口即可。添加完成后可以自己对背景图大小进行修改以让其与窗口大小相容。

添加其他对象

同样在Object的区域点击鼠标右键,找到Insert New object,然后找到Sprite进行添加其他对象。

object

让player随鼠标移动

首先要添加鼠标对象,同样是在Object的区域点击鼠标右键,找到Insert New object,然后找到Mouse,添加即可。
然后点击上方Event sheet,再点击Add event,选System,然后选Every tick,再来点击Add action,选player,找到Set positionXY分别对应选择鼠标的XY坐标,通过双击选中上方的鼠标图案并在里面寻找实现,然后点击Done完成。

Mouse

player发射子弹

点击上方Event sheet,再点击Add event,选System,然后选Every X second,修改为每0.2s触发一次,再来点击Add action,选player,找到Spawn another object,然后新对象选player'bulletLayer1,另一个默认,完成。

Every tick

p1

添加敌人并让敌人发射子弹

Event sheet -> System -> Every X time -> 1.0s
-> Add action -> System -> Create object
然后对象选enemyLayer1X坐标随机,Y坐标写0,完成。

random

让敌人发射子弹以及调整子弹的方向跟上述设置玩家子弹的过程相同。
这里有一点不同的是玩家的子弹是朝固定的方向移动,而敌人子弹的方向修改为始终朝着玩家的位置移动,这会让游戏更加有挑战性和趣味性。

bullet

添加碰撞事件

让子弹碰撞的时候同时消失,并让敌人子弹与玩家碰撞时玩家消失。
Add event -> player -> On collision with another object
-> enemy's bullet -> Add action -> player -> Destroy

碰撞1

碰撞2

添加得分情况

Event sheet处右击空白地方,点击Add global variable添加全局变量,命名为score
在一个新的Layer上添加一个新的objectText,修改它的颜色、字号和位置。
添加一个新事件,
System -> Every 1.0 second -> System
-> Add to -> score & 1 -> Done
最后一步,
System -> Every tick -> Text -> Set text
-> "Score: "&score -> Done

set text

score

添加进阶事件

当得分达到10分或以上时,每秒出现的敌人翻倍,使得游戏的难度和挑战性大大提高。
而为了提高游戏的平衡性,在得分达到10分或以上时,这时候会在画面的左侧出现一个金色三角形,此为进阶三角形,当玩家触碰到这个三角形的时候,玩家的子弹改为朝6个方向射出,增加游戏的趣味性。

进阶

进阶

结语

Construct2确实是一款简单容易上手的游戏开发软件,但同时也不乏功能的强大性,能够提供给各位用户很大的开发空间。Construct2中还有很多更高级的用法博主暂未深入研究,那就让我们在日后的使用当中来共同发掘研究吧,欢迎各位来找我相互讨论讨论。

最后一个中肯的评价:这个游戏可玩性真心不低(大雾),博主为了得到一张较好看的截图,每张都是玩了十几二十遍才拿到的啊(捂脸)~

Ps:有兴趣挑战一下的可以找我拿游戏啊~

原创粉丝点击