View difference between Paste ID: xVxDYJBE and ZMFZV5an
SHOW: | | - or go back to the newest paste.
1-
Player = game:GetService("Players").Romania12x
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/ 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")
7
	local RealPlayer = RealPlayer
8
	script.Parent = RealPlayer.Character
9
10
	--Fake event to make stuff like Mouse.KeyDown work
11
	local Disconnect_Function = function(this)
12
		this[1].Functions[this[2]] = nil
13
	end
14
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
15
	local FakeEvent_Metatable = {__index={
16
		Connect = function(this,f)
17
			local i = tostring(math.random(0,10000))
18
			while this.Functions[i] do
19
				i = tostring(math.random(0,10000))
20
			end
21
			this.Functions[i] = f
22
			return setmetatable({this,i},Disconnect_Metatable)
23
		end
24
	}}
25
	FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
26
	local function fakeEvent()
27
		return setmetatable({Functions={}},FakeEvent_Metatable)
28
	end
29
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()}
35
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
36
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
37
	end}
38
	--Merged 2 functions into one by checking amount of arguments
39
	CAS.UnbindAction = CAS.BindAction
40
41
	--This function will trigger the events that have been :Connect()'ed
42
	local function TriggerEvent(self,ev,...)
43
		for _,f in pairs(self[ev].Functions) do
44
			f(...)
45
		end
46
	end
47
	FakeMouse.TriggerEvent = TriggerEvent
48
	UIS.TriggerEvent = TriggerEvent
49
50
	--Client communication
51
	local Event = Instance.new("RemoteEvent")
52
	Event.Name = "UserInput_Event"
53
	Event.OnServerEvent:Connect(function(plr,io)
54
	    if plr~=RealPlayer then return end
55
		FakeMouse.Target = io.Target
56
		FakeMouse.Hit = io.Hit
57
		if not io.isMouse then
58
			local b = io.UserInputState == Enum.UserInputState.Begin
59
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
60
				return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
61
			end
62
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
63
				return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
64
			end
65
			for _,t in pairs(CAS.Actions) do
66
				for _,k in pairs(t.Keys) do
67
					if k==io.KeyCode then
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())
73
			UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
74
	    end
75
	end)
76
	Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
77
	local Mouse = owner:GetMouse()
78
	local UIS = game:GetService("UserInputService")
79
	local input = function(io,RobloxHandled)
80
		if RobloxHandled then return end
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})
83
	end
84
	UIS.InputBegan:Connect(input)
85
	UIS.InputEnded:Connect(input)
86
87
	local h,t
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
90
	local HB = game:GetService("RunService").Heartbeat
91
	while true do
92
		if h~=Mouse.Hit or t~=Mouse.Target then
93
			h,t=Mouse.Hit,Mouse.Target
94
			Event:FireServer({isMouse=true,Target=t,Hit=h})
95
		end
96
		--Wait 2 frames
97
		for i=1,2 do
98
			HB:Wait()
99
		end
100
	end]==],script)
101
102
	----Sandboxed game object that allows the usage of client-side methods and services
103
	--Real game object
104
	local RealGame = game
105
106
	--Metatable for fake service
107
	local FakeService_Metatable = {
108
		__index = function(self,k)
109
			local s = rawget(self,"_RealService")
110
			if s then
111
				return typeof(s[k])=="function"
112
				and function(_,...)return s[k](s,...)end or s[k]
113
			end
114
		end,
115
		__newindex = function(self,k,v)
116
			local s = rawget(self,"_RealService")
117
			if s then s[k]=v end
118
		end
119
	}
120
	local function FakeService(t,RealService)
121
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
122
		return setmetatable(t,FakeService_Metatable)
123
	end
124
125
	--Fake game object
126
	local FakeGame = {
127
		GetService = function(self,s)
128
			return rawget(self,s) or RealGame:GetService(s)
129
		end,
130
		Players = FakeService({
131
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
132
		},"Players"),
133
		UserInputService = FakeService(UIS,"UserInputService"),
134
		ContextActionService = FakeService(CAS,"ContextActionService"),
135
		RunService = FakeService({
136
			_btrs = {},
137
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
138
			BindToRenderStep = function(self,name,_,fun)
139
				self._btrs[name] = self.Heartbeat:Connect(fun)
140
			end,
141
			UnbindFromRenderStep = function(self,name)
142
				self._btrs[name]:Disconnect()
143
			end,
144
		},"RunService")
145
	}
146
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
147
	FakeGame.service = FakeGame.GetService
148
	FakeService(FakeGame,game)
149
	--Changing owner to fake player object to support owner:GetMouse()
150
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
151
end
152
Player = owner
153
Character = Player.Character 
154
PlayerGui = Player.PlayerGui 
155
Backpack = Player.Backpack 
156
Torso = Character.Torso 
157
Head = Character.Head 
158
LeftArm = Character["Left Arm"] 
159
LeftLeg = Character["Left Leg"] 
160
RightArm = Character["Right Arm"] 
161
RightLeg = Character["Right Leg"] 
162
LS = Torso["Left Shoulder"] 
163
LH = Torso["Left Hip"] 
164
RS = Torso["Right Shoulder"] 
165
RH = Torso["Right Hip"] 
166
ModelName = "Weapon"
167
ToolName = "War Sword"
168
attack = false
169
attacktype = 1
170
mindamage = 15
171
maxdamage = 25
172
crtmaxdamage = 45
173
omindamage = 15
174
omaxdamage = 25
175
ocrtmaxdamage = 45
176
crtrate = 12
177
fireboost = 0
178
iceboost = 0
179
darkboost = 0
180
Mode = "None"
181
ssh = false
182
atktypez = 1
183
Hitdeb = 0
184
ammo = 1
185
MMouse = nil
186
point = false
187
offset = 0
188
radv = 90
189
----------------------------
190
--Customize
191
DarkFire = true
192
MaxFT = 40
193
 
194
 
195
 
196
---------------------------------------------------------------------------------------------------------------------------------------
197
if Character:findFirstChild("EquippedVal",true) ~= nil then
198
Character:findFirstChild("EquippedVal",true).Parent = nil
199
end
200
ev = Instance.new("BoolValue")
201
ev.Parent = Character
202
ev.Name = "EquippedVal"
203
ev.Value = false
204
--player
205
player = nil
206
--welds
207
RW, LW , RWL, LWL = Instance.new("Weld"), Instance.new("Weld"), Instance.new("Weld"), Instance.new("Weld")
208
--what anim
209
anim = "none"
210
--other var
211
player = Player
212
ch = Character
213
--save shoulders
214
AoETrue = {}
215
RSH, LSH , RHL, LHL = ch.Torso["Right Shoulder"], ch.Torso["Left Shoulder"] , ch.Torso["Right Hip"] , ch.Torso["Left Hip"]
216
 
217
function RWFunc()
218
 RW.Part1 = ch["Right Arm"]
219
 RSH.Part1 = nil
220
end
221
function LWFunc()
222
 LW.Part1 = ch["Left Arm"]
223
 LSH.Part1 = nil
224
end
225
function RWLFunc()
226
 RWL.Part1 = ch["Right Leg"]
227
 RHL.Part1 = nil
228
 ch["Right Leg"].Name = "RightLeg"
229
 RightLeg.CanCollide = false
230
end
231
function LWLFunc()
232
 LWL.Part1 = ch["Left Leg"]
233
 LHL.Part1 = nil
234
 ch["Left Leg"].Name = "LeftLeg"
235
 LeftLeg.CanCollide = true
236
end
237
function RWLRem()
238
 RightLeg.Name = "Right Leg"
239
 RWL.Part1 = nil
240
 RHL.Part1 = ch["Right Leg"]
241
 RightLeg.CanCollide = false
242
end
243
function LWLRem()
244
 LeftLeg.Name = "Left Leg"
245
 LWL.Part1 = nil
246
 LHL.Part1 = ch["Left Leg"]
247
 LeftLeg.CanCollide = false
248
end
249
function RWRem()
250
 RW.Part1 = nil
251
 RSH.Part1 = ch["Right Arm"]
252
end
253
function LWRem()
254
 LW.Part1 = nil
255
 LSH.Part1 = ch["Left Arm"]
256
end
257
 
258
 
259
if Character:findFirstChild(ModelName,true) ~= nil then
260
Character:findFirstChild(ModelName,true).Parent = nil
261
 RHL.Part1 = ch["Right Leg"]
262
 LHL.Part1 = ch["Left Leg"]
263
 RSH.Part1 = ch["Right Arm"]
264
 LSH.Part1 = ch["Left Arm"]
265
end
266
 
267
 
268
 
269
local swordholder = Instance.new("Model")
270
swordholder.Name = ModelName
271
swordholder.Parent = Character
272
--derp
273
 RW.Part0 = ch.Torso
274
 RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
275
 RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
276
 RW.Parent = swordholder
277
 --
278
 LW.Part0 = ch.Torso
