Я начинающий программист на Android, и я создаю свою собственную игру, которая добавляет случайные числа. задача игрока состоит в том, чтобы угадать результат, добавив, выбрав 3 заданных числа, в которых реальный результат. Все работает нормально, но я хотел бы, чтобы каждый раунд был на правильном результате, чтобы игрок не осознавал, что правильный результат находится на кнопке № 1, а кнопки 2 и 3 ложные. Код с проблемой:
private void startTimerThread() {
final Handler handler = new Handler();
los();
proba.setText("dodawanie");
c = Dodawanie(a, b);
Random liczba = new Random();
h = liczba.nextInt(5);
Toast.makeText(getApplicationContext(), String.valueOf(c), Toast.LENGTH_LONG).show();
Runnable runnable = new Runnable() {
public void run() {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
handler.post(new Runnable() {
public void run() {
W1.setText(String.valueOf(c));
Wyb1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
p++;
l.setText(String.valueOf(p));
startTimerThread();
}
});
W2.setText(String.valueOf(l1));
Wyb2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "Zle", Toast.LENGTH_LONG).show();
}
});
W3.setText(String.valueOf(l2));
Wyb3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "Zle", Toast.LENGTH_LONG).show();
}
});
}
});
}
};
new Thread(runnable).start();
}
введите описание изображения здесь
Если это поможет, тогда весь код активности приведен ниже. Пожалуйста ,,,
public class GameSingleActivity extends AppCompatActivity {
TextView proba,Dz,W1,W2,W3,l;
private int a,b,c,l1,l2,p=0,h;
ImageButton Wyb1,Wyb2,Wyb3;
ProgressBar mProgressBar;
boolean running = true;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_game_single);
proba = findViewById(R.id.textView12);
Dz = findViewById(R.id.Dzialanie);
W1 = findViewById(R.id.Wpozycja1);
W2 = findViewById(R.id.Wpozycja2);
W3 = findViewById(R.id.Wpozycja3);
l = findViewById(R.id.Level);
Wyb1 = findViewById(R.id.imageButton11);
Wyb2 = findViewById(R.id.imageButton12);
Wyb3 = findViewById(R.id.imageButton13);
mProgressBar=findViewById(R.id.progressBar);
l.setText("0");
if (getIntent().getExtras()!=null) {
int buttonPressed = getIntent().getExtras().getInt(MenuGameActivity.INTENT_KEY);
if (buttonPressed == MenuGameActivity.FIRST_OPTION) {
// first button is clicked
proba.setText("dodawanie");
startTimerThread();
} else if (buttonPressed == MenuGameActivity.SECOND_OPTION) {
//second button is clicked
proba.setText("odejmowanie");
} else if (buttonPressed == MenuGameActivity.THIRD_OPTION) {
//second button is clicked
proba.setText("odejmowanie");
}else if (buttonPressed == MenuGameActivity.FOURTH_OPTION) {
//second button is clicked
proba.setText("odejmowanie");
}else if (buttonPressed == MenuGameActivity.FIFTH_OPTION) {
//second button is clicked
proba.setText("odejmowanie");
}else if (buttonPressed == MenuGameActivity.SIXTH_OPTION) {
//second button is clicked
proba.setText("odejmowanie");
}
}
}
///////////////////////////////////////////
private void startTimerThread() {
final Handler handler = new Handler();
los();
proba.setText("dodawanie");
c = Dodawanie(a, b);
Random liczba = new Random();
h = liczba.nextInt(5);
Toast.makeText(getApplicationContext(), String.valueOf(c), Toast.LENGTH_LONG).show();
Runnable runnable = new Runnable() {
public void run() {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
handler.post(new Runnable() {
public void run() {
W1.setText(String.valueOf(c));
Wyb1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
p++;
l.setText(String.valueOf(p));
startTimerThread();
}
});
W2.setText(String.valueOf(l1));
Wyb2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "Zle", Toast.LENGTH_LONG).show();
}
});
W3.setText(String.valueOf(l2));
Wyb3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "Zle", Toast.LENGTH_LONG).show();
}
});
}
});
}
};
new Thread(runnable).start();
}
public int Dodawanie(int a,int b)
{
String A = String.valueOf(a);
String B = String.valueOf(b);
Dz.setText(A+" + "+B);
return a + b;
}
public void los()
{
Random liczba = new Random();
a = liczba.nextInt(101);
b = liczba.nextInt(101);
l1= liczba.nextInt(101)+30;
l2= liczba.nextInt(101)+30;
}
}