Java libgdx使函数成为一个单独的类
所以我有这个密码Java libgdx使函数成为一个单独的类,java,libgdx,Java,Libgdx,所以我有这个密码 public class MyGdxGame implements ApplicationListener { private SpriteBatch batch; private Texture grasstext; private GrassField field; @Override public void create() { batch = new SpriteBatch(); grasstext = new Texture(Gdx.
public class MyGdxGame implements ApplicationListener {
private SpriteBatch batch;
private Texture grasstext;
private GrassField field;
@Override
public void create() {
batch = new SpriteBatch();
grasstext = new Texture(Gdx.files.internal("data/grassA.png"));
field = new GrassField();
}
@Override
public void dispose() {
batch.dispose();
grasstext.dispose();
}
@Override
public void render() {
Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
//DrawField(100,10,3,3,31);
//DrawField(200,50,4,2,31);
field.DrawField(10, 10, 3, 5, 31);
}
@Override
public void resize(int width, int height) {
}
@Override
public void pause() {
}
@Override
public void resume() {
}
public void DrawField(int x,int y,int width,int height,int value)
{
for(int xt=0;xt<width;xt++)
{
for(int yt=0;yt<height;yt++)
{
batch.begin();
batch.draw(grasstext,((x+xt)+xt*value),((y+yt)+yt*value));
batch.end();
}
}
}
公共类MyGdxGame实现ApplicationListener{
专用SpriteBatch批次;
私密文本;
私人草地;
@凌驾
public void create(){
批次=新的SpriteBatch();
grasstext=新纹理(Gdx.files.internal(“data/grassA.png”);
field=新草地();
}
@凌驾
公共空间处置(){
batch.dispose();
grasstext.dispose();
}
@凌驾
public void render(){
Gdx.gl.glClearColor(1,1,1,1);
Gdx.gl.glClear(GL10.gl\u颜色\u缓冲\u位);
//抽油区(100,10,3,3,31);
//抽油区(200,50,4,2,31);
字段。绘图字段(10,10,3,5,31);
}
@凌驾
公共空心调整大小(整型宽度、整型高度){
}
@凌驾
公共空间暂停(){
}
@凌驾
公众简历(){
}
公共空心绘图字段(整数x、整数y、整数宽度、整数高度、整数值)
{
对于(int xt=0;xt我只能猜测你做了什么,如果你能输入新类的代码(我猜它是GrassField),那就太好了,但是你检查过对象是否批处理(SpriteBatch)和grasstext(纹理)了吗在GrassField中可用?据我所知,您使用的构造函数没有任何参数,我看不到任何包含所需引用的方法。您可以尝试使用构造函数或GrassField的单独方法添加所需对象。它可能类似于:
public class GrassField {
private SpriteBatch batch;
private Texture grassText;
public GrassField(SpriteBatch batch, Texture grassText) {
...
this.grassText = grassText;
this.batch = batch;
...
}
..........
}