com.dobetter.map
Class DoMap

public class DoMap
Field Detail

TILE_MAP

public static final byte TILE_MAP
拼制地图

IMAGE_MAP

public static final byte IMAGE_MAP
整图地图

cellWidth

public short cellWidth
单位格的大小

cellHeight

public short cellHeight
单位格的大小

cellXCount

public short cellXCount
单位格的数量

cellYCount

public short cellYCount
单位格的数量

mapWidth

public short mapWidth
地图的实际大小 单位格*单位格数量

mapHeight

public short mapHeight
地图的实际大小 单位格*单位格数量

viewMapX

private short viewMapX
地图显示区域相对地图左上角X

viewMapY

private short viewMapY
地图显示区域相对地图左上角Y

screenVibrateTimes

public int screenVibrateTimes
屏幕振动

vibrateX

private int vibrateX
屏幕振动位移

vibrateY

private int vibrateY
屏幕振动位移

Constructor Detail

DoMap

public DoMap(String mFile,
             int vWidth,
             int vHeight,
             boolean bBuf)
初始化
Parameters:
mFile - String 地图文件路径
vWidth - int 可视宽度,一般是屏幕的实际宽
vHeight - int 可视高度
bBuf - boolean 是否需要双缓存,使用能提高速度,但需要损失内存

Method Detail

setViewPosInMap

public void setViewPosInMap(int px,
                            int py)
设置左上角坐标,滚屏时需要使用
Parameters:
px - int
py - int

getTileX

public short getTileX(short x)
获取在X方向处在第几格
Parameters:
x - short
Returns:
short

getTileY

public short getTileY(short y)
获取在Y方向上在第几格
Parameters:
y - short
Returns:
short

getScriptAt

public String getScriptAt(int x,
                          int y)
判断当前(x,y)是否存在脚本
Parameters:
x - int 这个参数不是实际象数,而是单位格
y - int 这个参数不是实际象数,而是单位格
Returns:
String 返回脚本的内容

drawLayer0

public void drawLayer0(Graphics g,
                       int dx,
                       int dy)
绘制底层
Parameters:
g - Graphics
dx - int
dy - int

drawLayer1

public void drawLayer1(Graphics g,
                       int dx,
                       int dy)
绘制顶层
Parameters:
g - Graphics
dx - int
dy - int

canPointPass

public boolean canPointPass(int mx,
                            int my)
判断当前(x,y)坐标是否可通过
Parameters:
mx - int 实际象数坐标
my - int
Returns:
boolean 为true可通过

canBlockPass

public boolean canBlockPass(int x,
                            int y)
判断当前(x,y)格是否可通过
Parameters:
x - int 单位格
y - int
Returns:
boolean

canBlockPass

public boolean canBlockPass(int cellID)
判断当前格是否可通过
Parameters:
cellID - int 格子的ID
Returns:
boolean

setImages

public void setImages(Image[] imgs)
设置地图所需要用到的图片
Parameters:
imgs - Image[]

setImageAt

public void setImageAt(int index,
                       Image img)
改变地图所需要用到的图片
Parameters:
index - int 需要改变的图片ID
img - Image