Pulsers = class(Group, function(o)
	Group.init(o)
	o.pulsers = o:add(Group())
end)
function Pulsers:addPulse(atObject)
	local pulse = nil
	for i=table.maxn(self.pulsers.members),1,-1 do
		if not self.pulsers.members[i].exists then
			pulse = self.pulsers.members[i]
			pulse.exists = true
			break;
		end
	end
	if not pulse then pulse = self.pulsers:add(Object(0,0,10,10)) end
	if pulse.fadeTween then Tweener:removeTween(pulse.fadeTween) end
	if pulse.posTween then Tweener:removeTween(pulse.posTween) end
	pulse.pos.x, pulse.pos.y = atObject.pos.x, atObject.pos.y
	pulse.drawType = 'stretched'
	pulse.sprite = sprites['tiles']['white.png']
	pulse.w, pulse.h = atObject.w, atObject.h
	pulse.scrollFactor = atObject.scrollFactor
	pulse:setColor(255, 255, 255, 170)
	local s = 5
	pulse.fadeTween = Tweener:addTween(pulse.tint, {a=0}, {onComplete=function() pulse.exists = false; end})
	pulse.posTween = Tweener:addTween(pulse.pos, {x=pulse.pos.x-s*r_scale, y=pulse.pos.y-s*r_scale})
	pulse.sizeTween = Tweener:addTween(pulse, {w=pulse.w+s*2*r_scale, h=pulse.h+s*2*r_scale})
end
