-- Craft Research Timer (CRT) by @aTo (EU) -- v0.4.8 function CRT.SetLock(Newlock) CRT.SV.Settings.lock = Newlock if (CRT.UI.GRID_TLW~= nil) then CRT.UI.GRID_TLW:SetMovable(Newlock) end if (CRT.UI.CRAFT_TLW[0] ~= nil) then CRT.UI.CRAFT_TLW[0]:SetMovable(Newlock) end if (CRT.UI.CRAFT_TLW[1] ~= nil) then CRT.UI.CRAFT_TLW[1]:SetMovable(Newlock) end if (CRT.UI.CRAFT_TLW[2] ~= nil) then CRT.UI.CRAFT_TLW[2]:SetMovable(Newlock) end end function CRT.SetMode(NewMode) CRT.SV.Settings.mode = NewMode ReloadUI() end function CRT.Settimer_format(Newtimer_format) CRT.SV.Settings.timer_format = Newtimer_format end function CRT.Gettimer_format() local format = CRT.SV.Settings.timer_format if (string.match(format, ":")) then format = "smart" CRT.SV.Settings.timer_format = format end return format end -------------------------ALERT Components--------------------------------------- function CRT.SetAlert(NewAlert) CRT.SV.Settings.ALERT.hidden = NewAlert if (CRT.UI.ALERT_TLW ~= nil) then CRT.UI.ALERT_TLW:SetHidden(not NewAlert) end end function CRT.SetPreview(NewPreview) CRT.SV.Settings.ALERT.preview = NewPreview CRT.UI.ALERT_BD:SetHidden(not NewPreview) if (CRT.UI.ALERT_TLW ~= nil) then CRT.UI.ALERT_TLW:SetMovable(NewPreview) end end function CRT.GetALERTColor() return CRT.SV.Settings.ALERT.Color.r, CRT.SV.Settings.ALERT.Color.g, CRT.SV.Settings.ALERT.Color.b, CRT.SV.Settings.ALERT.Color.a end function CRT.SetALERTColor(r, g, b, a) if (CRT.UI.ALERT_WD ~= nil) then CRT.UI.ALERT_WD:AddMessage("New Alert Color", CRT.SV.Settings.ALERT.Color.r, CRT.SV.Settings.ALERT.Color.g, CRT.SV.Settings.ALERT.Color.b) end CRT.SV.Settings.ALERT.Color.r = r CRT.SV.Settings.ALERT.Color.g = g CRT.SV.Settings.ALERT.Color.b = b CRT.SV.Settings.ALERT.Color.a = a end function CRT.SetALERTBS(Alertswitch) CRT.SV.Settings.ALERT.BS = Alertswitch end function CRT.SetALERTCL(Alertswitch) CRT.SV.Settings.ALERT.CL = Alertswitch end function CRT.SetALERTWO(Alertswitch) CRT.SV.Settings.ALERT.WO = Alertswitch end -------------------------GRID Components--------------------------------------- function CRT.GetGRIDBackdropAlpha() local BackdropAlphaPercent = CRT.SV.Settings.GRID.BackdropAlpha * 100 return BackdropAlphaPercent end function CRT.SetGRIDBackdropAlpha(NewGRIDBackdropAlphaPercent) local NewGRIDBackdropAlpha = NewGRIDBackdropAlphaPercent / 100 if (CRT.UI.GRID_BD ~= nil) then CRT.UI.GRID_BD:SetAlpha(NewGRIDBackdropAlpha) end CRT.SV.Settings.GRID.BackdropAlpha = NewGRIDBackdropAlpha end function CRT.GetGRIDScale() local ScalePercent = CRT.SV.Settings.GRID.Scale * 100 return ScalePercent end function CRT.SetGRIDScale(NewGRIDScalePercent) local NewGRIDScale = NewGRIDScalePercent / 100 if (CRT.UI.GRID_TLW~= nil) then CRT.UI.GRID_TLW:SetScale(NewGRIDScale) end CRT.SV.Settings.GRID.Scale = NewGRIDScale CRT.GRID_Sort() end function CRT.GetGRIDColor() return CRT.SV.Settings.GRID.Color.r, CRT.SV.Settings.GRID.Color.g, CRT.SV.Settings.GRID.Color.b, CRT.SV.Settings.GRID.Color.a end function CRT.SetGRIDColor(r, g, b, a) CRT.SV.Settings.GRID.Color.r = r CRT.SV.Settings.GRID.Color.g = g CRT.SV.Settings.GRID.Color.b = b CRT.SV.Settings.GRID.Color.a = a end -------------------------BS Components--------------------------------------- function CRT.SetTrackerBS(state) CRT.SV.Settings.BS.craft = state if (CRT.UI.CRAFT_TLW[0] ~= nil) then CRT.UI.CRAFT_TLW[0]:SetHidden(not state) end end function CRT.SetBSHide0(NewBSHide0) CRT.SV.Settings.BS.Hide_0 = NewBSHide0 if (CRT.UI.CRAFT_TLW[0] ~= nil and NewBSHide0 == false and CRT.SV.Settings.BS.Hide_Type ~= "Toggle keybind" and CRT.SV.Settings.BS.craft == true) then CRT.UI.CRAFT_TLW[0]:SetHidden(false) end end function CRT.SetBSHideMenu(NewBSHideMenu) CRT.SV.Settings.BS.Hide_Type = NewBSHideMenu if (NewBSHideMenu == "Toggle keybind") then if (CRT.UI.CRAFT_TLW[0] ~= nil and CRT.SV.Settings.BS.craft == true) then CRT.UI.CRAFT_TLW[0]:SetHidden(false) end if (CRT.UI.CRAFT_TLW[1] ~= nil and CRT.SV.Settings.CL.craft == true) then CRT.UI.CRAFT_TLW[1]:SetHidden(false) end if (CRT.UI.CRAFT_TLW[2] ~= nil and CRT.SV.Settings.WO.craft == true) then CRT.UI.CRAFT_TLW[2]:SetHidden(false) end end end function CRT.GetBSBackdropAlpha() local BackdropAlphaPercent = CRT.SV.Settings.BS.BackdropAlpha * 100 return BackdropAlphaPercent end function CRT.SetBSBackdropAlpha(NewBSBackdropAlphaPercent) local NewBSBackdropAlpha = NewBSBackdropAlphaPercent / 100 if (CRT.UI.CRAFT_TLW[0] ~= nil) then CRT.UI.CRAFT_BD[0]:SetAlpha(NewBSBackdropAlpha) end CRT.SV.Settings.BS.BackdropAlpha = NewBSBackdropAlpha end function CRT.GetBSScale() local ScalePercent = CRT.SV.Settings.BS.Scale * 100 return ScalePercent end function CRT.SetBSScale(NewBSScalePercent) local NewBSScale = NewBSScalePercent / 100 if (CRT.UI.CRAFT_TLW[0] ~= nil) then CRT.UI.CRAFT_TLW[0]:SetScale(NewBSScale) end CRT.SV.Settings.BS.Scale = NewBSScale end function CRT.GetBSColor() return CRT.SV.Settings.BS.Color.r, CRT.SV.Settings.BS.Color.g, CRT.SV.Settings.BS.Color.b, CRT.SV.Settings.BS.Color.a end function CRT.SetBSColor(r, g, b, a) if (CRT.UI.CRAFT_TLW[0] ~= nil) then CRT.UI.CRAFT_WD[0][0]["Craft_Text"]:SetColor(r,g,b,a) for simcraft = 1, 3, 1 do CRT.UI.CRAFT_WD[0][simcraft]["text"]:SetColor(r,g,b,a) end end CRT.SV.Settings.BS.Color.r = r CRT.SV.Settings.BS.Color.g = g CRT.SV.Settings.BS.Color.b = b CRT.SV.Settings.BS.Color.a = a end -------------------------CL Components--------------------------------------- function CRT.SetTrackerCL(state) CRT.SV.Settings.CL.craft = state if (CRT.UI.CRAFT_TLW[1] ~= nil) then CRT.UI.CRAFT_TLW[1]:SetHidden(not state) end end function CRT.SetCLHide0(NewCLHide0) CRT.SV.Settings.CL.Hide_0 = NewCLHide0 if (CRT.UI.CRAFT_TLW[1] ~= nil and NewCLHide0 == false and CRT.SV.Settings.CL.Hide_Type ~= "Toggle keybind" and CRT.SV.Settings.CL.craft == true) then CRT.UI.CRAFT_TLW[1]:SetHidden(false) end end function CRT.SetCLHideMenu(NewCLHideMenu) CRT.SV.Settings.CL.Hide_Type = NewCLHideMenu if (NewCLHideMenu == "Toggle keybind") then if (CRT.UI.CRAFT_TLW[0] ~= nil and CRT.SV.Settings.BS.craft == true) then CRT.UI.CRAFT_TLW[0]:SetHidden(false) end if (CRT.UI.CRAFT_TLW[1] ~= nil and CRT.SV.Settings.CL.craft == true) then CRT.UI.CRAFT_TLW[1]:SetHidden(false) end if (CRT.UI.CRAFT_TLW[2] ~= nil and CRT.SV.Settings.WO.craft == true) then CRT.UI.CRAFT_TLW[2]:SetHidden(false) end end end function CRT.GetCLBackdropAlpha() local BackdropAlphaPercent = CRT.SV.Settings.CL.BackdropAlpha * 100 return BackdropAlphaPercent end function CRT.SetCLBackdropAlpha(NewCLBackdropAlphaPercent) local NewCLBackdropAlpha = NewCLBackdropAlphaPercent / 100 if (CRT.UI.CRAFT_BD[1] ~= nil) then CRT.UI.CRAFT_BD[1]:SetAlpha(NewCLBackdropAlpha) end CRT.SV.Settings.CL.BackdropAlpha = NewCLBackdropAlpha end function CRT.GetCLScale() local ScalePercent = CRT.SV.Settings.CL.Scale * 100 return ScalePercent end function CRT.SetCLScale(NewCLScalePercent) local NewCLScale = NewCLScalePercent / 100 if (CRT.UI.CRAFT_TLW[1] ~= nil) then CRT.UI.CRAFT_TLW[1]:SetScale(NewCLScale) end CRT.SV.Settings.CL.Scale = NewCLScale end function CRT.GetCLColor() return CRT.SV.Settings.CL.Color.r, CRT.SV.Settings.CL.Color.g, CRT.SV.Settings.CL.Color.b, CRT.SV.Settings.CL.Color.a end function CRT.SetCLColor(r, g, b, a) if (CRT.UI.CRAFT_TLW[1] ~= nil) then CRT.UI.CRAFT_WD[1][0]["Craft_Text"]:SetColor(r,g,b,a) for simcraft = 1, 3, 1 do CRT.UI.CRAFT_WD[1][simcraft]["text"]:SetColor(r,g,b,a) end end CRT.SV.Settings.CL.Color.r = r CRT.SV.Settings.CL.Color.g = g CRT.SV.Settings.CL.Color.b = b CRT.SV.Settings.CL.Color.a = a end -------------------------Woodworking Components--------------------------------------- function CRT.SetTrackerWO(state) CRT.SV.Settings.WO.craft = state if (CRT.UI.CRAFT_TLW[2] ~= nil) then CRT.UI.CRAFT_TLW[2]:SetHidden(not state) end end function CRT.SetWOHide0(NewWOHide0) CRT.SV.Settings.WO.Hide_0 = NewWOHide0 if (CRT.UI.CRAFT_TLW[2] ~= nil and NewWOHide0 == false and CRT.SV.Settings.WO.Hide_0 ~= "Toggle keybind" and CRT.SV.Settings.WO.craft == true) then CRT.UI.CRAFT_TLW[2]:SetHidden(false) end end function CRT.SetWOHideMenu(NewWOHideMenu) CRT.SV.Settings.WO.Hide_Type = NewWOHideMenu if (NewWOHideMenu == "Toggle keybind") then if (CRT.UI.CRAFT_TLW[0] ~= nil and CRT.SV.Settings.BS.craft == true) then CRT.UI.CRAFT_TLW[0]:SetHidden(false) end if (CRT.UI.CRAFT_TLW[1] ~= nil and CRT.SV.Settings.CL.craft == true) then CRT.UI.CRAFT_TLW[1]:SetHidden(false) end if (CRT.UI.CRAFT_TLW[2] ~= nil and CRT.SV.Settings.WO.craft == true) then CRT.UI.CRAFT_TLW[2]:SetHidden(false) end end end function CRT.GetWOBackdropAlpha() local BackdropAlphaPercent = CRT.SV.Settings.WO.BackdropAlpha * 100 return BackdropAlphaPercent end function CRT.SetWOBackdropAlpha(NewWOBackdropAlphaPercent) local NewWOBackdropAlpha = NewWOBackdropAlphaPercent / 100 if (CRT.UI.CRAFT_BD[2] ~= nil) then CRT.UI.CRAFT_BD[2]:SetAlpha(NewWOBackdropAlpha) end CRT.SV.Settings.WO.BackdropAlpha = NewWOBackdropAlpha end function CRT.GetWOScale() local ScalePercent = CRT.SV.Settings.WO.Scale * 100 return ScalePercent end function CRT.SetWOScale(NewWOScalePercent) local NewWOScale = NewWOScalePercent / 100 if (CRT.UI.CRAFT_TLW[1] ~= nil) then CRT.UI.CRAFT_TLW[2]:SetScale(NewWOScale) end CRT.SV.Settings.WO.Scale = NewWOScale end function CRT.GetWOColor() return CRT.SV.Settings.WO.Color.r, CRT.SV.Settings.WO.Color.g, CRT.SV.Settings.WO.Color.b, CRT.SV.Settings.WO.Color.a end function CRT.SetWOColor(r, g, b, a) if (CRT.UI.CRAFT_TLW[2] ~= nil) then CRT.UI.CRAFT_WD[2][0]["Craft_Text"]:SetColor(r,g,b,a) for simcraft = 1, 3, 1 do CRT.UI.CRAFT_WD[2][simcraft]["text"]:SetColor(r,g,b,a) end end CRT.SV.Settings.WO.Color.r = r CRT.SV.Settings.WO.Color.g = g CRT.SV.Settings.WO.Color.b = b CRT.SV.Settings.WO.Color.a = a end function CRT.Reset() CRT.SV.Settings.icon_width = CRT.svDefaults.icon_width CRT.SV.Settings.icon_height = CRT.svDefaults.icon_height CRT.SV.Settings.text_width = CRT.svDefaults.text_width CRT.SV.Settings.text_height = CRT.svDefaults.text_height CRT.SV.Settings.mode = CRT.svDefaults.mode CRT.SV.Settings.timer_format = CRT.svDefaults.timer_format -- blacksmithing CRT.SV.Settings.BS.offset.X = CRT.svDefaults.BS.offset.X CRT.SV.Settings.BS.offset.Y = CRT.svDefaults.BS.offset.Y CRT.SV.Settings.BS.craft = CRT.svDefaults.BS.craft CRT.SV.Settings.BS.Hide_0 = CRT.svDefaults.BS.Hide_0 CRT.SV.Settings.BS.Hide_Type = CRT.svDefaults.BS.Hide_Type CRT.SV.Settings.BS.BackdropAlpha = CRT.svDefaults.BS.BackdropAlpha CRT.SV.Settings.BS.Scale = CRT.svDefaults.BS.Scale CRT.SV.Settings.BS.Color.r = CRT.svDefaults.BS.Color.r CRT.SV.Settings.BS.Color.g = CRT.svDefaults.BS.Color.g CRT.SV.Settings.BS.Color.b = CRT.svDefaults.BS.Color.b CRT.SV.Settings.BS.Color.a = CRT.svDefaults.BS.Color.a --clothing CRT.SV.Settings.CL.offset.X = CRT.svDefaults.CL.offset.X CRT.SV.Settings.CL.offset.Y = CRT.svDefaults.CL.offset.Y CRT.SV.Settings.CL.craft = CRT.svDefaults.CL.craft CRT.SV.Settings.CL.Hide_0 = CRT.svDefaults.CL.Hide_0 CRT.SV.Settings.CL.Hide_Type = CRT.svDefaults.CL.Hide_Type CRT.SV.Settings.CL.BackdropAlpha = CRT.svDefaults.CL.BackdropAlpha CRT.SV.Settings.CL.Scale = CRT.svDefaults.CL.Scale CRT.SV.Settings.CL.Color.r = CRT.svDefaults.CL.Color.r CRT.SV.Settings.CL.Color.g = CRT.svDefaults.CL.Color.g CRT.SV.Settings.CL.Color.b = CRT.svDefaults.CL.Color.b CRT.SV.Settings.CL.Color.a = CRT.svDefaults.CL.Color.a -- woodworking CRT.SV.Settings.WO.offset.X = CRT.svDefaults.WO.offset.X CRT.SV.Settings.WO.offset.Y = CRT.svDefaults.WO.offset.Y CRT.SV.Settings.WO.craft = CRT.svDefaults.WO.craft CRT.SV.Settings.WO.Hide_0 = CRT.svDefaults.WO.Hide_0 CRT.SV.Settings.WO.Hide_Type = CRT.svDefaults.WO.Hide_Type CRT.SV.Settings.WO.BackdropAlpha = CRT.svDefaults.WO.BackdropAlpha CRT.SV.Settings.WO.Scale = CRT.svDefaults.WO.Scale CRT.SV.Settings.WO.Color.r = CRT.svDefaults.WO.Color.r CRT.SV.Settings.WO.Color.g = CRT.svDefaults.WO.Color.g CRT.SV.Settings.WO.Color.b = CRT.svDefaults.WO.Color.b CRT.SV.Settings.WO.Color.a = CRT.svDefaults.WO.Color.a --Grid CRT.SV.Settings.GRID.hidden = CRT.svDefaults.GRID.hidden CRT.SV.Settings.GRID.offset.X = CRT.svDefaults.GRID.offset.X CRT.SV.Settings.GRID.offset.Y = CRT.svDefaults.GRID.offset.Y CRT.SV.Settings.GRID.BackdropAlpha = CRT.svDefaults.GRID.BackdropAlpha CRT.SV.Settings.GRID.Scale = CRT.svDefaults.GRID.Scale CRT.SV.Settings.GRID.Color.r = CRT.svDefaults.GRID.Color.r CRT.SV.Settings.GRID.Color.g = CRT.svDefaults.GRID.Color.g CRT.SV.Settings.GRID.Color.b = CRT.svDefaults.GRID.Color.b CRT.SV.Settings.GRID.Color.a = CRT.svDefaults.GRID.Color.a --Alert CRT.SV.Settings.ALERT.hidden = CRT.svDefaults.ALERT.hidden CRT.SV.Settings.ALERT.preview = CRT.svDefaults.ALERT.preview CRT.SV.Settings.ALERT.offset.X = CRT.svDefaults.ALERT.offset.X CRT.SV.Settings.ALERT.offset.Y = CRT.svDefaults.ALERT.offset.Y CRT.SV.Settings.ALERT.Color.r = CRT.svDefaults.ALERT.Color.r CRT.SV.Settings.ALERT.Color.g = CRT.svDefaults.ALERT.Color.g CRT.SV.Settings.ALERT.Color.b = CRT.svDefaults.ALERT.Color.b CRT.SV.Settings.ALERT.Color.a = CRT.svDefaults.ALERT.Color.a ReloadUI() end