I'm not sure what's going on, but the reason you're last code causes a stack overflow is because you essentially enter an infinite loop.
You hook into the setscale function, and then SetScale within it. So it just constantly hooks into itself and runs and runs and runs. Thus, you need to have an if self:GetScale() > 0.8 then self:SetScale(0.8) end so it doesn't infinitely run; it only runs until the scale is 0.8.
|