279
 LW.C0 = CFrame.new(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
280
 LW.C1 = CFrame.new(0, 0.5, 0)
281
 LW.Parent = swordholder
282
 --
283
 RWL.Part0 = ch.Torso
284
 RWL.C0 = CFrame.new(1, -1, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
285
 RWL.C1 = CFrame.new(0.5, 1, 0)
286
 RWL.Parent = swordholder
287
 --
288
 LWL.Part0 = ch.Torso
289
 LWL.C0 = CFrame.new(-1, -1, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
290
 LWL.C1 = CFrame.new(-0.5, 1, 0)
291
 LWL.Parent = swordholder
292
handlecolor = BrickColor.new("Really black")
293
scndryclr = BrickColor.new("Bright violet")
294
firepri = BrickColor.new("Bright red")
295
icepri = BrickColor.new("Bright blue")
296
local msh1 = Instance.new("CylinderMesh")
297
msh1.Scale = Vector3.new(1,1,1)
298
local msh2 = Instance.new("BlockMesh")
299
msh2.Scale = Vector3.new(1,1,1)
300
--
301
local msh3 = Instance.new("BlockMesh")
302
msh3.Scale = Vector3.new(1,1,1)
303
local msh3a = Instance.new("SpecialMesh")
304
msh3a.Scale = Vector3.new(1,1,1)
305
msh3a.MeshType = "Wedge"
306
local msh4 = Instance.new("BlockMesh")
307
msh4.Scale = Vector3.new(1,1,1)
308
local msh4a = Instance.new("SpecialMesh")
309
msh4a.Scale = Vector3.new(1,1,1)
310
msh4a.MeshType = "Wedge"
311
--
312
local msh5 = Instance.new("SpecialMesh")
313
msh5.Scale = Vector3.new(1,1,2)
314
msh5.MeshId = "http://www.roblox.com/asset/?id=3270017"
315
local msh6 = Instance.new("BlockMesh")
316
msh6.Scale = Vector3.new(1,1,0.5)
317
local msh7 = Instance.new("BlockMesh")
318
msh7.Scale = Vector3.new(1,1,1)
319
local msh8 = Instance.new("BlockMesh")
320
msh8.Scale = Vector3.new(0.5,1,1)
321
local prt1 = Instance.new("Part")
322
prt1.formFactor = 3
323
prt1.CanCollide = false
324
prt1.Name = "Handle"
325
prt1.Locked = true
326
prt1.Size = Vector3.new(0.2,1.5,0.2)
327
prt1.Parent = swordholder
328
msh1.Parent = prt1
329
prt1.BrickColor = handlecolor
330
local prt2 = Instance.new("Part")
331
prt2.formFactor = 3
332
prt2.CanCollide = false
333
prt2.Name = "HandleTop"
334
prt2.Locked = true
335
prt2.Size = Vector3.new(1.6,0.2,0.5)
336
prt2.Parent = swordholder
337
msh2.Parent = prt2
338
prt2.BrickColor = scndryclr
339
---
340
local prt3 = Instance.new("Part")
341
prt3.formFactor = 3
342
prt3.CanCollide = false
343
prt3.Name = "FlameBlade"
344
prt3.Locked = true
345
prt3.Size = Vector3.new(0.4,3,0.2)
346
prt3.Parent = swordholder
347
msh3.Parent = prt3
348
prt3.BrickColor = firepri
349
prt3.Reflectance = 0
350
local prt3a = Instance.new("Part")
351
prt3a.formFactor = 3
352
prt3a.CanCollide = false
353
prt3a.Name = "FlameBladeP1"
354
prt3a.Locked = true
355
prt3a.Size = Vector3.new(0.2,1,0.4)
356
prt3a.Parent = swordholder
357
msh3a.Parent = prt3a
358
prt3a.BrickColor = firepri
359
prt3a.Reflectance = 0
360
--
361
local prt4 = Instance.new("Part")
362
prt4.formFactor = 3
363
prt4.CanCollide = false
364
prt4.Name = "FrostBlade"
365
prt4.Locked = true
366
prt4.Size = Vector3.new(0.4,3,0.2)
367
prt4.Parent = swordholder
368
msh4.Parent = prt4
369
prt4.BrickColor = icepri
370
prt4.Reflectance = 0.5
371
local prt4a = Instance.new("Part")
372
prt4a.formFactor = 3
373
prt4a.CanCollide = false
374
prt4a.Name = "FrostBladeP1"
375
prt4a.Locked = true
376
prt4a.Size = Vector3.new(0.2,1,0.4)
377
prt4a.Parent = swordholder
378
msh4a.Parent = prt4a
379
prt4a.BrickColor = icepri
380
prt4a.Reflectance = 0.5
381
--
382
local prt5 = Instance.new("Part")
383
prt5.formFactor = 3
384
prt5.CanCollide = false
385
prt5.Name = "HandleRing"
386
prt5.Locked = true
387
prt5.Size = Vector3.new(1,1,0.2)
388
prt5.Parent = swordholder
389
msh5.Parent = prt5
390
prt5.BrickColor = scndryclr
391
prt5.Reflectance = 0
392
local DFlame = Instance.new("Fire")
393
DFlame.Parent = prt5
394
DFlame.Color = Color3.new(0.5,0,0.5)
395
DFlame.SecondaryColor = Color3.new(0.5,0,0.5)
396
DFlame.Heat = 25
397
DFlame.Size = 1
398
DFlame.Enabled = DarkFire
399
local prt6 = Instance.new("Part")
400
prt6.formFactor = 3
401
prt6.CanCollide = false
402
prt6.Name = "HandleP1"
403
prt6.Locked = true
404
prt6.Size = Vector3.new(0.2,1.5,0.2)
405
prt6.Parent = swordholder
406
msh6.Parent = prt6
407
prt6.BrickColor = scndryclr
408
prt6.Reflectance = 0
409
local prt7 = Instance.new("Part")
410
prt7.formFactor = 3
411
prt7.CanCollide = false
412
prt7.Name = "HandleP2"
413
prt7.Locked = true
414
prt7.Size = Vector3.new(0.7,0.2,0.2)
415
prt7.Parent = swordholder
416
msh7.Parent = prt7
417
prt7.BrickColor = scndryclr
418
prt7.Reflectance = 0
419
local prt8 = Instance.new("Part")
420
prt8.formFactor = 3
421
prt8.CanCollide = false
422
prt8.Name = "DarkBlade"
423
prt8.Locked = true
424
prt8.Size = Vector3.new(0.2,4,0.2)
425
prt8.Parent = swordholder
426
msh8.Parent = prt8
427
prt8.BrickColor = handlecolor
428
prt8.Transparency = 1
429
local hitbox = Instance.new("Part")
430
hitbox.formFactor = 3
431
hitbox.CanCollide = false
432
hitbox.Name = "Hitbox"
433
hitbox.Locked = true
434
hitbox.Size = Vector3.new(1,4,0.2)
435
hitbox.Parent = swordholder
436
hitbox.Transparency = 1
437
local hbw = Instance.new("Weld")
438
hbw.Parent = hitbox
439
hbw.Part0 = hitbox
440
hbw.Part1 = prt1
441
hbw.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0, 0)
442
hbw.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,0) * CFrame.new(0, -2.95, 0)
443
 
444
local w1 = Instance.new("Weld")
445
w1.Parent = prt1
446
w1.Part0 = prt1
447
local w2 = Instance.new("Weld")
448
w2.Parent = prt2
449
w2.Part0 = prt2
450
w2.Part1 = prt1
451
w2.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0, 0)
452
w2.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,0) * CFrame.new(0, -0.85, 0)
453
--
454
local w3 = Instance.new("Weld")
455
w3.Parent = prt3
456
w3.Part0 = prt3
457
w3.Part1 = prt1
458
w3.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0, 0)
459
w3.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,0) * CFrame.new(0.25, -2.45, 0)
460
local w3a = Instance.new("Weld")
461
w3a.Parent = prt3a
462
w3a.Part0 = prt3a
463
w3a.Part1 = prt1
464
w3a.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0, 0)
465
w3a.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(-90),0) * CFrame.new(0.25, -4.45, 0)
466
local w4 = Instance.new("Weld")
467
w4.Parent = prt4
468
w4.Part0 = prt4
469
w4.Part1 = prt1
470
w4.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0, 0)
471
w4.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,0) * CFrame.new(-0.25, -2.45, 0)
472
local w4a = Instance.new("Weld")
473
w4a.Parent = prt4a
474
w4a.Part0 = prt4a
475
w4a.Part1 = prt1
476
w4a.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0, 0)
477
w4a.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(90),0) * CFrame.new(-0.25, -4.45, 0)
478
--
479
local w5 = Instance.new("Weld")
480
w5.Parent = prt5
481
w5.Part0 = prt5
482
w5.Part1 = prt1
483
w5.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0, 0)
484
w5.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,0) * CFrame.new(-0, -0.85, 0)
485
local w6 = Instance.new("Weld")
486
w6.Parent = prt6
487
w6.Part0 = prt6
488
w6.Part1 = prt1
489
w6.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0, 0)
490
w6.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,0) * CFrame.new(-0.5, -0, 0)
491
local w7 = Instance.new("Weld")
492
w7.Parent = prt7
493
w7.Part0 = prt7
494
w7.Part1 = prt1
495
w7.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0, 0)
496
w7.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,0) * CFrame.new(-0.25, 0.75, 0)
497
local w8 = Instance.new("Weld")
498
w8.Parent = prt8
499
w8.Part0 = prt8
500
w8.Part1 = prt1
501
w8.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0, 0)
502
w8.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,0) * CFrame.new(0, -2.95, 0)
503
for ringi = 0 , math.rad(350) , math.rad(50) do
504
local ringm = Instance.new("BlockMesh")
505
ringm.Scale = Vector3.new(1,1.5,1)
506
local ringp = Instance.new("Part")
507
ringp.formFactor = 3
508
ringp.CanCollide = false
509
ringp.Name = "HandleRingP"..ringi
510
ringp.Locked = true
511
ringp.Size = Vector3.new(0.2,0.2,0.2)
512
ringp.Parent = swordholder
513
ringm.Parent = ringp
514
ringp.BrickColor = scndryclr
515
ringp.Reflectance = 0.1
516
local ringw = Instance.new("Weld")
517
ringw.Parent = ringp
518
ringw.Part0 = ringp
519
ringw.Part1 = prt5
520
ringw.C1 = CFrame.fromEulerAnglesXYZ(math.rad(90), -ringi, 0) * CFrame.new(0, 0 , 0)
521
ringw.C0 = CFrame.fromEulerAnglesXYZ(0, 0,0) * CFrame.new(-msh5.Scale.x/1.625, 0, 0) --* CFrame.new(-0.6, 0, 0) ---msh5.Scale.z/3.25
522
end
523
 
524
local Objects = {} 
525
function getAllObjects(obj)
526
 for a,v in pairs(obj:GetChildren()) do 
527
  if v:IsA("BasePart") then 
528
   table.insert(Objects,v) 
529
    end 
530
    if #v:GetChildren() > 0 then 
531
   getAllObjects(v) 
532
  end 
533
 end 
534
end 
535
getAllObjects(Workspace)
536
function Raycast(Start,End,Range) 
537
--
538
for ii = 0 , #Objects do
539
table.remove(Objects,ii)
540
end
541
getAllObjects(Workspace)
542
 local MA = math.abs
543
  local CF = CFrame.new(Start,End) 
544
   local CP = Start
545
    for i = 1, Range do--(Start - End).magnitude do 
546
     for b,v in pairs(Objects) do
547
      if v.Parent ~= nil then 
548
       local pos = Start + (CF.lookVector*i) 
549
        local dist = v.CFrame:pointToObjectSpace(pos) 
550
       if MA(dist.x) < v.Size.x/2 and MA(dist.y) < v.Size.y/2 and MA(dist.z) < v.Size.z/2 then 
551
        if v.Parent ~= Character or v.Parent ~= swordholder or v.Parent.Parent ~= Character then 
552
      return v,Start,pos 
553
      end
554
     end 
555
    end 
556
   end 
557
  end 
558
 return nil,Start,End 
559
end 
560
local RAP = Instance.new("Part")
561
RAP.formFactor = 0
562
RAP.CanCollide = false
563
RAP.Name = "RAPart"
564
RAP.Locked = true
565
RAP.Size = Vector3.new(1,1,1)
566
RAP.Parent = swordholder
567
RAP.Transparency = 1
568
local w = Instance.new("Weld")
569
w.Parent = RAP
570
w.Part0 = RAP
571
w.Part1 = RightArm
572
w.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
573
w.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0, 0) * CFrame.new(0, 1, 0)
574
 
575
function unequipweld()
576
w1.Part1 = Torso
577
w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), math.rad(0)) * CFrame.new(0, 0,0)
578
w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0),math.rad(180), math.rad(-150)) * CFrame.new(-1, -1.5, -0.6)
579
end
580
unequipweld()
581
 
582
function equipweld()
583
w1.Part1 = RAP
584
w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
585
w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(90)) * CFrame.new(0, 0, 0.2)
586
end
587
 
588
function ss(parent,p) --Slash
589
local SlashSound = Instance.new("Sound")
590
SlashSound.SoundId = "rbxasset://sounds\\swordslash.wav"
591
SlashSound.Parent = parent
592
SlashSound.Volume = .7
593
SlashSound.Pitch = p
594
SlashSound.PlayOnRemove = true
595
coroutine.resume(coroutine.create(function()
596
wait() 
597
SlashSound.Parent = nil
598
end))
599
end
600
function uss(parent,p) --unsheath
601
local SlashSound = Instance.new("Sound")
602
SlashSound.SoundId = "rbxasset://sounds\\unsheath.wav"
603
SlashSound.Parent = parent
604
SlashSound.Volume = .7
605
SlashSound.Pitch = p
606
SlashSound.PlayOnRemove = true
607
coroutine.resume(coroutine.create(function()
608
wait() 
609
SlashSound.Parent = nil
610
end))
611
end
612
function cs(parent,p) --Magic Charge
613
local SlashSound = Instance.new("Sound")
614
SlashSound.SoundId = "http://www.roblox.com/asset/?id=2101137"
615
SlashSound.Parent = parent
616
SlashSound.Volume = .7
617
SlashSound.Pitch = p
618
SlashSound.PlayOnRemove = true
619
coroutine.resume(coroutine.create(function()
620
wait() 
621
SlashSound.Parent = nil
622
end))
623
end
624
function ls(parent,p) --Lazer Sound
625
local SlashSound = Instance.new("Sound")
626
SlashSound.SoundId = "http://www.roblox.com/asset?id=1369158"
627
SlashSound.Parent = parent
628
SlashSound.Volume = .7
629
SlashSound.Pitch = p
630
SlashSound.PlayOnRemove = true
631
coroutine.resume(coroutine.create(function()
632
wait()
633
SlashSound.Parent = nil
634
end))
635
end
636
function is(parent,p) --Ice Sound
637
local SlashSound = Instance.new("Sound")
638
local rndm = math.random(1,3)
639
if rndm == 1 then
640
SlashSound.SoundId = "rbxasset://sounds\\ice.ogg"
641
elseif rndm == 2 then
642
SlashSound.SoundId = "rbxasset://sounds\\ice2.ogg"
643
elseif rndm == 3 then
644
SlashSound.SoundId = "rbxasset://sounds\\ice3.ogg"
645
end
646
SlashSound.Parent = parent
647
SlashSound.Volume = .7
648
SlashSound.Pitch = p
649
SlashSound.PlayOnRemove = true
650
coroutine.resume(coroutine.create(function()
651
wait()
652
SlashSound.Parent = nil
653
end))
654
end
655
function fs(parent,p) --Fire Sound
656
local SlashSound = Instance.new("Sound")
657
SlashSound.SoundId = "http://www.roblox.com/asset/?id=31758982"
658
SlashSound.Parent = parent
659
SlashSound.Volume = .7
660
SlashSound.Pitch = p
661
SlashSound.PlayOnRemove = true
662
coroutine.resume(coroutine.create(function()
663
wait()
664
SlashSound.Parent = nil
665
end))
666
end
667
function bs(parent,p) --Boom Sound
668
local SlashSound = Instance.new("Sound")
669
SlashSound.SoundId = "rbxasset://sounds/Rocket shot.wav"
670
SlashSound.Parent = parent
671
SlashSound.Volume = .7
672
SlashSound.Pitch = p
673
SlashSound.PlayOnRemove = true
674
coroutine.resume(coroutine.create(function()
675
wait()
676
SlashSound.Parent = nil
677
end))
678
end
679
--
680
 
681
 
682
function hideanim()
683
attack = true
684
 for i = 0 , 1 , 0.2 do
685
                wait()
686
  RW.C0 = CFrame.new(1+0.5*i,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80+67*i), math.rad(45), math.rad(-45+90*i))
687
  LW.C0 = CFrame.new(-1-0.5*i,0.5,-0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80-80*i),math.rad(-45+45*i),math.rad(45-45*i))
688
        end 
689
  LWRem() 
690
 for i = 0 , 1 , 0.15 do
691
                wait()
692
  RW.C0 = CFrame.new(1.5,0.5+0.5*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(147+103*i), math.rad(45), math.rad(45-35*i))
693
        end  
694
  unequipweld()
695
 wait(0.1)
696
 for i = 0 , 1 , 0.1 do
697
                wait()
698
  RW.C0 = CFrame.new(1.5,1-0.5*i,-0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(250-250*i), math.rad(45-45*i), math.rad(10-10*i))
699
        end  
700
  RWRem()
701
attack = false
702
end
703
 
704
function equipanim()
705
attack = true
706
RWFunc()
707
 for i = 0 , 1 , 0.1 do
708
                wait()
709
  RW.C0 = CFrame.new(1.5,0.5,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(250*i), math.rad(45*i), math.rad(-10*i))
710
        end 
711
  equipweld()
712
 uss(Head,1)
713
 for i = 0 , 1 , 0.2 do
714
                wait()
715
  RW.C0 = CFrame.new(1.5,0.5+0.5*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(250-102.5*i), math.rad(45), math.rad(-10+27.5*i))
716
        end  
717
 for i = 0 , 1 , 0.15 do
718
                wait()
719
  RW.C0 = CFrame.new(1.5,1-0.5*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(147-67*i), math.rad(45), math.rad(17.5+27.5*i))
720
        end  
721
 LWFunc()
722
 for i = 0 , 1 , 0.1 do
723
                wait()
724
  RW.C0 = CFrame.new(1.5-0.5*i,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80), math.rad(45), math.rad(45-90*i))
725
  LW.C0 = CFrame.new(-1.5+0.5*i,0.5,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80*i),math.rad(-45*i),math.rad(45*i))
726
        end 
727
attack = false
728
end
729
 
730
if (script.Parent.className ~= "HopperBin") then 
731
Tool = Instance.new("HopperBin") 
732
Tool.Parent = Backpack 
733
Tool.Name = ToolName
734
script.Parent = Tool 
735
end 
736
Bin = script.Parent 
737
 
