j2me_游戏开发-背景篇:TiledLayer

在J2ME中背景是个有意思的东东,先前没做过应用开发,发觉这个背景开发 有点和其他的应用开发一样,几个小图合成一个图,游戏用的时候再去分开,重复组成背景。

其主要常用的函数有:
构造函数:
TiledLayer(int column,int row,Image img,int width,int height);
//不清楚他为什么把列数放在前面呢?可能是开发时要以分列的原因吧

设置单元格内容
setCell(int column,int row,int content);

基本上就可以开工了:

1。准备背景源材料:
        如下为网易POPO的小图,
2。建好project和MIDLET和DISPLAYABLE之后就可以写代码了


Graphics g=this.getGraphics();
   
    Image img=null;
    try {
      img=Image.createImage("/popo.png");
    }
    catch(Exception e) {}
    TiledLayer tl=new TiledLayer(12,5,img,16,16);  //分成12列的原因为,模拟器的宽度为180/16~12刚好覆盖,
    int[] map={
        1,1,1,1,1, 1,1,1,1,1, 1,1,
        2,2,2,2,2, 2,2,2,2,2, 2,2,
        3,3,3,3,3, 3,3,3,3,3, 3,3,
        0,0,0,0,0, 0,0,0,0,0,  0,0,
        4,4,4,4,4, 4,4,4,4,4, 4,4
    };

    for(int i=0;i<map.length;i++) {
      int col=i%12;
      int row=(i-col)/12;
      tl.setCell(col,row,map[i]); 
//设置的顺序为   (行号,列号) (0,0) (0,1),(0,2)...........(0,11) .................... 
    }
    tl.paint(g);//这时就可以把他paint到界面上来了




 最后我们来看看NOKIA提供的一个j2me例子:sheepdog


看看他是怎么做的~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值