View difference between Paste ID: TAE6Eusi and z6UbDU1q
SHOW: | | - or go back to the newest paste.
1-
--https://github.com/Mokiros/roblox-FE-compatibility
1+
if game:GetService("RunService"):IsClient() then error("Please run as a server script. Use h/ instead of hl/.") end
2-
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2+
print("FE Compatibility: by WaverlyCole & Mokiros")
3-
local Player,game,owner = owner,game
3+
InternalData = {}
4-
local RealPlayer = Player
4+
5
    script.Parent = owner.Character
6-
	print("FE Compatibility code V2 by Mokiros")
6+
    local Event = Instance.new("RemoteEvent")
7-
	local RealPlayer = RealPlayer
7+
    Event.Name = "UserInput"
8-
	script.Parent = RealPlayer.Character
8+
    local function NewFakeEvent()
9
        local Fake = {fakeEvent=true,Connect=function(self,Func)self.Function=Func end}Fake.connect = Fake.Connect
10-
	--Fake event to make stuff like Mouse.KeyDown work
10+
        return Fake
11-
	local Disconnect_Function = function(this)
11+
    end
12-
		this[1].Functions[this[2]] = nil
12+
    local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
13
    local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
14-
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
14+
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
15-
	local FakeEvent_Metatable = {__index={
15+
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
16-
		Connect = function(this,f)
16+
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
17-
			local i = tostring(math.random(0,10000))
17+
    local function TriggerEvent(self,Event,...)
18-
			while this.Functions[i] do
18+
        local Trigger = Mouse[Event]
19-
				i = tostring(math.random(0,10000))
19+
        if Trigger and Trigger.fakeEvent and Trigger.Function then
20-
			end
20+
            Trigger.Function(...)
21-
			this.Functions[i] = f
21+
22-
			return setmetatable({this,i},Disconnect_Metatable)
22+
    end
23
    Mouse.TrigEvent = TriggerEvent
24-
	}}
24+
    UserInputService.TrigEvent = TriggerEvent
25-
	FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
25+
    Event.OnServerEvent:Connect(function(FiredBy,Input)
26-
	local function fakeEvent()
26+
        if FiredBy.Name ~= owner.Name then end
27-
		return setmetatable({Functions={}},FakeEvent_Metatable)
27+
        if Input.MouseEvent then
28
            Mouse.Target = Input.Target
29
            Mouse.Hit = Input.Hit
30-
	--Creating fake input objects with fake variables
30+
        else
31-
    local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
31+
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
32-
    FakeMouse.keyUp = FakeMouse.KeyUp
32+
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then
33-
    FakeMouse.keyDown = FakeMouse.KeyDown
33+
                return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up")
34-
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
34+
            end
35-
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
35+
            for _,Action in pairs(ContextActionService.Actions) do
36-
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
36+
                for _,Key in pairs(Action.Keys) do
37-
	end}
37+
                    if Key==Input.KeyCode then
38-
	--Merged 2 functions into one by checking amount of arguments
38+
                        Action.Function(Action.Name,Input.UserInputState,Input)
39-
	CAS.UnbindAction = CAS.BindAction
39+
                    end
40
                end
41-
	--This function will trigger the events that have been :Connect()'ed
41+
            end
42-
	local function TriggerEvent(self,ev,...)
42+
            Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
43-
		for _,f in pairs(self[ev].Functions) do
43+
            UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
44-
			f(...)
44+
45
    end)
46
    InternalData["Mouse"] = Mouse
47-
	FakeMouse.TriggerEvent = TriggerEvent
47+
    InternalData["ContextActionService"] = ContextActionService
48-
	UIS.TriggerEvent = TriggerEvent
48+
    InternalData["UserInputService"] = UserInputService
49
    Event.Parent = NLS([[
50-
	--Client communication
50+
        local Player = owner
51-
	local Event = Instance.new("RemoteEvent")
51+
        local Event = script:WaitForChild("UserInput")
52-
	Event.Name = "UserInput_Event"
52+
        local UserInputService = game:GetService("UserInputService")
53-
	Event.OnServerEvent:Connect(function(plr,io)
53+
        local Mouse = Player:GetMouse()
54-
	    if plr~=RealPlayer then return end
54+
        local Input = function(Input,gameProcessedEvent)
55-
		FakeMouse.Target = io.Target
55+
            if gameProcessedEvent then return end
56-
		FakeMouse.Hit = io.Hit
56+
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
57-
		if not io.isMouse then
57+
58-
			local b = io.UserInputState == Enum.UserInputState.Begin
58+
        UserInputService.InputBegan:Connect(Input)
59-
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
59+
        UserInputService.InputEnded:Connect(Input)
60-
				return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
60+
        local Hit,Target
61-
			end
61+
        while wait(1/30) do
62-
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
62+
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
63-
				return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
63+
                Hit,Target = Mouse.Hit,Mouse.Target
64-
			end
64+
                Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
65-
			for _,t in pairs(CAS.Actions) do
65+
            end
66-
				for _,k in pairs(t.Keys) do
66+
67-
					if k==io.KeyCode then
67+
    ]],owner.Character)
68-
						t.Function(t.Name,io.UserInputState,io)
68+
69-
					end
69+
RealGame = game;game = setmetatable({},{
70
    __index = function (self,Index)
71-
			end
71+
        local Sandbox = function (Thing)
72-
			FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
72+
            if Thing:IsA("Player") then
73-
			UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
73+
                local RealPlayer = Thing
74-
	    end
74+
                return setmetatable({},{
75-
	end)
75+
                    __index = function (self,Index)
76-
	Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
76+
                        local Type = type(RealPlayer[Index])
77-
	local Mouse = owner:GetMouse()
77+
                        if Type == "function" then
78-
	local UIS = game:GetService("UserInputService")
78+
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
79-
	local input = function(io,RobloxHandled)
79+
                                return function (self)
80-
		if RobloxHandled then return end
80+
                                    return InternalData["Mouse"]
81-
		--Since InputObject is a client-side instance, we create and pass table instead
81+
                                end
82-
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
82+
                            end
83
                            return function (self,...)
84-
	UIS.InputBegan:Connect(input)
84+
                                return RealPlayer[Index](RealPlayer,...)
85-
	UIS.InputEnded:Connect(input)
85+
                            end
86-
	local h,t
86+
                        else
87-
	--Give the server mouse data every second frame, but only if the values changed
87+
                            return RealPlayer[Index]
88-
	--If player is not moving their mouse, client won't fire events
88+
                        end
89-
	local HB = game:GetService("RunService").Heartbeat
89+
                    end;
90-
	while true do
90+
                    __tostring = function(self)
91-
		if h~=Mouse.Hit or t~=Mouse.Target then
91+
                        return RealPlayer.Name
92-
			h,t=Mouse.Hit,Mouse.Target
92+
                    end
93-
			Event:FireServer({isMouse=true,Target=t,Hit=h})
93+
                })
94
            end
95-
		--Wait 2 frames
95+
96-
		for i=1,2 do
96+
        if RealGame[Index] then
97-
			HB:Wait()
97+
            local Type = type(RealGame[Index])
98
            if Type == "function" then
99-
	end]==],script)
99+
                if Index:lower() == "getservice" or Index:lower() == "service" then
100
                    return function (self,Service)
101-
	----Sandboxed game object that allows the usage of client-side methods and services
101+
                        if Service:lower() == "players" then
102-
	--Real game object
102+
                            return setmetatable({},{
103-
	local RealGame = game
103+
                                __index = function (self2,Index2)
104
                                    local RealService = RealGame:GetService(Service)
105-
	--Metatable for fake service
105+
                                    local Type2 = type(Index2)
106-
	local FakeService_Metatable = {
106+
                                    if Type2 == "function" then
107-
		__index = function(self,k)
107+
                                        return function (self,...)
108-
			local s = rawget(self,"_RealService")
108+
                                            return RealService[Index2](RealService,...)
109-
			if s then
109+
                                        end
110-
				return typeof(s[k])=="function"
110+
                                    else
111-
				and function(_,...)return s[k](s,...)end or s[k]
111+
                                        if Index2:lower() == "localplayer" then
112-
			end
112+
                                            return Sandbox(owner)
113-
		end,
113+
                                        end
114-
		__newindex = function(self,k,v)
114+
                                        return RealService[Index2]
115-
			local s = rawget(self,"_RealService")
115+
                                    end
116-
			if s then s[k]=v end
116+
                                end;
117
                                __tostring = function(self)
118-
	}
118+
                                    return RealGame:GetService(Service).Name
119-
	local function FakeService(t,RealService)
119+
                                end
120-
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
120+
                            })
121-
		return setmetatable(t,FakeService_Metatable)
121+
                        elseif Service:lower() == "contextactionservice" then
122
                            return InternalData["ContextActionService"]
123
                        elseif Service:lower() == "contextactionservice" then
124-
	--Fake game object
124+
                            return InternalData["UserInputService"]
125-
	local FakeGame = {
125+
                        elseif Service:lower() == "runservice" then
126-
		GetService = function(self,s)
126+
                            return setmetatable({},{
127-
			return rawget(self,s) or RealGame:GetService(s)
127+
                                __index = function(self2,Index2)
128-
		end,
128+
                                    local RealService = RealGame:GetService(Service)
129-
		Players = FakeService({
129+
                                    local Type2 = type(Index2)
130-
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
130+
                                    if Type2 == "function" then
131-
		},"Players"),
131+
                                        return function (self,...)
132-
		UserInputService = FakeService(UIS,"UserInputService"),
132+
                                            return RealService[Index2](RealService,...)
133-
		ContextActionService = FakeService(CAS,"ContextActionService"),
133+
                                        end
134-
		RunService = FakeService({
134+
                                    else
135-
			_btrs = {},
135+
                                        if Index2:lower() == "bindtorenderstep" then
136-
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
136+
                                            return function (self,Name,Priority,Function)
137-
			BindToRenderStep = function(self,name,_,fun)
137+
                                                return RealGame:GetService("RunService").Stepped:Connect(Function)
138-
				self._btrs[name] = self.Heartbeat:Connect(fun)
138+
                                            end
139-
			end,
139+
                                        end
140-
			UnbindFromRenderStep = function(self,name)
140+
                                        if Index2:lower() == "renderstepped" then
141-
				self._btrs[name]:Disconnect()
141+
                                            return RealService["Stepped"]
142-
			end,
142+
                                        end
143-
		},"RunService")
143+
                                        return RealService[Index2]
144-
	}
144+
                                    end
145-
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
145+
                                end
146-
	FakeGame.service = FakeGame.GetService
146+
                            })
