lufy's legend

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 7513|回复: 3
打印 上一主题 下一主题

如何让一个LSprite一直处于最上方?

[复制链接]

46

主题

3

好友

1866

积分

偏将军

Rank: 4

跳转到指定楼层
楼主
发表于 2013-5-25 13:56:07 |只看该作者 |倒序浏览
我想实现一个亮度效果,准备画一个实心的黑色矩形盖在整个画面上,通过调节透明度改变亮度。但是如果在这之后往最下层里加了一个LSprite,那么这个LSprite将不会被黑色矩形盖住。请问怎么实现让那个黑色矩形一直处于最上方???
回复

使用道具 举报

37

主题

8

好友

9313

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

沙发
发表于 2013-5-25 20:18:14 |只看该作者
比如你一开始新建了两个LSprite对象backLayer,lightLayer,分别将他们addChild到游戏层上
  1. addChild(backLayer);
  2. addChild(lightLayer);
复制代码
那么lightLayer此时就处在backLayer的上层
之后,你将所有的游戏对象都加到backLayer层和backLayer层的子层上的话就可以了,
这时候因为lightLayer在backLayer的上层,当然也在backLayer所有子对象的上层,
也就是说,始终在最上层
不回答与技术和引擎不相关的问题
回复

使用道具 举报

46

主题

3

好友

1866

积分

偏将军

Rank: 4

板凳
发表于 2013-5-25 21:50:06 |只看该作者
关键是lightLayer是先加的怎么办??
我问这个问题的原因是因为我想给我的rpg引擎加这个功能。引擎一初始化就有lightLayer了,如果别人往界面上加sprite,那lightLayer就被盖了。这个怎么解决了呢?
回复

使用道具 举报

37

主题

8

好友

9313

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

地板
发表于 2013-5-25 23:48:57 |只看该作者
yorhomwang 发表于 2013-5-25 21:50
关键是lightLayer是先加的怎么办??
我问这个问题的原因是因为我想给我的rpg引擎加这个功能。引擎一初始化 ...

这就没办法了,除非你不断重设所加层的顺序,但是完全没必要这么做。

既然是引擎,那么肯定是有它的用法的,想使用你的引擎就必须按照你规定的方法,所以你要做的就是提供详细的使用文档和案例。

打个比方说,lufylegend.js引擎中提供了完善的分层系统,但是canvas的原生api依然是可以用的,如果有人硬要在代码中和原生的api穿插使用,出了问题我就只能说抱歉了,因为它并没有按照我提供的方法来使用。
不回答与技术和引擎不相关的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

防止垃圾广告,请填写任意字符

Archiver|lufy's legend

GMT+8, 2024-5-20 02:34 , Processed in 0.044490 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部