View difference between Paste ID: bt2HK4ec and TWhL6Q0p
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2-
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ not hl/") end
2+
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6-
    print("FE Compatibility code V2 by Mokiros")
6+
	print("FE Compatibility code V2 by Mokiros")
7-
    local RealPlayer = RealPlayer
7+
	local RealPlayer = RealPlayer
8-
    script.Parent = RealPlayer.Character
8+
	script.Parent = RealPlayer.Character
9
10-
    --Fake event to make stuff like Mouse.KeyDown work
10+
	--Fake event to make stuff like Mouse.KeyDown work
11-
    local Disconnect_Function = function(this)
11+
	local Disconnect_Function = function(this)
12-
        this[1].Functions[this[2]] = nil
12+
		this[1].Functions[this[2]] = nil
13
	end
14-
    local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
14+
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
15-
    local FakeEvent_Metatable = {__index={
15+
	local FakeEvent_Metatable = {__index={
16-
        Connect = function(this,f)
16+
		Connect = function(this,f)
17-
            local i = tostring(math.random(0,10000))
17+
			local i = tostring(math.random(0,10000))
18-
            while this.Functions[i] do
18+
			while this.Functions[i] do
19-
                i = tostring(math.random(0,10000))
19+
				i = tostring(math.random(0,10000))
20
			end
21-
            this.Functions[i] = f
21+
			this.Functions[i] = f
22-
            return setmetatable({this,i},Disconnect_Metatable)
22+
			return setmetatable({this,i},Disconnect_Metatable)
23
		end
24-
    }}
24+
	}}
25-
    FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
25+
	FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
26-
    local function fakeEvent()
26+
	local function fakeEvent()
27-
        return setmetatable({Functions={}},FakeEvent_Metatable)
27+
		return setmetatable({Functions={}},FakeEvent_Metatable)
28
	end
29
30-
    --Creating fake input objects with fake variables
30+
	--Creating fake input objects with fake variables
31
    local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
32
    FakeMouse.keyUp = FakeMouse.KeyUp
33
    FakeMouse.keyDown = FakeMouse.KeyDown
34-
    local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
34+
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
35-
    local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
35+
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
36-
        CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
36+
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
37-
    end}
37+
	end}
38-
    --Merged 2 functions into one by checking amount of arguments
38+
	--Merged 2 functions into one by checking amount of arguments
39-
    CAS.UnbindAction = CAS.BindAction
39+
	CAS.UnbindAction = CAS.BindAction
40
41-
    --This function will trigger the events that have been :Connect()'ed
41+
	--This function will trigger the events that have been :Connect()'ed
42-
    local function TriggerEvent(self,ev,...)
42+
	local function TriggerEvent(self,ev,...)
43-
        for _,f in pairs(self[ev].Functions) do
43+
		for _,f in pairs(self[ev].Functions) do
44-
            f(...)
44+
			f(...)
45
		end
46
	end
47-
    FakeMouse.TriggerEvent = TriggerEvent
47+
	FakeMouse.TriggerEvent = TriggerEvent
48-
    UIS.TriggerEvent = TriggerEvent
48+
	UIS.TriggerEvent = TriggerEvent
49
50-
    --Client communication
50+
	--Client communication
51-
    local Event = Instance.new("RemoteEvent")
51+
	local Event = Instance.new("RemoteEvent")
52-
    Event.Name = "UserInput_Event"
52+
	Event.Name = "UserInput_Event"
53-
    Event.OnServerEvent:Connect(function(plr,io)
53+
	Event.OnServerEvent:Connect(function(plr,io)
54-
        if plr~=RealPlayer then return end
54+
	    if plr~=RealPlayer then return end
55-
        FakeMouse.Target = io.Target
55+
		FakeMouse.Target = io.Target
56-
        FakeMouse.Hit = io.Hit
56+
		FakeMouse.Hit = io.Hit
57-
        if not io.isMouse then
57+
		if not io.isMouse then
58-
            local b = io.UserInputState == Enum.UserInputState.Begin
58+
			local b = io.UserInputState == Enum.UserInputState.Begin
59-
            if io.UserInputType == Enum.UserInputType.MouseButton1 then
59+
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
60-
                return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
60+
				return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
61
			end
62-
            if io.UserInputType == Enum.UserInputType.MouseButton2 then
62+
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
63-
                return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
63+
				return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
64
			end
65-
            for _,t in pairs(CAS.Actions) do
65+
			for _,t in pairs(CAS.Actions) do
66-
                for _,k in pairs(t.Keys) do
66+
				for _,k in pairs(t.Keys) do
67-
                    if k==io.KeyCode then
67+
					if k==io.KeyCode then
68-
                        t.Function(t.Name,io.UserInputState,io)
68+
						t.Function(t.Name,io.UserInputState,io)
69
					end
70
				end
71
			end
72-
            FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
72+
			FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
73-
            UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
73+
			UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
74
	    end
75
	end)
76-
    Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
76+
	Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
77-
    local Mouse = owner:GetMouse()
77+
	local Mouse = owner:GetMouse()
78-
    local UIS = game:GetService("UserInputService")
78+
	local UIS = game:GetService("UserInputService")
79-
    local input = function(io,RobloxHandled)
79+
	local input = function(io,RobloxHandled)
80-
        if RobloxHandled then return end
80+
		if RobloxHandled then return end
81-
        --Since InputObject is a client-side instance, we create and pass table instead
81+
		--Since InputObject is a client-side instance, we create and pass table instead
82-
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
82+
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
83
	end
84-
    UIS.InputBegan:Connect(input)
84+
	UIS.InputBegan:Connect(input)
85-
    UIS.InputEnded:Connect(input)
85+
	UIS.InputEnded:Connect(input)
86
87-
    local h,t
87+
	local h,t
88-
    --Give the server mouse data every second frame, but only if the values changed
88+
	--Give the server mouse data every second frame, but only if the values changed
89-
    --If player is not moving their mouse, client won't fire events
89+
	--If player is not moving their mouse, client won't fire events
90-
    local HB = game:GetService("RunService").Heartbeat
90+
	local HB = game:GetService("RunService").Heartbeat
91-
    while true do
91+
	while true do
92-
        if h~=Mouse.Hit or t~=Mouse.Target then
92+
		if h~=Mouse.Hit or t~=Mouse.Target then
93-
            h,t=Mouse.Hit,Mouse.Target
93+
			h,t=Mouse.Hit,Mouse.Target
94-
            Event:FireServer({isMouse=true,Target=t,Hit=h})
94+
			Event:FireServer({isMouse=true,Target=t,Hit=h})
95
		end
96-
        --Wait 2 frames
96+
		--Wait 2 frames
97-
        for i=1,2 do
97+
		for i=1,2 do
98-
            HB:Wait()
98+
			HB:Wait()
99
		end
100-
    end]==],script)
100+
	end]==],script)
101
102-
    ----Sandboxed game object that allows the usage of client-side methods and services
102+
	----Sandboxed game object that allows the usage of client-side methods and services
103-
    --Real game object
103+
	--Real game object
104-
    local RealGame = game
104+
	local RealGame = game
105
106-
    --Metatable for fake service
106+
	--Metatable for fake service
107-
    local FakeService_Metatable = {
107+
	local FakeService_Metatable = {
108-
        __index = function(self,k)
108+
		__index = function(self,k)
109-
            local s = rawget(self,"_RealService")
109+
			local s = rawget(self,"_RealService")
110-
            if s then
110+
			if s then
111-
                return typeof(s[k])=="function"
111+
				return typeof(s[k])=="function"
112-
                and function(_,...)return s[k](s,...)end or s[k]
112+
				and function(_,...)return s[k](s,...)end or s[k]
113
			end
114-
        end,
114+
		end,
115-
        __newindex = function(self,k,v)
115+
		__newindex = function(self,k,v)
116-
            local s = rawget(self,"_RealService")
116+
			local s = rawget(self,"_RealService")
117-
            if s then s[k]=v end
117+
			if s then s[k]=v end
118
		end
119
	}
120-
    local function FakeService(t,RealService)
120+
	local function FakeService(t,RealService)
121-
        t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
121+
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
122-
        return setmetatable(t,FakeService_Metatable)
122+
		return setmetatable(t,FakeService_Metatable)
123
	end
124
125-
    --Fake game object
125+
	--Fake game object
126-
    local FakeGame = {
126+
	local FakeGame = {
127-
        GetService = function(self,s)
127+
		GetService = function(self,s)
128-
            return rawget(self,s) or RealGame:GetService(s)
128+
			return rawget(self,s) or RealGame:GetService(s)
129-
        end,
129+
		end,
130-
        Players = FakeService({
130+
		Players = FakeService({
131-
            LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
131+
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
132-
        },"Players"),
132+
		},"Players"),
133-
        UserInputService = FakeService(UIS,"UserInputService"),
133+
		UserInputService = FakeService(UIS,"UserInputService"),
134-
        ContextActionService = FakeService(CAS,"ContextActionService"),
134+
		ContextActionService = FakeService(CAS,"ContextActionService"),
135-
        RunService = FakeService({
135+
		RunService = FakeService({
136-
            _btrs = {},
136+
			_btrs = {},
137-
            RenderStepped = RealGame:GetService("RunService").Heartbeat,
137+
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
138-
            BindToRenderStep = function(self,name,_,fun)
138+
			BindToRenderStep = function(self,name,_,fun)
139-
                self._btrs[name] = self.Heartbeat:Connect(fun)
139+
				self._btrs[name] = self.Heartbeat:Connect(fun)
140-
            end,
140+
			end,
141-
            UnbindFromRenderStep = function(self,name)
141+
			UnbindFromRenderStep = function(self,name)
142-
                self._btrs[name]:Disconnect()
142+
				self._btrs[name]:Disconnect()
143-
            end,
143+
			end,
144-
        },"RunService")
144+
		},"RunService")
145
	}
146-
    rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
146+
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
147-
    FakeGame.service = FakeGame.GetService
147+
	FakeGame.service = FakeGame.GetService
148-
    FakeService(FakeGame,game)
148+
	FakeService(FakeGame,game)
149-
    --Changing owner to fake player object to support owner:GetMouse()
149+
	--Changing owner to fake player object to support owner:GetMouse()
150-
    game,owner = FakeGame,FakeGame.Players.LocalPlayer
150+
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
151
end
152
--//====================================================\\--
153
--||        Edited By ggrelior333 (follow me :D )
154
--\\====================================================//--
155
 
156
 
157
----------skidded by blobgi jk
158
local plr = game:service'Players'.LocalPlayer
159
local char = plr.Character
160
local hum = char.Humanoid
161
local hed = char.Head
162
Character = char
163
Torso = Character["Torso"]
164
Head = Character["Head"]
165
RightArm = Character["Right Arm"]
166
LeftArm = Character["Left Arm"]
167
RightLeg = Character["Right Leg"]
168
LeftLeg = Character["Left Leg"]
169
       
170
        local particleemitter = Instance.new('ParticleEmitter', LeftArm)
171
        particleemitter.VelocitySpread = 350
172
        particleemitter.Lifetime = NumberRange.new(1)
173
        particleemitter.Speed = NumberRange.new(0)
174
cringememe= {}
175
for i=0, 19 do
176
  cringememe[#cringememe + 1] = NumberSequenceKeypoint.new(i/19, math.random(0.5, 0.9))
177
end
178
particleemitter.Size = NumberSequence.new(cringememe)
179
        particleemitter.Rate = 50
180
        particleemitter.LockedToPart = true
181
        particleemitter.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.8, 0), NumberSequenceKeypoint.new(1, 1)})
