Как упростить этот код до функции, которая будет делать это автоматически?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как упростить этот код до функции, которая будет делать это автоматически?

Сообщение Anonymous »


У меня есть следующие строки кода:

координаты int[][] = new int[][]{{0, 0}, {1, 0}, {0, 1}, {-1, 0}, {0, -1 }}; если (yg.radius == 1) { координаты = новый int[][]{{0, 0}, {1, 0}, {0, 1}, {-1, 0}, {0, -1}}; } еще если (yg.radius == 2) { координаты = новый int[][]{{0, 0}, {1, 0}, {0, 1}, {-1, 0}, {0, -1}, {1, 1}, {-1 , 1}, {-1, -1}, {1, -1}}; } еще если (yg.radius == 3) { координаты = новый int[][]{{0, 0}, {1, 0}, {0, 1}, {-1, 0}, {0, -1}, {1, 1}, {-1 , 1}, {-1, -1}, {1, -1}, {2, 0}, {0, 2}, {-2, 0}, {0, -2}}; } еще если (yg.radius == 4) { координаты = новый int[][]{{0, 0}, {1, 0}, {0, 1}, {-1, 0}, {0, -1}, {1, 1}, {-1 , 1}, {-1, -1}, {1, -1}, {2, 0}, {0, 2}, {-2, 0}, {0, -2}, {2, 2} , {-2, 2}, {-2, -2}, {2, -2}}; } еще если (yg.radius == 5) { координаты = новый int[][]{{0, 0}, {1, 0}, {0, 1}, {-1, 0}, {0, -1}, {1, 1}, {-1 , 1}, {-1, -1}, {1, -1}, {2, 0}, {0, 2}, {-2, 0}, {0, -2}, {2, 2} , {-2, 2}, {-2, -2}, {2, -2}, {3, 0}, {0, 3}, {-3, 0}, {0, -3}}; } еще если (yg.radius == 6) { координаты = новый int[][]{{0, 0}, {1, 0}, {0, 1}, {-1, 0}, {0, -1}, {1, 1}, {-1 , 1}, {-1, -1}, {1, -1}, {2, 0}, {0, 2}, {-2, 0}, {0, -2}, {2, 2} , {-2, 2}, {-2, -2}, {2, -2}, {3, 0}, {0, 3}, {-3, 0}, {0, -3}, { 3, 3}, {-3, 3}, {-3, -3}, {3, -3}}; } еще если (yg.radius == 7) { координаты = новый int[][]{{0, 0}, {1, 0}, {0, 1}, {-1, 0}, {0, -1}, {1, 1}, {-1 , 1}, {-1, -1}, {1, -1}, {2, 0}, {0, 2}, {-2, 0}, {0, -2}, {2, 2} , {-2, 2}, {-2, -2}, {2, -2}, {3, 0}, {0, 3}, {-3, 0}, {0, -3}, { 3, 3}, {-3, 3}, {-3, -3}, {3, -3}, {4, 0}, {0, 4}, {-4, 0}, {0, - 4}}; } еще если (yg.radius == 8) { координаты = новый int[][]{{0, 0}, {1, 0}, {0, 1}, {-1, 0}, {0, -1}, {1, 1}, {-1 , 1}, {-1, -1}, {1, -1}, {2, 0}, {0, 2}, {-2, 0}, {0, -2}, {2, 2} , {-2, 2}, {-2, -2}, {2, -2}, {3, 0}, {0, 3}, {-3, 0}, {0, -3}, { 3, 3}, {-3, 3}, {-3, -3}, {3, -3}, {4, 0}, {0, 4}, {-4, 0}, {0, - 4}, {4, 4}, {-4, 4}, {-4, -4}, {4, -4}}; } for (int[] координата: координаты) { Hit(координата[0], координата[1], yg.damage); } (Да, я всё это написал от руки 😭) Теперь вопрос в следующем. Как я могу сделать это автоматически? Я имею в виду, что не хочу писать все это вручную в yg.radius 20.

Я ожидаю функцию, которая получает радиус в качестве аргумента и возвращает массив координат. Возможно, я делаю даже это неправильно, мне просто нужен массив, который дает мне эффект пикселей в круге. Заранее спасибо!
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»