액터에는 아래에 이름이 없습니다. libgdx에서는 각 액터에 이름을 할당하는 가장 좋은 방법은 무엇입니까?libgdx에서 액터의 이름을 지정하는 방법은 무엇입니까?
public class JewelsMainActivity implements ApplicationListener, InputProcessor {
private Vector2 point = new Vector2();
public TextureAtlas jewelsAtlas;
public Texture jewels;
private SpriteBatch batch;
public Actor[][] actors = new Actor[10][10];
public Stage stage;
public int gridSize;
@Override
public void create() {
stage = new Stage(800, 600, false);
gridSize = 10;
batch = new SpriteBatch();
jewels = new Texture(Gdx.files.internal("assets/gems1.png"));
jewelsAtlas = new TextureAtlas(Gdx.files.internal("assets/pack"));
for (int z = 0; z < gridSize; z++) {
for (int x = 0; x < gridSize; x++) {
Random r = new Random();
int j = r.nextInt(2)+1;
actors[x][z] = new Image(jewelsAtlas.findRegion(""+j+""));
actors[x][z].x = x*56; //each gem is 56*56 width/height
actors[x][z].y = z*56;
// actors [x] [z] .name = "actor"+ x + z; 이 위의 실 거예요 허용하는 // 캔트 사용 ....
stage.addActor(actors[x][z]);
}
}
Gdx.input.setInputProcessor(this);
}
@Override
public void render() {
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
batch.begin();
stage.draw();
batch.end();
}
@Override
public boolean touchDown(int x, int y, int pointer, int button) {
stage.toStageCoordinates(Gdx.input.getX(), Gdx.input.getY(), point);
Actor actor = stage.hit(point.x, point.y);
if (actor != null){
Gdx.app.log("name", actor.name);
// actor.name는
Gdx.app.log("hashCode", ""+actor.hashCode());
((Image)actor).color.set((float)Math.random(), (float)Math.random(), (float)Math.random(), 0.5f + 0.5f * (float)Math.random());
}
return false;
}
널 .... .... ...
감사합니다. – user1320651