182
        particleemitter.LightEmission = 1
183
        particleemitter.Texture = "rbxassetid://584827399"
184
        particleemitter.Color = ColorSequence.new(BrickColor.new("White").Color)
185
 
186
        local particleemitter = Instance.new('ParticleEmitter', Torso)
187
        particleemitter.VelocitySpread = 250
188
        particleemitter.Lifetime = NumberRange.new(3)
189
        particleemitter.Speed = NumberRange.new(1.5)
190
youAreATHOT = {}
191
for i=0, 19 do
192
  youAreATHOT[#youAreATHOT + 1] = NumberSequenceKeypoint.new(i/19, math.random(0.5, 0.9))
193
end
194
      particleemitter.Size = NumberSequence.new(youAreATHOT)
195
        particleemitter.Rate = 50
196
        particleemitter.LockedToPart = false
197
        particleemitter.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.8, 0), NumberSequenceKeypoint.new(1, 1)})
198
        particleemitter.LightEmission = 1
199
        particleemitter.Texture = "rbxassetid://584827399"
200
        particleemitter.Color = ColorSequence.new(BrickColor.new("White").Color)
201
 
202
        local particleemitter = Instance.new('ParticleEmitter', RightArm)
203
        particleemitter.VelocitySpread = 350
204
        particleemitter.Lifetime = NumberRange.new(1)
205
        particleemitter.Speed = NumberRange.new(0)
206
cringememe2= {}
207
for i=0, 19 do
208
  cringememe2[#cringememe2 + 1] = NumberSequenceKeypoint.new(i/19, math.random(0.5, 0.9))
209
end
210
particleemitter.Size = NumberSequence.new(cringememe2)
211
        particleemitter.Rate = 50
212
        particleemitter.LockedToPart = true
213
        particleemitter.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.8, 0), NumberSequenceKeypoint.new(1, 1)})
214
        particleemitter.LightEmission = 1
215
        particleemitter.Texture = "rbxassetid://584827399"
216
        particleemitter.Color = ColorSequence.new(BrickColor.new("White").Color)
217
 
218
        local particleemitter = Instance.new('ParticleEmitter', RightLeg)
219
        particleemitter.VelocitySpread = 350
220
        particleemitter.Lifetime = NumberRange.new(1)
221
        particleemitter.Speed = NumberRange.new(0)
222
cringememe3= {}
223
for i=0, 19 do
224
  cringememe3[#cringememe3 + 1] = NumberSequenceKeypoint.new(i/19, math.random(0.5, 0.9))
225
end
226
particleemitter.Size = NumberSequence.new(cringememe3)
227
        particleemitter.Rate = 50
228
        particleemitter.LockedToPart = true
229
        particleemitter.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.8, 0), NumberSequenceKeypoint.new(1, 1)})
230
        particleemitter.LightEmission = 1
231
        particleemitter.Texture = "rbxassetid://584827399"
232
        particleemitter.Color = ColorSequence.new(BrickColor.new("White").Color)
233
 
234
        local particleemitter = Instance.new('ParticleEmitter', LeftLeg)
235
        particleemitter.VelocitySpread = 350
236
        particleemitter.Lifetime = NumberRange.new(1)
237
        particleemitter.Speed = NumberRange.new(0)
238
cringememe4= {}
239
for i=0, 19 do
240
  cringememe4[#cringememe4 + 1] = NumberSequenceKeypoint.new(i/19, math.random(0.5, 0.9))
241
end
242
particleemitter.Size = NumberSequence.new(cringememe4)
243
        particleemitter.Rate = 50
244
        particleemitter.LockedToPart = true
245
        particleemitter.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.8, 0), NumberSequenceKeypoint.new(1, 1)})
246
        particleemitter.LightEmission = 1
247
        particleemitter.Texture = "rbxassetid://584827399"
248
        particleemitter.Color = ColorSequence.new(BrickColor.new("White").Color)
249
       
250
       
251
 
252
---------------------------------
253
local textblin = Instance.new("BillboardGui", game.Players.LocalPlayer.Character.Head)
254
textblin.Adornee = cykablyat
255
textblin.Name = "ky"
256
textblin.Size = UDim2.new(2, 0, 1.2, 0)
257
textblin.StudsOffset = Vector3.new(-5, 3, 0)
258
local textblin= Instance.new("TextLabel", textblin)
259
textblin.Size = UDim2.new(6, 0, 1, 0)
260
textblin.FontSize = "Size8"
261
textblin.TextScaled = true
262
textblin.TextTransparency = 0
263
textblin.BackgroundTransparency = 1
264
textblin.TextTransparency = 0
265
textblin.TextStrokeTransparency = 0
266
textblin.Font = "SciFi"
267
textblin.TextStrokeColor3 = Color3.new(0, 0, 255)
268
textblin.Text = "ggrelior333's return"
269
-------------------------
270
TrailSettings = {
271
    Lifetime = 0.5,
272
    Texture = 'rbxassetid://31270182',
273
    --Color1 is for UpperBody and Accessories, Color2 is for Lower Body
274
    Color1 = ColorSequence.new(BrickColor.new('Toothpaste').Color,BrickColor.new('Royal purple').Color),
275
    Color2 = ColorSequence.new(BrickColor.new('Institutional white').Color,BrickColor.new('Really black').Color),
276
    AllBody = true,
277
    UpperBodyOnly = false,
278
    LowerBodyOnly = false,
279
    Accessories = false,
280
    Extras = true,
281
    R15 = false, --Change to true if you're using R15
282
    R15Parts = {
283
        'UpperTorso',
284
        'LowerTorso',
285
    }
286
}
287
 
288
local Trail; --Making other Trails uses this in this Script
289
 
290
--UpperBody Function
291
UpperBody = function()
292
    if TrailSettings.R15 == false then
293
        A0 = Instance.new('Attachment',Character.Torso)
294
        A1 = Instance.new('Attachment',Character.Head)
295
    A2 = Instance.new('Attachment',Character['Right Arm'])
296
    A3 = Instance.new('Attachment',Character['Left Arm'])
297
Trail = Instance.new('Trail',Character)
298
Trail.Attachment0 = A0
299
Trail.Attachment1 = A1
300
Trail.Texture = TrailSettings.Texture
301
Trail.Color = TrailSettings.Color1
302
Trail.Lifetime = TrailSettings.Lifetime
303
local Trail2 = Trail:Clone()
304
Trail2.Parent = Character
305
Trail2.Attachment1 = A2
306
local Trail3 = Trail:Clone()
307
Trail3.Parent = Character
308
Trail3.Attachment1 = A3
309
local Trail6 = Trail:Clone()
310
Trail6.Parent = Character
311
Trail6.Attachment0 = A1
312
Trail6.Attachment1 = A2
313
local Trail7 = Trail:Clone()
314
Trail7.Parent = Character
315
Trail7.Attachment0 = A1
316
Trail7.Attachment1 = A3
317
    else
318
    A0 = Instance.new('Attachment',Character[TrailSettings.R15Parts[1]])
319
    A0R = Instance.new('Attachment',Character[TrailSettings.R15Parts[2]])
320
    A1 = Instance.new('Attachment',Character.Head)
321
    A2 = Instance.new('Attachment',Character['RightUpperArm'])
322
    A2R = Instance.new('Attachment',Character['RightLowerArm'])
323
    A3 = Instance.new('Attachment',Character['LeftUpperArm'])
324
    A3R = Instance.new('Attachment',Character['LeftLowerArm'])
325
Trail = Instance.new('Trail',Character)
326
Trail.Attachment0 = A0
327
Trail.Attachment1 = A1
328
Trail.Texture = TrailSettings.Texture
329
Trail.Color = TrailSettings.Color1
330
Trail.Lifetime = TrailSettings.Lifetime
331
local Trail2 = Trail:Clone()
332
Trail2.Parent = Character
333
Trail2.Attachment1 = A2
334
local Trail3 = Trail:Clone()
335
Trail3.Parent = Character
336
Trail3.Attachment1 = A3
337
local Trail6 = Trail:Clone()
338
Trail6.Parent = Character
339
Trail6.Attachment0 = A1
340
Trail6.Attachment1 = A2
341
local Trail7 = Trail:Clone()
342
Trail7.Parent = Character
343
Trail7.Attachment0 = A1
344
Trail7.Attachment1 = A3
345
--R15 Trails
346
local Trail1R = Trail:Clone()
347
Trail1R.Parent = Character
348
Trail1R.Attachment1 = A2R
349
local Trail2R = Trail:Clone()
350
Trail2R.Parent = Character
351
Trail2R.Attachment1 = A3R
352
local Trail6R = Trail:Clone()
353
Trail6.Parent = Character
354
Trail6.Attachment0 = A1
355
Trail6.Attachment1 = A2R
356
local Trail7R = Trail:Clone()
357
Trail7.Parent = Character
358
Trail7.Attachment0 = A1
359
Trail7.Attachment1 = A3R
360
end
361
end
362
 
363
--Lower Body Function
364
LowerBody = function()
365
    if TrailSettings.R15 == false then
366
        A4 = Instance.new('Attachment',Character['Right Leg'])
367
        A5 = Instance.new('Attachment',Character['Left Leg'])
368
local Trail4 = Trail:Clone()
369
Trail4.Parent = Character
370
Trail4.Attachment1 = A4
371
local Trail5 = Trail:Clone()
372
Trail5.Parent = Character
373
Trail5.Attachment1 = A5
374
local Trail8 = Trail:Clone()
375
Trail8.Parent = Character
376
Trail8.Attachment0 = A2
377
Trail8.Attachment1 = A4
378
Trail8.Color = TrailSettings.Color2
379
local Trail9 = Trail:Clone()
380
Trail9.Parent = Character
381
Trail9.Attachment0 = A3
382
Trail9.Attachment1 = A5
383
Trail9.Color = TrailSettings.Color2
384
local FT = Trail:Clone()
385
FT.Parent = Character
386
FT.Attachment0 = A4
387
FT.Attachment1 = A5
388
FT.Color = TrailSettings.Color2
389
else
390
        A4 = Instance.new('Attachment',Character['RightLowerLeg'])
391
        A4R = Instance.new('Attachment',Character['RightUpperLeg'])
392
        A5 = Instance.new('Attachment',Character['LeftLowerLeg'])
393
        A5R = Instance.new('Attachment',Character['LeftUpperLeg'])
394
        local Trail4 = Trail:Clone()
395
Trail4.Parent = Character
396
Trail4.Attachment1 = A4
397
local Trail5 = Trail:Clone()
398
Trail5.Parent = Character
399
Trail5.Attachment1 = A5
400
local Trail8 = Trail:Clone()
401
Trail8.Parent = Character
402
Trail8.Attachment0 = A2
403
Trail8.Attachment1 = A4
404
Trail8.Color = TrailSettings.Color2
405
local Trail9 = Trail:Clone()
406
Trail9.Parent = Character
407
Trail9.Attachment0 = A3
408
Trail9.Attachment1 = A5
409
Trail9.Color = TrailSettings.Color2
410
local FT = Trail:Clone()
411
FT.Parent = Character
412
FT.Attachment0 = A4
413
FT.Attachment1 = A5
414
FT.Color = TrailSettings.Color2
415
--R15 Trails
416
local Trail3R = Trail:Clone()
417
Trail3R.Parent = Character
418
Trail3R.Attachment1 = A4R
419
local Trail4R = Trail:Clone()
420
Trail4R.Parent = Character
421
Trail4R.Attachment1 = A5R
422
local Trail8 = Trail:Clone()
423
Trail8.Parent = Character
424
Trail8.Attachment0 = A2R
425
Trail8.Attachment1 = A4R
426
Trail8.Color = TrailSettings.Color2
427
local Trail9 = Trail:Clone()
428
Trail9.Parent = Character
429
Trail9.Attachment0 = A3R
430
Trail9.Attachment1 = A5R
431
Trail9.Color = TrailSettings.Color2
432
local FT2R = Trail:Clone()
433
FT2R.Parent = Character
434
FT2R.Attachment0 = A4R
435
FT2R.Attachment1 = A5R
436
FT2R.Color = TrailSettings.Color2
437
end
438
end
439
 