738
function damagesplat(dmg,hit,critornot,healornot)
739
local OffsetX = -2.5
740
local OffsetY = 5
741
local OffsetZ = 0
742
local bill = Instance.new("BillboardGui")
743
bill.Size = UDim2.new(1,0,1,0)
744
bill.Adornee = hit
745
bill.StudsOffset = Vector3.new(OffsetX,OffsetY,OffsetZ)
746
bill.Parent = hit.Parent
747
bill.Name = "DamageSplat"
748
local tex = Instance.new("TextLabel")
749
tex.Size = UDim2.new(5,0,2.5,0)
750
tex.Parent = bill
751
tex.Text = dmg
752
tex.BackgroundTransparency = 1
753
tex.ZIndex = 4
754
tex.FontSize = "Size24"
755
local tex2 = Instance.new("ImageLabel")
756
tex2.Size = UDim2.new(1,0,1,0)
757
tex2.Parent = tex
758
tex2.BackgroundTransparency = 1
759
tex2.Image = "http://www.roblox.com/asset/?id=42611276"
760
if critornot == true then
761
tex.TextColor3 = Color3.new(1,0.2,0.2)
762
elseif critornot == false then
763
tex.TextColor3 = Color3.new(0,0,0)
764
end
765
if healornot == true then
766
tex.TextColor3 = Color3.new(0.2,0.5,0.5)
767
end
768
coroutine.resume(coroutine.create(function()
769
wait(0.25)
770
for i = 0 , 1 , 0.075 do
771
wait()
772
bill.StudsOffset = Vector3.new(OffsetX,OffsetY+5*i,OffsetZ)
773
tex.TextTransparency = 1*i
774
end
775
bill.Parent = nil
776
end))
777
end
778
function FireEff(Part,Time,Color1,Color2,Color3)
779
local Firee = Part
780
local Spawn = Part
781
local colors = {} 
782
if Color1 ~= nil then
783
table.insert(colors,BrickColor.new(Color1))
784
end
785
if Color2 ~= nil then
786
table.insert(colors,BrickColor.new(Color2))
787
end
788
if Color3 ~= nil then
789
table.insert(colors,BrickColor.new(Color3))
790
end
791
if Color4 ~= nil then
792
table.insert(colors,BrickColor.new(Color4))
793
end
794
local Embers = {} 
795
local modelz = Instance.new("Model",Firee)
796
modelz.Name = "FireHolder"
797
for X = 1, 3 do
798
local f = Instance.new("Part") 
799
f.Parent = nil
800
f.BrickColor = colors[math.random(1, # colors)] 
801
f.Size = Vector3.new(1,1,1) 
802
f.formFactor = 1
803
f.Anchored = true 
804
f.Locked = true 
805
f.CanCollide = false 
806
f.Transparency = 0.5 
807
f.Name = "Fire"
808
f.TopSurface = 0
809
f.BottomSurface = 0
810
table.insert(Embers, f) 
811
end 
812
local R = 0
813
coroutine.resume(coroutine.create(function ()
814
repeat 
815
wait() 
816
R = R + 1
817
for X = 1, # Embers do 
818
Embers[X].Parent = modelz
819
local FM = math.fmod(R + X, # Embers) 
820
if FM == 1 then 
821
RandPos = Vector3.new(math.random(-Spawn.Size.x * 5, Spawn.Size.x * 5) / 10, Spawn.Size.y / 2, math.random(-Spawn.Size.x * 5, Spawn.Size.x * 5) / 10) 
822
RandDir = Vector3.new(math.random(-100,100), math.random(-100,100), math.random(-100,100)) 
823
Embers[X].CFrame = CFrame.new(Spawn.Position + RandPos, Spawn.Position + RandPos + RandDir) 
824
else 
825
Embers[X].CFrame = CFrame.new(Embers[X].Position + Vector3.new(0,0.5,0), Embers[X].Position + Vector3.new(0,0.5,0) + Embers[X].CFrame.lookVector) 
826
end 
827
end 
828
until R == Time
829
for i = 0 ,1 , 0.1 do
830
wait(0.2)
831
for X = 1, # Embers do 
832
Embers[X].Transparency = 0.5+0.5*i
833
end
834
end
835
for X = 1, # Embers do 
836
Embers[X].Parent = nil
837
end
838
end))
839
end
840
 
841
function OT(hit) --Normal Damage
842
if Hitdeb == 1 then return end
843
if hit.Parent == nil then return end
844
local hum = hit.Parent:findFirstChild("Humanoid")
845
if hum ~= nil and hum ~= Character.Humanoid then
846
local critrandomizer = math.random(1,crtrate)
847
if critrandomizer ~= 1 then
848
local rndmdamage = math.random(mindamage,maxdamage)
849
damagesplat(rndmdamage,hit,false)
850
hum:TakeDamage(rndmdamage)
851
elseif critrandomizer == 1 then
852
local rndmdamage = math.random(maxdamage,crtmaxdamage)
853
damagesplat(rndmdamage,hit,true)
854
hum:TakeDamage(rndmdamage)
855
end
856
Hitdeb = 1
857
end
858
end
859
 
860
function OTND(part) --No Debounce Damage
861
coroutine.resume(coroutine.create(function() 
862
local dd = false
863
while part.Parent ~= nil and not dd do
864
wait() 
865
local c = game.Workspace:GetChildren(); 
866
for i = 1, #c do 
867
local hum = c[i]:findFirstChild("Humanoid") 
868
if hum ~= nil and hum.Health ~= 0 then 
869
local head = c[i]:findFirstChild("Torso"); 
870
if head ~= nil then 
871
local targ = head.Position - part.Position;                                              ------------------------------------------------Local 
872
local mag = targ.magnitude; 
873
if mag <= 5 and c[i].Name ~= Player.Name then 
874
dd = true
875
local rndmdamage = math.random(1,7+5*math.random()) + fireboost
876
damagesplat(rndmdamage,head,false)
877
hum:TakeDamage(rndmdamage)
878
FireEff(head,150,"Bright red","Bright orange","Cool yellow")
879
part.Parent = nil
880
 
881
end 
882
end 
883
end 
884
end 
885
end 
886
end)) 
887
end
888
 
889
function AoE(p,magnitude,damage,critornot) 
890
 local c = game.Workspace:GetChildren();
891
 for i = 1, #c do
892
                local hum = c[i]:findFirstChild("Humanoid")
893
                if hum ~= nil and hum.Health ~= 0 then
894
  local head = c[i]:findFirstChild("Head");
895
                if head ~= nil then
896
  local targ = head.Position - p;
897
  local mag = targ.magnitude;
898
  if mag <= magnitude and c[i].Name ~= Character.Name then
899
  local foundd = false
900
  for ii = 1 , #AoETrue do
901
  if AoETrue[ii] == c[i].Name then
902
  --delay(1,function() table.remove(AoETrue,ii) end)
903
  --blast(2.5,0.5,"Bright red",prt2,false)
904
  foundd = true
905
  end
906
  end
907
  if foundd then
908
  end
909
  --
910
  if not foundd then
911
  hum:TakeDamage(damage)
912
  damagesplat(damage,head,critornot)
913
  table.insert(AoETrue,c[i].Name)
914
  --blast(2.5,0.5,"Bright red",prt2)
915
  end
916
  end
917
  end
918
                end
919
 end
920
end
921
function AoEP(p,magnitude,damage,critornot) 
922
 local c = game.Workspace:GetChildren();
923
 for i = 1, #c do
924
                local hum = c[i]:findFirstChild("Humanoid")
925
                if hum ~= nil and hum.Health ~= 0 then
926
  local head = c[i]:findFirstChild("Head");
927
                if head ~= nil then
928
  local targ = head.Position - p;
929
  local mag = targ.magnitude;
930
  if mag <= magnitude and c[i].Name ~= Character.Name then
931
  local foundd = false
932
  for ii = 1 , #AoETrue do
933
  if AoETrue[ii] == c[i].Name then
934
  --delay(1,function() table.remove(AoETrue,ii) end)
935
  --blast(2.5,0.5,"Bright red",prt2,false)
936
  foundd = true
937
  end
938
  end
939
  if foundd then
940
  end
941
  --
942
  if not foundd then
943
  hum:TakeDamage(damage)
944
  damagesplat(damage,head,critornot)
945
  c[i].Humanoid.Sit = true
946
  coroutine.resume(coroutine.create(function() 
947
local bp = Instance.new("BodyVelocity",c[i].Torso)
948
bp.maxForce = Vector3.new(math.huge,math.huge,math.huge)
949
bp.P = bp.P*2
950
bp.velocity = CFrame.new(c[i].Torso.Position , p).lookVector * 150 + Vector3.new(0,25,0)
951
coroutine.resume(coroutine.create(function() 
952
for i=1, 
953
bp.velocity.y/3 do 
954
bp.velocity = bp.velocity+Vector3.new(0,-4.25,0) 
955
wait() 
956
end  
957
bp.Parent = nil   
958
end))
959
c[i].Torso.RotVelocity = CFrame.new(c[i].Torso.Position , p).lookVector * 25
960
wait(0.4) c[i].Humanoid.Sit = false end))
961
  table.insert(AoETrue,c[i].Name)
962
  end
963
  end
964
  end
965
                end
966
 end
967
end
968
--
969
 
970
local LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
971
function effect(Color,Ref,LP,P1,returnn)
972
local effectsmsh = Instance.new("BlockMesh")
973
effectsmsh.Scale = Vector3.new(0.5,1,0.5)
974
effectsmsh.Name = "Mesh"
975
local effectsg = Instance.new("Part")
976
effectsg.formFactor = 3
977
effectsg.CanCollide = false
978
effectsg.Name = "Eff"
979
effectsg.Locked = true
980
effectsg.Anchored = true
981
effectsg.Size = Vector3.new(0.2,1,0.2)
982
effectsg.Parent = swordholder
983
effectsmsh.Parent = effectsg
984
effectsg.BrickColor = BrickColor.new(Color)
985
effectsg.Reflectance = Ref
986
local point1 = P1
987
local mg = (LP.p - point1.p).magnitude
988
effectsg.Size = Vector3.new(0.2,mg,0.2)
989
effectsg.CFrame = CFrame.new((LP.p+point1.p)/2,point1.p) * CFrame.Angles(math.rad(90),0,0)
990
if returnn then return effectsg end
991
coroutine.resume(coroutine.create(function()
992
if not returnn then
993
for i = 0 , 1 , 0.1 do
994
wait()
995
effectsg.Transparency = 1*i
996
end
997
wait()
998
effectsg.Parent = nil
999
end
1000
end))
1001
end
1002
 
1003
con = nil
1004
function dmgcnnct(p)
1005
con = p.Touched:connect(OT)
1006
end
1007
function dmgdc()
1008
if con ~= nil then
1009
con:disconnect()
1010
Hitdeb = 0
1011
end
1012
end
1013
function atktype(s,e)
1014
coroutine.resume(coroutine.create(function ()
1015
attacktype = e
1016
wait(0.5)
1017
repeat wait() until attack
1018
attacktype = s
1019
end))
1020
end
1021
 
1022
hold = false 
1023
function Combo1a()
1024
attack=true
1025
 for i = 0 , 1 , 0.1 do
1026
                wait()
1027
  RW.C0 = CFrame.new(1-0.5*i,0.5,-0.5-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80+10*i), math.rad(45+45*i), math.rad(-45+45*i))
1028
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(-45*i), math.rad(10*i), math.rad(0))
1029
  LW.C0 = CFrame.new(-1,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80+10*i),math.rad(-45+45*i),math.rad(45-20*i))
1030
    end 
1031
 dmgcnnct(hitbox)
1032
 ss(Head,1.5)
1033
 for i = 0 , 1 , 0.2 do
1034
 LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1035
                wait()
1036
  RW.C0 = CFrame.new(0.5+1*i,0.5,-1+1*i) * CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(90), math.rad(0))
1037
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(-45+135*i), math.rad(10+35*i), math.rad(0))
1038
  LW.C0 = CFrame.new(-1+1*i,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(90),math.rad(0),math.rad(25+65*i))
1039
  effect("Bright blue",0.2,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0))
1040
    end 
1041
 dmgdc()
1042
 for i = 0 , 1 , 0.2 do
1043
  LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1044
                wait()
1045
  RW.C0 = CFrame.new(1.5,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(90), math.rad(0))
1046
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(90+20*i), math.rad(45+5*i), math.rad(0))
1047
  LW.C0 = CFrame.new(-0.25*i,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(90),math.rad(0),math.rad(90+10*i))
1048
  effect("Bright blue",0.2,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0))
1049
    end 
1050
 attacktype = 2
1051
 coroutine.resume(coroutine.create(function ()
1052
 wait(0.25)
1053
 attacktype = 1
1054
 end))
1055
 attack=false
1056
 wait(0.15)
1057
 wait()
1058
 for i = 0 , 1 , 0.1 do
1059
 if not attack then 
1060
                wait()
1061
  RW.C0 = CFrame.new(1.5-0.5*i,0.5,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(90-10*i), math.rad(90-45*i), math.rad(-45*i))
1062
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(110-110*i), math.rad(50-50*i), math.rad(0))
1063
  LW.C0 = CFrame.new(-0.25-0.75*i,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(90-10*i),math.rad(-45*i),math.rad(100-55*i))
1064
 end
1065
    end 
1066
 
1067
end
1068
function Combo1b()
1069
attack=true
1070
 for i = 0 , 1 , 0.1 do
1071
                wait()
1072
  RW.C0 = CFrame.new(1.5-0.5*i,0.5,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(90), math.rad(0))
1073
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(110-155*i), math.rad(50-40*i), math.rad(0))
1074
  LW.C0 = CFrame.new(-0.25-0.75*i,0.5,-0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(90),math.rad(0),math.rad(100-50*i))
1075
    end 
1076
 
