import javax.swing.*;
import java.awt.Color;
import java.util.*;
public class Boxes
{
public static void main(String [] argz)
{
Random gen = new Random();
ArrayList<MovingFrame> frames = new ArrayList<MovingFrame>();
final int RESOLUTION_X = 1440;
final int RESOLUTION_Y = 900;
for(int i = 0; i < 15; i++)
{
MovingFrame frame
= new MovingFrame(
gen.nextInt(RESOLUTION_X),
gen.nextInt(RESOLUTION_Y),
80,
100,
gen.nextInt(500) / 10.0,
gen.nextInt(500) / 10.0,
Color.RED,
true);
frames.add(frame);
}
while(true)
{
for(int i = 0; i < frames.size(); i++)
{
frames.get(i).move();
if(frames.get(i).getX() >= RESOLUTION_X - 80 || frames.get(i).getX() <= 0)
{
frames.get(i).invertDx();
}
if(frames.get(i).getY() >= RESOLUTION_Y - 100 || frames.get(i).getY() <= 0)
{
frames.get(i).invertDy();
}
for(int j = 0; j < frames.size(); j++)
{
if(frames.get(i).bounds().intersects(frames.get(j).bounds()) && i != j)
{
frames.get(i).invertDx();
frames.get(i).invertDy();
frames.get(i).move();
frames.get(j).invertDx();
frames.get(j).invertDy();
frames.get(j).move();
}
}
}
}
}
}