440
--All Body Function calling Both Functions
441
AllBody = function()
442
    UpperBody()
443
    LowerBody()
444
end
445
 
446
--Checking to make sure that Only some Variables are Selected else do All Body
447
if TrailSettings.AllBody == true and TrailSettings.UpperBodyOnly == true and TrailSettings.LowerBodyOnly == true then
448
    TrailSettings.UpperBodyOnly = false
449
    TrailSettings.LowerBodyOnly = false
450
elseif TrailSettings.AllBody == true and TrailSettings.UpperBodyOnly == false and TrailSettings.LowerBodyOnly == true then
451
    TrailSettings.UpperBodyOnly = false
452
    TrailSettings.LowerBodyOnly = false
453
elseif TrailSettings.AllBody == true and TrailSettings.UpperBodyOnly == true and TrailSettings.LowerBodyOnly == false then
454
    TrailSettings.UpperBodyOnly = false
455
    TrailSettings.LowerBodyOnly = false
456
elseif TrailSettings.AllBody == false and TrailSettings.UpperBodyOnly == true and TrailSettings.LowerBodyOnly == true then
457
    TrailSettings.AllBody = true
458
    TrailSettings.UpperBodyOnly = false
459
    TrailSettings.LowerBodyOnly = false
460
end
461
 
462
--Call Trail Functions
463
if TrailSettings.UpperBodyOnly == true then
464
    UpperBody()
465
    print('Called Upper Body Trail')
466
elseif TrailSettings.LowerBodyOnly == true then
467
    LowerBody()
468
    print('Called Lower Body Trail')
469
elseif TrailSettings.AllBody == true then
470
    AllBody()
471
    print('Called Full Body Trail')
472
end
473
 
474
--Trails for Accessories
475
if TrailSettings.Accessories == true then
476
for Index,Item in pairs(Character:GetChildren()) do
477
    if Item:IsA'Accessory' then
478
        local AA = Instance.new('Attachment',Item.Handle)
479
        local ATrail = Trail:Clone()
480
        ATrail.Parent = Character
481
        ATrail.Attachment1 = AA
482
    end
483
end
484
end
485
 
486
--Extras
487
if TrailSettings.Extras == true then
488
    --Making an Invisible Platform Part
489
local a = Instance.new('Part',Character)
490
a.CanCollide = false
491
a.Size = Vector3.new(2,.2,2)
492
a.Transparency = 1
493
 
494
--Constantly putting it under your feet
495
if TrailSettings.R15 == false then
496
    spawn(function()
497
    game:GetService('RunService').RenderStepped:connect(function()
498
        a.CFrame = Character.Torso.CFrame * CFrame.new(0,-3,0)
499
    end)
500
end)
501
else
502
    spawn(function()
503
    game:GetService('RunService').RenderStepped:connect(function()
504
        a.CFrame = Character[TrailSettings.R15Parts[2]].CFrame * CFrame.new(0,-2,0)
505
    end)
506
end)
507
end
508
 
509
--Make a Trail from both feet to the Platform
510
spawn(function()
511
    repeat wait() until Trail
512
local AB = Instance.new('Attachment',a)
513
local ABT = Trail:Clone()
514
ABT.Parent = Character
515
ABT.Attachment0 = A4
516
ABT.Attachment1 = AB
517
ABT.Color = TrailSettings.Color2
518
local ABT2 = Trail:Clone()
519
ABT2.Parent = Character
520
ABT2.Attachment0 = A5
521
ABT2.Attachment1 = AB
522
ABT2.Color = TrailSettings.Color2
523
end)
524
end
525
--
526
 
527
wait(0.2)
528
 
529
Player = game:GetService("Players").LocalPlayer
530
PlayerGui = Player.PlayerGui
531
Cam = workspace.CurrentCamera
532
Backpack = Player.Backpack
533
Character = Player.Character
534
Humanoid = Character.Humanoid
535
Mouse = Player:GetMouse()
536
RootPart = Character["HumanoidRootPart"]
537
Torso = Character["Torso"]
538
Head = Character["Head"]
539
RightArm = Character["Right Arm"]
540
LeftArm = Character["Left Arm"]
541
RightLeg = Character["Right Leg"]
542
LeftLeg = Character["Left Leg"]
543
RootJoint = RootPart["RootJoint"]
544
Neck = Torso["Neck"]
545
RightShoulder = Torso["Right Shoulder"]
546
LeftShoulder = Torso["Left Shoulder"]
547
RightHip = Torso["Right Hip"]
548
LeftHip = Torso["Left Hip"]
549
local sick = Instance.new("Sound",Torso)
550
sick.SoundId = "rbxassetid://848439234"
551
sick.Looped = true
552
sick.Pitch = 1
553
sick.Volume = 5
554
sick:Play()
555
 
556
IT = Instance.new
557
CF = CFrame.new
558
VT = Vector3.new
559
RAD = math.rad
560
C3 = Color3.fromRGB
561
UD2 = UDim2.new
562
BRICKC = BrickColor.new
563
ANGLES = CFrame.Angles
564
EULER = CFrame.fromEulerAnglesXYZ
565
COS = math.cos
566
ACOS = math.acos
567
SIN = math.sin
568
ASIN = math.asin
569
ABS = math.abs
570
MRANDOM = math.random
571
FLOOR = math.floor
572
 
573
--//=================================\\
574
--||          USEFUL VALUES
575
--\\=================================//
576
 
577
Animation_Speed = 2
578
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
579
local Speed = 50
580
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
581
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
582
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
583
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
584
local DAMAGEMULTIPLIER = 1
585
local ANIM = "Idle"
586
local ATTACK = false
587
local EQUIPPED = false
588
local HOLD = false
589
local COMBO = 1
590
local Rooted = false
591
local SINE = 0
592
local KEYHOLD = false
593
local CHANGE = 2 / Animation_Speed
594
local WALKINGANIM = false
595
local VALUE1 = false
596
local VALUE2 = false
597
local ROBLOXIDLEANIMATION = IT("Animation")
598
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
599
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
600
--ROBLOXIDLEANIMATION.Parent = Humanoid
601
local WEAPONGUI = IT("ScreenGui", PlayerGui)
602
WEAPONGUI.Name = "Weapon GUI"
603
local Effects = IT("Folder", Character)
604
Effects.Name = "Effects"
605
local ANIMATOR = Humanoid.Animator
606
local ANIMATE = Character.Animate
607
local UNANCHOR = true
608
local LAUGHS = {834001699,834001752,834001797,834001828}
609
local SONGS = {1534958855}
610
local CHOICE = MRANDOM(1)
611
 
612
--//=================================\\
613
--\\=================================//
614
 
615
 
616
--//=================================\\
617
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
618
--\\=================================//
619
 
620
ArtificialHB = Instance.new("BindableEvent", script)
621
ArtificialHB.Name = "ArtificialHB"
622
 
623
script:WaitForChild("ArtificialHB")
624
 
625
frame = Frame_Speed
626
tf = 0
627
allowframeloss = false
628
tossremainder = false
629
lastframe = tick()
630
script.ArtificialHB:Fire()
631
 
632
game:GetService("RunService").Heartbeat:connect(function(s, p)
633
    tf = tf + s
634
    if tf >= frame then
635
        if allowframeloss then
636
            script.ArtificialHB:Fire()
637
            lastframe = tick()
638
        else
639
            for i = 1, math.floor(tf / frame) do
640
                script.ArtificialHB:Fire()
641
            end
642
        lastframe = tick()
643
        end
644
        if tossremainder then
645
            tf = 0
646
        else
647
            tf = tf - frame * math.floor(tf / frame)
648
        end
649
    end
650
end)
651
 
652
--//=================================\\
653
--\\=================================//
654
 
655
--//=================================\\
656
--||          SOME FUNCTIONS
657
--\\=================================//
658
 
659
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
660
    return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
661
end
662
 
663
function PositiveAngle(NUMBER)
664
    if NUMBER >= 0 then
665
        NUMBER = 0
666
    end
667
    return NUMBER
668
end
669
 
670
function NegativeAngle(NUMBER)
671
    if NUMBER <= 0 then
672
        NUMBER = 0
673
    end
674
    return NUMBER
675
end
676
 
677
function Swait(NUMBER)
678
    if NUMBER == 0 or NUMBER == nil then
679
        ArtificialHB.Event:wait()
680
    else
681
        for i = 1, NUMBER do
682
            ArtificialHB.Event:wait()
683
        end
684
    end
685
end
686
 
687
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
688
    local NEWMESH = IT(MESH)
689
    if MESH == "SpecialMesh" then
690
        NEWMESH.MeshType = MESHTYPE
691
        if MESHID ~= "nil" and MESHID ~= "" then
692
            NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
693
        end
694
        if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
695
            NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
696
        end
697
    end
698
    NEWMESH.Offset = OFFSET or VT(0, 0, 0)
699
    NEWMESH.Scale = SCALE
700
    NEWMESH.Parent = PARENT
701
    return NEWMESH
702
end
703
 
704
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
705
    local NEWPART = IT("Part")
706
    NEWPART.formFactor = FORMFACTOR
707
    NEWPART.Reflectance = REFLECTANCE
708
    NEWPART.Transparency = TRANSPARENCY
709
    NEWPART.CanCollide = false
710
    NEWPART.Locked = true
711
    NEWPART.Anchored = true
712
    if ANCHOR == false then
713
        NEWPART.Anchored = false
714
    end
715
    NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
716
    NEWPART.Name = NAME
717
    NEWPART.Size = SIZE
718
    NEWPART.Position = Torso.Position
719
    NEWPART.Material = MATERIAL
720
    NEWPART:BreakJoints()
721
    NEWPART.Parent = PARENT
722
    return NEWPART
723
end
724
 
725
    local function weldBetween(a, b)
726
        local weldd = IT("Weld")
727
        weldd.Part0 = a
728
        weldd.Part1 = b
729
        weldd.C0 = CF()
730
        weldd.C1 = b.CFrame:inverse() * a.CFrame
731
        weldd.Parent = a
732
        return weldd
733
    end
734
 
735
 
736
function QuaternionFromCFrame(cf)
737
    local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
738
    local trace = m00 + m11 + m22
739
    if trace > 0 then
740
        local s = math.sqrt(1 + trace)
741
        local recip = 0.5 / s
742
        return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
743
    else
744
        local i = 0
745
        if m11 > m00 then
746
            i = 1
747
        end
748
        if m22 > (i == 0 and m00 or m11) then
749
            i = 2
750
        end
751
        if i == 0 then
752
            local s = math.sqrt(m00 - m11 - m22 + 1)
753
            local recip = 0.5 / s
754
            return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
755
        elseif i == 1 then
756
            local s = math.sqrt(m11 - m22 - m00 + 1)
