вот мой образец из игры для Android libgdx, которую я хочу создать. Пока ничего особенного, потому что я только начинаю свое приключение с играми для Android.
Вот пара вопросов, на которые я хотел бы получить ответы
Пока я использую функцию Gdx.input.isTouched и проверяю, соответствует ли она координатам кролика, я делаю это для каждого кролика, и в конце я хотел бы иметь 11 из них, и это слишком много для записи. Есть ли способ проверить, является ли класс Image из import com.badlogic.gdx.scenes.scene2d.ui.Image; был тронут? Или еще у класса Актера есть эта функция?
Другое дело, что когда я создаю экземпляр класса кролика и нажимаю на кролика, все они меняются на «испуганные». Это потому, что текстура Scene2d.Image должна быть статической. Есть ли способ изменить это?
if(Gdx.input.isTouched()){
x = Gdx.input.getX();
y = Gdx.graphics.getHeight() - Gdx.input.getY();
// **** Show Coordinates **** \\
if (x < 420)
font.draw(batch, "x:" + x +
"\n y: " + y, x, y);
else
font.draw(batch, "x:" + x +
" y: " + y, x-65, y);
// **** End Show Coordinates **** \\
//if krolik (bunny) is touched add highscore and change texture to scared
if (x >= krolik.pos.x && y >= krolik.pos.y
&& x <= krolik.pos.x + 64 && y <= krolik.pos.y + 64)
{
krolik.scared();
highscore+=100;
}
else if (x >= krolik2.pos.x && y >= krolik2.pos.y
&& x <= krolik2.pos.x + 64 && y <= krolik2.pos.y + 64)
{
krolik2.scared();
highscore+=100;
}
}
else{
krolik.normal();
}
// **** Show Highscore **** \\
font.draw(batch, "Highscore: " + highscore, 350, 300);
batch.draw(krolik.getTexture(), krolik.pos.x, krolik.pos.y);
batch.draw(krolik2.getTexture(), krolik2.pos.x, krolik2.pos.y);
batch.end();