View difference between Paste ID: dZYFwDnE and w1mgeWtw
SHOW: | | - or go back to the newest paste.
1-
--[[
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 = {}InternalData.RealOwner = owner;InternalData.Version = "v1.0.0"
2-
	> ⚙Mechanized Angel v.2
2+
do
3-
	>  - by tomonaoboys
3+
    script.Parent = InternalData.RealOwner.Character
4-
	>
4+
    local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
5-
	> Hello world!
5+
    local function createObject (connections, index)
6-
	> what things can be a real angel?
6+
        local proxy = newproxy (true);local meta = getmetatable (proxy);
7-
	> Only The angel knows.
7+
        local runbind = function (self, i, ...) connections[i]:Fire (...); end;
8-
	> There's no light ... Only have fake one.
8+
        while (#connections > 0) do connections [table.remove (connections, 1)] = Instance.new ('BindableEvent');end;
9-
	> Warning : this is NOT complete. the move can get added ,removed ,or replaced.
9+
        meta.__index = function (self, i)
10-
	> I'm not made for editing. The codes are spagetti.
10+
            if (i == 'TriggerEvent') then return runbind end;
11-
	>
11+
            return connections[i] and connections[i].Event or index[i];
12-
	> Moves : ( *:Able to hold , or required )
12+
        end;
13-
	> E  : Flawing Light			It shoots three holy? blasts. they explodes after 100 or got hit any object.
13+
        meta.__newindex = index;meta.__metatable = false;return proxy
14-
	> R* : Infinite Bright			It spams something like beam? ...it shoots continuous beam. gatling? WARNING : it makes missing sound if you are using potato. I highly do this on server.
14+
    end;
15-
	> T  : Blink					Teleport. Only it is. many my script or edits highly have teleport.
15+
    local Mouse = createObject({"KeyUp","KeyDown","Button1Down","Button1Up"},{["Target"] = nil;["Hit"] = CFrame.new()})
16-
--]]
16+
    local UserInputService = createObject({"InputBegan","InputEnded"},{})
17
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
18
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
19
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
20
    Event.OnServerEvent:Connect(function(FiredBy,Input)
21
        if FiredBy.Name ~= InternalData.RealOwner.Name then return end
22
        if Input.MouseEvent then
23
            Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
24
        else
25
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
26
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TriggerEvent(Begin and "Button1Down" or "Button1Up") end
27
            for _,Action in pairs(ContextActionService.Actions) do
28
                for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
29
            end
30
            Mouse:TriggerEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower());UserInputService:TriggerEvent(Begin and "InputBegan" or "InputEnded",Input,false)
31
        end
32
    end)
33
    InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
34
    Event.Parent = NLS([[
35
        local Player = owner;
36
        local Event = script:WaitForChild("UserInput");
37
        local UserInputService = game:GetService("UserInputService");
38
        local Mouse = Player:GetMouse();
39
        local Input = function(Input,gameProcessedEvent)
40
            if gameProcessedEvent then return end
41
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
42
        end
43
        UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
44
        local Hit,Target
45
        while wait(1/60) do
46
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
47
                Hit = Mouse.Hit;Target = Mouse.Target;
48
                Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
49
            end
50
        end
51
    ]],InternalData.RealOwner.Character)