757
            local recip = 0.5 / s
758
            return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
759
        elseif i == 2 then
760
            local s = math.sqrt(m22 - m00 - m11 + 1)
761
            local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
762
        end
763
    end
764
end
765
 
766
function QuaternionToCFrame(px, py, pz, x, y, z, w)
767
    local xs, ys, zs = x + x, y + y, z + z
768
    local wx, wy, wz = w * xs, w * ys, w * zs
769
    local xx = x * xs
770
    local xy = x * ys
771
    local xz = x * zs
772
    local yy = y * ys
773
    local yz = y * zs
774
    local zz = z * zs
775
    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))
776
end
777
 
778
function QuaternionSlerp(a, b, t)
779
    local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
780
    local startInterp, finishInterp;
781
    if cosTheta >= 0.0001 then
782
        if (1 - cosTheta) > 0.0001 then
783
            local theta = ACOS(cosTheta)
784
            local invSinTheta = 1 / SIN(theta)
785
            startInterp = SIN((1 - t) * theta) * invSinTheta
786
            finishInterp = SIN(t * theta) * invSinTheta
787
        else
788
            startInterp = 1 - t
789
            finishInterp = t
790
        end
791
    else
792
        if (1 + cosTheta) > 0.0001 then
793
            local theta = ACOS(-cosTheta)
794
            local invSinTheta = 1 / SIN(theta)
795
            startInterp = SIN((t - 1) * theta) * invSinTheta
796
            finishInterp = SIN(t * theta) * invSinTheta
797
        else
798
            startInterp = t - 1
799
            finishInterp = t
800
        end
801
    end
802
    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
803
end
804
 
805
function Clerp(a, b, t)
806
    local qa = {QuaternionFromCFrame(a)}
807
    local qb = {QuaternionFromCFrame(b)}
808
    local ax, ay, az = a.x, a.y, a.z
809
    local bx, by, bz = b.x, b.y, b.z
810
    local _t = 1 - t
811
    return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
812
end
813
 
814
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
815
    local frame = IT("Frame")
816
    frame.BackgroundTransparency = TRANSPARENCY
817
    frame.BorderSizePixel = BORDERSIZEPIXEL
818
    frame.Position = POSITION
819
    frame.Size = SIZE
820
    frame.BackgroundColor3 = COLOR
821
    frame.BorderColor3 = BORDERCOLOR
822
    frame.Name = NAME
823
    frame.Parent = PARENT
824
    return frame
825
end
826
 
827
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
828
    local label = IT("TextLabel")
829
    label.BackgroundTransparency = 1
830
    label.Size = UD2(1, 0, 1, 0)
831
    label.Position = UD2(0, 0, 0, 0)
832
    label.TextColor3 = TEXTCOLOR
833
    label.TextStrokeTransparency = STROKETRANSPARENCY
834
    label.TextTransparency = TRANSPARENCY
835
    label.FontSize = TEXTFONTSIZE
836
    label.Font = TEXTFONT
837
    label.BorderSizePixel = BORDERSIZEPIXEL
838
    label.TextScaled = false
839
    label.Text = TEXT
840
    label.Name = NAME
841
    label.Parent = PARENT
842
    return label
843
end
844
 
845
function NoOutlines(PART)
846
    PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
847
end
848
 
849
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
850
    local NEWWELD = IT(TYPE)
851
    NEWWELD.Part0 = PART0
852
    NEWWELD.Part1 = PART1
853
    NEWWELD.C0 = C0
854
    NEWWELD.C1 = C1
855
    NEWWELD.Parent = PARENT
856
    return NEWWELD
857
end
858
 
859
local S = IT("Sound")
860
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
861
    local NEWSOUND = nil
862
    coroutine.resume(coroutine.create(function()
863
        NEWSOUND = S:Clone()
864
        NEWSOUND.Parent = PARENT
865
        NEWSOUND.Volume = VOLUME
866
        NEWSOUND.Pitch = PITCH
867
        NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
868
        NEWSOUND:play()
869
        if DOESLOOP == true then
870
            NEWSOUND.Looped = true
871
        else
872
            repeat wait(1) until NEWSOUND.Playing == false
873
            NEWSOUND:remove()
874
        end
875
    end))
876
    return NEWSOUND
877
end
878
 
879
function CFrameFromTopBack(at, top, back)
880
    local right = top:Cross(back)
881
    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)
882
end
883
 
884
--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})
885
function WACKYEFFECT(Table)
886
    local TYPE = (Table.EffectType or "Sphere")
887
    local SIZE = (Table.Size or VT(1,1,1))
888
    local ENDSIZE = (Table.Size2 or VT(0,0,0))
889
    local TRANSPARENCY = (Table.Transparency or 0)
890
    local ENDTRANSPARENCY = (Table.Transparency2 or 1)
891
    local CFRAME = (Table.CFrame or Torso.CFrame)
892
    local MOVEDIRECTION = (Table.MoveToPos or nil)
893
    local ROTATION1 = (Table.RotationX or 0)
894
    local ROTATION2 = (Table.RotationY or 0)
895
    local ROTATION3 = (Table.RotationZ or 0)
896
    local MATERIAL = (Table.Material or "Neon")
897
    local COLOR = (Table.Color or C3(1,1,1))
898
    local TIME = (Table.Time or 45)
899
    local SOUNDID = (Table.SoundID or nil)
900
    local SOUNDPITCH = (Table.SoundPitch or nil)
901
    local SOUNDVOLUME = (Table.SoundVolume or nil)
902
    coroutine.resume(coroutine.create(function()
903
        local PLAYSSOUND = false
904
        local SOUND = nil
905
        local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
906
        if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
907
            PLAYSSOUND = true
908
            SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
909
        end
910
        EFFECT.Color = COLOR
911
        local MSH = nil
912
        if TYPE == "Sphere" then
913
            MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
914
        elseif TYPE == "Block" then
915
            MSH = IT("BlockMesh",EFFECT)
916
            MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
917
        elseif TYPE == "Wave" then
918
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
919
        elseif TYPE == "Ring" then
920
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
921
        elseif TYPE == "Slash" then
922
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
923
        elseif TYPE == "Round Slash" then
924
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
925
        elseif TYPE == "Swirl" then
926
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
927
        elseif TYPE == "Skull" then
928
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
929
        elseif TYPE == "Crystal" then
930
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
931
        end
932
        if MSH ~= nil then
933
            local MOVESPEED = nil
934
            if MOVEDIRECTION ~= nil then
935
                MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
936
            end
937
            local GROWTH = SIZE - ENDSIZE
938
            local TRANS = TRANSPARENCY - ENDTRANSPARENCY
939
            if TYPE == "Block" then
940
                EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
941
            else
942
                EFFECT.CFrame = CFRAME
943
            end
944
            for LOOP = 1, TIME+1 do
945
                Swait()
946
                MSH.Scale = MSH.Scale - GROWTH/TIME
947
                if TYPE == "Wave" then
948
                    MSH.Offset = VT(0,0,-MSH.Scale.X/8)
949
                end
950
                EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
951
                if TYPE == "Block" then
952
                    EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
953
                else
954
                    EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
955
                end
956
                if MOVEDIRECTION ~= nil then
957
                    local ORI = EFFECT.Orientation
958
                    EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
959
                    EFFECT.Orientation = ORI
960
                end
961
            end
962
            if PLAYSSOUND == false then
963
                EFFECT:remove()
964
            else
965
                SOUND.Stopped:Connect(function()
966
                    EFFECT:remove()
967
                end)
968
            end
969
        else
970
            if PLAYSSOUND == false then
971
                EFFECT:remove()
972
            else
973
                repeat Swait() until SOUND.Playing == false
974
                EFFECT:remove()
975
            end
976
        end
977
    end))
978
end
979
 
980
function MakeForm(PART,TYPE)
981
    if TYPE == "Cyl" then
982
        local MSH = IT("CylinderMesh",PART)
983
    elseif TYPE == "Ball" then
984
        local MSH = IT("SpecialMesh",PART)
985
        MSH.MeshType = "Sphere"
986
    elseif TYPE == "Wedge" then
987
        local MSH = IT("SpecialMesh",PART)
988
        MSH.MeshType = "Wedge"
989
    end
990
end
991
 
992
Debris = game:GetService("Debris")
993
 
994
function CastProperRay(StartPos, EndPos, Distance, Ignore)
995
    local DIRECTION = CF(StartPos,EndPos).lookVector
996
    return Raycast(StartPos, DIRECTION, Distance, Ignore)
997
end
998
 
999
function turnto(position)
1000
    RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
1001
end
1002
 
1003
function SpawnTrail(FROM,TO,BIG)
1004
    local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really blue", "Trail", VT(0,0,0))
1005
    MakeForm(TRAIL,"Cyl")
1006
    local DIST = (FROM - TO).Magnitude
1007
    if BIG == true then
1008
        TRAIL.Size = VT(0.5,DIST,0.5)
1009
    else
1010
        TRAIL.Size = VT(0.25,DIST,0.25)
1011
    end
1012
    TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
1013
    coroutine.resume(coroutine.create(function()
1014
        for i = 0, 5 do
1015
            Swait()
1016
            TRAIL.Transparency = TRAIL.Transparency + 0.1
1017
        end
1018
        TRAIL:remove()
1019
    end))
1020
end
1021
 
1022
local asd = Instance.new("ParticleEmitter")
1023
asd.Color = ColorSequence.new(Color3.new(0.5, 0, 0), Color3.new(.3, 0, 0))
1024
asd.LightEmission = .1
1025
asd.Texture = "http://www.roblox.com/asset/?ID=584827399"
1026
aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
1027
bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
1028
asd.Transparency = aaa
1029
asd.Size = bbb
1030
asd.ZOffset = .9
1031
asd.Acceleration = Vector3.new(0, -15, 0)
1032
asd.LockedToPart = false
1033
asd.EmissionDirection = "Back"
1034
asd.Lifetime = NumberRange.new(1, 2)
1035
asd.Rotation = NumberRange.new(-100, 100)
1036
asd.RotSpeed = NumberRange.new(-100, 100)
1037
asd.Speed = NumberRange.new(10)
1038
asd.Enabled = true
1039
asd.VelocitySpread = 999
1040
 
1041
function getbloody(victim,amount)
1042
    local PART = CreatePart(3, Effects, "Metal", 0, 1, "Really blue", "Blood", victim.Size)
1043
    PART.CFrame = victim.CFrame
1044
    local HITPLAYERSOUNDS = {"356551938","264486467"}
1045
    Debris:AddItem(PART,5)
1046
    CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
1047
    CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
1048
    CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
1049
    local prtcl = asd:Clone()
1050
    prtcl.Parent = PART
1051
    prtcl:Emit(amount*10)
1052
end
1053
 
1054
local Particle = IT("ParticleEmitter",nil)
1055
Particle.Enabled = true
1056
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.3,0.95),NumberSequenceKeypoint.new(1,1)})
1057
Particle.LightEmission = 1
1058
Particle.Rate = 800
1059
Particle.ZOffset = 1
1060
Particle.Rotation = NumberRange.new(-180, 180)
1061
Particle.RotSpeed = NumberRange.new(-180, 180)
1062
Particle.Texture = "http://www.roblox.com/asset/?id=584827399"
1063
Particle.Color = ColorSequence.new(C3(0,0,255),C3(0.4,0,0))
1064
 
1065
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 5, Lifetime2 = 5, Parent = Torso, Emit = 100, Offset = 360, Enabled = true})
1066
function ParticleEmitter(Table)
1067
    local PRTCL = Particle:Clone()
1068
    local Speed = Table.Speed or 5
1069
    local Drag = Table.Drag or 0
1070
    local Size1 = Table.Size1 or 1
1071
    local Size2 = Table.Size2 or 5
1072
    local Lifetime1 = Table.Lifetime1 or 1
1073
    local Lifetime2 = Table.Lifetime2 or 1.5
1074
    local Parent = Table.Parent or Torso
1075
    local Emit = Table.Emit or 100
1076
    local Offset = Table.Offset or 360
1077
    local Acel = Table.Acel or VT(0,0,0)
1078
    local Enabled = Table.Enabled or false
1079
    PRTCL.Parent = Parent
1080
    PRTCL.Size = NumberSequence.new(Size1,Size2)
1081
    PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1082
    PRTCL.Speed = NumberRange.new(Speed)
1083
    PRTCL.VelocitySpread = Offset
1084
    PRTCL.Drag = Drag
1085
    PRTCL.Acceleration = Acel
1086
    if Enabled == false then
1087
        PRTCL:Emit(Emit)
1088
        Debris:AddItem(PRTCL,Lifetime2)
1089
    else
1090
        PRTCL.Enabled = true
1091
    end
1092
    return PRTCL
1093
end
1094
 
1095
--//=================================\\
1096
--||         WEAPON CREATION
1097
--\\=================================//
1098
 
1099
local Handle = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.2,1.2,0.2),false)
1100
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-0.8, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.3, 0))
1101
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.2,0.8,0.2),false)
1102
MakeForm(Part,"Wedge")
1103
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0.2, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
1104
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.3,0.5,0.6),false)
1105
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1106
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.4,0.4,0.4),false)
1107
MakeForm(Part,"Cyl")
1108
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1109
for i = 1, 8 do
1110
    local Piece = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Eye", VT(0,0.35,0.41),false)
1111
    CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
1112
end
1113
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.2,0.5,0.2),false)
1114
MakeForm(Part,"Wedge")
1115
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
1116
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Eye", VT(0.39,0.41,0.39),false)
1117
MakeForm(Part,"Cyl")
1118
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1119
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.3,0.5,0.5),false)
1120
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1121
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.3,0.4,0.5),false)
1122
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.65) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1123
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.2,0,0.6),false)
1124
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0, 0) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, -0.2, -0.3))
1125
local RightBarrel = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.28,5,0.28),false)
1126
MakeForm(RightBarrel,"Cyl")
1127
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, RightBarrel, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -2.5, 0))
1128
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0,0.2,0.2),false)
1129
MakeForm(Part,"Wedge")
1130
CreateWeldOrSnapOrMotor("Weld", Handle, RightBarrel, Part, CF(0, 2.415, 0.15) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1131
local RightHole = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Eye", VT(0.2,0,0.2),false)
1132
MakeForm(RightHole,"Cyl")
1133
CreateWeldOrSnapOrMotor("Weld", Handle, RightBarrel, RightHole, CF(0, 2.5, 0), CF(0, 0, 0))
1134
local Handle = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.2,1.2,0.2),false)
1135
local LeftArmGraps = CreateWeldOrSnapOrMotor("Weld", Handle, LeftArm, Handle, CF(0,-0.8, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.3, 0))
1136
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.2,0.8,0.2),false)
1137
MakeForm(Part,"Wedge")
1138
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0.2, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
1139
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.3,0.5,0.6),false)
1140
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1141
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.4,0.4,0.4),false)
1142
MakeForm(Part,"Cyl")
1143
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1144
for i = 1, 8 do
1145
    local Piece = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Eye", VT(0,0.35,0.41),false)
1146
    CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
1147
end
1148
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.2,0.5,0.2),false)
1149
MakeForm(Part,"Wedge")
1150
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
1151
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Eye", VT(0.39,0.41,0.39),false)
1152
MakeForm(Part,"Cyl")
1153
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1154
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.3,0.5,0.5),false)
1155
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1156
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.3,0.4,0.5),false)
1157
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.65) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1158
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.2,0,0.6),false)
1159
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0, 0) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, -0.2, -0.3))
1160
local LeftBarrel = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0.28,5,0.28),false)
1161
MakeForm(LeftBarrel,"Cyl")
1162
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, LeftBarrel, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -2.5, 0))
1163
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Part", VT(0,0.2,0.2),false)
1164
MakeForm(Part,"Wedge")
1165
CreateWeldOrSnapOrMotor("Weld", Handle, LeftBarrel, Part, CF(0, 2.415, 0.15) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1166
local LeftHole = CreatePart(3, Character, "Metal", 0, 0, "Really blue", "Eye", VT(0.2,0,0.2),false)
1167
MakeForm(LeftHole,"Cyl")
1168
CreateWeldOrSnapOrMotor("Weld", Handle, LeftBarrel, LeftHole, CF(0, 2.5, 0), CF(0, 0, 0))
1169
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "Eye", VT(0.6,0.1,1)/2,false)
1170
MakeForm(Eye,"Ball")
1171
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(-18), RAD(15)), CF(0, 0, 0.4))
1172
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "Eye", VT(0.6,0.1,1)/2,false)
1173
MakeForm(Eye,"Ball")
1174
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(18), RAD(-15)), CF(0, 0, 0.4))
1175
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "Eye", VT(0.1,1,1)/2,false)
1176
MakeForm(Eye,"Ball")
1177
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(-18), RAD(0)), CF(0, 0, 0.4))
1178
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "Eye", VT(0.1,1,1)/2,false)
1179
MakeForm(Eye,"Ball")
1180
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(18), RAD(0)), CF(0, 0, 0.4))
1181
local A = IT("Attachment",Torso)
1182
A.Position = VT(1,1.3,0)
1183
A.Orientation = VT(-0.098, -89.999, 0.227)
1184
local B = IT("Attachment",Torso)
1185
B.Position = VT(-1.3,-0.6,0)
1186
B.Orientation = VT(-88.911, -68.808, 158.782)
1187
local ChainLink = IT("Beam",Torso)
1188
ChainLink.Texture = "rbxassetid://73042633"
1189
ChainLink.Color = ColorSequence.new(C3(0,0,255))
1190
ChainLink.TextureSpeed = 1
1191
ChainLink.FaceCamera = true
1192
ChainLink.Width0 = 1
1193
ChainLink.Width1 = 1
1194
ChainLink.TextureLength = 3
1195
ChainLink.Attachment0 = A
1196
ChainLink.Attachment1 = B
1197
ChainLink.CurveSize0 = 1.6
1198
ChainLink.CurveSize1 = 1.6
1199
ChainLink.FaceCamera = true
1200
ChainLink.Transparency = NumberSequence.new(0)
1201
local ChainLink = IT("Beam",Torso)
1202
ChainLink.Texture = "rbxassetid://73042633"
1203
ChainLink.Color = ColorSequence.new(C3(0,0,255))
1204
ChainLink.TextureSpeed = 1
1205
ChainLink.FaceCamera = true
1206
ChainLink.Width0 = 1
1207
ChainLink.Width1 = 1
1208
ChainLink.TextureLength = 3
1209
ChainLink.Attachment0 = B
1210
ChainLink.Attachment1 = A
1211
ChainLink.CurveSize0 = 2
1212
ChainLink.CurveSize1 = 2
1213
ChainLink.FaceCamera = true
1214
ChainLink.Transparency = NumberSequence.new(0)
1215
local A = IT("Attachment",Torso)
1216
A.Position = VT(1.3,-0.85,0)
1217
A.Orientation = VT(-0.098, -89.999, 0.227)
1218
local B = IT("Attachment",Torso)
1219
B.Position = VT(-1,2,0)
1220
B.Orientation = VT(-88.911, -68.808, 158.782)
1221
local ChainLink = IT("Beam",Torso)
1222
ChainLink.Texture = "rbxassetid://73042633"
1223
ChainLink.Color = ColorSequence.new(C3(0,0,255))
1224
ChainLink.TextureSpeed = 1
1225
ChainLink.FaceCamera = true
1226
ChainLink.Width0 = 1
1227
ChainLink.Width1 = 1
1228
ChainLink.TextureLength = 3
1229
ChainLink.Attachment0 = A
1230
ChainLink.Attachment1 = B
1231
ChainLink.CurveSize0 = 1.3
1232
ChainLink.CurveSize1 = 1.3
1233
ChainLink.FaceCamera = true
1234
ChainLink.Transparency = NumberSequence.new(0)
1235
local ChainLink = IT("Beam",Torso)
1236
ChainLink.Texture = "rbxassetid://73042633"
1237
ChainLink.Color = ColorSequence.new(C3(0,0,255))
1238
ChainLink.TextureSpeed = 1
1239
ChainLink.FaceCamera = true
1240
ChainLink.Width0 = 1
1241
ChainLink.Width1 = 1
1242
ChainLink.TextureLength = 3
1243
ChainLink.Attachment0 = B
1244
ChainLink.Attachment1 = A
1245
ChainLink.CurveSize0 = 1.5
1246
ChainLink.CurveSize1 = 1.5
1247
ChainLink.FaceCamera = true
1248
ChainLink.Transparency = NumberSequence.new(0)
1249
 
1250
local A = IT("Attachment",LeftBarrel)
1251
A.Position = VT(0,-2.5,0)
1252
local B = IT("Attachment",LeftBarrel)
1253
B.Position = VT(0,2.5,0)
1254
local Trail = IT("Trail",LeftBarrel)
1255
Trail.Attachment0 = A
1256
Trail.Attachment1 = B
1257
Trail.Lifetime = 0.5
1258
Trail.Color = ColorSequence.new(BRICKC"Really blue".Color)
1259
Trail.Transparency = NumberSequence.new(0, 1)
1260
Trail.Enabled = true
1261
-------------------------------------------------------------
1262
local A = IT("Attachment",RightBarrel)
1263
A.Position = VT(0,-2.5,0)
1264
local B = IT("Attachment",RightBarrel)
1265
B.Position = VT(0,2.5,0)
1266
local Trail = IT("Trail",RightBarrel)
1267
Trail.Attachment0 = A
1268
Trail.Attachment1 = B
1269
Trail.Lifetime = 0.5
1270
Trail.Color = ColorSequence.new(BRICKC"Really blue".Color)
1271
Trail.Transparency = NumberSequence.new(0, 1)
1272
Trail.Enabled = true
1273
 
1274
local PRT = ParticleEmitter({Speed = 0.3, Drag = 3, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 0.2, Lifetime2 = 1, Parent = RightLeg, Emit = 100, Offset = 360, Enabled = true})
1275
PRT.LockedToPart = true
1276
local PRT = ParticleEmitter({Speed = 0.3, Drag = 3, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 0.2, Lifetime2 = 1, Parent = LeftLeg, Emit = 100, Offset = 360, Enabled = true})
1277
PRT.LockedToPart = true
1278
local PRT = ParticleEmitter({Speed = 0.3, Drag = 3, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 0.3, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = true})
1279
PRT.LockedToPart = true
1280
local PRT = ParticleEmitter({Speed = 0.3, Drag = 3, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 0.2, Lifetime2 = 1, Parent = RightArm, Emit = 100, Offset = 360, Enabled = true})
1281
PRT.LockedToPart = true
1282
local PRT = ParticleEmitter({Speed = 0.3, Drag = 3, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 0.2, Lifetime2 = 1, Parent = LeftArm, Emit = 100, Offset = 360, Enabled = true})
1283
PRT.LockedToPart = true
1284
for _, c in pairs(Character:GetDescendants()) do
1285
    if c and c.Parent then