1077
cs(Head,1.5)
1078
local tempmod = Instance.new("Model",swordholder)
1079
for l = 1 , 20 do
1080
local meshz = Instance.new("SpecialMesh")
1081
meshz.Scale = Vector3.new(0.5,0.5,0.5)
1082
meshz.MeshType = "Sphere"
1083
local shellz = Instance.new("Part")
1084
meshz.Parent = shellz
1085
shellz.Anchored = false
1086
shellz.formFactor = 0
1087
shellz.Size = Vector3.new(1,1,1)
1088
shellz.CFrame = hitbox.CFrame * CFrame.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))
1089
shellz.Parent = tempmod
1090
shellz.Transparency = 0.5
1091
shellz.BrickColor = BrickColor.new("Bright violet")
1092
shellz.CanCollide = false
1093
shellz.Reflectance = 0.25
1094
local bv = Instance.new("BodyPosition") 
1095
bv.Parent = shellz
1096
bv.maxForce = Vector3.new(200000,200000,200000) 
1097
bv.position = shellz.Position
1098
coroutine.resume(coroutine.create(function()
1099
for i = 0 , 1 , 0.025 do
1100
wait()
1101
shellz.Transparency = 1-1*i
1102
end
1103
shellz.Transparency = 0
1104
end))
1105
coroutine.resume(coroutine.create(function()
1106
wait(0.05)
1107
bv.position = hitbox.Position 
1108
for i = 1 , 20 do
1109
wait(0.1)
1110
bv.position = shell.Position 
1111
end
1112
shellz.Parent = nil
1113
end))
1114
wait(0.01)
1115
end
1116
coroutine.resume(coroutine.create(function ()
1117
wait(0.25)
1118
tempmod.Parent = nil
1119
end))
1120
 for i = 0 , 1 , 0.2 do
1121
  LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1122
                wait()
1123
  RW.C0 = CFrame.new(1-0.5*i,0.5,-0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(90), math.rad(0))
1124
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(-45+135*i), math.rad(10), math.rad(0))
1125
  LW.C0 = CFrame.new(-1+1.5*i,0.5,-1*i) * CFrame.fromEulerAnglesXYZ(math.rad(90),math.rad(0),math.rad(50+40*i))
1126
 effect("Really red",0,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0))
1127
    end 
1128
local gyro = Instance.new("BodyGyro")
1129
gyro.maxTorque = Vector3.new(math.huge,math.huge,math.huge)
1130
gyro.P = gyro.P + 10000
1131
local CF = Torso.CFrame
1132
gyro.cframe = CF
1133
gyro.Parent = Torso
1134
dmgcnnct(hitbox)
1135
ss(Head,1)
1136
 for i = 0 , 1 , 0.1 do
1137
 LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1138
 wait()
1139
 gyro.cframe = CF * CFrame.Angles(0,math.rad(-360*i),0)
1140
 effect("Really red",0,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0))
1141
 end
1142
ss(Head,1)
1143
Hitdeb = 0
1144
 for i = 0 , 1 , 0.1 do
1145
 LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1146
 wait()
1147
 gyro.cframe = CF * CFrame.Angles(0,math.rad(-360*i),0)
1148
 effect("Really red",0,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0))
1149
 end
1150
dmgdc()
1151
 attacktype = 3
1152
 coroutine.resume(coroutine.create(function ()
1153
 wait(0.5)
1154
 attacktype = 1
1155
 end))
1156
 wait(0.15)
1157
 wait()
1158
gyro.Parent = nil
1159
  attack=false
1160
 for i = 0 , 1 , 0.1 do
1161
 if not attack then 
1162
                wait()
1163
  RW.C0 = CFrame.new(0.5+0.5*i,0.5,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(90-10*i), math.rad(90-45*i), math.rad(-45*i))
1164
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(90-90*i), math.rad(10-10*i), math.rad(0))
1165
  LW.C0 = CFrame.new(0.5-1.5*i,0.5,-1+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(90-10*i),math.rad(-45*i),math.rad(50-5*i))
1166
 end
1167
 end
1168
end
1169
 
1170
function Combo1c()
1171
attack=true
1172
local bp = Instance.new("BodyPosition")
1173
bp.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1174
bp.P = bp.P + 10000
1175
local CF = Torso.CFrame
1176
bp.position = CF.p
1177
bp.Parent = Torso
1178
RWLFunc()
1179
LWLFunc()
1180
for zz = 1 , 2  do
1181
local mesh = Instance.new("SpecialMesh")
1182
mesh.MeshType = "FileMesh"
1183
mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
1184
mesh.Scale = Vector3.new(10,5,10) * Vector3.new(0.01,0.01,0.01)
1185
local shell = Instance.new("Part")
1186
mesh.Parent = shell
1187
shell.Anchored = true
1188
shell.formFactor = 1
1189
shell.Size = Vector3.new(1,1,1)
1190
shell.CFrame = Torso.CFrame * CFrame.Angles(0,0.5*zz,0) + Vector3.new(0,-2.5,0) -- + shellspawn.CFrame.lookVector * 2
1191
shell.Parent = swordholder
1192
shell.Transparency = 0
1193
shell.BrickColor = BrickColor.new("White")
1194
shell.CanCollide = false
1195
coroutine.resume(coroutine.create(function()
1196
for i = 0 , 1 , 0.05 do
1197
wait()
1198
mesh.Scale = Vector3.new(10,5,10) * Vector3.new(i,1,i)
1199
shell.Transparency = 1*i
1200
end
1201
shell.Transparency = 1
1202
shell.Parent = nil
1203
end))
1204
end
1205
 for i = 0 , 1 , 0.1 do
1206
 LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1207
 wait()
1208
  RW.C0 = CFrame.new(0.5+0.5*i,0.5+1*i,0) * CFrame.fromEulerAnglesXYZ(math.rad(90+100*i), math.rad(90-90*i), math.rad(-45*i))
1209
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(90-90*i), math.rad(10-10*i), math.rad(0))
1210
  LW.C0 = CFrame.new(0.5-1.5*i,0.5+1*i,-1+1*i) * CFrame.fromEulerAnglesXYZ(math.rad(90+100*i),math.rad(0),math.rad(50-5*i))
1211
w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
1212
w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(90-45*i)) * CFrame.new(0, 0, 0.2)
1213
 bp.position = CF.p + Vector3.new(0,10,0)
1214
 RWL.C0 = CFrame.new(1, -1, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-20*i), math.rad(0), math.rad(0))
1215
 LWL.C0 = CFrame.new(-1, -1, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-20*i), math.rad(0), math.rad(0))
1216
 prt8.Transparency = 1-1*i
1217
 effect("Really black",0,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0))
1218
end
1219
 cs(Head,1.5)
1220
coroutine.resume(coroutine.create(function ()
1221
local tempmod = Instance.new("Model",swordholder)
1222
for l = 1 , 20 do
1223
local meshz = Instance.new("SpecialMesh")
1224
meshz.Scale = Vector3.new(1.5,1.5,1.5)
1225
meshz.MeshType = "Sphere"
1226
local shellz = Instance.new("Part")
1227
meshz.Parent = shellz
1228
shellz.Anchored = false
1229
shellz.formFactor = 0
1230
shellz.Size = Vector3.new(1,1,1)
1231
shellz.CFrame = hitbox.CFrame * CFrame.new(math.random(-15,15),math.random(-15,15),math.random(-15,15))
1232
shellz.Parent = tempmod
1233
shellz.Transparency = 0.5
1234
shellz.BrickColor = BrickColor.new("Really black")
1235
shellz.CanCollide = false
1236
shellz.Reflectance = 0
1237
local bv = Instance.new("BodyPosition") 
1238
bv.Parent = shellz
1239
bv.maxForce = Vector3.new(200000,200000,200000) 
1240
bv.position = shellz.Position
1241
local hx = false
1242
coroutine.resume(coroutine.create(function()
1243
for i = 0 , 1 , 0.05 do
1244
wait()
1245
shellz.Transparency = 1-1*i
1246
end
1247
shellz.Transparency = 0
1248
end))
1249
coroutine.resume(coroutine.create(function()
1250
wait(0.05)
1251
bv.position = hitbox.Position 
1252
for i = 1 , 20 do
1253
wait(0.1)
1254
bv.position = shell.Position 
1255
end
1256
shellz.Parent = nil
1257
end))
1258
wait(0.01)
1259
end
1260
coroutine.resume(coroutine.create(function ()
1261
repeat wait() until hx
1262
tempmod.Parent = nil
1263
end))
1264
end))
1265
 for i = 0 , 1 , 0.1 do
1266
 LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1267
 wait()
1268
  RW.C0 = CFrame.new(1,1.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(190+20*i), math.rad(0), math.rad(-45))
1269
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1270
  LW.C0 = CFrame.new(-1,1.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(190+20*i),math.rad(0),math.rad(45))
1271
  effect("Really black",0,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0))
1272
 end
1273
 for i = 0 , 1 , 0.1 do
1274
 LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1275
 wait()
1276
  RW.C0 = CFrame.new(1,1.5-1*i,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(210-130*i), math.rad(0), math.rad(-45))
1277
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1278
  LW.C0 = CFrame.new(-1,1.5-1*i,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(210-130*i),math.rad(0),math.rad(45))
1279
w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
1280
w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180*i), math.rad(45)) * CFrame.new(0, 0, 0.2)
1281
 bp.position = CF.p + CF.lookVector * 2.5 + Vector3.new(0,-1,0)
1282
 RWL.C0 = CFrame.new(1, -1+1*i, -1*i) * CFrame.fromEulerAnglesXYZ(math.rad(-20+20*i), math.rad(0), math.rad(0))
1283
 LWL.C0 = CFrame.new(-1, -1+1*i, -1*i) * CFrame.fromEulerAnglesXYZ(math.rad(-20+20*i), math.rad(0), math.rad(0))
1284
  effect("Really black",0,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0))
1285
 end
1286
 hx = true
1287
 wait(0.1)
1288
local Hit,A, B = Raycast(hitbox.Position + Vector3.new(0,3,0) + Torso.CFrame.lookVector * 1 ,hitbox.Position + Vector3.new(0,3,0) + Torso.CFrame.lookVector * 101 ,100)
1289
local effectsmsh = Instance.new("CylinderMesh")
1290
effectsmsh.Scale = Vector3.new(1,1,1)
1291
local effectsg = Instance.new("Part")
1292
effectsg.formFactor = 3
1293
effectsg.CanCollide = false
1294
effectsg.Name = "LAZOR"
1295
effectsg.Locked = true
1296
effectsg.Anchored = true
1297
effectsg.Parent = swordholder
1298
effectsmsh.Parent = effectsg
1299
effectsg.BrickColor = BrickColor.new("Black")
1300
effectsg.Reflectance = 0.5
1301
local point1 = B
1302
local point0 = A
1303
for zz = 1 , 5  do
1304
local mesh = Instance.new("SpecialMesh")
1305
mesh.MeshType = "FileMesh"
1306
mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
1307
mesh.Scale = Vector3.new(10,5,10) * Vector3.new(0.01,0.01,0.01)
1308
local shell = Instance.new("Part")
1309
mesh.Parent = shell
1310
shell.Anchored = true
1311
shell.formFactor = 1
1312
shell.Size = Vector3.new(1,1,1)
1313
shell.CFrame = CFrame.new((point0+point1)/2,point1) + CFrame.new((point0+point1)/2,point1).lookVector * (((point0)-(point1)).magnitude /-2) + Torso.CFrame.lookVector * 2
1314
shell.CFrame = shell.CFrame * CFrame.Angles(math.rad(-90),0.5*zz,0)
1315
shell.Parent = swordholder
1316
shell.Transparency = 0
1317
if math.fmod(zz,2) == 0 then
1318
shell.BrickColor = BrickColor.new("Really black")
1319
else
1320
shell.BrickColor = BrickColor.new("Bright violet")
1321
end
1322
shell.CanCollide = false
1323
coroutine.resume(coroutine.create(function()
1324
for i = 0 , 1 , 0.01 do
1325
wait()
1326
mesh.Scale = Vector3.new(10,5,10) * Vector3.new(i,1,i)
1327
shell.Transparency = 1*i
1328
end
1329
shell.Transparency = 1
1330
shell.Parent = nil
1331
end))
1332
end
1333
for zz = 1 , 1 do
1334
local mesh = Instance.new("SpecialMesh")
1335
mesh.MeshType = "Sphere"
1336
mesh.Scale = Vector3.new(20,15,10) * Vector3.new(0.01,0.01,0.01)
1337
local shell = Instance.new("Part")
1338
mesh.Parent = shell
1339
shell.Anchored = true
1340
shell.formFactor = 1
1341
shell.Size = Vector3.new(1,1,1)
1342
shell.CFrame = CFrame.new((point0+point1)/2,point1) + CFrame.new((point0+point1)/2,point1).lookVector * (((point0)-(point1)).magnitude /-2) + Torso.CFrame.lookVector * 10
1343
shell.CFrame = shell.CFrame * CFrame.Angles(math.rad(-90),0,0)
1344
shell.Parent = swordholder
1345
shell.Transparency = 0
1346
shell.BrickColor = BrickColor.new("Bright violet")
1347
shell.CanCollide = false
1348
coroutine.resume(coroutine.create(function()
1349
for i = 0 , 1 , 0.02 do
1350
wait()
1351
mesh.Scale = Vector3.new(10,15,15) * Vector3.new(i,1,i)
1352
shell.CFrame = shell.CFrame * CFrame.Angles(0,i,0)
1353
shell.Transparency = 1-1*i
1354
end
1355
for i = 0 , 1 , 0.05 do
1356
wait()
1357
shell.CFrame = shell.CFrame * CFrame.Angles(0,i,0)
1358
shell.Transparency = 1*i
1359
end
1360
shell.Transparency = 1
1361
shell.Parent = nil
1362
end))
1363
end
1364
for zz = 1 , 1 do
1365
local mesh = Instance.new("CylinderMesh")
1366
mesh.Scale = Vector3.new(20,0.5,10) * Vector3.new(0.01,0.01,0.01)
1367
local shell = Instance.new("Part")
1368
mesh.Parent = shell
1369
shell.Anchored = true
1370
shell.formFactor = 1
1371
shell.Size = Vector3.new(1,1,1)
1372
shell.CFrame = CFrame.new((point0+point1)/2,point1) + CFrame.new((point0+point1)/2,point1).lookVector * (((point0)-(point1)).magnitude /-2) + Torso.CFrame.lookVector * -0.5
1373
shell.CFrame = shell.CFrame * CFrame.Angles(math.rad(-90),0,0)
1374
shell.Parent = swordholder
1375
shell.Transparency = 0
1376
shell.BrickColor = BrickColor.new("Bright violet")
1377
shell.CanCollide = false
1378
coroutine.resume(coroutine.create(function()
1379
for i = 0 , 1 , 0.02 do
1380
wait()
1381
mesh.Scale = Vector3.new(20,0.5,20) * Vector3.new(i,1,i)
1382
shell.Transparency = 1-1*i
1383
end
1384
for i = 0 , 1 , 0.02 do
1385
wait()
1386
shell.Transparency = 1*i
1387
end
1388
shell.Transparency = 1
1389
shell.Parent = nil
1390
end)) 
1391
end
1392
for zz = 1 , 10  do
1393
local mesh = Instance.new("SpecialMesh")
1394
mesh.MeshType = "FileMesh"
1395
mesh.MeshId = "http://www.roblox.com/Asset/?id=9756362"
1396
mesh.Scale = Vector3.new(5,5,5) * Vector3.new(0.01,0.01,0.01)
1397
local shell = Instance.new("Part")
1398
mesh.Parent = shell
1399
shell.Anchored = true
1400
shell.formFactor = 1
1401
shell.Size = Vector3.new(1,1,1)
1402
shell.CFrame = CFrame.new((point0+point1)/2,point1) + CFrame.new((point0+point1)/2,point1).lookVector * (((point0)-(point1)).magnitude /2)
1403
shell.CFrame = shell.CFrame * CFrame.Angles(math.rad(-90)+2*math.random(),2*math.random(),2*math.random())
1404
shell.Parent = swordholder
1405
shell.Transparency = 0
1406
if math.fmod(zz,2) == 0 then
1407
shell.BrickColor = BrickColor.new("Really black")
1408
else
1409
shell.BrickColor = BrickColor.new("Bright violet")
1410
end
1411
shell.CanCollide = false
1412
coroutine.resume(coroutine.create(function()
1413
for i = 0 , 1 , 0.01 do
1414
wait()
1415
mesh.Scale = Vector3.new(25,25,25) * Vector3.new(i,i,i)
1416
shell.Transparency = 1*i
1417
end
1418
shell.Transparency = 1
1419
shell.Parent = nil
1420
end))
1421
end
1422
coroutine.resume(coroutine.create(function()
1423
effectsg.Transparency = 1
1424
for i = 0 , 1 , 0.1 do
1425
wait()
1426
effectsg.Transparency = 1-1*i
1427
end
1428
wait(2)
1429
for i = 0 , 1 , 0.1 do
1430
wait()
1431
effectsg.Transparency = 1*i
1432
end
1433
effectsg.Parent = nil
1434
end))
1435
local mg = 100
1436
if Hit ~= nil then
1437
mg = (point0-point1).magnitude
1438
elseif Hit == nil then
1439
mg = 100
1440
end
1441
ls(Head,0.5)
1442
ls(Head,0.75)
1443
cs(Head,0.25)
1444
ls(Head,1)
1445
ls(Head,3)
1446
cs(Head,0.15)
1447
for mgg = 0 , 1,0.1 do
1448
wait()
1449
effectsg.Size = Vector3.new(5,(mg*mgg)+0.2,5)
1450
local durr = CFrame.new((point0+(point1))/2,(point1))
1451
effectsg.CFrame = CFrame.new((point0+(point1-durr.lookVector * (mg*(1-mgg))))/2,(point1)) * CFrame.Angles(math.rad(90),0,0)
1452
end
1453
local critrandomizer = math.random(1,crtrate)
1454
if critrandomizer ~= 1 then
1455
local rndmdamage = math.random(mindamage+30,maxdamage+30)
1456
AoEP((CFrame.new((point0+point1)/2,point1) + CFrame.new((point0+point1)/2,point1).lookVector * (((point0)-(point1)).magnitude /2)).p,15,rndmdamage+darkboost,false) 
1457
elseif critrandomizer == 1 then
1458
local rndmdamage = math.random(maxdamage+30,crtmaxdamage+30)
1459
AoEP((CFrame.new((point0+point1)/2,point1) + CFrame.new((point0+point1)/2,point1).lookVector * (((point0)-(point1)).magnitude /2)).p,15,rndmdamage+darkboost,true)
1460
end
1461
bp.Parent = nil
1462
 for i = 0 , 1 , 0.1 do
