ClientSceneLayer 场景图层-显示对象

包含图片图层和图块图层

维护人员:黑暗之神KDS
创建时间:2018-07-22

继承 →GameSprite
子类

Public 属性

属性
scene : ClientScene;
对应的地图对象
dx : number;
偏移值-X 默认值=0
dy : number;
偏移值-Y 默认值=0
xMove : number;
X方向自动滚动 默认值=0
yMove : number;
Y方向自动滚动 默认值=0
isChangeChildZOrder : boolean;
是否自动更换子显示对象层次 根据显示对象Y坐标刷新
xLoop : boolean;
x循环(平铺) 中途更改此项后需要调用refreshLoopShow刷新
yLoop : boolean;
y循环(平铺) 中途更改此项后需要调用refreshLoopShow刷新
prospectsPerX : number;
远景比例X轴 默认值=1.0 表示 100% 普通地图是100%,值越小则移动越慢,多重远景一般通过更改此属性来制作
prospectsPerY : number;
远景比例Y轴 默认值=1.0 表示 100% 普通地图是100%,值越小则移动越慢,多重远景一般通过更改此属性来制作
mapUrl : string;
只读地图层的图片资源地址
drawMode : boolean;
是否是绘图模式(图块),在创建时需要设定好才可使用图块模式绘制

Public 方法

方法
constructor(scene : ClientScene)
构造函数
refreshLoopShow(): void
刷新循环显示,中途更改了xLoop或yLoop后调用此项以便刷新
drawTile(xGrid : number, yGrid : number, tileData : { tex): void
绘制图块,绘制后需要调用flushTile进行冲印,同时绘制多个图块时可以在绘制完毕后统一冲印,以便节约不必要的性能耗损。
drawAutoTile(xGrid : number, yGrid : number, autoTileID : number, texture : Texture): void
绘制自动图块元件,绘制后需要调用flushTile进行冲印,同时绘制多个图块时可以在绘制完毕后统一冲印,以便节约不必要的性能耗损。
flushTile(): void
刷新图块:将此前绘制过的图块统一显示出来
clearTile(): void
清理图块,将当前图块全部清空
setBigImage(imgURL : string): void
设置完整图片作为该层地图图像,仅图片图层可用
setBigTexture(t : Texture): void
根据texture设置背景,仅图片图层可用

详情

isChangeChildZOrder

isChangeChildZOrder : boolean;

是否自动更换子显示对象层次 根据显示对象Y坐标刷新
比如在一般RPG游戏中,A在B的下方会遮挡B,而当A移动到B上方时会被B遮挡住,开启此项会自动计算

constructor

constructor(scene : ClientScene) :

构造函数

参数
scene 所属的场景

refreshLoopShow

refreshLoopShow(): void :

刷新循环显示,中途更改了xLoop或yLoop后调用此项以便刷新

drawTile

drawTile(xGrid : number, yGrid : number, tileData : { tex): void :

绘制图块,绘制后需要调用flushTile进行冲印,同时绘制多个图块时可以在绘制完毕后统一冲印,以便节约不必要的性能耗损。
图层必须是绘制模式(drawMode==true)

参数
xGrid 格子坐标x
yGrid 格子坐标y
tileData 贴图对象、图块ID、图块的采样(x,y,width,height) 如果为null则表示擦除

drawAutoTile

drawAutoTile(xGrid : number, yGrid : number, autoTileID : number, texture : Texture): void :

绘制自动图块元件,绘制后需要调用flushTile进行冲印,同时绘制多个图块时可以在绘制完毕后统一冲印,以便节约不必要的性能耗损。
图层必须是绘制模式(drawMode==true)

参数
xGrid 格子坐标x
yGrid 格子坐标y
autoTileID 自动元件的ID
texture 自动元件的贴图

flushTile

flushTile(): void :

刷新图块:将此前绘制过的图块统一显示出来

clearTile

clearTile(): void :

清理图块,将当前图块全部清空

setBigImage

setBigImage(imgURL : string): void :

设置完整图片作为该层地图图像,仅图片图层可用

参数
imgURL 完整图片地址

setBigTexture

setBigTexture(t : Texture): void :

根据texture设置背景,仅图片图层可用

参数
t 贴图

相关代码示例

创建一个图片图层添加到当前场景上

创建一个图层,并设置图片,添加到场景上,默认在左上角(0,0)
var layer = new ClientSceneLayer(Game.currentScene);
layer.setBigImage("asset/image/xxxx.png");
Game.currentScene.addLayer(layer);




























Copyright © 2021 - 2025