图层
标签 | 描述 |
laycount | 重新分配layer图层和message层的数目 |
layopt | 设定图层的属性 |
backlay forelay | 把表层复制到里层 把里层复制到表层 |
copylay | 把某一图层复制到目标图层上 |
laylevel | 设定图层的absolute |
layfront layback | 把指定图层移到最前面 指指定图层移到最后面 |
laycount
说明: (1) 重新分配layers[i]和messages[i]的空间和数目 (2) 内部通过allocateCharacterLayers(+elm.layers)和allocateMessageLayers(+elm.messages)实现 |
例子: game.laycount(%[layers:10,messages:10]); 也就是分配10个layers层和10个messages层的空间 |
backlay
说明: (1) 如果layer有指定的话,就把表层的layer复制到里层,如果layer没指定的话,就把所有层(base, character, message, stage, event)复制到它们的里层 (2) 内部主要通过backupLayer(elm, true)实现 |
属性: layer: (“base”,“stage”,“event”,“message”, “message0”, “message1”, “message2”…… num) message得到的是当前的信息层,num得到的是当前的layers[+num]层) |
例子: var game=kag.tagHandlers; kag.fore.base.drawText(0,0,"longmo",0xffffff); game.backlay(%[layer:"base"]); kag.fore.base.fillRect(0,0,1024,768,0x000000); kag.back.base.visible=true; 屏幕上依然显示longmo,因为backlay把base的表层复制到了里层 |
forelay
说明: (1) 如果layer有指定的话,就把里层的layer复制到表层,如果layer没指定的话,就把所有层(base, character, message, stage, event)复制到它们的表层 (2) 内部主要通过backupLayer(elm, false)实现 |
属性: layer: (“base”,“stage”,“event”,“message”, “message0”, “message1”, “message2”…… num) message得到的是当前的信息层,num得到的是当前的layers[+num]层) |
例子: var game=kag.tagHandlers; kag.back.base.drawText(0,0,"longmo",0xffffff); game.forelay(%[layer:"base"]); 屏幕上会显示longmo,因为把表层复制到了里层上 |
copylay
说明: (1) 把srclayer层的内容复制到destlayer上,注意srclayer和destlayer必须是相同的对象 (2) 内部通过copyLayer(elm)实现 |
属性: srcpage: (“fore” 或 “back”) srclayer: (“base”,“stage”,“event”,“message”, “message0”, “message1”, “message2”…… num) message得到的是当前的信息层,num得到的是当前的layers[+num]层) destpage: (“fore” 或 “back”) destlayer: (“base”,“stage”,“event”,“message”, “message0”, “message1”, “message2”…… num) message得到的是当前的信息层,num得到的是当前的layers[+num]层) |
例子: var game=kag.tagHandlers; kag.back.base.drawText(0,0,"abcdefghijkl",0xffffff); game.copylay(%[srcpage:"back",srclayer:"base",destpage:"fore",destlayer:"base"]); 屏幕上显示abcdefghijkl,因为把base层的back复制到了base层的fore上 |
layopt
说明: (1) 设定指定层的内容 (2) 内部通过调用getLayerFromElm(elm).setOptions(elm)实现 | |||
属性: layer: (“base”,“stage”,“event”,“message”, “message0”, “message1”, “message2”…… num) message得到的是当前的信息层,num得到的是当前的layers[+num]层) 以上字典还未全,如果是base的话
| |||
例子: var game=kag.tagHandlers; game.image(%[layer:"0",page:"fore",storage:"config"]); game.layopt(%[layer:"0",page:"fore",visible:true,left:100,top:100,rotate:60]); 得到的是旋转了60度的图像 |
laylevel
说明: (1) 给指定的layers[i]层分配新的level,实际上就是分配新的absolute的值 (2) 可看成是absolute的简化 (3) 内部通过toLevel(elm.layer, elm.level, base)实现 |
属性: layer: page: level: |
例子: var game=kag.tagHandlers; var inf=System.inform; inf(kag.fore.layers[0].absolute); game.laylevel(%[layer:"0",page:"fore",level:3]); inf(kag.fore.layers[0].absolute); 第一个显示的对话框数值是100000,第二个显示的对话框数值是400100,其计算方法是 (level + 1) * 100000 +100 |
layfront
说明: (1) 把指定的图层移动到最前面 (2) 内部通过toFront(elm.layer, base)实现 |
属性: layer: page: |
layback
说明: (1) 把指定的图层移动到最后面 (2) 内部通过toBack(elm.layer, base)实现 |
属性: layer: page: |