В общем, есть код в цикле:
public void onEnable(){
..........
getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable()
{
public void run()
{
for (int i = 0; i < a.size(); i++) {
Block b = a.get(i);
if(b.getWorld().getBlockAt(b.getX(),b.getY(),b.getZ()).getType() == Material.AIR){
int timer = 1;
timer++;
getLogger().info("а интов у нас целых " + timer);
if(timer >= 20){
setbl(b.getWorld(),b.getX(),b.getY(),b.getZ(),0.5);
timer = 0;
}
}
}
}
и в консоли видно, что интов-то у нас всегда 1! В общем, как один раз объявить переменную, чтобы подсчёт на переменных начался?
У вас счетчик создавался на каждой итерации цикла, поэтому всегда был одинаковый, поэтому нужно было просто вынести его вне цикла:
public void run()
{
int timer = 1;
for (int i = 0; i < a.size(); i++) {
Block b = a.get(i);
if(b.getWorld().getBlockAt(b.getX(),b.getY(),b.getZ()).getType() == Material.AIR){
timer++;
getLogger().info("а интов у нас целых " + timer);
if(timer >= 20){
// ...
}
}
}
}
Я вынес в поле класса "стартовую" переменную, после чего при создании блока и записании его в массив, записывал в отдельный массив этот int под тем же номером, что и сам блок. В итоге, работает, при чём довольно стабильно.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
с криптопро я раньше не работалНо сейчас в нашей компании возникла задача реанимировать сервис для подписи файлов
Всем приветУ меня есть страничка на которой находиться выпадающий список с именами кастомеров
При переводе координат у меня почему то не учитывается матрица View:
Вот пишу проект и я совсем запуталсяКогда использовать Repository pattern когда Facade pattern ?Ведь по сути оба скрывают реализацию того или иного метода