1286
        if c.Name == "Handle" and c.Parent.ClassName == "Accessory" then
1287
            local ACCESSORY = c.Parent
1288
            c.Parent = Character
1289
            if c then
1290
                if c:FindFirstChild("HatAttachment") or c:FindFirstChild("FaceFrontAttachment") or c:FindFirstChild("HairAttachment") then
1291
                    weldBetween(Head,c)
1292
                else
1293
                    weldBetween(Torso,c)
1294
                end
1295
            end
1296
            ACCESSORY:remove()
1297
        elseif c.Parent.ClassName ~= "Accessory" and c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1298
            c.Material = "Neon"
1299
            c.Color = C3(0,0,0)
1300
            if c:FindFirstChildOfClass("SpecialMesh") then
1301
                c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1302
            end
1303
            if c == Head then
1304
                if c:FindFirstChild("face") then
1305
                    c.face:remove()
1306
                end
1307
            end
1308
        elseif c.ClassName == "Part" and c.Name == "Eye" then
1309
            c.Color = C3(0,0,255)
1310
            c.Material = "Neon"
1311
        elseif c.ClassName == "CharacterMesh" or c.Name == "Body Colors" then
1312
            c:remove()
1313
        elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
1314
            c:remove()
1315
        end
1316
    end
1317
end
1318
local BODY = {}
1319
for _, c in pairs(Character:GetDescendants()) do
1320
    if c:IsA("BasePart") and c.Name ~= "Handle" then
1321
        if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
1322
            c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1323
        end
1324
        table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency,c.Size,c.Name})
1325
    elseif c:IsA("JointInstance") then
1326
        table.insert(BODY,{c,c.Parent,nil,nil,nil,nil,nil})
1327
    end
1328
end
1329
function refit()
1330
    Character.Parent = workspace
1331
    for e = 1, #BODY do
1332
        if BODY[e] ~= nil then
1333
            local STUFF = BODY[e]
1334
            local PART = STUFF[1]
1335
            local PARENT = STUFF[2]
1336
            local MATERIAL = STUFF[3]
1337
            local COLOR = STUFF[4]
1338
            local TRANSPARENCY = STUFF[5]
1339
            --local SIZE = STUFF[6]
1340
            local NAME = STUFF[7]
1341
            if PART.ClassName == "Part" and PART ~= RootPart then
1342
                PART.Material = MATERIAL
1343
                PART.Transparency = TRANSPARENCY
1344
                PART.Name = NAME
1345
            end
1346
            if PART.Parent ~= PARENT then
1347
                Humanoid:remove()
1348
                PART.Parent = PARENT
1349
                Humanoid = IT("Humanoid",Character)
1350
            end
1351
        end
1352
    end
1353
end
1354
 
1355
local SKILLTEXTCOLOR = C3(0,0,255)
1356
local SKILLFONT = "Fantasy"
1357
local SKILLTEXTSIZE = 6
1358
 
1359
Humanoid.Died:connect(function()
1360
    refit()
1361
end)
1362
 
1363
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1364
local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
1365
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.215, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1366
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.525, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
1367
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
1368
local SKILL6FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50, 0, 0.85, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 6 Frame")
1369
local SKILL7FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.85, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 7 Frame")
1370
 
1371
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Fire", SKILLTEXTCOLOR, SKILLTEXTSIZE-1, SKILLFONT, 0, 2, 0, "Text 1")
1372
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Lift", SKILLTEXTCOLOR, SKILLTEXTSIZE-1, SKILLFONT, 0, 2, 0, "Text 2")
1373
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Cleave", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 3")
1374
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Lock n' load", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 4")
1375
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Morning Star", SKILLTEXTCOLOR, SKILLTEXTSIZE+1, SKILLFONT, 0, 2, 0, "Text 5")
1376
local SKILL6TEXT = CreateLabel(SKILL6FRAME, "[G] Deathbound", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 6")
1377
local SKILL7TEXT = CreateLabel(SKILL7FRAME, "[CLICK] Execute", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 7")
1378
 
1379
--//=================================\\
1380
--||         DAMAGE FUNCTIONS
1381
--\\=================================//
1382
 
1383
function StatLabel(CFRAME, TEXT, COLOR)
1384
    local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really blue", "Effect", VT())
1385
    STATPART.CFrame = CF(CFRAME.p,CFRAME.p+VT(MRANDOM(-5,5),MRANDOM(0,5),MRANDOM(-5,5)))
1386
    local BODYGYRO = IT("BodyGyro", STATPART)
1387
    game:GetService("Debris"):AddItem(STATPART ,5)
1388
    local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
1389
    BILLBOARDGUI.Adornee = STATPART
1390
    BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
1391
    BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
1392
    BILLBOARDGUI.AlwaysOnTop = false
1393
    local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
1394
    TEXTLABEL.BackgroundTransparency = 1
1395
    TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
1396
    TEXTLABEL.Text = TEXT
1397
    TEXTLABEL.Font = SKILLFONT
1398
    TEXTLABEL.FontSize="Size42"
1399
    TEXTLABEL.TextColor3 = COLOR
1400
    TEXTLABEL.TextStrokeTransparency = 0
1401
    TEXTLABEL.TextScaled = true
1402
    TEXTLABEL.TextWrapped = true
1403
    coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
1404
        for i = 1, 50 do
1405
            Swait()
1406
            STATPART.CFrame = STATPART.CFrame * CF(0,0,-0.2)
1407
            TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/50)
1408
            TEXTLABEL.TextStrokeTransparency = TEXTLABEL.TextTransparency
1409
        end
1410
        THEPART.Parent = nil
1411
    end),STATPART, TEXTLABEL)
1412
end
1413
 
1414
--//=================================\\
1415
--||            DAMAGING
1416
--\\=================================//
1417
 
1418
function Kill(Char)
1419
    local NewCharacter = IT("Model",Effects)
1420
    NewCharacter.Name = "Ow im ded ;-;"
1421
    for _, c in pairs(Char:GetDescendants()) do
1422
        if c:IsA("BasePart") and c.Transparency == 0 then
1423
            if c.Parent == Char then
1424
                getbloody(c,5)
1425
            end
1426
            c:BreakJoints()
1427
            c.Material = "Glass"
1428
            c.Color = C3(0.5,0,0)
1429
            c.CanCollide = true
1430
            c.Transparency = 0.3
1431
            if c:FindFirstChildOfClass("SpecialMesh") then
1432
                c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1433
            end
1434
            if c.Name == "Head" then
1435
                c:ClearAllChildren()
1436
                c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
1437
            end
1438
            if c.ClassName == "MeshPart" then
1439
                c.TextureID = ""
1440
            end
1441
            if c:FindFirstChildOfClass("BodyPosition") then
1442
                c:FindFirstChildOfClass("BodyPosition"):remove()
1443
            end
1444
            if c:FindFirstChildOfClass("ParticleEmitter") then
1445
                c:FindFirstChildOfClass("ParticleEmitter"):remove()
1446
            end
1447
            c.Parent = NewCharacter
1448
            c.Name = "DeadPart"
1449
            c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
1450
            c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
1451
        end
1452
    end
1453
    Char:remove()
1454
    Debris:AddItem(NewCharacter,5)
1455
end
1456
 
1457
function ApplyAoE(POSITION,RANGE,BRUTAL)
1458
    local CHILDREN = workspace:GetDescendants()
1459
    for index, CHILD in pairs(CHILDREN) do
1460
        if CHILD.ClassName == "Model" and CHILD ~= Character then
1461
            local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1462
            if HUM then
1463
                local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1464
                if TORSO then
1465
                    if (TORSO.Position - POSITION).Magnitude <= RANGE then
1466
                        if BRUTAL == true then
1467
                            Kill(CHILD)
1468
                        else
1469
                            CHILD:BreakJoints()
1470
                        end
1471
                    end
1472
                end
1473
            end
1474
        end
1475
    end
1476
end
1477
 
1478
function BulletDetection(FROM,TO,BRUTAL)
1479
    local AIMHIT,AIMPOS,NORMAL = CastProperRay(FROM,TO,2000,Character)
1480
    coroutine.resume(coroutine.create(function()
1481
        if AIMHIT ~= nil then
1482
            if AIMHIT.Parent ~= Character then
1483
                if AIMHIT.Parent:FindFirstChildOfClass("Humanoid") or AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid") then
1484
                    if AIMHIT.Parent:FindFirstChildOfClass("Humanoid") then
1485
                        if BRUTAL == true then
1486
                            Kill(AIMHIT.Parent)
1487
                        else
1488
                            getbloody(AIMHIT,15)
1489
                            AIMHIT.Parent:BreakJoints()
1490
                            if AIMHIT.Name == "Head" then
1491
                                AIMHIT.Name = "HEADSHOT"
1492
                                AIMHIT:remove()
1493
                            end
1494
                        end
1495
                    else
1496
                        if BRUTAL == true then
1497
                            Kill(AIMHIT.Parent.Parent)
1498
                        else
1499
                            AIMHIT.Parent.Parent:BreakJoints()
1500
                        end
1501
                    end
1502
                end
1503
            end
1504
        end
1505
    end))
1506
    SpawnTrail(FROM,AIMPOS)
1507
    return AIMHIT,AIMPOS,NORMAL
1508
end
1509
 
1510
--//=================================\\
1511
--||    ATTACK FUNCTIONS AND STUFF
1512
--\\=================================//
1513
 
1514
function Unload()
1515
    ATTACK = true
1516
    Rooted = false
1517
    repeat
1518
        local GYRO = IT("BodyGyro",RootPart)
1519
        GYRO.D = 175
1520
        GYRO.P = 20000
1521
        GYRO.MaxTorque = VT(0,40000,0)
1522
        GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1523
        if COMBO == 1 then
1524
            COMBO = 2
1525
            for i=0, 0, 0.1 / Animation_Speed do
1526
                Swait()
1527
                GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1528
                RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
1529
                Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
1530
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1531
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1532
                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)
1533
                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)
1534
            end
1535
            WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame, MoveToPos = LeftHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1536
            WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1537
            CreateSound(268761947, LeftHole, 7, 1, false)
1538
            BulletDetection(LeftHole.Position,Mouse.Hit.p,false)
1539
            for i=0, 0, 0.1 / Animation_Speed do
1540
                Swait()
1541
                RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
1542
                Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
1543
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1544
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(130), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1545
                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)
1546
                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)
1547
            end
1548
        elseif COMBO == 2 then
1549
            COMBO = 1
1550
            for i=0, 0.1, 0.1 / Animation_Speed do
1551
                Swait()
1552
                GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1553
                RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
1554
                Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-50)), 1 / Animation_Speed)
1555
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1556
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1557
                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)
1558
                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)
1559
            end
1560
            WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = RightHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1561
            WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1562
            CreateSound(268761947, RightHole, 7, 1, false)
1563
            BulletDetection(RightHole.Position,Mouse.Hit.p,false)
1564
            for i=0, 0.1, 0.1 / Animation_Speed do
1565
                Swait()
1566
                RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
1567
                Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-50)), 1 / Animation_Speed)
1568
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(130), RAD(0), RAD(50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1569
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1570
                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)
1571
                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)
1572
            end
1573
        end
1574
        GYRO:remove()
1575
    until KEYHOLD == false
1576
    ATTACK = false
1577
    Rooted = false
