# File lib/rubygame/rect.rb, line 434 def clip!(rect) nself = self.normalize other = Rect.new_from_object(rect).normalize! if self.collide_rect?(other) self[0] = [nself.at(0), other.at(0)].max self[1] = [nself.at(1), other.at(1)].max self[2] = [nself.right, other.right].min - self.at(0) self[3] = [nself.bottom, other.bottom].min - self.at(1) else #if they do not intersect at all: self[0], self[1] = nself.topleft self[2], self[3] = 0, 0 end return self end