Advertisement
idkwhatiam

TP

Jun 3rd, 2019
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 19.99 KB | None | 0 0
  1. if game:GetService("RunService"):IsClient()then error("Please run as a server script. Use h/ instead of hl/.")end;print("FE Compatibility: by WaverlyCole");InternalData = {}
  2. do
  3.     script.Parent = owner.Character
  4.     local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
  5.     local function NewFakeEvent()
  6.         local Bind = Instance.new("BindableEvent")
  7.         local Fake;Fake = {Connections = {},
  8.         fakeEvent=true;
  9.         Connect=function(self,Func)
  10.             Bind.Event:connect(Func)
  11.             self.Connections[Bind] = true
  12.             return setmetatable({Connected = true},{
  13.             __index = function (self,Index)
  14.                 if Index:lower() == "disconnect" then
  15.                     return function() Fake.Connections[Bind] = false;self.Connected = false end
  16.                 end
  17.                 return Fake[Index]
  18.             end;
  19.             __tostring = function() return "Connection" end;
  20.         })
  21.         end}
  22.         Fake.connect = Fake.Connect;return Fake;
  23.     end
  24.     local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
  25.     local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
  26.     local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
  27.         self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
  28.     end};ContextActionService.UnBindAction = ContextActionService.BindAction
  29.     local function TriggerEvent(self,Event,...)
  30.         local Trigger = Mouse[Event]
  31.         if Trigger and Trigger.fakeEvent and Trigger.Connections then
  32.             for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
  33.         end
  34.     end
  35.     Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
  36.     Event.OnServerEvent:Connect(function(FiredBy,Input)
  37.         if FiredBy.Name ~= owner.Name then return end
  38.         if Input.MouseEvent then
  39.             Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
  40.         else
  41.             local Begin = Input.UserInputState == Enum.UserInputState.Begin
  42.             if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
  43.             for _,Action in pairs(ContextActionService.Actions) do
  44.                 for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
  45.             end
  46.             Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
  47.             UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
  48.         end
  49.     end)
  50.     InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
  51.     Event.Parent = NLS([[
  52.         local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
  53.         local Input = function(Input,gameProcessedEvent)
  54.             if gameProcessedEvent then return end
  55.             Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
  56.         end
  57.         UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
  58.         local Hit,Target
  59.         while wait(1/30) do
  60.             if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
  61.                 Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
  62.             end
  63.         end
  64.     ]],owner.Character)
  65. end
  66. RealGame = game;game = setmetatable({},{
  67.     __index = function (self,Index)
  68.         local Sandbox = function (Thing)
  69.             if Thing:IsA("Player") then
  70.                 local RealPlayer = Thing
  71.                 return setmetatable({},{
  72.                     __index = function (self,Index)
  73.                         local Type = type(RealPlayer[Index])
  74.                         if Type == "function" then
  75.                             if Index:lower() == "getmouse" or Index:lower() == "mouse" then
  76.                                 return function (self)return InternalData["Mouse"] end
  77.                             end
  78.                             return function (self,...)return RealPlayer[Index](RealPlayer,...) end
  79.                         end
  80.                         return RealPlayer[Index]
  81.                     end;
  82.                     __tostring = function(self) return RealPlayer.Name end
  83.                 })
  84.             end
  85.         end
  86.         if RealGame[Index] then
  87.             local Type = type(RealGame[Index])
  88.             if Type == "function" then
  89.                 if Index:lower() == "getservice" or Index:lower() == "service" then
  90.                     return function (self,Service)
  91.                         local FakeServices = {
  92.                             ["players"] = function()
  93.                                 return setmetatable({},{
  94.                                     __index = function (self2,Index2)
  95.                                         local RealService = RealGame:GetService(Service)
  96.                                         local Type2 = type(Index2)
  97.                                         if Type2 == "function" then
  98.                                             return function (self,...) return RealService[Index2](RealService,...)end
  99.                                         else
  100.                                             if Index2:lower() == "localplayer" then return Sandbox(owner) end
  101.                                             return RealService[Index2]
  102.                                         end
  103.                                     end;
  104.                                     __tostring = function(self) return RealGame:GetService(Service).Name end
  105.                                 })
  106.                             end;
  107.                             ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
  108.                             ["userinputservice"] = function() return InternalData["UserInputService"] end;
  109.                             ["runservice"] = function()
  110.                                 return setmetatable({},{
  111.                                     __index = function(self2,Index2)
  112.                                         local RealService = RealGame:GetService(Service)
  113.                                         local Type2 = type(Index2)
  114.                                         if Type2 == "function" then
  115.                                             return function (self,...) return RealService[Index2](RealService,...) end
  116.                                         else
  117.                                             local RunServices = {
  118.                                                 ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
  119.                                                 ["renderstepped"] = function() return RealService["Stepped"] end
  120.                                             }
  121.                                             if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
  122.                                             return RealService[Index2]
  123.                                         end
  124.                                     end
  125.                                 })
  126.                             end
  127.                         }
  128.                         if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
  129.                         return RealGame:GetService(Service)
  130.                     end
  131.                 end
  132.                 return function (self,...) return RealGame[Index](RealGame,...) end
  133.             else
  134.                 if game:GetService(Index) then return game:GetService(Index) end
  135.                 return RealGame[Index]
  136.             end
  137.         end
  138.         return nil
  139.     end
  140.         });Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete! Running...")
  141.  
  142. char = owner.Character
  143. plr = owner
  144. mouse = plr:GetMouse()
  145. stuff = char["Left Leg"]
  146. Torso = char.Torso
  147. IT = Instance.new
  148. local Weapon = IT("Model")
  149. Weapon.Name = "Adds"
  150. local Effects = IT("Folder", Weapon)
  151. Effects.Name = "Effects"
  152.  
  153.  
  154. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  155.     local NEWMESH = IT(MESH)
  156.     if MESH == "SpecialMesh" then
  157.         NEWMESH.MeshType = MESHTYPE
  158.         if MESHID ~= "nil" and MESHID ~= "" then
  159.             NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  160.         end
  161.         if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  162.             NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  163.         end
  164.     end
  165.     NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  166.     NEWMESH.Scale = SCALE
  167.     NEWMESH.Parent = PARENT
  168.     return NEWMESH
  169. end
  170.  
  171. local S = IT("Sound")
  172. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  173.     local NEWSOUND = nil
  174.     coroutine.resume(coroutine.create(function()
  175.         NEWSOUND = S:Clone()
  176.         NEWSOUND.Parent = PARENT
  177.         NEWSOUND.Volume = VOLUME
  178.         NEWSOUND.Pitch = PITCH
  179.         NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  180.         NEWSOUND:play()
  181.         if DOESLOOP == true then
  182.             NEWSOUND.Looped = true
  183.         else
  184.             repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
  185.             NEWSOUND:remove()
  186.         end
  187.     end))
  188.     return NEWSOUND
  189. end
  190.  
  191. --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(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  192. function WACKYEFFECT(Table)
  193.     local TYPE = (Table.EffectType or "Sphere")
  194.     local SIZE = (Table.Size or VT(1,1,1))
  195.     local ENDSIZE = (Table.Size2 or VT(0,0,0))
  196.     local TRANSPARENCY = (Table.Transparency or 0)
  197.     local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  198.     local CFRAME = (Table.CFrame or char.Torso.CFrame)
  199.     local MOVEDIRECTION = (Table.MoveToPos or nil)
  200.     local ROTATION1 = (Table.RotationX or 0)
  201.     local ROTATION2 = (Table.RotationY or 0)
  202.     local ROTATION3 = (Table.RotationZ or 0)
  203.     local MATERIAL = (Table.Material or "Neon")
  204.     local COLOR = (Table.Color or C3(1,1,1))
  205.     local TIME = (Table.Time or 45)
  206.     local SOUNDID = (Table.SoundID or nil)
  207.     local SOUNDPITCH = (Table.SoundPitch or nil)
  208.     local SOUNDVOLUME = (Table.SoundVolume or nil)
  209.     coroutine.resume(coroutine.create(function()
  210.         local PLAYSSOUND = false
  211.         local SOUND = nil
  212.         local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  213.         if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  214.             PLAYSSOUND = true
  215.             SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  216.         end
  217.         EFFECT.Color = COLOR
  218.         local MSH = nil
  219.         if TYPE == "Sphere" then
  220.             MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  221.         elseif TYPE == "Block" then
  222.             MSH = IT("BlockMesh",EFFECT)
  223.             MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  224.         elseif TYPE == "Wave" then
  225.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  226.         elseif TYPE == "Ring" then
  227.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  228.         elseif TYPE == "Slash" then
  229.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  230.         elseif TYPE == "Round Slash" then
  231.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  232.         elseif TYPE == "Swirl" then
  233.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  234.         elseif TYPE == "Skull" then
  235.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  236.         elseif TYPE == "Crystal" then
  237.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  238.         end
  239.         if MSH ~= nil then
  240.             local MOVESPEED = nil
  241.             if MOVEDIRECTION ~= nil then
  242.                 MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  243.             end
  244.             local GROWTH = SIZE - ENDSIZE
  245.             local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  246.             if TYPE == "Block" then
  247.                 EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  248.             else
  249.                 EFFECT.CFrame = CFRAME
  250.             end
  251.             for LOOP = 1, TIME+1 do
  252.                 Swait()
  253.                 MSH.Scale = MSH.Scale - GROWTH/TIME
  254.                 if TYPE == "Wave" then
  255.                     MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  256.                 end
  257.                 EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  258.                 if TYPE == "Block" then
  259.                     EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  260.                 else
  261.                     EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  262.                 end
  263.                 if MOVEDIRECTION ~= nil then
  264.                     local ORI = EFFECT.Orientation
  265.                     EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  266.                     EFFECT.Orientation = ORI
  267.                 end
  268.             end
  269.             if PLAYSSOUND == false then
  270.                 EFFECT:remove()
  271.             else
  272.                 SOUND.Stopped:Connect(function()
  273.                     EFFECT:remove()
  274.                 end)
  275.             end
  276.         else
  277.             if PLAYSSOUND == false then
  278.                 EFFECT:remove()
  279.             else
  280.                 repeat Swait() until SOUND.Playing == false
  281.                 EFFECT:remove()
  282.             end
  283.         end
  284.     end))
  285. end
  286.  
  287. function Swait(NUMBER)
  288.     if NUMBER == 0 or NUMBER == nil then
  289.         ArtificialHB.Event:wait()
  290.     else
  291.         for i = 1, NUMBER do
  292.             ArtificialHB.Event:wait()
  293.         end
  294.     end
  295. end
  296.  
  297.  
  298. ArtificialHB = Instance.new("BindableEvent", script)
  299. ArtificialHB.Name = "ArtificialHB"
  300.  
  301. script:WaitForChild("ArtificialHB")
  302.  
  303. frame = Frame_Speed
  304. tf = 0
  305. allowframeloss = false
  306. tossremainder = false
  307. lastframe = tick()
  308. script.ArtificialHB:Fire()
  309.  
  310. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  311.  
  312. IT = Instance.new
  313. CF = CFrame.new
  314. cf = CFrame.new
  315. VT = Vector3.new
  316. RAD = math.rad
  317. C3 = Color3.new
  318. UD2 = UDim2.new
  319. BRICKC = BrickColor.new
  320. ANGLES = CFrame.Angles
  321. angles = CFrame.Angles
  322. EULER = CFrame.fromEulerAnglesXYZ
  323. COS = math.cos
  324. ACOS = math.acos
  325. SIN = math.sin
  326. ASIN = math.asin
  327. ABS = math.abs
  328. MRANDOM = math.random
  329. FLOOR = math.floor
  330.  
  331. function CreateWave(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  332.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  333.     local mesh = IT("SpecialMesh",wave)
  334.     mesh.MeshType = "FileMesh"
  335.     mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  336.     mesh.Scale = SIZE
  337.     mesh.Offset = VT(0,0,-SIZE.X/8)
  338.     wave.CFrame = CFRAME
  339.     coroutine.resume(coroutine.create(function(PART)
  340.         for i = 1, WAIT do
  341.             Swait()
  342.             mesh.Scale = mesh.Scale + GROW
  343.             mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  344.             if DOESROT == true then
  345.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  346.             end
  347.             wave.Transparency = wave.Transparency + (0.5/WAIT)
  348.             if wave.Transparency > 0.99 then
  349.                 wave:remove()
  350.             end
  351.         end
  352.     end))
  353. end
  354.  
  355. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  356.     local NEWPART = IT("Part")
  357.     NEWPART.formFactor = FORMFACTOR
  358.     NEWPART.Reflectance = REFLECTANCE
  359.     NEWPART.Transparency = TRANSPARENCY
  360.     NEWPART.CanCollide = false
  361.     NEWPART.Locked = true
  362.     NEWPART.Anchored = true
  363.     if ANCHOR == false then
  364.         NEWPART.Anchored = false
  365.     end
  366.     NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  367.     NEWPART.Name = NAME
  368.     NEWPART.Size = SIZE
  369.     NEWPART.Position = char.Torso.Position
  370.     NEWPART.Material = MATERIAL
  371.     NEWPART:BreakJoints()
  372.     NEWPART.Parent = PARENT
  373.     return NEWPART
  374. end
  375.  
  376.         function WACKYEFFECT1(Table)
  377.     local TYPE = (Table.EffectType or "Sphere")
  378.     local SIZE = (Table.Size or VT(1,1,1))
  379.     local ENDSIZE = (Table.Size2 or VT(0,0,0))
  380.     local TRANSPARENCY = (Table.Transparency or 0)
  381.     local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  382.     local CFRAME = (Table.CFrame or Torso.CFrame)
  383.     local MOVEDIRECTION = (Table.MoveToPos or nil)
  384.     local ROTATION1 = (Table.RotationX or 0)
  385.     local ROTATION2 = (Table.RotationY or 0)
  386.     local ROTATION3 = (Table.RotationZ or 0)
  387.     local MATERIAL = (Table.Material or "Neon")
  388.     local COLOR = (Table.Color or C3(1,1,1))
  389.     local TIME = (Table.Time or 45)
  390.     local SOUNDID = (Table.SoundID or nil)
  391.     local SOUNDPITCH = (Table.SoundPitch or nil)
  392.     local SOUNDVOLUME = (Table.SoundVolume or nil)
  393.     local USEBOOMERANGMATH = (Table.UseBoomerangMath or false)
  394.     local BOOMERANG = (Table.Boomerang or 0)
  395.     local SIZEBOOMERANG = (Table.SizeBoomerang or 0)
  396.     coroutine.resume(coroutine.create(function()
  397.         local PLAYSSOUND = false
  398.         local SOUND = nil
  399.         local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  400.         if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  401.             PLAYSSOUND = true
  402.             SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  403.         end
  404.         EFFECT.Color = COLOR
  405.         local MSH = nil
  406.         if TYPE == "Sphere" then
  407.             MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  408.         elseif TYPE == "Block" or TYPE == "Box" then
  409.             MSH = IT("BlockMesh",EFFECT)
  410.             MSH.Scale = SIZE
  411.         elseif TYPE == "Wave" then
  412.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  413.         elseif TYPE == "Ring" then
  414.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  415.         elseif TYPE == "Slash" then
  416.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  417.         elseif TYPE == "Round Slash" then
  418.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  419.         elseif TYPE == "Swirl" then
  420.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "168892432", "", SIZE, VT(0,0,0))
  421.         elseif TYPE == "Skull" then
  422.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  423.         elseif TYPE == "Crystal" then
  424.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  425.         end
  426.         if MSH ~= nil then
  427.             local BOOMR1 = 1+BOOMERANG/50
  428.             local BOOMR2 = 1+SIZEBOOMERANG/50
  429.             local MOVESPEED = nil
  430.             if MOVEDIRECTION ~= nil then
  431.                 if USEBOOMERANGMATH == true then
  432.                     MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)*BOOMR1
  433.                 else
  434.                     MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)
  435.                 end
  436.             end
  437.             local GROWTH = nil
  438.             if USEBOOMERANGMATH == true then
  439.                 GROWTH = (SIZE - ENDSIZE)*(BOOMR2+1)
  440.             else
  441.                 GROWTH = (SIZE - ENDSIZE)
  442.             end
  443.             local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  444.             if TYPE == "Block" then
  445.                 EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  446.             else
  447.                 EFFECT.CFrame = CFRAME
  448.             end
  449.             if USEBOOMERANGMATH == true then
  450.                 for LOOP = 1, TIME+1 do
  451.                     Swait()
  452.                     MSH.Scale = MSH.Scale - (VT((GROWTH.X)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Y)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Z)*((1 - (LOOP/TIME)*BOOMR2)))*BOOMR2)/TIME
  453.                     if TYPE == "Wave" then
  454.                         MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  455.                     end
  456.                     EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  457.                     if TYPE == "Block" then
  458.                         EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  459.                     else
  460.                         EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  461.                     end
  462.                     if MOVEDIRECTION ~= nil then
  463.                         local ORI = EFFECT.Orientation
  464.                         EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-(MOVESPEED)*((1 - (LOOP/TIME)*BOOMR1)))
  465.                         EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  466.                     end
  467.                 end
  468.             else
  469.                 for LOOP = 1, TIME+1 do
  470.                     Swait()
  471.                     MSH.Scale = MSH.Scale - GROWTH/TIME
  472.                     if TYPE == "Wave" then
  473.                         MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  474.                     end
  475.                     EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  476.                     if TYPE == "Block" then
  477.                         EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  478.                     else
  479.                         EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  480.                     end
  481.                     if MOVEDIRECTION ~= nil then
  482.                         local ORI = EFFECT.Orientation
  483.                         EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  484.                         EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  485.                     end
  486.                 end
  487.             end
  488.             EFFECT.Transparency = 1
  489.             if PLAYSSOUND == false then
  490.                 EFFECT:remove()
  491.             else
  492.                 repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  493.                 EFFECT:remove()
  494.             end
  495.         else
  496.             if PLAYSSOUND == false then
  497.                 EFFECT:remove()
  498.             else
  499.                 repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  500.                 EFFECT:remove()
  501.             end
  502.         end
  503.     end))
  504. end
  505.  
  506. mouse.Button1Down:connect(function()
  507.     local e = mouse.Hit
  508.     stuff.CFrame = mouse.Hit
  509.     local fx = Instance.new("Part",Torso)
  510.     fx.Shape = "Ball"
  511.     fx.Position = fx.Parent.Position
  512.     fx.Size = VT(3, 3, 3)
  513.     fx.Anchored = true
  514.     fx.Material = "Neon"
  515.     fx.BrickColor = BrickColor.new("Royal purple")
  516.     fx.Transparency = 0.7
  517.     fx.CanCollide = false
  518.     wait(0.0000001)
  519.     fx.Size = fx.Size + VT(0.5, 0.5, 0.5)
  520.     fx.Transparency = fx.Transparency - 0.1
  521.     wait(0.0000001)
  522.     fx.Size = fx.Size + VT(0.5, 0.5, 0.5)
  523.     fx.Transparency = fx.Transparency - 0.1
  524.     wait(0.0000001)
  525.     fx.Size = fx.Size + VT(0.5, 0.5, 0.5)
  526.     fx.Transparency = fx.Transparency - 0.1
  527.     wait(0.0000001)
  528.     fx.Size = fx.Size + VT(0.5, 0.5, 0.5)
  529.     fx.Transparency = fx.Transparency + 0.1
  530.     wait(0.0000001)
  531.     fx.Size = fx.Size + VT(0.5, 0.5, 0.5)
  532.     fx.Transparency = fx.Transparency + 0.1
  533.     wait(0.0000001)
  534.     fx.Size = fx.Size + VT(0.5, 0.5, 0.5)
  535.     fx.Transparency = fx.Transparency + 0.1
  536.     wait(0.0000001)
  537.     fx.Size = fx.Size + VT(0.5, 0.5, 0.5)
  538.     fx.Transparency = fx.Transparency + 0.1
  539.     wait(0.0000001)
  540.     fx.Size = fx.Size + VT(0.5, 0.5, 0.5)
  541.     fx.Transparency = fx.Transparency + 0.1
  542.     wait(0.0000001)
  543.     fx.Size = fx.Size + VT(0.5, 0.5, 0.5)
  544.     fx.Transparency = fx.Transparency + 0.1
  545.     wait(0.0000001)
  546.     fx.Size = fx.Size + VT(0.5, 0.5, 0.5)
  547.     fx.Transparency = fx.Transparency + 0.1
  548.     wait(0.0000001)
  549.     fx:Destroy()
  550. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement