Laba4 KozyrevSS GasolineTanker JAVA HARD
This commit is contained in:
parent
4d7b7e95a9
commit
f7843bddbe
@ -10,14 +10,12 @@ class DrawRandomTanker extends JComponent {
|
|||||||
|
|
||||||
public DrawRandomTanker() {
|
public DrawRandomTanker() {
|
||||||
GeneratorTanker = new ComboGenericCollection<>(25, 1000, 600);
|
GeneratorTanker = new ComboGenericCollection<>(25, 1000, 600);
|
||||||
GeneratorTanker.Add(GeneratorTanker.GenerateTanker());
|
GeneratorTanker.Add(GenerateTanker());
|
||||||
GeneratorTanker.Add(GeneratorTanker.GenerateTanker());
|
GeneratorTanker.Add(GenerateWheel());
|
||||||
GeneratorTanker.Add(GeneratorTanker.GenerateTanker());
|
GeneratorTanker.Add(GenerateTanker());
|
||||||
GeneratorTanker.Add(GeneratorTanker.GenerateTanker());
|
GeneratorTanker.Add(GenerateWheel());
|
||||||
GeneratorTanker.Add(GeneratorTanker.GenerateWheel());
|
GeneratorTanker.Add(GenerateTanker());
|
||||||
GeneratorTanker.Add(GeneratorTanker.GenerateWheel());
|
GeneratorTanker.Add(GenerateWheel());
|
||||||
GeneratorTanker.Add(GeneratorTanker.GenerateWheel());
|
|
||||||
GeneratorTanker.Add(GeneratorTanker.GenerateWheel());
|
|
||||||
}
|
}
|
||||||
public void paintComponent(Graphics g)
|
public void paintComponent(Graphics g)
|
||||||
{
|
{
|
||||||
@ -27,7 +25,40 @@ class DrawRandomTanker extends JComponent {
|
|||||||
_drawTanker.DrawTransport(g);
|
_drawTanker.DrawTransport(g);
|
||||||
super.repaint();
|
super.repaint();
|
||||||
}
|
}
|
||||||
|
private boolean IntToBool(int n) {return n % 2 == 0;}
|
||||||
|
public BaseTanker GenerateTanker()
|
||||||
|
{
|
||||||
|
Random random = new Random();
|
||||||
|
int mode = random.nextInt(0, 100) % 2;
|
||||||
|
if (mode == 0)
|
||||||
|
{
|
||||||
|
return new BaseTanker(random.nextInt(100, 200), random.nextInt(2000, 4000),
|
||||||
|
new Color(random.nextInt(0, 256), random.nextInt(0, 256), random.nextInt(0, 256)));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return new GasolineTanker(random.nextInt(100, 200), random.nextInt(2000, 4000),
|
||||||
|
new Color(random.nextInt(0, 256), random.nextInt(0, 256), random.nextInt(0, 256)),
|
||||||
|
new Color(random.nextInt(0, 256), random.nextInt(0, 256), random.nextInt(0, 256)),
|
||||||
|
IntToBool(random.nextInt(0, 100)),IntToBool(random.nextInt(0, 100)), IntToBool(random.nextInt(0, 100)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public IWheelDraw GenerateWheel()
|
||||||
|
{
|
||||||
|
Random random = new Random();
|
||||||
|
int mode = random.nextInt(0, 100) % 3;
|
||||||
|
IWheelDraw Wheels = new DrawWheelSquare();
|
||||||
|
switch (mode)
|
||||||
|
{
|
||||||
|
case 0 -> {Wheels = new DrawWheelCircle();}
|
||||||
|
case 1 -> {Wheels = new DrawWheelClassic();}
|
||||||
|
case 2 -> {Wheels = new DrawWheelSquare();}
|
||||||
|
}
|
||||||
|
int count = random.nextInt(0, 100);
|
||||||
|
Wheels.setWheelCount(count);
|
||||||
|
return Wheels;
|
||||||
|
}
|
||||||
protected void GenerateTanker_Click()
|
protected void GenerateTanker_Click()
|
||||||
{
|
{
|
||||||
_drawTanker = GeneratorTanker.CreateDraw();
|
_drawTanker = GeneratorTanker.CreateDraw();
|
||||||
|
@ -22,38 +22,6 @@ public class ComboGenericCollection <T extends BaseTanker, U extends IWheelDraw
|
|||||||
Height = height;
|
Height = height;
|
||||||
}
|
}
|
||||||
|
|
||||||
public T GenerateTanker()
|
|
||||||
{
|
|
||||||
int mode = random.nextInt(0, 100) % 2;
|
|
||||||
if (mode == 0)
|
|
||||||
{
|
|
||||||
return (T) new BaseTanker(random.nextInt(100, 200), random.nextInt(2000, 4000),
|
|
||||||
new Color(random.nextInt(0, 256), random.nextInt(0, 256), random.nextInt(0, 256)));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return (T) new GasolineTanker(random.nextInt(100, 200), random.nextInt(2000, 4000),
|
|
||||||
new Color(random.nextInt(0, 256), random.nextInt(0, 256), random.nextInt(0, 256)),
|
|
||||||
new Color(random.nextInt(0, 256), random.nextInt(0, 256), random.nextInt(0, 256)),
|
|
||||||
IntToBool(random.nextInt(0, 100)),IntToBool(random.nextInt(0, 100)), IntToBool(random.nextInt(0, 100)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public U GenerateWheel()
|
|
||||||
{
|
|
||||||
int mode = random.nextInt(0, 100) % 3;
|
|
||||||
U Wheels = (U) new DrawWheelSquare();
|
|
||||||
switch (mode)
|
|
||||||
{
|
|
||||||
case 0 -> {Wheels = (U) new DrawWheelCircle();}
|
|
||||||
case 1 -> {Wheels = (U) new DrawWheelClassic();}
|
|
||||||
case 2 -> {Wheels = (U) new DrawWheelSquare();}
|
|
||||||
}
|
|
||||||
int count = random.nextInt(0, 100);
|
|
||||||
Wheels.setWheelCount(count);
|
|
||||||
return Wheels;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean Add(T tanker)
|
public boolean Add(T tanker)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < MaxSize(); i++)
|
for (int i = 0; i < MaxSize(); i++)
|
||||||
@ -83,8 +51,6 @@ public class ComboGenericCollection <T extends BaseTanker, U extends IWheelDraw
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private boolean IntToBool(int n) {return n % 2 == 0;}
|
|
||||||
|
|
||||||
public DrawTanker CreateDraw()
|
public DrawTanker CreateDraw()
|
||||||
{
|
{
|
||||||
T tanker = _tankers[random.nextInt(0, CountTankers)];
|
T tanker = _tankers[random.nextInt(0, CountTankers)];
|
||||||
|
Loading…
Reference in New Issue
Block a user