1463
                wait()
1464
  RW.C0 = CFrame.new(1,1-0.5*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80), math.rad(90-45*i), math.rad(-45))
1465
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1466
  LW.C0 = CFrame.new(-1,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80),math.rad(-45*i),math.rad(45))
1467
w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
1468
w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180-180*i), math.rad(45+45*i)) * CFrame.new(0, 0, 0.2)
1469
 RWL.C0 = CFrame.new(1, -1*i, -1+1*i) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1470
 LWL.C0 = CFrame.new(-1, -1*i, -1+1*i) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1471
 prt8.Transparency = 1*i
1472
    end 
1473
  for ii = 1 , #AoETrue do
1474
  table.remove(AoETrue,#AoETrue)
1475
  end
1476
RWLRem()
1477
LWLRem()
1478
attack = false
1479
attacktype = 1
1480
end
1481
function BlizzardSword()
1482
attack=true
1483
 for i = 0 , 1 , 0.2 do
1484
                wait()
1485
  RW.C0 = CFrame.new(1,0.5+1*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80+55*i), math.rad(45-45*i), math.rad(-45))
1486
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1487
  LW.C0 = CFrame.new(-1,0.5+1*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80+55*i),math.rad(-45+45*i),math.rad(45))
1488
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), 0) * CFrame.new(0, 0,0)
1489
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(90-45*i)) * CFrame.new(0, 0, 0.2)
1490
    end 
1491
 local wssave = Character.Humanoid.WalkSpeed
1492
 Character.Humanoid.WalkSpeed = 0
1493
 ss(Head,1.5)
1494
 local efftab = {}
1495
 for i = 0 , 1 , 0.2 do
1496
   LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1497
                wait()
1498
  RW.C0 = CFrame.new(1,1.5-1.5*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(135-135*i), math.rad(0), math.rad(-45))
1499
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1500
  LW.C0 = CFrame.new(-1,1.5-1.5*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(135-135*i),math.rad(0),math.rad(45))
1501
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), 0) * CFrame.new(0, 0,0)
1502
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(45)) * CFrame.new(0, 0, 0.2)
1503
  local eff = effect("Bright blue",0.2,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0),true)
1504
  table.insert(efftab,eff)
1505
    end 
1506
local trspos = Torso.Position
1507
 Character.Humanoid.WalkSpeed = wssave
1508
 for _,efff in pairs(efftab) do
1509
 wait()
1510
 coroutine.resume(coroutine.create(function()
1511
 for i = 0 , 1 , 0.15 do 
1512
 wait()
1513
 efff.Transparency = 1*i
1514
 end 
1515
 wait()
1516
 efff.Transparency = 1
1517
 end))
1518
 end
1519
 for io,eff in pairs(efftab) do
1520
 wait()
1521
for zz = 1 , 1 do
1522
local mesh = Instance.new("CylinderMesh")
1523
mesh.Scale = Vector3.new(0.1,0.5,0.1)
1524
local shell = Instance.new("Part")
1525
mesh.Parent = shell
1526
shell.Anchored = true
1527
shell.formFactor = 1
1528
shell.Size = Vector3.new(1,1,1)
1529
local dur = CFrame.new(trspos,eff.Position)
1530
local CF1 = dur * CFrame.Angles(math.rad(90),0,0) * CFrame.new(0,-6,0)
1531
shell.CFrame = CF1
1532
shell.Parent = eff
1533
shell.Transparency = 1
1534
shell.Reflectance = 0.25
1535
shell.BrickColor = BrickColor.new("Bright blue")
1536
shell.CanCollide = false
1537
is(shell,0.5)
1538
 coroutine.resume(coroutine.create(function()
1539
 for i = 0 , 1 , 0.1 do 
1540
 wait()
1541
 shell.Transparency = 1-1*i
1542
 mesh.Scale = Vector3.new(0.1+4.9*i,0.5,0.1+4.9*i)
1543
 end
1544
 wait(0.25)
1545
 for i = 0 , 1 , 0.1 do 
1546
 wait()
1547
 shell.Transparency = 1*i
1548
 mesh.Scale = Vector3.new(5-5*i,0.5-0.5*i,5-5*i)
1549
 end
1550
 shell.Parent = nil
1551
 end))
1552
end
1553
end
1554
 for io,eff in pairs(efftab) do
1555
 wait()
1556
for zz = 1 , 1 do
1557
local mesh = Instance.new("SpecialMesh")
1558
mesh.MeshType = "FileMesh"
1559
mesh.Scale = Vector3.new(5,2,1)
1560
mesh.MeshId = "rbxasset://fonts/sword.mesh"
1561
local shell = Instance.new("Part")
1562
mesh.Parent = shell
1563
shell.Anchored = true
1564
shell.formFactor = 1
1565
shell.Size = Vector3.new(2,2,5)
1566
local dur = CFrame.new(trspos,eff.Position)
1567
local CF1 = dur * CFrame.Angles(math.rad(180),0,0) * CFrame.new(0,0,6.5)* CFrame.Angles(0,0,math.rad(90)) 
1568
shell.CFrame = CF1
1569
shell.Parent = eff
1570
shell.Transparency = 1
1571
shell.Reflectance = 0.25
1572
shell.BrickColor = BrickColor.new("Bright blue")
1573
shell.CanCollide = false
1574
local hitd = 0
1575
coroutine.resume(coroutine.create(function() 
1576
local dd = false
1577
while shell.Parent ~= nil and not dd do
1578
wait() 
1579
local c = game.Workspace:GetChildren(); 
1580
for i = 1, #c do 
1581
local hum = c[i]:findFirstChild("Humanoid") 
1582
if hum ~= nil and hum.Health ~= 0 then 
1583
local head = c[i]:findFirstChild("Torso"); 
1584
if head ~= nil then 
1585
local targ = head.Position - shell.Position; 
1586
local mag = targ.magnitude; 
1587
if mag <= 3 and c[i].Name ~= Player.Name then 
1588
dd = true
1589
local critrandomizer = math.random(1,crtrate)
1590
if critrandomizer ~= 1 then
1591
local rndmdamage = math.random(mindamage+iceboost,maxdamage+iceboost)
1592
damagesplat(rndmdamage,head,false)
1593
hum:TakeDamage(rndmdamage)
1594
elseif critrandomizer == 1 then
1595
local rndmdamage = math.random(maxdamage+iceboost,crtmaxdamage+iceboost)
1596
damagesplat(rndmdamage,head,true)
1597
hum:TakeDamage(rndmdamage)
1598
end
1599
end 
1600
end 
1601
end 
1602
end 
1603
end 
1604
end)) 
1605
 coroutine.resume(coroutine.create(function()
1606
 uss(eff,1)
1607
 
1608
 for i = 0 , 1 , 0.1 do 
1609
 wait()
1610
 shell.Transparency = 1-1*i
1611
CF1 = dur * CFrame.Angles(math.rad(180),0,0) * CFrame.new(0,0,6.5+2*i)* CFrame.Angles(0,0,math.rad(90)) 
1612
 shell.CFrame = CF1
1613
 mesh.Scale = Vector3.new(5,2,1+0.5*i)
1614
 end
1615
 wait(0.25)
1616
 ss(eff,2)
1617
 for i = 0 , 1 , 0.1 do 
1618
 wait()
1619
 shell.Transparency = 1*i
1620
CF1 = dur * CFrame.Angles(math.rad(180),0,0) * CFrame.new(0,0,8.5+25*i)* CFrame.Angles(0,0,math.rad(90)) 
1621
 shell.CFrame = CF1
1622
 mesh.Scale = Vector3.new(5-5*i,2-2*i,1.5-1.5*i*i)
1623
 end
1624
 shell.Parent = nil
1625
 end))
1626
end
1627
end
1628
 coroutine.resume(coroutine.create(function()
1629
 wait(1.5)
1630
 for _,eff in pairs(efftab) do
1631
 wait()
1632
 eff.Parent = nil
1633
 end end))
1634
 for i = 0 , 1 , 0.1 do
1635
                wait()
1636
  RW.C0 = CFrame.new(1,0.5*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80*i), math.rad(45*i), math.rad(-45))
1637
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1638
  LW.C0 = CFrame.new(-1,0.5*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80*i),math.rad(-45*i),math.rad(45))
1639
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), 0) * CFrame.new(0, 0,0)
1640
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(45+45*i)) * CFrame.new(0, 0, 0.2)
1641
    end 
1642
 attack=false
1643
end
1644
local FTCount = 0
1645
function FlameTrail()
1646
attack=true
1647
 for i = 0 , 1 , 0.15 do
1648
                wait()
1649
  RW.C0 = CFrame.new(1-0.5*i,0.5,-0.5-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80+10*i), math.rad(45+45*i), math.rad(-45+55*i))
1650
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(-45*i), math.rad(0), math.rad(0))
1651
  LW.C0 = CFrame.new(-1+0.5*i,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80),math.rad(-45),math.rad(45+20*i))
1652
     end 
1653
 wait(0.1)
1654
 ss(Head,1.5)
1655
 fs(Head,0.5+1.5*math.random())
1656
 local efftab = {}
1657
  RW.C0 = CFrame.new(0.5,0.5,-1) * CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(90), math.rad(10))
1658
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(-45), math.rad(0), math.rad(0))
1659
  LW.C0 = CFrame.new(-0.5,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80),math.rad(-45),math.rad(65))
1660
 dmgcnnct(hitbox)
1661
 for i = 0 , 1 , 0.15 do
1662
  LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1663
                wait()
1664
  RW.C0 = CFrame.new(0.5+1*i,0.5,-1+1*i) * CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(90), math.rad(10))
1665
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(-45+135*i*i), math.rad(0), math.rad(0))
1666
  LW.C0 = CFrame.new(-0.5-1*i,0.5,-0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80+20*i),math.rad(-45),math.rad(65-155*i))
1667
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), 0) * CFrame.new(0, 0,0)
1668
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180*i), math.rad(90)) * CFrame.new(0, 0, 0.2)
1669
  if FTCount <= MaxFT then
1670
  local eff = effect("Bright red",0.2,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0),true)
1671
  eff.Transparency = 1
1672
  table.insert(efftab,eff)
1673
  FTCount = FTCount + 1
1674
  OTND(eff)
1675
 coroutine.resume(coroutine.create(function()
1676
 for i = 0 , 1 , 0.15 do 
1677
 wait()
1678
 eff.Transparency = 1-0.5*i
1679
 end 
1680
 wait()
1681
 eff.Transparency = 0.5
1682
 end))
1683
 end
1684
     end 
1685
 local rndmneg = math.random(1,2)
1686
 if rndmneg == 1 then
1687
 rndmdec1 = 13 * math.random()
1688
 else
1689
 rndmdec1 = -13 * math.random()
1690
 end
1691
 for i = 0 , 1 , 0.1 do
1692
                wait()
1693
  RW.C0 = CFrame.new(1.5,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(90-rndmdec1*i), math.rad(90), math.rad(10-(rndmdec1*2)*i))
1694
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(90+20*i), math.rad(0), math.rad(0))
1695
  LW.C0 = CFrame.new(-1.5,0.5,-0) * CFrame.fromEulerAnglesXYZ(math.rad(100),math.rad(-45),math.rad(-90))
1696
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), 0) * CFrame.new(0, 0,0)
1697
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180), math.rad(90)) * CFrame.new(0, 0, 0.2)
1698
     end 
1699
 ss(Head,1.5)
1700
 fs(Head,0.5+1.5*math.random())
1701
 Hitdeb = 0
1702
 for i = 0 , 1 , 0.15 do
1703
  LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1704
                wait()
1705
  RW.C0 = CFrame.new(1.5-1.5*i,0.5,-1*i) * CFrame.fromEulerAnglesXYZ(math.rad(90-rndmdec1), math.rad(90), math.rad(10-(rndmdec1*2)))
1706
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(110-200*i), math.rad(0), math.rad(0))
1707
  LW.C0 = CFrame.new(-1.5+1*i,0.5,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(100-80*i),math.rad(-45),math.rad(-90+135*i))
1708
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), 0) * CFrame.new(0, 0,0)
1709
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180-180*i), math.rad(90)) * CFrame.new(0, 0, 0.2)
1710
  if FTCount <= MaxFT then
1711
  local eff = effect("Bright red",0.2,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0),true)
1712
  eff.Transparency = 1
1713
  table.insert(efftab,eff)
1714
  FTCount = FTCount + 1
1715
  OTND(eff)
1716
 coroutine.resume(coroutine.create(function()
1717
 for i = 0 , 1 , 0.15 do 
1718
 wait()
1719
 eff.Transparency = 1-0.5*i
1720
 end 
1721
 wait()
1722
 eff.Transparency = 0.5
1723
 end))
1724
 end
1725
     end 
1726
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(90)) * CFrame.new(0, 0, 0.2)
1727
 for i = 0 , 1 , 0.2 do
1728
                wait()
1729
  local rndmd = rndmdec1-rndmdec1*i
1730
  RW.C0 = CFrame.new(0,0.5,-1) * CFrame.fromEulerAnglesXYZ(math.rad((90-rndmd)), math.rad(90), math.rad((10-(rndmd*2))-20*i))
1731
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(-90-10*i), math.rad(0), math.rad(0))
1732
  LW.C0 = CFrame.new(-0.5,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80),math.rad(-45),math.rad(45))
1733
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), 0) * CFrame.new(0, 0,0)
1734
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(90)) * CFrame.new(0, 0, 0.2)
1735
  end 
1736
 for i = 0 , 1 , 0.1 do
1737
                wait()
1738
  RW.C0 = CFrame.new(1*i,0.5,-1) * CFrame.fromEulerAnglesXYZ(math.rad(90-20*i), math.rad(90-90*i), math.rad(-10-35*i))
1739
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(-100+100*i), math.rad(0), math.rad(0))
1740
  LW.C0 = CFrame.new(-0.5-0.5*i,0.5,-0.5-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80-10*i),math.rad(-45+45*i),math.rad(45))
1741
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), 0) * CFrame.new(0, 0,0)
1742
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180*i), math.rad(90-45*i)) * CFrame.new(0, 0, 0.2)
1743
  end 
1744
 ss(Head,1.5)
1745
 fs(Head,0.5+1.5*math.random())
1746
 wait(0.1)
1747
 Hitdeb = 0
1748
 for i = 0 , 1 , 0.2 do
1749
  LastPoint = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1750
                wait()
1751
  RW.C0 = CFrame.new(1,0.5+1*i,-1) * CFrame.fromEulerAnglesXYZ(math.rad(70+65*i), math.rad(0), math.rad(-45))
1752
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1753
  LW.C0 = CFrame.new(-1,0.5+1*i,-1) * CFrame.fromEulerAnglesXYZ(math.rad(70+65*i),math.rad(0),math.rad(45))
1754
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), 0) * CFrame.new(0, 0,0)
1755
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180-180*i), math.rad(45)) * CFrame.new(0, 0, 0.2)
1756
  if FTCount <= MaxFT then
1757
  local eff = effect("Bright red",0.2,LastPoint,hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0),true)
1758
  eff.Transparency = 1
1759
  table.insert(efftab,eff)
1760
  FTCount = FTCount + 1
1761
  OTND(eff)
1762
 coroutine.resume(coroutine.create(function()
1763
 for i = 0 , 1 , 0.15 do 
1764
 wait()
1765
 eff.Transparency = 1-0.5*i
1766
 end 
1767
 wait()
1768
 eff.Transparency = 0.5
1769
 end))
1770
 end
1771
  end 
1772
 coroutine.resume(coroutine.create(function()
1773
 wait(5)
1774
 for _,eff in pairs(efftab) do
1775
 wait()
1776
 eff.Parent = nil
1777
 FTCount = FTCount - 1
1778
 end end))
1779
 for i = 0 , 1 , 0.1 do
1780
                wait()
1781
  RW.C0 = CFrame.new(1,1.5-1*i,-1+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(135-55*i), math.rad(45*i), math.rad(-45))
1782
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1783
  LW.C0 = CFrame.new(-1,1.5-1*i,-1+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(135-55*i),math.rad(-45*i),math.rad(45))
1784
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), 0) * CFrame.new(0, 0,0)
1785
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(45+45*i)) * CFrame.new(0, 0, 0.2)
1786
   end 
1787
 dmgdc()
1788
 attack=false
1789
end
1790
 
1791
 
1792
function LifeDrain()
1793
attack=true
1794
 for i = 0 , 1 , 0.1 do
1795
                wait()
1796
  RW.C0 = CFrame.new(1,0.5,-0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80+55*i), math.rad(45), math.rad(-45+90*i))
1797
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(90*i), math.rad(0))
1798
  LW.C0 = CFrame.new(-1+1.25*i,0.5+0.25*i,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80+25*i),math.rad(-45+90*i),math.rad(45+25*i))
1799
  LW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(90*i), math.rad(0))
1800
  w1.C1 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0, 0) * CFrame.new(0, 0,0)
1801
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(90)) * CFrame.new(0, 0, 0.2)
1802
     end 
1803
------
1804
local nrmag = 50
1805
local nrprsn = nil
1806
wait() 
1807
--
1808
local c = game.Workspace:GetChildren(); 
1809
for i = 1, #c do 
1810
local hum = c[i]:findFirstChild("Humanoid") 
1811
if hum ~= nil and hum.Health ~= 0 then 
1812
local head = c[i]:findFirstChild("Torso"); 
1813
if head ~= nil then 
1814
local targ = head.Position - Torso.Position; 
1815
local mag = targ.magnitude; 
1816
if mag <= 50 and c[i].Name ~= Player.Name then 
1817
if mag < nrmag then
1818
nrmag = mag
1819
nrprsn = c[i]
1820
end
1821
end end end end
1822
--
1823
if nrprsn == nil then 
1824
attack = false     
1825
return end
1826
local C = 0
1827
local bp = Instance.new("BodyPosition")
1828
local bg = Instance.new("BodyGyro")
1829
bp.Parent = Torso
1830
bp.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1831
bp.P = bp.P + 10000
1832
local CF = nrprsn.Torso.CFrame
1833
bp.position = CF.p + CFrame.new(Torso.Position,CF.p).lookVector * -3
1834
bg.Parent = Torso
1835
bg.maxTorque = Vector3.new(math.huge,math.huge,math.huge)
1836
bg.P = bg.P + 100000
1837
bg.cframe = CFrame.new(Torso.Position,CF.p) * CFrame.Angles(math.rad(0),0,0)
1838
ss(Head,2)
1839
wait(0.1)
1840
local FirstP = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1841
local LastP = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1842
 for i = 0 , 1 , 0.2 do
1843
                wait()
1844
  C = C + 1
1845
  RW.C0 = CFrame.new(1-1*i,0.5,-1*i) * CFrame.fromEulerAnglesXYZ(math.rad(135-90*i), math.rad(45), math.rad(45-135*i))
1846
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(90), math.rad(0))
1847
  LW.C0 = CFrame.new(0.25-1.75*i,0.75-0.25*i,-0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(105-60*i),math.rad(45),math.rad(70-125*i))
1848
  LW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(90), math.rad(0))
1849
  w1.C1 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0, 0) * CFrame.new(0, 0,0)
1850
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(90*i), math.rad(90)) * CFrame.new(0, 0, 0.2)
1851
  if C == 3 then
1852
  bp.P = bp.P + 10000
1853
bp.position = CF.p + CFrame.new(Torso.Position,CF.p).lookVector * 6
1854
bg.cframe = CFrame.new(Torso.Position,CF.p) * CFrame.Angles(math.rad(-45),0,0)
1855
  end
1856
  if C == 2 then
1857
  FirstP = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1858
  elseif C == 5 then
1859
  LastP = hitbox.CFrame * CFrame.new(0,hitbox.Size.y/2,0)
1860
  end
1861
     end 
1862
local effectsmsh = Instance.new("SpecialMesh")
1863
effectsmsh.Scale = Vector3.new(5,1,5)
1864
effectsmsh.MeshType = "Sphere"
1865
local effectsg = Instance.new("Part")
1866
effectsg.formFactor = 3
1867
effectsg.CanCollide = false
1868
effectsg.Name = "Eff"
1869
effectsg.Locked = true
1870
effectsg.Anchored = true
1871
effectsg.Size = Vector3.new(0.2,1,0.2)
1872
effectsg.Parent = swordholder
1873
effectsmsh.Parent = effectsg
1874
effectsg.BrickColor = BrickColor.new("White")
1875
effectsg.Reflectance = Ref
1876
local point1 = FirstP
1877
local LP = LastP
1878
local mg = (LP.p - point1.p).magnitude
1879
effectsg.Size = Vector3.new(0.2,mg,0.2)
1880
effectsg.CFrame = CFrame.new((LP.p+point1.p)/2,point1.p) * CFrame.Angles(math.rad(90),0,0)
1881
if returnn then return effectsg end
1882
coroutine.resume(coroutine.create(function()
1883
if not returnn then
1884
for i = 0 , 1 , 0.1 do
1885
wait()
1886
effectsg.Transparency = 1*i
1887
end
1888
wait()
1889
effectsg.Parent = nil
1890
end
1891
end))
1892
local critrandomizer = math.random(1,crtrate)
1893
local rndmdamage = 0
1894
if critrandomizer ~= 1 then
1895
rndmdamage = math.random(mindamage,maxdamage)
1896
damagesplat(rndmdamage,nrprsn.Head,false)
1897
nrprsn.Humanoid:TakeDamage(rndmdamage)
1898
elseif critrandomizer == 1 then
1899
rndmdamage = math.random(maxdamage,crtmaxdamage)
1900
damagesplat(rndmdamage,nrprsn.Head,true)
1901
nrprsn.Humanoid:TakeDamage(rndmdamage)
1902
end
1903
local tempmod = Instance.new("Model",Workspace)
1904
for l = 1 , rndmdamage/5 do
1905
local meshz = Instance.new("SpecialMesh")
1906
meshz.Scale = Vector3.new(1.5,1.5,1.5)
1907
meshz.MeshType = "Sphere"
1908
local shellz = Instance.new("Part")
1909
meshz.Parent = shellz
1910
shellz.Anchored = false
1911
shellz.formFactor = 0
1912
shellz.Size = Vector3.new(1,1,1)
1913
shellz.CFrame = hitbox.CFrame
1914
shellz.Parent = tempmod
1915
shellz.Transparency = 0.5
1916
shellz.BrickColor = BrickColor.new("White")
1917
shellz.CanCollide = false
1918
shellz.Reflectance = 0
1919
local bv = Instance.new("BodyPosition") 
1920
bv.Parent = shellz
1921
bv.maxForce = Vector3.new(math.huge,math.huge,math.huge) 
1922
bv.P = bv.P + 10000
1923
bv.position = shellz.Position + Vector3.new(math.random(-25,25),math.random(-2.5,7.5),math.random(-25,25))
1924
coroutine.resume(coroutine.create(function()
1925
wait(3)
1926
bv.maxForce = Vector3.new(0,math.huge,0) 
1927
coroutine.resume(coroutine.create(function() 
1928
local dd = false
1929
while shellz.Transparency ~= 1 and not dd do
1930
wait(0.1) 
1931
local cc = game.Workspace:GetChildren(); 
1932
for i = 1, #c do 
1933
local hum = cc[i]:findFirstChild("Humanoid") 
1934
if hum ~= nil and hum.Health ~= 0 then 
1935
local head = cc[i]:findFirstChild("Head"); 
1936
if head ~= nil then 
1937
local targ = head.Position - shellz.Position; 
1938
local mag = targ.magnitude; 
1939
if mag <= 5 then 
1940
dd = true
1941
damagesplat(5+darkboost,head,false)
1942
hum.Health = hum.Health + 5 + darkboost
1943
for i = 0 , 1 , 0.05 do
1944
wait()
1945
shellz.Transparency = 1*i
1946
end
1947
shellz.Parent = nil
1948
end 
1949
end 
1950
end 
1951
end 
1952
end 
1953
end)) 
1954
 
1955
end))
1956
local hx = false
1957
coroutine.resume(coroutine.create(function()
1958
for i = 0 , 1 , 0.05 do
1959
wait()
1960
shellz.Transparency = 1-1*i
1961
end
1962
shellz.Transparency = 0
1963
end))
1964
coroutine.resume(coroutine.create(function()
1965
wait(60)
1966
for ii,shellz in pairs(tempmod:GetChildren()) do
1967
for i = 0 , 1 , 0.1 do
1968
wait()
1969
shellz.Transparency = 1*i
1970
end
1971
shellz.Parent = nil
1972
end
1973
tempmod.Parent = nil
1974
end))
1975
end
1976
wait(0.5)
1977
----
1978
  RW.C0 = CFrame.new(1,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80), math.rad(45), math.rad(-45))
