idUnitframes:RegisterDB('idUnitframesDB') idUnitframes:RegisterDefaults('account', { Position = { player = {p1='BOTTOM', p2='BOTTOM', pr='UIParent', x=0, y=140}, pet = {p1='BOTTOM', p2='BOTTOM', pr='UIParent', x=0, y=0}, target = {p1='BOTTOM', p2='TOP', pr='idUnitframesplayer', x=0, y=1}, party1 = {p1='BOTTOM', p2='BOTTOM', pr='UIParent', x=0, y=0}, party2 = {p1='BOTTOM', p2='BOTTOM', pr='UIParent', x=0, y=0}, party3 = {p1='BOTTOM', p2='BOTTOM', pr='UIParent', x=0, y=0}, party4 = {p1='BOTTOM', p2='BOTTOM', pr='UIParent', x=0, y=0}, } }) ... function idUnitframes:loadPosition(Unit) if not self.db.profile.Position then self.Frames[Unit]:SetPoint(self.db.account.Position[Unit].p1, self.db.account.Position[Unit].pr, self.db.account.Position[Unit].p2, self.db.account.Position[Unit].x, self.db.account.Position[Unit].y) return end self.Frames[Unit]:SetPoint(self.db.profile.Position[Unit].p1, self.db.profile.Position[Unit].pr, self.db.profile.Position[Unit].p2, self.db.profile.Position[Unit].x, self.db.profile.Position[Unit].y) end function idUnitframes:savePosition(Unit) local Frame = self.Frames[Unit] local Scale = Frame:GetEffectiveScale() local x,y = Frame:GetLeft(), Frame:GetTop() local x = Frame:GetLeft() * Scale local y = Frame:GetTop() * Scale self.db.profile.Position[Unit].x = x -- line 519 self.db.profile.Position[Unit].y = y end