Construct2 初学入门教程

4

Index

Tagged

Contributors

Stats

152,710 visits, 190,138 views

Tools

Translations

License

This tutorial is licensed under CC BY 4.0. Please refer to the license text if you wish to reuse, share or remix the content contained within this tutorial.

Published on 2 Dec, 2014. Last updated 25 Feb, 2019

添加行为

Behaviors类似于flash中的行为(动作),是预先封装的功能函数。例如,我们添加一个Platform行为给一个对象,添加Solid行为给地板,游戏运行时,该对象就可以象platformer游戏(例如:超级玛丽)中的角色一样跳来跳去。你也可以通过事件来达到同样的效果,但是这需要较长的时间,而且该预置的行为已经很好。

Construct2具有以下行为:

8 Direction movement: 这个行为可以让你实现给角色添加方向移动(方向键)的功能。

Bullet movement:这个行为让对象朝着它当前的角度移动,比如,本例中玩家射出的子弹的移动行为,不要被这名字迷惑了,它不只适用于子弹,也可以应用于怪物等移动。在Contruct2里所有的移动行为都是通过添加速度向前行进。

Scroll to:这个行为可以让运行时画布随着对象移来移去(滚动)。这个行为很适合于角色。

Bound to layout:这个行为可以防止对象离开画布区域。这个行为对于角色来说也很重要。

Destroy outside layout:当对象离开画布区域时,就将其销毁。比如本例中的子弹,如果不销毁的话,虽然子弹离开画布区域了,但是依然暂用内存。所以我们需要及时销毁不再需要的对象。

Fade:这个行为可以给对象添加淡出效果,用于爆炸等特效的消失。

接下来我们就来给对象添加相应的行为。

如何增加行为

我们给角色player添加8 direction movement行为:选中player,在properties bar属性面板里,找到Behaviors分类,点击Add/Edit弹出Behaviors行为对话框。

在对话框中,点击绿色+号-添加行为图标,在弹出的“Add behavior”对话框中双击8 direction movement

接着以同样的方法给player添加Scroll ToBound to layout行为,此时"player:Behaviors"对话框如下:

关闭行为对话框。点击运行查看游戏!此时我们已经可以移动角色,屏幕也跟随角色移动,而且通过设置Bound to layout行为后,角色也不能移出画布区域。

希望你安装了兼容HTML5的插件,另外,请确保你是使用最新版的火狐,Chrome,或是 Ie9。一旦你的游戏运行后,请确保你可以用方向键移动玩家,而且银幕会随着玩家移动! 而且你不能使玩家走出画布。

添加其他行为

我们以同样的方法给其他对象添加相应的行为如下:

-给Bullet对象添加Bullet movement和Destroy outside layout行为。

-给Monster对象添加Bullet movement行为。

-给Explosion对象添加Fade行为。Fade行为默认会销毁对象,所以不用担心对象有没有销毁。

此时,我们再运行查看游戏,会发现怪物一下子就飞出去了。我们来编辑下怪物的行为,选中Monster怪物对象。看到properties bar属性面板中,我们会发现属性栏里多出了其他一些属性,这些属性是添加了行为后才有的。

更改speed速度为80(单位:像素/秒)

同样的方法给Bullet子弹对象的速度更改为400,Explosion对象的Fade行为的Fade out time淡出时间为0.5秒。

添加更多怪物

按住CTRL,拖拽Monster对象复制几个实例。他们都是Monster对象类型的。

对象类型可认为是对象的类(学过编程的知道,没学也没事)。在事件系统中,我们主要处理的就是对象类型。例如:你创建了一个Bullet collides with Monster事件,将会检测子弹与所有基于Monster对象类型的实例的碰撞,而不需要单独为每个怪物添加碰撞事件。通过Sprites(精灵/元件),一个对象类型的实例将共享同一个图片(纹理材质)。这样游戏在加载的时候只需加载一次该图片即可。我们在以后的课程中再深入对象类型和实例。目前,就可以认为不同类型的敌人是不同类型的对象类型。游戏中运行时创建的怪物对象都是相应对象类型的实例。(学过编程的都知道,本不想翻译这段话的,想想还是翻了,不必太纠结这个)

使用Ctrl +拖拽 创建7到8个新的怪物实例(为了区分下,往下我们用实例来表述)。放置怪物的时候不要太靠近玩家。否则角色一下子就挂了!此时你的画布类似如下:

接下来我们将通过Construct2的可视化编程——事件系统,添加自定义功能函数。

  • 0 Comments

Want to leave a comment? Login or Register an account!