1578
end
1579
function Psyo()
1580
    if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
1581
        local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
1582
        local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
1583
        if TORSO and HUM.Health > 0 then
1584
            ATTACK = true
1585
            Rooted = false
1586
            local GYRO = IT("BodyGyro",RootPart)
1587
            GYRO.D = 275
1588
            GYRO.P = 20000
1589
            GYRO.MaxTorque = VT(0,40000,0)
1590
            for i=0, 0.8, 0.1 / Animation_Speed do
1591
                Swait()
1592
                GYRO.cframe = CF(RootPart.Position,TORSO.Position)
1593
                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)
1594
                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)
1595
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1596
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1597
                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)
1598
                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)
1599
            end        
1600
            local MAGIC = ParticleEmitter({Speed = 5, Drag = 3, Size1 = 1.7, Size2 = 0, Lifetime1 = 1, Lifetime2 = 3, Parent = TORSO, Emit = 100, Offset = 360, Enabled = true})
1601
            MAGIC.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(1,0)})
1602
            local grav = Instance.new("BodyPosition",TORSO)
1603
            grav.D = 1500
1604
            grav.P = 20000
1605
            grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1606
            grav.position = TORSO.Position+VT(0,15,0)
1607
            Debris:AddItem(grav,10)
1608
            Debris:AddItem(MAGIC,10)
1609
            CreateSound(429459101, Torso, 7, 1, false)
1610
            CreateSound(429459101, TORSO, 7, 1, false)
1611
            for i=0, 1, 0.1 / Animation_Speed do
1612
                Swait()
1613
                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)
1614
                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)
1615
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(125), RAD(-45), RAD(15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1616
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(125), RAD(45), RAD(-15)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1617
                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)
1618
                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)
1619
            end
1620
            GYRO:remove()
1621
            ATTACK = false
1622
            Rooted = false
1623
        end
1624
    end
1625
end
1626
function Cleave()
1627
    ATTACK = true
1628
    Rooted = false
1629
    local TARGET = nil
1630
    local TORS = nil
1631
    local GYRO = IT("BodyGyro",RootPart)
1632
    GYRO.D = 175
1633
    GYRO.P = 20000
1634
    GYRO.MaxTorque = VT(0,40000,0)
1635
    GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1636
    local RANGE = 5
1637
    CreateSound(541909867, Torso, 7, 1, false)
1638
    WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(12,0.5,12), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1639
    for i=0, 1, 0.1 / Animation_Speed do
1640
        Swait()
1641
        RootPart.CFrame = RootPart.CFrame * CF(0,0,-2)
1642
        GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1643
        local CHILDREN = workspace:GetDescendants()
1644
        for index, CHILD in pairs(CHILDREN) do
1645
            if CHILD.ClassName == "Model" and CHILD ~= Character then
1646
                local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1647
                if HUM then
1648
                    local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1649
                    if TORSO then
1650
                        if (TORSO.Position - LeftHole.Position).Magnitude <= RANGE + TORSO.Size.Magnitude/5 then
1651
                            RANGE = (TORSO.Position - LeftHole.Position).Magnitude
1652
                            TARGET = HUM
1653
                            TORS = TORSO
1654
                        end
1655
                    end
1656
                end
1657
            end
1658
        end
1659
        if TARGET then
1660
            break
1661
        end
1662
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-80)), 1 / Animation_Speed)
1663
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(80)), 1 / Animation_Speed)
1664
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1665
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-80)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1666
        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)
1667
        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)
1668
    end
1669
    GYRO:remove()
1670
    if TORS and TARGET then
1671
        CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 10, 1, false)
1672
        Rooted = true
1673
        local BODYPOSITION = IT("BodyPosition", TORS)
1674
        BODYPOSITION.P = 2000
1675
        BODYPOSITION.D = 100
1676
        BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
1677
        for i=0, 1, 0.1 / Animation_Speed do
1678
            Swait()
1679
            TORS.CFrame = LeftHole.CFrame * CF(0,TORS.Size.Z/2,0) * ANGLES(RAD(90), RAD(0), RAD(0))
1680
            BODYPOSITION.Position = TORS.Position
1681
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
1682
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
1683
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1684
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(145), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1685
            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)
1686
            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)
1687
        end
1688
        for i=0, 0.4, 0.1 / Animation_Speed do
1689
            Swait()
1690
            TORS.CFrame = LeftHole.CFrame * CF(0,TORS.Size.Z/2,0) * ANGLES(RAD(90), RAD(0), RAD(0))
1691
            BODYPOSITION.Position = TORS.Position
1692
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
1693
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
1694
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(145), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1695
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(145), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1696
            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)
1697
            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)
1698
        end
1699
        local LOOP = 0
1700
        local LOOP2 = 0
1701
        for i=0, 5, 0.1 / Animation_Speed do
1702
            Swait()
1703
            LOOP = LOOP + 1
1704
            TORS.Anchored = true
1705
            LOOP2 = LOOP2 + 1
1706
            if LOOP2 >= 5 then
1707
                WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = RightHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1708
                WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1709
                CreateSound(268761947, RightHole, 7, 1, false)
1710
                SpawnTrail(RightHole.Position,RightHole.CFrame*CF(0,500,0).p)
1711
                LOOP2 = 0
1712
                getbloody(TORS,1)
1713
            end
1714
            TORS.CFrame = LeftHole.CFrame * CF(0,TORS.Size.Z/2,0) * ANGLES(RAD(90), RAD(0), RAD(0))
1715
            BODYPOSITION.Position = TORS.Position
1716
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
1717
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
1718
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(145 + 2 * SIN(LOOP / 12)), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1719
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(145), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1720
            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)
1721
            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)
1722
        end
1723
        BODYPOSITION:remove()
1724
        if TORS then
1725
            TORS.Anchored = false
1726
            Kill(TORS.Parent)
1727
        end
1728
    end
1729
    ATTACK = false
1730
    Rooted = false
1731
end
1732
function Lock_n_Load()
1733
    if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
1734
        local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
1735
        local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
1736
        if TORSO and HUM.Health > 0 then
1737
            CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 7, 1, false)
1738
            ATTACK = true
1739
            Rooted = true
1740
            local GYRO = IT("BodyGyro",RootPart)
1741
            GYRO.D = 175
1742
            GYRO.P = 20000
1743
            GYRO.MaxTorque = VT(0,40000,0)
1744
            if COMBO == 1 then
1745
                COMBO = 2
1746
                for i=0, 1, 0.1 / Animation_Speed do
1747
                    Swait()
1748
                    GYRO.cframe = CF(RootPart.Position,TORSO.Position)
1749
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
1750
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
1751
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1752
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1753
                    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)
1754
                    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)
1755
                end
1756
                WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame, MoveToPos = LeftHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1757
                WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1758
                CreateSound(268761947, LeftHole, 7, 1, false)
1759
                BulletDetection(LeftHole.Position,TORSO.Position,false)
1760
                for i=0, 0.4, 0.1 / Animation_Speed do
1761
                    Swait()
1762
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
1763
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
1764
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1765
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(130), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1766
                    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)
1767
                    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)
1768
                end
1769
            elseif COMBO == 2 then
1770
                COMBO = 1
1771
                for i=0, 1, 0.1 / Animation_Speed do
1772
                    Swait()
1773
                    GYRO.cframe = CF(RootPart.Position,TORSO.Position)
1774
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
1775
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-50)), 1 / Animation_Speed)
1776
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1777
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1778
                    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)
1779
                    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)
1780
                end
1781
                WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = RightHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1782
                WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1783
                CreateSound(268761947, RightHole, 7, 1, false)
1784
                BulletDetection(RightHole.Position,TORSO.Position,false)
1785
                for i=0, 0.4, 0.1 / Animation_Speed do
1786
                    Swait()
1787
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
1788
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-50)), 1 / Animation_Speed)
1789
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(130), RAD(0), RAD(50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1790
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1791
                    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)
1792
                    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)
1793
                end
1794
            end
1795
            GYRO:remove()
1796
            ATTACK = false
1797
            Rooted = false
1798
        end
1799
    end
1800
end
1801
function Morning_Star()
1802
    ATTACK = true
1803
    Rooted = true
1804
    CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 7, 1, false)
1805
    for i=0, 1, 0.1 / Animation_Speed do
1806
        Swait()
1807
        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)
1808
        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)
1809
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1810
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1811
        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)
1812
        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)
1813
    end
1814
    coroutine.resume(coroutine.create(function()
1815
        local POS = Mouse.Hit.p
1816
        local RAY = CreatePart(3, Effects, "Neon", 0, 0, "Really blue", "Strike", VT(0,2000,0))
1817
        MakeForm(RAY,"Cyl")
1818
        local SPHERE = CreatePart(3, Effects, "Neon", 0, 0, "Really blue", "Strike", VT(0,0,0))
1819
        MakeForm(SPHERE,"Ball")
1820
        local SHIELD = CreatePart(3, Effects, "Neon", 0, 0.5, "Really blue", "Strike", VT(0,0,0))
1821
        MakeForm(SHIELD,"Ball")
1822
        SHIELD.CFrame = CF(POS)
1823
        RAY.CFrame = CF(POS)
1824
        SPHERE.CFrame = CF(POS)
1825
        CreateSound(440145570, SPHERE, 10, 0.8, false)
1826
        CreateSound(415700134, SPHERE, 10, 0.8, false)
1827
        for i = 1, 200 do
1828
            Swait()
1829
            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,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1830
            RAY.Size = RAY.Size + VT(0.05,0,0.05)
1831
            SPHERE.Size = SPHERE.Size + VT(2,2,2)
1832
            SHIELD.Size = SPHERE.Size + VT(3,3,3)
1833
            ApplyAoE(SPHERE.Position,SPHERE.Size.X/2,true)
1834
        end
1835
        for i = 1, 45 do
1836
            Swait()
1837
            RAY.Transparency = RAY.Transparency + 1/45
1838
            SPHERE.Transparency = RAY.Transparency
1839
            SHIELD.Transparency = SPHERE.Transparency + 1/45
1840
        end
1841
        RAY:remove()
1842
        SHIELD:remove()
1843
        SPHERE:remove()
1844
    end))
1845
    for i=0, 1, 0.1 / Animation_Speed do
1846
        Swait()
1847
        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)
1848
        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)
1849
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(-45), RAD(85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1850
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(45), RAD(-85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1851
        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)
1852
        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)
1853
    end
1854
    ATTACK = false
1855
    Rooted = false
1856
end
1857
function Deathbound()
1858
    CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 10, 1, false)
1859
    ATTACK = true
1860
    Rooted = true
1861
    for i=0, 1, 0.1 / Animation_Speed do
1862
        Swait()
1863
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 1 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1864
        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)
1865
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, 0) * ANGLES(RAD(15), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1866
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 1, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1867
        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)
1868
        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)
1869
    end
1870
    local DONE = false
1871
    local GATE = nil
1872
    local GATESPIN = true
1873
    coroutine.resume(coroutine.create(function()
1874
        repeat
1875
            Swait()
1876
            if GATE ~= nil then
1877
                GATE.CFrame = GATE.CFrame * ANGLES(RAD(0), RAD(-3), RAD(0))
1878
            end
1879
        until GATESPIN == false
1880
    end))
1881
    coroutine.resume(coroutine.create(function()
1882
        repeat
1883
            Swait()
1884
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.2 - 0.25 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1885
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1886
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(15), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1887
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(15), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1888
            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)
1889
            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)
1890
        until DONE == true
1891
        Swait(50)
