我如何编写使用badlogic框架,通过迭代数字打印的方法? [英] How do I write a method using badlogic framework for iterating through the numbers to print?
本文介绍了我如何编写使用badlogic框架,通过迭代数字打印的方法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我一直在使用Mr.Nom框架从badlogic创建的游戏。我如何通过每个字符迭代并打印成绩吗?帮助。
I have created a game using Mr.Nom framework from badlogic. How do I iterate through each character and print the scores? Help.
推荐答案
尝试了这一点:使用一个单独的区域为所有的数字
try this out: Use a separate region for all the numbers
public void drawText(String line, float x, int y) {
int len = line.length();
batcher.beginBatch(Assets.numbers);
for (int i = 0; i < len; i++) {
char character = line.charAt(i);
if (character == ' ') {
x += 20;
continue;
}
int srcX = 0;
int srcWidth = 0;
if (character == '.') {
srcX = 200;
srcWidth = 10;
} else {
srcX = (character - '0') * 20;
srcWidth = 20;
}
if(character=='0')
batcher.drawSprite(x, y, srcWidth, 32, Assets.zeroRegion);
if(character=='1')
batcher.drawSprite(x, y, srcWidth, 32, Assets.oneRegion);
if(character=='2')
batcher.drawSprite(x, y, srcWidth, 32, Assets.twoRegion);
if(character=='3')
batcher.drawSprite(x, y, srcWidth, 32, Assets.threeRegion);
if(character=='4')
batcher.drawSprite(x, y, srcWidth, 32, Assets.fourRegion);
if(character=='5')
batcher.drawSprite(x, y, srcWidth, 32, Assets.fiveRegion);
if(character=='6')
batcher.drawSprite(x, y, srcWidth, 32, Assets.sixRegion);
if(character=='7')
batcher.drawSprite(x, y, srcWidth, 32, Assets.sevenRegion);
if(character=='8')
batcher.drawSprite(x, y, srcWidth, 32, Assets.eightRegion);
if(character=='9')
batcher.drawSprite(x, y, srcWidth, 32, Assets.nineRegion);
if(character=='.')
batcher.drawSprite(x, y, srcWidth, 32, Assets.dotRegion);
x += srcWidth;
}
batcher.endBatch();
}
这篇关于我如何编写使用badlogic框架,通过迭代数字打印的方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文