Advertisement
wamandnj

Untitled

Mar 29th, 2019
454
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  3. local RealPlayer = Player
  4. do print("FE Compatibility code by Mokiros");InternalData = {}InternalData.RealOwner = owner;InternalData.RealObjs = {};InternalData.SoundLoudness = {};local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end,__call=function(self,...)local t=rawget(self,"_RealService")if t then return t(...)end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return self[t]end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;x.RunService=v({RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")setmetatable(x,{__index=function(self,t)return r:GetService(t)or typeof(r[t])=="function"and function(m,...)return r[t](r,...)end or r[t]end,__newindex=s.__newindex,__call=s.__call})game,owner=x,x.Players.LocalPlayer
  5. script.Parent = InternalData.RealOwner.Character
  6. local Event = Instance.new("RemoteEvent");Event.Name = "UserInput";InternalData.Event = Event
  7. local function createObject (connections, index)
  8. local proxy = newproxy (true);local meta = getmetatable (proxy);
  9. local runbind = function (self, i, ...) connections[i]:Fire (...); end;
  10. while (#connections > 0) do connections[table.remove(connections, 1)] = Instance.new ('BindableEvent');end;
  11. meta.__index = function (self, i)
  12. if (i == 'TriggerEvent') then return runbind end;
  13. return connections[i] and connections[i].Event or index[i];
  14. end;
  15. meta.__newindex = index;meta.__metatable = false;return proxy
  16. end;
  17. local Mouse = createObject({"KeyUp","KeyDown","Button1Down","Button1Up"},{["Target"] = nil;["Hit"] = CFrame.new()})
  18. local UserInputService = createObject({"InputBegan","InputEnded"},{})
  19. local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
  20. self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
  21. end};ContextActionService.UnBindAction = ContextActionService.BindAction
  22. Event.OnServerEvent:Connect(function(FiredBy,Input)
  23. if FiredBy ~= InternalData.RealOwner then return end
  24. if Input.MouseEvent then
  25. Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
  26. elseif Input.Sound then
  27. if InternalData.SoundLoudness[Input.Sound] then InternalData.SoundLoudness[Input.Sound] = Input.Loudness end
  28. else
  29. local Begin = Input.UserInputState == Enum.UserInputState.Begin
  30. if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TriggerEvent(Begin and "Button1Down" or "Button1Up") end
  31. for _,Action in pairs(ContextActionService.Actions) do
  32. for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
  33. end
  34. Mouse:TriggerEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower());UserInputService:TriggerEvent(Begin and "InputBegan" or "InputEnded",Input,false)
  35. end
  36. end)
  37. InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
  38. Event.Parent = NLS([[
  39. local Player = owner;
  40. local Sounds = {};
  41. local Event = script:WaitForChild("UserInput");
  42. local UserInputService = game:GetService("UserInputService");
  43. local Mouse = Player:GetMouse();
  44. local Input = function(Input,gameProcessedEvent)
  45. if gameProcessedEvent then return end
  46. Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
  47. end
  48. Event.OnClientEvent:connect(function(Args)
  49. if Args[1] == "NewSound" then table.insert(Sounds,Args[2]) end
  50. end)
  51. UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
  52. local Hit,Target
  53. while wait(1/30) do
  54. for x,Sound in pairs(Sounds) do
  55. if Sound.Parent then Event:FireServer({["Sound"]=Sound,["Loudness"]=Sound.PlaybackLoudness}) end
  56. end
  57. if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
  58. Hit = Mouse.Hit;Target = Mouse.Target;
  59. Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
  60. end
  61. end
  62. ]],InternalData.RealOwner.Character)
  63. end
  64. InternalData.NewOwner = setmetatable({},{
  65. __index = function (self,Index)
  66. local Type = type(InternalData.RealOwner[Index])
  67. if Type == "function" then
  68. if Index:lower() == "getmouse" or Index:lower() == "mouse" then
  69. return function (self)return InternalData["Mouse"] end
  70. end
  71. return function (self,...)return InternalData.RealOwner[Index](InternalData.RealOwner,...) end
  72. elseif Index == "FakePlayer" then
  73. return true
  74. end
  75. return InternalData.RealOwner[Index]
  76. end;
  77. __tostring = function(self) return tostring(InternalData.RealOwner) end
  78. })
  79. --LoadLibrary("RbxUtility").Create
  80. InternalData.LoadLibrary = LoadLibrary;LoadLibrary = function(Library)
  81. if Library == "RbxUtility" then
  82. return setmetatable({},{
  83. __tostring = function() return "RbxUtility" end;
  84. __index = function(self, Index)
  85. if Index:lower() == "create" then
  86. return function(Type)
  87. return function(Data)
  88. Data = Data or {}
  89. local Inst = Instance.new(Type)
  90. for x,y in pairs(Data) do
  91. if InternalData.RealObjs[y] then y = InternalData.RealObjs[y] end
  92. if y == owner then y = InternalData.RealOwner end
  93. Inst[x] = y
  94. end
  95. return Inst
  96. end
  97. end
  98. end
  99. return InternalData.LoadLibrary(Library)[Index]
  100. end
  101. })
  102. end
  103. return InternalData.LoadLibrary(Library)
  104. end
  105. InternalData.RealInstance = Instance;Instance = setmetatable({},{
  106. __index = function (self,Index)
  107. if Index:lower() == 'new' then
  108. return function (Type, Parent)
  109. if Parent == owner then Parent = InternalData.RealOwner end
  110. if InternalData.RealObjs[Parent] then Parent = InternalData.RealObjs[Parent] end
  111. local Real = InternalData.RealInstance.new(Type,Parent)
  112. if not Type then return end
  113. if Type == "BillboardGui" then
  114. local ToReturn = setmetatable({},{
  115. __index = function (self,Index)
  116. if type(Real[Index]) == "function" then
  117. if Index:lower() == "clone" then
  118. return function (self)
  119. local Real = Real:Clone()
  120. local ToReturn = setmetatable({RealObject = Real},{
  121. __index = function (self,Index)
  122. if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
  123. return Real[Index]
  124. end;
  125. __newindex = function (self,Index,Value)
  126. if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  127. if Value == owner then Value = InternalData.RealOwner end
  128. Real[Index] = Value
  129. end;
  130. __tostring = function(self) return tostring(Real) end;
  131. })
  132. InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  133. end
  134. end
  135. return function (self,...) return Real[Index](Real,...)end
  136. end
  137. return Real[Index]
  138. end;
  139. __newindex = function (self,Index,Value)
  140. if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  141. if Value == owner then Value = InternalData.RealOwner end
  142. Real[Index] = Value
  143. end;
  144. __tostring = function(self) return tostring(Real) end;
  145. })
  146. InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  147. elseif Type:lower() == "sound" then
  148. Real.Parent = owner.Character;
  149. local ToReturn = setmetatable({RealObject = Real},{
  150. __index = function (self,Index)
  151. if Index:lower() == "playbackloudness" then
  152. return InternalData.SoundLoudness[Real] or 0
  153. elseif type(Real[Index]) == "function" then
  154. if Index:lower() == "clone" then
  155. return function (self)
  156. local Real = Real:Clone()
  157. local ToReturn = setmetatable({},{
  158. __index = function (self,Index)
  159. if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
  160. return Real[Index]
  161. end;
  162. __newindex = function (self,Index,Value)
  163. if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  164. if Value == owner then Value = InternalData.RealOwner end
  165. Real[Index] = Value
  166. end;
  167. __tostring = function(self) return tostring(Real) end;
  168. })
  169. InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  170. end
  171. end
  172. return function (self,...) return Real[Index](Real,...)end
  173. end
  174. return Real[Index]
  175. end;
  176. __newindex = function (self,Index,Value)
  177. if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  178. if Value == owner then Value = InternalData.RealOwner end
  179. Real[Index] = Value
  180. end;
  181. __tostring = function(self) return tostring(Real) end;
  182. })
  183. InternalData.RealObjs[ToReturn] = Real;InternalData.SoundLoudness[Real] = 0;repeat wait() until InternalData.Event.Parent InternalData.Event:FireClient(InternalData.RealOwner,{"NewSound",Real}) return ToReturn;
  184. else
  185. local ToReturn = setmetatable({RealObject = Real},{
  186. __index = function (self,Index)
  187. if type(Real[Index]) == "function" then
  188. if Index:lower() == "clone" then
  189. return function (self)
  190. local Real = Real:Clone()
  191. local ToReturn = setmetatable({},{
  192. __index = function (self,Index)
  193. if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
  194. return Real[Index]
  195. end;
  196. __newindex = function (self,Index,Value)
  197. if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  198. if Value == owner then Value = InternalData.RealOwner end
  199. Real[Index] = Value
  200. end;
  201. __tostring = function(self) return tostring(Real) end;
  202. })
  203. InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  204. end
  205. end
  206. return function (self,...) return Real[Index](Real,...)end
  207. end
  208. return Real[Index]
  209. end;
  210. __newindex = function (self,Index,Value)
  211. if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  212. if Value == owner then Value = InternalData.RealOwner end
  213. Real[Index] = Value
  214. end;
  215. __tostring = function(self) return tostring(Real) end;
  216. })
  217. InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  218. end
  219. end
  220. end
  221. return InternalData.RealInstance[Index]
  222. end;
  223. __tostring = function(self) return tostring(InternalData.RealInstance) end;
  224. });
  225. InternalData.RealGame = game;game = setmetatable({},{
  226. __index = function (self,Index)
  227. if InternalData.RealGame[Index] then
  228. local Type = type(InternalData.RealGame[Index])
  229. if Type == "function" then
  230. if Index:lower() == "getservice" or Index:lower() == "service" then
  231. return function (self,Service)
  232. local FakeServices = {
  233. ["players"] = function()
  234. return setmetatable({},{
  235. __index = function (self2,Index2)
  236. local RealService = InternalData.RealGame:GetService(Service)
  237. local Type2 = type(RealService[Index2])
  238. if Type2 == "function" then
  239. return function (self,...) return RealService[Index2](RealService,...)end
  240. else
  241. if Index2:lower() == "localplayer" then return InternalData.NewOwner end
  242. return RealService[Index2]
  243. end
  244. end;
  245. __tostring = function(self) return tostring(InternalData.RealGame:GetService(Service)) end
  246. })
  247. end;
  248. ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
  249. ["userinputservice"] = function() return InternalData["UserInputService"] end;
  250. ["debris"] = function()
  251. return setmetatable({},{
  252. __index = function(self2,Index2)
  253. local RealService = InternalData.RealGame:GetService(Service)
  254. local Type2 = type(RealService[Index2])
  255. if Type2 == "function" then
  256. if Index2:lower() == "additem" then
  257. return function (self,Item,Time)
  258. if InternalData.RealObjs[Item] then Item = InternalData.RealObjs[Item] end
  259. return RealService:AddItem(Item,Time)
  260. end
  261. end
  262. return function (self,...) return RealService[Index2](RealService,...) end
  263. end
  264. return RealService[Index2]
  265. end;
  266. __tostring = function(self) return tostring(InternalData.RealGame:GetService("Debris")) end
  267. })
  268. end;
  269. ["runservice"] = function()
  270. return setmetatable({},{
  271. __index = function(self2,Index2)
  272. local RealService = InternalData.RealGame:GetService(Service)
  273. local Type2 = type(RealService[Index2])
  274. if Type2 == "function" then
  275. return function (self,...) return RealService[Index2](RealService,...) end
  276. else
  277. local RunServices = {
  278. ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return InternalData.RealGame:GetService("RunService").Stepped:Connect(Function) end end;
  279. ["renderstepped"] = function() return RealService["Stepped"] end
  280. }
  281. if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
  282. return RealService[Index2]
  283. end
  284. end;
  285. __tostring = function(self) return tostring(InternalData.RealGame:GetService("RunService")) end
  286. })
  287. end
  288. }
  289. if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
  290. return InternalData.RealGame:GetService(Service)
  291. end
  292. end
  293. return function (self,...) return InternalData.RealGame[Index](InternalData.RealGame,...) end
  294. else
  295. if game:GetService(Index) then return game:GetService(Index) end
  296. return InternalData.RealGame[Index]
  297. end
  298. end
  299. return nil
  300. end;
  301. __tostring = function(self) return tostring(InternalData.game) end
  302. });Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete!")
  303.  
  304. --//=================================================================\\--
  305. --|| CREATED BY SHACKLUSTER | EDITED BY maximum442 AND SHYIME
  306. --\\=================================================================//--
  307.  
  308. wait(0.2)
  309.  
  310. Player = game:GetService("Players").LocalPlayer
  311. PlayerGui = Player.PlayerGui
  312. Cam = workspace.CurrentCamera
  313. Backpack = Player.Backpack
  314. Character = Player.Character
  315. Humanoid = Character.Humanoid
  316. Mouse = Player:GetMouse()
  317. RootPart = Character["HumanoidRootPart"]
  318. Torso = Character["Torso"]
  319. Head = Character["Head"]
  320. RightArm = Character["Right Arm"]
  321. LeftArm = Character["Left Arm"]
  322. RightLeg = Character["Right Leg"]
  323. LeftLeg = Character["Left Leg"]
  324. RootJoint = RootPart["RootJoint"]
  325. Neck = Torso["Neck"]
  326. RightShoulder = Torso["Right Shoulder"]
  327. LeftShoulder = Torso["Left Shoulder"]
  328. RightHip = Torso["Right Hip"]
  329. LeftHip = Torso["Left Hip"]
  330. SIZE = 1
  331.  
  332. IT = Instance.new
  333. CF = CFrame.new
  334. VT = Vector3.new
  335. RAD = math.rad
  336. C3 = Color3.new
  337. UD2 = UDim2.new
  338. BRICKC = BrickColor.new
  339. ANGLES = CFrame.Angles
  340. EULER = CFrame.fromEulerAnglesXYZ
  341. COS = math.cos
  342. ACOS = math.acos
  343. SIN = math.sin
  344. ASIN = math.asin
  345. ABS = math.abs
  346. MRANDOM = math.random
  347. FLOOR = math.floor
  348.  
  349. --//=================================\\
  350. --|| USEFUL VALUES
  351. --\\=================================//
  352.  
  353. Animation_Speed = 3
  354. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  355. local Speed = 20
  356. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  357. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  358. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  359. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  360. local DAMAGEMULTIPLIER = 1
  361. local ANIM = "Idle"
  362. local ATTACK = false
  363. local EQUIPPED = false
  364. local HOLD = false
  365. local COMBO = 1
  366. local Rooted = false
  367. local SINE = 0
  368. local KEYHOLD = false
  369. local CHANGE = 2 / Animation_Speed
  370. local WALKINGANIM = false
  371. local VALUE1 = false
  372. local VALUE2 = false
  373. local ROBLOXIDLEANIMATION = IT("Animation")
  374. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  375. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  376. --ROBLOXIDLEANIMATION.Parent = Humanoid
  377. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  378. WEAPONGUI.Name = "Weapon GUI"
  379. local Effects = IT("Folder", Character)
  380. Effects.Name = "Effects"
  381. local ANIMATOR = Humanoid.Animator
  382. local ANIMATE = Character.Animate
  383. local UNANCHOR = true
  384. local GHOSTS = {}
  385. ANIMATE:remove()
  386. Character.Archivable = true
  387. script.Parent = WEAPONGUI
  388. local GHOSTBASE = Character:Clone()
  389. GHOSTBASE.Parent = nil
  390. GHOSTBASE.Name = "Shingo"
  391. for _, c in pairs(GHOSTBASE:GetChildren()) do
  392. if c.ClassName == "Part" and c.Transparency < 1 then
  393. c.Color = C3(0,0,0)
  394. if c.ClassName == "Accessory" or c.ClassName == "Hat" or c.ClassName == "CharacterMesh" or c.ClassName == "Shirt" or c.ClassName == "Pants" then
  395. c:remove()
  396. end
  397. end
  398. end
  399. local sick = Instance.new("Sound",Torso)
  400. sick.SoundId = "rbxassetid://262950484"
  401. sick.Looped = true
  402. sick.Pitch = 1
  403. sick.Volume = 3
  404. sick:Play()
  405. local Effects = IT("Folder", Character)
  406. Effects.Name = "Effects"
  407. Character.Archivable = false
  408.  
  409. --//=================================\\
  410. --\\=================================//
  411.  
  412. local Player = game:service'Players'.LocalPlayer
  413. repeat wait() until Player.Character
  414. local Character = Player.Character
  415. local Char, Plr = Character, Player
  416. local Mouse = Player:GetMouse()
  417.  
  418.  
  419.  
  420. local Char = Plr.Character
  421. local Hum = Char:FindFirstChildOfClass'Humanoid'
  422. local RArm = Char["Right Arm"]
  423. local LArm = Char["Left Arm"]
  424. local RLeg = Char["Right Leg"]
  425. local LLeg = Char["Left Leg"]
  426. local Root = Char:FindFirstChild'HumanoidRootPart'
  427. local Torso = Char.Torso
  428. local Head = Char.Head
  429.  
  430. Player = game.Players.LocalPlayer
  431. Character = Player.Character
  432. local txt = Instance.new("BillboardGui", Character)
  433. txt.Adornee = Character.Head
  434. txt.Name = "_status"
  435. txt.Size = UDim2.new(2, 0, 1.2, 0)
  436. txt.StudsOffset = Vector3.new(-9, 8, 0)
  437. local text = Instance.new("TextLabel", txt)
  438. text.Size = UDim2.new(10, 0, 7, 0)
  439. text.FontSize = "Size24"
  440. text.TextScaled = true
  441. text.TextTransparency = 0
  442. text.BackgroundTransparency = 1
  443. text.TextTransparency = 0
  444. text.TextStrokeTransparency = 0
  445. text.Font = "SciFi"
  446. text.TextStrokeColor3 = Color3.new(170,0,0)
  447. text.Text = ""
  448.  
  449.  
  450.  
  451. local face = Head:FindFirstChild'face'
  452. if(not face)then
  453. NewInstance("Decal",Head,{Name='face',Face=Enum.NormalId.Front,Texture="rbxassetid://1281412824"})
  454. else
  455. face.Texture = "rbxassetid://1281412824"
  456. end
  457.  
  458. --//=================================\\
  459. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  460. --\\=================================//
  461.  
  462. ArtificialHB = Instance.new("BindableEvent", script)
  463. ArtificialHB.Name = "ArtificialHB"
  464.  
  465. script:WaitForChild("ArtificialHB")
  466.  
  467. frame = Frame_Speed
  468. tf = 0
  469. allowframeloss = false
  470. tossremainder = false
  471. lastframe = tick()
  472. script.ArtificialHB:Fire()
  473.  
  474. game:GetService("RunService").Heartbeat:connect(function(s, p)
  475. tf = tf + s
  476. if tf >= frame then
  477. if allowframeloss then
  478. script.ArtificialHB:Fire()
  479. lastframe = tick()
  480. else
  481. for i = 1, math.floor(tf / frame) do
  482. script.ArtificialHB:Fire()
  483. end
  484. lastframe = tick()
  485. end
  486. if tossremainder then
  487. tf = 0
  488. else
  489. tf = tf - frame * math.floor(tf / frame)
  490. end
  491. end
  492. end)
  493.  
  494. --//=================================\\
  495. --\\=================================//
  496. Player_Name = game.Players.LocalPlayer.Name
  497. Player = game.Players.LocalPlayer
  498. Character = Player.Character
  499. local txt = Instance.new("BillboardGui", Character)
  500. txt.Adornee = Character.Head
  501. txt.Name = "_status"
  502. txt.Size = UDim2.new(2, 0, 1.2, 0)
  503. txt.StudsOffset = Vector3.new(-9, 8, 0)
  504. local text = Instance.new("TextLabel", txt)
  505. text.Size = UDim2.new(10, 0, 7, 0)
  506. text.FontSize = "Size24"
  507. text.TextScaled = true
  508. text.TextTransparency = 0
  509. text.BackgroundTransparency = 1
  510. text.TextTransparency = 0
  511. text.TextStrokeTransparency = 0
  512. text.Font = "Antique"
  513. text.TextStrokeColor3 = BrickColor.new("Magenta").Color
  514. text.Text = Player_Name.. " The King Of InSaNiTY"
  515.  
  516. Player.Chatted:connect(chat)
  517. warn("Edit made by maximum442 and SHYIME")
  518. warn("We're still updating it")
  519. warn("So if there is some problem contact me(maximum)")
  520. warn("Frosty's discord is Frosty#2229")
  521. warn("SHYIME's Discord is shimi#9518")
  522. --//=================================\\
  523. --|| SOME FUNCTIONS
  524. --\\=================================//
  525.  
  526. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  527. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  528. end
  529.  
  530. function PositiveAngle(NUMBER)
  531. if NUMBER >= 0 then
  532. NUMBER = 0
  533. end
  534. return NUMBER
  535. end
  536.  
  537. function NegativeAngle(NUMBER)
  538. if NUMBER <= 0 then
  539. NUMBER = 0
  540. end
  541. return NUMBER
  542. end
  543.  
  544. function Swait(NUMBER)
  545. if NUMBER == 0 or NUMBER == nil then
  546. ArtificialHB.Event:wait()
  547. else
  548. for i = 1, NUMBER do
  549. ArtificialHB.Event:wait()
  550. end
  551. end
  552. end
  553.  
  554. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  555. local NEWMESH = IT(MESH)
  556. if MESH == "SpecialMesh" then
  557. NEWMESH.MeshType = MESHTYPE
  558. if MESHID ~= "nil" and MESHID ~= "" then
  559. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  560. end
  561. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  562. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  563. end
  564. end
  565. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  566. NEWMESH.Scale = SCALE
  567. NEWMESH.Parent = PARENT
  568. return NEWMESH
  569. end
  570.  
  571. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  572. local NEWPART = IT("Part")
  573. NEWPART.formFactor = FORMFACTOR
  574. NEWPART.Reflectance = REFLECTANCE
  575. NEWPART.Transparency = TRANSPARENCY
  576. NEWPART.CanCollide = false
  577. NEWPART.Locked = true
  578. NEWPART.Anchored = true
  579. if ANCHOR == false then
  580. NEWPART.Anchored = false
  581. end
  582. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  583. NEWPART.Name = NAME
  584. NEWPART.Size = SIZE
  585. NEWPART.Position = Torso.Position
  586. NEWPART.Material = MATERIAL
  587. NEWPART:BreakJoints()
  588. NEWPART.Parent = PARENT
  589. return NEWPART
  590. end
  591.  
  592. local function weldBetween(a, b)
  593. local weldd = Instance.new("ManualWeld")
  594. weldd.Part0 = a
  595. weldd.Part1 = b
  596. weldd.C0 = CFrame.new()
  597. weldd.C1 = b.CFrame:inverse() * a.CFrame
  598. weldd.Parent = a
  599. return weldd
  600. end
  601.  
  602.  
  603. function QuaternionFromCFrame(cf)
  604. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  605. local trace = m00 + m11 + m22
  606. if trace > 0 then
  607. local s = math.sqrt(1 + trace)
  608. local recip = 0.5 / s
  609. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  610. else
  611. local i = 0
  612. if m11 > m00 then
  613. i = 1
  614. end
  615. if m22 > (i == 0 and m00 or m11) then
  616. i = 2
  617. end
  618. if i == 0 then
  619. local s = math.sqrt(m00 - m11 - m22 + 1)
  620. local recip = 0.5 / s
  621. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  622. elseif i == 1 then
  623. local s = math.sqrt(m11 - m22 - m00 + 1)
  624. local recip = 0.5 / s
  625. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  626. elseif i == 2 then
  627. local s = math.sqrt(m22 - m00 - m11 + 1)
  628. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  629. end
  630. end
  631. end
  632.  
  633. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  634. local xs, ys, zs = x + x, y + y, z + z
  635. local wx, wy, wz = w * xs, w * ys, w * zs
  636. local xx = x * xs
  637. local xy = x * ys
  638. local xz = x * zs
  639. local yy = y * ys
  640. local yz = y * zs
  641. local zz = z * zs
  642. return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
  643. end
  644.  
  645. function QuaternionSlerp(a, b, t)
  646. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  647. local startInterp, finishInterp;
  648. if cosTheta >= 0.0001 then
  649. if (1 - cosTheta) > 0.0001 then
  650. local theta = ACOS(cosTheta)
  651. local invSinTheta = 1 / SIN(theta)
  652. startInterp = SIN((1 - t) * theta) * invSinTheta
  653. finishInterp = SIN(t * theta) * invSinTheta
  654. else
  655. startInterp = 1 - t
  656. finishInterp = t
  657. end
  658. else
  659. if (1 + cosTheta) > 0.0001 then
  660. local theta = ACOS(-cosTheta)
  661. local invSinTheta = 1 / SIN(theta)
  662. startInterp = SIN((t - 1) * theta) * invSinTheta
  663. finishInterp = SIN(t * theta) * invSinTheta
  664. else
  665. startInterp = t - 1
  666. finishInterp = t
  667. end
  668. end
  669. return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
  670. end
  671.  
  672. function Clerp(a, b, t)
  673. local qa = {QuaternionFromCFrame(a)}
  674. local qb = {QuaternionFromCFrame(b)}
  675. local ax, ay, az = a.x, a.y, a.z
  676. local bx, by, bz = b.x, b.y, b.z
  677. local _t = 1 - t
  678. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  679. end
  680.  
  681. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  682. local frame = IT("Frame")
  683. frame.BackgroundTransparency = TRANSPARENCY
  684. frame.BorderSizePixel = BORDERSIZEPIXEL
  685. frame.Position = POSITION
  686. frame.Size = SIZE
  687. frame.BackgroundColor3 = COLOR
  688. frame.BorderColor3 = BORDERCOLOR
  689. frame.Name = NAME
  690. frame.Parent = PARENT
  691. return frame
  692. end
  693.  
  694. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  695. local label = IT("TextLabel")
  696. label.BackgroundTransparency = 1
  697. label.Size = UD2(1, 0, 1, 0)
  698. label.Position = UD2(0, 0, 0, 0)
  699. label.TextColor3 = TEXTCOLOR
  700. label.TextStrokeTransparency = STROKETRANSPARENCY
  701. label.TextTransparency = TRANSPARENCY
  702. label.FontSize = TEXTFONTSIZE
  703. label.Font = TEXTFONT
  704. label.BorderSizePixel = BORDERSIZEPIXEL
  705. label.TextScaled = false
  706. label.Text = TEXT
  707. label.Name = NAME
  708. label.Parent = PARENT
  709. return label
  710. end
  711.  
  712. function NoOutlines(PART)
  713. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  714. end
  715.  
  716. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  717. local NEWWELD = IT(TYPE)
  718. NEWWELD.Part0 = PART0
  719. NEWWELD.Part1 = PART1
  720. NEWWELD.C0 = C0
  721. NEWWELD.C1 = C1
  722. NEWWELD.Parent = PARENT
  723. return NEWWELD
  724. end
  725.  
  726. local S = IT("Sound")
  727. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  728. local NEWSOUND = nil
  729. coroutine.resume(coroutine.create(function()
  730. NEWSOUND = S:Clone()
  731. NEWSOUND.Parent = PARENT
  732. NEWSOUND.Volume = VOLUME
  733. NEWSOUND.Pitch = PITCH
  734. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  735. NEWSOUND:play()
  736. if DOESLOOP == true then
  737. NEWSOUND.Looped = true
  738. else
  739. repeat wait(1) until NEWSOUND.Playing == false
  740. NEWSOUND:remove()
  741. end
  742. end))
  743. return NEWSOUND
  744. end
  745.  
  746. function CFrameFromTopBack(at, top, back)
  747. local right = top:Cross(back)
  748. return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
  749. end
  750.  
  751. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  752. function WACKYEFFECT(Table)
  753. local TYPE = (Table.EffectType or "Sphere")
  754. local SIZE = (Table.Size or VT(1,1,1))
  755. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  756. local TRANSPARENCY = (Table.Transparency or 0)
  757. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  758. local CFRAME = (Table.CFrame or Torso.CFrame)
  759. local MOVEDIRECTION = (Table.MoveToPos or nil)
  760. local ROTATION1 = (Table.RotationX or 0)
  761. local ROTATION2 = (Table.RotationY or 0)
  762. local ROTATION3 = (Table.RotationZ or 0)
  763. local MATERIAL = (Table.Material or "Neon")
  764. local COLOR = (Table.Color or C3(0,0,0))
  765. local TIME = (Table.Time or 45)
  766. local SOUNDID = (Table.SoundID or nil)
  767. local SOUNDPITCH = (Table.SoundPitch or nil)
  768. local SOUNDVOLUME = (Table.SoundVolume or nil)
  769. coroutine.resume(coroutine.create(function()
  770. local PLAYSSOUND = false
  771. local SOUND = nil
  772. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  773. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  774. PLAYSSOUND = true
  775. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  776. end
  777. EFFECT.Color = COLOR
  778. local MSH = nil
  779. if TYPE == "Sphere" then
  780. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  781. elseif TYPE == "Block" then
  782. MSH = IT("BlockMesh",EFFECT)
  783. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  784. elseif TYPE == "Wave" then
  785. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  786. elseif TYPE == "Ring" then
  787. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  788. elseif TYPE == "Slash" then
  789. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  790. elseif TYPE == "Round Slash" then
  791. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  792. elseif TYPE == "Swirl" then
  793. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  794. elseif TYPE == "Skull" then
  795. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  796. elseif TYPE == "Crystal" then
  797. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  798. end
  799. if MSH ~= nil then
  800. local MOVESPEED = nil
  801. if MOVEDIRECTION ~= nil then
  802. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  803. end
  804. local GROWTH = SIZE - ENDSIZE
  805. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  806. if TYPE == "Block" then
  807. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  808. else
  809. EFFECT.CFrame = CFRAME
  810. end
  811. for LOOP = 1, TIME+1 do
  812. Swait()
  813. MSH.Scale = MSH.Scale - GROWTH/TIME
  814. if TYPE == "Wave" then
  815. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  816. end
  817. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  818. if TYPE == "Block" then
  819. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  820. else
  821. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  822. end
  823. if MOVEDIRECTION ~= nil then
  824. local ORI = EFFECT.Orientation
  825. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  826. EFFECT.Orientation = ORI
  827. end
  828. end
  829. if PLAYSSOUND == false then
  830. EFFECT:remove()
  831. else
  832. SOUND.Stopped:Connect(function()
  833. EFFECT:remove()
  834. end)
  835. end
  836. else
  837. if PLAYSSOUND == false then
  838. EFFECT:remove()
  839. else
  840. repeat Swait() until SOUND.Playing == false
  841. EFFECT:remove()
  842. end
  843. end
  844. end))
  845. end
  846.  
  847. function MakeForm(PART,TYPE)
  848. if TYPE == "Cyl" then
  849. local MSH = IT("CylinderMesh",PART)
  850. elseif TYPE == "Ball" then
  851. local MSH = IT("SpecialMesh",PART)
  852. MSH.MeshType = "Sphere"
  853. elseif TYPE == "Wedge" then
  854. local MSH = IT("SpecialMesh",PART)
  855. MSH.MeshType = "Wedge"
  856. end
  857. end
  858.  
  859. Debris = game:GetService("Debris")
  860.  
  861. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  862. local DIRECTION = CF(StartPos,EndPos).lookVector
  863. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  864. end
  865.  
  866. function Kill(Char)
  867. local NewCharacter = IT("Model",Effects)
  868. NewCharacter.Name = "rekt player"
  869. for _, c in pairs(Char:GetDescendants()) do
  870. if c:IsA("BasePart") and c.Transparency == 0 then
  871. if c.Parent == Char then
  872. getbloody(c,5)
  873. end
  874. c:BreakJoints()
  875. c.Material = "Glass"
  876. c.Color = C3(0,0,0)
  877. c.CanCollide = false
  878. c.Transparency = 0.005
  879. if c:FindFirstChildOfClass("SpecialMesh") then
  880. c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  881. end
  882. if c.Name == "Head" then
  883. c:ClearAllChildren()
  884. c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
  885. end
  886. if c.ClassName == "MeshPart" then
  887. c.TextureID = ""
  888. end
  889. if c:FindFirstChildOfClass("BodyPosition") then
  890. c:FindFirstChildOfClass("BodyPosition"):remove()
  891. end
  892. if c:FindFirstChildOfClass("ParticleEmitter") then
  893. c:FindFirstChildOfClass("ParticleEmitter"):remove()
  894. end
  895. c.Parent = NewCharacter
  896. c.Name = "DeadPart"
  897. c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
  898. c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
  899. end
  900. end
  901. Char:remove()
  902. Debris:AddItem(NewCharacter,5)
  903. end
  904.  
  905. function ApplyAoE(POSITION,RANGE,BRUTAL)
  906. local CHILDREN = workspace:GetDescendants()
  907. for index, CHILD in pairs(CHILDREN) do
  908. if CHILD.ClassName == "Model" and CHILD ~= Character then
  909. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  910. if HUM then
  911. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  912. if TORSO then
  913. if (TORSO.Position - POSITION).Magnitude <= RANGE then
  914. if BRUTAL == true then
  915. Kill(CHILD)
  916. else
  917. CHILD:BreakJoints()
  918. end
  919. end
  920. end
  921. end
  922. end
  923. end
  924. end
  925.  
  926. function Morning_Star()
  927. ATTACK = true
  928. Rooted = true
  929. for i=0, 1, 0.1 / Animation_Speed do
  930. Swait()
  931. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  932. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  933. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  934. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  935. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  936. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  937. end
  938. coroutine.resume(coroutine.create(function()
  939. local POS = Mouse.Hit.p
  940. local RAY = CreatePart(3, Effects, "Neon", 0, 0, "Royal purple", "Strike", VT(0,2000,0))
  941. MakeForm(RAY,"Cyl")
  942. local SPHERE = CreatePart(3, Effects, "Neon", 0, 0, "Royal purple", "Strike", VT(0,0,0))
  943. MakeForm(SPHERE,"Ball")
  944. local SHIELD = CreatePart(3, Effects, "Neon", 0, 0, "Really black", "Strike", VT(0,0,0))
  945. MakeForm(SHIELD,"Ball")
  946. SHIELD.CFrame = CF(POS)
  947. RAY.CFrame = CF(POS)
  948. SPHERE.CFrame = CF(POS)
  949. CreateSound(440145570, SPHERE, 10, 0.8, false)
  950. CreateSound(415700134, SPHERE, 10, 0.8, false)
  951. for i = 1, 200 do
  952. Swait()
  953. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(SPHERE.Size.X*1.2,5+(i),SPHERE.Size.X*1.2), Transparency = 0, Transparency2 = 1, CFrame = SPHERE.CFrame*ANGLES(RAD(0), RAD(i), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  954. RAY.Size = RAY.Size + VT(0.05,0,0.05)
  955. SPHERE.Size = SPHERE.Size + VT(2,2,2)
  956. SHIELD.Size = SPHERE.Size + VT(3,3,3)
  957. ApplyAoE(SPHERE.Position,SPHERE.Size.X/2,true)
  958. end
  959. for i = 1, 45 do
  960. Swait()
  961. RAY.Transparency = RAY.Transparency + 1/45
  962. SPHERE.Transparency = RAY.Transparency
  963. SHIELD.Transparency = SPHERE.Transparency + 1/45
  964. end
  965. RAY:remove()
  966. SHIELD:remove()
  967. SPHERE:remove()
  968. end))
  969. for i=0, 1, 0.1 / Animation_Speed do
  970. Swait()
  971. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
  972. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  973. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(-45), RAD(85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  974. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(45), RAD(-85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  975. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  976. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  977. end
  978. ATTACK = false
  979. Rooted = false
  980. end
  981.  
  982. function Prison_Key()
  983. if Mouse.Target ~= nil then
  984. if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
  985. local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
  986. local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
  987. local GYRO = IT("BodyGyro",RootPart)
  988. GYRO.D = 750
  989. GYRO.P = 20000
  990. GYRO.MaxTorque = VT(0,40000000,0)
  991. local grav = Instance.new("BodyPosition",TORSO)
  992. grav.D = 15
  993. grav.P = 20000
  994. grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  995. grav.position = TORSO.Position
  996. local GYRO2 = IT("BodyGyro",TORSO)
  997. GYRO2.D = 750
  998. GYRO2.P = 20000
  999. GYRO2.MaxTorque = VT(0,40000000,0)
  1000. GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
  1001. grav.Name = "Jail"
  1002. local LOCKPARTS = {}
  1003. ATTACK = true
  1004. Rooted = false
  1005. local LOCK = IT("Model",Effects)
  1006. LOCK.Name = "Lock"
  1007. local LOCK2 = IT("Model",LOCK)
  1008. LOCK2.Name = "Metal"
  1009. --CREATE LOCK--
  1010. local BASE = CreatePart(3, LOCK, "Glass", 0, 0, "Gray", "Keylock", VT(3, 2.5, 1))
  1011. LOCK.PrimaryPart = BASE
  1012. BASE.CFrame = CF(TORSO.Position,RootPart.Position)*CF(0,0,-4)
  1013. local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "Gray", "Keylock", VT(3, 1, 3))
  1014. PRT.CFrame = BASE.CFrame*CF(0,-1.25,0)*ANGLES(RAD(90),RAD(0),RAD(0))
  1015. MakeForm(PRT,"Cyl")
  1016. local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(1, 1, 1))
  1017. PRT.Color = C3(0,0,0)
  1018. PRT.CFrame = BASE.CFrame*CF(0,0.3,-0.01)*ANGLES(RAD(90),RAD(0),RAD(0))
  1019. MakeForm(PRT,"Cyl")
  1020. local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(0.5, 1, 1))
  1021. PRT.Color = C3(0,0,0)
  1022. PRT.CFrame = BASE.CFrame*CF(0,-0.2,-0.01)
  1023. for i = 1, 45 do
  1024. local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
  1025. PRT.CFrame = BASE.CFrame*CF(0,2,0)*ANGLES(RAD(0),RAD(0),RAD(-90+(360/90*i)))*CF(0,1,0)
  1026. end
  1027. local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
  1028. PRT.CFrame = BASE.CFrame*CF(0,1.5,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0)
  1029. LOCK2.PrimaryPart = PRT
  1030. ---------------
  1031. local CHILDREN = LOCK:GetDescendants()
  1032. for index, CHILD in pairs(CHILDREN) do
  1033. if CHILD:IsA("BasePart") then
  1034. CHILD.Transparency = 1
  1035. end
  1036. end
  1037. for i = 1, 75 do
  1038. LOCK:SetPrimaryPartCFrame(CF(TORSO.Position,RootPart.Position)*CF(0,0,-4))
  1039. Swait()
  1040. GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
  1041. GYRO.cframe = CF(RootPart.Position,TORSO.Position)
  1042. local CHILDREN = LOCK:GetDescendants()
  1043. for index, CHILD in pairs(CHILDREN) do
  1044. if CHILD:IsA("BasePart") then
  1045. CHILD.Transparency = CHILD.Transparency - 1/75
  1046. end
  1047. end
  1048. end
  1049. HUM.DisplayDistanceType = "None"
  1050. local KEY = IT("Model",Effects)
  1051. KEY.Name = "Key"
  1052. --CREATE KEY--
  1053. local KBASE = CreatePart(3, KEY, "Neon", 0, 0, "Lavender", "KeyBase", VT(0.1, 1, 0.1),false)
  1054. KEY.PrimaryPart = KBASE
  1055. KBASE.CFrame = RightArm.CFrame*CF(0,-2.1,0)*ANGLES(RAD(0),RAD(90),RAD(0))
  1056. local WLD = weldBetween(RightArm,KBASE)
  1057. for i = 1, 45 do
  1058. local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Lavender", "Key", VT(0.1, 0.1, 0.1),false)
  1059. PRT.CFrame = KBASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD((360/45*i)))*CF(0,0.25,0)
  1060. weldBetween(KBASE,PRT)
  1061. end
  1062. local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Lavender", "Key", VT(0.3, 0.1, 0.1),false)
  1063. PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.45,0)
  1064. weldBetween(KBASE,PRT)
  1065. local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Lavender", "Key", VT(0.3, 0.1, 0.1),false)
  1066. PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.25,0)
  1067. weldBetween(KBASE,PRT)
  1068. --------------
  1069. Rooted = true
  1070. Pose("Prepare key",1.5,1.2,false,GYRO,TORSO)
  1071. coroutine.resume(coroutine.create(function()
  1072. for i = 1, 10 do
  1073. Swait()
  1074. GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
  1075. GYRO.cframe = CF(RootPart.Position,TORSO.Position)
  1076. end
  1077. CreateSound(1149318312,BASE,5,1,false)
  1078. CreateSound(160772554,BASE,3,1,false)
  1079. LOCK2:SetPrimaryPartCFrame(BASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0))
  1080. for i = 1, 4 do
  1081. WACKYEFFECT({Time = 35, EffectType = "Crystal", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(1,1.45,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1082. end
  1083. WACKYEFFECT({Time = 35, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,1,1)*25, Transparency = 0, Transparency2 = 1, CFrame = TORSO.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
  1084. wait(1)
  1085. TORSO.Parent.Parent = LOCK
  1086. for i = 1, 75 do
  1087. Swait()
  1088. local CHILDREN = KEY:GetDescendants()
  1089. for index, CHILD in pairs(CHILDREN) do
  1090. if CHILD:IsA("BasePart") then
  1091. CHILD.Transparency = i/25
  1092. end
  1093. end
  1094. local CHILDREN = LOCK:GetDescendants()
  1095. for index, CHILD in pairs(CHILDREN) do
  1096. if CHILD:IsA("BasePart") and CHILD.Name ~= "HumanoidRootPart" then
  1097. CHILD.Transparency = CHILD.Transparency + 1/75
  1098. elseif CHILD.ClassName == "Decal" then
  1099. CHILD.Transparency = CHILD.Transparency + 1/75
  1100. end
  1101. end
  1102. end
  1103. TORSO.Parent:ClearAllChildren()
  1104. KEY:remove()
  1105. LOCK:remove()
  1106. end))
  1107. Pose("Turn key",0.8,1.2,false,GYRO,TORSO)
  1108. GYRO:remove()
  1109. ATTACK = false
  1110. Rooted = false
  1111. end
  1112. end
  1113. end
  1114.  
  1115. local HATWELD = nil
  1116. function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
  1117. PLAYMAINANIMINANIM = false
  1118. if WhichPose == "Cast1" then
  1119. for i=0, Time, 0.1 / Animation_Speed do
  1120. Swait()
  1121. if Magic == true then
  1122. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1123. end
  1124. if Gyro ~= nil and Gyro ~= false then
  1125. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1126. end
  1127. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
  1128. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
  1129. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1130. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1131. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1132. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1133. end
  1134. elseif WhichPose == "Cast2" then
  1135. for i=0, Time, 0.1 / Animation_Speed do
  1136. Swait()
  1137. if Magic == true then
  1138. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1139. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1140. end
  1141. if Gyro ~= nil and Gyro ~= false then
  1142. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1143. end
  1144. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  1145. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  1146. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1147. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1148. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1149. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1150. end
  1151. elseif WhichPose == "RightArmUp" then
  1152. for i=0, Time, 0.1 / Animation_Speed do
  1153. Swait()
  1154. if Magic == true then
  1155. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1156. end
  1157. if Gyro ~= nil and Gyro ~= false then
  1158. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1159. end
  1160. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), Speed / Animation_Speed)
  1161. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1162. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.2) * ANGLES(RAD(125), RAD(0), RAD(25)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1163. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1164. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1165. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1166. end
  1167. elseif WhichPose == "Taunt" then
  1168. for i=0, Time, 0.1 / Animation_Speed do
  1169. Swait()
  1170. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  1171. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  1172. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1173. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1174. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1175. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1176. end
  1177. HATWELD.Part0 = RightArm
  1178. HATWELD.C0 = CF(0,-1.1,-0.4) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(-20), RAD(0), RAD(0))
  1179. CreateSound(221057812,Torso,10,1,false)
  1180. for i=0, Time*2, 0.1 / Animation_Speed do
  1181. Swait()
  1182. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  1183. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  1184. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1185. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1186. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1187. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1188. end
  1189. for i=0, Time, 0.1 / Animation_Speed do
  1190. Swait()
  1191. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  1192. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
  1193. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1194. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1195. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1196. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1197. HATWELD.C0 = Clerp(HATWELD.C0, CF(-0.5,-1.2,-0.3) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(35), RAD(0), RAD(35)), Speed / Animation_Speed)
  1198. end
  1199. HATWELD.Part0 = Head
  1200. HATWELD.C0 = CF(0,0.35,0)
  1201. elseif WhichPose == "Prepare key" then
  1202. for i=0, Time, 0.1 / Animation_Speed do
  1203. Swait()
  1204. if Gyro ~= nil and Gyro ~= false then
  1205. Gyro.cframe = CF(RootPart.Position,Tors.Position)
  1206. end
  1207. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(65)), Speed / Animation_Speed)
  1208. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
  1209. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1210. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1211. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1212. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1213. end
  1214. elseif WhichPose == "Turn key" then
  1215. for i=0, Time, 0.1 / Animation_Speed do
  1216. Swait()
  1217. if Gyro ~= nil and Gyro ~= false then
  1218. Gyro.cframe = CF(RootPart.Position,Tors.Position)
  1219. end
  1220. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)), Speed / Animation_Speed)
  1221. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
  1222. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1223. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1224. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1225. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1226. end
  1227. end
  1228. PLAYMAINANIM = true
  1229. end
  1230.  
  1231. function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH,DOES360)
  1232. if FLOOR ~= nil then
  1233. for i = 1, AMOUNT do
  1234. local DEBREE = CreatePart(3, Effects, "Neon", 0, 0, "Peal", "Debree", BLOCKSIZE, false)
  1235. DEBREE.Material = FLOOR.Material
  1236. DEBREE.Color = FLOOR.Color
  1237. DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
  1238. if DOES360 == true then
  1239. DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
  1240. else
  1241. DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),STRENGTH,MRANDOM(-STRENGTH,STRENGTH))
  1242. end
  1243. coroutine.resume(coroutine.create(function()
  1244. Swait(15)
  1245. DEBREE.Parent = workspace
  1246. DEBREE.CanCollide = true
  1247. Debris:AddItem(DEBREE,SWAIT)
  1248. end))
  1249. end
  1250. end
  1251. end
  1252.  
  1253. function SpawnTrail(FROM,TO)
  1254. local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Pearl", "Arrow", VT(0,0,0))
  1255. MakeForm(TRAIL,"Cyl")
  1256. local DIST = (FROM - TO).Magnitude
  1257. TRAIL.Size = VT(0.1,DIST,0.1)
  1258. TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  1259. coroutine.resume(coroutine.create(function()
  1260. for i = 1, 5 do
  1261. Swait()
  1262. TRAIL.Transparency = TRAIL.Transparency + 0.1
  1263. end
  1264. TRAIL:remove()
  1265. end))
  1266. end
  1267.  
  1268. local Decal = IT("Decal")
  1269. function SpawnBulletHole(POSITION)
  1270. local O1 = CreatePart(3, Effects, "Neon", 0, 1, "Magenta", "Bullet hole", VT(0.2,0,0.2))
  1271. local decal = Decal:Clone()
  1272. decal.Parent = O1
  1273. decal.Face = "Top"
  1274. decal.Texture = "http://www.roblox.com/asset/?id=130624105"
  1275. local decal2 = Decal:Clone()
  1276. decal2.Parent = O1
  1277. decal2.Face = "Bottom"
  1278. decal2.Texture = "http://www.roblox.com/asset/?id=130624105"
  1279. O1.CFrame = POSITION*ANGLES(RAD(0),RAD(MRANDOM(-180,180)),RAD(0))
  1280. Debris:AddItem(O1,5)
  1281. end
  1282.  
  1283. local asd = Instance.new("ParticleEmitter")
  1284. asd.Color = ColorSequence.new(Color3.new(1, 0, 0), Color3.new(.5, 0, 0))
  1285. asd.LightEmission = .1
  1286. asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
  1287. aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.2),NumberSequenceKeypoint.new(1, 2)})
  1288. bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
  1289. asd.Transparency = bbb
  1290. asd.Size = aaa
  1291. asd.ZOffset = .9
  1292. asd.Acceleration = Vector3.new(0, -15, 0)
  1293. asd.LockedToPart = false
  1294. asd.EmissionDirection = "Back"
  1295. asd.Lifetime = NumberRange.new(1, 2)
  1296. asd.Rotation = NumberRange.new(-100, 100)
  1297. asd.RotSpeed = NumberRange.new(-100, 100)
  1298. asd.Speed = NumberRange.new(10)
  1299. asd.Enabled = false
  1300. asd.VelocitySpread = 999
  1301.  
  1302. function getbloody(victim,amount)
  1303. local PART = IT("Part",Effects)
  1304. PART.Transparency = 1
  1305. PART.Size = victim.Size
  1306. PART.Anchored = true
  1307. PART.CanCollide = false
  1308. PART.CFrame = CF(victim.Position)
  1309. local HITPLAYERSOUNDS = {"356551938","264486467"}
  1310. Debris:AddItem(PART,5)
  1311. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  1312. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  1313. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  1314. local prtcl = asd:Clone()
  1315. prtcl.Parent = PART
  1316. prtcl:Emit(amount*10)
  1317. end
  1318.  
  1319. function BulletDetection(FROM,TO)
  1320. local AIMHIT,AIMPOS,NORMAL = CastProperRay(FROM,TO,2000,Character)
  1321. coroutine.resume(coroutine.create(function()
  1322. if AIMHIT ~= nil then
  1323. if AIMHIT.Parent ~= Character then
  1324. if AIMHIT.Parent:FindFirstChildOfClass("Humanoid") or AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid") then
  1325. if AIMHIT.Name ~= "Head" and AIMHIT.Parent.ClassName ~= "Accessory" then
  1326. ApplyDamage(AIMHIT.Parent:FindFirstChildOfClass("Humanoid"),MRANDOM(15,25),AIMHIT)
  1327. elseif AIMHIT.Name == "Head" or AIMHIT.Parent.ClassName == "Accessory" then
  1328. if AIMHIT.Parent.ClassName == "Accessory" then
  1329. if AIMHIT:FindFirstChild("HatAttachment") or AIMHIT:FindFirstChild("FaceFrontAttachment") or AIMHIT:FindFirstChild("HairAttachment") then
  1330. AIMHIT.Parent.Parent:BreakJoints()
  1331. if AIMHIT.Parent.Parent:FindFirstChild("Head") then
  1332. getbloody(AIMHIT.Parent.Parent.Head,15)
  1333. AIMHIT.Parent.Parent.Head:remove()
  1334. StatLabel(AIMHIT.CFrame * CF(0, 0 + (AIMHIT.Size.z - 1), 0), "Headshot!", C3(0,0,0))
  1335. end
  1336. else
  1337. ApplyDamage(AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid"),MRANDOM(25,65),AIMHIT)
  1338. end
  1339. elseif AIMHIT.Name == "Head" then
  1340. getbloody(AIMHIT,15)
  1341. AIMHIT.Parent:BreakJoints()
  1342. AIMHIT:remove()
  1343. StatLabel(AIMHIT.CFrame * CF(0, 0 + (AIMHIT.Size.z - 1), 0), "Headshot!", C3(0,0,0))
  1344. end
  1345. end
  1346. else
  1347. CreateFlyingDebree(AIMHIT,CF(AIMPOS),7,VT(0.1,0.1,0.1),5,35,true)
  1348. SpawnBulletHole(CF(AIMPOS,AIMPOS+NORMAL)*ANGLES(RAD(90),RAD(0),RAD(0)))
  1349. end
  1350. end
  1351. end
  1352. end))
  1353. return AIMHIT,AIMPOS,NORMAL
  1354. end
  1355.  
  1356.  
  1357. function Shatter(Part)
  1358. if Part.Transparency == 0 then
  1359. local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, Part.BrickColor, "OOF", VT(0,0,0))
  1360. Debris:AddItem(SOUNDPART,5)
  1361. CreateSound("84005018", SOUNDPART, 3, MRANDOM(8,12)/10, false)
  1362. local SIZE = Part.Size.X + Part.Size.Y + Part.Size.Z
  1363. local SIZESET = SIZE/4
  1364. local XOffset = Part.Size.X*1.5/SIZESET
  1365. local YOffset = Part.Size.Y*1.5/SIZESET
  1366. local ZOffset = Part.Size.Z*1.5/SIZESET
  1367. for x = 1, math.ceil(XOffset) do
  1368. for y = 1, math.ceil(YOffset) do
  1369. for z = 1, math.ceil(ZOffset) do
  1370. local SHARD = CreatePart(3, Effects, "Neon", 0, 0, Part.BrickColor, "Shard", VT(SIZE,SIZE,SIZE)/10, false)
  1371. SHARD.CanCollide = true
  1372. SHARD.CFrame = Part.CFrame*CF((Part.Size.X/2-x/4),(Part.Size.Y/2-y/4),(Part.Size.Z/2-z/4))
  1373. SHARD.Velocity = VT(MRANDOM(-15,15),MRANDOM(-15,15),MRANDOM(-15,15))*3
  1374. Debris:AddItem(SHARD,MRANDOM(10,25)/3)
  1375. end
  1376. end
  1377. end
  1378. end
  1379. Part:remove()
  1380. end
  1381.  
  1382. function MakeForm(PART,TYPE)
  1383. if TYPE == "Cyl" then
  1384. local MSH = IT("CylinderMesh",PART)
  1385. elseif TYPE == "Ball" then
  1386. local MSH = IT("SpecialMesh",PART)
  1387. MSH.MeshType = "Sphere"
  1388. elseif TYPE == "Wedge" then
  1389. local MSH = IT("SpecialMesh",PART)
  1390. MSH.MeshType = "Wedge"
  1391. end
  1392. end
  1393.  
  1394. Debris = game:GetService("Debris")
  1395.  
  1396. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1397. local DIRECTION = CF(StartPos,EndPos).lookVector
  1398. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1399. end
  1400.  
  1401. function turnto(position)
  1402. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1403. end
  1404.  
  1405.  
  1406. function MakeForm(PART,TYPE)
  1407. if TYPE == "Cyl" then
  1408. local MSH = IT("CylinderMesh",PART)
  1409. elseif TYPE == "Ball" then
  1410. local MSH = IT("SpecialMesh",PART)
  1411. MSH.MeshType = "Sphere"
  1412. elseif TYPE == "Wedge" then
  1413. local MSH = IT("SpecialMesh",PART)
  1414. MSH.MeshType = "Wedge"
  1415. end
  1416. end
  1417.  
  1418. Debris = game:GetService("Debris")
  1419.  
  1420. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1421. local DIRECTION = CF(StartPos,EndPos).lookVector
  1422. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1423. end
  1424.  
  1425. function turnto(position)
  1426. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1427. end
  1428.  
  1429.  
  1430. function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
  1431. if FLOOR ~= nil then
  1432. coroutine.resume(coroutine.create(function()
  1433. local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
  1434. PART.CFrame = CF(POSITION)
  1435. for i = 1, 45 do
  1436. local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
  1437. RingPiece.Material = FLOOR.Material
  1438. RingPiece.Color = FLOOR.Color
  1439. RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i*8), RAD(0)) * CF(SIZE, 0, 0) * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
  1440. Debris:AddItem(RingPiece,SWAIT)
  1441. end
  1442. PART:remove()
  1443. end))
  1444. end
  1445. end
  1446.  
  1447. function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH)
  1448. if FLOOR ~= nil then
  1449. for i = 1, AMOUNT do
  1450. local DEBREE = CreatePart(3, Effects, "Neon", FLOOR.Reflectance, FLOOR.Transparency, "Peal", "Debree", BLOCKSIZE, false)
  1451. DEBREE.Material = FLOOR.Material
  1452. DEBREE.Color = FLOOR.Color
  1453. DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
  1454. DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
  1455. coroutine.resume(coroutine.create(function()
  1456. Swait(15)
  1457. DEBREE.Parent = workspace
  1458. DEBREE.CanCollide = true
  1459. Debris:AddItem(DEBREE,SWAIT)
  1460. end))
  1461. end
  1462. end
  1463. end
  1464.  
  1465.  
  1466.  
  1467. --//=================================\\
  1468. --|| WEAPON CREATION
  1469. --\\=================================//
  1470.  
  1471. for i = 1, 35 do
  1472. local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/35.2, "Dark stone grey", "FaceGradient", VT(0,0,0),false)
  1473. FACE.Color = C3(0,0,0)
  1474. Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
  1475. CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/75,0), CF(0, 0, 0))
  1476. end
  1477. local EYE = CreatePart(3, Character, "Neon", 0, 0, "Royal purple", "Eyeball", VT(0,0,0),false)
  1478. MakeForm(EYE,"Ball")
  1479. CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(-0.15,0.26,-0.55), CF(0, 0, 0))
  1480. local EYE2 = CreatePart(3, Character, "Neon", 0, 0, "Royal purple", "Eyeball", VT(0.25,0.25,0.25),false)
  1481. MakeForm(EYE2,"Ball")
  1482. CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE2, CF(-0.15,0.26,-0.55), CF(0, 0, 0))
  1483. local Gun = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Royal purple", "Gun", VT(0, 0, 0),false)
  1484. local HandleMesh = CreateMesh("SpecialMesh", Gun, "FileMesh", "430070098", "154987811", VT(0.05,0.05,0.05), VT(0,0, 0))
  1485. local Weld = CreateWeldOrSnapOrMotor("Weld", Gun, RightArm, Gun, CF(0, -1.8, -0.2) * ANGLES(RAD(0), RAD(90), RAD(-90)), CF(0, 0, 0))
  1486.  
  1487. local BODY = {}
  1488.  
  1489. for _, c in pairs(Character:GetDescendants()) do
  1490. if c:IsA("BasePart") and c.Name ~= "Handle" then
  1491. if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
  1492. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1493. end
  1494. table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
  1495. elseif c:IsA("JointInstance") then
  1496. table.insert(BODY,{c,c.Parent,nil,nil,nil})
  1497. end
  1498. end
  1499.  
  1500. for e = 1, #BODY do
  1501. if BODY[e] ~= nil then
  1502. local STUFF = BODY[e]
  1503. local PART = STUFF[1]
  1504. local PARENT = STUFF[2]
  1505. local MATERIAL = STUFF[3]
  1506. local COLOR = STUFF[4]
  1507. local TRANSPARENCY = STUFF[5]
  1508. if PART.ClassName == "Part" and PART ~= RootPart then
  1509. PART.Material = MATERIAL
  1510. PART.Color = COLOR
  1511. PART.Transparency = TRANSPARENCY
  1512. end
  1513. PART.AncestryChanged:Connect(function()
  1514. PART.Parent = PARENT
  1515. end)
  1516. end
  1517. end
  1518.  
  1519. function refit()
  1520. Character.Parent = workspace
  1521. for e = 1, #BODY do
  1522. if BODY[e] ~= nil then
  1523. local STUFF = BODY[e]
  1524. local PART = STUFF[1]
  1525. local PARENT = STUFF[2]
  1526. local MATERIAL = STUFF[3]
  1527. local COLOR = STUFF[4]
  1528. local TRANSPARENCY = STUFF[5]
  1529. if PART.ClassName == "Part" and PART ~= RootPart then
  1530. PART.Material = MATERIAL
  1531. PART.Color = COLOR
  1532. PART.Transparency = TRANSPARENCY
  1533. end
  1534. if PART.Parent ~= PARENT then
  1535. Humanoid:remove()
  1536. PART.Parent = PARENT
  1537. Humanoid = IT("Humanoid",Character)
  1538. end
  1539. end
  1540. end
  1541. end
  1542.  
  1543. local SKILLTEXTCOLOR = BrickColor.new("Magenta").Color
  1544. local SKILLFONT = "SciFi"
  1545. local SKILLTEXTSIZE = 7
  1546.  
  1547. Humanoid.Died:connect(function()
  1548. refit()
  1549. end)
  1550.  
  1551. function Blink()
  1552. coroutine.resume(coroutine.create(function()
  1553. if EYE ~= nil then
  1554. for i = 1, 5 do
  1555. Swait()
  1556. EYE.Mesh.Scale = EYE.Mesh.Scale - VT(0,0.2,0)
  1557. EYE2.Mesh.Scale = EYE.Mesh.Scale
  1558. end
  1559. for i = 1, 7 do
  1560. Swait()
  1561. EYE.Mesh.Scale = EYE.Mesh.Scale + VT(0,0.2,0)
  1562. EYE2.Mesh.Scale = EYE.Mesh.Scale
  1563. end
  1564. EYE.Mesh.Scale = VT(1,1,1)
  1565. EYE2.Mesh.Scale = EYE.Mesh.Scale
  1566. end
  1567. end))
  1568. end
  1569.  
  1570. local AMMO1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.80, 0), UD2(0.07, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Ammo 1 Frame")
  1571. local AMMO2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50, 0, 0.80, 0), UD2(0.07, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Ammo 2 Frame")
  1572. local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
  1573. local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
  1574.  
  1575. local SKILL3TEXT = CreateLabel(SKILL1FRAME, "press [Z] to troll people", C3(0,0,0), 7, SKILLFONT, 0, 2, 1, "Text 3")
  1576. local SKILL4TEXT = CreateLabel(SKILL2FRAME, "press [X] to pay jason respect", C3(0,0,0), 7, "SciFi", 0, 2, 1, "Text 4")
  1577.  
  1578. local AMMOIMAGE2 = IT("ImageLabel",AMMO2FRAME)
  1579. AMMOIMAGE2.Size = UD2(1,0,1,0)
  1580. AMMOIMAGE2.BackgroundTransparency = 1
  1581. AMMOIMAGE2.BorderSizePixel = 0
  1582. AMMOIMAGE2.Image = "http://www.roblox.com/asset/?id=923773583"
  1583.  
  1584. for i = 1, 35 do
  1585. local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/35.2, "Magenta", "FaceGradient", VT(1.01,0.5,1.01),false)
  1586. FACE.Color = BrickColor.new("Magenta").Color
  1587. Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
  1588. CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/75,0), CF(0, 0, 0))
  1589. end
  1590.  
  1591. local Eye = CreatePart(3, Character, "Neon", 0, 0, "Magenta", "Eye", VT(0.6,0.1,1)/2,false)
  1592. MakeForm(Eye,"Ball")
  1593. CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(-18), RAD(15)), CF(0, 0, 0.4))
  1594. local Eye = CreatePart(3, Character, "Neon", 0, 0, "Magenta", "Eye", VT(0.6,0.1,1)/2,false)
  1595. MakeForm(Eye,"Ball")
  1596. CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(18), RAD(-15)), CF(0, 0, 0.4))
  1597. local Eye = CreatePart(3, Character, "Neon", 0, 0, "Magenta", "Eye", VT(0.1,1,1)/2,false)
  1598. MakeForm(Eye,"Ball")
  1599. CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(-18), RAD(0)), CF(0, 0, 0.4))
  1600. local Eye = CreatePart(3, Character, "Neon", 0, 0, "Magenta", "Eye", VT(0.1,1,1)/2,false)
  1601. MakeForm(Eye,"Ball")
  1602. CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(18), RAD(0)), CF(0, 0, 0.4))
  1603.  
  1604. local BasePart = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Magenta", "BraceletPart", VT(1.01,0.3,1.01),false)
  1605. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, BasePart, CF(0, -0.2, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1606. for i = 1, 3 do
  1607. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Magenta", "BraceletPart", VT(0.2,1.02,0.2),false)
  1608. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0, 0, 0.6-0.3*i) * ANGLES(RAD(0), RAD(0), RAD(90)), CF(0, 0, 0))
  1609. MakeForm(Part,"Cyl")
  1610. end
  1611. for i = 1, 3 do
  1612. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Magenta", "BraceletPart", VT(0.2,1.02,0.2),false)
  1613. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0.6-0.3*i, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(90)), CF(0, 0, 0))
  1614. MakeForm(Part,"Cyl")
  1615. end
  1616. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Magenta", "BraceletPart", VT(0.51,0.6,0.25),false)
  1617. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(-0.125, -0.4, -0.25) * ANGLES(RAD(0), RAD(90), RAD(180)), CF(0, 0, 0))
  1618. MakeForm(Part,"Wedge")
  1619. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Magenta", "BraceletPart", VT(0.51,0.6,0.25),false)
  1620. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0.125, -0.4, -0.25) * ANGLES(RAD(0), RAD(-90), RAD(180)), CF(0, 0, 0))
  1621. MakeForm(Part,"Wedge")
  1622. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Magenta", "BraceletPart", VT(0.52,0.5,0.25/2.3),false)
  1623. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(-0.125/2.3, -0.25, -0.25) * ANGLES(RAD(0), RAD(90), RAD(180)), CF(0, 0, 0))
  1624. MakeForm(Part,"Wedge")
  1625. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Magenta", "BraceletPart", VT(0.52,0.5,0.25/2.3),false)
  1626. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0.125/2.3, -0.25, -0.25) * ANGLES(RAD(0), RAD(-90), RAD(180)), CF(0, 0, 0))
  1627. MakeForm(Part,"Wedge")
  1628.  
  1629.  
  1630.  
  1631. local HAT1 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Magenta", "Hat", VT(2,0.2,2),false)
  1632. MakeForm(HAT1,"Cyl")
  1633. HATWELD = CreateWeldOrSnapOrMotor("Weld", Head, Head, HAT1, CF(0,0.35,0), CF(0, 0, 0))
  1634. local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Magenta", "Hat", VT(2.01,0.15,2.01),false)
  1635. BELT.Color = BrickColor.new("Magenta").Color
  1636. MakeForm(BELT,"Cyl")
  1637. CreateWeldOrSnapOrMotor("Weld", HAT1, HAT1, BELT, CF(0,0,0), CF(0, 0, 0))
  1638. local HAT2 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Magenta", "Hat", VT(1.3,2.2,1.3),false)
  1639. MakeForm(HAT2,"Cyl")
  1640. CreateWeldOrSnapOrMotor("Weld", HAT1, HAT1, HAT2, CF(0,1.1,0), CF(0, 0, 0))
  1641. local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Magenta", "Hat", VT(1.31,0.2,1.31),false)
  1642. BELT.Color = BrickColor.new("Magenta").Color
  1643. MakeForm(BELT,"Cyl")
  1644. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0,0), CF(0, 0, 0))
  1645. local GEM = CreatePart(3, Character, "Neon", 0, 0, "Lime green", "Gem", VT(0.25,0.25,0.1),false)
  1646. MakeForm(GEM,"Ball")
  1647. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(0,0,-BELT.Size.X/2), CF(0, 0, 0))
  1648. local GEM = CreatePart(3, Character, "Neon", 0, 0, "Lime green", "Gem", VT(0.25,0.25,0.1),false)
  1649. MakeForm(GEM,"Ball")
  1650. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(0,0,BELT.Size.X/2), CF(0, 0, 0))
  1651. local GEM = CreatePart(3, Character, "Neon", 0, 0, "Lime green", "Gem", VT(0.1,0.25,0.25),false)
  1652. MakeForm(GEM,"Ball")
  1653. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(-BELT.Size.X/2,0,0), CF(0, 0, 0))
  1654. local GEM = CreatePart(3, Character, "Neon", 0, 0, "Lime green", "Gem", VT(0.1,0.25,0.25),false)
  1655. MakeForm(GEM,"Ball")
  1656. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(BELT.Size.X/2,0,0), CF(0, 0, 0))
  1657.  
  1658.  
  1659.  
  1660.  
  1661.  
  1662. --//=================================\\
  1663. --|| DAMAGE FUNCTIONS
  1664. --\\=================================//
  1665.  
  1666. function StatLabel(CFRAME, TEXT, COLOR)
  1667. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  1668. STATPART.CFrame = CF(CFRAME.p,CFRAME.p+VT(MRANDOM(-5,5),MRANDOM(0,5),MRANDOM(-5,5)))
  1669. local BODYGYRO = IT("BodyGyro", STATPART)
  1670. game:GetService("Debris"):AddItem(STATPART ,5)
  1671. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  1672. BILLBOARDGUI.Adornee = STATPART
  1673. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  1674. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  1675. BILLBOARDGUI.AlwaysOnTop = false
  1676. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  1677. TEXTLABEL.BackgroundTransparency = 1
  1678. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  1679. TEXTLABEL.Text = TEXT
  1680. TEXTLABEL.Font = SKILLFONT
  1681. TEXTLABEL.FontSize="Size42"
  1682. TEXTLABEL.TextColor3 = COLOR
  1683. TEXTLABEL.TextStrokeTransparency = 0
  1684. TEXTLABEL.TextScaled = true
  1685. TEXTLABEL.TextWrapped = true
  1686. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  1687. for i = 1, 10 do
  1688. Swait()
  1689. STATPART.CFrame = STATPART.CFrame * CF(0,0,-0.2)
  1690. TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/10)
  1691. TEXTLABEL.TextStrokeTransparency = TEXTLABEL.TextTransparency
  1692. end
  1693. THEPART.Parent = nil
  1694. end),STATPART, TEXTLABEL)
  1695. end
  1696.  
  1697. --//=================================\\
  1698. --|| DAMAGING
  1699. --\\=================================//
  1700.  
  1701. function ApplyDamage(Humanoid,Damage,TorsoPart)
  1702. local defence = Instance.new("BoolValue",Humanoid.Parent)
  1703. defence.Name = ("HitBy"..Player.Name)
  1704. game:GetService("Debris"):AddItem(defence, 0.001)
  1705. Damage = Damage * DAMAGEMULTIPLIER
  1706. if Humanoid.Health ~= 0 then
  1707. local CritChance = MRANDOM(1,100)
  1708. if Damage > Humanoid.Health then
  1709. Damage = math.ceil(Humanoid.Health)
  1710. if Damage == 0 then
  1711. Damage = 0.1
  1712. end
  1713. end
  1714. Humanoid.Health = Humanoid.Health - Damage
  1715. StatLabel(TorsoPart.CFrame * CF(0, 0 + (TorsoPart.Size.z - 1), 0), Damage, C3(0, 0, 0))
  1716. end
  1717. end
  1718.  
  1719. function Ghostify(POSITION,RANGE)
  1720. local CHILDREN = workspace:GetDescendants()
  1721. for index, CHILD in pairs(CHILDREN) do
  1722. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  1723. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  1724. if HUM then
  1725. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  1726. if TORSO then
  1727. if HUM.Health > 0 and (TORSO.Position - POSITION).Magnitude <= RANGE then
  1728. local GHOST = GHOSTBASE:Clone()
  1729. GHOST.Parent = Effects
  1730. GHOST.Torso.CFrame = TORSO.CFrame
  1731. table.insert(GHOSTS,GHOST)
  1732. CHILD:remove()
  1733. end
  1734. end
  1735. end
  1736. end
  1737. end
  1738. end
  1739.  
  1740. --//=================================\\
  1741. --|| ATTACK FUNCTIONS AND STUFF
  1742. --\\=================================//
  1743.  
  1744. function Shell()
  1745. ATTACK = false
  1746. Rooted = false
  1747. local GYRO = IT("BodyGyro",RootPart)
  1748. GYRO.D = 750
  1749. GYRO.P = 20000
  1750. GYRO.MaxTorque = VT(0,40000000,0)
  1751. for i=0, 1, 0.1 / Animation_Speed do
  1752. Swait()
  1753. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1754. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(35)), 0.75 / Animation_Speed)
  1755. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 0.5 * SIN(SINE / 12)), RAD(15), RAD(-35)), 0.75 / Animation_Speed)
  1756. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(115), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1757. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1758. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(35)), 0.75 / Animation_Speed)
  1759. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.3 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(-25)), 0.75 / Animation_Speed)
  1760. end
  1761. GYRO:remove()
  1762. CreateSound(130113322, Gun, 5, 1, false)
  1763. local AIMHIT,AIMPOS,NORMAL = BulletDetection(Gun.Position,Mouse.Hit.p)
  1764. SpawnTrail(Gun.CFrame*CF(1.5,0.5,0).p,AIMPOS)
  1765. WACKYEFFECT({Time = 3, EffectType = "Sphere", Size = VT(1,0.3,0.3), Size2 = VT(1,0,0), Transparency = 0, Transparency2 = 1, CFrame = Gun.CFrame*CF(1.5,0.5,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1766. for i=0, 0.3, 0.1 / Animation_Speed do
  1767. Swait()
  1768. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(35)), 0.75 / Animation_Speed)
  1769. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 0.5 * SIN(SINE / 12)), RAD(15), RAD(-35)), 0.75 / Animation_Speed)
  1770. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0.3) * ANGLES(RAD(110), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1771. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1772. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(35)), 0.75 / Animation_Speed)
  1773. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.3 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(-25)), 0.75 / Animation_Speed)
  1774. end
  1775. ATTACK = false
  1776. Rooted = false
  1777. end
  1778.  
  1779. function Taunt()
  1780. ATTACK = true
  1781. Rooted = false
  1782. TAUNT = true
  1783. for i=0, 0.1, 0.1 / Animation_Speed do
  1784. Swait()
  1785. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1786. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  1787. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  1788. end
  1789. for i=0, 3, 0.1 / Animation_Speed do
  1790. Swait()
  1791. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1792. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(170), RAD(0), RAD(-15)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1793. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(170), RAD(0), RAD(15)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1794. end
  1795. CreateSound(363808674, Torso, 10, 1.3)
  1796. for i=0, 1, 0.1 / Animation_Speed do
  1797. Swait()
  1798. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(120)), 3 / Animation_Speed)
  1799. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(150), RAD(0), RAD(-25)) * RIGHTSHOULDERC0, 3/ Animation_Speed)
  1800. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(230), RAD(0), RAD(35)) * LEFTSHOULDERC0, 3 / Animation_Speed)
  1801. end
  1802. WACKYEFFECT({EffectType = "Block", Size = VT(6,6,6), Size2 = VT(15,15,15), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  1803. CreateSound(649634100, Torso, 10, 0.8)
  1804. for i=0, 0.01, 0.1 / Animation_Speed do
  1805. Swait()
  1806. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 3 / Animation_Speed)
  1807. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
  1808. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, 0.5) * ANGLES(RAD(0), RAD(45), RAD(-12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 3 / Animation_Speed)
  1809. end
  1810. ATTACK = false
  1811. Rooted = false
  1812. TAUNT = false
  1813. end
  1814.  
  1815. function SinfulShell()
  1816. ATTACK = true
  1817. Rooted = false
  1818. local GYRO = IT("BodyGyro",RootPart)
  1819. GYRO.D = 750
  1820. GYRO.P = 20000
  1821. GYRO.MaxTorque = VT(0,40000000,0)
  1822. for i=0, 1, 0.1 / Animation_Speed do
  1823. Swait()
  1824. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1825. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(35)), 0.75 / Animation_Speed)
  1826. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 0.5 * SIN(SINE / 12)), RAD(15), RAD(-35)), 0.75 / Animation_Speed)
  1827. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(115), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1828. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1829. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(35)), 0.75 / Animation_Speed)
  1830. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.3 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(-25)), 0.75 / Animation_Speed)
  1831. end
  1832. GYRO:remove()
  1833. CreateSound(132456187, Gun, 5, 1, false)
  1834. WACKYEFFECT({Time = 3, EffectType = "Sphere", Size = VT(1,0.3,0.3), Size2 = VT(1,0,0), Transparency = 0, Transparency2 = 1, CFrame = Gun.CFrame*CF(1.5,0.5,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1835. coroutine.resume(coroutine.create(function()
  1836. local Bullet = CreatePart(3, Effects, "SmoothPlastic", 0, 0, "Royal purple", "Sinful bullet", VT(0,0,0))
  1837. CreateMesh("SpecialMesh", Bullet, "FileMesh", "94295100", "", VT(6, 6, 7), VT(0,0, 0))
  1838. Bullet.CFrame = Gun.CFrame*CF(1.5,0.5,0)
  1839. local AIMPOINT = Mouse.Hit.p
  1840. local STARTPOS = Gun.CFrame*CF(1.5,0.5,0).p
  1841. local VECTOR = CF(STARTPOS,AIMPOINT)
  1842. local IMPACTED = false
  1843. CreateSound(1393698948, Bullet, 10, 1, true)
  1844. for E = 1, 50 do
  1845. if IMPACTED == true then
  1846. break
  1847. end
  1848. local TARGETPOINT = VECTOR*CF(0,0,-E*5)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,1,0).p
  1849. Bullet.CFrame = CF(Bullet.Position,TARGETPOINT)
  1850. for i = 1, 5 do
  1851. Swait()
  1852. WACKYEFFECT({Time = 15, EffectType = "Swirl", Size = VT(1,1,1), Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = Bullet.CFrame * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i+E, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  1853. Bullet.CFrame = Bullet.CFrame*CF(0,0,-1)
  1854. local AIMHIT,AIMPOS,NORMAL = Raycast(Bullet.Position,Bullet.CFrame.lookVector,1.3,Character)
  1855. if AIMHIT ~= nil then
  1856. IMPACTED = true
  1857. break
  1858. end
  1859. end
  1860. end
  1861. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(10,10,10), Size2 = VT(9,9,9), Transparency = 0, Transparency2 = 1, CFrame = Bullet.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 182765513, SoundPitch = MRANDOM(8,12)/10, SoundVolume = 7})
  1862. for i = 1, 7 do
  1863. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(1,15,1), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = Bullet.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1864. end
  1865. Ghostify(Bullet.Position,10)
  1866. Bullet:remove()
  1867. end))
  1868. for i=0, 0.3, 0.1 / Animation_Speed do
  1869. Swait()
  1870. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(35)), 0.75 / Animation_Speed)
  1871. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 0.5 * SIN(SINE / 12)), RAD(15), RAD(-35)), 0.75 / Animation_Speed)
  1872. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0.3) * ANGLES(RAD(110), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1873. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1874. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(35)), 0.75 / Animation_Speed)
  1875. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.3 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(-25)), 0.75 / Animation_Speed)
  1876. end
  1877. ATTACK = false
  1878. Rooted = false
  1879. end
  1880.  
  1881.  
  1882.  
  1883.  
  1884. function Astral_Hop()
  1885. ATTACK = true
  1886. Rooted = false
  1887. local O1 = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Warphole", VT(0,0,0))
  1888. O1.CFrame = RootPart.CFrame*CF(0,0,-3)*ANGLES(RAD(90),RAD(0),RAD(0))
  1889. local decal = Decal:Clone()
  1890. decal.Parent = O1
  1891. decal.Face = "Top"
  1892. decal.Texture = "http://www.roblox.com/asset/?id=202696571"
  1893. local decal2 = Decal:Clone()
  1894. decal2.Parent = O1
  1895. decal2.Face = "Bottom"
  1896. decal2.Texture = "http://www.roblox.com/asset/?id=202696571"
  1897. local O2 = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Warphole", VT(0,0,0))
  1898. local POS = VT(RootPart.Position.X,Mouse.Hit.p.Y+6,RootPart.Position.Z)
  1899. O2.CFrame = CF(Mouse.Hit.p+VT(0,6,0),POS)*ANGLES(RAD(90),RAD(0),RAD(0))
  1900. local ROOT = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Warphole", VT(0,0,0))
  1901. ROOT.CFrame = CF(O2.Position,RootPart.Position)
  1902. local decal = Decal:Clone()
  1903. decal.Parent = O2
  1904. decal.Face = "Top"
  1905. decal.Texture = "http://www.roblox.com/asset/?id=202696571"
  1906. local decal2 = Decal:Clone()
  1907. decal2.Parent = O2
  1908. decal2.Face = "Bottom"
  1909. decal2.Texture = "http://www.roblox.com/asset/?id=202696571"
  1910. CreateSound("153613030", O1, 10, 0.7)
  1911. CreateSound("153613030", O2, 10, 0.7)
  1912. for i = 1, 75 do
  1913. Swait()
  1914. O1.Size = O1.Size + VT(0.1,0,0.1)
  1915. O1.CFrame = RootPart.CFrame*CF(0,0,-3)*ANGLES(RAD(90),RAD(i),RAD(0))
  1916. O2.Size = O2.Size + VT(0.1,0,0.1)
  1917. O2.CFrame = O2.CFrame*ANGLES(RAD(0),RAD(i),RAD(0))
  1918. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1919. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1920. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(90), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1921. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(90), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1922. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1923. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1924.  
  1925. end
  1926.  
  1927.  
  1928. Rooted = true
  1929. UNANCHOR = false
  1930. RootPart.Anchored = true
  1931. VALUE1 = true
  1932. for i = 1, 15 do
  1933. Swait()
  1934. RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.13)
  1935. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(16 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1936. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1937. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1938. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1939. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1940. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1941. end
  1942. RootPart.CFrame = ROOT.CFrame
  1943. ROOT:remove()
  1944. for i = 1, 15 do
  1945. Swait()
  1946. RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.5)
  1947. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(16 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1948. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1949. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1950. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1951. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1952. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1953. end
  1954. VALUE1 = false
  1955. coroutine.resume(coroutine.create(function()
  1956. for i = 1, 75 do
  1957. Swait()
  1958. O1.Size = O1.Size - VT(0.1,0,0.1)
  1959. O1.CFrame = O1.CFrame*ANGLES(RAD(0),RAD(i),RAD(0))
  1960. O2.Size = O2.Size - VT(0.1,0,0.1)
  1961. O2.CFrame = O2.CFrame*ANGLES(RAD(0),RAD(i),RAD(0))
  1962. end
  1963. O1:remove()
  1964. O2:remove()
  1965. end))
  1966. UNANCHOR = true
  1967. RootPart.Anchored = false
  1968. ATTACK = false
  1969. Rooted = false
  1970. end
  1971.  
  1972.  
  1973. function Technobeam()
  1974. ATTACK = true
  1975. Rooted = false
  1976. local GYRO = IT("BodyGyro",RootPart)
  1977. GYRO.D = 100
  1978. GYRO.P = 2000
  1979. GYRO.MaxTorque = VT(0,4000000,0)
  1980. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1981. CreateSound("93724183", RightArm, 5, 1, false)
  1982. for i=1, 35 do
  1983. Swait()
  1984. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0.25, CFrame = RightArm.CFrame*CF(0,-5,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  1985. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1986. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  1987. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  1988. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1989. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1990. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1991. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1992. end
  1993. local BEAM = CreatePart(3, Effects, "Neon", 0, 1, "Magenta", "Lazer", VT(0,0,0))
  1994. local LOOP = CreateSound("415700134", RightArm, 5, 1, false)
  1995. local TOCH = BEAM.Touched:Connect(function(hit)
  1996. if hit.Anchored == false and hit.Parent ~= Head and hit.Parent ~= Character and hit.Parent ~= Effects then
  1997. Shatter(hit)
  1998. end
  1999. end)
  2000. local I = 0
  2001. repeat
  2002. Swait()
  2003. I = I + 1
  2004. if I <= 10 then
  2005. BEAM.Transparency = BEAM.Transparency - 0.1
  2006. end
  2007. local STARTPOS = RightArm.CFrame*CF(0,-4,0).p
  2008. local ENDHIT,ENDPOS = CastProperRay(STARTPOS,Mouse.Hit.p,650,Character)
  2009. local DISTANCE = (STARTPOS - ENDPOS).Magnitude
  2010. BEAM.CFrame = CF(STARTPOS,ENDPOS)*CF(0,0,-DISTANCE/2)*ANGLES(RAD(0),RAD(0),RAD(I*5))
  2011. BEAM.Size = VT(2,2,DISTANCE)
  2012. WACKYEFFECT({Time = 5, EffectType = "Box", Size = VT(1,1,1), Size2 = VT(1,1,1), Transparency = 0, Transparency2 = 1, CFrame = CF(ENDPOS), MoveToPos = CF(ENDPOS)*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,15,0).p, RotationX = MRANDOM(-5,5), RotationY = MRANDOM(-5,5), RotationZ = MRANDOM(-5,5), Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2013. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.25, CFrame = RightArm.CFrame*CF(0,-4,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  2014. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.25, CFrame = CF(ENDPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  2015. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  2016. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  2017. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  2018. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2019. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2020. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2021. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2022. if ENDHIT ~= nil then
  2023. if ENDHIT.Anchored == false and ENDHIT.Parent ~= Effects then
  2024. Shatter(ENDHIT)
  2025. end
  2026. end
  2027. until LOOP.Playing == false
  2028. GYRO:remove()
  2029. BEAM:remove()
  2030. ATTACK = false
  2031. Rooted = false
  2032. end
  2033.  
  2034. function SpawnSmite(POS)
  2035. local HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, Character)
  2036. local EMITPOS = HITPOS
  2037. if HITFLOOR ~= nil then
  2038. if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
  2039. HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent)
  2040. EMITPOS = HITPOS
  2041. elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
  2042. HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent.Parent)
  2043. EMITPOS = HITPOS
  2044. end
  2045. end
  2046. if HITFLOOR ~= nil then
  2047. ApplyAoE(EMITPOS,10)
  2048. WACKYEFFECT({EffectType = "Sphere", Size = VT(0,100000,0), Size2 = VT(10,100000,10), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
  2049. WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*2, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  2050. WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*1.5, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  2051. for i = 1, 5 do
  2052. local TOPOS = CF(EMITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,12)
  2053. WACKYEFFECT({EffectType = "Slash", Size = VT(0,0,0), Size2 = VT(0.2,0,0.2), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS,TOPOS.p) * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = TOPOS.p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
  2054. end
  2055. end
  2056. end
  2057.  
  2058. function SpawnMeteor(POS,SIZE,ISDEBREE,ORIPOS)
  2059. coroutine.resume(coroutine.create(function()
  2060. local METEOR = IT("Model",Effects)
  2061. METEOR.Name = "Meteorite"
  2062. local CENTER = CreatePart(3, METEOR, "Granite", 0, 0, "Magenta", "MeteorCenter", VT(5,5,5)*SIZE)
  2063. METEOR.PrimaryPart = CENTER
  2064. local PRT = CreatePart(3, METEOR, "Granite", 0, 0, "Magenta", "MeteorCenter", VT(5,5,5)*SIZE)
  2065. PRT.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  2066. for i = 1, 15 do
  2067. local FIRE = CreatePart(3, METEOR, "Neon", 0, 0, "Magenta", "Fire", VT(5.1,1,5.1)*SIZE)
  2068. FIRE.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  2069. end
  2070. if ISDEBREE ~= true then
  2071. METEOR:SetPrimaryPartCFrame(CF(POS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15)))*CF(0,500,0) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
  2072. else
  2073. METEOR:SetPrimaryPartCFrame(CF(ORIPOS,POS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
  2074. end
  2075. local IMPACT = false
  2076. CreateSound(463593339, CENTER, 10, 0.6)
  2077. if SIZE >= 3.5 then
  2078. for i = 1, MRANDOM(3,7) do
  2079. SpawnMeteor(CF(POS) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,SIZE*12).p,SIZE/MRANDOM(4,5),true,CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SIZE*15).p)
  2080. end
  2081. end
  2082. for i = 1, 200 do
  2083. Swait()
  2084. local HITFLOOR,HITPOS = Raycast(CENTER.Position, CF(CENTER.Position,POS).lookVector, 3, Character)
  2085. if HITFLOOR == nil then
  2086. local ORI = CENTER.Orientation
  2087. METEOR:SetPrimaryPartCFrame(CF(HITPOS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
  2088. else
  2089. if HITFLOOR.Anchored == true then
  2090. CreateDebreeRing(HITFLOOR,HITPOS,30*SIZE,VT(6,6,6)*SIZE,5)
  2091. CreateFlyingDebree(HITFLOOR,CF(HITPOS),8,VT(6,6,6)*SIZE,5,175)
  2092. end
  2093. IMPACT = true
  2094. break
  2095. end
  2096. end
  2097. if IMPACT == true then
  2098. WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*4*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
  2099. WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*3*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 201858144, SoundPitch = 1, SoundVolume = 5})
  2100. WACKYEFFECT({EffectType = "Sphere", Size = VT(SIZE*20,0,SIZE*20), Size2 = VT(0,SIZE*750,0), Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
  2101. ApplyAoE(CENTER.Position,30*SIZE)
  2102. end
  2103. METEOR:remove()
  2104. end))
  2105. end
  2106.  
  2107. function Smite()
  2108. ATTACK = true
  2109. Rooted = false
  2110. CreateSound(1368573150, RightArm, 3, 1.5)
  2111. for i=0, 0.6, 0.1 / Animation_Speed do
  2112. Swait()
  2113. WACKYEFFECT({TIME = 15, EffectType = "Block", Size = VT(3,3,3)/3, Size2 = VT(1,1,1)/3, Transparency = 0.5, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.3,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  2114. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2115. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(125 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2.5 / Animation_Speed)
  2116. end
  2117. local POWER = 0
  2118. repeat
  2119. Swait()
  2120. WACKYEFFECT({EffectType = "Block", Size = VT(3,3,3)/3, Size2 = VT(1,1,1)/3, Transparency = 0.5, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.3,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  2121. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2122. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(125 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2.5 / Animation_Speed)
  2123. POWER = POWER + 0.5
  2124. if POWER >= 85 then
  2125. POWER = 85
  2126. end
  2127. until KEYHOLD == false
  2128. if POWER < 0.6 then
  2129. SpawnSmite(Mouse.Hit.p)
  2130. else
  2131. if POWER < 15 then
  2132. POWER = 15
  2133. end
  2134. SpawnMeteor(Mouse.Hit.p,POWER/15)
  2135. end
  2136. ATTACK = false
  2137. Rooted = false
  2138. end
  2139.  
  2140.  
  2141.  
  2142. function Corrupted_Explosion()
  2143. ATTACK = true
  2144. Rooted = true
  2145. for i=0, 1, 0.1 / Animation_Speed do
  2146. Swait()
  2147. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.3, 0) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.6 / Animation_Speed)
  2148. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.6 / Animation_Speed)
  2149. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(15)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  2150. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 0.1 / Animation_Speed)
  2151. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2152. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2153. end
  2154. for i=0, 0.4, 0.1 / Animation_Speed do
  2155. Swait()
  2156. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -1, -0.3) * ANGLES(RAD(75), RAD(0), RAD(75)), 1 / Animation_Speed)
  2157. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 1/ Animation_Speed)
  2158. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2159. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2160. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.01) * ANGLES(RAD(75), RAD(25), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
  2161. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  2162. end
  2163. local BEAM = CreatePart(3, Effects, "Neon", 0, 0, "Magenta", "Beam", VT(0,0,0))
  2164. local BEAM2 = CreatePart(3, Effects, "Neon", 0, 0, "Magenta", "Beam", VT(0,0,0))
  2165. MakeForm(BEAM,"Ball")
  2166. MakeForm(BEAM2,"Ball")
  2167. BEAM.CFrame = CF(RootPart.Position)
  2168. BEAM2.CFrame = CF(RootPart.Position)
  2169. CreateSound(EXPLOSIONSOUND,RootPart,10,1,false)
  2170. for i=1, 100 do
  2171. Swait()
  2172. BEAM.Size = BEAM.Size + VT(0.7,8,0.7)
  2173. BEAM2.Size = BEAM2.Size + VT(2,2,2)
  2174. ApplyAoE(BEAM2.Position,BEAM2.Size.Z/2,5,5,15,true)
  2175. BEAM.CFrame = CF(RootPart.Position)
  2176. BEAM2.CFrame = CF(RootPart.Position)
  2177. WACKYEFFECT({TIME = 5+i, EffectType = "Swirl", Size = BEAM2.Size*1.15, Size2 = VT(0,BEAM.Size.Y,0), Transparency = 0.8, Transparency2 = 1, CFrame = BEAM.CFrame * ANGLES(RAD(0), RAD(i*5), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i/8, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2178. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -1, -0.3) * ANGLES(RAD(75), RAD(0), RAD(75)), 1 / Animation_Speed)
  2179. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 1/ Animation_Speed)
  2180. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2181. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2182. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.01) * ANGLES(RAD(75), RAD(25), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
  2183. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  2184. end
  2185. WACKYEFFECT({TIME = 75, EffectType = "Sphere", Size = BEAM.Size, Size2 = VT(0,BEAM.Size.Y,0), Transparency = 0, Transparency2 = 0, CFrame = BEAM.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2186. WACKYEFFECT({TIME = 75, EffectType = "Sphere", Size = BEAM2.Size, Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.6, CFrame = BEAM2.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Magenta").Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2187. BEAM2:remove()
  2188. BEAM:remove()
  2189. ATTACK = false
  2190. Rooted = false
  2191. end
  2192.  
  2193.  
  2194.  
  2195. --//=================================\\
  2196. --|| ASSIGN THINGS TO KEYS
  2197. --\\=================================//
  2198.  
  2199. function MouseDown(Mouse)
  2200. if ATTACK == false then
  2201. end
  2202. end
  2203.  
  2204. function MouseUp(Mouse)
  2205. HOLD = false
  2206. end
  2207.  
  2208. function KeyDown(Key)
  2209. KEYHOLD = true
  2210. if Key == "z" and ATTACK == false then
  2211. Shell()
  2212. end
  2213.  
  2214. if Key == "q" and ATTACK == false then
  2215. Astral_Hop()
  2216. end
  2217.  
  2218. if Key == "e" and ATTACK == false then
  2219. Corrupted_Explosion()
  2220. end
  2221.  
  2222.  
  2223.  
  2224. if Key == "b" and ATTACK == false then
  2225. Technobeam()
  2226. end
  2227.  
  2228. if Key == "t" and ATTACK == false then
  2229. Taunt()
  2230. end
  2231.  
  2232.  
  2233.  
  2234. if Key == "c" and ATTACK == false then
  2235. Smite()
  2236. end
  2237.  
  2238.  
  2239. if Key == "x" and ATTACK == false then
  2240. SinfulShell()
  2241. end
  2242.  
  2243. if Key == "f" and ATTACK == false then
  2244. Prison_Key()
  2245. end
  2246.  
  2247. if Key == "g" and ATTACK == false then
  2248. Morning_Star()
  2249. end
  2250. end
  2251.  
  2252. function KeyUp(Key)
  2253. KEYHOLD = false
  2254. end
  2255.  
  2256. Mouse.Button1Down:connect(function(NEWKEY)
  2257. MouseDown(NEWKEY)
  2258. end)
  2259. Mouse.Button1Up:connect(function(NEWKEY)
  2260. MouseUp(NEWKEY)
  2261. end)
  2262. Mouse.KeyDown:connect(function(NEWKEY)
  2263. KeyDown(NEWKEY)
  2264. end)
  2265. Mouse.KeyUp:connect(function(NEWKEY)
  2266. KeyUp(NEWKEY)
  2267. end)
  2268.  
  2269. --//=================================\\
  2270. --\\=================================//
  2271.  
  2272.  
  2273. function unanchor()
  2274. if UNANCHOR == true then
  2275. g = Character:GetChildren()
  2276. for i = 1, #g do
  2277. if g[i].ClassName == "Part" then
  2278. g[i].Anchored = false
  2279. end
  2280. end
  2281. end
  2282. end
  2283.  
  2284.  
  2285. --//=================================\\
  2286. --|| WRAP THE WHOLE SCRIPT UP
  2287. --\\=================================//
  2288.  
  2289. Humanoid.Changed:connect(function(Jump)
  2290. if Jump == "Jump" and (Disable_Jump == true) then
  2291. Humanoid.Jump = false
  2292. end
  2293. end)
  2294.  
  2295. local BLINKLOOP = 0
  2296.  
  2297. while true do
  2298. Swait()
  2299. script.Parent = WEAPONGUI
  2300. ANIMATE.Parent = nil
  2301. for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  2302. v:Stop();
  2303. end
  2304. Humanoid.JumpPower = 75
  2305. SINE = SINE + CHANGE
  2306. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  2307. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  2308. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  2309. local WALKSPEEDVALUE = 4 / (Humanoid.WalkSpeed / 16)
  2310. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  2311. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  2312. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  2313. RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.825 - 0.175 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.1- 0.5 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  2314. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.825 + 0.175 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.1+ 0.5 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  2315. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  2316. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2317. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2318. RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2319. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2320. end
  2321. if HITFLOOR == nil then
  2322. ANIM = "Midair"
  2323. local JUMPHIT = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 5, Character)
  2324. if JUMPHIT ~= nil and TORSOVERTICALVELOCITY < 0 then
  2325. if JUMPHIT.Name == "Head" and JUMPHIT:FindFirstChild("Stomped") == nil then
  2326. local HIT = IT("Folder",JUMPHIT)
  2327. HIT.Name = "Stomped"
  2328. CreateSound(165013277, JUMPHIT, 10, 1, false)
  2329. RootPart.Velocity = VT(0,80,0)
  2330. GoombaStomp(JUMPHIT.Parent)
  2331. elseif JUMPHIT.Parent.ClassName == "Accessory" then
  2332. local HEAD = JUMPHIT.Parent.Parent:FindFirstChild("Head")
  2333. if HEAD then
  2334. if HEAD:FindFirstChild("Stomped") == nil then
  2335. local HIT = IT("Folder",HEAD)
  2336. HIT.Name = "Stomped"
  2337. CreateSound(165013277, HEAD, 10, 1, false)
  2338. RootPart.Velocity = VT(0,80,0)
  2339. GoombaStomp(HEAD.Parent)
  2340. end
  2341. end
  2342. end
  2343. end
  2344. local JUMPHIT = Raycast(RootPart.CFrame*CF(1,0,0).p, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 5, Character)
  2345. if JUMPHIT ~= nil and TORSOVERTICALVELOCITY < 0 then
  2346. if JUMPHIT.Name == "Head" and JUMPHIT:FindFirstChild("Stomped") == nil then
  2347. local HIT = IT("Folder",JUMPHIT)
  2348. HIT.Name = "Stomped"
  2349. CreateSound(165013277, JUMPHIT, 10, 1, false)
  2350. RootPart.Velocity = VT(0,80,0)
  2351. GoombaStomp(JUMPHIT.Parent)
  2352. elseif JUMPHIT.Parent.ClassName == "Accessory" then
  2353. local HEAD = JUMPHIT.Parent.Parent:FindFirstChild("Head")
  2354. if HEAD then
  2355. if HEAD:FindFirstChild("Stomped") == nil then
  2356. local HIT = IT("Folder",HEAD)
  2357. HIT.Name = "Stomped"
  2358. CreateSound(165013277, HEAD, 10, 1, false)
  2359. RootPart.Velocity = VT(0,80,0)
  2360. GoombaStomp(HEAD.Parent)
  2361. end
  2362. end
  2363. end
  2364. end
  2365. local JUMPHIT = Raycast(RootPart.CFrame*CF(-1,0,0).p, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 5, Character)
  2366. if JUMPHIT ~= nil and TORSOVERTICALVELOCITY < 0 then
  2367. if JUMPHIT.Name == "Head" and JUMPHIT:FindFirstChild("Stomped") == nil then
  2368. local HIT = IT("Folder",JUMPHIT)
  2369. HIT.Name = "Stomped"
  2370. CreateSound(165013277, JUMPHIT, 10, 1, false)
  2371. RootPart.Velocity = VT(0,80,0)
  2372. GoombaStomp(JUMPHIT.Parent)
  2373. elseif JUMPHIT.Parent.ClassName == "Accessory" then
  2374. local HEAD = JUMPHIT.Parent.Parent:FindFirstChild("Head")
  2375. if HEAD then
  2376. if HEAD:FindFirstChild("Stomped") == nil then
  2377. local HIT = IT("Folder",HEAD)
  2378. HIT.Name = "Stomped"
  2379. CreateSound(165013277, HEAD, 10, 1, false)
  2380. RootPart.Velocity = VT(0,80,0)
  2381. GoombaStomp(HEAD.Parent)
  2382. end
  2383. end
  2384. end
  2385. end
  2386. if ATTACK == false then
  2387. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0+sick.PlaybackLoudness/800) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
  2388. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 2 / Animation_Speed)
  2389. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75, -0.2) * ANGLES(RAD(150), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2390. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2391. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4-sick.PlaybackLoudness/800, -0.7) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
  2392. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, -0.3) * ANGLES(RAD(-25), RAD(-80), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 2 / Animation_Speed)
  2393. end
  2394. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  2395. ANIM = "Idle"
  2396. JUMPED = false
  2397. if ATTACK == false then
  2398. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0+sick.PlaybackLoudness/800) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2399. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(0), RAD(7.5-30*SIN(sick.PlaybackLoudness/300)), RAD(0 - 25 * SIN(SINE / 15))), 1 / Animation_Speed)
  2400. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5+sick.PlaybackLoudness/1200, 0) * ANGLES(RAD(0), RAD(-15), RAD(-2+sick.PlaybackLoudness/45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2401. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.3) * ANGLES(RAD(0), RAD(55), RAD(-12)) * ANGLES(RAD(-45), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2402. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2403. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2404. end
  2405. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  2406. ANIM = "Walk"
  2407. JUMPED = false
  2408. if ATTACK == false then
  2409. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1+sick.PlaybackLoudness/800) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
  2410. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(5 - 2 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(7.5-30*SIN(sick.PlaybackLoudness/300)), RAD(0)), 1 / Animation_Speed)
  2411. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5+sick.PlaybackLoudness/1200, 0) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.35 / Animation_Speed)
  2412. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.3) * ANGLES(RAD(0), RAD(55), RAD(-12)) * ANGLES(RAD(-45), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2413. RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1-sick.PlaybackLoudness/800, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-3)), 2 / Animation_Speed)
  2414. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(3)), 2 / Animation_Speed)
  2415. end
  2416. end
  2417.  
  2418. unanchor()
  2419. Humanoid.MaxHealth = "inf"
  2420. Humanoid.Health = "inf"
  2421. if Rooted == false then
  2422. Disable_Jump = false
  2423. Humanoid.WalkSpeed = Speed
  2424. elseif Rooted == true then
  2425. Disable_Jump = true
  2426. Humanoid.WalkSpeed = 0
  2427. end
  2428. sick.SoundId = "rbxassetid://591604546"
  2429. sick.Looped = true
  2430. sick.Pitch = 1
  2431. sick.Volume = 10
  2432. sick.Playing = true
  2433. sick.Parent = Torso
  2434. if Head:FindFirstChild("face") then
  2435. Head.face.Texture = "rbxassetid://142478285"
  2436. end
  2437. BLINKLOOP = BLINKLOOP + 1
  2438. if BLINKLOOP >=650 then
  2439. BLINKLOOP = 0
  2440. Blink()
  2441. end
  2442. if #GHOSTS>0 then
  2443. for e=1,#GHOSTS do
  2444. if GHOSTS[e]~=nil then
  2445. local Thing=GHOSTS[e]
  2446. if Thing~=nil then
  2447. if Thing:FindFirstChild("Head") then
  2448. if Thing:FindFirstChild("Head"):FindFirstChild("face") then
  2449. Thing:FindFirstChild("Head").face.Texture = "rbxassetid://127959433"
  2450. end
  2451. if Thing:FindFirstChild("Head"):FindFirstChildOfClass("Sound") then
  2452. Thing:FindFirstChild("Head"):FindFirstChildOfClass("Sound"):remove()
  2453. end
  2454. end
  2455. local TORSO = Thing:FindFirstChild("Torso")
  2456. if TORSO then
  2457. TORSO.Anchored = false
  2458. local ROOT = Thing.HumanoidRootPart
  2459. local RootJoint1 = ROOT:FindFirstChild("RootJoint")
  2460. local Neck1 = TORSO:FindFirstChild("Neck")
  2461. local RightShoulder1 = TORSO:FindFirstChild("Right Shoulder")
  2462. local LeftShoulder1 = TORSO:FindFirstChild("Left Shoulder")
  2463. local RightHip1 = TORSO:FindFirstChild("Right Hip")
  2464. local LeftHip1 = TORSO:FindFirstChild("Left Hip")
  2465. if ROOT and RootJoint1 then
  2466. local VELOCITY = (ROOT.Velocity * VT(1, 0, 1)).magnitude
  2467. if VELOCITY < 1 then
  2468. RootJoint1.C0 = ROOTC0 * CF(0, 0, 0 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(2.5 * SIN(SINE / 12)))
  2469. Neck1.C0 = NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD( - 2.5 * SIN(SINE / 12)))
  2470. RightShoulder1.C0 = CF(1.5, 0.5 + 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 1.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0
  2471. LeftShoulder1.C0 = CF(-1.5, 0.5 + 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 1.5 * SIN(SINE / 12))) * LEFTSHOULDERC0
  2472. RightHip1.C0 = CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0))
  2473. LeftHip1.C0 = CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0))
  2474. elseif VELOCITY > 1 then
  2475. RootJoint1.C0 = ROOTC0 * CF(0, 0, 0 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(2.5 * SIN(SINE / 12)))
  2476. Neck1.C0 = NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD( - 2.5 * SIN(SINE / 12)))
  2477. RightShoulder1.C0 = CF(1.5, 0.5 + 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(15 + 1.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0
  2478. LeftShoulder1.C0 = CF(-1.5, 0.5 + 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 1.5 * SIN(SINE / 12))) * LEFTSHOULDERC0
  2479. RightHip1.C0 = CF(1, -1, -0.01) * ANGLES(RAD(-25-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 12)), RAD(0), RAD(0))
  2480. LeftHip1.C0 = CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0))
  2481. end
  2482. end
  2483. local Human = Thing.Humanoid
  2484. if Human then
  2485. Human.HipHeight = 0.3
  2486. for _, c in pairs(Thing:GetChildren()) do
  2487. if c.ClassName == "Part" and c.Transparency < 1 then
  2488. c.Color = C3(0,0,0)
  2489. c.Transparency = 0.65 + 0.15 * COS(SINE / 25)
  2490. elseif c.ClassName == "Accessory" or c.ClassName == "Hat" or c.ClassName == "CharacterMesh" or c.ClassName == "Shirt" or c.ClassName == "Pants" then
  2491. c:remove()
  2492. end
  2493. end
  2494. if Human then
  2495. local IDLEANIMATION = Human:LoadAnimation(ROBLOXIDLEANIMATION)
  2496. IDLEANIMATION:Play()
  2497. end
  2498. local list = game.Workspace:children()
  2499. local torso = nil
  2500. local dist = 50
  2501. local temp = nil
  2502. local human = nil
  2503. local temp2 = nil
  2504. local OwnerInDanger = false
  2505. for x = 1, #list do
  2506. temp2 = list[x]
  2507. if (temp2.className == "Model") and (temp2 ~= Character) and (temp2 ~= Thing) then
  2508. temp = temp2:findFirstChild("Torso") or temp2:findFirstChild("UpperTorso")
  2509. human = temp2:findFirstChildOfClass("Humanoid")
  2510. if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
  2511. if (temp.Position - Torso.Position).magnitude < 15 then
  2512. OwnerInDanger = true
  2513. newdist = (temp.Position - TORSO.Position).magnitude
  2514. dist = (Torso.Position - temp.Position).magnitude
  2515. Human:MoveTo(temp.Position)
  2516. torso = temp
  2517. if newdist < 7 then
  2518. torso.CFrame = CF(torso.Position,TORSO.Position)*CF(0,0,5)
  2519. CreateSound(814168787, temp, 1, 2, false)
  2520. ApplyDamage(human,MRANDOM(15,35),temp)
  2521. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(1,1,1), Size2 = VT(3,1,3), Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position,torso.Position)*CF(0,0,-2) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  2522. WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(1,1,1), Size2 = VT(3,1,3), Transparency = 0, Transparency2 = 1, CFrame = torso.CFrame*CF(0,-4*torso.Size.Y/2,0), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  2523. end
  2524. end
  2525. end
  2526. end
  2527. end
  2528. if OwnerInDanger == false then
  2529. for x = 1, #list do
  2530. temp2 = list[x]
  2531. if (temp2.className == "Model") and (temp2 ~= Character) and (temp2 ~= Thing) then
  2532. temp = temp2:findFirstChild("Torso") or temp2:findFirstChild("UpperTorso")
  2533. human = temp2:findFirstChildOfClass("Humanoid")
  2534. if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
  2535. if (temp.Position - Torso.Position).magnitude < dist then
  2536. newdist = (temp.Position - TORSO.Position).magnitude
  2537. Human:MoveTo(temp.Position)
  2538. torso = temp
  2539. if newdist < 15 then
  2540. if MRANDOM(1,35) == 1 then
  2541. CreateSound(438665935, temp, 1, 3, false)
  2542. ApplyDamage(human,MRANDOM(2,20),temp)
  2543. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(1,1,1), Size2 = VT(3,1,3), Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position,torso.Position)*CF(0,0,-2) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  2544. end
  2545. end
  2546. end
  2547. end
  2548. end
  2549. end
  2550. end
  2551. if torso == nil then
  2552. Human.WalkSpeed = Speed -0.2
  2553. if (Torso.Position - TORSO.Position).magnitude < 12 and (Torso.Position - TORSO.Position).magnitude >= 11 then
  2554. Human:MoveTo(TORSO.Position)
  2555. elseif (Torso.Position - TORSO.Position).magnitude > 15 then
  2556. Human:MoveTo(Torso.Position)
  2557. elseif (Torso.Position - TORSO.Position).magnitude < 11 then
  2558. Human:MoveTo(CF(Torso.Position,TORSO.Position)*CF(0,0,-5).p)
  2559. end
  2560. else
  2561. if OwnerInDanger == false then
  2562. Human.WalkSpeed = Speed*1.2
  2563. else
  2564. Human.WalkSpeed = Speed*5
  2565. end
  2566. end
  2567. if Human.Health == 0 then
  2568. Thing:remove()
  2569. table.remove(GHOSTS,e)
  2570. else
  2571. Human.Health = Human.Health + 0.5
  2572. end
  2573. else
  2574. Thing:remove()
  2575. table.remove(GHOSTS,e)
  2576. end
  2577. else
  2578. Thing:remove()
  2579. table.remove(GHOSTS,e)
  2580. end
  2581. end
  2582. end
  2583. end
  2584. end
  2585. refit()
  2586. end
  2587.  
  2588. --//=================================\\
  2589. --\\=================================//
  2590.  
  2591.  
  2592.  
  2593.  
  2594.  
  2595. --//====================================================\\--
  2596. --|| END OF THE SCRIPT
  2597. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement