轻装上阵Html5游戏开发,JEESJS(二)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/aiyoyoyo/article/details/77683744

为了写Button类,踏平了好多坑。。。

这里我主要细讲一下Module类和jeesjs.MM类的使用。

jeesjs.MM 模块管理器,参考demo/ModuleTest.js:

var MOD = new jeesjs.Module() 
jeesjs.MM.enter( MOD, [level] );
Module类主要用于绘制Canvas中的部件,这里封装一层是为了让多模块,多层级模块便于管理。

通过jeesjs.MM.enter之后,会触发Module.enter()方法,这个用于初始化内容。

enter之后,会调用Module.update()方法,这个用于更新和计算内容。

当多个Module被管理器加入之后,会按照从前往后的顺序执行update()方法。

如果参数level填写了,模块管理器会从低级别层级的最靠前模块依次调用update()。

jeesjs.MM.enter( modA, 0 );
jeesjs.MM.enter( modB, 1 );
jeesjs.MM.enter( modC, 0 );
这段的执行顺序是 modA->modC->modB,上一层级,你可以理解为弹出式对话框的形式。

jeesjs.MM.leave() 会按照从后往前的形式,弹出最后一个模块。

另外,Module还提供了interrupt()中断方法和recovery()恢复方法。

当有新的模块被管理器加入时,当前的最上层模块会触发中断方法。

当最上层模块被管理器剔除时,新的最上层模块会触发恢复方法。

大致意思就是如果有弹出对话框了,底层会触发中断。关闭对话框了,底层会触发恢复。


模块的用法参考了之前游戏开发的经验,这里做出了点调整。如果有其他思路,欢迎各位加群一起讨论:QQ:8802330






猜你喜欢

转载自blog.csdn.net/aiyoyoyo/article/details/77683744