-
Notifications
You must be signed in to change notification settings - Fork 0
/
shockwave.java
62 lines (60 loc) · 1.52 KB
/
shockwave.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
import java.awt.*;
class Shockwave implements Runnable
{
int x,y,r;
static Shockwave instance=null;
static boolean executing=false;
Color shockwavecolor=goti.nullcol;
static Color white1=new Color(199, 179, 158);
static Color black1=new Color(67, 69, 98);
static Color white2=Color.WHITE;
static Color black2=Color.BLACK;
static Color white=white1,black=black1;
public Shockwave(int x, int y,Color col)
{
this.x=x;
this.y=y;
if(col==goti.colWhit)
shockwavecolor=white;
else
shockwavecolor=black;
System.out.println("shock!");
instance=this;
}
public void run()
{
if(executing==true|| instance==null)
return;
executing=true;
double spd=6;
while(instance.r<750)
{
instance.r+=spd;
if(spd>10)spd-=0.03;
try
{
Thread.sleep(5);
}
catch (InterruptedException ie)
{
ie.printStackTrace();
}
}
executing=false;
instance=null;
}
public void render(Graphics2D g)
{
g.setStroke(new BasicStroke(7));
g.setColor(instance.shockwavecolor);
int circlx=instance.x;
int circly=instance.y;
int circlr=instance.r;
g.drawOval(circlx-circlr,circly-circlr,2*circlr,2*circlr);
}
public static void drawContent(Graphics2D g)
{
if(instance!=null)
instance.render(g);
}
}