J2ME游戏开发学习之高效&漂亮显示积分
2005-12-17 17:49
323 查看
游戏中能漂亮地显示积分是很重要的,手机自带的字体无疑太难看了,所以我们需要用图片来代替数字。
这个是图片资源, 新建一个图片数组:Image[] imgNumbers = new Image[10];然后读入即可
把这个函数加入到你的游戏画积分部分就可以了
/**
* 画得到的总分数
* @param g Graphics
* @param totalScore
*/
private void drawTotalScore(Graphics g) {
//把当前的总经验值转化为数组::比如2335 --> {0, 0, 2, 3, 3, 5};
int _totalScore = totalScore;//totalScore是你游戏中总的积分
int i = 0;
int[] t = new int[6];
while(_totalScore > 9) {
t[i] = _totalScore % 10;
_totalScore /= 10;
i++;
}
t[i] = _totalScore;
//从最高位开始画数字,
for( ; i >= 0; i--) {
g.drawImage(imgNumbers[t[i]], offsetX + i * 10, y, Graphics.RIGHT | Graphics.TOP);
}
}
很简单不是?用到的都是数据结构上的东西。刚开始时我用的是把int型转化为String然后再去画,后来发现超级占内存,生成很多String垃圾,于是就写了这个函数,效果还不错
这个是图片资源, 新建一个图片数组:Image[] imgNumbers = new Image[10];然后读入即可
把这个函数加入到你的游戏画积分部分就可以了
/**
* 画得到的总分数
* @param g Graphics
* @param totalScore
*/
private void drawTotalScore(Graphics g) {
//把当前的总经验值转化为数组::比如2335 --> {0, 0, 2, 3, 3, 5};
int _totalScore = totalScore;//totalScore是你游戏中总的积分
int i = 0;
int[] t = new int[6];
while(_totalScore > 9) {
t[i] = _totalScore % 10;
_totalScore /= 10;
i++;
}
t[i] = _totalScore;
//从最高位开始画数字,
for( ; i >= 0; i--) {
g.drawImage(imgNumbers[t[i]], offsetX + i * 10, y, Graphics.RIGHT | Graphics.TOP);
}
}
很简单不是?用到的都是数据结构上的东西。刚开始时我用的是把int型转化为String然后再去画,后来发现超级占内存,生成很多String垃圾,于是就写了这个函数,效果还不错
相关文章推荐
- Mophun & J2ME 的游戏开发之旅(-)
- J2me游戏学习开发笔记_工具篇(Eclipse+EclipseMe)
- Mophun & J2ME 的游戏开发之旅(二)
- 【Visual C++】游戏开发五十三 骨骼动画学习资料推荐&打包下载
- 【J2me 2D 游戏开发系列】◣Himi游戏开发启蒙教程◢Java零基础学习J2me游戏开发全过程!
- 【Visual C++】游戏开发五十三 骨骼动画学习资料推荐&打包下载
- J2ME游戏开发学习之游戏开发应用的几个核心技术
- Mophun & J2ME 的游戏开发之旅(三)
- Mophun & J2ME 的游戏开发之旅(四)
- cocos2d 游戏开发:Cocos2d v3 "hello world"+显示飞船
- J2ME游戏开发之免费地图编辑器(2D&2.5D)
- J2ME游戏开发学习之正确构造GameCanvas
- Mophun & J2ME 的游戏开发之旅(五)
- cocos2dx休闲游戏--Fruit & Bird 开发学习(3)———RankBirdLayer
- 刚刚开始学习j2me,目标是开发一个小游戏
- Mophun & J2ME 的游戏开发之旅(六)
- 【J2me 2D 游戏开发系列】Himi游戏开发J零基础学习历程
- J2ME游戏开发学习之用setClip分割图片
- cocos2dx休闲游戏--Fruit & Bird 开发学习(1)
- Mophun & J2ME 的游戏开发之旅(七)