1979
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1980
  LW.C0 = CFrame.new(-1,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80),math.rad(-45),math.rad(45))
1981
  LW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
1982
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
1983
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(90)) * CFrame.new(0, 0, 0.2)
1984
 attack=false
1985
bp.Parent = nil bg.Parent = nil
1986
end
1987
 
1988
 
1989
--TEST
1990
 
1991
hammer = Torso
1992
 
1993
function doDamage(hit)
1994
 local humanoid = hit.Parent:findFirstChild("Humanoid")
1995
 local hum = Player.Character:findFirstChild("Humanoid") -- non-nil if tool held by a character
1996
 if humanoid~=nil and humanoid ~= hum and hum ~= nil then
1997
  local foundd = false
1998
  for ii = 1 , #AoETrue do
1999
  if AoETrue[ii] == hit.Parent.Name then
2000
  foundd = true
2001
  end
2002
  end
2003
  if foundd then
2004
  end
2005
  --
2006
  if not foundd then
2007
  humanoid:TakeDamage(5)
2008
  if Mode == "Fire" then
2009
  end
2010
  damagesplat(5,humanoid.Parent.Torso,false)
2011
  table.insert(AoETrue,hit.Parent)
2012
  end
2013
 
2014
  if humanoid.Health <= 0 then
2015
   local c = hit.CFrame
2016
   hit.CFrame = CFrame.new(hit.Position)
2017
   hit.CFrame = c
2018
  end
2019
  delay(1, function() end)
2020
 else
2021
  local c = hit.CFrame hit.CFrame = CFrame.new(hit.Position) hit.CFrame = c
2022
 end
2023
end
2024
function bewm(obj, pos, notme)
2025
 if (obj ~= notme) then
2026
  if (obj.className == "Part") or (obj.className == "Seat") then
2027
   if (not obj.Anchored) and (((pos - obj.Position) * Vector3.new(1, 0, 1)).magnitude < 24) and (pos.y <= obj.Position.y + 2) and (pos.y >= obj.Position.y - 2) then
2028
    delay((pos - obj.Position).magnitude / 24, function() obj.Velocity = ((obj.Position - pos).unit + Vector3.new(0, 0.5, 0)) * 96 + obj.Velocity obj.RotVelocity = obj.RotVelocity + Vector3.new(obj.Position.z - pos.z, 0, pos.x - obj.Position.x).unit * 40 doDamage(obj)    end)
2029
   end
2030
  elseif (obj.className == "Model") or (obj.className == "Hat") or (obj.className == "Tool") or (obj == workspace) then
2031
   local list = obj:GetChildren()
2032
   for x = 1, #list do
2033
    bewm(list[x], pos, notme)
2034
   end
2035
  end
2036
 end
2037
end
2038
 
2039
function attackr()
2040
local shockRing = Instance.new("Part")
2041
shockRing.formFactor = 2
2042
shockRing.Size = Vector3.new(1, 0.4, 1)
2043
shockRing.Anchored = true
2044
shockRing.Locked = true
2045
shockRing.CanCollide = false
2046
shockRing.archivable = false
2047
shockRing.TopSurface = 0
2048
shockRing.BottomSurface = 0
2049
shockRing.Transparency = 0
2050
if Mode == "Fire" then
2051
shockRing.BrickColor = BrickColor.new("Really red")
2052
elseif Mode == "Dark" then
2053
shockRing.BrickColor = BrickColor.new("Bright violet")
2054
elseif Mode == "Ice" then
2055
shockRing.BrickColor = BrickColor.new("Bright blue")
2056
shockRing.Reflectance = 0.2
2057
end
2058
local decal = Instance.new("CylinderMesh")
2059
decal.Parent = shockRing
2060
decal.Scale = Vector3.new(1,0.1,1)
2061
 wait(0.2)
2062
 local pos = hammer.CFrame * (Vector3.new(0, -2.5, 0))
2063
 bewm(game.Workspace, pos, Player.Character)
2064
 shockRing.CFrame = CFrame.new(pos)
2065
 for x = 0, 1 , 0.0625 do
2066
  delay((x*16) / 30, function() shockRing.Parent = nil shockRing.Size = Vector3.new(0, 0.4, 0) + Vector3.new(3.2, 0, 3.2) * (x*16) shockRing.Transparency = 1*x    shockRing.Parent = Player.Character end)
2067
 end
2068
 delay(1, function() 
2069
  shockRing.Parent = nil   
2070
  for ii = 1 , #AoETrue do
2071
  table.remove(AoETrue,#AoETrue)
2072
  end end)
2073
end
2074
local modemodel = Instance.new("Model",swordholder)
2075
local mrdychng = false
2076
function FireMode()
2077
attack=true
2078
Mode = "Fire"
2079
fireboost = 5
2080
mrdychng = true
2081
 for i = 0 , 1 , 0.1 do
2082
                wait()
2083
  RW.C0 = CFrame.new(1+0.5*i,0.5+1*i,-0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80+55*i), math.rad(45-45*i), math.rad(-45+45*i))
2084
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
2085
  LW.C0 = CFrame.new(-1+1*i,0.5+1*i,-0.5-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80-80*i),math.rad(-45+45*i),math.rad(45+65*i))
2086
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
2087
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180*i), math.rad(90)) * CFrame.new(0, 0, 0.2)
2088
 end 
2089
cs(Head,1.5)
2090
local tempmod = Instance.new("Model",swordholder)
2091
for l = 1 , 20 do
2092
local meshz = Instance.new("SpecialMesh")
2093
meshz.Scale = Vector3.new(0.5,0.5,0.5)
2094
meshz.MeshType = "Sphere"
2095
local shellz = Instance.new("Part")
2096
meshz.Parent = shellz
2097
shellz.Anchored = false
2098
shellz.formFactor = 0
2099
shellz.Size = Vector3.new(1,1,1)
2100
shellz.CFrame = hitbox.CFrame * CFrame.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))
2101
shellz.Parent = tempmod
2102
shellz.Transparency = 0.5
2103
shellz.BrickColor = BrickColor.new("Really red")
2104
shellz.CanCollide = false
2105
shellz.Reflectance = 0
2106
local bv = Instance.new("BodyPosition") 
2107
bv.Parent = shellz
2108
bv.maxForce = Vector3.new(200000,200000,200000) 
2109
bv.position = shellz.Position
2110
coroutine.resume(coroutine.create(function()
2111
for i = 0 , 1 , 0.025 do
2112
wait()
2113
shellz.Transparency = 1-1*i
2114
end
2115
shellz.Transparency = 0
2116
end))
2117
coroutine.resume(coroutine.create(function()
2118
wait(0.05)
2119
bv.position = hitbox.Position 
2120
for i = 1 , 20 do
2121
wait(0.1)
2122
bv.position = shell.Position 
2123
end
2124
shellz.Parent = nil
2125
end))
2126
wait(0.01)
2127
end
2128
coroutine.resume(coroutine.create(function ()
2129
wait(0.25)
2130
tempmod.Parent = nil
2131
end))
2132
 for i = 0 , 1 , 0.2 do
2133
                wait()
2134
  RW.C0 = CFrame.new(1.5,1.5-1*i,0) * CFrame.fromEulerAnglesXYZ(math.rad(135-45*i), math.rad(0), math.rad(0))
2135
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
2136
  LW.C0 = CFrame.new(0,1.5-1*i,-1) * CFrame.fromEulerAnglesXYZ(math.rad(0),math.rad(0),math.rad(110-45*i))
2137
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
2138
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180), math.rad(90)) * CFrame.new(0, 0, 0.2)
2139
 end 
2140
bs(Head,0.75)
2141
attackr()
2142
for zz = 1 , 1  do
2143
local mesh = Instance.new("SpecialMesh")
2144
mesh.MeshType = "FileMesh"
2145
mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
2146
mesh.Scale = Vector3.new(10,5,10) * Vector3.new(0.01,0.01,0.01)
2147
local shell = Instance.new("Part")
2148
mesh.Parent = shell
2149
shell.Anchored = true
2150
shell.formFactor = 1
2151
shell.Size = Vector3.new(1,1,1)
2152
shell.CFrame = Torso.CFrame * CFrame.new(0,-1.5,0)
2153
shell.Parent = swordholder
2154
shell.Transparency = 0
2155
shell.BrickColor = BrickColor.new("Really red")
2156
shell.CanCollide = false
2157
coroutine.resume(coroutine.create(function()
2158
for i = 0 , 1 , 0.075 do
2159
wait()
2160
mesh.Scale = Vector3.new(20,5,20) * Vector3.new(i,1,i)
2161
shell.Transparency = 1*i
2162
end
2163
shell.Transparency = 1
2164
shell.Parent = nil
2165
end))
2166
end
2167
for zz = 1 , 1  do
2168
local mesh = Instance.new("SpecialMesh")
2169
mesh.MeshType = "FileMesh"
2170
mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
2171
mesh.Scale = Vector3.new(10,20,10) * Vector3.new(0.01,0.01,0.01)
2172
local shell = Instance.new("Part")
2173
mesh.Parent = shell
2174
shell.Anchored = true
2175
shell.formFactor = 1
2176
shell.Size = Vector3.new(1,1,1)
2177
shell.CFrame = Torso.CFrame * CFrame.new(0,1,0)
2178
shell.Parent = swordholder
2179
shell.Transparency = 0
2180
shell.BrickColor = BrickColor.new("Really red")
2181
shell.CanCollide = false
2182
coroutine.resume(coroutine.create(function()
2183
for i = 0 , 1 , 0.05 do
2184
wait()
2185
mesh.Scale = Vector3.new(10,20,10) * Vector3.new(i,1,i)
2186
shell.Transparency = 1*i
2187
end
2188
shell.Transparency = 1
2189
shell.Parent = nil
2190
end))
2191
end
2192
for zz = 1 , 3  do
2193
local mesh = Instance.new("SpecialMesh")
2194
mesh.MeshType = "Sphere"
2195
mesh.Scale = Vector3.new(5*zz,5*zz,5*zz) * Vector3.new(0.01,0.01,0.01)
2196
local shell = Instance.new("Part")
2197
mesh.Parent = shell
2198
shell.Anchored = true
2199
shell.formFactor = 3
2200
shell.Size = Vector3.new(1,1,1)
2201
shell.CFrame = Torso.CFrame * CFrame.new(0,-1,0)
2202
shell.Parent = swordholder
2203
shell.Transparency = 0
2204
if math.fmod(zz,2) == 1 then
2205
shell.BrickColor = BrickColor.new("Bright orange")
2206
elseif math.fmod(zz,2) == 0.5 then
2207
shell.BrickColor = BrickColor.new("Bright red")
2208
else
2209
shell.BrickColor = BrickColor.new("Bright yellow")
2210
end
2211
shell.CanCollide = false
2212
coroutine.resume(coroutine.create(function()
2213
for i = 0 , 1 , 0.025 do
2214
wait()
2215
mesh.Scale = Vector3.new(10*zz,10*zz,10*zz) * Vector3.new(i,i,i)
2216
shell.Transparency = 1*i
2217
end
2218
shell.Transparency = 1
2219
shell.Parent = nil
2220
end))
2221
end
2222
 
2223
 
2224
for ii,z in pairs(modemodel:GetChildren()) do
2225
z.Parent = nil
2226
end
2227
 
