Construct2 初学入门教程

4

Index

Tagged

Contributors

Stats

152,711 visits, 190,139 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

事件

首先,在画布区域上方的选项卡上切换到Event sheet1事件编辑器面板,一个列表的事件被成为Event sheet事件表。游戏的不同部分可以拥有不同的事件表,事件表同样可以"include"包含即导入(编程里的概念,不懂就无视吧)其他事件表,这样可以重复利用事件表,目前我们不需要这些功能。

关于事件

Construct 2整个系统运作是基于事件系统,大多数显示器帧频为60帧/秒,为了匹配显示器达到平滑的显示效果,Construct 2也设置了差不多帧速率。所以事件表通常是一秒钟运行60次。每次都会更新屏幕相应发生变化的区域。事件表运行时的顺序为从上往下,所以靠上的事件先运行。

条件、动作、子事件

事件包含条件,测试某些条件是否满足,例如,Is spacebar down?(检测空格键是否按下)。如果条件满足了,那么事件的动作将会运行,例如,Create a bullet object创建一个子弹实例。当动作运行后,任何子事件也会运行,这样可以测试更多条件,运行更多的动作和更多的子事件等。使用该系统,我们可以为游戏或程序创建更多负责的功能。本例中,我们不需要该功能。

简述如下:

Are all conditions met? //条件是否都满足?

--->yes:run all the event's actions。 //是:运行所有事件的动作

--->no:go to next event(not including any sub-event) //否:往下运行下个事件,这里没有运用(包含)子事件

我们来创建第一个事件

我们将使player(发射口)一直看向鼠标,这样我们点击发射子弹的时候,子弹将发往鼠标方向。如下:

记住:每次屏幕被重绘的时候,tick(一个内部循环中,每秒几帧屏幕重绘,百度一下吧,囧)将会运行(tick下的事件都会运行一次)。所以如果我们强制player每帧都朝向鼠标,那么player将一直朝向鼠标。

我们开始制作该事件。在event sheet的空白位置双击,将打开添加事件对话框:

不同的对象根据他们要做的行为拥有不同的条件和动作,在对话框中双击System对象,对话框中列出了所有System对象的条件:

双击Every tick条件插入到事件表中。对话框将关闭,Every tick事件被创建,但没有actions(动作)。如下:

接着我们添加一个动作来使角色看向鼠标。点击event右边的Add action链接,打开对话框如下:

对话框中列出了可以添加动作的对象,双击player对象,对话框列出了player对象可添加的动作如下:

选取Set angle towards position动作。该动作会自动计算角色到给定的X,Y坐标的角度。

接下来要指定X,Y坐标值(动作的参数,条件同样可以带有参数)。我们输入Mouse.X和Mouse.Y(也可以输入表达式如:Mouse.X+100,虽然用的并不多)

此时,你运行就可以看到效果了。

如果提示错误:Mouse is not any object name,确保你已添加了Mouse object鼠标对象!

你可能会担心如何记住所有可用的表达式。别担心,浮动在上边的object panel,默认处于半透明状态不会干扰你的注意力。移动鼠标到该面板上,单击,面板变完全可见。该面板起着字典的功能,可以帮你记住各类你可以使用的表达式。你可以双击表达式来插入,省的手动输入。

还有,点击对话框上的Done确定按钮。该动作就被添加了!如下:

第一个事件添加完毕!尝试运行游戏,角色在移动的时候一直朝下鼠标。

  • 0 Comments

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