147-
	FakeService(FakeGame,game)
147+
                        else
148-
	--Changing owner to fake player object to support owner:GetMouse()
148+
                            return RealGame:GetService(Service)
149-
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
149+
                        end
150
                    end
151
                end
152
                return function (self,...)
153
                    return RealGame[Index](RealGame,...)
154
                end
155
            else
156
                if game:GetService(Index) then
157
                    return game:GetService(Index)
158
                end
159
                return RealGame[Index]
160
            end
161
        else
162
            return nil
163
        end
164
    end
165
});Game = game;owner = game:GetService("Players").LocalPlayer
166
print("Complete! Running...")
167
wait(.25)--made by yoyyo75 :3
168
run = game:GetService("RunService")
169
local player = game.Players.LocalPlayer;char = player.Character;char.Archivable = true;
170
hrp = char:findFirstChild("HumanoidRootPart");head = char:findFirstChild("Head");ra = char:findFirstChild("Right Arm");la = char:findFirstChild("Left Arm");t = char:findFirstChild("Torso");humanoid = char:findFirstChild("Humanoid");ll = char:findFirstChild("Left Leg");rl = char:findFirstChild("Right Leg");
171
if player.Backpack:findFirstChild("WindKatana") then
172
player.Backpack:findFirstChild("WindKatana").Parent = nil
173
end
174
local hb = Instance.new("HopperBin", player.Backpack)
175
hb.Name = "WindKatana"
176
sword = Instance.new("Model");sword.Name = "WindKatana"
177
script.Parent =  hb;idol = true
178
if char:findFirstChild(hb.Name) then
179
char:findFirstChild(hb.Name):Destroy()
180
end
181
equip=false;anim = false;banim=false;click=false;damageon=false;DMG=0;edown=false;canjump=true;running=false;don=false;Damag = 10;fell = true;lenormal=true;lerun=false;canjump=true;locanrun=false;ss=false;canboost = true
182
if char:findFirstChild(hb.Name) then
183
char:findFirstChild(hb.Name).Parent = nil
184
end
185
function weldIt(p1,p2,r1,r2,place)
186
	local w = Instance.new("Weld")
187
	if place then
188
		w.Parent = place
189
	else
190
		w.Parent = p1
191
	end
192
	w.Part0 = p1
193
	w.Part1 = p2
194
	w.C0 = r1
195
	if r2 then
196
	w.C1 = r2
197
	end
198
	return w
