private boolean hitTest(Rectangle r, Rectangle s) { // X axis if ( (r.x > s.x && r.x < s.x + s.width) || (r.x + r.width > s.x && r.x + r.width < s.x + s.width) || (r.x < s.x && r.x+r.width > s.x+s.width) || (r.x > s.x && r.x+r.width < s.x+s.width)) // Y axis if ( (r.y > s.y && r.y < s.y + s.height) || (r.y + r.height > s.y && r.y + r.height < s.y + s.height) || (r.y < s.y && r.y+r.height > s.y+s.height) || (r.y > s.y && r.y+r.height < s.y+s.height)) return true; return false; }