Limeiks

doors script

Feb 2nd, 2023
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 26.05 KB | Software | 0 0
  1. local a=game:GetService'HttpService'local b=game:GetService'Players'local c=game
  2. :GetService'ReplicatedStorage'local d=game:GetService'RunService'local e=game:
  3. GetService'SoundService'local f=game:GetService'Workspace'local g='Doors'local h
  4. ='Hotel v5.0'local i='OminousVibes/doors'local j='hotel'local k={[6839171747]=
  5. 5894}do local l=game.PlaceId local m=game.PlaceVersion local n=k[l]if not n then
  6. warn'Script does not support this place instance.'warn
  7. [[The PlaceID and version has been set to your clipboard. Please report this to the developer.]]
  8. return setclipboard('['..tostring(l)..'] = '..tostring(m)..',')end end do local
  9. l=j..h if getgenv()[l]then return end getgenv()[l]=true end local l=
  10. [[https://raw.githubusercontent.com/wally-rblx/LinoriaLib/main/]]local m=
  11. loadstring(game:HttpGet(l..'Library.lua'))()local n=loadstring(game:HttpGet(l..
  12. 'addons/SaveManager.lua'))()local o=loadstring(game:HttpGet(l..
  13. 'addons/ThemeManager.lua'))()local p do local q,r=type,typeof p=setmetatable({},
  14. {__tostring=function()return'Bin'end})p.__index=p function p.new(...)local s=
  15. setmetatable({},p)return s:constructor(...)or s end function p.constructor(s)end
  16. function p.add(s,t)local u={item=t}if s.head==nil then s.head=u end if s.tail
  17. then s.tail.next=u end s.tail=u return t end function p.destroy(s)while s.head
  18. do local t=s.head.item if q(t)=='function'then t()elseif r(t)==
  19. 'RBXScriptConnection'then t:Disconnect()elseif q(t)=='thread'then task.cancel(t)
  20. elseif t.destroy~=nil then t:destroy()elseif t.Destroy~=nil then t:Destroy()end
  21. s.head=s.head.next end end function p.isEmpty(s)return s.head==nil end end local
  22. q do q={}q.__index=q function q.__tostring(r)return'BaseComponent - '..r.
  23. instance:GetFullName()end local r,s,t=setmetatable,assert,task.defer function q.
  24. new(u,...)local v=r({},q)v=v:constructor(u,...)or v v:run()return v end function
  25. q.constructor(u,v,...)u.instance=v u.running=false u.destructed=false u._maid=p.
  26. new()u._maid:add(v.Destroying:Connect(function()if not u.destructed then u:
  27. destroy()end end))end function q.onStart(u)end function q.run(u)s(not u.running,
  28. '['..u:__tostring()..'] is already running')t(function()u.running=true if not u.
  29. destructed then u:onStart()end end)end function q.destroy(u)s(not u.destructed,
  30. '['..u:__tostring()..'] is already destroyed')u.running=false u.destructed=true
  31. u._maid:destroy()end end local r=b.LocalPlayer local s=f.CurrentCamera local t=c
  32. :WaitForChild'GameData'local u={}do local v=c:WaitForChild'EntityInfo'local w={
  33. PadlockHint=v:WaitForChild'PadlockHint',EngageMinigame=v:WaitForChild
  34. 'EngageMinigame',ClutchHeartbeat=v:WaitForChild'ClutchHeartbeat',Screech=v:
  35. WaitForChild'Screech'}for x,y in pairs(w)do u[x]=y.OnClientEvent end end local v
  36. =Instance.new'Sound'local w={}local x={}local y local z local A local B local C
  37. local D local E local F local G local H local I local J local K={}local L={}
  38. local M={}local N=function(N,O)if N and Toggles['alerts.enabled'].Value then
  39. local P={message=O.message or'',audio=O.audio or false,duration=O.duration or 5}
  40. m:Notify(P.message,P.duration)if P.audio and Toggles['alerts.audio'].Value then
  41. v.TimePosition=0.25 v:Play()end end end do local O=q y=setmetatable({},{__index=
  42. O})y.__index=y function y.__tostring(P)return'CharacterComponent - '..P.instance
  43. :GetFullName()end y.attached={}function y.new(P,...)local Q=setmetatable({},y)Q=
  44. Q:constructor(P,...)or Q Q:run()return Q end function y.constructor(P,Q)O.
  45. constructor(P,Q)P.client=B.attached[b:GetPlayerFromCharacter(Q)]P.root=Q:
  46. WaitForChild('HumanoidRootPart',5)P.humanoid=Q:WaitForChild('Humanoid',5)assert(
  47. P.client~=nil,'['..P:__tostring().."] is not a client's character")assert(P.root
  48. ~=nil,'['..P:__tostring()..'] is missing a HumanoidRootPart')assert(P.humanoid~=
  49. nil,'['..P:__tostring()..'] is missing a Humanoid')P._maid:add(Q.AncestryChanged
  50. :Connect(function(R,S)if S==nil then P:destroy()end end))end function y.onStart(
  51. P)y.attached[P.instance]=P O.onStart(P)end function y.destroy(P)y.attached[P.
  52. instance]=nil O.destroy(P)end end do local O=Vector3.new(1,0,1)local P=y z=
  53. setmetatable({},{__index=P})z.__index=z function z.__tostring(Q)return
  54. 'AvatarComponent - '..Q.instance:GetFullName()end z.attached=nil function z.new(
  55. Q,...)local R=setmetatable({},z)R=R:constructor(Q,...)or R R:run()return R end
  56. function z.constructor(Q,R)P.constructor(Q,R)Q.light=Instance.new'PointLight'end
  57. function z.onStart(Q)z.attached=Q P.onStart(Q)local R=Q.light R.Enabled=false R.
  58. Range=100 R.Color=Color3.fromRGB(255,255,255)R.Shadows=false R.Parent=Q.root
  59. while Q.running do R.Enabled=Toggles['character.glow.enabled'].Value R.
  60. Brightness=Options['character.glow.brightness'].Value/50 task.wait(0.5)end end
  61. function z.onPhysics(Q,R,S)local T=Options['character.sprint.speed'].Value if T>
  62. 0 and Toggles['character.sprint.enabled'].Value and Options[
  63. 'character.sprint.keybind']:GetState()then local U=Q.humanoid.MoveDirection*O if
  64. U.Magnitude>0 then Q.instance:TranslateBy(U*T*S)end end end function z.destroy(Q
  65. )z.attached=nil P.destroy(Q)end end do local O=Vector3.new(5,7,0)local P=Vector3
  66. .new(0,-0.25,0)local Q,R,S,T=CFrame.new(P.X-(O.X/2),P.Y+(O.Y/2),P.Z),CFrame.new(
  67. P.X+(O.X/2),P.Y+(O.Y/2),P.Z),CFrame.new(P.X-(O.X/2),P.Y-(O.Y/2),P.Z),CFrame.new(
  68. P.X+(O.X/2),P.Y-(O.Y/2),P.Z)local U=s.WorldToViewportPoint local V=Vector2.new
  69. local W=math.min local X=y A=setmetatable({},{__index=X})A.__index=A function A.
  70. __tostring(Y)return'FriendComponent - '..Y.instance:GetFullName()end A.attached=
  71. {}function A.new(Y,...)local Z=setmetatable({},A)Z=Z:constructor(Y,...)or Z Z:
  72. run()return Z end function A.constructor(Y,Z)X.constructor(Y,Z)Y.quad=Drawing.
  73. new'Quad'Y._maid:add(function()Y.quad:Remove()end)end function A.onStart(Y)A.
  74. attached[Y.instance]=Y X.onStart(Y)local Z=Y.quad Z.Visible=false Z.Thickness=1
  75. Z.Transparency=0.75 end function A.onRender(Y,Z)local _=Y.quad if Toggles[
  76. 'esp.player.enabled'].Value then local aa=Y.root.CFrame local ab=U(s,(aa*Q).
  77. Position)local ac=U(s,(aa*R).Position)local ad=U(s,(aa*T).Position)local ae=U(s,
  78. (aa*S).Position)if W(ab.Z,ac.Z,ad.Z,ae.Z)>0 then _.PointA=V(ac.X,ac.Y)_.PointB=
  79. V(ab.X,ab.Y)_.PointC=V(ae.X,ae.Y)_.PointD=V(ad.X,ad.Y)_.Color=Options[
  80. 'esp.player.color'].Value _.Visible=true else _.Visible=false end else _.Visible
  81. =false end end function A.destroy(aa)A.attached[aa.instance]=nil X.destroy(aa)
  82. end end do local aa=q B=setmetatable({},{__index=aa})B.__index=B function B.
  83. __tostring(ab)return'ClientComponent - '..ab.instance:GetFullName()end B.
  84. attached={}function B.new(ab,...)local ac=setmetatable({},B)ac=ac:constructor(ab
  85. ,...)or ac ac:run()return ac end function B.constructor(ab,ac)aa.constructor(ab,
  86. ac)end function B.onStart(ab)B.attached[ab.instance]=ab aa.onStart(ab)ab._maid:
  87. add(ab.instance.CharacterAdded:Connect(function(ac)ab:onCharacter(ac)end))ab.
  88. _maid:add(ab.instance.Backpack.ChildAdded:Connect(function(ac)if ac:IsA'Tool'
  89. then ab:onTool(ac)end end))task.defer(function()local ac=ab.instance.Character
  90. if ac then ab:onCharacter(ac)end end)task.defer(function()for ac,ad in ipairs(ab
  91. .instance.Backpack:GetChildren())do if ad:IsA'Tool'then ab:onTool(ad)end end end
  92. )end function B.onCharacter(ab,ac)if ab.instance==r then ab.character=z.new(ac)
  93. else ab.character=A.new(ac)end end function B.onTool(ab,ac)if ac.Name==
  94. 'LibraryHintPaper'then local ad=ac:WaitForChild('UI',1)if ad then local ae={}for
  95. O=1,5 do local P=ad:FindFirstChild(tostring(O))if P then local Q=P.
  96. ImageRectOffset.X/50 ae[O]=Q end end x=ae end end end function B.destroy(ab)B.
  97. attached[ab.instance]=nil aa.destroy(ab)end local ab=function(ab)B.new(ab)end b.
  98. PlayerAdded:Connect(ab)for ac,ad in ipairs(b:GetPlayers())do task.defer(ab,ad)
  99. end end do local aa=s.WorldToViewportPoint local ab,ac,ad=Vector2.new,Vector3.
  100. new,CFrame.Angles local ae=q C=setmetatable({},{__index=ae})C.__index=C function
  101. C.__tostring(O)return'ScreechComponent - '..O.instance:GetFullName()end C.
  102. attached={}function C.new(O,...)local P=setmetatable({},C)P=P:constructor(O,...)
  103. or P P:run()return P end function C.constructor(O,P)ae.constructor(O,P)O.root=P:
  104. WaitForChild'Root'O.line=Drawing.new'Line'O.outline=Drawing.new'Line'O._maid:
  105. add(function()O.line:Remove()O.outline:Remove()end)end function C.onStart(O)C.
  106. attached[O.instance]=O ae.onStart(O)local P,Q=O.line,O.outline P.Visible=false P
  107. .Color=Options['esp.screech.color'].Value P.ZIndex=1 P.Thickness=1 Q.Visible=
  108. false Q.Color=Color3.new()Q.ZIndex=0 Q.Thickness=2 end function C.onRender(O,P)
  109. local Q=Toggles['esp.screech.enabled'].Value local R,S=O.line,O.outline if Q
  110. then local T=O.root.Position local U=aa(s,T)if U.Z<0 then local V=s.CFrame:
  111. PointToObjectSpace(T)local W=math.atan2(V.Y,V.X)+math.pi V=ad(0,0,W):
  112. VectorToWorldSpace((ad(0,math.rad(89.9),0):VectorToWorldSpace(ac(0,0,-1))))U=aa(
  113. s,s.CFrame:PointToWorldSpace(V))end local V=s.ViewportSize R.From=ab(V.X/2,V.Y-
  114. 50)R.To=ab(U.X,U.Y)S.From=R.From S.To=R.To end R.Visible=Q S.Visible=Q end
  115. function C.destroy(O)C.attached[O.instance]=nil ae.destroy(O)end end do local aa
  116. =Vector3.new(4,6,0)local ab=Vector3.new(0,0,0)local ac,ad,ae,O=CFrame.new(ab.X-(
  117. aa.X/2),ab.Y+(aa.Y/2),ab.Z),CFrame.new(ab.X+(aa.X/2),ab.Y+(aa.Y/2),ab.Z),CFrame.
  118. new(ab.X-(aa.X/2),ab.Y-(aa.Y/2),ab.Z),CFrame.new(ab.X+(aa.X/2),ab.Y-(aa.Y/2),ab.
  119. Z)local P=s.WorldToViewportPoint local Q=Vector2.new local R=math.min local S=q
  120. D=setmetatable({},{__index=S})D.__index=D function D.__tostring(T)return
  121. 'RushComponent - '..T.instance:GetFullName()end D.attached={}function D.new(T,
  122. ...)local U=setmetatable({},D)U=U:constructor(T,...)or U U:run()return U end
  123. function D.constructor(T,U)S.constructor(T,U)T.root=U.PrimaryPart or U:
  124. WaitForChild('RushNew',5)assert(T.root,'['..T:__tostring()..
  125. '] is missing a root part!')T.name=T.instance.Name=='RushMoving'and'Rush'or
  126. 'Ambush'T.quad=Drawing.new'Quad'T._maid:add(function()T.quad:Remove()end)end
  127. function D.onStart(T)D.attached[T.instance]=T S.onStart(T)local U=T.quad U.
  128. Visible=false U.Thickness=1 U.Color=T.name=='Rush'and Options[
  129. 'esp.rush.rush-color'].Value or Options['esp.rush.ambush-color'].Value task.
  130. delay(0.5,function()local V=(z.attached.root.Position-T.root.Position).Magnitude
  131. if V<=750 then N(Toggles['alerts.entity'].Value,{message=T.name=='Rush'and
  132. 'Rush spawned, hide in a Wardrobe or get behind cover!'or
  133. [[Ambush spawned, hide in a Wardrobe or get behind cover! Ambush can return up to 4 times.]]
  134. ,audio=true,duration=10})else T:destroy()end end)end function D.onRender(T,U)
  135. local V=T.quad if Toggles['esp.rush.enabled'].Value then local W=T.root.CFrame
  136. local X=P(s,(W*ac).Position)local Y=P(s,(W*ad).Position)local Z=P(s,(W*O).
  137. Position)local _=P(s,(W*ae).Position)if R(X.Z,Y.Z,Z.Z,_.Z)>0 then V.PointA=Q(Y.X
  138. ,Y.Y)V.PointB=Q(X.X,X.Y)V.PointC=Q(_.X,_.Y)V.PointD=Q(Z.X,Z.Y)V.Visible=true
  139. else V.Visible=false end else V.Visible=false end end function D.destroy(T)D.
  140. attached[T.instance]=nil S.destroy(T)end end do local aa=Vector3.new(6,13,0)
  141. local ab=Vector3.new(0,-1,0)local ac,ad,ae,O=CFrame.new(ab.X-(aa.X/2),ab.Y+(aa.Y
  142. /2),ab.Z),CFrame.new(ab.X+(aa.X/2),ab.Y+(aa.Y/2),ab.Z),CFrame.new(ab.X-(aa.X/2),
  143. ab.Y-(aa.Y/2),ab.Z),CFrame.new(ab.X+(aa.X/2),ab.Y-(aa.Y/2),ab.Z)local P=s.
  144. WorldToViewportPoint local Q=Vector2.new local R=math.min local S=q E=
  145. setmetatable({},{__index=S})E.__index=E function E.__tostring(T)return
  146. 'FigureComponent - '..T.instance:GetFullName()end E.attached={}function E.new(T,
  147. ...)local U=setmetatable({},E)U=U:constructor(T,...)or U U:run()return U end
  148. function E.constructor(T,U)S.constructor(T,U)T.ragdoll=U:WaitForChild(
  149. 'FigureRagdoll',2.5)assert(T.ragdoll~=nil,'['..T:__tostring()..
  150. '] is missing its ragdoll!')T.root=T.ragdoll:WaitForChild('Root',2.5)assert(T.
  151. root~=nil,'['..T:__tostring()..'] is missing its root part!')T.quad=Drawing.new
  152. 'Quad'T._maid:add(function()T.quad:Remove()end)end function E.onStart(T)E.
  153. attached[T.instance]=T S.onStart(T)local U=T.quad U.Visible=false U.Thickness=2
  154. end function E.onRender(T,U)local V=T.quad if Toggles['esp.figure.enabled'].
  155. Value then local W=T.root.CFrame local X=P(s,(W*ac).Position)local Y=P(s,(W*ad).
  156. Position)local Z=P(s,(W*O).Position)local _=P(s,(W*ae).Position)if R(X.Z,Y.Z,Z.Z
  157. ,_.Z)>0 then V.PointA=Q(Y.X,Y.Y)V.PointB=Q(X.X,X.Y)V.PointC=Q(_.X,_.Y)V.PointD=
  158. Q(Z.X,Z.Y)V.Color=Options['esp.figure.color'].Value V.Visible=true else V.
  159. Visible=false end else V.Visible=false end end function E.destroy(T)E.attached[T
  160. .instance]=nil S.destroy(T)end end do local aa=CFrame.new(0,0,1)local ab=s.
  161. WorldToViewportPoint local ac=Vector2.new local ad=math.min local ae=q F=
  162. setmetatable({},{__index=ae})F.__index=F function F.__tostring(O)return
  163. 'DoorComponent - '..O.instance:GetFullName()end F.attached={}function F.new(O,
  164. ...)local P=setmetatable({},F)P=P:constructor(O,...)or P P:run()return P end
  165. function F.constructor(O,P,Q)ae.constructor(O,P)O.id=Q or 0 local R=P.Size*0.5
  166. local S=P.CFrame*aa O.tl=(S*CFrame.new(R.X,R.Y,0)).Position O.tr=(S*CFrame.new(-
  167. R.X,R.Y,0)).Position O.bl=(S*CFrame.new(R.X,-R.Y,0)).Position O.br=(S*CFrame.
  168. new(-R.X,-R.Y,0)).Position O.quad=Drawing.new'Quad'O._maid:add(function()O.quad:
  169. Remove()end)end function F.onStart(O)F.attached[O.instance]=O ae.onStart(O)local
  170. P=O.quad P.Visible=false P.Thickness=2 end function F.onRender(O,P)local Q=O.
  171. quad if Toggles['esp.door.enabled'].Value then local R=ab(s,O.tl)local S=ab(s,O.
  172. tr)local T=ab(s,O.br)local U=ab(s,O.bl)if ad(R.Z,S.Z,T.Z,U.Z)>0 then Q.PointA=
  173. ac(S.X,S.Y)Q.PointB=ac(R.X,R.Y)Q.PointC=ac(U.X,U.Y)Q.PointD=ac(T.X,T.Y)local V=O
  174. .id-t.LatestRoom.Value if V==0 then Q.Color=Options['esp.door.target-color'].
  175. Value else Q.Color=Options['esp.door.default-color'].Value if V<0 then Q.
  176. Transparency=0.5 else Q.Transparency=1 end end Q.Visible=true else Q.Visible=
  177. false end else Q.Visible=false end end function F.destroy(O)F.attached[O.
  178. instance]=nil ae.destroy(O)end end do local aa=Vector3.new(6.4,9.5,0)local ab=
  179. Vector3.new(0,0,-0.5)local ac,ad,ae,O=CFrame.new(ab.X-(aa.X/2),ab.Y+(aa.Y/2),ab.
  180. Z),CFrame.new(ab.X+(aa.X/2),ab.Y+(aa.Y/2),ab.Z),CFrame.new(ab.X-(aa.X/2),ab.Y-(
  181. aa.Y/2),ab.Z),CFrame.new(ab.X+(aa.X/2),ab.Y-(aa.Y/2),ab.Z)local P=s.
  182. WorldToViewportPoint local Q=Vector2.new local R=math.min local S=q G=
  183. setmetatable({},{__index=S})G.__index=G function G.__tostring(T)return
  184. 'WardrobeComponent - '..T.instance:GetFullName()end G.attached={}function G.new(
  185. T,...)local U=setmetatable({},G)U=U:constructor(T,...)or U U:run()return U end
  186. function G.constructor(T,U,V)S.constructor(T,U)T.id=V T.root=U:WaitForChild(
  187. 'Main',5)T.occupant=U:WaitForChild('HiddenPlayer',5)T.quad=Drawing.new'Quad'T.
  188. _maid:add(function()T.quad:Remove()end)end function G.onStart(T)G.attached[T.
  189. instance]=T S.onStart(T)local U=T.quad U.Visible=false U.Thickness=2 end
  190. function G.onRender(T,U)local V=T.quad if Toggles['esp.wardrobe.enabled'].Value
  191. then local W=T.root.CFrame local X=P(s,(W*ac).Position)local Y=P(s,(W*ad).
  192. Position)local Z=P(s,(W*O).Position)local _=P(s,(W*ae).Position)if R(X.Z,Y.Z,Z.Z
  193. ,_.Z)>0 then V.PointA=Q(Y.X,Y.Y)V.PointB=Q(X.X,X.Y)V.PointC=Q(_.X,_.Y)V.PointD=
  194. Q(Z.X,Z.Y)V.Color=Options['esp.wardrobe.color'].Value if T.occupant.Value then V
  195. .Transparency=0.1 elseif t.LatestRoom.Value-T.id>1 then V.Transparency=0.25 else
  196. V.Transparency=0.6 end V.Visible=true else V.Visible=false end else V.Visible=
  197. false end end function G.destroy(T)G.attached[T.instance]=nil S.destroy(T)end
  198. end do local aa=s.WorldToViewportPoint local ab=Vector2.new local ac=ab(0,3)
  199. local ad=q H=setmetatable({},{__index=ad})H.__index=H function H.__tostring(ae)
  200. return'InteractableComponent - '..ae.instance:GetFullName()end H.attached={}
  201. function H.new(ae,O,...)local P=setmetatable({},H)P=P:constructor(ae,O,...)or P
  202. P:run()return P end function H.constructor(ae,O,P)ad.constructor(ae,O)ae.name=P
  203. ae.label=Drawing.new'Text'ae.circle=Drawing.new'Circle'ae.outline=Drawing.new
  204. 'Circle'ae._maid:add(function()ae.label:Remove()ae.circle:Remove()ae.outline:
  205. Remove()end)ae._maid:add(O.AncestryChanged:Connect(function(Q,R)if R==nil then
  206. ae:destroy()end end))end function H.onStart(ae)H.attached[ae.instance]=ae ad.
  207. onStart(ae)local O,P,Q=ae.label,ae.circle,ae.outline O.Text=ae.name O.Size=18 O.
  208. Center=true O.Outline=true O.Visible=false P.Thickness=1 P.NumSides=6 P.Radius=5
  209. P.Filled=true P.Visible=false Q.Color=Color3.new()Q.Thickness=1.5 Q.NumSides=6 Q
  210. .Radius=5 Q.Filled=false Q.Visible=false Q.ZIndex=2 end function H.onRender(ae,O
  211. )local P,Q,R=ae.label,ae.circle,ae.outline if ae:isVisualEnabled()then local S=
  212. aa(s,ae.instance.Position)local T=S.Z>0 if T then local U=ab(S.X,S.Y)P.Position=
  213. U+ac Q.Position=U R.Position=U local V=ae:getColor()P.Color=V Q.Color=V end P.
  214. Visible=T Q.Visible=T R.Visible=T else P.Visible=false Q.Visible=false R.Visible
  215. =false end end function H.isVisualEnabled(ae)return Toggles[
  216. 'esp.interactable.enabled'].Value end function H.getColor(ae)return Options[
  217. 'esp.interactable.color'].Value end function H.destroy(ae)H.attached[ae.instance
  218. ]=nil ad.destroy(ae)end end do local aa=H I=setmetatable({},{__index=aa})I.
  219. __index=I function I.__tostring(ab)return'ObtainableComponent - '..ab.instance:
  220. GetFullName()end I.attached={}function I.new(ab,ac,...)local ad=setmetatable({},
  221. I)ad=ad:constructor(ab,ac,...)or ad ad:run()return ad end function I.constructor
  222. (ab,ac,ad)aa.constructor(ab,ac,ad)end function I.onStart(ab)I.attached[ab.
  223. instance]=ab aa.onStart(ab)local ac,ad,ae=ab.label,ab.circle,ab.outline ad.
  224. NumSides=5 ae.NumSides=5 end function I.isVisualEnabled(ab)return Toggles[
  225. 'esp.obtainable.enabled'].Value end function I.getColor(ab)return Options[
  226. 'esp.obtainable.color'].Value end function I.destroy(ab)I.attached[ab.instance]=
  227. nil aa.destroy(ab)end end do local aa=q J=setmetatable({},{__index=aa})J.__index
  228. =J function J.__tostring(ab)return'RoomComponent - '..ab.instance:GetFullName()
  229. end J.attached={}function J.new(ab,...)local ac=setmetatable({},J)ac=ac:
  230. constructor(ab,...)or ac ac:run()return ac end function J.constructor(ab,ac)aa.
  231. constructor(ab,ac)ab.id=tonumber(ac.Name)ab.assets=ac:WaitForChild('Assets',5)
  232. end function J.onStart(ab)J.attached[ab.instance]=ab aa.onStart(ab)if ab.id==50
  233. or ab.id==100 then task.defer(ab.onFigure,ab)end local ac=ab.instance:
  234. WaitForChild('RoomExit',5)if ac then F.new(ac,ab.id)end ab._maid:add(ab.instance
  235. .DescendantAdded:Connect(function(ad)ab:onDescendant(ad)end))for ad,ae in
  236. ipairs(ab.instance:GetDescendants())do ab:onDescendant(ae)if ad%1000==0 then
  237. task.wait()end end end function J.onDescendant(ab,ac)local ad=ac.Parent local ae
  238. =ad.Name local O=ac.Name if O=='Main'then if ae=='LeverForGate'then H.new(ac,
  239. 'Lever')elseif ae=='Lighter'then I.new(ac,'Lighter')elseif ae=='Vitamins'then I.
  240. new(ac,'Vitamins')elseif ae=='Lockpick'then I.new(ac,'Lockpicks')elseif ae==
  241. 'Bandage'then I.new(ac,'Bandages')end elseif O=='Base'then if ae=='LiveHintBook'
  242. then I.new(ac,'Book')elseif ae=='LiveBreakerPolePickup'then I.new(ac,'Fuse')end
  243. elseif O=='Holder'then if ae=='CrucifixOnTheWall'then I.new(ac,'Crucifix')end
  244. elseif O=='Lock'then if ae=='Door'then H.new(ac,'Lock')end elseif ae==
  245. 'KeyObtain'then if O=='Hitbox'then I.new(ac,'Key')end elseif O=='Wardrobe'then G
  246. .new(ac,ab.id)elseif O=='Toolshed'then G.new(ac,ab.id)end end function J.
  247. onFigure(ab)local ac=ab.instance:WaitForChild('FigureSetup',5)E.new(ac)end
  248. function J.destroy(ab)J.attached[ab.instance]=nil aa.destroy(ab)end end m:
  249. SetWatermark'Linoria Community (OminousVibes)'m:Notify'Loading UI...'do local aa
  250. =m:CreateWindow(g..' ('..h..')')do local ab=aa:AddTab'Gameplay'do local ac=ab:
  251. AddLeftGroupbox'Character Mods'ac:AddToggle('character.sprint.enabled',{Text=
  252. 'Sprint Enabled',Default=false,Tooltip=
  253. 'Enables Sprinting by pressing the Keybind'}):AddKeyPicker(
  254. 'character.sprint.keybind',{Text='Sprint',Default='LeftShift'})ac:AddSlider(
  255. 'character.sprint.speed',{Text='Sprint Boost (in seconds)',Min=0,Max=7.5,Default
  256. =0,Rounding=1,Suffix=' studs'})ac:AddToggle('character.glow.enabled',{Text=
  257. 'Body Glow',Default=false,Tooltip='Adds a subtle glow for better vision'})ac:
  258. AddSlider('character.glow.brightness',{Text='Glow Brightness',Min=0,Max=100,
  259. Default=0,Rounding=0,Suffix=''})end do local ac=ab:AddLeftGroupbox
  260. 'Gameplay Mods'ac:AddToggle('gameplay.parser.enabled',{Text='Parser Enabled',
  261. Default=false,Tooltip=
  262. [[Automatically parses the Library padlock code as you obtain clues.]]}):
  263. AddKeyPicker('gameplay.parser.keybind',{Text='Parse Code',Default='P',NoUI=true,
  264. Mode='Toggle'})end do local ac=ab:AddRightTabbox'Alerts'local ad=ac:AddTab
  265. 'Alerts'ad:AddToggle('alerts.enabled',{Text='Alerts Enabled',Default=true,
  266. Tooltip='Master toggle for all script alerts.'})ad:AddToggle('alerts.audio',{
  267. Text='Enable Sound',Default=true,Tooltip=
  268. 'Plays a sound when an important alert is triggered.'})local ae=ac:AddTab
  269. 'Advanced'ae:AddToggle('alerts.debug',{Text='Debug Alerts',Default=true,Tooltip=
  270. 'Enabled alerts related to script status.'})ae:AddToggle('alerts.entity',{Text=
  271. 'Entity Alerts',Default=true,Tooltip='Enabled alerts about entities spawning.'})
  272. end end do local ab=aa:AddTab'Visuals'do local ac=ab:AddLeftTabbox'ESP'local ad=
  273. ac:AddTab'Entity ESP'do ad:AddToggle('esp.player.enabled',{Text='Player ESP',
  274. Default=true,Tooltip='ESP for other players'}):AddColorPicker('esp.player.color'
  275. ,{Title='Player ESP Color',Default=Color3.new(1,1,1)})ad:AddToggle(
  276. 'esp.screech.enabled',{Text='Screech ESP',Default=true,Tooltip=
  277. 'Tracer ESP for Screech entities'}):AddColorPicker('esp.screech.color',{Title=
  278. 'Screech ESP Color',Default=Color3.new(1,0,0)})ad:AddToggle('esp.rush.enabled',{
  279. Text='Rush/Ambush ESP',Default=true,Tooltip=
  280. 'ESP for both Rush and Ambush entities'}):AddColorPicker('esp.rush.rush-color',{
  281. Title='Rush ESP Color',Default=Color3.new(1,0,0)}):AddColorPicker(
  282. 'esp.rush.ambush-color',{Title='Ambush ESP Color',Default=Color3.new(0,1,0)})ad:
  283. AddToggle('esp.figure.enabled',{Text='Figure ESP',Default=true,Tooltip=
  284. 'ESP for the Figure entity'}):AddColorPicker('esp.figure.color',{Title=
  285. 'Figure ESP Color',Default=Color3.new(0.75,0.25,0.25)})ad:AddToggle(
  286. 'esp.snare.enabled',{Text='Snare ESP',Default=true,Tooltip='ESP for snare traps'
  287. }):AddColorPicker('esp.snare.color',{Title='Snare ESP Color',Default=Color3.new(
  288. 1,0,0)})end local ae=ac:AddTab'Object ESP'do ae:AddToggle('esp.door.enabled',{
  289. Text='Door ESP',Default=false,Tooltip='ESP for doors'}):AddColorPicker(
  290. 'esp.door.default-color',{Title='Other Doors ESP Color',Default=Color3.new(0,0.3
  291. ,0.75)}):AddColorPicker('esp.door.target-color',{Title='Current Door ESP Color',
  292. Default=Color3.new(0,1,0)})ae:AddToggle('esp.wardrobe.enabled',{Text=
  293. 'Wardrobe ESP',Default=false,Tooltip='ESP for Wardrobe'}):AddColorPicker(
  294. 'esp.wardrobe.color',{Title='Wardrobe ESP Color',Default=Color3.new(0,1,0.9)})ae
  295. :AddToggle('esp.interactable.enabled',{Text='Interactable ESP',Default=true,
  296. Tooltip='ESP for interactable items'}):AddColorPicker('esp.interactable.color',{
  297. Title='Interactable ESP Color',Default=Color3.new(1,1,1)})ae:AddToggle(
  298. 'esp.obtainable.enabled',{Text='Obtainable ESP',Default=true,Tooltip=
  299. 'ESP for items that can be picked up'}):AddColorPicker('esp.obtainable.color',{
  300. Title='Obtainable ESP Color',Default=Color3.new(1,1,0)})end end end do local ab=
  301. aa:AddTab'Credits'local ac=ab:AddLeftGroupbox'Credits'ac:AddLabel
  302. 'OminousVibes - Creator'ac:AddLabel'Inori @v3rm - UI Library'ac:AddDivider()ac:
  303. AddLabel'Contributors:'ac:AddLabel'> IAmAGoodScammer @v3rm'ac:AddLabel
  304. '> brickmane @v3rm'ac:AddLabel'> yuuiz#1336 @Discord'ac:AddDivider()ac:AddLabel
  305. 'Donators:'ac:AddLabel'> reversing#2937 @Discord'local ad=ab:AddRightGroupbox
  306. 'Socials'ad:AddButton{Text='Discord Server',Func=function()setclipboard
  307. 'https://discord.gg/8PATx7UKXZ'end}end do local ab=aa:AddTab'Settings'o:
  308. SetLibrary(m)n:SetLibrary(m)o:SetFolder(i)n:SetFolder(i..'/'..j)n:
  309. IgnoreThemeSettings()n:SetIgnoreIndexes{'MenuKeybind'}n:BuildConfigSection(ab)o:
  310. ApplyToTab(ab)local ac=ab:AddLeftGroupbox'Menu'ac:AddButton('Unload',function()m
  311. :Unload()end)ac:AddLabel'Menu bind':AddKeyPicker('MenuKeybind',{Default='End',
  312. NoUI=true,Text='Menu keybind'})ac:AddToggle('Keybinds',{Text=
  313. 'Show Keybinds Menu',Default=true}):OnChanged(function()m.KeybindFrame.Visible=
  314. Toggles.Keybinds.Value end)ac:AddToggle('Watermark',{Text='Show Watermark',
  315. Default=true}):OnChanged(function()m:SetWatermarkVisibility(Toggles.Watermark.
  316. Value)end)end end m:Notify'UI Built! [Right Ctrl or Right Shift]'n:
  317. LoadAutoloadConfig()local aa=function()s=f.CurrentCamera or s end f:
  318. GetPropertyChangedSignal'CurrentCamera':Connect(aa)local ab=function(ab)if ab.
  319. Name=='Screech'then C.new(ab)end end s.ChildAdded:Connect(ab)local ac=function(
  320. ac)local ad=ac.Name if ad=='RushMoving'or ac.Name=='AmbushMoving'then D.new(ac)
  321. elseif ad=='Eyes'then N(Toggles['alerts.entity'].Value,{message=
  322. 'Eyes spawned, look away from it!',audio=true,duration=5})end end f.ChildAdded:
  323. Connect(ac)local ad=function(ad)J.new(ad)end f.CurrentRooms.ChildAdded:Connect(
  324. ad)for ae,O in ipairs(f.CurrentRooms:GetChildren())do ad(O)end local P=function(
  325. )N(Toggles['alerts.entity'].Value,{message=
  326. 'Screech spawned, turn around and look at it!',audio=true,duration=5})end u.
  327. Screech:Connect(P)local Q=function(Q,R)if Q and R then w[Q]=tostring(R)else w={}
  328. end end u.PadlockHint:Connect(Q)local R=function(R)for S,T in ipairs(K)do for U,
  329. V in pairs(T.attached)do V:onTick(R)end end end local S=function(S)for T,U in
  330. ipairs(L)do for V,W in pairs(U.attached)do W:onRender(S)end end end local T=
  331. function(T,U)for V,W in ipairs(M)do for X,Y in pairs(W.attached)do Y:onPhysics(T
  332. ,U)end end local X=z.attached if X then X:onPhysics(T,U)end end d.Heartbeat:
  333. Connect(R)d.RenderStepped:Connect(S)d.Stepped:Connect(T)Options[
  334. 'gameplay.parser.keybind']:OnClick(function()local U=''for V=1,5 do local W=w[x[
  335. V]]U=U..(W~=nil and W or'_')end N(Toggles['gameplay.parser.enabled'].Value,{
  336. message='[Code Parser]: '..U,audio=false,duration=7.5})end)table.insert(L,A)
  337. table.insert(L,C)table.insert(L,D)table.insert(L,E)table.insert(L,F)table.
  338. insert(L,G)table.insert(L,H)v.Name='Main'v.SoundId='rbxassetid://6026984224'v.
  339. Volume=6 v.Parent=e do local U=game.PlaceId local V=game.PlaceVersion local W=k[
  340. U]if V>W then m:Notify
  341. [[Game has been updated! Please be careful when using this script.]]m:Notify
  342. 'The place ID and Version has been copied to your clipboard.'setclipboard('['..
  343. tostring(U)..'] = '..tostring(V)..',')end end return m:Notify('['..g..
  344. '] Loaded! ('..h..')')
Tags: Script
Add Comment
Please, Sign In to add comment