Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local SizePosScaler = {}
- SizePosScaler.__index = SizePosScaler
- --Position Functions
- function SizePosScaler.ToOffsetPos(guiobject)
- if guiobject:isA("GuiBase2d") and guiobject.Parent then
- game:GetService( 'RunService' ).RenderStepped:Wait()
- local OffsetXPos = guiobject.Position.X.Scale*guiobject.Parent.AbsoluteSize.X + guiobject.Position.X.Offset
- local OffsetYPos = guiobject.Position.Y.Scale*guiobject.Parent.AbsoluteSize.Y + guiobject.Position.Y.Offset
- guiobject.Position = UDim2.new(0, OffsetXPos, 0, OffsetYPos)
- end
- end
- function SizePosScaler.ToScalePos(guiobject)
- if guiobject:IsA("GuiBase2d") then
- game:GetService( 'RunService' ).RenderStepped:Wait()
- local Viewport_Size
- if guiobject:FindFirstAncestorWhichIsA("GuiBase2d") then
- Viewport_Size = guiobject:FindFirstAncestorWhichIsA("GuiBase2d").AbsoluteSize
- else
- Viewport_Size = workspace.CurrentCamera.ViewportSize
- end
- local LB_Pos = guiobject.AbsolutePosition
- guiobject.Position = UDim2.new(LB_Pos.X/Viewport_Size.X,0,LB_Pos.Y/Viewport_Size.Y, 0)
- end
- end
- --Size Functions
- function SizePosScaler.ToOffsetSize(guiobject)
- if guiobject:IsA("GuiBase2d") then
- game:GetService( 'RunService' ).RenderStepped:Wait()
- local LB_Size = guiobject.AbsoluteSize
- guiobject.Size = UDim2.new(0, LB_Size.X, 0, LB_Size.Y)
- end
- end
- function SizePosScaler.ToScaleSize(guiobject)
- if guiobject:IsA("GuiBase2d") then
- game:GetService( 'RunService' ).RenderStepped:Wait()
- local Viewport_Size
- if guiobject.Parent:IsA("GuiBase2d") then
- Viewport_Size = guiobject.Parent.AbsoluteSize
- elseif guiobject:FindFirstAncestorWhichIsA("GuiBase2d") then
- Viewport_Size = guiobject:FindFirstAncestorWhichIsA("GuiBase2d").AbsoluteSize
- else
- Viewport_Size = workspace.CurrentCamera.ViewportSize
- end
- local LB_Size = guiobject.AbsoluteSize
- guiobject.Size = UDim2.new(LB_Size.X/Viewport_Size.X,0,LB_Size.Y/Viewport_Size.Y, 0)
- end
- end
- return SizePosScaler
Advertisement
Add Comment
Please, Sign In to add comment