Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- type table = {
- [string]: CFrame | Vector3 | UDim2 | Vector2 | number | Color3 | UDim | boolean | Rect | Vector2int16 | EnumItem,
- }
- local TweenService = game:GetService("TweenService")
- local defaultEasing = {
- EaseStyle = Enum.EasingStyle.Linear,
- EaseDir = Enum.EasingDirection.In
- }
- local function mod(
- part,
- ttime: number,
- towhat: table | number | boolean,
- easestyle: Enum.EasingStyle?,
- easedir: Enum.EasingDirection?
- ): Tween
- easedir = easedir or defaultEasing.EaseDir
- easestyle = easestyle or defaultEasing.EaseStyle
- if part.ClassName == "ParticleEmitter" then
- local tVal = Instance.new("NumberValue")
- tVal.Value = part.Transparency.Keypoints[1].Value
- tVal.Parent = part
- local tInfo = TweenInfo.new(ttime, easestyle, easedir)
- local ftwn = TweenService:Create(tVal, tInfo, { Value = towhat.Transparency })
- tVal.Changed:Connect(function(val)
- part.Transparency = NumberSequence.new({
- part.Transparency.Keypoints[1],
- NumberSequenceKeypoint.new(1, val),
- })
- end)
- ftwn.Completed:Connect(function()
- ftwn:Destroy()
- tVal:Destroy()
- end)
- return ftwn
- else
- local tInfo = TweenInfo.new(ttime, easestyle, easedir)
- local ftwn = TweenService:Create(part, tInfo, towhat)
- ftwn.Completed:Connect(function()
- ftwn:Destroy()
- end)
- return ftwn
- end
- end
- return function(easestyle: Enum.EasingStyle, easedir: Enum.EasingDirection)
- if easedir then
- defaultEasing.EaseDir = easedir
- end
- if easestyle then
- defaultEasing.EaseStyle = easestyle
- end
- return mod
- end
Advertisement
Add Comment
Please, Sign In to add comment