199
end
200
201
202
203
Add = {
204
	part = function(color,size,pos, place, naym,scale, thing,mt,ccd,id,transparent,loool,ff,yos)
205
		if loool ~= nil then
206
		balleff = Instance.new(loool, place)
207
		else
208
		balleff = Instance.new("Part", place)
209
		balleff.Material = "SmoothPlastic"
210
		balleff.TopSurface = "SmoothNoOutlines"
211
		balleff.BottomSurface = "SmoothNoOutlines"
212
		balleff.RightSurface = "SmoothNoOutlines"
213
		balleff.LeftSurface = "SmoothNoOutlines"
214
		end
215
		balleff.Name = naym
216
		balleff.Anchored= true
217
		balleff.CFrame = pos
218
		if loool == nil then
219
		balleff.Shape = thing
220
		end
221
		if ff then
222
			balleff.FormFactor = ff
223
		end
224
		balleff.CanCollide = ccd;balleff.Transparency = transparent;
225
		balleff.TopSurface = 0
226
		balleff.BottomSurface = 0
227
		balleff.Size = size
228
		balleff.BrickColor = BrickColor.new(color)
229
		if not yos then
230
		mesh = Instance.new("SpecialMesh",balleff)
231
		mesh.MeshType = mt
232
		else
233
		mesh = Instance.new(yos,balleff)
234
		end
235
		mesh.Scale = scale
236
		if mt == "FileMesh" then
237
			mesh.MeshId = id
238
		end
239
		balleff.Parent = place
240
		return balleff
241
	end,
242
	bp = function(parent,num,p)
243
		lop = Instance.new("BodyPosition",parent)
244
		lop.Name = num
245
		lop.maxForce = Vector3.new(math.huge,math.huge,math.huge)
246
		lop.position = p
247
		return lop
248
	end,
249
	BG = function(P,cf)
250
		local bg = Instance.new("BodyGyro",P)
251
		bg.maxTorque = Vector3.new(math.huge, math.huge, math.huge)
252
		bg.P = 14000
253
		bg.cframe = cf
254
		return bg
255
	end
256
}
257
258
259
260
261
262
263
264
265
-- MAKING THE BLADE---
266
Lite= Add.part("Mid gray",Vector3.new(0.300000042, 0.299999982, 0.399999976),CFrame.new(-185.849991, 1.64999986, -65.3999939, 0, -1, 0, 1, 0, -0, 0, 0, 1),sword,"Lite",Vector3.new(0.800000012, 0.800000012, 0.699999988),"Block","Brick",false,nil,0,Part,"Custom")
267
Dark= Add.part("Black",Vector3.new(0.400000066, 0.799999952, 0.49999997),CFrame.new(-185.991409, 1.50857925, -65.3999939, -0.707106709, -0.707106709, 0, 0.707106709, -0.707106709, 0, 0, 0, 1),sword,"Dark",Vector3.new(0.100000001, 0.949999988, 0.574999988),"Block","Brick",false,nil,0,Part,"Custom")
268
Dark= Add.part("Black",Vector3.new(0.400000066, 0.399999976, 0.399999976),CFrame.new(-185.991409, 1.50857735, -65.3999939, 0, -1, 0, 1, 0, -0, 0, 0, 1),sword,"Dark",Vector3.new(1, 1, 0.600000024),"Block","Brick",false,nil,0,Part,"Custom")
269
Blade= Add.part("Medium stone grey",Vector3.new(0.900000036, 0.200000003, 0.399999976),CFrame.new(-183.909775, 3.94065022, -65.3999939, 0.500000119, -0.866025269, 0, 0.866025269, 0.500000119, 0, 0, 0, 1),sword,"Blade",Vector3.new(1, 1, 0.200000003),"Block","Brick",false,nil,0,Part,"Custom")
270
Blade= Add.part("Medium stone grey",Vector3.new(0.900000036, 0.200000003, 0.399999976),CFrame.new(-183.803696, 3.83458066, -65.3799896, 0.500000119, 0.866025269, 1.44789709e-007, 0.866025269, -0.500000119, -6.87506159e-008, 1.28551001e-008, 1.5976687e-007, -1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
271
Blade= Add.part("Medium stone grey",Vector3.new(0.900000036, 0.200000003, 0.399999976),CFrame.new(-185.531784, 1.82677507, -65.3999939, 0.707106829, -0.707106709, 0, 0.707106709, 0.707106829, 0, 0, 0, 1),sword,"Blade",Vector3.new(1, 1, 0.200000003),"Block","Brick",false,nil,0,Part,"Custom")
272
Dark= Add.part("Black",Vector3.new(0.300000042, 0.299999982, 0.399999976),CFrame.new(-185.849991, 1.64999986, -65.3999939, 0, -1, 0, 1, 0, -0, 0, 0, 1),sword,"Dark",Vector3.new(1, 1, 0.600000024),"Block","Brick",false,nil,0,Part,"Custom")
273
Dark= Add.part("Black",Vector3.new(0.200000077, 0.200000003, 0.5),CFrame.new(-185.991409, 1.50857735, -65.3999939, 0, -1, 0, 1, 0, -0, 0, 0, 1),sword,"Dark",Vector3.new(1, 1, 0.600000024),"Block","Brick",false,nil,0,Part,"Custom")
274
Lite= Add.part("Mid gray",Vector3.new(0.400000066, 0.399999976, 0.399999976),CFrame.new(-185.991409, 1.50857735, -65.3999939, 0, -1, 0, 1, 0, -0, 0, 0, 1),sword,"Lite",Vector3.new(0.800000012, 0.800000012, 0.699999988),"Block","Brick",false,nil,0,Part,"Custom")
275
BPart= Add.part("Black",Vector3.new(0.5, 0.399999976, 0.399999976),CFrame.new(-187.087418, 0.412563771, -65.3999939, 0.707106769, -0.70710665, 0, 0.70710665, 0.707106769, 0, 0, 0, 1),sword,"BPart",Vector3.new(0.300000012, 1, 0.800000012),"Block","Cylinder",false,nil,0,Part,"Custom")
276
Dark= Add.part("Black",Vector3.new(0.300000042, 0.299999982, 0.399999976),CFrame.new(-186.132828, 1.36715674, -65.3999939, 0, -1, 0, 1, 0, -0, 0, 0, 1),sword,"Dark",Vector3.new(1, 1, 0.600000024),"Block","Brick",false,nil,0,Part,"Custom")
277
Blade= Add.part("Medium stone grey",Vector3.new(1, 0.200000003, 0.399999976),CFrame.new(-185.461075, 1.68535447, -65.4199982, -0.707106948, 0.70710659, 4.49529054e-008, -0.70710659, -0.707106948, -1.68587405e-007, -8.74227553e-008, -1.50995817e-007, 1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
278
Blade= Add.part("Medium stone grey",Vector3.new(0.450000018, 0.200000003, 0.399999976),CFrame.new(-183.487625, 4.42047977, -65.4199982, -0.42261827, 0.906307817, 6.54755326e-008, -0.906307817, -0.42261827, -1.5063398e-007, -1.08849591e-007, -1.23001655e-007, 1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
279
Lite= Add.part("Mid gray",Vector3.new(0.300000042, 0.299999982, 0.399999976),CFrame.new(-186.132828, 1.36715674, -65.3999939, 0, -1, 0, 1, 0, -0, 0, 0, 1),sword,"Lite",Vector3.new(0.800000012, 0.800000012, 0.699999988),"Block","Brick",false,nil,0,Part,"Custom")
280
Blade= Add.part("Medium stone grey",Vector3.new(0.900000036, 0.200000003, 0.399999976),CFrame.new(-184.824173, 2.3771975, -65.4199982, -0.642787755, 0.766044319, 4.49529054e-008, -0.766044319, -0.642787755, -1.68587405e-007, -1.00250247e-007, -1.42801824e-007, 1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
281
Blade= Add.part("Medium stone grey",Vector3.new(0.200000048, 0.400000006, 0.399999976),CFrame.new(-183.458023, 4.85696697, -65.3999939, -4.58588154e-008, 0.34202069, -0.939692378, -1.01666373e-008, 0.939692378, 0.34202069, 1, 2.52381778e-008, -3.96159798e-008),sword,"Blade",Vector3.new(0.400000006, 1, 0.5),"Block","Wedge",false,nil,0,Part,"Custom")
282
Blade= Add.part("Medium stone grey",Vector3.new(0.900000036, 0.200000003, 0.399999976),CFrame.new(-184.28212, 3.08361006, -65.3799896, 0.57357651, 0.819151938, 1.44790121e-007, 0.819151938, -0.57357651, -6.87501966e-008, 2.67313585e-008, 1.58038603e-007, -1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
283
Blade= Add.part("Medium stone grey",Vector3.new(0.900000036, 0.200000003, 0.399999976),CFrame.new(-184.824173, 2.3771956, -65.3799896, 0.642787695, 0.766044378, 1.25616637e-007, 0.766044378, -0.642787695, -8.79236737e-008, 1.33913973e-008, 1.52744178e-007, -1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
284
Blade= Add.part("Medium stone grey",Vector3.new(1, 0.200000003, 0.399999976),CFrame.new(-185.461075, 1.68535447, -65.3799896, 0.707106829, 0.707106709, 1.06770145e-007, 0.707106709, -0.707106829, -1.06770166e-007, 0, 1.50995803e-007, -1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
285
Blade= Add.part("Medium stone grey",Vector3.new(0.5, 0.200000003, 0.399999976),CFrame.new(-183.40889, 4.83704281, -65.3799896, -0.0871555209, 0.99619472, 2.72493907e-007, 0.99619472, 0.0871555209, 5.89535674e-008, 3.49798697e-008, 2.76595131e-007, -1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
286
Blade= Add.part("Medium stone grey",Vector3.new(0.400000036, 0.200000003, 0.399999976),CFrame.new(-183.604263, 4.50388622, -65.3999939, 0.42261833, -0.906307757, 0, 0.906307757, 0.42261833, 0, 0, 0, 1),sword,"Blade",Vector3.new(1, 1, 0.200000003),"Block","Brick",false,nil,0,Part,"Custom")
287
Handle= Add.part("Medium stone grey",Vector3.new(1.20000005, 0.399999976, 0.399999976),CFrame.new(-186.627823, 0.872184277, -65.3999939, 0.707106769, -0.70710665, 0, 0.70710665, 0.707106769, 0, 0, 0, 1),sword,"Handle",Vector3.new(1, 1, 0.600000024),"Block","Cylinder",false,nil,0,Part,"Custom")
288
Blade= Add.part("Medium stone grey",Vector3.new(0.450000018, 0.200000003, 0.399999976),CFrame.new(-183.487625, 4.4204855, -65.3799896, 0.422614396, 0.906309605, 1.64295614e-007, 0.906309605, -0.422614396, -4.92447079e-008, 2.48027376e-008, 1.69714212e-007, -1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
289
Blade= Add.part("Medium stone grey",Vector3.new(0.900000036, 0.200000003, 0.399999976),CFrame.new(-184.930252, 2.48326516, -65.3999939, 0.642787695, -0.766044378, 0, 0.766044378, 0.642787695, 0, 0, 0, 1),sword,"Blade",Vector3.new(1, 1, 0.200000003),"Block","Brick",false,nil,0,Part,"Custom")
290
Blade= Add.part("Medium stone grey",Vector3.new(0.900000036, 0.200000003, 0.399999976),CFrame.new(-184.28212, 3.08361387, -65.4199982, -0.57357657, 0.819151938, 4.49529622e-008, -0.819151938, -0.57357657, -1.6858732e-007, -1.12314666e-007, -1.33521056e-007, 1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
291
Blade= Add.part("Medium stone grey",Vector3.new(0.900000036, 0.200000003, 0.399999976),CFrame.new(-183.803696, 3.83458257, -65.4199982, -0.500000179, 0.866025329, 6.55408243e-008, -0.866025329, -0.500000179, -1.5046507e-007, -9.75361445e-008, -1.31992579e-007, 1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
292
Blade= Add.part("Medium stone grey",Vector3.new(0.5, 0.200000003, 0.399999976),CFrame.new(-183.40889, 4.83704853, -65.4199982, 0.0871553719, 0.99619472, 6.76225653e-008, -0.99619472, 0.0871553719, -1.49568123e-007, -1.54892646e-007, -5.43295755e-008, 1),sword,"Blade",Vector3.new(1, 0.5, 0.100000001),"Block","Wedge",false,nil,0,Part,"Custom")
293
Core= Add.part("Bright red",Vector3.new(0.200000077, 0.200000003, 0.5),CFrame.new(-185.991409, 1.50857735, -65.3999939, 0, -1, 0, 1, 0, -0, 0, 0, 1),sword,"Core",Vector3.new(0.800000012, 0.800000012, 0.699999988),"Block","Brick",false,nil,0,Part,"Custom")
294
Blade= Add.part("Medium stone grey",Vector3.new(0.900000036, 0.200000003, 0.399999976),CFrame.new(-184.388199, 3.18968129, -65.3999939, 0.57357651, -0.819151998, 0, 0.819151998, 0.57357651, 0, 0, 0, 1),sword,"Blade",Vector3.new(1, 1, 0.200000003),"Block","Brick",false,nil,0,Part,"Custom")
295
hitbox= Add.part("Medium stone grey",Vector3.new(1, 3.46000004, 1),CFrame.new(-184.459076, 3.10561037, -65.4410172, 0.060511604, 0.598099828, -0.799133182, -0.0353691019, 0.801382124, 0.597104728, 0.997539937, -0.0078676939, 0.0696469769),sword,"hitbox",Vector3.new(1, 1, 1),"Block","Brick",false,nil,1,Part,"Brick")
296
297
while not ra or not la or not t or not humanoid or not head or not ll or not rl or not hrp do
298
	wait()
299
end
300
	hrpw = hrp:findFirstChild("RootJoint");lh = t:findFirstChild("Left Hip");rh = t:findFirstChild("Right Hip");rs = t:findFirstChild("Right Shoulder");ls = t:findFirstChild("Left Shoulder");neck = t:findFirstChild("Neck");
301
while not ls or not rs or not neck or not hrpw do
302
		wait()
303
end
304
co = hrpw.C0
305
moop = {}
306
function Hit(p)
307
	if don then
308
		Damagefunc(p,Damag-5,Damag+5,math.random(10,30),"Normal") end
309
	if QHIT then
310
		if not checkintable(p.Parent, moop) then
311
		Damagefunc(p,Damag+5,Damag+15,math.random(10,30),"Normal");
312
		table.insert(moop, p.Parent);else print("herena") end
313
	end
314
end
315
316
317
nu = sword:GetChildren()
318
for i = 1, #nu do
319
if nu[i].Name ~= "Handle" then
320
	if nu[i].Name == "Blade" or nu[i].Name == "hitbox" then
321
		nu[i].Touched:connect(Hit)
322
	end
323
	w = Instance.new("Weld", sword.Handle)
324
	w.Part0 = sword.Handle
325
	w.Part1 = nu[i]
326
	w.C0 = sword.Handle.CFrame:toObjectSpace(nu[i].CFrame)
327
	nu[i].Anchored = false
328
end
329
end
330
sword.Handle.Anchored = false;sword.Parent = char
331
function backweld()
332
bw = weldIt(t,Handle,CFrame.new(1.15,-0.85,-1)*CFrame.Angles(math.rad(25),math.rad(-90),0),nil)
333
return bw
334
end
335
336
backweld()
337
338
function checkintable(chek, tabl)
339
	for i = 1, #tabl do
340
		if tabl[i] == check then
341
		return true
342
		end
343
	end
344
	return false
345
end
346
------function of le splash-------------
347
348
function splash()
349
local blcf = hitbox.CFrame*CFrame.new(-.125,.2,0)
350
if scfr and (hitbox.Position-scfr.p).magnitude > .1 then
351
local h = 4.7
352
local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
353
if a then game.Debris:AddItem(a,.1) end if b then game.Debris:AddItem(b,.1) end
354
local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
355
if a then game.Debris:AddItem(a,.1) end if b then game.Debris:AddItem(b,.1) end
356
scfr = blcf
357
elseif not scfr then
358
scfr = blcf
359
end
360
end
361
function rest(num)
362
for i = 0, 1, 0.13 do 
363
if combo ~= num then
364
return 
365
end
366
normal(i)
367
wait()
368
end
369
if combo ~= num then
370
return 
371
end
372
scfr=nil;anim = false;running=false;canslash=false;combo=4;runit()
373
end
374
-------------------------slashr------------------------------------------------------slashr------------------------------------------------------slashr-----------------------------
375
slash ={
376
function()
377
anim = true
378
379
for i = 0, 1, 0.23 do
380
animate("Toso",(co-Vector3.new(0,0.4,0)),0,math.rad(5),math.rad(170),i);
381
	animate("rr",CFrame.new(1.5,0.5,0),0,math.rad(95),math.rad(110),i);animate("lr",CFrame.new(-1.5,0.5,0),math.rad(-45),0,math.rad(-25),i)
382
	animate("bw",CFrame.new(0,-1,0),0,math.rad(90),0,i)
383
	animate("hr",CFrame.new(0,1,0),0,math.rad(-90),0,i)
384
	animate("reg",CFrame.new(0.5,-1.1,-0.65),math.rad(-15),0,0,i)
385
	animate("leg",CFrame.new(-0.5,-1.2,0),math.rad(-25),0,0,i)
386
	wait()
387
end
388
wait()
389
don = true;attackdebounce = false;scfr = nil
390
for i = 0, 1, 0.16 do
391
wait()
392
splash()
393
animate("Toso",(co-Vector3.new(0,0,0)),0,math.rad(0),math.rad(20),i);animate("hr",CFrame.new(0,1,0),0,math.rad(-20),0,i)
394
	animate("reg",CFrame.new(0.5,-1.5,0),math.rad(0),0,0,i)
395
	animate("leg",CFrame.new(-0.5,-1.5,0),math.rad(0),0,0,i)
396
	animate("rr",CFrame.new(1.5,0.5,0),0,math.rad(-60),math.rad(110),i);
397
end
398
scfr = nil;don = false;canslash=true;
399
rest(1)
400
end,
401
402
403
404
function()
405
anim = true
406
for i = 0, 1, 0.24 do
407
animate("bw",CFrame.new(0,-1,0),math.rad(20),math.rad(90),math.rad(0),i)
408
animate("Toso",(co-Vector3.new(0,0,0)),0,math.rad(0),math.rad(-50),i);animate("hr",CFrame.new(0,1,0),0,math.rad(10),0,i)
409
animate("reg",CFrame.new(0.5,-1.5,0),math.rad(0),0,math.rad(10),i)
410
animate("leg",CFrame.new(-0.5,-1.5,0),math.rad(0),0,0,i)
411
animate("rr",CFrame.new(1.5,0.5,0),math.rad(90),math.rad(0),math.rad(110),i);
412
wait()
413
end
414
wait();don = true;attackdebounce = false;scfr=nil;
415
for i = 0, 1, 0.2 do
416
wait()
417
splash()
418
animate("bw",CFrame.new(0,-1,0),math.rad(-60),math.rad(90),math.rad(0),i)
419
animate("Toso",(co-Vector3.new(0,0.3,0)),math.rad(40),math.rad(0),math.rad(0),i);animate("hr",CFrame.new(0,1,0),math.rad(40),math.rad(10),0,i)
420
animate("reg",CFrame.new(0.5,-1.2,-0.2),math.rad(10),0,math.rad(10),i)
421
animate("leg",CFrame.new(-0.5,-1.2,-0.6),math.rad(30),0,0,i)
422
animate("rr",CFrame.new(1.2,0.5,-0.3),math.rad(75),math.rad(0),math.rad(-40),i);
423
end
424
scfr = nil;don = false;canslash=true
425
rest(2)
426
end,
427
function()
428
anim = true;
429
for i = 0, 1, 0.24 do
430
wait();
431
animate("bw",CFrame.new(0,-1,0),math.rad(0),math.rad(90),math.rad(0),i)
432
animate("Toso",(co-Vector3.new(0,0,0)),0,math.rad(0),math.rad(30),i);animate("hr",CFrame.new(0,1,0),0,math.rad(-30),0,i)
433
animate("reg",CFrame.new(0.5,-1.5,0),math.rad(0),0,math.rad(15),i)
434
animate("leg",CFrame.new(-0.5,-1.5,0),math.rad(0),0,math.rad(-15),i)
435
animate("rr",CFrame.new(1,0.6,-0.25),math.rad(180),math.rad(40),math.rad(-70),i);
436
end;don = true;attackdebounce = false;scfr=nil
437
for i = 0, 1, 0.2 do
438
wait()
439
splash()
440
animate("bw",CFrame.new(0,-1,0),math.rad(-40),math.rad(90),math.rad(0),i)
441
animate("Toso",(co-Vector3.new(0,0,0)),0,math.rad(0),math.rad(-50),i);animate("hr",CFrame.new(0,1,0),0,math.rad(50),0,i)
442
animate("reg",CFrame.new(0.5,-1.5,0),math.rad(20),0,math.rad(6),i)
443
animate("leg",CFrame.new(-0.5,-1.5,0),math.rad(-10),0,math.rad(-10),i)
444
animate("rr",CFrame.new(1.5,0.5,0),math.rad(0),math.rad(60),math.rad(50),i);
445
end
446
scfr = nil;don = false;canslash=true
447
rest(3)
448
end,
449
function()
450
anim = true
451
for i = 0, 1, 0.24 do
452
animate("bw",CFrame.new(0,-1,0),math.rad(-100),math.rad(90),math.rad(0),i)
453
animate("Toso",(co-Vector3.new(0,0.6,0)),0,math.rad(0),math.rad(-40),i);animate("hr",CFrame.new(0,1,0),0,math.rad(-30),0,i)
454
animate("reg",CFrame.new(0.5,-0.9,-0.5),math.rad(0),0,math.rad(15),i)
455
animate("leg",CFrame.new(-0.5,-0.9,0.15),math.rad(-45),0,math.rad(0),i)
456
animate("rr",CFrame.new(1.4,0.5,0),math.rad(0),math.rad(0),math.rad(75),i);
457
wait()
458
end;wait();don = true;attackdebounce = false;scfr=nil
459
for i = 0, 1, 0.24 do
460
wait();splash()
461
animate("bw",CFrame.new(0,-1,0),math.rad(0),math.rad(90),math.rad(0),i)
462
animate("Toso",(co-Vector3.new(0,0,0)),0,math.rad(0),math.rad(30),i);animate("hr",CFrame.new(0,1,0),0,math.rad(-30),0,i)
463
animate("reg",CFrame.new(0.5,-1.5,0),math.rad(0),0,math.rad(15),i)
464
animate("leg",CFrame.new(-0.5,-1.5,0),math.rad(0),0,math.rad(-15),i)
465
animate("rr",CFrame.new(1,0.6,-0.25),math.rad(180),math.rad(40),math.rad(-70),i);
466
end;scfr = nil;don = false;canslash=true;rest(4)
467
end
468
}
469
-------------------------slashr------------------------------------------------------slashr------------------------------------------------------slashr-----------------------------
470
471
combo = 4;canslash=false
472
473
474
function clik()
475
	if not anim or canslash then
476
	canslash=false;scfr = nil
477
	if combo == 4 then
478
	combo=1;slash[1]();
479
	elseif combo == 1 then
480
	combo=2;slash[2]()
481
	elseif combo == 2 then
482
	combo=3;slash[3]()
483
	elseif combo == 3 then
484
	combo=4;slash[4]()
485
	end
486
	end
487
end
488
QHIT = false;
489
skills = {
490
function(mouse)
491
anim = true;locanrun=true;canjump=false
492
normal(1)
493
mh = mouse.Hit.p
494
x,y,z = (CFrame.new(char.Torso.Position,Vector3.new(mh.X,char.Torso.Position.Y,mh.Z))):toEulerAnglesXYZ()
495
char.Torso.CFrame = CFrame.new(char.Torso.Position,Vector3.new(mh.X,char.Torso.Position.Y,mh.Z))
496
wait();QHIT = true
497
for i = 0, 1, 0.333333 do
498
animate("bw",CFrame.new(0,-1,0),math.rad(-90),math.rad(90),math.rad(0),i)
499
animate("Toso",(co-Vector3.new(0,0.4,0)),0,math.rad(5),math.rad(-90),i);animate("hr",CFrame.new(0,1,0),math.rad(-10),math.rad(90),0,i)
500
animate("rr",CFrame.new(1.2,0.5,-1),math.rad(90),math.rad(0),math.rad(-90),i);
501
wait()
502
end
503
wait();moop={};
504
for i = 0, 1, 0.333333 do
505
animate("bw",CFrame.new(0,-1,0),math.rad(-90),math.rad(90),math.rad(0),i)
506
animate("Toso",(co-Vector3.new(0,0.4,0)),0,math.rad(5),math.rad(90),i);	animate("hr",CFrame.new(0,1,0),math.rad(-10),math.rad(-70),0,i)
507
animate("rr",CFrame.new(1.5,0.5,0),math.rad(90),math.rad(0),math.rad(90),i);
508
wait()
509
end;mufu={}
510
wind1= Add.part("Institutional white",Vector3.new(4, 1.2, 1),(hitbox.CFrame-Vector3.new(0,1,0))*CFrame.Angles(math.rad(-10),0,math.rad(90)),sword,"wind",Vector3.new(1.6, 1.1, 1.1),"Block","Sphere",false,nil,0.69999998807907,Part,"Brick")
511
wind2= Add.part("Really black",Vector3.new(4, 1.2, 1),(hitbox.CFrame-Vector3.new(0,1,0))*CFrame.Angles(math.rad(-10),0,math.rad(90)),sword,"wind",Vector3.new(1.6, 1.1, 1.1),"Block","Sphere",false,nil,0.60000002384186,Part,"Brick");wind2.Mesh.Offset = Vector3.new(0.4,0,0)
512
wind3= Add.part("Medium stone grey",Vector3.new(4, 1.2, 1),(hitbox.CFrame-Vector3.new(0,1,0))*CFrame.Angles(math.rad(-10),0,math.rad(90)),sword,"wind",Vector3.new(1.6, 1.1, 1.1),"Block","Sphere",false,nil,0.5,Part,"Brick");wind3.Mesh.Offset = Vector3.new(0.6,0,0)
513
wind1.CFrame = hitbox.CFrame*CFrame.Angles(math.rad(-10),0,math.rad(90))-Vector3.new(0,0.3,0);wind2.CFrame = hitbox.CFrame*CFrame.Angles(math.rad(-10),0,math.rad(90))-Vector3.new(0,0.3,0);wind3.CFrame = hitbox.CFrame*CFrame.Angles(math.rad(-10),0,math.rad(90))-Vector3.new(0,0.3,0)
514
eff2 = Add.part("Medium stone grey", Vector3.new(), hitbox.CFrame*CFrame.Angles(1,1,1),char,"effect",Vector3.new(1,1,1),"Block","Brick",false,nil,0.4,Part,"Brick")
515
eff1 = Add.part("Medium stone grey", Vector3.new(1,1,1), hitbox.CFrame*CFrame.Angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),char,"effect",Vector3.new(1,1,1),"Block","Brick",false,nil,0.4,Part,"Brick")
516
eff3= Add.part("White",Vector3.new(1, 1, 1),hitbox.CFrame*CFrame.new(0,0,-1),char,"effect",Vector3.new(1.5, 1.5, 1),"Block","FileMesh",false,"http://www.roblox.com/asset/?id=3270017",0.8,Part,"Symmetric")
517
eff4= Add.part("Black",Vector3.new(1, 1, 1),hitbox.CFrame*CFrame.new(0,0,-1.5),char,"effect",Vector3.new(1.25, 1.25, 1),"Block","FileMesh",false,"http://www.roblox.com/asset/?id=3270017",0.8,Part,"Symmetric")
518
eff1.CFrame = hitbox.CFrame*CFrame.Angles(math.random(-360,360),math.random(-360,360),math.random(-360,360));eff2.CFrame = hitbox.CFrame*CFrame.Angles(math.random(-360,360),math.random(-360,360),math.random(-360,360))
519
eff3.CFrame = (hitbox.CFrame*CFrame.new(0,-1,0))*CFrame.Angles(math.rad(90),0,0);eff4.CFrame=(hitbox.CFrame*CFrame.new(0,-1.5,0))*CFrame.Angles(math.rad(90),0,0)
520
table.insert(mufu,wind1);table.insert(mufu,wind2);table.insert(mufu,wind3);
521
		coroutine.resume(coroutine.create(function(p1,p2,p3,p4,cf1)
522
		for i = 0,1,1/13 do
523
		p1.CFrame = (cf1*CFrame.new(0,3*i,-.5*i))*CFrame.Angles(math.rad(math.random(-400,400)),math.rad(math.random(-400,400)),math.rad(math.random(-400,400)));p1.Transparency=p1.Transparency+(0.6*(1/13))
524
		p2.CFrame = (cf1*CFrame.new(0,3*i,-.5*i))*CFrame.Angles(math.rad(math.random(-400,400)),math.rad(math.random(-400,400)),math.rad(math.random(-400,400)));p2.Transparency=p2.Transparency+(0.6*(1/13))
525
		p3.CFrame = (cf1*CFrame.new(0,-1+8*i,0.17-(8*(0.5/3))*i)*CFrame.Angles(math.rad(90),0,0));p3.Mesh.Scale = Vector3.new(1.5+1*i,1.5+1*i,1);p3.Transparency = 0.8+0.3*i
526
		p4.CFrame = (cf1*CFrame.new(0,-1.5+7.5*i,0.17-(7.5*(0.5/3))*i)*CFrame.Angles(math.rad(90),0,0));p4.Mesh.Scale = Vector3.new(1.25+1*i,1.25+1*i,1);p4.Transparency = 0.8+0.3*i
527
		wait();
528
		end;p1.Parent=nil;p2.Parent=nil;p3.Parent=nil;p4.Parent=nil
529
		end),eff1,eff2,eff3,eff4,hitbox.CFrame)
530
for x = 1, #mufu do
531
coroutine.resume(coroutine.create(function(wind,hey,trans,mehx)
532
	for i = 0, 1, (1/13) do
533
	wind.Mesh.Scale = Vector3.new(hey.X+1*i,hey.Y-hey.Y*i,hey.Z-hey.Z*i)
534
	wind.Mesh.Offset = Vector3.new(mehx+1*i,0,0)
535
	wind.Transparency = trans+(1-trans)*i
536
	wait()
537
	end;wind.Parent=nil
538
end),mufu[x],mufu[x].Mesh.Scale,mufu[x].Transparency,mufu[x].Mesh.Offset.X)
539
end
540
541
542
543
QHIT = false;locanrun=false;canjump=true;lerun=false
544
anim = false;
545
end,
546
function()
547
anim = true;canjump = false
548
bodyp = Add.bp(t,"Stay",t.Position);
549
for i = 0, 1, 1/7 do
550
	animate("bw",CFrame.new(0,-1,0),0,math.rad(90),0,i)
551
	animate("Toso",(co-Vector3.new(0,0.5,0)),math.rad(30),math.rad(0),math.rad(0),i)
552
	animate("hr",CFrame.new(0,1,0),math.rad(-10),math.rad(0),0,i)
553
	animate("rr",CFrame.new(1.5,0.5,0),math.rad(90),math.rad(35),math.rad(-25),i)
554
	animate("lr",CFrame.new(-1.5,0.5,0),math.rad(-15),0,math.rad(-45),i)
555
	animate("reg",CFrame.new(0.5,-1,-0.65),math.rad(25),0,0,i)
556
	animate("leg",CFrame.new(-0.5,-1.3,0),math.rad(5),0,0,i)
557
wait()
558
end;logic = Add.BG(hrp,hrp.CFrame)
559
for i = 1, 10 do
560
boost= Add.part("White",Vector3.new(1, 1, 1),t.CFrame*CFrame.new(0,0,-1),char,"effect",Vector3.new(3, 3, 3),"Block","FileMesh",false,"http://www.roblox.com/asset/?id=20329976",0.3,Part,"Symmetric")
561
boost.CFrame = CFrame.new(t.Position-Vector3.new(0,1.2,0))*CFrame.Angles(0,math.rad(math.random(-360,360)),0)
562
coroutine.resume(coroutine.create(function(mama)
563
	for i = 0, 1, 1/12 do
564
		mama.CFrame = mama.CFrame*CFrame.Angles(0,math.rad(math.random(-360,360)),0);mama.Transparency = 0.3+0.5*i;mama.Mesh.Scale = Vector3.new(3+1*i,3+1*i,3+1*i);
565
	wait()
566
	end;mama.Parent=nil
567
end),boost)
568
wait()
569
end;
570
571
for i = 0, 1, 1/7 do
572
	animate("bw",CFrame.new(0,-1,0),0,math.rad(90),0,i)
573
	animate("Toso",(co-Vector3.new(0,0,0)),math.rad(0),math.rad(0),math.rad(0),i)
574
	animate("hr",CFrame.new(0,1,0),math.rad(0),math.rad(0),0,i)
575
	animate("rr",CFrame.new(1.5,0.5,0),math.rad(0),math.rad(90),math.rad(90),i)
576
	animate("lr",CFrame.new(-1.5,0.5,0),math.rad(-15),0,math.rad(-45),i)
577
	animate("reg",CFrame.new(0.5,-1,-0),math.rad(0),0,math.rad(25),i)
578
	animate("leg",CFrame.new(-0.5,-1,0),math.rad(0),0,math.rad(-25),i)
579
wait()
580
end;
581
582
ball = Add.part("White", Vector3.new(1,1,1), t.CFrame, char, "Effect", Vector3.new(20,20,20), "Block", "Sphere",false,nil,0.7,Part,"Custom")ball.Anchored = false
583
anchor = Add.part("White",Vector3.new(5,5,5),t.CFrame,char,"anchor",Vector3.new(20,20,20),"Block","Sphere",false,nil,1,Part,"Custom");anchor.Anchored = false
584
wind = Add.part("White",Vector3.new(5,5,5),t.CFrame,char,"anchor",Vector3.new(20,20,20),"Block","FileMesh",false,"http://www.roblox.com/asset/?id=1051557",0.6,Part,"Custom");wind.Anchored = false
585
a=weldIt(t,anchor,CFrame.new(0,0,0),CFrame.new(0,0,0),nil);b=weldIt(t,wind,CFrame.new(0,0,0),CFrame.new(0,0,0),nil);c=weldIt(t,ball,CFrame.new(0,0,0),CFrame.new(0,0,0),nil)
586
already = {};weldos={};lepeepz=checkdist(t,17);gage = b.C0
587
588
for i = 1, #lepeepz do
589
 if lepeepz[i] then
590
 haw = weldIt(anchor,lepeepz[i].Torso,anchor.CFrame:toObjectSpace(lepeepz[i].Torso.CFrame),nil,nil)
591
 table.insert(weldos,haw);
592
 end
593
end
594
for i = 0,1, 1/120 do
595
if math.floor((i*120)%30) == 1 then
596
	for x = 1,#lepeepz do
597
	if lepeepz[x] and lepeepz[x]:findFirstChild("Humanoid") and lepeepz[x]:findFirstChild("Torso") then
598
	attackdebounce = false 
599
	Damagefunc(lepeepz[x].Torso,(humanoid.MaxHealth/10),(humanoid.MaxHealth/10),math.random(10,30),"Normal")
600
	end
601
	end
602
end
603
if math.floor((i*120)%4) == 1 then
604
lolbob = Add.part("White",Vector3.new(5,5,5),t.CFrame*CFrame.Angles(math.rad(math.random(-100,100)),math.rad(math.random(-100,100)),math.rad(math.random(-100,100))),char,"anchor",Vector3.new(2.5,2.5,2.5),"Block","FileMesh",false,"rbxassetid://168892432 ",0.4,Part,"Custom")
605
lolbob.CFrame = t.CFrame*CFrame.Angles(0,math.rad(-360,360),0)
606
coroutine.resume(coroutine.create(function(clone)
607
for i = 0, 1, 0.1 do
608
clone.Mesh.Scale = Vector3.new(2.5+5*i,2.5+5*i,2.5+5*i);clone.Transparency = 0.4+0.4*i
609
wait()
610
end;clone.Parent = nil
611
end),lolbob)
612
end
613
animate("Toso",(co-Vector3.new(0,0,0)),math.rad(0),math.rad(0),math.rad((360*16)*i),i);b.C0 = gage*CFrame.Angles(0,math.rad(100*i),0);ball.Transparency = 0.6-0.4*i;wind.Transparency = 0.6-0.4*i
614
for i = 1,#weldos do
615
weldos[i].C0 = weldos[i].C0*CFrame.new(0,0.0625,0)
616
end
617
wait()
618
end;logic.Parent=nil
619
coroutine.resume(coroutine.create(function(a1,a2,a3,ws,w)
620
	for i = 0, 1, 0.1 do
621
	w.C0 = ws*CFrame.Angles(0,math.rad(100*i),0)
622
	a1.Mesh.Scale = Vector3.new(20+3*i,20+3*i,20+3*i);a1.Transparency = 0.2+0.8*i
623
	a2.Mesh.Scale = Vector3.new(20+3*i,20+3*i,20+3*i);a2.Transparency = 0.2+0.8*i
624
	wait()
625
	end;a1.Parent=nil;a2.Parent=nil;a3.Parent=nil;
626
end),wind,ball,anchor,b.C0,b)
627
for i = 1,#weldos do if weldos[i] then weldos[i].Parent = nil end end
628
wait()
629
anim = false;bodyp.Parent=nil;canjump=true;
630
end,
631
function()
632
	niye = sword:GetChildren();guard=true;br = BrickColor.new("Institutional white")
633
	if ss then
634
		br = BrickColor.new("Medium stone grey");guard = false
635
	end
636
	for i = 1,# niye do
637
		if niye[i].Name == "Blade" then
638
			niye[i].BrickColor = br;ss = guard
639
		end
640
	end
641
end,
642
function(bik,rotate)
643
	if not canboost then return end
644
		coroutine.resume(coroutine.create(function(ilan,ratat)
645
	yolo = Add.bp(hrp,"BOPOLS",hrp.Position);canboost=false;
646
	boosts= Add.part("White",Vector3.new(5,5,5),hrp.CFrame,char,"boom",Vector3.new(2.5,2.5,2.5),"Block","FileMesh",false,"http://www.roblox.com/asset/?id=20329976",0.4,Part,"Custom")
647
	boosts.CFrame = (t.CFrame-Vector3.new(0,1.5,0))*CFrame.Angles(0,0,math.rad(ratat))
648
		coroutine.resume(coroutine.create(function(thing)
649
		print("yo")
650
			for i = 0, 1, 0.05 do
651
			thing.Mesh.Scale = Vector3.new(2.5+1*i,2.5+1*i,2.5+1*i);thing.Transparency = 0.4+0.5*i
652
			wait()
653
			end;thing.Parent=nil
654
				end),boosts)
655
	for i = 0, 1, 0.1 do
656
	yolo.position = (hrp.CFrame*CFrame.new(0,0,ilan)).p
657
	wait()
658
	end
659
	yolo.Parent = nil;canboost=true
660
		end),bik,rotate)
661
end
662
}
663
function led(key, mouse)
664
key = key:lower()
665
if anim then return end
666
if key == "z" then
667
skills[1](mouse)
668
elseif key == "x" then
669
skills[2](mouse)
670
elseif key == "r" then
671
skills[3]()
672
elseif key == "c" then
673
skills[4](-15,120)
674
elseif key == "v" then
675
skills[4](10,-120)
676
end
677
end
678
function normal(i)
679
	animate("bw",CFrame.new(0,-1,0),0,math.rad(90),0,i)
680
	animate("Toso",(co-Vector3.new(0,0.4,0)),0,math.rad(5),math.rad(90),i)
681
	animate("hr",CFrame.new(0,1,0),math.rad(-10),math.rad(-70),0,i)
682
	animate("rr",CFrame.new(1.5,0.5,0),math.rad(90),math.rad(115),math.rad(-25),i)
683
	animate("lr",CFrame.new(-1.5,0.5,0),math.rad(35),0,math.rad(-25),i)
684
	animate("reg",CFrame.new(0.5,-1.1,-0.65),math.rad(-15),0,0,i)
685
	animate("leg",CFrame.new(-0.5,-1.2,0),math.rad(-25),0,0,i)
686
end
687
function Equip(mouse)
688
print("yup")
689
if equip then return end
690
	while anim do wait() end
691
	rh.Parent=nil;rs.Parent=nil;lh.Parent=nil;neck.Parent=nil;ls.Parent=nil;rlw = weldIt(t,rl, CFrame.new(0.5,-1.5,0),CFrame.new(0,0.5,0));llw = weldIt(t,ll, CFrame.new(-0.5,-1.5,0),CFrame.new(0,0.5,0));
692
	rw = weldIt(t,ra,CFrame.new(1.5,0.5,0),CFrame.new(0,0.5,0),nil);lw = weldIt(t,la,CFrame.new(-1.5,0.5,0),CFrame.new(0,0.5,0));nw = weldIt(t,head,CFrame.new(0, 1, 0),CFrame.new(0,-0.5,0))
693
	anim = true
694
	bw.Parent = nil;running=false;idol=true;
695
	hw = weldIt(ra,Handle,CFrame.new(0,-1,0)*CFrame.Angles(0,math.rad(90),0),nil)
696
	for i = 0,1,0.1 do
697
	normal(i)
698
	wait(0.0001)
699
	end
700
	mouse.Button1Down:connect(clik)
701
	mouse.KeyDown:connect(function(k) led(k, mouse) end)
702
	equip = true;anim = false;
703
end
704
function unequip(mouse)
705
if not equip then return end
706
	while anim do wait() end
707
	anim = true;ss=false
708
	for i = 0,1,0.1 do
709
	animate("Toso",co-Vector3.new(0,0.4-0.4*i,0),0,0,0,i)
710
	animate("hr",CFrame.new(0,1,0),0,0,0,i)
711
	animate("rr",CFrame.new(1.5,0.5,0),0,0,0,i)
712
	animate("lr",CFrame.new(-1.5,0.5,0),0,0,0,i)
713
	animate("reg",CFrame.new(0.5,-1.5,0),0,0,0,i)
714
	animate("leg",CFrame.new(-0.5,-1.5,0),0,0,0,i)
715
	wait(0.0001)
716
	end
717
	hw.Parent = nil;backweld()
718
	rw.Parent=nil;lw.Parent=nil;hrpw.C0 = co;rlw.Parent=nil;llw.Parent=nil;rh.Parent=t;lh.Parent=t;rs.Parent=t;ls.Parent=t;neck.Parent=t;
719
	equip=false;anim=false
720
end
721
canrun=false
722
function runit()
723
if(t.Velocity*Vector3.new(1, 0, 1)).magnitude > 2 and not anim and equip and fell then
724
running = true;
725
for i = 0, 1,(1/7) do
726
if not anim and equip and running and fell then
727
	animate("bw",CFrame.new(0,-1,0),0,math.rad(90),0,i)
728
	animate("Toso",(co-Vector3.new(0,0.4,0)),0,math.rad(5),math.rad(80),i)
729
	animate("hr",CFrame.new(0,1,0),math.rad(0),math.rad(-80),0,i)
730
	animate("rr",CFrame.new(1.5,0.5,0),math.rad(90),math.rad(45),math.rad(-25),i)
731
	animate("lr",CFrame.new(-1.5,0.5,0),math.rad(-35),0,math.rad(-30),i)
732
	--[[animate("reg",CFrame.new(0.5,-1.1,0.2),math.rad(5),math.rad(-80),0,i)
733
	animate("leg",CFrame.new(-0.5,-1.2,-0.2),math.rad(-2),math.rad(-80),0,i)]]
734
	animate("reg",CFrame.new(0.6,-1.2,0),math.rad(5+35*math.cos((inf-7)/4)),math.rad(-40),0,i)
735
	animate("leg",CFrame.new(-0.6,-1.2,0),math.rad(-2-35*math.cos((inf-7)/4)),math.rad(-40),0,i)
736
wait()
737
else
738
if hw then
739
	hw.C0 = CFrame.new(0,-1,0)*CFrame.Angles(0,math.rad(90),0) end
740
break
741
end
742
end
743
744
end
745
end
746
--[[function run(speed)
747
if speed>0 then
748
749
if (t.Velocity*Vector3.new(1, 0, 1)).magnitude > 2 then
750
runit()
751
end
752
else
753
running = false
754
for i = 0, 1, 0.142 do
755
if not anim and equip and not running then
756
	normal(i)
757
wait()
758
else
759
if hw then
760
	hw.C0 = CFrame.new(0,-1,0)*CFrame.Angles(0,math.rad(90),0) end
761
break
762
end
763
end
764
idol = true
765
end
766
inf = 0
767
end]]
768
769
770
771
772
--to[mem
773
774
775
function Lerp(x,y,inc) return x + (y - x) * inc end
776
777
function animate(mem,cfr,x,y,z,e)
778
	To[mem].X=Lerp(To[mem].X,x,e);To[mem].Y=Lerp(To[mem].Y,y,e);To[mem].Z=Lerp(To[mem].Z,z,e)
779
	To[mem].cf=(cfr-Vector3.new(cfr.X,cfr.Y,cfr.Z))+Vector3.new(Lerp(To[mem].cf.X,cfr.X,e),Lerp(To[mem].cf.Y,cfr.Y,e),Lerp(To[mem].cf.Z,cfr.Z,e))
780
end
781
To={
782
 rr={X=0;Y=0;Z=0;cf=CFrame.new(1.5,0.5,0)};bw={X=math.rad(5);Y=math.rad(90);Z=0;cf=CFrame.new(0,-1,0)};lr={X=0;Y=0;Z=0;cf=CFrame.new(-1.5,0.5,0)};hr={X=0;Y=0;Z=0;cf=CFrame.new(0,1.5,0)};leg={X=0;Y=0;Z=0;cf=CFrame.new(-0.5,-1,0)};reg={X=0;Y=0;Z=0;cf=CFrame.new(0.5,-1,0)};Toso={X=0;Y=0;Z=0;cf=co}
783
}
784
game:service'RunService'.RenderStepped:connect(function()
785
	if rw then rw.C0=To["rr"].cf*CFrame.Angles((To["rr"].X),(To["rr"].Y),(To["rr"].Z)); end
786
	if hw and equip then hw.C0=To["bw"].cf*CFrame.Angles((To["bw"].X),(To["bw"].Y),(To["bw"].Z)) end
787
	if lw then lw.C0=To["lr"].cf*CFrame.Angles((To["lr"].X),(To["lr"].Y),(To["lr"].Z));end
788
	if nw then nw.C0=To["hr"].cf*CFrame.Angles((To["hr"].X),To["hr"].Y,To["hr"].Z);end
789
	if rlw then rlw.C0=To["reg"].cf*CFrame.Angles(To["reg"].X,To["reg"].Y,To["reg"].Z);end
790
	if llw then llw.C0=To["leg"].cf*CFrame.Angles(To["leg"].X,To["leg"].Y,To["leg"].Z);end
791
	if hrpw then hrpw.C0=To["Toso"].cf*CFrame.Angles(To["Toso"].X,To["Toso"].Y,To["Toso"].Z) end
792
end)
793
function NoOutline(Part)
794
Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
795
end
796
---------------------1274182751856210985126509218u8071894718946189406194189410-------------------------------------------
797
---------------------1274182751856210985126509218u8071894718946189406194189410-------------------------------------------
798
---------------------1274182751856210985126509218u8071894718946189406194189410-------------------------------------------
799
local ppart = Instance.new("Part")
800
ppart.Material = "SmoothPlastic"
801
ppart.TopSurface,ppart.BottomSurface = 0,0
802
ppart.FormFactor = "Custom"
803
ppart.Size = Vector3.new(.2,.2,.2)
804
ppart:BreakJoints()
805
ppart.TopSurface = "SmoothNoOutlines"
806
ppart.BottomSurface = "SmoothNoOutlines"
807
ppart.RightSurface = "SmoothNoOutlines"
808
ppart.LeftSurface = "SmoothNoOutlines"
809
ppart.CanCollide = false
810
811
local function CFrameFromTopBack(at, top, back)
812
local right = top:Cross(back)
813
return CFrame.new(at.x, at.y, at.z,
814
right.x, top.x, back.x,
815
right.y, top.y, back.y,
816
right.z, top.z, back.z)
817
end
818
 
819
function Triangle(a, b, c)
820
local edg1 = (c-a):Dot((b-a).unit)
821
local edg2 = (a-b):Dot((c-b).unit)
822
local edg3 = (b-c):Dot((a-c).unit)
823
if edg1 <= (b-a).magnitude and edg1 >= 0 then
824
a, b, c = a, b, c
825
elseif edg2 <= (c-b).magnitude and edg2 >= 0 then
826
a, b, c = b, c, a
827
elseif edg3 <= (a-c).magnitude and edg3 >= 0 then
828
a, b, c = c, a, b
829
else 
830
assert(false, "unreachable")
831
end
832
 
833
local len1 = (c-a):Dot((b-a).unit)
834
local len2 = (b-a).magnitude - len1
835
local width = (a + (b-a).unit*len1 - c).magnitude
836
 
837
local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit)
838
 
839
local list = {}
840
 
841
if len1 > 0.01 then
842
local w1 = Instance.new('WedgePart', m)
843
w1.Material = "SmoothPlastic"
844
w1.FormFactor = 'Custom'
845
if Mode=="Unactive" then
846
w1.BrickColor = ppart.BrickColor
847
elseif Mode=="Hero" then
848
w1.BrickColor = BrickColor.new("Bright blue")
849
elseif Mode=="Infamous" then
850
w1.BrickColor = BrickColor.new("Bright red")
851
end
852
w1.Transparency = ppart.Transparency
853
w1.Reflectance = ppart.Reflectance
854
w1.Material = ppart.Material
855
w1.CanCollide = ppart.CanCollide
856
NoOutline(w1)
857
local sz = Vector3.new(0.2, width, len1)
858
w1.Size = sz
859
local sp = Instance.new("SpecialMesh",w1)
860
sp.MeshType = "Wedge"
861
sp.Scale = Vector3.new(0,1,1) * sz/w1.Size
862
w1:BreakJoints()
863
w1.Anchored = true
864
w1.Parent = workspace
865
w1.Transparency = 0.8
866
coroutine.resume(coroutine.create(function(Part)
867
for i=0,1,0.1 do
868
wait()
869
Part.Transparency=Part.Transparency+0.02
870
end
871
end),w1)
872
w1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
873
table.insert(list,w1)
874
end
875
 
876
if len2 > 0.01 then
877
local w2 = Instance.new('WedgePart', m)
878
w2.Material = "SmoothPlastic"
879
w2.FormFactor = 'Custom'
880
if Mode=="Unactive" then
881
w2.BrickColor = ppart.BrickColor
882
elseif Mode=="Hero" then
883
w2.BrickColor = BrickColor.new("Bright blue")
884
elseif Mode=="Infamous" then
885
w2.BrickColor = BrickColor.new("Bright red")
886
end
887
w2.Transparency = ppart.Transparency
888
w2.Reflectance = ppart.Reflectance
889
w2.Material = ppart.Material
890
w2.CanCollide = ppart.CanCollide
891
NoOutline(w2)
892
local sz = Vector3.new(0.2, width, len2)
893
w2.Size = sz
894
local sp = Instance.new("SpecialMesh",w2)
895
sp.MeshType = "Wedge"
896
sp.Scale = Vector3.new(0,1,1) * sz/w2.Size
897
w2:BreakJoints()
898
w2.Anchored = true
899
w2.Parent = workspace
900
w2.Transparency = 0.8
901
coroutine.resume(coroutine.create(function(Part)
902
for i=0,1,0.1 do
903
wait()
904
Part.Transparency=Part.Transparency+0.02
905
end
906
end),w2)
907
w2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
908
table.insert(list,w2)
909
end
910
return unpack(list)
911
end
912
---------------------1274182751856210985126509218u8071894718946189406194189410-------------------------------------------
913
---------------------1274182751856210985126509218u8071894718946189406194189410-------------------------------------------
914
---------------------1274182751856210985126509218u8071894718946189406194189410-------------------------------------------
915
916
917
918
919
------------------------------
920
Damagefunc=function(hit,minim,maxim,knockback,Type,Property)
921
        if hit.Parent==nil then
922
                return
923
        end
924
        CPlayer=Bin 
925
        h=hit.Parent:FindFirstChild("Humanoid")
926
        for _,v in pairs(hit.Parent:children()) do
927
        if v:IsA("Humanoid") then
928
        h=v
929
        end
930
        end
931
        if h~=nil and hit.Parent.Name~=char.Name and hit.Parent:FindFirstChild("Torso")~=nil then
932
        if attackdebounce == false then 
933
        attackdebounce = true 
934
        coroutine.resume(coroutine.create(function() 
935
        wait(0.2) 
936
        attackdebounce = false 
937
        end)) 
938
939
                        c=Instance.new("ObjectValue")
940
                        c.Name="creator"
941
                        c.Value=game:service("Players").LocalPlayer
942
                        c.Parent=h
943
                        game:GetService("Debris"):AddItem(c,.5)
944
                Damage=math.random(minim,maxim)
945
                blocked=false
946
                block=hit.Parent:findFirstChild("Block")
947
                if block~=nil then
948
                if block.Value>0 then
949
                blocked=true
950
                block.Value=block.Value-1
951
                print(block.Value)
952
                end
953
                end
954
                if blocked==false then
955
				print("NOOOOP")
956
                h.Health=h.Health-Damage
957
                showDamage(hit.Parent,Damage,.5,BrickColor:Red())
958
                else
959
				print("NOOOOP")
960
                h.Health=h.Health-(Damage/2)
961
                showDamage(hit.Parent,Damage/2,.5,BrickColor.new("Bright blue"))
962
                end
963
                if Type=="Knockdown" then
964
                hum=hit.Parent.Humanoid
965
hum.PlatformStand=true
966
coroutine.resume(coroutine.create(function(HHumanoid)
967
wait(1)
968
HHumanoid.PlatformStand=false
969
end),hum)
970
                local angle=(hit.Position-(Property.Position+Vector3.new(0,0,0))).unit
971
print(angle)
972
--hit.CFrame=CFrame.new(hit.Position,Vector3.new(angle.x,hit.Position.y,angle.z))*CFrame.fromEulerAnglesXYZ(math.pi/4,0,0)
973
local bodvol=Instance.new("BodyVelocity")
974
bodvol.velocity=angle*knockback
975
bodvol.P=5000
976
bodvol.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
977
bodvol.Parent=hit
978
rl=Instance.new("BodyAngularVelocity")
979
rl.P=3000
980
rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000
981
rl.angularvelocity=Vector3.new(math.random(-10,10),math.random(-10,10),math.random(-10,10))
982
rl.Parent=hit
983
game:GetService("Debris"):AddItem(bodvol,.5)
984
game:GetService("Debris"):AddItem(rl,.5)
985
                elseif Type=="Normal" then
986
                vp=Instance.new("BodyVelocity")
987
                vp.P=500
988
                vp.maxForce=Vector3.new(math.huge,0,math.huge)
989
				if Rootpart then
990
                vp.velocity=RootPart.CFrame.lookVector*knockback+RootPart.Velocity/1.05
991
				end
992
                if knockback>0 then
993
                        vp.Parent=hit.Parent.Torso
994
                end
995
                game:GetService("Debris"):AddItem(vp,.5)
996
                elseif Type=="Up" then
997
                local bodyVelocity=Instance.new("BodyVelocity")
998
                bodyVelocity.velocity=vt(0,20,0)
999
                bodyVelocity.P=5000
1000
                bodyVelocity.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
1001
                bodyVelocity.Parent=hit
1002
                game:GetService("Debris"):AddItem(bodyVelocity,.5)
1003
                elseif Type=="Freeze" then
1004
                BodPos=Instance.new("BodyPosition")
1005
                BodPos.P=50000
1006
                BodPos.D=1000
1007
                BodPos.maxForce=Vector3.new(math.huge,math.huge,math.huge)
1008
                BodPos.position=hit.Parent.Torso.Position
1009
                BodPos.Parent=hit.Parent.Torso
1010
                BodGy = it("BodyGyro") 
1011
                BodGy.maxTorque = Vector3.new(4e+005,4e+005,4e+005)*math.huge 
1012
                BodGy.P = 20e+003 
1013
                BodGy.Parent=hit.Parent.Torso
1014
                BodGy.cframe = hit.Parent.Torso.CFrame
1015
                hit.Parent.Torso.Anchored=true
1016
                coroutine.resume(coroutine.create(function(Part) 
1017
                wait(1.5)
1018
                Part.Anchored=false
1019
                end),hit.Parent.Torso)
1020
                game:GetService("Debris"):AddItem(BodPos,3)
1021
                game:GetService("Debris"):AddItem(BodGy,3)
1022
                end
1023
                                c=Instance.new("ObjectValue")
1024
                        c.Name="creator"
1025
                        c.Value=Player
1026
                        c.Parent=h
1027
                        game:GetService("Debris"):AddItem(c,.5)
1028
                CRIT=false
1029
                hitDeb=true
1030
                AttackPos=6
1031
        end
1032
        end 
1033
end
1034
1035
showDamage=function(Char,Dealt,du,Color)
1036
        m=Instance.new("Model")
1037
        m.Name=tostring(Dealt)
1038
        h=Instance.new("Humanoid")
1039
        h.Health=0
1040
        h.MaxHealth=0
1041
        h.Parent=m
1042
        c=Instance.new("Part")
1043
        c.Transparency=0
1044
        c.BrickColor=Color
1045
        c.Name="Head"
1046
        c.TopSurface=0
1047
        c.BottomSurface=0
1048
        c.formFactor="Plate"
1049
        c.Size=Vector3.new(1,.4,1)
1050
        ms=Instance.new("CylinderMesh")
1051
        ms.Scale=Vector3.new(.8,.8,.8)
1052
        if CRIT==true then
1053
                ms.Scale=Vector3.new(1,1.25,1)
1054
        end
1055
        ms.Parent=c
1056
        c.Reflectance=0
1057
        Instance.new("BodyGyro").Parent=c
1058
        c.Parent=m
1059
        c.CFrame=CFrame.new(Char["Head"].CFrame.p+Vector3.new(0,1.5,0))
1060
        f=Instance.new("BodyPosition")
1061
        f.P=2000
1062
        f.D=100
1063
        f.maxForce=Vector3.new(math.huge,math.huge,math.huge)
1064
        f.position=c.Position+Vector3.new(0,3,0)
1065
        f.Parent=c
1066
        game:GetService("Debris"):AddItem(m,.5+du)
1067
        c.CanCollide=false
1068
        m.Parent=workspace
1069
        c.CanCollide=false
1070
end
1071
 
1072
 function humang()
1073
	if not canjump then
1074
	humanoid.Jump = false
1075
	end
1076
 end
1077
 
1078
 function checkint(tabl,thing)
1079
	for i = 1,#tabl do
1080
		if tabl[i] == thing then
1081
			return true
1082
		end
1083
	end
1084
	return false
1085
 end
1086
 ------------------------------------------------------
1087
 
1088
--humanoid.Running:connect(run)
1089
humanoid.Changed:connect(humang)
1090
hb.Deselected:connect(unequip)
1091
hb.Selected:connect(Equip)
1092
1093
1094
function checkdist(Part,magni)
1095
tabol = {}
1096
for _,c in pairs(workspace:children()) do
1097
local hum=c:findFirstChild("Humanoid")
1098
if hum~=nil then
1099
local head=c:findFirstChild("Torso")
1100
if head~=nil then
1101
local targ=head.Position-Part.Position
1102
local mag=targ.magnitude
1103
if mag<=magni and c.Name~=player.Name then 
1104
table.insert(tabol, c)
1105
end
1106
end
1107
end
1108
end
1109
1110
return tabol
1111
end
1112
1113
1114
1115
inf = 0;lejump = false;
1116
while true do
1117
if inf == 1000 then
1118
inf = 0
1119
end
1120
if (t.Velocity*Vector3.new(1, 0, 1)).magnitude <= 2 and not anim and equip and (fell and (t.Velocity.Y <= 1 and t.Velocity.Y >= -1)) then
1121
lerun=false;if rlw and hrpw and llw then
1122
	if lenormal then
1123
		for i = 0, 1, 0.2 do
1124
		if (t.Velocity*Vector3.new(1, 0, 1)).magnitude <= 2 and not anim and equip and (fell and (t.Velocity.Y <= 1 and t.Velocity.Y >= -1)) then
1125
		normal(i)
1126
		wait()
1127
		else
1128
		break
1129
		end
1130
		end
1131
		lenormal = false
1132
	end
1133
	animate("Toso",co-Vector3.new(0,0.4-0.2*math.cos(inf/23),0),0,math.rad(5),math.rad(90),1)
1134
	animate("reg",CFrame.new(0.5,-1.1-0.2*math.cos(inf/23),-0.65),math.rad(-15),0,0,1)
1135
	animate("leg",CFrame.new(-0.5,-1.2,0),math.rad(-25-15*(-1*math.cos(inf/23))),0,0,1)
1136
	animate("rr",CFrame.new(1.5,0.5,0),math.rad(90),math.rad(115),math.rad(-25+5*math.cos(inf/23)),1)
1137
	animate("lr",CFrame.new(-1.5,0.5,0),math.rad(35),0,math.rad(-25-10*math.cos(inf/23)),1)
1138
end
1139
elseif(t.Velocity*Vector3.new(1, 0, 1)).magnitude > 2 and not anim and equip and (fell and (t.Velocity.Y <= 1 and t.Velocity.Y >= -1)) or locanrun then
1140
	lenormal=true;
1141
	if not lerun and not locanrun then
1142
		runit()
1143
		lerun=true
1144
	end
1145
	animate("reg",CFrame.new(0.6,-1.2,0),math.rad(5+35*math.cos(inf/4)),math.rad(-40),0,1)
1146
	animate("leg",CFrame.new(-0.6,-1.2,0),math.rad(-2-35*math.cos(inf/4)),math.rad(-40),0,1)
1147
elseif t.Velocity.Y > 1 and not anim and equip and not lejump then
1148
lejump=true;lenormal=true;lerun=false
1149
	for i = 0, 1, 1/4 do
1150
	if not anim and equip and lejump then
1151
	animate("hr",CFrame.new(0,1,0),math.rad(15),math.rad(0),0,i)
1152
	animate("reg",CFrame.new(0.6,-1.2,0),math.rad(35),math.rad(-40),0,i)
1153
	animate("leg",CFrame.new(-0.6,-1.2,0),math.rad(-35),math.rad(-40),0,i)
1154
	animate("rr",CFrame.new(1.5,0.5,0),math.rad(90),math.rad(75),math.rad(-25),i)
1155
	animate("lr",CFrame.new(-1.5,0.5,0),math.rad(-35),0,math.rad(-30),i)
1156
	wait()
1157
	else
1158
		break
1159
	end
1160
	end
1161
	lejump=false
1162
if t.Velocity.Y > 1 and not anim and equip and not lejump then
1163
	fell = false
1164
end
1165
elseif t.Velocity.Y < -1 and not anim and equip and not lejump and not crosh then
1166
fell = false;lenormal=true;lerun=false
1167
	for i = 0, 1, 1/4 do
1168
	if not anim and equip and (crosh == nil or (crosh and crosh.CanCollide == false)) then
1169
	animate("hr",CFrame.new(0,1,0),math.rad(-5),math.rad(0),0,i)
1170
	animate("reg",CFrame.new(0.6,-1.2,0),math.rad(-25),math.rad(-40),0,i)
1171
	animate("leg",CFrame.new(-0.6,-1.2,0),math.rad(15),math.rad(-40),0,i)
1172
	animate("rr",CFrame.new(1.5,0.5,0),math.rad(90),math.rad(100),math.rad(-25),i)
1173
	animate("lr",CFrame.new(-1.5,0.5,0),math.rad(46),0,math.rad(-30),i)
1174
	wait()
1175
	else
1176
		print('break')
1177
		break
1178
	end
1179
	end
1180
	lejump = false
1181
else
1182
	idol = true;lenormal=true;lerun=false
1183
end
1184
1185
	ray = Ray.new(t.Position,(((t.CFrame*CFrame.new(0,-1.5,0)).p)-t.Position).unit*3)
1186
	crosh, endPoint = Workspace:FindPartOnRay(ray,char)
1187
	if (crosh) then
1188
		lejump=false
1189
		fell = true
1190
	end
1191
	if ss then
1192
windy= Add.part("Institutional white",Vector3.new(4, 1.2, 1),(hitbox.CFrame),sword,"wind",Vector3.new(math.random(50,110)/100, 0.3, 0.3),"Block","Sphere",false,nil,0.69999998807907,Part,"Brick");windy.Anchored = false; windyweld=weldIt(hitbox,windy,CFrame.new(math.random(-100,100)/130,-2,math.random(-100,100)/130)*CFrame.Angles(0,0,math.rad(90)),nil,nil)
1193
		coroutine.resume(coroutine.create(function(w,was,cu)
1194
			for i = 0, 1, 0.2 do
1195
			was.C0 = cu+Vector3.new(0,4*i,0)
1196
			wait()
1197
			end;was.Parent=nil;w.Parent = nil;print("yomama")
1198
		end),windy,windyweld,windyweld.C0)
1199
	end
1200
inf =inf+1
1201
wait()
1202
end