1892
        for i = 1, 35 do
1893
            Swait(4)
1894
            local FIRED = false
1895
            local CHILDREN = workspace:GetDescendants()
1896
            for index, CHILD in pairs(CHILDREN) do
1897
                if CHILD.ClassName == "Model" and CHILD ~= Character then
1898
                    local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1899
                    if HUM then
1900
                        local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1901
                        if TORSO then
1902
                            if (TORSO.Position - GATE.Position).Magnitude <= GATE.Size.X/2.5 + TORSO.Size.Magnitude/5 then
1903
                                local HITFLOOR,HITPOS = Raycast(TORSO.Position, (CF(TORSO.Position, TORSO.Position + VT(0, -1, 0))).lookVector, 15, Character)
1904
                                local CFRAME = CF(HITPOS)*ANGLES(RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)))
1905
                                WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = 268761947, SoundPitch = 1.5, SoundVolume = 6})
1906
                                WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1907
                                SpawnTrail(CFRAME.p,CFRAME*CF(0,1000,0).p)     
1908
                                Kill(CHILD)
1909
                                FIRED = true
1910
                                break
1911
                            end
1912
                        end
1913
                    end
1914
                end
1915
            end
1916
            if FIRED == false then
1917
                local CFRAME = GATE.CFrame*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0))*CF(0,0,MRANDOM(2,math.ceil(GATE.Size.X/2.5)))*ANGLES(RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)))
1918
                WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = 268761947, SoundPitch = 1, SoundVolume = 6})
1919
                WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1920
                SpawnTrail(CFRAME.p,CFRAME*CF(0,1000,0).p)
1921
                local HITBOD = Raycast(CFRAME.p, (CF(CFRAME.p, CFRAME.p + VT(0, 1, 0))).lookVector, 1000, Character)
1922
                if HITBOD ~= nil then
1923
                    if HITBOD.Parent:FindFirstChildOfClass("Humanoid") then
1924
                        Kill(HITBOD.Parent)
1925
                    end
1926
                end
1927
            end
1928
        end
1929
        for i = 1, 45 do
1930
            Swait()
1931
            GATE.Size = GATE.Size - VT(3,0,3)
1932
        end
1933
        GATESPIN = false
1934
        GATE:remove()
1935
    end))
1936
    Swait(15)
1937
    local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 15, Character)
1938
    GATE = CreatePart(3, Effects, "Neon", 0, 1, "Really blue", "Gate", VT(0,0,0))
1939
    local DECAL = IT("Decal",GATE)
1940
    DECAL.Texture = "http://www.roblox.com/asset/?id=70345333"
1941
    DECAL.Face = "Top"
1942
    GATE.CFrame = CF(HITPOS)
1943
    CreateSound(160772554, GATE, 7, 1.3, false)
1944
    for i = 1, 45 do
1945
        Swait()
1946
        GATE.Size = GATE.Size + VT(3,0,3)
1947
    end
1948
    CreateSound(268761947, RightHole, 7, 1, false)
1949
    CreateSound(268761947, LeftHole, 7, 1, false)
1950
    WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1951
    WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1952
    ATTACK = false
1953
    Rooted = false
1954
    DONE = true
1955
end
1956
function Execute()
1957
    ATTACK = true
1958
    Rooted = false
1959
    local Part = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "Part", VT(0,1,4),false)
1960
    Part.Color = C3(0,0,0)
1961
    MakeForm(Part,"Wedge")
1962
    Part.CanCollide = true
1963
    CreateWeldOrSnapOrMotor("Weld", Handle, RightBarrel, Part, CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(135)) *CF(0, 0.5, 0), CF(0, 0, 0))
1964
    for i=0, 1, 0.1 / Animation_Speed do
1965
        Swait()
1966
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
1967
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
1968
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(125), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1969
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1970
        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)
1971
        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)
1972
    end
1973
    Trail.Enabled = true
1974
    CreateSound(541909867, RightBarrel, 7, 1, false)
1975
    local TOCH = Part.Touched:Connect(function(hit)
1976
        if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent ~= Character then
1977
            Kill(hit.Parent)
1978
        end
1979
    end)
1980
    for i=0, 0.35, 0.1 / Animation_Speed do
1981
        Swait()
1982
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
1983
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 1 / Animation_Speed)
1984
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.25, -0.3) * ANGLES(RAD(50), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1985
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1986
        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)
1987
        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)
1988
    end
1989
    TOCH:disconnect()
1990
    Trail.Enabled = true
1991
    for i=0, 0.35, 0.1 / Animation_Speed do
1992
        Swait()
1993
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(60)), 1 / Animation_Speed)
1994
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-55)), 1 / Animation_Speed)
1995
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.25, -0.3) * ANGLES(RAD(50), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1996
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1997
        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)
1998
        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)
1999
    end
2000
    Part:remove()
2001
    ATTACK = false
2002
    Rooted = false
2003
end
2004
 
2005
--//=================================\\
2006
--||      ASSIGN THINGS TO KEYS
2007
--\\=================================//
2008
 
2009
function MouseDown(Mouse)
2010
    if ATTACK == false then
2011
        Execute()
2012
    end
2013
end
2014
 
2015
function MouseUp(Mouse)
2016
HOLD = false
2017
end
2018
 
2019
function KeyDown(Key)
2020
    KEYHOLD = true
2021
    if Key ~= "w" and Key ~= "a" and Key ~= "s" and Key ~= "d" then
2022
        if Key == "z" and ATTACK == false then
2023
            Unload()
2024
   
2025
        elseif Key == "b" and ATTACK == false then
2026
            Psyo()
2027
   
2028
        elseif Key == "c" and ATTACK == false then
2029
            Cleave()
2030
   
2031
        elseif Key == "v" and ATTACK == false then
2032
            Lock_n_Load()
2033
   
2034
        elseif Key == "g" and ATTACK == false then
2035
            Deathbound()
2036
   
2037
        elseif Key == "x" and ATTACK == false then
2038
            Morning_Star()
2039
   
2040
        elseif Key == "t" then
2041
            CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 10, 1, false)
2042
        elseif Key == "1" and ATTACK == false then
2043
            if CHOICE ~= 1 then
2044
                CHOICE = 1
2045
                sick:Play()
2046
            end
2047
        elseif Key == "2" and ATTACK == false then
2048
            if CHOICE ~= 2 then
2049
                CHOICE = 2
2050
                sick:Play()
2051
            end
2052
        elseif Key == "3" and ATTACK == false then
2053
            if CHOICE ~= 3 then
2054
                CHOICE = 3
2055
                sick:Play()
2056
            end
2057
        elseif Key == "4" and ATTACK == false then
2058
            if CHOICE ~= 4 then
2059
                CHOICE = 4
2060
                sick:Play()
2061
            end        
2062
        end
2063
    end
2064
end
2065
 
2066
function KeyUp(Key)
2067
    if Key ~= "w" and Key ~= "a" and Key ~= "s" and Key ~= "d" then
2068
        KEYHOLD = false
2069
    end
2070
end
2071
 
2072
    Mouse.Button1Down:connect(function(NEWKEY)
2073
        MouseDown(NEWKEY)
2074
    end)
2075
    Mouse.Button1Up:connect(function(NEWKEY)
2076
        MouseUp(NEWKEY)
2077
    end)
2078
    Mouse.KeyDown:connect(function(NEWKEY)
2079
        KeyDown(NEWKEY)
2080
    end)
2081
    Mouse.KeyUp:connect(function(NEWKEY)
2082
        KeyUp(NEWKEY)
2083
    end)
2084
 
2085
--//=================================\\
2086
--\\=================================//
2087
 
2088
 
2089
function unanchor()
2090
    if UNANCHOR == true then
2091
        g = Character:GetChildren()
2092
        for i = 1, #g do
2093
            if g[i].ClassName == "Part" then
2094
                g[i].Anchored = false
2095
            end
2096
        end
2097
    end
2098
end
2099
 
2100
 
2101
--//=================================\\
2102
--||    WRAP THE WHOLE SCRIPT UP
2103
--\\=================================//
2104
 
2105
Humanoid.Changed:connect(function(Jump)
2106
    if Jump == "Jump" and (Disable_Jump == true) then
2107
        Humanoid.Jump = false
2108
    end
2109
end)
2110
 
2111
while true do
2112
    Swait()
2113
    Humanoid.HipHeight = 1.5
2114
    script.Parent = WEAPONGUI
2115
    ANIMATE.Parent = nil
2116
    if Humanoid then
2117
        local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
2118
        IDLEANIMATION:Play()
2119
    end
2120
    SINE = SINE + CHANGE
2121
    local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
2122
    local TORSOVERTICALVELOCITY = RootPart.Velocity.y
2123
    local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
2124
    if ATTACK == false then
2125
        if TORSOVELOCITY < 1 then
2126
            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(25)), 1 / Animation_Speed)
2127
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
2128
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2129
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2130
            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)
2131
            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)
2132
        elseif TORSOVELOCITY > 1 then
2133
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
2134
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
2135
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2136
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2137
            RightHip.C0 = Clerp(RightHip.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)), 1 / Animation_Speed)
2138
            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)
2139
        end
2140
    end
2141
    RightArmGrasp.C0 = Clerp(RightArmGrasp.C0, CF(0, -0.815+0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(90-4.5 * SIN(SINE / 12)), RAD(-1.5 * SIN(SINE / 12)), RAD(0)), 1 / Animation_Speed)
2142
    LeftArmGraps.C0 = Clerp(LeftArmGraps.C0, CF(0, -0.815+0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(90-4.5 * SIN(SINE / 12)), RAD(1.5 * SIN(SINE / 12)), RAD(0)), 1 / Animation_Speed)
2143
    unanchor()
2144
    Humanoid.MaxHealth = "inf"
2145
    Humanoid.Health = "inf"
2146
    if Rooted == false then
2147
        Disable_Jump = false
2148
        Humanoid.WalkSpeed = Speed
2149
    elseif Rooted == true then
2150
        Disable_Jump = true
2151
        Humanoid.WalkSpeed = 0
2152
    end
2153
    for _, c in pairs(Character:GetDescendants()) do
2154
        if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
2155
            c.Material = "Neon"
2156
            c.Color = C3(0,0,0)
2157
            if c:FindFirstChildOfClass("SpecialMesh") then
2158
                c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
2159
            end
2160
            if c == Head then
2161
                if c:FindFirstChild("face") then
2162
                    c.face:remove()
2163
                end
2164
            end
2165
        elseif c.ClassName == "Part" and c.Name == "Eye" then
2166
            c.Color = C3(0,0,255)
2167
            c.Material = "Neon"
2168
        elseif c.ClassName == "CharacterMesh" or c.Name == "Body Colors" then
2169
            c:remove()
2170
        elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
2171
            c:remove()
2172
        end
2173
    end
2174
    refit()
2175
    Humanoid.Name = "Deadeyes"
2176
    sick.Parent = Torso
2177
    sick:resume()
2178
    sick.Volume = 5
2179
    sick.Pitch = 1
2180
    sick.SoundId = "rbxassetid://"..SONGS[CHOICE]
2181
    if Head:FindFirstChildOfClass("Sound") then
2182
        Head:FindFirstChildOfClass("Sound"):remove()
2183
    end
2184
end
2185
 
2186
--//=================================\\
2187
--\\=================================//
2188
 
2189
 
2190
 
2191
 
2192
 
2193
--//====================================================\\--
2194
--||                     END OF SCRIPT
2195
--\\====================================================//--