@Override
    public void onDraw(Graphics G, int viewX, int viewY) {
        if (X>viewX&&X<viewX+300&&Y>viewY&&Y<viewY+300)
        {
            Graphics2D g = (Graphics2D)G;
            Composite c = g.getComposite();
            // g.setComposite(new Additive());
            g.setColor(new Color(255,r.nextInt(255),0,r.nextInt(255)));
                g.fillArc(((int)X-6)-viewX, (int)(Y-6)-viewY, 12,12, 0, 360); 
                for (int y = 0; y < 30; y+=3)
                {
                    for (int i = 0; i < 4; i++)
                    {
                        int e1 = 6-r.nextInt(12), e2 = 6-r.nextInt(12);
                        g.setColor(new Color(255,r.nextInt(255),0,r.nextInt(255)));
                        g.fillArc((int)(X+e1)-viewX,(int) (Y+e2+y)-viewY, e1, e2, 0, 360); 
                    }
                }
            g.setComposite(c);
        }
    }