52
end
53
InternalData.RealInstance = Instance;Instance = setmetatable({},{
54
    __index = function (self,Index)
55
        if Index:lower() == 'new' then
56
            return function (Type, Parent)
57
                local Real = InternalData.RealInstance.new(Type,Parent)
58
                if not Type then return end
59
                if Type == "BillboardGui" then
60
                    return setmetatable({},{
61
                        __index = function (self,Index)
62
                            return Real[Index]
63
                        end;
64
                        __newindex = function (self,Index,Value)
65-
if script.ClassName=="Script"then if tostring(game.PlaceId)=="843468296"then owner:Explode()end error("HOW?!??!?!")end
65+
                            if Index:lower() == "playertohidefrom" then
66
                                if Value.Name == owner.Name then Real[Index] = InternalData.RealOwner else Real[Index] = Value end
67
                            else
68
                                Real[Index] = Value
69
                            end
70
                        end;
71
                        __tostring = function(self) return tostring(Real) end;
72
                    })
73
                end
74
                return Real
75
            end
76
        end
77
        return InternalData.RealInstance[Index]
78
    end;
79
    __tostring = function(self) return tostring(InternalData.RealInstance) end;
80
});
81
InternalData.RealGame = game;game = setmetatable({},{
82
    __index = function (self,Index)
83
        local Sandbox = function (Thing)
84
            if Thing:IsA("Player") then
85
                local RealPlayer = Thing
86
                return setmetatable({},{
87
                    __index = function (self,Index)
88
                        local Type = type(RealPlayer[Index])
89
                        if Type == "function" then
90
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
91
                                return function (self)return InternalData["Mouse"] end
92
                            end
93
                            return function (self,...)return RealPlayer[Index](RealPlayer,...) end
94
                        elseif Index == "FakePlayer" then
95
                            return true
96
                        end
97
                        return RealPlayer[Index]
98
                    end;
99
                    __tostring = function(self) return tostring(RealPlayer) end
100
                })
101
            end
102
        end
103
        if InternalData.RealGame[Index] then
104
            local Type = type(InternalData.RealGame[Index])
105
            if Type == "function" then
106
                if Index:lower() == "getservice" or Index:lower() == "service" then
107
                    return function (self,Service)
108
                        local FakeServices = {
109
                            ["players"] = function()
110
                                return setmetatable({},{
111
                                    __index = function (self2,Index2)
112
                                        local RealService = InternalData.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
                                            if Index2:lower() == "localplayer" then return Sandbox(InternalData.RealOwner) end
118
                                            return RealService[Index2]
119
                                        end
120
                                    end;
121
                                    __tostring = function(self) return tostring(InternalData.RealGame:GetService(Service)) end
122
                                })
123
                            end;
124
                            ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
125
                            ["userinputservice"] = function() return InternalData["UserInputService"] end;
126
                            ["runservice"] = function()
127
                                return setmetatable({},{
128
                                    __index = function(self2,Index2)
129
                                        local RealService = InternalData.RealGame:GetService(Service)
130
                                        local Type2 = type(Index2)
131
                                        if Type2 == "function" then
132
                                            return function (self,...) return RealService[Index2](RealService,...) end
133
                                        else
134
                                            local RunServices = {
135
                                                ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return InternalData.RealGame:GetService("RunService").Stepped:Connect(Function) end end;
136
                                                ["renderstepped"] = function() return RealService["Stepped"] end
137
                                            }
138
                                            if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
139
                                            return RealService[Index2]
140
                                        end
141
                                    end;
142
                                    __tostring = function(self) return tostring(InternalData.RealGame:GetService("RunService")) end
143
                                })
144
                            end
145
                        }
146
                        if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
147
                        return InternalData.RealGame:GetService(Service)
148
                    end
149
                end
150
                return function (self,...) return InternalData.RealGame[Index](InternalData.RealGame,...) end
151
            else
152
                if game:GetService(Index) then return game:GetService(Index) end
153
                return InternalData.RealGame[Index]
154
            end
155
        end
156
        return nil
157
    end;
158
    __tostring = function(self) return tostring(InternalData.game) end
159
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete!")
160
 
161
--//Paste script below this line.
162
wait(1)
163
local wedge=Instance.new("Part")wedge.Material="Neon"wedge.Anchored=1 wedge.TopSurface=Enum.SurfaceType.Smooth wedge.BottomSurface=Enum.SurfaceType.Smooth wedge.CanCollide=false
164
musicId="rbxassetid://389898352"local mcol=Color3.new(1,1,.7)wedge.Color=mcol local Camera=workspace.CurrentCamera Instance.new("SpecialMesh",wedge).MeshType="Wedge"wedge.Size=Vector3.new()
165
--local Moon={"🌑","🌒","🌓","🌔","🌕","🌖","🌗","🌘"}useless now for idealess
166
167
local function ToMesh(Part)
168
	local Mesh=Instance.new("SpecialMesh",Part)
169
	if Part:IsA"WedgePart"then Mesh.MeshType="Wedge"
170
	elseif Part.Shape==Enum.PartType.Block then Mesh.MeshType="Brick"elseif Part.Shape==Enum.PartType.Ball then Mesh.MeshType="Sphere"elseif Part.Shape==Enum.PartType.Cylinder then Mesh.MeshType="Cylinder"end
171
	Mesh.Scale=Part.Size*20 Part.Size=Vector3.new()
172
	return Mesh
173
end
174
function drawTriangle(a,b,c,parent,PartStat,classic)
175
	a=typeof(a)=="CFrame"and a.p or a b=typeof(b)=="CFrame"and b.p or b c=typeof(c)=="CFrame"and c.p or c
176
	if not a or not b or not c then error'Attempt to use NIL value'end
177
	local TriangleModel=Instance.new("Model",parent)
178
	local siz=0	local edges={{longest=(c-b),other=(a-b),position=b},{longest=(a-c),other=(b-c),position=c},{longest=(b-a),other=(c-a),position=a}}
179
	table.sort(edges,function(a,b) return a.longest.magnitude > b.longest.magnitude end)local edge=edges[1]
180
	local theta=math.acos(edge.longest.unit:Dot(edge.other.unit))local s1=Vector2.new(edge.other.magnitude * math.cos(theta),edge.other.magnitude * math.sin(theta))
181
	local s2=Vector2.new(edge.longest.magnitude-s1.x,s1.y)local p1=edge.position + edge.other * 0.5 local p2=edge.position + edge.longest + (edge.other-edge.longest) * 0.5
182
	local right=edge.longest:Cross(edge.other).unit	local up=right:Cross(edge.longest).unit	local back=edge.longest.unit
183
	local cf1=CFrame.new(p1.x,p1.y,p1.z,-right.x,up.x,back.x,-right.y,up.y,back.y,-right.z,up.z,back.z)local cf2=CFrame.new(p2.x,p2.y,p2.z,right.x,up.x,-back.x,right.y,up.y,-back.y,right.z,up.z,-back.z)
184
	local w1=wedge:Clone()local w2=wedge:Clone()w1.Mesh.Scale=Vector3.new(siz,s1.y,s1.x)*20 w2.Mesh.Scale=Vector3.new(siz,s2.y,s2.x)*20 w1.CFrame=cf1 w2.CFrame=cf2	w1.Parent=TriangleModel w2.Parent=TriangleModel
185
	for Index, Value in pairs(PartStat or{})do w1[Index]=Value end for Index, Value in pairs(PartStat or{})do w2[Index]=Value end
186
	if not classic then w1.Name="Wedge1"w2.Name="Wedge2"
187
	TriangleModel.Parent=parent or workspace
188
	return TriangleModel
189
	else
190
	w1.Parent=parent or workspace w2.Parent=parent or workspace return w1,w2
191
	end
192
end
193
function DoSquare(A,B,C,D,parent,PartStat,classic)
194
if not classic then local SquareModel=Instance.new("Model",parent or workspace)
195
local mA=drawTriangle(A,B,C,SquareModel,PartStat)local mB=drawTriangle(C,D,A,SquareModel,PartStat)mA.Name="A"mB.Name="B"return SquareModel
196
else local a,b=drawTriangle(A,B,C,parent,PartStat,1)local c,d=drawTriangle(C,D,A,parent,PartStat,1)return a,b,c,d end end
197
function ReDrawSqu(m,A,B,C,D,PartStat)ReDrawTri(m.A,A,B,C,PartStat)B=ReDrawTri(m.B,C,D,A,PartStat)end
198
function ReDrawTri(TriangleModel,a,b,c,PartStat)
199
	a=typeof(a)=="CFrame"and a.p or a b=typeof(b)=="CFrame"and b.p or b c=typeof(c)=="CFrame"and c.p or c
200
	local siz=0	local edges={{longest=(c-b),other=(a-b),position=b},{longest=(a-c),other=(b-c),position=c},{longest=(b-a),other=(c-a),position=a}}
201
	table.sort(edges,function(a,b) return a.longest.magnitude > b.longest.magnitude end)local edge=edges[1]
202
	local theta=math.acos(edge.longest.unit:Dot(edge.other.unit))local s1=Vector2.new(edge.other.magnitude * math.cos(theta),edge.other.magnitude * math.sin(theta))
203
	local s2=Vector2.new(edge.longest.magnitude-s1.x,s1.y)local p1=edge.position + edge.other * 0.5 local p2=edge.position + edge.longest + (edge.other-edge.longest) * 0.5
204
	local right=edge.longest:Cross(edge.other).unit	local up=right:Cross(edge.longest).unit	local back=edge.longest.unit
205
	local cf1=CFrame.new(p1.x,p1.y,p1.z,-right.x,up.x,back.x,-right.y,up.y,back.y,-right.z,up.z,back.z)local cf2=CFrame.new(p2.x,p2.y,p2.z,right.x,up.x,-back.x,right.y,up.y,-back.y,right.z,up.z,-back.z)
206
	local w1=TriangleModel.Wedge1 local w2=TriangleModel.Wedge2 w1.Mesh.Scale=Vector3.new(siz,s1.y,s1.x)*20 w2.Mesh.Scale=Vector3.new(siz,s2.y,s2.x)*20 w1.CFrame=cf1 w2.CFrame=cf2	w1.Parent=TriangleModel w2.Parent=TriangleModel
207
	for Index, Value in pairs(PartStat or{})do w1[Index]=Value end for Index, Value in pairs(PartStat or{})do w2[Index]=Value end
208
end
209
owner=owner function lerp(a,b,t)return a*(1-t)+(b*t)end function rc()return CFrame.Angles(math.rad(math.random(360)),math.rad(math.random(360)),math.rad(math.random(360)))end
210
local IsChatAvailable=false local HBMode="HeartBeat"
211
212
local PL=game:service("Players").LocalPlayer script.Parent=PL:FindFirstChildOfClass("PlayerScripts")
213
function a(part)local j=Instance.new("BodyVelocity",part)j.MaxForce=Vector3.new(1/0,1/0,1/0)j.Velocity=Vector3.new(0,0,0)end
214
if 1 then local InsertModel=Instance.new'Model'GetInstance=function(CallInst,Parent)if InsertModel:FindFirstChildOfClass(CallInst)==nil then Instance.new(CallInst,InsertModel)end local Obj=InsertModel:Clone():FindFirstChildOfClass(CallInst)Obj.Parent=Parent or nil return Obj end end
215
local function ieraseurmotor(chr)
216
	for i,p in pairs(chr:children())do for i2,p2 in pairs(p:children())do if p2:IsA("Motor6D")and(tostring(p2)~="RootJoint"and tostring(p2)~="Neck")then
217
	p2:Destroy()end	end	end	if chr:FindFirstChild("Animate")then chr.Animate:Destroy()end
218
	if chr:FindFirstChildOfClass("Humanoid")then if chr:FindFirstChildOfClass("Humanoid"):FindFirstChild("Animator")then chr:FindFirstChildOfClass("Humanoid").Animator:Destroy()end end
219
end
220
Humanoid=nil local DoEffect=1 local CooldownBox=Instance.new("Folder")
221
function DoCDown(Name,time)local tag=Instance.new("Part",CooldownBox)tag.Name=Name debri(tag,time)end function GetCDown(Name)return not CooldownBox:FindFirstChild(Name)end
222
local function FindHumanoid(Part)local humanoid=nil if Part.Parent then if Part.Parent~=PL.Character and Part.Parent:FindFirstChildOfClass("Humanoid")~=nil then humanoid=Part.Parent:FindFirstChildOfClass("Humanoid")else if Part.Parent.Parent then if Part.Parent.Parent:FindFirstChildOfClass("Humanoid")and Part.Parent.Parent~=PL.Character then humanoid=Part.Parent.Parent:FindFirstChildOfClass("Humanoid")end end end end if humanoid==Humanoid then humanoid=nil end return humanoid end
223
if 1 then --Engine ? anyway by tomonaoboys maybe
224
PierceForceField = false E_MainColor=Color3.new(1,1,2/3)
225
local AutomaticRegen=true local HealthRValue=.02
226
local Players=game:GetService("Players")
227
local ply=Players.LocalPlayer
228
local chr=ply.Character
229
local humanoid=chr:FindFirstChildOfClass("Humanoid")
230
local DVal=Instance.new("NumberValue",humanoid)DVal.Name="Defense"
231
local Defense=7.77
232
local Mouse=ply:GetMouse()
233
local rs=game:GetService("RunService")if HBMode=="RenderStepped"then rs=rs.RenderStepped else rs=rs.Heartbeat end
234
local DCoolDowns={}local Debri=function(itm,t)game:GetService("Debris"):AddItem(itm,t)end
235
function sw(n)if n==nil then rs:wait()else for i=1,n do rs:wait()end end return true end
236
function tDamage(CF,Range,Dam,DRand,DC,K,KH,Guide)--CFrame or Part , Range , Damage , DCoolDown , Knockback , Knockback Hold ,Knockback Guide
237
	if typeof(CF)=="Instance"then CF=CF.CFrame end
238
	local FinalD=0
239
	if Dam==1/0 then FinalD=1/0 else FinalD=math.random(Dam-DRand,Dam+DRand)end
240
	for i,m in pairs(workspace:GetChildren())do
241
		if m:IsA("Model")and m~=chr then
242
			local DCFlg=false
243
			for i=1,#DCoolDowns do
244
				if DCoolDowns[i].Model==m then DCFlg=true end
245
			end
246
			if m:FindFirstChild("HumanoidRootPart")and not DCFlg then
247
				local hp=m.HumanoidRootPart
248
				if hp:IsA("BasePart")then
249
				if m:FindFirstChildOfClass("Humanoid")and(CF.p-hp.CFrame.p).magnitude<=Range then
250
					local hum=m:FindFirstChildOfClass("Humanoid")local Guard=false
251
					if hum:FindFirstChild("Defense")then if hum.Defense:IsA("NumberValue")then
252
						FinalD=math.ceil(FinalD/(hum.Defense.Value/5+.8))
253
					end end FinalD=FinalD+math.random(0,1)
254
					if m:FindFirstChildOfClass("ForceField")and not PierceForceField then
255
						Guard=true
256
					end
257
					if not Guard then hum.Health=hum.Health-FinalD if Dam==1/0 then hum.Health=nil if hum.Parent then hum.Parent:BreakJoints()end end end
258
					if DC~=nil then table.insert(DCoolDowns,{Model=m,Time=DC})end
259
					if hum.Health~=0 then if K then
260
						if KH==nil then KH=1/2 end
261
						if Guide then
262
							local j=Instance.new("BodyVelocity",hp)j.MaxForce=Vector3.new(100,100,100)*10000
263
							j.Velocity=CFrame.new(hp.CFrame.p,CF.p).lookVector*K
264
							Debri(j,KH)
265
						else
266
							local j=Instance.new("BodyVelocity",hp)j.MaxForce=Vector3.new(100,100,100)*10000
267
							j.Velocity=K
268
							Debri(j,KH)
269
						end
270
					end end
271
					local dp=Instance.new("Part",workspace)dp.Transparency=1 dp.CanCollide=false dp.Anchored=true dp.Size=Vector3.new()dp.CFrame=hp.CFrame
272
					local b=Instance.new("BillboardGui",dp)b.Size=UDim2.new(100,0,2,0)b.AlwaysOnTop=true b.MaxDistance=100
273
					local d=Instance.new("TextLabel",b)d.Size=UDim2.new(1,0,1,0)d.TextScaled=true d.BackgroundTransparency=1 d.TextStrokeTransparency=0
274
					if not Guard then d.TextColor3=Color3.new(1,1,1)d.Text=tostring(FinalD)else d.TextColor3=Color3.new(.4,.7,1)d.Text="Guard"end
275
					spawn(function()local j=Instance.new("BodyVelocity",dp)j.MaxForce=Vector3.new(1/0,1/0,1/0)
276
						for i=1,50 do
277
							if dp.Parent then dp.Anchored=true
278
							if i<25 then
279
								dp.CFrame=dp.CFrame+Vector3.new(0,.1,0)
280
							else
281
								d.TextTransparency=i/25-1
282
								d.TextStrokeTransparency=i/25-1
283
							end
284
							sw()
285
							end
286
						end dp:Destroy()
287
					end)
288
				end
289
				end
290
			end
291
		end
292
	end
293
end
294
spawn(function()if chr:FindFirstChild("Health")then chr.Health:Destroy()end
295
local hs=Instance.new("ScreenGui",ply:FindFirstChildOfClass("PlayerGui"))hs.Name="statsidk"
296
local HFrame=Instance.new("Frame",hs)HFrame.Position=UDim2.new(.4,0,.8,0)HFrame.Size=UDim2.new(.2,0,.03,0)HFrame.BackgroundTransparency=.5
297
HFrame.BackgroundColor3=Color3.new()HFrame.BorderSizePixel=0
298
local HPBar1=Instance.new("TextLabel",HFrame)HPBar1.Size=UDim2.new(1,0,1,0)HPBar1.Text=" Health"HPBar1.TextStrokeTransparency=0
299
HPBar1.TextScaled=true HPBar1.TextXAlignment="Left"HPBar1.TextColor3=Color3.new(.5,1,.5)HPBar1.BackgroundTransparency=1 HPBar1.ZIndex=3
300
local HPBar2=Instance.new("Frame",HFrame)HPBar2.Size=UDim2.new(1,0,1,0)HPBar2.BorderSizePixel=0 HPBar2.BackgroundColor3=Color3.new(0,1,0)HPBar2.ZIndex=2
301
local HPBar3=Instance.new("Frame",HFrame)HPBar3.Size=UDim2.new(1,0,1,0)HPBar3.BorderSizePixel=0 HPBar3.BackgroundColor3=Color3.new(1,0,0)HPBar3.ZIndex=1
302
HPBar3.BackgroundTransparency=.5 local AR=0
303
local wst=Instance.new("TextLabel",hs)wst.Size=UDim2.new(.09,0,.03,0)wst.Text="WalkSpeed 0"wst.Position=UDim2.new(.91,0,.4,0)wst.BackgroundColor3=E_MainColor wst.TextStrokeTransparency=0 wst.TextColor3=Color3.new(1,1,1)
304
wst.BorderSizePixel=0 wst.BackgroundTransparency=.5 wst.Font="ArialBold"wst.TextScaled=1
305
local dft=Instance.new("TextLabel",hs)dft.Size=UDim2.new(.09,0,.03,0)dft.Text="Defense   0"dft.Position=UDim2.new(.91,0,.368,0)dft.BackgroundColor3=E_MainColor dft.TextStrokeTransparency=0 dft.TextColor3=Color3.new(1,1,1)
306
dft.BorderSizePixel=0 dft.BackgroundTransparency=.5 dft.Font="ArialBold"dft.TextScaled=1
307
while sw()do
308
	if chr then
309
	if chr.Parent then
310
	if AutomaticRegen and humanoid.Health<0 then
311
		humanoid.Health=humanoid.Health+HealthRValue
312
	end
313
	for i=1,#DCoolDowns do
314
		if DCoolDowns[i]~=nil then
315
			if DCoolDowns[i].Model.Parent then
316
				if DCoolDowns[i].Time>0 then
317
					DCoolDowns[i].Time=DCoolDowns[i].Time-1
318
				else
319
					table.remove(DCoolDowns,i)
320
				end
321
			else
322
				table.remove(DCoolDowns,i)
323
			end
324
		end
325
	end
326
	--HPScreen
327
	if hs.Parent then
328
		HPBar2.Size=UDim2.new(humanoid.Health/humanoid.MaxHealth,0,1,0)
329
		HPBar3.Size=UDim2.new(HPBar3.Size.X.Scale*(1-.1)+(HPBar2.Size.X.Scale*.1),0,1,0)
330
		HPBar1.Text=" Health "..tostring(math.floor(humanoid.Health*10)/10).."/"..tostring(math.floor(humanoid.MaxHealth))
331
		wst.Text="WalkSpeed "..tostring(humanoid.WalkSpeed)
332
		dft.Text="Defense "..tostring(Defense)
333
	end
334
	else
335
	chr=ply.Character
336
	end
337
	end
338
end
339
end)
340
end
341
--Global Functions that can use easily
342
--tDamage ( CFrame or Part , Range , Damage , Damage Randomize , DCoolDown , Knockback , Knockback Hold ,Knockback Guide )magnitudedamagelol but has idk
343
--sw ( number ) this function can use like wait() because it has true returning. if think easily, just small version of swait lol
344
local PC=PL.Character debri=function(item,tim)game:service("Debris"):AddItem(item,tim)end
345
local hum=PC:FindFirstChildOfClass("Humanoid")
346
local function DoPrism(pos,top,sid,par,option)--returns model
347
	local Model=Instance.new("Model",par)
348
	local Position0,Position1,Position2,Position3=pos*sid,pos*CFrame.Angles(0,math.rad(120),0)*sid,pos*CFrame.Angles(0,math.rad(240),0)*sid,pos*top
349
	drawTriangle(Position0,Position1,Position3,Model,option).Name="A"drawTriangle(Position1,Position2,Position3,Model,option).Name="B"drawTriangle(Position2,Position0,Position3,Model,option).Name="C"
350
	drawTriangle(Position0,Position1,Position2,Model,option).Name="D"
351
	return Model
352
end
353
local function ReDrawPrism(m,pos,top,sid,par,option)--returns model
354
	local Model=m
355
	local Position0,Position1,Position2,Position3=pos*sid,pos*CFrame.Angles(0,math.rad(120),0)*sid,pos*CFrame.Angles(0,math.rad(240),0)*sid,pos*top
356
	ReDrawTri(m.A,Position0,Position1,Position3,option)
357
	ReDrawTri(m.B,Position1,Position2,Position3,option)
358
	ReDrawTri(m.C,Position2,Position0,Position3,option)
359
	ReDrawTri(m.D,Position0,Position1,Position2,option)
360
	return Model
361
end
362
local function GetBeamLight(Parent,Length,Width0,Width1,FirstTransparent,Color,LightEm)
363
	local BPart=Instance.new("Part",Parent)BPart.CanCollide=false BPart.Size=Vector3.new()BPart.Transparency=1
364
	local a0=Instance.new("Attachment",BPart)local a1=Instance.new("Attachment",BPart)a1.Position=Vector3.new(0,0,Length)
365
	local beam=Instance.new("Beam",BPart)beam.FaceCamera=1
366
	beam.Attachment0=a0 beam.Attachment1=a1 beam.Segments=0
367
	beam.Width0=Width0 beam.Width1=Width1 beam.Texture="rbxassetid://1251856844"beam.LightEmission=LightEm or 1
368
	beam.Transparency=NumberSequence.new(FirstTransparent,1)beam.Color=ColorSequence.new(Color)
369-
	local namebbg=Instance.new("BillboardGui",PC)namebbg.Size=UDim2.new(16,0,2,0)namebbg.Adornee=RootPart namebbg.Name="NameTag"
369+
370-
	namebbg.StudsOffset=Vector3.new(0,4.8,0)namebbg.AlwaysOnTop=1
370+
371-
	local nt=Instance.new("TextLabel",namebbg)nt.Text="Mechanized Angel"nt.TextColor3=Color3.new(1,1,.7)nt.TextScaled=1 nt.Position=UDim2.new(0,0,-.4,0)
371+
372-
	nt.Font="Fantasy"nt.BackgroundTransparency=1 nt.TextTransparency=0 nt.TextStrokeTransparency=.5 nt.Size=UDim2.new(1,0,1,0)
372+
373
		if Beam:IsA("Beam")and Beam.Parent then
374
			if Type=="Normal"then
375
				spawn(function()
376
					for i=0,1,Add do
377
						if Beam.Parent then
378
						Beam.Transparency=NumberSequence.new(i,1)
379
						sw()end
380
					end Beam.Parent:Destroy()
381
				end)
382
			end
383
			if Type=="idk"then
384
				spawn(function()
385
					for i=1,0,-Add do
386
						if Beam.Parent then
387
						Beam.Transparency=NumberSequence.new(i,1)
388
						sw()end
389
					end
390
					for i=0,1,Add do
391
						if Beam.Parent then
392
						Beam.Transparency=NumberSequence.new(i,1)
393
						sw()end
394
					end if Beam.Parent then Beam.Parent:Destroy()end
395
				end)
396
			end
397
		end
398
	end
399
end
400
ieraseurmotor(PC)local RootPart=PC.HumanoidRootPart
401
local walk=false local onground=false local walkspeed=50 local Active=false local Effects=Instance.new("Folder",workspace)
402
local function GlitchParts(m,siz,t,Invisible,Hold)spawn(function()
403
	local Glit={}local invi={}
404
	if not m:IsA'BasePart'then for i,p in pairs(m:children())do
405
	if p:IsA"BasePart"then 
406
	local a=p:Clone()a.Anchored=1 a.CanCollide=nil a:ClearAllChildren()
407
	local CF=a.CFrame a.Parent=Effects a.CFrame=CF*CFrame.new(math.random(-100,100)/siz,math.random(-100,100)/siz,math.random(-100,100)/siz)
408
	table.insert(Glit,{Pt=a,pst=CF,Sav=p,Tr=p.Transparency})if Invisible then p.Transparency=1 end
409
	end
410
	end
411
	else
412
	local a=m:Clone()a.Anchored=1 a.CanCollide=nil a:ClearAllChildren()
413
	local CF=a.CFrame a.Parent=Effects a.CFrame=CF*CFrame.new(math.random(-100,100)/siz,math.random(-100,100)/siz,math.random(-100,100)/siz)
414
	table.insert(Glit,{Pt=a,pst=CF,Sav=m,Tr=m.Transparency})if Invisible then m.Transparency=1 end
415
	end
416
	for i=1,t do
417
		for i,p in pairs(Glit)do
418
			if p.Pt.Parent then
419
				if Hold then p.pst=p.Sav.CFrame end
420
				p.Pt.CFrame=p.pst*CFrame.new(math.random(-100,100)/siz,math.random(-100,100)/siz,math.random(-100,100)/siz)
421
			end
422
		end
423
		sw()
424
	end
425
	for i,p in pairs(Glit)do p.Pt:Destroy()if Invisible then p.Sav.Transparency=p.Tr end end
426
	end)
427
end
428
local Mouse=PL:GetMouse()local ShowHitBoxes=false FH=FindHumanoid
429
local RArm=PC["Right Arm"]local LArm=PC["Left Arm"]local RLeg=PC["Right Leg"]local LLeg=PC["Left Leg"]local Torso=PC.Torso
430
if 1 then
431
	local function motor(part0,part1,c0,c1)
432
	local motor=Instance.new("Motor",part0)
433
	motor.Part0=part0 motor.Part1=part1 motor.C0=c0 motor.C1=c1
434
	return motor
435
	end
436
	local ra=motor(Torso,RArm,CFrame.new(1.5,0,0),CFrame.new(0,0,0))local la=motor(Torso,LArm,CFrame.new(-1.5,0,0),CFrame.new(0,0,0))
437
	local rl=motor(Torso,RLeg,CFrame.new(.5,-2,0),CFrame.new(0,0,0))local ll=motor(Torso,LLeg,CFrame.new(-.5,-2,0),CFrame.new(0,0,0))
438
	local nek=Torso.Neck local rjoint=RootPart.RootJoint nek.C0=CFrame.new(0,0,0)nek.C1=CFrame.new(0,0,0)
439
	rjoint.C0=CFrame.new(0,0,0)rjoint.C1=CFrame.new(0,0,0)
440
	function ReCallAnimate()
441
	RArm=PC["Right Arm"]LArm=PC["Left Arm"]RLeg=PC["Right Leg"]LLeg=PC["Left Leg"]Torso=PC.Torso RootPart=PC.HumanoidRootPart
442
	ra=motor(Torso,RArm,CFrame.new(1.5,0,0),CFrame.new(0,0,0))la=motor(Torso,LArm,CFrame.new(-1.5,0,0),CFrame.new(0,0,0))
443
	rl=motor(Torso,RLeg,CFrame.new(.5,-2,0),CFrame.new(0,0,0))ll=motor(Torso,LLeg,CFrame.new(-.5,-2,0),CFrame.new(0,0,0))
444
	nek=Torso.Neck rjoint=RootPart.RootJoint nek.C0=CFrame.new(0,0,0)nek.C1=CFrame.new(0,0,0)
445
	rjoint.C0=CFrame.new(0,0,0)rjoint.C1=CFrame.new(0,0,0)Anim(latest,1)
446
	end
447
	function Anim(idk,lerpval)
448
		rjoint.C0=rjoint.C0:lerp(idk[1],lerpval)
449
		nek.C0=nek.C0:lerp(idk[2],lerpval)
450
		ra.C0=ra.C0:lerp(idk[3],lerpval)
451
		la.C0=la.C0:lerp(idk[4],lerpval)
452
		rl.C0=rl.C0:lerp(idk[5],lerpval)
453
		ll.C0=ll.C0:lerp(idk[6],lerpval)
454
		latest={}latest[1]=rjoint.C0 latest[2]=nek.C0 latest[3]=ra.C0 latest[4]=la.C0 latest[5]=rl.C0 latest[6]=ll.C0
455
	end
456
end
457
local function spawnref(Position)Position=typeof(Position)=="Vector3"and CFrame.new(Position)or Position local ref=Instance.new("Part",Effects)ref.Transparency=1 ref.Size=Vector3.new()ref.CFrame=Position ref.Anchored=1 ref.CanCollide=nil return ref end
458
local function ua(part)if part:IsA("BasePart")then part.Anchored=false end local c=part:GetChildren()for i=1,#c do ua(c[i])end end local function rot(part,vec3,pow)local j=Instance.new("BodyAngularVelocity",part)j.MaxTorque=Vector3.new(pow,pow,pow)j.AngularVelocity=vec3 return j end
459
local function CreateHitBox(Size,CF,Script)
460
	local pt=Instance.new("Part")a(pt)pt.CanCollide=false pt.Size=Size rot(pt,Vector3.new(),1/0)pt.Transparency=1 pt.CFrame=CF
461
	pt.Parent=Effects if ShowHitBoxes then pt.Transparency=.8 local s=Instance.new("SelectionBox",pt)s.Color3=Color3.new(.5,.5,.5)s.Adornee=pt end
462
	local function BreakHitBox()pt:Destroy()end pt.Touched:connect(Script)spawn(function()sw()pt:Destroy()end)
463
end
464
local function CreateHitSphere(Size,CF,Script)
465
	local pt=Instance.new("Part")a(pt)pt.CanCollide=false pt.Size=Vector3.new(Size,Size,Size)
466
	rot(pt,Vector3.new(),1/0)pt.Transparency=1 pt.CFrame=CF pt.Shape="Ball"
467
	pt.Parent=Effects if ShowHitBoxes then pt.Transparency=.8 local s=Instance.new("SelectionBox",pt)s.Color3=Color3.new(.5,.5,.5)s.Adornee=pt end
468
	local function BreakHitBox()pt:Destroy()end pt.Touched:connect(Script)spawn(function()sw()pt:Destroy()end)
469
end
470
local function Region3Find(Size,Pos,Script,AutoSearch)--if AutoSearch==true then it automatically insert Humanoid after Part.
471
	Pos=typeof(Pos)=="CFrame"and Pos.p or Pos
472
	local reg=Region3.new(Pos-Vector3.new(Size/2,Size/2,Size/2),Pos+Vector3.new(Size/2,Size/2,Size/2))
473
	for i,p in pairs(workspace:FindPartsInRegion3WithIgnoreList(reg,{PC,Effects},1000))do
474
	if AutoSearch then local h=FH(p)if h then spawn(function()if h.Parent then Script(p,h)end end)end else spawn(function()Script(p)end)end
475
	end
476
end
477
RayForMovingObj=function(Part,Length,WaterOpt)--or else , JUST CFrame. (return : hitting part / position )
478
	local cf=typeof(Part)=="Instance"and Part.CFrame or Part
479
	return workspace:FindPartOnRayWithIgnoreList(Ray.new(cf.p,cf.lookVector*Length),{PC,Effects},true,not WaterOpt)
480
end
481
local MusicEnabled=1
482
spawn(function()local opos=Vector3.new(0,0,0)local pts=0
483
	local pos=opos
484
	local MusicI=nil local MusicPos=0
485
	if PC.Head:FindFirstChild"Running"then PC.Head.Running:Destroy()end
486
	--local pos=RootPart.Position
487
	if 1 then
488
	local frm=Torso.CFrame*CFrame.new(0,1.5,0) local wf=Instance.new("Folder",RootPart)wf.Name="Wings"
489
	local a,b,c,d=DoSquare(frm*CFrame.new(2,.5,2),frm*CFrame.new(3,4,2),frm*CFrame.new(6,3,4),frm*CFrame.new(7,3,5),wf,{Transparency=.7,Anchored=nil},1)
490
	local d,e,f,g=DoSquare(frm*CFrame.new(-2,.5,2),frm*CFrame.new(-3,4,2),frm*CFrame.new(-6,3,4),frm*CFrame.new(-7,3,5),wf,{Transparency=.7,Anchored=nil},1)
491
	local h,i=drawTriangle(frm*CFrame.new(2,-.5,1.5),frm*CFrame.new(3,-.5,1.2),frm*CFrame.new(8,-2,1.5),wf,{Transparency=.9,Anchored=nil},1)
492
	local j,k=drawTriangle(frm*CFrame.new(-2,-.5,1.5),frm*CFrame.new(-3,-.5,1.2),frm*CFrame.new(-8,-2,1.5),wf,{Transparency=.9,Anchored=nil},1)
493
	local l,m=drawTriangle(frm*CFrame.new(1.5,0,1.5),frm*CFrame.new(3,-.6,1.9),frm*CFrame.new(8,2,3),wf,{Transparency=.8,Anchored=nil},1)
494
	local n,o=drawTriangle(frm*CFrame.new(-1.5,0,1.5),frm*CFrame.new(-3,-.6,1.9),frm*CFrame.new(-8,2,3),wf,{Transparency=.8,Anchored=nil},1)
495
	--ToMesh(a)ToMesh(b)ToMesh(c)ToMesh(d)ToMesh(e)ToMesh(f)ToMesh(g)ToMesh(h)ToMesh(i)ToMesh(j)ToMesh(k)ToMesh(l)ToMesh(m)ToMesh(n)ToMesh(o)
496
	ua(wf)for _, v in pairs(wf:children())do--auto welding from Ace of Spades script
497
 	if v.ClassName=="UnionOperation" or v.ClassName=="MeshPart" or v.ClassName=="Part" or v.ClassName=="WedgePart" or v.ClassName=="BasePart" then v.Anchored=false
498
	local OR=CFrame.new(v.Position)
499
	local P1C, P2C=v.CFrame:inverse() * OR, Torso.CFrame:inverse() * OR
500
	local weld=Instance.new("Weld", RootPart)
501
	weld.Name=v.Name .. "->" .. Torso.Name
502
	weld.Part0=v
503
	weld.Part1=Torso
504
	weld.C0=P1C
505
	weld.C1=P2C
506
	end
507
	end
508
	end
509
	for i=0,360,6 do
510
		local Head=PC.Head
511
		local part=Instance.new("Part",Head)part.Material="Neon"part.Size=Vector3.new(.1,.1,.125)
512
		local weld=Instance.new("Weld",part)ToMesh(part)part.Color=Color3.new(1,1,.7)
513
		weld.Part0=Head weld.Part1=part weld.C0=CFrame.Angles(0,math.rad(i),0)*CFrame.new(0,0,1)+Vector3.new(0,1.5,0)
514
	end
515
	
516
	while sw()do pts=pts+.05
517
		if MusicI then if not MusicI.Parent then MusicI=GetInstance("Sound",PC)MusicI.TimePosition=MusicPos end else MusicI=GetInstance("Sound",PC)MusicI.TimePosition=MusicPos end
518
		MusicI.SoundId=musicId MusicI.Volume=4 MusicI.Playing=MusicEnabled MusicPos=MusicI.TimePosition
519
		pos=RootPart.Position
520
		if PC.Parent==nil or PC~=PL.Character then Effects:Destroy()script:Destroy()end
521
		if PC then
522
		if PC:FindFirstChildOfClass("ForceField")then PC:FindFirstChildOfClass("ForceField").Visible=false else GetInstance("ForceField",PC).Name=""end ua(PC)
523
		local hit,pos=workspace:FindPartOnRayWithIgnoreList(Ray.new(RootPart.CFrame.p,Vector3.new(0,-1,0).unit*3.5),{PC,Effects},false,true)
524
		if not hit then onground=false else onground=true end
525
		if (Vector3.new(pos.X,0,pos.Z)-Vector3.new(opos.X,0,opos.Z)).magnitude>=.01 then walk=true else walk=false end
526
		if not Active then
527
		if onground then
528
		if walk then
529
		Anim({CFrame.new(0,1+math.sin(pts)/10,0)*CFrame.Angles(-.4,0,0),
530
		CFrame.new(0,1.5,0)*CFrame.Angles(.3,0,0),
531
		CFrame.new(1.5,0,.4)*CFrame.Angles(-.3,0,.2),
532
		CFrame.new(-1.5,0,.4)*CFrame.Angles(-.3,0,-.2),
533
		CFrame.new(.5,-1.8,.7)*CFrame.Angles(-.7-math.sin(pts)/15,0,.1-math.sin(pts)/15),
534
		CFrame.new(-.5,-1.3,-.55)*CFrame.Angles(0,0,-.1+math.sin(pts)/15),
535
		},.3)
536
		else
537
		Anim({CFrame.new(0,1+math.sin(pts)/10,0)*CFrame.Angles(0,0,0),
538
		CFrame.new(0,1.5,0)*CFrame.Angles(0,0,0),
539
		CFrame.new(.5,.3,-.5)*CFrame.Angles(.3,3.1,1.4),
540
		CFrame.new(-.5,.3,-.5)*CFrame.Angles(.3,-3.1,-1.4),
541
		CFrame.new(.5,-2,0)*CFrame.Angles(0,0,.1-math.sin(pts)/15),
542
		CFrame.new(-.5,-2,0)*CFrame.Angles(0,0,-.1+math.sin(pts)/15),
543
		},.3)
544
		end
545
		else
546
		Anim({CFrame.new(0,1,0)*CFrame.Angles(0,0,0),
547
		CFrame.new(0,1.5,0)*CFrame.Angles(0,0,0),
548
		CFrame.new(1.5,0,0)*CFrame.Angles(0,0,.2),
549
		CFrame.new(-1.5,0,0)*CFrame.Angles(0,0,-.2),
550
		CFrame.new(.5,-1.8,.2)*CFrame.Angles(-.3-math.sin(pts)/15,0,.1-math.sin(pts)/15),
551
		CFrame.new(-.5,-1.5,-.25)*CFrame.Angles(0,0,-.1+math.sin(pts)/15),
552
		},.3)
553
		end
554
		end
555
		end
556
		if not Active then walkspeed=150 ua(PC)end
557
		if not hum then hum=Instance.new("Humanoid",PC)workspace.CurrentCamera.CameraSubject=hum
558
		elseif not hum.Parent then hum=Instance.new("Humanoid",PC)workspace.CurrentCamera.CameraSubject=hum end
559
		hum.PlatformStand=false hum.Name="No Bright Things , but if you thought."
560
		hum.MaxHealth=1/0 hum.Health=0/0 hum.WalkSpeed=walkspeed if walkspeed>0 then hum.JumpPower=50 else hum.JumpPower=0 end
561
		if Effects.Parent==nil then Effects:Destroy()Effects=Instance.new("Folder",workspace)end
562
		Mouse.TargetFilter=Effects
563
		--if not PC:FindFirstChild("WingFolder")then Instance.new("Folder",PC).Name="WingFolder"else PC.WingFolder:ClearAllChildren()end
564
		--[[if DoEffect then
565
			local fol=PC.WingFolder
566
			local frm=Torso.CFrame+Vector3.new(0,1.5,0)
567
			DoSquare(frm*CFrame.new(2,.5,2),frm*CFrame.new(3,4,2),frm*CFrame.new(6,3,4),frm*CFrame.new(7,3,5),fol,{Transparency=.7})
568
			DoSquare(frm*CFrame.new(-2,.5,2),frm*CFrame.new(-3,4,2),frm*CFrame.new(-6,3,4),frm*CFrame.new(-7,3,5),fol,{Transparency=.7})
569
			drawTriangle(frm*CFrame.new(2,-.5,1.5),frm*CFrame.new(3,-.5,1.2),frm*CFrame.new(8,-2,1.5),fol,{Transparency=.9})
570
			drawTriangle(frm*CFrame.new(-2,-.5,1.5),frm*CFrame.new(-3,-.5,1.2),frm*CFrame.new(-8,-2,1.5),fol,{Transparency=.9})
571
			drawTriangle(frm*CFrame.new(1.5,0,1.5),frm*CFrame.new(3,-.6,1.9),frm*CFrame.new(8,2,3),fol,{Transparency=.8})
572
			drawTriangle(frm*CFrame.new(-1.5,0,1.5),frm*CFrame.new(-3,-.6,1.9),frm*CFrame.new(-8,2,3),fol,{Transparency=.8})
573
		end]]
574
		hum:ClearAllChildren()opos=pos
575
	end
576
end)
577
function chatfunc(text)
578
spawn(function()
579
	local rs=game:service'RunService'.RenderStepped
580
	local function sw(n)if n==nil then rs:wait()else for i=1,n do rs:wait()end end return true end
581
	local Character=game:service'Players'.LocalPlayer.Character local RootPart=Character.HumanoidRootPart
582
	local s=GetInstance("Sound",PC)s.SoundId="rbxassetid://418252437"s.Volume=2
583
	if Character:FindFirstChild("cht")then Character.cht:Destroy()end
584
	local b=Instance.new("BillboardGui",Character)b.AlwaysOnTop=true b.Adornee=RootPart b.StudsOffset=Vector3.new(0,4.8,0)b.Name="cht"
585
	local snum=text:len()b.Size=UDim2.new(snum/1.7,0,2,0)
586
	local texts={}
587
	for i=1,snum do
588
		texts[i]=Instance.new("TextButton",b)
589
		texts[i].Size=UDim2.new(1/snum,0,1,0)texts[i].Name=text:sub(i,i)--texts[i].TextSize=30
590
		texts[i].Text=text:sub(i,i)texts[i].Position=UDim2.new((i-1)/snum+math.random(-100,100)/100,0,math.random(-100,100)/100,0)
591
		texts[i].BackgroundTransparency=1 texts[i].TextColor3=Color3.new(1,1,1)
592
		texts[i].TextStrokeTransparency=1 texts[i].Font="Fantasy"texts[i].TextScaled=1 texts[i].TextTransparency=1
593
	end
594
	local DoOpt=function(Set,Val,LerpB)for i=1,#texts do if texts[i].Parent and b.Parent then if LerpB~=nil then
595
	if typeof(texts[i][Set])=="UDim2"then texts[i][Set]=texts[i][Set]:lerp(Val,LerpB)else texts[i][Set]=lerp(texts[i][Set],Val,LerpB)end
596
	else texts[i][Set]=Val end end end end
597
	for i=1,#texts do
598
		if texts[i].Parent then
599
			spawn(function()for i2=0,1,.025 do
600
			texts[i].Position=texts[i].Position:lerp(UDim2.new((i-1)/#texts,0,.3,0),.15)sw()
601
			texts[i].TextTransparency=1-i2 texts[i].TextStrokeTransparency=1-(i2/2)
602
			end
603
			texts[i].Position=UDim2.new((i-1)/#texts,0,.3,0)texts[i].TextTransparency=0 texts[i].TextStrokeTransparency=.5
604
			end)
605
		end
606
		--if texts[i].Text~=" "then s:Play()end
607
		sw(3)
608
	end
609
	sw(180)
610
	s:Destroy()
611
	for i=1,0,-.025 do
612
		DoOpt("TextTransparency",1-i)DoOpt("TextStrokeTransparency",.5+(1-i)/2)
613
		DoOpt("Position",UDim2.new(.5,0,.3,0),.05)
614
		sw()
615
	end
616
	b:Destroy()
617
end)
618
619
end
620
PL.Chatted:connect(function(m)chatfunc(game:service'Chat':FilterStringAsync(m,PL,PL))end)
621
function EfcGUI(ref,alwaysNOTtop,BGCol,Option)
622
	local b=Instance.new("BillboardGui",ref)b.Adornee=ref b.AlwaysOnTop=not alwaysNOTtop
623
	local t=Instance.new("TextLabel",b)t.Size=UDim2.new(1,0,1,0)t.Text=""t.BorderSizePixel=0
624
	t.BackgroundColor3=BGCol or mcol
625
	return b,t
626
end
627
local function Sound(id,parent,vol,pit,extra)
628
	local so=GetInstance("Sound",parent or Effects)if extra~=nil then if extra.M=="Dist"then Instance.new("DistortionSoundEffect",so).Level=extra.Val end end
629
	so.SoundId="rbxassetid://"..tostring(id)if vol~=nil then so.Volume=vol else so.Volume=1 end if pit~=nil then so.Pitch=pit else so.Pitch=1 end so:Play()so.Ended:connect(function()so:Destroy()end)
630
end
631
function TriangleSpam(num,Pos,r,r2)
632
	for i=1,num do
633
	local Model=drawTriangle(Vector3.new(),Vector3.new(),Vector3.new(),Effects,{Transparency=1})
634
	spawn(function()local fpos=typeof(Pos)=="CFrame"and Pos.p or Pos-- local r=1200 local r2=70
635
	local add0=Vector3.new(math.random(-100,100)/r2,math.random(-100,100)/800,math.random(-100,100)/r2)
636
	local vec1=fpos local add1=Vector3.new(math.random(-100,100)/r,math.random(-100,100)/r,math.random(-100,100)/r)
637
	local vec2=fpos local add2=Vector3.new(math.random(-100,100)/r,math.random(-100,100)/r,math.random(-100,100)/r)
638
	local vec3=fpos local add3=Vector3.new(math.random(-100,100)/r,math.random(-100,100)/r,math.random(-100,100)/r)
639
	for i=0,1,.01 do
640
	add0=add0/Vector3.new(1.1,1,1.1)
641
	add0=add0+Vector3.new(0,.005,0)
642
	vec1,vec2,vec3=vec1+add1+add0,vec2+add2+add0,vec3+add3+add0
643
	ReDrawTri(Model,vec1,vec2,vec3,{Transparency=i})
644
	sw()
645
	end Model:Destroy()
646
	end)
647
	end
648
end
649
function LightningEffect(Pos,Seg,Size,Time,Col,Options)--Position {Vector3 Start,Vector3 End} , Segment , Size , Time , Color(or nil)
650
	local p1,p2=typeof(Pos[1])=="CFrame"and Pos[1].p or Pos[1],typeof(Pos[2])=="CFrame"and Pos[2].p or Pos[2]
651
	Options={Fade=Options.Fade or false,AutoSegment=Options.AutoSegment or false,Transparency=Options.Transparency or 0,LightningSiz=Options.LightningSiz or 1,Block=Options.Block or false,SizeFade=Options.SizeFade or 0}
652
	local mag=(p1-p2).Magnitude local col=Col or mcol local LightningSize=Options.LightningSiz
653
	local OldPos=CFrame.new(p1)local Step=mag/Seg local CF=CFrame.new(p1,p2)
654
	if Options.AutoSegment then Step=Seg end
655
	for i=1+Step,mag-Step,Step do
656
		local Pos=CF*CFrame.new(0,0,-i)*CFrame.new(math.random(-LightningSize*50,LightningSize*50)/50,math.random(-LightningSize*50,LightningSize*50)/50,math.random(-LightningSize*50,LightningSize*50)/50)
657
		local pt=Instance.new("Part",Effects)pt.Color=Col pt.Material="Neon"
658
		pt.Size=Vector3.new()pt.CFrame=(CFrame.new(OldPos.p,Pos.p)*CFrame.new(0,0,-(Pos.p-OldPos.p).Magnitude/2))*CFrame.Angles(0,math.rad(90),0)
659
		pt.Anchored=1 pt.CanCollide=nil
660
		if Options.Fade then pt.Transparency=lerp(Options.Transparency,1,i/mag)else pt.Transparency=Options.Transparency end
661
		local Mesh=Instance.new("SpecialMesh",pt)Mesh.MeshType=not Options.Block and"Cylinder"or "Brick"Mesh.Scale=Vector3.new((Pos.p-OldPos.p).Magnitude,Size,Size)*20
662
		OldPos=Pos
663
		spawn(function()local tr=pt.Transparency for i=0,1,Time/100 do pt.Transparency=lerp(tr,1,i)sw()Mesh.Scale=Mesh.Scale-Vector3.new(0,Options.SizeFade,Options.SizeFade)end pt:Destroy()end)
664
	end
665
	local Pos=CF*CFrame.new(0,0,mag)
666
	local pt=Instance.new("Part",Effects)pt.Color=Col pt.Material="Neon"
667
	pt.Size=Vector3.new()pt.CFrame=(CFrame.new(OldPos.p,Pos.p)*CFrame.new(0,0,-(Pos.p-OldPos.p).Magnitude/2))*CFrame.Angles(0,math.rad(90),0)
668
	pt.Anchored=1 pt.CanCollide=nil
669
	if Options.Fade then pt.Transparency=1 else pt.Transparency=Options.Transparency end
670
	local Mesh=Instance.new("SpecialMesh",pt)Mesh.MeshType="Cylinder"Mesh.Scale=Vector3.new((Pos.p-OldPos.p).Magnitude,Size,Size)*20
671
	spawn(function()local tr=pt.Transparency for i=0,1,Time/100 do pt.Transparency=lerp(tr,1,i)sw()Mesh.Scale=Mesh.Scale-Vector3.new(0,Options.SizeFade,Options.SizeFade)end pt:Destroy()end)
672
end
673
--Lightning Options (table) (n = default) : Fade=false (fading by range?) , AutoSegment=false , Transparency=0 , LightningSiz=1 , Block = false , SizeFade=0
674
--I've added table option to dodge INSANE OPTIONS like some my scripts (Destroyer)... that was terrible.
675
local NormalAttackNumber=0 Holding={}
676
Mouse.KeyDown:connect(function(k3y)
677
	Holding[k3y]=true
678
	if not Active then
679
		if k3y=="e"and GetCDown"Flawing Light"then
680
			DoCDown("Flawing Light",.5)
681
			for i=1,3 do
682
			local part=Instance.new("Part",Effects)part.Size=Vector3.new(1,1,1)part.Shape="Ball"ToMesh(part)part.Anchored=1
683
			part.Material="Neon"part.Color=mcol
684
			part.CFrame=CFrame.new((RootPart.CFrame+Vector3.new(math.random(-50,50)/10,5+math.random(-50,50)/10,math.random(-50,50)/10)).p,Mouse.Hit.p)
685
			spawn(function()for i=1,100 do
686
			local h,p=RayForMovingObj(part,1)
687
			if h==nil then part.CFrame=part.CFrame*CFrame.new(0,0,-1)
688
			else break end sw()
689
			end
690
			Region3Find(12,part.CFrame,function(p,h)h.Health=nil GlitchParts(p,200,60,1)p:Destroy()end,1)
691
			local b,g=EfcGUI(part)part.Transparency=1
692
			g.Rotation=45 for i=0,60 do	b.Size=b.Size:lerp(UDim2.new(18,0,18,0),.1)sw()g.BackgroundTransparency=i/60
693
			end
694
			part:Destroy()end)
695
			sw(6)
696
			end
697
		end
698
		if k3y=="r"and GetCDown"Infinite Bright"then Active=true
699
			walkspeed=60 chatfunc("Feel the Light...")
700
			Sound(255679384,PC,4,3.7)Sound(392838370,PC,2,1)
701
			for i=0,1,.02 do
702
				Anim({CFrame.new(0,1,0)*CFrame.Angles(0,0,0),
703
				CFrame.new(0,1.5,0)*CFrame.Angles(0,0,0),
704
				CFrame.new(.5,.3,-.5)*CFrame.Angles(.3,3.1,1.4),
705
				CFrame.new(-1.4,1.2,0)*CFrame.Angles(math.rad(180),0,-.1),
706
				CFrame.new(.5,-2,0)*CFrame.Angles(0,0,.1),
707
				CFrame.new(-.5,-2,0)*CFrame.Angles(0,0,-.1),
708
				},.4)sw()
709
			end
710
			spawn(function()local keepit=4 local num=0
711
				while sw(keepit)and Active do
712
					if num<78 then num=num+1 else keepit=8 end
713
					Camera.CFrame=Camera.CFrame*CFrame.Angles(math.rad(math.random(-10,10)/20),math.rad(math.random(-10,10)/20),0)
714
					Sound(1145252750,PC,1,2)
715
					local CF=CFrame.new(LArm.CFrame.p,Mouse.Hit.p)
716
					local h,p=RayForMovingObj(CF,4000)
717
					LightningEffect({p,LArm.CFrame*CFrame.new(0,-1,0)},10,.4,10,Color3.new(1,1,.7),{LightningSiz=.5,SizeFade=1,Fade=true})
718
					local ref=spawnref(p)
719
					local b,g=EfcGUI(ref)
720
					spawn(function()g.Rotation=math.random(360)for i=0,30 do	b.Size=b.Size:lerp(UDim2.new(10,0,10,0),.1)sw()g.BackgroundTransparency=i/30
721
					end ref:Destroy()end)
722
					Region3Find(7,p,function(p,h)h.Health=nil p:Destroy()for i=1,2 do local efc=Instance.new("Part")efc.Size=p.Size efc.Position=p.CFrame.p
723
					efc.Parent=Effects efc.Anchored=1 efc.CanCollide=nil
724
					efc.Material="Neon"efc.Color=mcol local away=Vector3.new(math.random(-100,100),math.random(-100,100),math.random(-100,100))/500
725
					spawn(function()for i=0,1,.01 do efc.Transparency=i efc.CFrame=efc.CFrame+away sw()end efc:Destroy()end)end end,1)
726
				end
727
			end)local num=0
728
			while sw()and(Holding.r or num<45)do if num<46 then num=num+1 end
729
				Anim({CFrame.new(0,1,0)*CFrame.Angles(0,-1,0),
730
				CFrame.new(0,1.5,0)*CFrame.Angles(0,0,0),
731
				CFrame.new(.5,.3,-.5)*CFrame.Angles(.3,3.1,1.4),
732
				CFrame.new(-1.8,.3,-.9)*CFrame.Angles(0,-.8,-1.6),
733
				CFrame.new(.5,-2,0)*CFrame.Angles(0,0,.1),
734
				CFrame.new(-.5,-2,0)*CFrame.Angles(0,0,-.1),
735
				},.6)sw()
736
			end
737
			DoCDown("Infinite Bright",1)
738
			Active=nil
739
		end
740
		if k3y=="t"and GetCDown"Blink"then
741
			local Pos=Mouse.Hit local OldCF=RootPart.CFrame
742
			if Mouse.Target then
743
				Sound(289556450,Effects,5)Sound(1012554393,Effects,1)
744
				RootPart.CFrame=Pos+Vector3.new(0,2,0)local CF=RootPart.CFrame
745
				local ref=spawnref(OldCF)local b=Instance.new("BillboardGui",ref)b.Size=UDim2.new(30,0,30,0)
746
				b.AlwaysOnTop=1 local d=Instance.new("ImageLabel",b)d.BackgroundTransparency=1 d.Image="rbxassetid://328647556"d.Size=UDim2.new(1,0,1,0)
747
				spawn(function()for i=0,1,.025 do d.Rotation=lerp(d.Rotation,180,.15)sw()end for i=0,1,.05 do d.ImageTransparency=i sw()end ref:Destroy()end)
748
				local ref=spawnref(OldCF)local b=Instance.new("BillboardGui",ref)b.Size=UDim2.new(10,0,10,0)
749
				b.AlwaysOnTop=1 local d=Instance.new("ImageLabel",b)d.BackgroundTransparency=1 d.Image="rbxassetid://328647556"d.Size=UDim2.new(1,0,1,0)
750
				spawn(function()for i=0,1,.025 do d.Rotation=lerp(d.Rotation,-180,.15)sw()end for i=0,1,.05 do d.ImageTransparency=i sw()end ref:Destroy()end)
751
				spawn(function()
752
				local Model=DoSquare(CF*CFrame.new(math.random(-100,100)/50,math.random(-100,100)/50,math.random(-100,100)/50),CF*CFrame.new(math.random(-100,100)/50,math.random(-100,100)/50,math.random(-100,100)/50),OldCF*CFrame.new(math.random(-100,100)/50,math.random(-100,100)/50,math.random(-100,100)/50),OldCF*CFrame.new(math.random(-100,100)/50,math.random(-100,100)/50,math.random(-100,100)/50),Effects,{Transparency=1})
753
				for i=0,1,.05 do ReDrawSqu(Model,CF*CFrame.new(math.random(-100,100)/50,math.random(-100,100)/50,math.random(-100,100)/50),CF*CFrame.new(math.random(-100,100)/50,math.random(-100,100)/50,math.random(-100,100)/50),OldCF*CFrame.new(math.random(-100,100)/50,math.random(-100,100)/50,math.random(-100,100)/50),OldCF*CFrame.new(math.random(-100,100)/50,math.random(-100,100)/50,math.random(-100,100)/50),{Transparency=i})
754
				sw()end Model:Destroy()end)DoCDown("Blink",1)TriangleSpam(20,RootPart.CFrame.p,800,40)
755
			end
756
		end
757
		if k3y=="z"and GetCDown"Judgement Prism"then Active=true walkspeed=30
758
			for i=0,1,.05 do
759
				Anim({CFrame.new(0,1,0)*CFrame.Angles(0,0,0),
760
				CFrame.new(0,1.5,0)*CFrame.Angles(0,0,0),
761
				CFrame.new(1.3,1.4,0)*CFrame.Angles(math.rad(180),0,.1),
762
				CFrame.new(-1.3,1.4,0)*CFrame.Angles(math.rad(180),0,-.1),
763
				CFrame.new(.5,-2,0)*CFrame.Angles(0,0,.1),
764
				CFrame.new(-.5,-2,0)*CFrame.Angles(0,0,-.1),
765
				},.5)sw()
766
			end
767
			Active=false
768
			DoCDown("Judgement Prism",12)
769
			local Pos=CFrame.new(RootPart.Position)
770
			local PrismTop=CFrame.new(0,12,0)local PrismSide=CFrame.new(9,0,0)--just two number is easier I think
771
			--Animate Prism
772
			local m=DoPrism(Pos,PrismTop,PrismSide,Effects,{Transparency=1})
773
			for i=1,.8,-.0025 do
774
			Pos=Pos*CFrame.new(0,.1,0)*CFrame.Angles(0,.05,0)
775
			PrismTop=PrismTop:lerp(CFrame.new(0,9,0),.1)PrismSide=PrismSide:lerp(CFrame.new(6,0,0),.1)
776
			ReDrawPrism(m,Pos,PrismTop,PrismSide,Effects,{Transparency=i})
777
			sw()
778
			end m:Destroy()
779
			local sound=GetInstance("Sound",PC)sound.SoundId="rbxassetid://255679384"sound.Volume=5
780
			sound:Play()
781
			while 1 and(sound.Parent~=nil and sound.Playing and sound.Parent.Parent~=nil )do
782
			Pos=Pos*CFrame.Angles(0,.05,0)
783
			local m=DoPrism(Pos,PrismTop,PrismSide,Effects,{Transparency=.8})
784
			sw()
785
			m:Destroy()
786
			end
787
			Sound(878000314,Effects,2.5)LightningEffect({Pos,Pos+Vector3.new(0,300,0)},60,3,1,mcol,{SizeFade=.5,Fade=true,LightningSiz=3})
788
			TriangleSpam(40,Pos,1200,70)
789
			sw(60)
790
			for i=1,10 do
791
				local Pos=Mouse.Hit
792
				LightningEffect({Pos,Pos+Vector3.new(0,300,0)},60,1,5,mcol,{SizeFade=.5,Fade=true,LightningSiz=5})
793
				TriangleSpam(4,Pos,1200,120)Sound(480357531,Effects,2)Sound(1145252750,Effects,2)
794
				for i=1,10 do
795
					local pt=Instance.new("Part",Effects)pt.Color=mcol pt.Material="Neon"
796
					pt.Anchored=1 pt.CanCollide=nil pt.Size=Vector3.new()local m=ToMesh(pt)
797
					local CF=Pos*rc()pt.CFrame=CF local add=math.random(5,100)/100
798
					spawn(function()
799
					for i=1,0,-.01 do m.Scale=Vector3.new(i,i,i)*20 pt.CFrame=pt.CFrame+Vector3.new(0,add,0)sw()end pt:Destroy()
800
					end)
801
				end
802
				Region3Find(17,Pos,function(p,h)
803
				if h.Parent then
804
					for i,p in pairs(h.Parent:GetDescendants())do
805
						if p:IsA"BasePart"then
806
							local part=Instance.new("Part",Effects)part.Material="Neon"part.Size=p.Size
807
							part.Color=mcol part.Anchored=1 part.CanCollide=nil part.CFrame=CFrame.new(p.Position)
808
							local add=Vector3.new(math.random(-100,100)/200,math.random(-100,100)/200,math.random(-100,100)/200)
809
							spawn(function()for i=0,1,.01 do part.CFrame=part.CFrame+add part.Transparency=i sw()end part:Destroy()end)
810
						end
811
					end h:Destroy()p.Parent:Destroy()
812
				end
813
				end,1)
814
				--[[spawn(function()local ref=spawnref(Pos)
815
				local b,g=EfcGUI(ref)ref.Transparency=1
816
				g.Rotation=45 for i=0,60 do	b.Size=b.Size:lerp(UDim2.new(18,0,18,0),.1)sw()g.BackgroundTransparency=i/60
817
				end ref:Destroy()end)]]
818
				sw(20)
819
			end
820
		end
821
	end
822
	if k3y=="m"then MusicEnabled=not MusicEnabled end
823
end)
824
Mouse.KeyUp:connect(function(k3y)
825
	if Holding[k3y]then Holding[k3y]=nil end
826
end)
827
if 1 then
828
Mouse.Button1Down:connect(function()
829
	if not Active then
830
	end
831
end)
832
end
833
print"Load finished."print"Hello world!"
834
warn'Credits : her boy friend:koonguy98755 , Do not erase this.'
835
warn'For my love roblox'