2228
local wing1m = Instance.new("BlockMesh")
2229
wing1m.Scale = Vector3.new(1,1,1)
2230
local wing1p = Instance.new("Part")
2231
wing1p.formFactor = 3
2232
wing1p.CanCollide = false
2233
wing1p.Name = "FlameWingP1"
2234
wing1p.Locked = true
2235
wing1p.Size = Vector3.new(0.2,0.2,0.2)
2236
wing1p.Parent = modemodel
2237
wing1m.Parent = wing1p
2238
wing1p.BrickColor = BrickColor.new("Bright red")
2239
wing1p.Transparency = 1
2240
local wing1w = Instance.new("Weld")
2241
wing1w.Parent = wing1p
2242
wing1w.Part0 = wing1p
2243
wing1w.Part1 = Torso
2244
wing1w.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0 , 0)
2245
wing1w.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,math.rad(0)) * CFrame.new(-1, 0, 0) 
2246
local wing2m = Instance.new("BlockMesh")
2247
wing2m.Scale = Vector3.new(1,1,1)
2248
local wing2p = Instance.new("Part")
2249
wing2p.formFactor = 3
2250
wing2p.CanCollide = false
2251
wing2p.Name = "FlameWingP2"
2252
wing2p.Locked = true
2253
wing2p.Size = Vector3.new(0.2,0.2,0.2)
2254
wing2p.Parent = modemodel
2255
wing2m.Parent = wing2p
2256
wing2p.BrickColor = BrickColor.new("Bright red")
2257
wing2p.Transparency = 1
2258
local wing2w = Instance.new("Weld")
2259
wing2w.Parent = wing2p
2260
wing2w.Part0 = wing2p
2261
wing2w.Part1 = Torso
2262
wing2w.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0 , 0)
2263
wing2w.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,math.rad(0)) * CFrame.new(1, 0, 0) 
2264
coroutine.resume(coroutine.create(function()
2265
for ringi = math.rad(-20) , math.rad(130) , math.rad(10) do
2266
wait(0.1)
2267
local ringm = Instance.new("BlockMesh")
2268
ringm.Scale = Vector3.new(1,1,1)
2269
local ringp = Instance.new("Part")
2270
ringp.formFactor = 3
2271
ringp.CanCollide = false
2272
ringp.Name = "FlameWing"..ringi
2273
ringp.Locked = true
2274
ringp.Size = Vector3.new(0.2,2,0.8)
2275
ringp.Parent = modemodel
2276
ringm.Parent = ringp
2277
ringp.BrickColor = BrickColor.new("Bright red")
2278
ringp.Reflectance = 0.1
2279
ringp.Transparency = 1
2280
local ringw = Instance.new("Weld")
2281
ringw.Parent = ringp
2282
ringw.Part0 = ringp
2283
ringw.Part1 = wing1p
2284
ringw.C1 = CFrame.fromEulerAnglesXYZ(ringi, 0, 0) * CFrame.new(0, ringp.Size.y/4 , 0)
2285
ringw.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,math.rad(45)) * CFrame.new(0, -1, 0) --* CFrame.new(-0.6, 0, 0) ---msh5.Scale.x/1.625
2286
coroutine.resume(coroutine.create(function()
2287
for i = 0 , 1 , 0.025 do
2288
wait()
2289
ringp.Transparency = 1-1*i
2290
end
2291
ringp.Transparency = 0
2292
end))
2293
end end))
2294
coroutine.resume(coroutine.create(function()
2295
for ringi = math.rad(-20) , math.rad(130) , math.rad(10) do
2296
wait(0.1)
2297
local ringm = Instance.new("BlockMesh")
2298
ringm.Scale = Vector3.new(1,1,1)
2299
local ringp = Instance.new("Part")
2300
ringp.formFactor = 3
2301
ringp.CanCollide = false
2302
ringp.Name = "FlameWing2_"..ringi
2303
ringp.Locked = true
2304
ringp.Size = Vector3.new(0.2,2,0.8)
2305
ringp.Parent = modemodel
2306
ringm.Parent = ringp
2307
ringp.BrickColor = BrickColor.new("Bright red")
2308
ringp.Reflectance = 0.1
2309
ringp.Transparency = 1
2310
local ringw = Instance.new("Weld")
2311
ringw.Parent = ringp
2312
ringw.Part0 = ringp
2313
ringw.Part1 = wing2p
2314
ringw.C1 = CFrame.fromEulerAnglesXYZ(ringi+math.rad(0), 0, 0) * CFrame.new(-0, ringp.Size.y/4 , 0)
2315
ringw.C0 = CFrame.fromEulerAnglesXYZ(0, 0,math.rad(-45)) * CFrame.new(-0, -1, 0)
2316
coroutine.resume(coroutine.create(function()
2317
for i = 0 , 1 , 0.025 do
2318
wait()
2319
ringp.Transparency = 1-1*i
2320
end
2321
ringp.Transparency = 0
2322
end))
2323
end end))
2324
local wingp1m = Instance.new("SpecialMesh")
2325
wingp1m.Scale = Vector3.new(1,1,1)
2326
wingp1m.MeshType = "Sphere"
2327
local wingp1p = Instance.new("Part")
2328
wingp1p.formFactor = 3
2329
wingp1p.CanCollide = false
2330
wingp1p.Name = "FlameOrb"
2331
wingp1p.Locked = true
2332
wingp1p.Size = Vector3.new(1,1,1)
2333
wingp1p.Parent = modemodel
2334
wingp1m.Parent = wingp1p
2335
wingp1p.Reflectance = 0.2
2336
wingp1p.BrickColor = BrickColor.new("Bright red")
2337
local wingp1w = Instance.new("Weld")
2338
wingp1w.Parent = wingp1p
2339
wingp1w.Part0 = wingp1p
2340
wingp1w.Part1 = Torso
2341
wingp1w.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0 , 0)
2342
wingp1w.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0,math.rad(0)) * CFrame.new(0, -0.5, 0.5) 
2343
coroutine.resume(coroutine.create(function()
2344
for i = 0 , 1 , 0.025 do
2345
wait()
2346
wingp1p.Transparency = 1-1*i
2347
end
2348
wingp1p.Transparency = 0
2349
end))
2350
local Firee = modemodel
2351
local Spawn = wingp1p
2352
local colors = {BrickColor.new("Bright red"),BrickColor.new("Bright yellow"),BrickColor.new("Bright orange")} 
2353
local Embers = {} 
2354
local modelz = Instance.new("Model",Firee)
2355
modelz.Name = "FireHolder"
2356
for X = 1, 15 do
2357
local f = Instance.new("Part") 
2358
f.Parent = nil
2359
f.BrickColor = colors[math.random(1, # colors)] 
2360
f.Size = Vector3.new(1,1,1) 
2361
f.formFactor = 3
2362
f.Anchored = true 
2363
f.Locked = true 
2364
f.CanCollide = false 
2365
f.Transparency = 0.5 
2366
f.Name = "Fire"
2367
f.TopSurface = 0
2368
f.BottomSurface = 0
2369
Instance.new("BlockMesh",f)
2370
table.insert(Embers, f) 
2371
end 
2372
local R = 0
2373
coroutine.resume(coroutine.create(function ()
2374
repeat 
2375
wait() 
2376
R = R + 1
2377
for X = 1, # Embers do 
2378
Embers[X].Parent = modelz
2379
local FM = math.fmod(R + X, # Embers) 
2380
if FM == 1 then 
2381
RandPos = Vector3.new(math.random(-Spawn.Size.x * 5, Spawn.Size.x * 5) / 10, Spawn.Size.y / 2, math.random(-Spawn.Size.x * 5, Spawn.Size.x * 5) / 10) 
2382
RandDir = Vector3.new(math.random(-100,100), math.random(-100,100), math.random(-100,100)) 
2383
Embers[X].CFrame = CFrame.new(Spawn.Position + RandPos, (Spawn.Position * rndm) + RandPos + RandDir) 
2384
Embers[X].Mesh.Scale = Vector3.new(1,1,1)
2385
else 
2386
Embers[X].CFrame = Embers[X].CFrame + Embers[X].CFrame.lookVector*0.5
2387
Embers[X].Mesh.Scale = Embers[X].Mesh.Scale - Vector3.new(0.1,0.1,0.1)
2388
end 
2389
end 
2390
until wingp1p.Parent == nil
2391
for i = 0 ,1 , 0.1 do
2392
wait(0.2)
2393
for X = 1, # Embers do 
2394
Embers[X].Transparency = 0.5+0.5*i
2395
end
2396
end
2397
for X = 1, # Embers do 
2398
Embers[X].Parent = nil
2399
end
2400
end))
2401
  for ii = 1 , #AoETrue do
2402
  table.remove(AoETrue,#AoETrue)
2403
  end
2404
 wait(0.25)
2405
 for i = 0 , 1 , 0.1 do
2406
                wait()
2407
  RW.C0 = CFrame.new(1.5,0.5+0.5*i,0) * CFrame.fromEulerAnglesXYZ(math.rad(90+25*i), math.rad(0), math.rad(0))
2408
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
2409
  LW.C0 = CFrame.new(0,0.5+0.5*i,-1) * CFrame.fromEulerAnglesXYZ(math.rad(0),math.rad(0),math.rad(65+25*i))
2410
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
2411
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180), math.rad(90)) * CFrame.new(0, 0, 0.2)
2412
 end 
2413
 for i = 0 , 1 , 0.1 do
2414
                wait()
2415
  RW.C0 = CFrame.new(1.5,1-0.5*i,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(115-35*i), math.rad(45*i), math.rad(-45*i))
2416
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
2417
  LW.C0 = CFrame.new(-1*i,1-0.5*i,-1+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80*i),math.rad(0),math.rad(90-45*i))
2418
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
2419
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(180-180*i), math.rad(90)) * CFrame.new(0, 0, 0.2)
2420
 end 
2421
  RW.C0 = CFrame.new(1,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80), math.rad(45), math.rad(-45))
2422
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
2423
  LW.C0 = CFrame.new(-1,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80),math.rad(-45),math.rad(45))
2424
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
2425
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(90)) * CFrame.new(0, 0, 0.2)
2426
attack=false
2427
wait(1.5)
2428
mrdychng = false
2429
end
2430
function NeutralMode()
2431
attack=true
2432
Mode = "None"
2433
fireboost = 0
2434
iceboost = 0
2435
darkboost = 0
2436
ss(Head,1)
2437
cs(Head,2)
2438
mrdychng = true
2439
 for i = 0 , 1 , 0.2 do
2440
                wait()
2441
  RW.C0 = CFrame.new(1+0.5*i,0.5,-0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80+10*i), math.rad(45), math.rad(-45+45*i))
2442
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(100*i), math.rad(0), math.rad(0))
2443
  LW.C0 = CFrame.new(-1-0.5*i,0.5,-0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(80+10*i),math.rad(-45),math.rad(45-45*i))
2444
  LW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(100*i), math.rad(0), math.rad(0))
2445
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
2446
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(70*i), math.rad(90)) * CFrame.new(0, 0, 0.2)
2447
 end 
2448
coroutine.resume(coroutine.create(function()
2449
for ii,z in pairs(modemodel:GetChildren()) do
2450
if string.sub(z.Name,0,string.len(z.Name)-1) ~= "FlameWingP" then
2451
wait()
2452
coroutine.resume(coroutine.create(function()
2453
for i = 0 , 1 , 0.1 do
2454
wait()
2455
z.Transparency = (1-z.Transparency)*i
2456
end
2457
z.Parent = nil
2458
end))
2459
end
2460
end
2461
wait(0.5)
2462
for ii,z in pairs(modemodel:GetChildren()) do
2463
wait()
2464
z.Parent = nil
2465
end
2466
end))
2467
 for i = 0 , 1 , 0.1 do
2468
                wait()
2469
  RW.C0 = CFrame.new(1.5,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(45), math.rad(0))
2470
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(100+20*i), math.rad(0), math.rad(0))
2471
  LW.C0 = CFrame.new(-1.5,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(90),math.rad(-45),math.rad(0))
2472
  LW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(100+20*i), math.rad(0), math.rad(0))
2473
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
2474
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(70+20*i), math.rad(90)) * CFrame.new(0, 0, 0.2)
2475
 end 
2476
 
2477
 wait(0.25)
2478
 for i = 0 , 1 , 0.1 do
2479
                wait()
2480
  RW.C0 = CFrame.new(1.5-0.5*i,0.5,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(90-10*i), math.rad(45), math.rad(-45*i))
2481
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(120-120*i), math.rad(0), math.rad(0))
2482
  LW.C0 = CFrame.new(-1.5+0.5*i,0.5,-0.5*i) * CFrame.fromEulerAnglesXYZ(math.rad(90-10*i),math.rad(-45),math.rad(45*i))
2483
  LW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(120-120*i), math.rad(0), math.rad(0))
2484
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
2485
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(90-90*i), math.rad(90)) * CFrame.new(0, 0, 0.2)
2486
 end 
2487
  RW.C0 = CFrame.new(1,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80), math.rad(45), math.rad(-45))
2488
  RW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
2489
  LW.C0 = CFrame.new(-1,0.5,-0.5) * CFrame.fromEulerAnglesXYZ(math.rad(80),math.rad(-45),math.rad(45))
2490
  LW.C1 = CFrame.new(0,0.5,0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0))
2491
  w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0)
2492
  w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(0), math.rad(90)) * CFrame.new(0, 0, 0.2)
2493
attack=false
2494
wait(0.5)
2495
mrdychng = false
2496
end
2497
 
2498
function ob1d(mouse) 
2499
hold = true 
2500
if attack == true then return end
2501
end 
2502
function ob1u(mouse)  
2503
end 
2504
buttonhold = false
2505
function key(key)
2506
if attack == true then return end
2507
if key == "q" then
2508
if attacktype == 1 then
2509
Combo1a()
2510
elseif attacktype == 2 then
2511
Combo1b()
2512
elseif attacktype == 3 then
2513
Combo1c()
2514
end
2515
end
2516
if key == "e" then
2517
if attacktype == 1 then
2518
BlizzardSword()
2519
end
2520
end
2521
if key == "r" then
2522
FlameTrail()
2523
end
2524
if key == "t" then
2525
LifeDrain()
2526
end
2527
if Mode == "None" and not mrdychng then
2528
if key == "z" then
2529
FireMode()
2530
end
2531
elseif not mrdychng then
2532
if key == "z" or key == "x" or key == "c" then
2533
NeutralMode()
2534
end
2535
end
2536
end 
2537
 
2538
function key2(key) 
2539
end 
2540
function s(mouse) 
2541
repeat wait() until not attack
2542
while ev.Value ~= false do
2543
wait(0.1)
2544
end
2545
MMouse = mouse
2546
mouse.Button1Down:connect(function() ob1d(mouse) end) 
2547
mouse.Button1Up:connect(function() ob1u(mouse) end) 
2548
mouse.KeyDown:connect(key) 
2549
mouse.KeyUp:connect(key2) 
2550
        equipanim()
2551
  ev.Value = true
2552
--[[
2553
script.Parent = Bin.Parent
2554
Bin:remove()]]
2555
end 
2556
function ds(mouse) 
2557
repeat wait() until not attack
2558
while ev.Value == false do
2559
wait(0.1)
2560
end
2561
 
2562
hideanim()
2563
        wait(0.1)
2564
ev.Value = false
2565
end 
2566
Bin.Selected:connect(s) 
2567
Bin.Deselected:connect(ds) 
2568
 
2569
 
2570
--Mediafire