· 4 years ago · Mar 28, 2021, 12:28 AM
1--[[ Options ]]--
2_G.CharacterBug = false --Set to true if your uppertorso floats when you use the script with R15.
3_G.GodMode = true --Set to true if you want godmode.
4_G.R6 = true --Set to true if you wanna enable R15 to R6 when your R15.
5--[[Reanimate]]--
6loadstring(game:HttpGet("https://gist.githubusercontent.com/M6HqVBcddw2qaN4s/fc29cbf0eda6f8b129778b441be3128f/raw/6StQ2n56PnEHMhQ9"))()
7
8function LoadLibrary(a)
9local t = {}
10
11------------------------------------------------------------------------------------------------------------------------
12------------------------------------------------------------------------------------------------------------------------
13------------------------------------------------------------------------------------------------------------------------
14------------------------------------------------JSON Functions Begin----------------------------------------------------
15------------------------------------------------------------------------------------------------------------------------
16------------------------------------------------------------------------------------------------------------------------
17------------------------------------------------------------------------------------------------------------------------
18
19--JSON Encoder and Parser for Lua 5.1
20
21--Permission is hereby granted, free of charge, to any person
22--obtaining a copy of this software to deal in the Software without
23--restriction, including without limitation the rights to use,
24--copy, modify, merge, publish, distribute, sublicense, and/or
25--sell copies of the Software, and to permit persons to whom the
26--Software is furnished to do so, subject to the following conditions:
27
28--The above copyright notice and this permission notice shall be
29--included in all copies or substantial portions of the Software.
30--If you find this software useful please give www.chipmunkav.com a mention.
31
32--THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
33--EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
34--OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
35--IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
36--ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
37--CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
38--CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
39
40local string = string
41local math = math
42local table = table
43local error = error
44local tonumber = tonumber
45local tostring = tostring
46local type = type
47local setmetatable = setmetatable
48local pairs = pairs
49local ipairs = ipairs
50local assert = assert
51
52
53local StringBuilder = {
54buffer = {}
55}
56
57function StringBuilder:New()
58local o = {}
59setmetatable(o, self)
60self.__index = self
61o.buffer = {}
62return o
63end
64
65function StringBuilder:Append(s)
66self.buffer[#self.buffer+1] = s
67end
68
69function StringBuilder:ToString()
70return table.concat(self.buffer)
71end
72
73local JsonWriter = {
74backslashes = {
75['\b'] = "\\b",
76['\t'] = "\\t",
77['\n'] = "\\n",
78['\f'] = "\\f",
79['\r'] = "\\r",
80['"'] = "\\\"",
81['\\'] = "\\\\",
82['/'] = "\\/"
83}
84}
85
86function JsonWriter:New()
87local o = {}
88o.writer = StringBuilder:New()
89setmetatable(o, self)
90self.__index = self
91return o
92end
93
94function JsonWriter:Append(s)
95self.writer:Append(s)
96end
97
98function JsonWriter:ToString()
99return self.writer:ToString()
100end
101
102function JsonWriter:Write(o)
103local t = type(o)
104if t == "nil" then
105self:WriteNil()
106elseif t == "boolean" then
107self:WriteString(o)
108elseif t == "number" then
109self:WriteString(o)
110elseif t == "string" then
111self:ParseString(o)
112elseif t == "table" then
113self:WriteTable(o)
114elseif t == "function" then
115self:WriteFunction(o)
116elseif t == "thread" then
117self:WriteError(o)
118elseif t == "userdata" then
119self:WriteError(o)
120end
121end
122
123function JsonWriter:WriteNil()
124self:Append("null")
125end
126
127function JsonWriter:WriteString(o)
128self:Append(tostring(o))
129end
130
131function JsonWriter:ParseString(s)
132self:Append('"')
133self:Append(string.gsub(s, "[%z%c\\\"/]", function(n)
134local c = self.backslashes[n]
135if c then return c end
136return string.format("\\u%.4X", string.byte(n))
137end))
138self:Append('"')
139end
140
141function JsonWriter:IsArray(t)
142local count = 0
143local isindex = function(k)
144if type(k) == "number" and k > 0 then
145if math.floor(k) == k then
146return true
147end
148end
149return false
150end
151for k,v in pairs(t) do
152if not isindex(k) then
153return false, '{', '}'
154else
155count = math.max(count, k)
156end
157end
158return true, '[', ']', count
159end
160
161function JsonWriter:WriteTable(t)
162local ba, st, et, n = self:IsArray(t)
163self:Append(st)
164if ba then
165for i = 1, n do
166self:Write(t[i])
167if i < n then
168self:Append(',')
169end
170end
171else
172local first = true;
173for k, v in pairs(t) do
174if not first then
175self:Append(',')
176end
177first = false;
178self:ParseString(k)
179self:Append(':')
180self:Write(v)
181end
182end
183self:Append(et)
184end
185
186function JsonWriter:WriteError(o)
187error(string.format(
188"Encoding of %s unsupported",
189tostring(o)))
190end
191
192function JsonWriter:WriteFunction(o)
193if o == Null then
194self:WriteNil()
195else
196self:WriteError(o)
197end
198end
199
200local StringReader = {
201s = "",
202i = 0
203}
204
205function StringReader:New(s)
206local o = {}
207setmetatable(o, self)
208self.__index = self
209o.s = s or o.s
210return o
211end
212
213function StringReader:Peek()
214local i = self.i + 1
215if i <= #self.s then
216return string.sub(self.s, i, i)
217end
218return nil
219end
220
221function StringReader:Next()
222self.i = self.i+1
223if self.i <= #self.s then
224return string.sub(self.s, self.i, self.i)
225end
226return nil
227end
228
229function StringReader:All()
230return self.s
231end
232
233local JsonReader = {
234escapes = {
235['t'] = '\t',
236['n'] = '\n',
237['f'] = '\f',
238['r'] = '\r',
239['b'] = '\b',
240}
241}
242
243function JsonReader:New(s)
244local o = {}
245o.reader = StringReader:New(s)
246setmetatable(o, self)
247self.__index = self
248return o;
249end
250
251function JsonReader:Read()
252self:SkipWhiteSpace()
253local peek = self:Peek()
254if peek == nil then
255error(string.format(
256"Nil string: '%s'",
257self:All()))
258elseif peek == '{' then
259return self:ReadObject()
260elseif peek == '[' then
261return self:ReadArray()
262elseif peek == '"' then
263return self:ReadString()
264elseif string.find(peek, "[%+%-%d]") then
265return self:ReadNumber()
266elseif peek == 't' then
267return self:ReadTrue()
268elseif peek == 'f' then
269return self:ReadFalse()
270elseif peek == 'n' then
271return self:ReadNull()
272elseif peek == '/' then
273self:ReadComment()
274return self:Read()
275else
276return nil
277end
278end
279
280function JsonReader:ReadTrue()
281self:TestReservedWord{'t','r','u','e'}
282return true
283end
284
285function JsonReader:ReadFalse()
286self:TestReservedWord{'f','a','l','s','e'}
287return false
288end
289
290function JsonReader:ReadNull()
291self:TestReservedWord{'n','u','l','l'}
292return nil
293end
294
295function JsonReader:TestReservedWord(t)
296for i, v in ipairs(t) do
297if self:Next() ~= v then
298error(string.format(
299"Error reading '%s': %s",
300table.concat(t),
301self:All()))
302end
303end
304end
305
306function JsonReader:ReadNumber()
307local result = self:Next()
308local peek = self:Peek()
309while peek ~= nil and string.find(
310peek,
311"[%+%-%d%.eE]") do
312result = result .. self:Next()
313peek = self:Peek()
314end
315result = tonumber(result)
316if result == nil then
317error(string.format(
318"Invalid number: '%s'",
319result))
320else
321return result
322end
323end
324
325function JsonReader:ReadString()
326local result = ""
327assert(self:Next() == '"')
328while self:Peek() ~= '"' do
329local ch = self:Next()
330if ch == '\\' then
331ch = self:Next()
332if self.escapes[ch] then
333ch = self.escapes[ch]
334end
335end
336result = result .. ch
337end
338assert(self:Next() == '"')
339local fromunicode = function(m)
340return string.char(tonumber(m, 16))
341end
342return string.gsub(
343result,
344"u%x%x(%x%x)",
345fromunicode)
346end
347
348function JsonReader:ReadComment()
349assert(self:Next() == '/')
350local second = self:Next()
351if second == '/' then
352self:ReadSingleLineComment()
353elseif second == '*' then
354self:ReadBlockComment()
355else
356error(string.format(
357"Invalid comment: %s",
358self:All()))
359end
360end
361
362function JsonReader:ReadBlockComment()
363local done = false
364while not done do
365local ch = self:Next()
366if ch == '*' and self:Peek() == '/' then
367done = true
368end
369if not done and
370ch == '/' and
371self:Peek() == "*" then
372error(string.format(
373"Invalid comment: %s, '/*' illegal.",
374self:All()))
375end
376end
377self:Next()
378end
379
380function JsonReader:ReadSingleLineComment()
381local ch = self:Next()
382while ch ~= '\r' and ch ~= '\n' do
383ch = self:Next()
384end
385end
386
387function JsonReader:ReadArray()
388local result = {}
389assert(self:Next() == '[')
390local done = false
391if self:Peek() == ']' then
392done = true;
393end
394while not done do
395local item = self:Read()
396result[#result+1] = item
397self:SkipWhiteSpace()
398if self:Peek() == ']' then
399done = true
400end
401if not done then
402local ch = self:Next()
403if ch ~= ',' then
404error(string.format(
405"Invalid array: '%s' due to: '%s'",
406self:All(), ch))
407end
408end
409end
410assert(']' == self:Next())
411return result
412end
413
414function JsonReader:ReadObject()
415local result = {}
416assert(self:Next() == '{')
417local done = false
418if self:Peek() == '}' then
419done = true
420end
421while not done do
422local key = self:Read()
423if type(key) ~= "string" then
424error(string.format(
425"Invalid non-string object key: %s",
426key))
427end
428self:SkipWhiteSpace()
429local ch = self:Next()
430if ch ~= ':' then
431error(string.format(
432"Invalid object: '%s' due to: '%s'",
433self:All(),
434ch))
435end
436self:SkipWhiteSpace()
437local val = self:Read()
438result[key] = val
439self:SkipWhiteSpace()
440if self:Peek() == '}' then
441done = true
442end
443if not done then
444ch = self:Next()
445if ch ~= ',' then
446error(string.format(
447"Invalid array: '%s' near: '%s'",
448self:All(),
449ch))
450end
451end
452end
453assert(self:Next() == "}")
454return result
455end
456
457function JsonReader:SkipWhiteSpace()
458local p = self:Peek()
459while p ~= nil and string.find(p, "[%s/]") do
460if p == '/' then
461self:ReadComment()
462else
463self:Next()
464end
465p = self:Peek()
466end
467end
468
469function JsonReader:Peek()
470return self.reader:Peek()
471end
472
473function JsonReader:Next()
474return self.reader:Next()
475end
476
477function JsonReader:All()
478return self.reader:All()
479end
480
481function Encode(o)
482local writer = JsonWriter:New()
483writer:Write(o)
484return writer:ToString()
485end
486
487function Decode(s)
488local reader = JsonReader:New(s)
489return reader:Read()
490end
491
492function Null()
493return Null
494end
495-------------------- End JSON Parser ------------------------
496
497t.DecodeJSON = function(jsonString)
498pcall(function() warn("RbxUtility.DecodeJSON is deprecated, please use Game:GetService('HttpService'):JSONDecode() instead.") end)
499
500if type(jsonString) == "string" then
501return Decode(jsonString)
502end
503print("RbxUtil.DecodeJSON expects string argument!")
504return nil
505end
506
507t.EncodeJSON = function(jsonTable)
508pcall(function() warn("RbxUtility.EncodeJSON is deprecated, please use Game:GetService('HttpService'):JSONEncode() instead.") end)
509return Encode(jsonTable)
510end
511
512
513
514
515
516
517
518
519------------------------------------------------------------------------------------------------------------------------
520------------------------------------------------------------------------------------------------------------------------
521------------------------------------------------------------------------------------------------------------------------
522--------------------------------------------Terrain Utilities Begin-----------------------------------------------------
523------------------------------------------------------------------------------------------------------------------------
524------------------------------------------------------------------------------------------------------------------------
525------------------------------------------------------------------------------------------------------------------------
526--makes a wedge at location x, y, z
527--sets cell x, y, z to default material if parameter is provided, if not sets cell x, y, z to be whatever material it previously w
528--returns true if made a wedge, false if the cell remains a block
529t.MakeWedge = function(x, y, z, defaultmaterial)
530return game:GetService("Terrain"):AutoWedgeCell(x,y,z)
531end
532
533t.SelectTerrainRegion = function(regionToSelect, color, selectEmptyCells, selectionParent)
534local terrain = game:GetService("Workspace"):FindFirstChild("Terrain")
535if not terrain then return end
536
537assert(regionToSelect)
538assert(color)
539
540if not type(regionToSelect) == "Region3" then
541error("regionToSelect (first arg), should be of type Region3, but is type",type(regionToSelect))
542end
543if not type(color) == "BrickColor" then
544error("color (second arg), should be of type BrickColor, but is type",type(color))
545end
546
547-- frequently used terrain calls (speeds up call, no lookup necessary)
548local GetCell = terrain.GetCell
549local WorldToCellPreferSolid = terrain.WorldToCellPreferSolid
550local CellCenterToWorld = terrain.CellCenterToWorld
551local emptyMaterial = Enum.CellMaterial.Empty
552
553-- container for all adornments, passed back to user
554local selectionContainer = Instance.new("Model")
555selectionContainer.Name = "SelectionContainer"
556selectionContainer.Archivable = false
557if selectionParent then
558selectionContainer.Parent = selectionParent
559else
560selectionContainer.Parent = game:GetService("Workspace")
561end
562
563local updateSelection = nil -- function we return to allow user to update selection
564local currentKeepAliveTag = nil -- a tag that determines whether adorns should be destroyed
565local aliveCounter = 0 -- helper for currentKeepAliveTag
566local lastRegion = nil -- used to stop updates that do nothing
567local adornments = {} -- contains all adornments
568local reusableAdorns = {}
569
570local selectionPart = Instance.new("Part")
571selectionPart.Name = "SelectionPart"
572selectionPart.Transparency = 1
573selectionPart.Anchored = true
574selectionPart.Locked = true
575selectionPart.CanCollide = false
576selectionPart.Size = Vector3.new(4.2,4.2,4.2)
577
578local selectionBox = Instance.new("SelectionBox")
579
580-- srs translation from region3 to region3int16
581local function Region3ToRegion3int16(region3)
582local theLowVec = region3.CFrame.p - (region3.Size/2) + Vector3.new(2,2,2)
583local lowCell = WorldToCellPreferSolid(terrain,theLowVec)
584
585local theHighVec = region3.CFrame.p + (region3.Size/2) - Vector3.new(2,2,2)
586local highCell = WorldToCellPreferSolid(terrain, theHighVec)
587
588local highIntVec = Vector3int16.new(highCell.x,highCell.y,highCell.z)
589local lowIntVec = Vector3int16.new(lowCell.x,lowCell.y,lowCell.z)
590
591return Region3int16.new(lowIntVec,highIntVec)
592end
593
594-- helper function that creates the basis for a selection box
595function createAdornment(theColor)
596local selectionPartClone = nil
597local selectionBoxClone = nil
598
599if #reusableAdorns > 0 then
600selectionPartClone = reusableAdorns[1]["part"]
601selectionBoxClone = reusableAdorns[1]["box"]
602table.remove(reusableAdorns,1)
603
604selectionBoxClone.Visible = true
605else
606selectionPartClone = selectionPart:Clone()
607selectionPartClone.Archivable = false
608
609selectionBoxClone = selectionBox:Clone()
610selectionBoxClone.Archivable = false
611
612selectionBoxClone.Adornee = selectionPartClone
613selectionBoxClone.Parent = selectionContainer
614
615selectionBoxClone.Adornee = selectionPartClone
616
617selectionBoxClone.Parent = selectionContainer
618end
619
620if theColor then
621selectionBoxClone.Color = theColor
622end
623
624return selectionPartClone, selectionBoxClone
625end
626
627-- iterates through all current adornments and deletes any that don't have latest tag
628function cleanUpAdornments()
629for cellPos, adornTable in pairs(adornments) do
630
631if adornTable.KeepAlive ~= currentKeepAliveTag then -- old news, we should get rid of this
632adornTable.SelectionBox.Visible = false
633table.insert(reusableAdorns,{part = adornTable.SelectionPart, box = adornTable.SelectionBox})
634adornments[cellPos] = nil
635end
636end
637end
638
639-- helper function to update tag
640function incrementAliveCounter()
641aliveCounter = aliveCounter + 1
642if aliveCounter > 1000000 then
643aliveCounter = 0
644end
645return aliveCounter
646end
647
648-- finds full cells in region and adorns each cell with a box, with the argument color
649function adornFullCellsInRegion(region, color)
650local regionBegin = region.CFrame.p - (region.Size/2) + Vector3.new(2,2,2)
651local regionEnd = region.CFrame.p + (region.Size/2) - Vector3.new(2,2,2)
652
653local cellPosBegin = WorldToCellPreferSolid(terrain, regionBegin)
654local cellPosEnd = WorldToCellPreferSolid(terrain, regionEnd)
655
656currentKeepAliveTag = incrementAliveCounter()
657for y = cellPosBegin.y, cellPosEnd.y do
658for z = cellPosBegin.z, cellPosEnd.z do
659for x = cellPosBegin.x, cellPosEnd.x do
660local cellMaterial = GetCell(terrain, x, y, z)
661
662if cellMaterial ~= emptyMaterial then
663local cframePos = CellCenterToWorld(terrain, x, y, z)
664local cellPos = Vector3int16.new(x,y,z)
665
666local updated = false
667for cellPosAdorn, adornTable in pairs(adornments) do
668if cellPosAdorn == cellPos then
669adornTable.KeepAlive = currentKeepAliveTag
670if color then
671adornTable.SelectionBox.Color = color
672end
673updated = true
674break
675end
676end
677
678if not updated then
679local selectionPart, selectionBox = createAdornment(color)
680selectionPart.Size = Vector3.new(4,4,4)
681selectionPart.CFrame = CFrame.new(cframePos)
682local adornTable = {SelectionPart = selectionPart, SelectionBox = selectionBox, KeepAlive = currentKeepAliveTag}
683adornments[cellPos] = adornTable
684end
685end
686end
687end
688end
689cleanUpAdornments()
690end
691
692
693------------------------------------- setup code ------------------------------
694lastRegion = regionToSelect
695
696if selectEmptyCells then -- use one big selection to represent the area selected
697local selectionPart, selectionBox = createAdornment(color)
698
699selectionPart.Size = regionToSelect.Size
700selectionPart.CFrame = regionToSelect.CFrame
701
702adornments.SelectionPart = selectionPart
703adornments.SelectionBox = selectionBox
704
705updateSelection =
706function (newRegion, color)
707if newRegion and newRegion ~= lastRegion then
708lastRegion = newRegion
709selectionPart.Size = newRegion.Size
710selectionPart.CFrame = newRegion.CFrame
711end
712if color then
713selectionBox.Color = color
714end
715end
716else -- use individual cell adorns to represent the area selected
717adornFullCellsInRegion(regionToSelect, color)
718updateSelection =
719function (newRegion, color)
720if newRegion and newRegion ~= lastRegion then
721lastRegion = newRegion
722adornFullCellsInRegion(newRegion, color)
723end
724end
725
726end
727
728local destroyFunc = function()
729updateSelection = nil
730if selectionContainer then selectionContainer:Destroy() end
731adornments = nil
732end
733
734return updateSelection, destroyFunc
735end
736
737-----------------------------Terrain Utilities End-----------------------------
738
739
740
741
742
743
744
745------------------------------------------------------------------------------------------------------------------------
746------------------------------------------------------------------------------------------------------------------------
747------------------------------------------------------------------------------------------------------------------------
748------------------------------------------------Signal class begin------------------------------------------------------
749------------------------------------------------------------------------------------------------------------------------
750------------------------------------------------------------------------------------------------------------------------
751------------------------------------------------------------------------------------------------------------------------
752--[[
753A 'Signal' object identical to the internal RBXScriptSignal object in it's public API and semantics. This function
754can be used to create "custom events" for user-made code.
755API:
756Method :connect( function handler )
757Arguments: The function to connect to.
758Returns: A new connection object which can be used to disconnect the connection
759Description: Connects this signal to the function specified by |handler|. That is, when |fire( ... )| is called for
760the signal the |handler| will be called with the arguments given to |fire( ... )|. Note, the functions
761connected to a signal are called in NO PARTICULAR ORDER, so connecting one function after another does
762NOT mean that the first will be called before the second as a result of a call to |fire|.
763
764Method :disconnect()
765Arguments: None
766Returns: None
767Description: Disconnects all of the functions connected to this signal.
768
769Method :fire( ... )
770Arguments: Any arguments are accepted
771Returns: None
772Description: Calls all of the currently connected functions with the given arguments.
773
774Method :wait()
775Arguments: None
776Returns: The arguments given to fire
777Description: This call blocks until
778]]
779
780function t.CreateSignal()
781local this = {}
782
783local mBindableEvent = Instance.new('BindableEvent')
784local mAllCns = {} --all connection objects returned by mBindableEvent::connect
785
786--main functions
787function this:connect(func)
788if self ~= this then error("connect must be called with `:`, not `.`", 2) end
789if type(func) ~= 'function' then
790error("Argument #1 of connect must be a function, got a "..type(func), 2)
791end
792local cn = mBindableEvent.Event:Connect(func)
793mAllCns[cn] = true
794local pubCn = {}
795function pubCn:disconnect()
796cn:Disconnect()
797mAllCns[cn] = nil
798end
799pubCn.Disconnect = pubCn.disconnect
800
801return pubCn
802end
803
804function this:disconnect()
805if self ~= this then error("disconnect must be called with `:`, not `.`", 2) end
806for cn, _ in pairs(mAllCns) do
807cn:Disconnect()
808mAllCns[cn] = nil
809end
810end
811
812function this:wait()
813if self ~= this then error("wait must be called with `:`, not `.`", 2) end
814return mBindableEvent.Event:Wait()
815end
816
817function this:fire(...)
818if self ~= this then error("fire must be called with `:`, not `.`", 2) end
819mBindableEvent:Fire(...)
820end
821
822this.Connect = this.connect
823this.Disconnect = this.disconnect
824this.Wait = this.wait
825this.Fire = this.fire
826
827return this
828end
829
830------------------------------------------------- Sigal class End ------------------------------------------------------
831
832
833
834
835------------------------------------------------------------------------------------------------------------------------
836------------------------------------------------------------------------------------------------------------------------
837------------------------------------------------------------------------------------------------------------------------
838-----------------------------------------------Create Function Begins---------------------------------------------------
839------------------------------------------------------------------------------------------------------------------------
840------------------------------------------------------------------------------------------------------------------------
841------------------------------------------------------------------------------------------------------------------------
842--[[
843A "Create" function for easy creation of Roblox instances. The function accepts a string which is the classname of
844the object to be created. The function then returns another function which either accepts accepts no arguments, in
845which case it simply creates an object of the given type, or a table argument that may contain several types of data,
846in which case it mutates the object in varying ways depending on the nature of the aggregate data. These are the
847type of data and what operation each will perform:
8481) A string key mapping to some value:
849Key-Value pairs in this form will be treated as properties of the object, and will be assigned in NO PARTICULAR
850ORDER. If the order in which properties is assigned matter, then they must be assigned somewhere else than the
851|Create| call's body.
852
8532) An integral key mapping to another Instance:
854Normal numeric keys mapping to Instances will be treated as children if the object being created, and will be
855parented to it. This allows nice recursive calls to Create to create a whole hierarchy of objects without a
856need for temporary variables to store references to those objects.
857
8583) A key which is a value returned from Create.Event( eventname ), and a value which is a function function
859The Create.E( string ) function provides a limited way to connect to signals inside of a Create hierarchy
860for those who really want such a functionality. The name of the event whose name is passed to
861Create.E( string )
862
8634) A key which is the Create function itself, and a value which is a function
864The function will be run with the argument of the object itself after all other initialization of the object is
865done by create. This provides a way to do arbitrary things involving the object from withing the create
866hierarchy.
867Note: This function is called SYNCHRONOUSLY, that means that you should only so initialization in
868it, not stuff which requires waiting, as the Create call will block until it returns. While waiting in the
869constructor callback function is possible, it is probably not a good design choice.
870Note: Since the constructor function is called after all other initialization, a Create block cannot have two
871constructor functions, as it would not be possible to call both of them last, also, this would be unnecessary.
872
873
874Some example usages:
875
876A simple example which uses the Create function to create a model object and assign two of it's properties.
877local model = Create'Model'{
878Name = 'A New model',
879Parent = game.Workspace,
880}
881
882
883An example where a larger hierarchy of object is made. After the call the hierarchy will look like this:
884Model_Container
885|-ObjectValue
886| |
887| `-BoolValueChild
888`-IntValue
889
890local model = Create'Model'{
891Name = 'Model_Container',
892Create'ObjectValue'{
893Create'BoolValue'{
894Name = 'BoolValueChild',
895},
896},
897Create'IntValue'{},
898}
899
900
901An example using the event syntax:
902
903local part = Create'Part'{
904[Create.E'Touched'] = function(part)
905print("I was touched by "..part.Name)
906end,
907}
908
909
910An example using the general constructor syntax:
911
912local model = Create'Part'{
913[Create] = function(this)
914print("Constructor running!")
915this.Name = GetGlobalFoosAndBars(this)
916end,
917}
918
919
920Note: It is also perfectly legal to save a reference to the function returned by a call Create, this will not cause
921any unexpected behavior. EG:
922local partCreatingFunction = Create'Part'
923local part = partCreatingFunction()
924]]
925
926--the Create function need to be created as a functor, not a function, in order to support the Create.E syntax, so it
927--will be created in several steps rather than as a single function declaration.
928local function Create_PrivImpl(objectType)
929if type(objectType) ~= 'string' then
930error("Argument of Create must be a string", 2)
931end
932--return the proxy function that gives us the nice Create'string'{data} syntax
933--The first function call is a function call using Lua's single-string-argument syntax
934--The second function call is using Lua's single-table-argument syntax
935--Both can be chained together for the nice effect.
936return function(dat)
937--default to nothing, to handle the no argument given case
938dat = dat or {}
939
940--make the object to mutate
941local obj = Instance.new(objectType)
942local parent = nil
943
944--stored constructor function to be called after other initialization
945local ctor = nil
946
947for k, v in pairs(dat) do
948--add property
949if type(k) == 'string' then
950if k == 'Parent' then
951-- Parent should always be set last, setting the Parent of a new object
952-- immediately makes performance worse for all subsequent property updates.
953parent = v
954else
955obj[k] = v
956end
957
958
959--add child
960elseif type(k) == 'number' then
961if type(v) ~= 'userdata' then
962error("Bad entry in Create body: Numeric keys must be paired with children, got a: "..type(v), 2)
963end
964v.Parent = obj
965
966
967--event connect
968elseif type(k) == 'table' and k.__eventname then
969if type(v) ~= 'function' then
970error("Bad entry in Create body: Key `[Create.E\'"..k.__eventname.."\']` must have a function value\
971got: "..tostring(v), 2)
972end
973obj[k.__eventname]:connect(v)
974
975
976--define constructor function
977elseif k == t.Create then
978if type(v) ~= 'function' then
979error("Bad entry in Create body: Key `[Create]` should be paired with a constructor function, \
980got: "..tostring(v), 2)
981elseif ctor then
982--ctor already exists, only one allowed
983error("Bad entry in Create body: Only one constructor function is allowed", 2)
984end
985ctor = v
986
987
988else
989error("Bad entry ("..tostring(k).." => "..tostring(v)..") in Create body", 2)
990end
991end
992
993--apply constructor function if it exists
994if ctor then
995ctor(obj)
996end
997
998if parent then
999obj.Parent = parent
1000end
1001
1002--return the completed object
1003return obj
1004end
1005end
1006
1007--now, create the functor:
1008t.Create = setmetatable({}, {__call = function(tb, ...) return Create_PrivImpl(...) end})
1009
1010--and create the "Event.E" syntax stub. Really it's just a stub to construct a table which our Create
1011--function can recognize as special.
1012t.Create.E = function(eventName)
1013return {__eventname = eventName}
1014end
1015
1016-------------------------------------------------Create function End----------------------------------------------------
1017
1018
1019
1020
1021------------------------------------------------------------------------------------------------------------------------
1022------------------------------------------------------------------------------------------------------------------------
1023------------------------------------------------------------------------------------------------------------------------
1024------------------------------------------------Documentation Begin-----------------------------------------------------
1025------------------------------------------------------------------------------------------------------------------------
1026------------------------------------------------------------------------------------------------------------------------
1027------------------------------------------------------------------------------------------------------------------------
1028
1029t.Help =
1030function(funcNameOrFunc)
1031--input argument can be a string or a function. Should return a description (of arguments and expected side effects)
1032if funcNameOrFunc == "DecodeJSON" or funcNameOrFunc == t.DecodeJSON then
1033return "Function DecodeJSON. " ..
1034"Arguments: (string). " ..
1035"Side effect: returns a table with all parsed JSON values"
1036end
1037if funcNameOrFunc == "EncodeJSON" or funcNameOrFunc == t.EncodeJSON then
1038return "Function EncodeJSON. " ..
1039"Arguments: (table). " ..
1040"Side effect: returns a string composed of argument table in JSON data format"
1041end
1042if funcNameOrFunc == "MakeWedge" or funcNameOrFunc == t.MakeWedge then
1043return "Function MakeWedge. " ..
1044"Arguments: (x, y, z, [default material]). " ..
1045"Description: Makes a wedge at location x, y, z. Sets cell x, y, z to default material if "..
1046"parameter is provided, if not sets cell x, y, z to be whatever material it previously was. "..
1047"Returns true if made a wedge, false if the cell remains a block "
1048end
1049if funcNameOrFunc == "SelectTerrainRegion" or funcNameOrFunc == t.SelectTerrainRegion then
1050return "Function SelectTerrainRegion. " ..
1051"Arguments: (regionToSelect, color, selectEmptyCells, selectionParent). " ..
1052"Description: Selects all terrain via a series of selection boxes within the regionToSelect " ..
1053"(this should be a region3 value). The selection box color is detemined by the color argument " ..
1054"(should be a brickcolor value). SelectionParent is the parent that the selection model gets placed to (optional)." ..
1055"SelectEmptyCells is bool, when true will select all cells in the " ..
1056"region, otherwise we only select non-empty cells. Returns a function that can update the selection," ..
1057"arguments to said function are a new region3 to select, and the adornment color (color arg is optional). " ..
1058"Also returns a second function that takes no arguments and destroys the selection"
1059end
1060if funcNameOrFunc == "CreateSignal" or funcNameOrFunc == t.CreateSignal then
1061return "Function CreateSignal. "..
1062"Arguments: None. "..
1063"Returns: The newly created Signal object. This object is identical to the RBXScriptSignal class "..
1064"used for events in Objects, but is a Lua-side object so it can be used to create custom events in"..
1065"Lua code. "..
1066"Methods of the Signal object: :connect, :wait, :fire, :disconnect. "..
1067"For more info you can pass the method name to the Help function, or view the wiki page "..
1068"for this library. EG: Help('Signal:connect')."
1069end
1070if funcNameOrFunc == "Signal:connect" then
1071return "Method Signal:connect. "..
1072"Arguments: (function handler). "..
1073"Return: A connection object which can be used to disconnect the connection to this handler. "..
1074"Description: Connectes a handler function to this Signal, so that when |fire| is called the "..
1075"handler function will be called with the arguments passed to |fire|."
1076end
1077if funcNameOrFunc == "Signal:wait" then
1078return "Method Signal:wait. "..
1079"Arguments: None. "..
1080"Returns: The arguments passed to the next call to |fire|. "..
1081"Description: This call does not return until the next call to |fire| is made, at which point it "..
1082"will return the values which were passed as arguments to that |fire| call."
1083end
1084if funcNameOrFunc == "Signal:fire" then
1085return "Method Signal:fire. "..
1086"Arguments: Any number of arguments of any type. "..
1087"Returns: None. "..
1088"Description: This call will invoke any connected handler functions, and notify any waiting code "..
1089"attached to this Signal to continue, with the arguments passed to this function. Note: The calls "..
1090"to handlers are made asynchronously, so this call will return immediately regardless of how long "..
1091"it takes the connected handler functions to complete."
1092end
1093if funcNameOrFunc == "Signal:disconnect" then
1094return "Method Signal:disconnect. "..
1095"Arguments: None. "..
1096"Returns: None. "..
1097"Description: This call disconnects all handlers attacched to this function, note however, it "..
1098"does NOT make waiting code continue, as is the behavior of normal Roblox events. This method "..
1099"can also be called on the connection object which is returned from Signal:connect to only "..
1100"disconnect a single handler, as opposed to this method, which will disconnect all handlers."
1101end
1102if funcNameOrFunc == "Create" then
1103return "Function Create. "..
1104"Arguments: A table containing information about how to construct a collection of objects. "..
1105"Returns: The constructed objects. "..
1106"Descrition: Create is a very powerfull function, whose description is too long to fit here, and "..
1107"is best described via example, please see the wiki page for a description of how to use it."
1108end
1109end
1110
1111--------------------------------------------Documentation Ends----------------------------------------------------------
1112
1113return t
1114end
1115
1116--[[ Name : Gale Fighter ]]--
1117-------------------------------------------------------
1118--A Collaboration Between makhail07 and KillerDarkness0105
1119
1120--Base Animaion by makhail07, attacks by KillerDarkness0105
1121-------------------------------------------------------
1122
1123
1124local FavIDs = {
1125340106355, --Nefl Crystals
1126927529620, --Dimension
1127876981900, --Fantasy
1128398987889, --Ordinary Days
11291117396305, --Oh wait, it's you.
1130885996042, --Action Winter Journey
1131919231299, --Sprawling Idiot Effigy
1132743466274, --Good Day Sunshine
1133727411183, --Knife Fight
11341402748531, --The Earth Is Counting On You!
1135595230126 --Robot Language
1136}
1137
1138
1139
1140--The reality of my life isn't real but a Universe -makhail07
1141wait(0.2)
1142local plr = game:GetService("Players").LocalPlayer
1143print('Local User is '..plr.Name)
1144print('Gale Fighter Loaded')
1145print('The Fighter that is as fast as wind, a true Fighter')
1146local char = plr.Character.NullwareReanim
1147local hum = char.Humanoid
1148local hed = char.Head
1149local root = char.HumanoidRootPart
1150local rootj = root.RootJoint
1151local tors = char.Torso
1152local ra = char["Right Arm"]
1153local la = char["Left Arm"]
1154local rl = char["Right Leg"]
1155local ll = char["Left Leg"]
1156local neck = tors["Neck"]
1157local mouse = plr:GetMouse()
1158local RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
1159local RHCF = CFrame.fromEulerAnglesXYZ(0, 1.6, 0)
1160local LHCF = CFrame.fromEulerAnglesXYZ(0, -1.6, 0)
1161local maincolor = BrickColor.new("Institutional white")
1162hum.MaxHealth = 200
1163hum.Health = 200
1164
1165local hrp = game:GetService("Players").LocalPlayer.Character.HumanoidRootPart
1166
1167hrp.Name = "HumanoidRootPart"
1168hrp.Transparency = 0.5
1169hrp.Anchored = false
1170if hrp:FindFirstChildOfClass("AlignPosition") then
1171hrp:FindFirstChildOfClass("AlignPosition"):Destroy()
1172end
1173if hrp:FindFirstChildOfClass("AlignOrientation") then
1174hrp:FindFirstChildOfClass("AlignOrientation"):Destroy()
1175end
1176local bp = Instance.new("BodyPosition", hrp)
1177bp.Position = hrp.Position
1178bp.D = 9999999
1179bp.P = 999999999999999
1180bp.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
1181local flinger = Instance.new("BodyAngularVelocity",hrp)
1182flinger.MaxTorque = Vector3.new(math.huge,math.huge,math.huge)
1183flinger.P = 1000000000000000000000000000
1184flinger.AngularVelocity = Vector3.new(10000,10000,10000)
1185
1186spawn(function()
1187while game:GetService("RunService").Heartbeat:Wait() do
1188bp.Position = game:GetService("Players").LocalPlayer.Character["NullwareReanim"].Torso.Position
1189end
1190end)
1191
1192-------------------------------------------------------
1193--Start Good Stuff--
1194-------------------------------------------------------
1195cam = game.Workspace.CurrentCamera
1196CF = CFrame.new
1197angles = CFrame.Angles
1198attack = false
1199Euler = CFrame.fromEulerAnglesXYZ
1200Rad = math.rad
1201IT = Instance.new
1202BrickC = BrickColor.new
1203Cos = math.cos
1204Acos = math.acos
1205Sin = math.sin
1206Asin = math.asin
1207Abs = math.abs
1208Mrandom = math.random
1209Floor = math.floor
1210-------------------------------------------------------
1211--End Good Stuff--
1212-------------------------------------------------------
1213necko = CF(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
1214RSH, LSH = nil, nil
1215RW = Instance.new("Weld")
1216LW = Instance.new("Weld")
1217RH = tors["Right Hip"]
1218LH = tors["Left Hip"]
1219RSH = tors["Right Shoulder"]
1220LSH = tors["Left Shoulder"]
1221RSH.Parent = nil
1222LSH.Parent = nil
1223RW.Name = "RW"
1224RW.Part0 = tors
1225RW.C0 = CF(1.5, 0.5, 0)
1226RW.C1 = CF(0, 0.5, 0)
1227RW.Part1 = ra
1228RW.Parent = tors
1229LW.Name = "LW"
1230LW.Part0 = tors
1231LW.C0 = CF(-1.5, 0.5, 0)
1232LW.C1 = CF(0, 0.5, 0)
1233LW.Part1 = la
1234LW.Parent = tors
1235vt = Vector3.new
1236Effects = {}
1237-------------------------------------------------------
1238--Start HeartBeat--
1239-------------------------------------------------------
1240ArtificialHB = Instance.new("BindableEvent", script)
1241ArtificialHB.Name = "Heartbeat"
1242script:WaitForChild("Heartbeat")
1243
1244frame = 1 / 90
1245tf = 0
1246allowframeloss = false
1247tossremainder = false
1248
1249
1250lastframe = tick()
1251script.Heartbeat:Fire()
1252
1253
1254game:GetService("RunService").Heartbeat:connect(function(s, p)
1255tf = tf + s
1256if tf >= frame then
1257if allowframeloss then
1258script.Heartbeat:Fire()
1259lastframe = tick()
1260else
1261for i = 1, math.floor(tf / frame) do
1262script.Heartbeat:Fire()
1263end
1264lastframe = tick()
1265end
1266if tossremainder then
1267tf = 0
1268else
1269tf = tf - frame * math.floor(tf / frame)
1270end
1271end
1272end)
1273-------------------------------------------------------
1274--End HeartBeat--
1275-------------------------------------------------------
1276
1277
1278
1279-------------------------------------------------------
1280--Start Combo Function--
1281-------------------------------------------------------
1282local comboing = false
1283local combohits = 0
1284local combotime = 0
1285local maxtime = 65
1286
1287
1288
1289function sandbox(var,func)
1290local env = getfenv(func)
1291local newenv = setmetatable({},{
1292__index = function(self,k)
1293if k=="script" then
1294return var
1295else
1296return env[k]
1297end
1298end,
1299})
1300setfenv(func,newenv)
1301return func
1302end
1303cors = {}
1304mas = Instance.new("Model",game:GetService("Lighting"))
1305comboframe = Instance.new("ScreenGui")
1306Frame1 = Instance.new("Frame")
1307Frame2 = Instance.new("Frame")
1308TextLabel3 = Instance.new("TextLabel")
1309comboframe.Name = "combinserter"
1310comboframe.Parent = mas
1311Frame1.Name = "combtimegui"
1312Frame1.Parent = comboframe
1313Frame1.Size = UDim2.new(0, 300, 0, 14)
1314Frame1.Position = UDim2.new(0, 900, 0.629999971, 0)
1315Frame1.BackgroundColor3 = Color3.new(0, 0, 0)
1316Frame1.BorderColor3 = Color3.new(0.0313726, 0.0470588, 0.0627451)
1317Frame1.BorderSizePixel = 5
1318Frame2.Name = "combtimeoverlay"
1319Frame2.Parent = Frame1
1320Frame2.Size = UDim2.new(0, 0, 0, 14)
1321Frame2.BackgroundColor3 = Color3.new(0, 1, 0)
1322Frame2.ZIndex = 2
1323TextLabel3.Parent = Frame2
1324TextLabel3.Transparency = 0
1325TextLabel3.Size = UDim2.new(0, 300, 0, 50)
1326TextLabel3.Text ="Hits: "..combohits
1327TextLabel3.Position = UDim2.new(0, 0, -5.5999999, 0)
1328TextLabel3.BackgroundColor3 = Color3.new(1, 1, 1)
1329TextLabel3.BackgroundTransparency = 1
1330TextLabel3.Font = Enum.Font.Bodoni
1331TextLabel3.FontSize = Enum.FontSize.Size60
1332TextLabel3.TextColor3 = Color3.new(0, 1, 0)
1333TextLabel3.TextStrokeTransparency = 0
1334gui = game:GetService("Players").LocalPlayer.PlayerGui
1335for i,v in pairs(mas:GetChildren()) do
1336v.Parent = game:GetService("Players").LocalPlayer.PlayerGui
1337pcall(function() v:MakeJoints() end)
1338end
1339mas:Destroy()
1340for i,v in pairs(cors) do
1341spawn(function()
1342pcall(v)
1343end)
1344end
1345
1346
1347
1348
1349
1350coroutine.resume(coroutine.create(function()
1351while true do
1352wait()
1353
1354
1355if combotime>65 then
1356combotime = 65
1357end
1358
1359
1360
1361
1362
1363if combotime>.1 and comboing == true then
1364TextLabel3.Transparency = 0
1365TextLabel3.TextStrokeTransparency = 0
1366TextLabel3.BackgroundTransparency = 1
1367Frame1.Transparency = 0
1368Frame2.Transparency = 0
1369TextLabel3.Text ="Hits: "..combohits
1370combotime = combotime - .34
1371Frame2.Size = Frame2.Size:lerp(UDim2.new(0, combotime/maxtime*300, 0, 14),0.42)
1372end
1373
1374
1375
1376
1377if combotime<.1 then
1378TextLabel3.BackgroundTransparency = 1
1379TextLabel3.Transparency = 1
1380TextLabel3.TextStrokeTransparency = 1
1381
1382Frame2.Size = UDim2.new(0, 0, 0, 14)
1383combotime = 0
1384comboing = false
1385Frame1.Transparency = 1
1386Frame2.Transparency = 1
1387combohits = 0
1388
1389end
1390end
1391end))
1392
1393
1394
1395-------------------------------------------------------
1396--End Combo Function--
1397-------------------------------------------------------
1398
1399-------------------------------------------------------
1400--Start Important Functions--
1401-------------------------------------------------------
1402function swait(num)
1403if num == 0 or num == nil then
1404game:service("RunService").Stepped:wait(0)
1405else
1406for i = 0, num do
1407game:service("RunService").Stepped:wait(0)
1408end
1409end
1410end
1411function thread(f)
1412coroutine.resume(coroutine.create(f))
1413end
1414function clerp(a, b, t)
1415local qa = {
1416QuaternionFromCFrame(a)
1417}
1418local qb = {
1419QuaternionFromCFrame(b)
1420}
1421local ax, ay, az = a.x, a.y, a.z
1422local bx, by, bz = b.x, b.y, b.z
1423local _t = 1 - t
1424return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
1425end
1426function QuaternionFromCFrame(cf)
1427local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
1428local trace = m00 + m11 + m22
1429if trace > 0 then
1430local s = math.sqrt(1 + trace)
1431local recip = 0.5 / s
1432return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
1433else
1434local i = 0
1435if m00 < m11 then
1436i = 1
1437end
1438if m22 > (i == 0 and m00 or m11) then
1439i = 2
1440end
1441if i == 0 then
1442local s = math.sqrt(m00 - m11 - m22 + 1)
1443local recip = 0.5 / s
1444return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
1445elseif i == 1 then
1446local s = math.sqrt(m11 - m22 - m00 + 1)
1447local recip = 0.5 / s
1448return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
1449elseif i == 2 then
1450local s = math.sqrt(m22 - m00 - m11 + 1)
1451local recip = 0.5 / s
1452return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
1453end
1454end
1455end
1456function QuaternionToCFrame(px, py, pz, x, y, z, w)
1457local xs, ys, zs = x + x, y + y, z + z
1458local wx, wy, wz = w * xs, w * ys, w * zs
1459local xx = x * xs
1460local xy = x * ys
1461local xz = x * zs
1462local yy = y * ys
1463local yz = y * zs
1464local zz = z * zs
1465return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
1466end
1467function QuaternionSlerp(a, b, t)
1468local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
1469local startInterp, finishInterp
1470if cosTheta >= 1.0E-4 then
1471if 1 - cosTheta > 1.0E-4 then
1472local theta = math.acos(cosTheta)
1473local invSinTheta = 1 / Sin(theta)
1474startInterp = Sin((1 - t) * theta) * invSinTheta
1475finishInterp = Sin(t * theta) * invSinTheta
1476else
1477startInterp = 1 - t
1478finishInterp = t
1479end
1480elseif 1 + cosTheta > 1.0E-4 then
1481local theta = math.acos(-cosTheta)
1482local invSinTheta = 1 / Sin(theta)
1483startInterp = Sin((t - 1) * theta) * invSinTheta
1484finishInterp = Sin(t * theta) * invSinTheta
1485else
1486startInterp = t - 1
1487finishInterp = t
1488end
1489return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
1490end
1491function rayCast(Position, Direction, Range, Ignore)
1492return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
1493end
1494local RbxUtility = LoadLibrary("RbxUtility")
1495local Create = RbxUtility.Create
1496
1497-------------------------------------------------------
1498--Start Damage Function--
1499-------------------------------------------------------
1500
1501-------------------------------------------------------
1502--End Damage Function--
1503-------------------------------------------------------
1504
1505-------------------------------------------------------
1506--Start Damage Function Customization--
1507-------------------------------------------------------
1508function ShowDamage(Pos, Text, Time, Color)
1509local Rate = (1 / 30)
1510local Pos = (Pos or Vector3.new(0, 0, 0))
1511local Text = (Text or "")
1512local Time = (Time or 2)
1513local Color = (Color or Color3.new(1, 0, 1))
1514local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
1515EffectPart.Anchored = true
1516local BillboardGui = Create("BillboardGui"){
1517Size = UDim2.new(3, 0, 3, 0),
1518Adornee = EffectPart,
1519Parent = EffectPart,
1520}
1521local TextLabel = Create("TextLabel"){
1522BackgroundTransparency = 1,
1523Size = UDim2.new(1, 0, 1, 0),
1524Text = Text,
1525Font = "Bodoni",
1526TextColor3 = Color,
1527TextScaled = true,
1528TextStrokeColor3 = Color3.fromRGB(0,0,0),
1529Parent = BillboardGui,
1530}
1531game.Debris:AddItem(EffectPart, (Time))
1532EffectPart.Parent = game:GetService("Workspace")
1533delay(0, function()
1534local Frames = (Time / Rate)
1535for Frame = 1, Frames do
1536wait(Rate)
1537local Percent = (Frame / Frames)
1538EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
1539TextLabel.TextTransparency = Percent
1540end
1541if EffectPart and EffectPart.Parent then
1542EffectPart:Destroy()
1543end
1544end)
1545end
1546-------------------------------------------------------
1547--End Damage Function Customization--
1548-------------------------------------------------------
1549
1550CFuncs = {
1551Part = {
1552Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
1553local Part = Create("Part")({
1554Parent = Parent,
1555Reflectance = Reflectance,
1556Transparency = Transparency,
1557CanCollide = false,
1558Locked = true,
1559BrickColor = BrickColor.new(tostring(BColor)),
1560Name = Name,
1561Size = Size,
1562Material = Material
1563})
1564RemoveOutlines(Part)
1565return Part
1566end
1567},
1568Mesh = {
1569Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
1570local Msh = Create(Mesh)({
1571Parent = Part,
1572Offset = OffSet,
1573Scale = Scale
1574})
1575if Mesh == "SpecialMesh" then
1576Msh.MeshType = MeshType
1577Msh.MeshId = MeshId
1578end
1579return Msh
1580end
1581},
1582Mesh = {
1583Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
1584local Msh = Create(Mesh)({
1585Parent = Part,
1586Offset = OffSet,
1587Scale = Scale
1588})
1589if Mesh == "SpecialMesh" then
1590Msh.MeshType = MeshType
1591Msh.MeshId = MeshId
1592end
1593return Msh
1594end
1595},
1596Weld = {
1597Create = function(Parent, Part0, Part1, C0, C1)
1598local Weld = Create("Weld")({
1599Parent = Parent,
1600Part0 = Part0,
1601Part1 = Part1,
1602C0 = C0,
1603C1 = C1
1604})
1605return Weld
1606end
1607},
1608Sound = {
1609Create = function(id, par, vol, pit)
1610coroutine.resume(coroutine.create(function()
1611local S = Create("Sound")({
1612Volume = vol,
1613Pitch = pit or 1,
1614SoundId = id,
1615Parent = par or workspace
1616})
1617wait()
1618S:play()
1619game:GetService("Debris"):AddItem(S, 6)
1620end))
1621end
1622},
1623ParticleEmitter = {
1624Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
1625local fp = Create("ParticleEmitter")({
1626Parent = Parent,
1627Color = ColorSequence.new(Color1, Color2),
1628LightEmission = LightEmission,
1629Size = Size,
1630Texture = Texture,
1631Transparency = Transparency,
1632ZOffset = ZOffset,
1633Acceleration = Accel,
1634Drag = Drag,
1635LockedToPart = LockedToPart,
1636VelocityInheritance = VelocityInheritance,
1637EmissionDirection = EmissionDirection,
1638Enabled = Enabled,
1639Lifetime = LifeTime,
1640Rate = Rate,
1641Rotation = Rotation,
1642RotSpeed = RotSpeed,
1643Speed = Speed,
1644VelocitySpread = VelocitySpread
1645})
1646return fp
1647end
1648}
1649}
1650function RemoveOutlines(part)
1651part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
1652end
1653function CreatePart(FormFactor, Parent, Material, Reflectance, Transparency, BColor, Name, Size)
1654local Part = Create("Part")({
1655formFactor = FormFactor,
1656Parent = Parent,
1657Reflectance = Reflectance,
1658Transparency = Transparency,
1659CanCollide = false,
1660Locked = true,
1661BrickColor = BrickColor.new(tostring(BColor)),
1662Name = Name,
1663Size = Size,
1664Material = Material
1665})
1666RemoveOutlines(Part)
1667return Part
1668end
1669function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale)
1670local Msh = Create(Mesh)({
1671Parent = Part,
1672Offset = OffSet,
1673Scale = Scale
1674})
1675if Mesh == "SpecialMesh" then
1676Msh.MeshType = MeshType
1677Msh.MeshId = MeshId
1678end
1679return Msh
1680end
1681function CreateWeld(Parent, Part0, Part1, C0, C1)
1682local Weld = Create("Weld")({
1683Parent = Parent,
1684Part0 = Part0,
1685Part1 = Part1,
1686C0 = C0,
1687C1 = C1
1688})
1689return Weld
1690end
1691
1692
1693-------------------------------------------------------
1694--Start Effect Function--
1695-------------------------------------------------------
1696EffectModel = Instance.new("Model", char)
1697Effects = {
1698Block = {
1699Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
1700local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
1701prt.Anchored = true
1702prt.CFrame = cframe
1703local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1704game:GetService("Debris"):AddItem(prt, 10)
1705if Type == 1 or Type == nil then
1706table.insert(Effects, {
1707prt,
1708"Block1",
1709delay,
1710x3,
1711y3,
1712z3,
1713msh
1714})
1715elseif Type == 2 then
1716table.insert(Effects, {
1717prt,
1718"Block2",
1719delay,
1720x3,
1721y3,
1722z3,
1723msh
1724})
1725else
1726table.insert(Effects, {
1727prt,
1728"Block3",
1729delay,
1730x3,
1731y3,
1732z3,
1733msh
1734})
1735end
1736end
1737},
1738Sphere = {
1739Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
1740local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
1741prt.Anchored = true
1742prt.CFrame = cframe
1743local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1744game:GetService("Debris"):AddItem(prt, 10)
1745table.insert(Effects, {
1746prt,
1747"Cylinder",
1748delay,
1749x3,
1750y3,
1751z3,
1752msh
1753})
1754end
1755},
1756Cylinder = {
1757Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
1758local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
1759prt.Anchored = true
1760prt.CFrame = cframe
1761local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1762game:GetService("Debris"):AddItem(prt, 10)
1763table.insert(Effects, {
1764prt,
1765"Cylinder",
1766delay,
1767x3,
1768y3,
1769z3,
1770msh
1771})
1772end
1773},
1774Wave = {
1775Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
1776local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
1777prt.Anchored = true
1778prt.CFrame = cframe
1779local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1 / 60, y1 / 60, z1 / 60))
1780game:GetService("Debris"):AddItem(prt, 10)
1781table.insert(Effects, {
1782prt,
1783"Cylinder",
1784delay,
1785x3 / 60,
1786y3 / 60,
1787z3 / 60,
1788msh
1789})
1790end
1791},
1792Ring = {
1793Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
1794local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
1795prt.Anchored = true
1796prt.CFrame = cframe
1797local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://3270017", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1798game:GetService("Debris"):AddItem(prt, 10)
1799table.insert(Effects, {
1800prt,
1801"Cylinder",
1802delay,
1803x3,
1804y3,
1805z3,
1806msh
1807})
1808end
1809},
1810Break = {
1811Create = function(brickcolor, cframe, x1, y1, z1)
1812local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
1813prt.Anchored = true
1814prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1815local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1816local num = math.random(10, 50) / 1000
1817game:GetService("Debris"):AddItem(prt, 10)
1818table.insert(Effects, {
1819prt,
1820"Shatter",
1821num,
1822prt.CFrame,
1823math.random() - math.random(),
18240,
1825math.random(50, 100) / 100
1826})
1827end
1828},
1829Spiral = {
1830Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
1831local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
1832prt.Anchored = true
1833prt.CFrame = cframe
1834local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://1051557", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1835game:GetService("Debris"):AddItem(prt, 10)
1836table.insert(Effects, {
1837prt,
1838"Cylinder",
1839delay,
1840x3,
1841y3,
1842z3,
1843msh
1844})
1845end
1846},
1847Push = {
1848Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
1849local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
1850prt.Anchored = true
1851prt.CFrame = cframe
1852local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://437347603", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1853game:GetService("Debris"):AddItem(prt, 10)
1854table.insert(Effects, {
1855prt,
1856"Cylinder",
1857delay,
1858x3,
1859y3,
1860z3,
1861msh
1862})
1863end
1864}
1865}
1866function part(formfactor ,parent, reflectance, transparency, brickcolor, name, size)
1867local fp = IT("Part")
1868fp.formFactor = formfactor
1869fp.Parent = parent
1870fp.Reflectance = reflectance
1871fp.Transparency = transparency
1872fp.CanCollide = false
1873fp.Locked = true
1874fp.BrickColor = brickcolor
1875fp.Name = name
1876fp.Size = size
1877fp.Position = tors.Position
1878RemoveOutlines(fp)
1879fp.Material = "SmoothPlastic"
1880fp:BreakJoints()
1881return fp
1882end
1883
1884function mesh(Mesh,part,meshtype,meshid,offset,scale)
1885local mesh = IT(Mesh)
1886mesh.Parent = part
1887if Mesh == "SpecialMesh" then
1888mesh.MeshType = meshtype
1889if meshid ~= "nil" then
1890mesh.MeshId = "http://www.roblox.com/asset/?id="..meshid
1891end
1892end
1893mesh.Offset = offset
1894mesh.Scale = scale
1895return mesh
1896end
1897
1898function Magic(bonuspeed, type, pos, scale, value, color, MType)
1899local type = type
1900local rng = Instance.new("Part", char)
1901rng.Anchored = true
1902rng.BrickColor = color
1903rng.CanCollide = false
1904rng.FormFactor = 3
1905rng.Name = "Ring"
1906rng.Material = "Neon"
1907rng.Size = Vector3.new(1, 1, 1)
1908rng.Transparency = 0
1909rng.TopSurface = 0
1910rng.BottomSurface = 0
1911rng.CFrame = pos
1912local rngm = Instance.new("SpecialMesh", rng)
1913rngm.MeshType = MType
1914rngm.Scale = scale
1915local scaler2 = 1
1916if type == "Add" then
1917scaler2 = 1 * value
1918elseif type == "Divide" then
1919scaler2 = 1 / value
1920end
1921coroutine.resume(coroutine.create(function()
1922for i = 0, 10 / bonuspeed, 0.1 do
1923swait()
1924if type == "Add" then
1925scaler2 = scaler2 - 0.01 * value / bonuspeed
1926elseif type == "Divide" then
1927scaler2 = scaler2 - 0.01 / value * bonuspeed
1928end
1929rng.Transparency = rng.Transparency + 0.01 * bonuspeed
1930rngm.Scale = rngm.Scale + Vector3.new(scaler2 * bonuspeed, scaler2 * bonuspeed, scaler2 * bonuspeed)
1931end
1932rng:Destroy()
1933end))
1934end
1935
1936function Eviscerate(dude)
1937if dude.Name ~= char then
1938local bgf = IT("BodyGyro", dude.Head)
1939bgf.CFrame = bgf.CFrame * CFrame.fromEulerAnglesXYZ(Rad(-90), 0, 0)
1940local val = IT("BoolValue", dude)
1941val.Name = "IsHit"
1942local ds = coroutine.wrap(function()
1943dude:WaitForChild("Head"):BreakJoints()
1944wait(0.5)
1945target = nil
1946coroutine.resume(coroutine.create(function()
1947for i, v in pairs(dude:GetChildren()) do
1948if v:IsA("Accessory") then
1949v:Destroy()
1950end
1951if v:IsA("Humanoid") then
1952v:Destroy()
1953end
1954if v:IsA("CharacterMesh") then
1955v:Destroy()
1956end
1957if v:IsA("Model") then
1958v:Destroy()
1959end
1960if v:IsA("Part") or v:IsA("MeshPart") then
1961for x, o in pairs(v:GetChildren()) do
1962if o:IsA("Decal") then
1963o:Destroy()
1964end
1965end
1966coroutine.resume(coroutine.create(function()
1967v.Material = "Neon"
1968v.CanCollide = false
1969local PartEmmit1 = IT("ParticleEmitter", v)
1970PartEmmit1.LightEmission = 1
1971PartEmmit1.Texture = "rbxassetid://284205403"
1972PartEmmit1.Color = ColorSequence.new(maincolor.Color)
1973PartEmmit1.Rate = 150
1974PartEmmit1.Lifetime = NumberRange.new(1)
1975PartEmmit1.Size = NumberSequence.new({
1976NumberSequenceKeypoint.new(0, 0.75, 0),
1977NumberSequenceKeypoint.new(1, 0, 0)
1978})
1979PartEmmit1.Transparency = NumberSequence.new({
1980NumberSequenceKeypoint.new(0, 0, 0),
1981NumberSequenceKeypoint.new(1, 1, 0)
1982})
1983PartEmmit1.Speed = NumberRange.new(0, 0)
1984PartEmmit1.VelocitySpread = 30000
1985PartEmmit1.Rotation = NumberRange.new(-500, 500)
1986PartEmmit1.RotSpeed = NumberRange.new(-500, 500)
1987local BodPoss = IT("BodyPosition", v)
1988BodPoss.P = 3000
1989BodPoss.D = 1000
1990BodPoss.maxForce = Vector3.new(50000000000, 50000000000, 50000000000)
1991BodPoss.position = v.Position + Vector3.new(Mrandom(-15, 15), Mrandom(-15, 15), Mrandom(-15, 15))
1992v.Color = maincolor.Color
1993coroutine.resume(coroutine.create(function()
1994for i = 0, 49 do
1995swait(1)
1996v.Transparency = v.Transparency + 0.08
1997end
1998wait(0.5)
1999PartEmmit1.Enabled = false
2000wait(3)
2001v:Destroy()
2002dude:Destroy()
2003end))
2004end))
2005end
2006end
2007end))
2008end)
2009ds()
2010end
2011end
2012
2013function FindNearestHead(Position, Distance, SinglePlayer)
2014if SinglePlayer then
2015return Distance > (SinglePlayer.Torso.CFrame.p - Position).magnitude
2016end
2017local List = {}
2018for i, v in pairs(workspace:GetChildren()) do
2019if v:IsA("Model") and v:findFirstChild("Head") and v ~= char and Distance >= (v.Head.Position - Position).magnitude then
2020table.insert(List, v)
2021end
2022end
2023return List
2024end
2025
2026function Aura(bonuspeed, FastSpeed, type, pos, x1, y1, z1, value, color, outerpos, MType)
2027local type = type
2028local rng = Instance.new("Part", char)
2029rng.Anchored = true
2030rng.BrickColor = color
2031rng.CanCollide = false
2032rng.FormFactor = 3
2033rng.Name = "Ring"
2034rng.Material = "Neon"
2035rng.Size = Vector3.new(1, 1, 1)
2036rng.Transparency = 0
2037rng.TopSurface = 0
2038rng.BottomSurface = 0
2039rng.CFrame = pos
2040rng.CFrame = rng.CFrame + rng.CFrame.lookVector * outerpos
2041local rngm = Instance.new("SpecialMesh", rng)
2042rngm.MeshType = MType
2043rngm.Scale = Vector3.new(x1, y1, z1)
2044local scaler2 = 1
2045local speeder = FastSpeed
2046if type == "Add" then
2047scaler2 = 1 * value
2048elseif type == "Divide" then
2049scaler2 = 1 / value
2050end
2051coroutine.resume(coroutine.create(function()
2052for i = 0, 10 / bonuspeed, 0.1 do
2053swait()
2054if type == "Add" then
2055scaler2 = scaler2 - 0.01 * value / bonuspeed
2056elseif type == "Divide" then
2057scaler2 = scaler2 - 0.01 / value * bonuspeed
2058end
2059speeder = speeder - 0.01 * FastSpeed * bonuspeed
2060rng.CFrame = rng.CFrame + rng.CFrame.lookVector * speeder * bonuspeed
2061rng.Transparency = rng.Transparency + 0.01 * bonuspeed
2062rngm.Scale = rngm.Scale + Vector3.new(scaler2 * bonuspeed, scaler2 * bonuspeed, 0)
2063end
2064rng:Destroy()
2065end))
2066end
2067
2068function SoulSteal(dude)
2069if dude.Name ~= char then
2070local bgf = IT("BodyGyro", dude.Head)
2071bgf.CFrame = bgf.CFrame * CFrame.fromEulerAnglesXYZ(Rad(-90), 0, 0)
2072local val = IT("BoolValue", dude)
2073val.Name = "IsHit"
2074local torso = (dude:FindFirstChild'Head' or dude:FindFirstChild'Torso' or dude:FindFirstChild'UpperTorso' or dude:FindFirstChild'LowerTorso' or dude:FindFirstChild'HumanoidRootPart')
2075local soulst = coroutine.wrap(function()
2076local soul = Instance.new("Part",dude)
2077soul.Size = Vector3.new(1,1,1)
2078soul.CanCollide = false
2079soul.Anchored = false
2080soul.Position = torso.Position
2081soul.Transparency = 1
2082local PartEmmit1 = IT("ParticleEmitter", soul)
2083PartEmmit1.LightEmission = 1
2084PartEmmit1.Texture = "rbxassetid://569507414"
2085PartEmmit1.Color = ColorSequence.new(maincolor.Color)
2086PartEmmit1.Rate = 250
2087PartEmmit1.Lifetime = NumberRange.new(1.6)
2088PartEmmit1.Size = NumberSequence.new({
2089NumberSequenceKeypoint.new(0, 1, 0),
2090NumberSequenceKeypoint.new(1, 0, 0)
2091})
2092PartEmmit1.Transparency = NumberSequence.new({
2093NumberSequenceKeypoint.new(0, 0, 0),
2094NumberSequenceKeypoint.new(1, 1, 0)
2095})
2096PartEmmit1.Speed = NumberRange.new(0, 0)
2097PartEmmit1.VelocitySpread = 30000
2098PartEmmit1.Rotation = NumberRange.new(-360, 360)
2099PartEmmit1.RotSpeed = NumberRange.new(-360, 360)
2100local BodPoss = IT("BodyPosition", soul)
2101BodPoss.P = 3000
2102BodPoss.D = 1000
2103BodPoss.maxForce = Vector3.new(50000000000, 50000000000, 50000000000)
2104BodPoss.position = torso.Position + Vector3.new(Mrandom(-15, 15), Mrandom(-15, 15), Mrandom(-15, 15))
2105wait(1.6)
2106soul.Touched:connect(function(hit)
2107if hit.Parent == char then
2108soul:Destroy()
2109end
2110end)
2111wait(1.2)
2112while soul do
2113swait()
2114PartEmmit1.Color = ColorSequence.new(maincolor.Color)
2115BodPoss.Position = tors.Position
2116end
2117end)
2118soulst()
2119end
2120end
2121
2122
2123
2124
2125--killer's effects
2126
2127
2128
2129
2130
2131function CreatePart(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
2132local Part = Create("Part"){
2133Parent = Parent,
2134Reflectance = Reflectance,
2135Transparency = Transparency,
2136CanCollide = false,
2137Locked = true,
2138BrickColor = BrickColor.new(tostring(BColor)),
2139Name = Name,
2140Size = Size,
2141Material = Material,
2142}
2143RemoveOutlines(Part)
2144return Part
2145end
2146
2147function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale)
2148local Msh = Create(Mesh){
2149Parent = Part,
2150Offset = OffSet,
2151Scale = Scale,
2152}
2153if Mesh == "SpecialMesh" then
2154Msh.MeshType = MeshType
2155Msh.MeshId = MeshId
2156end
2157return Msh
2158end
2159
2160
2161
2162function BlockEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
2163local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2164prt.Anchored = true
2165prt.CFrame = cframe
2166local msh = CreateMesh("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2167game:GetService("Debris"):AddItem(prt, 10)
2168if Type == 1 or Type == nil then
2169table.insert(Effects, {
2170prt,
2171"Block1",
2172delay,
2173x3,
2174y3,
2175z3,
2176msh
2177})
2178elseif Type == 2 then
2179table.insert(Effects, {
2180prt,
2181"Block2",
2182delay,
2183x3,
2184y3,
2185z3,
2186msh
2187})
2188end
2189end
2190
2191function SphereEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2192local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2193prt.Anchored = true
2194prt.CFrame = cframe
2195local msh = CreateMesh("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2196game:GetService("Debris"):AddItem(prt, 10)
2197table.insert(Effects, {
2198prt,
2199"Cylinder",
2200delay,
2201x3,
2202y3,
2203z3,
2204msh
2205})
2206end
2207
2208function RingEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2209local prt=CreatePart(workspace,"Neon",0,0,brickcolor,"Effect",vt(.5,.5,.5))--part(3,workspace,"SmoothPlastic",0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
2210prt.Anchored=true
2211prt.CFrame=cframe
2212msh=CreateMesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=3270017",vt(0,0,0),vt(x1,y1,z1))
2213game:GetService("Debris"):AddItem(prt,2)
2214coroutine.resume(coroutine.create(function(Part,Mesh,num)
2215for i=0,1,delay do
2216swait()
2217Part.Transparency=i
2218Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
2219end
2220Part.Parent=nil
2221end),prt,msh,(math.random(0,1)+math.random())/5)
2222end
2223
2224function CylinderEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2225local prt = CreatePart(workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
2226prt.Anchored = true
2227prt.CFrame = cframe
2228local msh = CreateMesh("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2229game:GetService("Debris"):AddItem(prt, 10)
2230table.insert(Effects, {
2231prt,
2232"Cylinder",
2233delay,
2234x3,
2235y3,
2236z3,
2237msh
2238})
2239end
2240
2241function WaveEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2242local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2243prt.Anchored = true
2244prt.CFrame = cframe
2245local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2246game:GetService("Debris"):AddItem(prt, 10)
2247table.insert(Effects, {
2248prt,
2249"Cylinder",
2250delay,
2251x3,
2252y3,
2253z3,
2254msh
2255})
2256end
2257
2258function SpecialEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2259local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2260prt.Anchored = true
2261prt.CFrame = cframe
2262local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://24388358", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2263game:GetService("Debris"):AddItem(prt, 10)
2264table.insert(Effects, {
2265prt,
2266"Cylinder",
2267delay,
2268x3,
2269y3,
2270z3,
2271msh
2272})
2273end
2274
2275
2276function MoonEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2277local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2278prt.Anchored = true
2279prt.CFrame = cframe
2280local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://259403370", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2281game:GetService("Debris"):AddItem(prt, 10)
2282table.insert(Effects, {
2283prt,
2284"Cylinder",
2285delay,
2286x3,
2287y3,
2288z3,
2289msh
2290})
2291end
2292
2293function HeadEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2294local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2295prt.Anchored = true
2296prt.CFrame = cframe
2297local msh = CreateMesh("SpecialMesh", prt, "Head", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2298game:GetService("Debris"):AddItem(prt, 10)
2299table.insert(Effects, {
2300prt,
2301"Cylinder",
2302delay,
2303x3,
2304y3,
2305z3,
2306msh
2307})
2308end
2309
2310function BreakEffect(brickcolor, cframe, x1, y1, z1)
2311local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
2312prt.Anchored = true
2313prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
2314local msh = CreateMesh("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2315local num = math.random(10, 50) / 1000
2316game:GetService("Debris"):AddItem(prt, 10)
2317table.insert(Effects, {
2318prt,
2319"Shatter",
2320num,
2321prt.CFrame,
2322math.random() - math.random(),
23230,
2324math.random(50, 100) / 100
2325})
2326end
2327
2328
2329
2330
2331
2332so = function(id,par,vol,pit)
2333coroutine.resume(coroutine.create(function()
2334local sou = Instance.new("Sound",par or workspace)
2335sou.Volume=vol
2336sou.Pitch=pit or 1
2337sou.SoundId=id
2338sou:play()
2339game:GetService("Debris"):AddItem(sou,8)
2340end))
2341end
2342
2343
2344--end of killer's effects
2345
2346
2347function FaceMouse()
2348local Cam = workspace.CurrentCamera
2349return {
2350CFrame.new(char.Torso.Position, Vector3.new(mouse.Hit.p.x, char.Torso.Position.y, mouse.Hit.p.z)),
2351Vector3.new(mouse.Hit.p.x, mouse.Hit.p.y, mouse.Hit.p.z)
2352}
2353end
2354-------------------------------------------------------
2355--End Effect Function--
2356-------------------------------------------------------
2357function Cso(ID, PARENT, VOLUME, PITCH)
2358local NSound = nil
2359coroutine.resume(coroutine.create(function()
2360NSound = IT("Sound", PARENT)
2361NSound.Volume = VOLUME
2362NSound.Pitch = PITCH
2363NSound.SoundId = "http://www.roblox.com/asset/?id="..ID
2364swait()
2365NSound:play()
2366game:GetService("Debris"):AddItem(NSound, 10)
2367end))
2368return NSound
2369end
2370function CameraEnshaking(Length, Intensity)
2371coroutine.resume(coroutine.create(function()
2372local intensity = 1 * Intensity
2373local rotM = 0.01 * Intensity
2374for i = 0, Length, 0.1 do
2375swait()
2376intensity = intensity - 0.05 * Intensity / Length
2377rotM = rotM - 5.0E-4 * Intensity / Length
2378hum.CameraOffset = Vector3.new(Rad(Mrandom(-intensity, intensity)), Rad(Mrandom(-intensity, intensity)), Rad(Mrandom(-intensity, intensity)))
2379cam.CFrame = cam.CFrame * CF(Rad(Mrandom(-intensity, intensity)), Rad(Mrandom(-intensity, intensity)), Rad(Mrandom(-intensity, intensity))) * Euler(Rad(Mrandom(-intensity, intensity)) * rotM, Rad(Mrandom(-intensity, intensity)) * rotM, Rad(Mrandom(-intensity, intensity)) * rotM)
2380end
2381hum.CameraOffset = Vector3.new(0, 0, 0)
2382end))
2383end
2384-------------------------------------------------------
2385--End Important Functions--
2386-------------------------------------------------------
2387
2388
2389-------------------------------------------------------
2390--Start Customization--
2391-------------------------------------------------------
2392local Player_Size = 1
2393if Player_Size ~= 1 then
2394root.Size = root.Size * Player_Size
2395tors.Size = tors.Size * Player_Size
2396hed.Size = hed.Size * Player_Size
2397ra.Size = ra.Size * Player_Size
2398la.Size = la.Size * Player_Size
2399rl.Size = rl.Size * Player_Size
2400ll.Size = ll.Size * Player_Size
2401----------------------------------------------------------------------------------
2402rootj.Parent = root
2403neck.Parent = tors
2404RW.Parent = tors
2405LW.Parent = tors
2406RH.Parent = tors
2407LH.Parent = tors
2408----------------------------------------------------------------------------------
2409rootj.C0 = RootCF * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0))
2410rootj.C1 = RootCF * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0))
2411neck.C0 = necko * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * angles(Rad(0), Rad(0), Rad(0))
2412neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * angles(Rad(-90), Rad(0), Rad(180))
2413RW.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0)) --* RIGHTSHOULDERC0
2414LW.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0)) --* LEFTSHOULDERC0
2415----------------------------------------------------------------------------------
2416RH.C0 = CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(90), Rad(0)) * angles(Rad(0), Rad(0), Rad(0))
2417LH.C0 = CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(-90), Rad(0)) * angles(Rad(0), Rad(0), Rad(0))
2418RH.C1 = CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(90), Rad(0)) * angles(Rad(0), Rad(0), Rad(0))
2419LH.C1 = CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(-90), Rad(0)) * angles(Rad(0), Rad(0), Rad(0))
2420--hat.Parent = Character
2421end
2422----------------------------------------------------------------------------------
2423local SONG = 900817147 --900817147
2424local SONG2 = 0
2425local Music = Instance.new("Sound",tors)
2426Music.Volume = 0.7
2427Music.Looped = true
2428Music.Pitch = 1 --Pitcher
2429----------------------------------------------------------------------------------
2430local equipped = false
2431local idle = 0
2432local change = 1
2433local val = 0
2434local toim = 0
2435local idleanim = 0.4
2436local sine = 0
2437local Sit = 1
2438local attacktype = 1
2439local attackdebounce = false
2440local euler = CFrame.fromEulerAnglesXYZ
2441local cankick = false
2442----------------------------------------------------------------------------------
2443hum.WalkSpeed = 8
2444hum.JumpPower = 57
2445--[[
2446local ROBLOXIDLEANIMATION = IT("Animation")
2447ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
2448ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
2449]]
2450local ANIMATOR = hum.Animator
2451local ANIMATE = char.Animate
2452ANIMATE.Parent = nil
2453ANIMATOR.Parent = nil
2454-------------------------------------------------------
2455--End Customization--
2456-------------------------------------------------------
2457
2458
2459-------------------------------------------------------
2460--Start Attacks N Stuff--
2461-------------------------------------------------------
2462
2463--pls be proud mak i did my best
2464
2465
2466
2467function attackone()
2468
2469attack = true
2470
2471for i = 0, 1.35, 0.1 do
2472swait()
2473rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0.7, -0.3) * angles(math.rad(-4-2*i), math.rad(4+2*i), math.rad(-40-11*i)), 0.2)
2474tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(40+11*i)), 0.2)
2475RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.6, 0.2) * angles(math.rad(90+4*i), math.rad(-43), math.rad(16+6*i)), 0.3)
2476LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(-43)), 0.3)
2477RH.C0 = clerp(RH.C0, CFrame.new(1, -0.7, 0) * RHCF * angles(math.rad(-34), math.rad(0), math.rad(-17)), 0.2)
2478LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, -0.2) * LHCF * angles(math.rad(-24), math.rad(0), math.rad(0)), 0.2)
2479end
2480
2481so("http://roblox.com/asset/?id=1340545854",ra,1,math.random(0.7,1))
2482
2483
2484con5=ra.Touched:connect(function(hit)
2485if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
2486if attackdebounce == false then
2487attackdebounce = true
2488
2489so("http://roblox.com/asset/?id=636494529",ra,2,1)
2490
2491RingEffect(BrickColor.new("White"),ra.CFrame*CFrame.new(0,-1,0)*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2492RingEffect(BrickColor.new("White"),ra.CFrame*CFrame.new(0,-1,0)*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2493SphereEffect(BrickColor.new("White"),ra.CFrame*CFrame.new(0,-1,0)*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
2494
2495
2496coroutine.resume(coroutine.create(function()
2497for i = 0,1,0.1 do
2498swait()
2499hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8)),0.24)
2500end
2501end))
2502
2503
2504wait(0.34)
2505attackdebounce = false
2506
2507end
2508end
2509end)
2510for i = 0, 1.12, 0.1 do
2511swait()
2512rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, -0.9, -0) * angles(math.rad(14), math.rad(6), math.rad(23)), 0.35)
2513tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(-4), math.rad(0), math.rad(-23)), 0.35)
2514RW.C0 = clerp(RW.C0, CFrame.new(1.3, 0.6, -0.8) * angles(math.rad(110), math.rad(23), math.rad(2)), 0.4)
2515LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0.2) * angles(math.rad(-37), math.rad(0), math.rad(-13)), 0.35)
2516RH.C0 = clerp(RH.C0, CFrame.new(1, -1, -0.3) * RHCF * angles(math.rad(-4), math.rad(0), math.rad(6)), 0.3)
2517LH.C0 = clerp(LH.C0, CFrame.new(-1, -1, 0.05) * LHCF * angles(math.rad(-22), math.rad(0), math.rad(23)), 0.3)
2518end
2519
2520con5:Disconnect()
2521attack = false
2522
2523end
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536function attacktwo()
2537
2538attack = true
2539
2540for i = 0, 1.35, 0.1 do
2541swait()
2542rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0.7, -0.3) * angles(math.rad(-4), math.rad(-4), math.rad(40)), 0.2)
2543tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(-40)), 0.2)
2544RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(46)), 0.3)
2545LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.6, 0.2) * angles(math.rad(90), math.rad(23), math.rad(6)), 0.3)
2546RH.C0 = clerp(RH.C0, CFrame.new(1, -0.7, -0.2) * RHCF * angles(math.rad(-34), math.rad(0), math.rad(-17)), 0.2)
2547LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, 0) * LHCF * angles(math.rad(-24), math.rad(0), math.rad(0)), 0.2)
2548end
2549
2550so("http://roblox.com/asset/?id=1340545854",la,1,math.random(0.7,1))
2551
2552
2553con5=la.Touched:connect(function(hit)
2554if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
2555if attackdebounce == false then
2556attackdebounce = true
2557
2558so("http://roblox.com/asset/?id=636494529",la,2,1)
2559
2560RingEffect(BrickColor.new("White"),la.CFrame*CFrame.new(0,-1,0)*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2561RingEffect(BrickColor.new("White"),la.CFrame*CFrame.new(0,-1,0)*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2562SphereEffect(BrickColor.new("White"),la.CFrame*CFrame.new(0,-1,0)*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
2563
2564
2565coroutine.resume(coroutine.create(function()
2566for i = 0,1,0.1 do
2567swait()
2568hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8)),0.24)
2569end
2570end))
2571
2572
2573wait(0.34)
2574attackdebounce = false
2575
2576end
2577end
2578end)
2579
2580
2581
2582
2583for i = 0, 1.12, 0.1 do
2584swait()
2585rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, -0.9, -0) * angles(math.rad(14), math.rad(-6), math.rad(-27)), 0.35)
2586tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(-4), math.rad(0), math.rad(27)), 0.35)
2587RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.16) * angles(math.rad(-33), math.rad(0), math.rad(23)), 0.4)
2588LW.C0 = clerp(LW.C0, CFrame.new(-1.3, 0.67, -0.9) * angles(math.rad(116), math.rad(-28), math.rad(1)), 0.35)
2589RH.C0 = clerp(RH.C0, CFrame.new(1, -1, 0.05) * RHCF * angles(math.rad(-22), math.rad(0), math.rad(-18)), 0.3)
2590LH.C0 = clerp(LH.C0, CFrame.new(-1, -1, -0.3) * LHCF * angles(math.rad(-2), math.rad(0), math.rad(4)), 0.3)
2591end
2592
2593con5:Disconnect()
2594attack = false
2595
2596end
2597
2598
2599
2600
2601
2602function attackthree()
2603
2604attack = true
2605
2606
2607for i = 0, 1.14, 0.1 do
2608swait()
2609rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0.7, -0.3) * angles(math.rad(-4), math.rad(-4), math.rad(40)), 0.2)
2610tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(-40)), 0.2)
2611RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(-46)), 0.3)
2612LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.6, 0.2) * angles(math.rad(90), math.rad(23), math.rad(36)), 0.3)
2613RH.C0 = clerp(RH.C0, CFrame.new(1, -0.7, -0.2) * RHCF * angles(math.rad(-34), math.rad(0), math.rad(-17)), 0.2)
2614LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, 0) * LHCF * angles(math.rad(-12), math.rad(0), math.rad(34)), 0.2)
2615end
2616
2617con5=hum.Touched:connect(function(hit)
2618if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
2619if attackdebounce == false then
2620attackdebounce = true
2621
2622so("http://roblox.com/asset/?id=636494529",ll,2,1)
2623
2624RingEffect(BrickColor.new("White"),ll.CFrame*CF(0,-1,0)*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2625RingEffect(BrickColor.new("White"),ll.CFrame*CF(0,-1,0)*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2626SphereEffect(BrickColor.new("White"),ll.CFrame*CF(0,-1,0)*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
2627
2628
2629coroutine.resume(coroutine.create(function()
2630for i = 0,1,0.1 do
2631swait()
2632hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8)),0.24)
2633end
2634end))
2635
2636
2637wait(0.34)
2638attackdebounce = false
2639
2640end
2641end
2642end)
2643
2644so("http://www.roblox.com/asset/?id=158475221", RightLeg, 1, 1.3)
2645for i = 0, 9.14, 0.3 do
2646swait()
2647BlockEffect(BrickColor.new("White"), ll.CFrame*CF(0,-1,0), 2, 2, 2, 3.5, 3.5, 3.5, 0.05)
2648rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, -0.87) * angles(math.rad(8), math.rad(8), math.rad(0-54*i)), 0.35)
2649tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(12), math.rad(0), math.rad(24)), 0.35)
2650RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(12), math.rad(0), math.rad(62)), 0.35)
2651LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.3, 0) * angles(math.rad(12), math.rad(0), math.rad(-23)), 0.35)
2652RH.C0 = clerp(RH.C0, CFrame.new(1, -0.17, -0.4) * RHCF * angles(math.rad(7), math.rad(0), math.rad(4)), 0.35)
2653LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.13, -0.6) * LHCF * angles(math.rad(-64-7*i), math.rad(0), math.rad(0-9*i)), 0.35)
2654end
2655attack = false
2656con5:disconnect()
2657end
2658
2659
2660
2661function attackfour()
2662
2663attack = true
2664so("http://www.roblox.com/asset/?id=1452040709", RightLeg, 3, 1)
2665WaveEffect(BrickColor.new("White"), root.CFrame * CFrame.new(0, -1, 0) * euler(0, math.random(-50, 50), 0), 1, 1, 1, 1, 0.5, 1, 0.05)
2666for i = 0, 5.14, 0.1 do
2667swait()
2668SphereEffect(BrickColor.new("White"),rl.CFrame*angles(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,5,1,.05,4,.05,0.03)
2669rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, -0.8) * angles(math.rad(24+4*i), math.rad(0), math.rad(0)), 0.2)
2670tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0+11*i), math.rad(0), math.rad(0)), 0.2)
2671RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0-6*i), math.rad(0), math.rad(36+4*i)), 0.3)
2672LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0-6*i), math.rad(0), math.rad(-36-4*i)), 0.3)
2673RH.C0 = clerp(RH.C0, CFrame.new(1, -0.6, -0.3) * RHCF * angles(math.rad(0), math.rad(0), math.rad(-28+4*i)), 0.2)
2674LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.2, -0.5) * LHCF * angles(math.rad(0), math.rad(0), math.rad(-34-4*i)), 0.2)
2675end
2676so("http://www.roblox.com/asset/?id=158475221", RightLeg, 1, 1.3)
2677local velo=Instance.new("BodyVelocity")
2678velo.velocity=vt(0,25,0)
2679velo.P=8000
2680velo.maxForce=Vector3.new(math.huge, math.huge, math.huge)
2681velo.Parent=root
2682game:GetService("Debris"):AddItem(velo,0.7)
2683
2684
2685
2686con5=hum.Touched:connect(function(hit)
2687if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
2688if attackdebounce == false then
2689attackdebounce = true
2690coroutine.resume(coroutine.create(function()
2691for i = 0,1.5,0.1 do
2692swait()
2693hit.Parent.Head.CFrame = root.CFrame * CFrame.new(0,1.6,-1.8)
2694end
2695end))
2696so("http://roblox.com/asset/?id=636494529",rl,2,1)
2697RingEffect(BrickColor.new("White"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2698RingEffect(BrickColor.new("White"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2699SphereEffect(BrickColor.new("White"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
2700
2701
2702
2703coroutine.resume(coroutine.create(function()
2704for i = 0,1,0.1 do
2705swait()
2706hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.75*1.8,0.75*1.8),math.random(-0.75*1.8,0.75*1.8),math.random(-0.75*1.8,0.75*1.8)),0.44)
2707end
2708end))
2709
2710
2711wait(0.14)
2712attackdebounce = false
2713end
2714end
2715end)
2716
2717for i = 0, 5.11, 0.15 do
2718swait()
2719BlockEffect(BrickColor.new("White"), rl.CFrame*CF(0,-1,0), 2, 2, 2, 3.5, 3.5, 3.5, 0.05)
2720rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, 0.1+0.2*i) * angles(math.rad(-10-80*i), math.rad(0), math.rad(0)), 0.42)
2721tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(-43), math.rad(0), math.rad(0)), 0.42)
2722RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-8), math.rad(0), math.rad(60)), 0.35)
2723LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-8), math.rad(0), math.rad(-60)), 0.35)
2724RH.C0 = clerp(RH.C0, CFrame.new(1, -0.5, 0) * RHCF * angles(math.rad(0), math.rad(0), math.rad(20+10*i)), 0.42)
2725LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.5, -0.4) * LHCF * angles(math.rad(0), math.rad(0), math.rad(24)), 0.42)
2726end
2727
2728
2729attack = false
2730con5:disconnect()
2731end
2732
2733
2734
2735
2736
2737local cooldown = false
2738function quickkick()
2739attack = true
2740
2741
2742con5=hum.Touched:connect(function(hit)
2743if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
2744if attackdebounce == false then
2745attackdebounce = true
2746
2747coroutine.resume(coroutine.create(function()
2748for i = 0,1.5,0.1 do
2749swait()
2750hit.Parent.Head.CFrame = root.CFrame * CFrame.new(0,1.3,-1.8)
2751end
2752end))
2753
2754so("http://roblox.com/asset/?id=636494529",rl,2,1)
2755RingEffect(BrickColor.new("White"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2756RingEffect(BrickColor.new("White"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2757SphereEffect(BrickColor.new("White"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
2758
2759
2760
2761coroutine.resume(coroutine.create(function()
2762for i = 0,1,0.1 do
2763swait()
2764hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.8*1.8,0.8*1.8),math.random(-0.8*1.8,0.8*1.8),math.random(-0.8*1.8,0.8*1.8)),0.44)
2765end
2766end))
2767
2768
2769wait(0.08)
2770attackdebounce = false
2771end
2772end
2773end)
2774
2775so("http://www.roblox.com/asset/?id=158475221", RightLeg, 1, 1.3)
2776for i = 0, 11.14, 0.3 do
2777swait()
2778root.Velocity = root.CFrame.lookVector * 30
2779BlockEffect(BrickColor.new("White"), ll.CFrame*CF(0,-1,0), 2, 2, 2, 3.5, 3.5, 3.5, 0.05)
2780rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, -0.87) * angles(math.rad(-21-30*i), math.rad(8+10*i), math.rad(0-90*i)), 0.35)
2781tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(12), math.rad(0), math.rad(24)), 0.35)
2782RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(12), math.rad(0), math.rad(62)), 0.35)
2783LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.3, 0) * angles(math.rad(12), math.rad(0), math.rad(-23)), 0.35)
2784RH.C0 = clerp(RH.C0, CFrame.new(1, -0.17, -0.4) * RHCF * angles(math.rad(7), math.rad(0), math.rad(4)), 0.35)
2785LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.13, -0.6) * LHCF * angles(math.rad(-64-2*i), math.rad(0), math.rad(0-9*i)), 0.35)
2786end
2787attack = false
2788con5:disconnect()
2789end
2790
2791
2792
2793
2794
2795
2796
2797
2798function Taunt()
2799attack = true
2800hum.WalkSpeed = 0
2801Cso("1535995570", hed, 8.45, 1)
2802for i = 0, 8.2, 0.1 do
2803swait()
2804hum.WalkSpeed = 0
2805rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1* Player_Size * Cos(sine / 12)) * angles(Rad(0), Rad(0), Rad(0)), 0.2)
2806tors.Neck.C0 = clerp(tors.Neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(25), Rad(0), Rad(16 * Cos(sine / 12))), 0.2)
2807RH.C0 = clerp(RH.C0, CF(1* Player_Size, -0.9 - 0.1 * Cos(sine / 12)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(75), Rad(0)) * angles(Rad(-6.5), Rad(0), Rad(0)), 0.1)
2808LH.C0 = clerp(LH.C0, CF(-1* Player_Size, -0.9 - 0.1 * Cos(sine / 12)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(-75), Rad(0)) * angles(Rad(-6.5), Rad(0), Rad(0)), 0.1)
2809RW.C0 = clerp(RW.C0, CF(1.1* Player_Size, 0.5 + 0.05 * Sin(sine / 12)* Player_Size, -0.5* Player_Size) * angles(Rad(180), Rad(6), Rad(-56)), 0.1)
2810LW.C0 = clerp(LW.C0, CF(-1* Player_Size, 0.1 + 0.05 * Sin(sine / 12)* Player_Size, -0.5* Player_Size) * angles(Rad(45), Rad(6), Rad(86)), 0.1)
2811end
2812attack = false
2813hum.WalkSpeed = 8
2814end
2815
2816
2817
2818
2819
2820
2821
2822function Hyperkickcombo()
2823
2824attack = true
2825so("http://www.roblox.com/asset/?id=1452040709", RightLeg, 3, 1)
2826WaveEffect(BrickColor.new("White"), root.CFrame * CFrame.new(0, -1, 0) * euler(0, math.random(-50, 50), 0), 1, 1, 1, 1, 0.5, 1, 0.05)
2827for i = 0, 7.14, 0.1 do
2828swait()
2829SphereEffect(BrickColor.new("White"),rl.CFrame*angles(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,5,1,.05,4,.05,0.03)
2830rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, -0.8) * angles(math.rad(24), math.rad(0), math.rad(0)), 0.2)
2831tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
2832RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(36)), 0.3)
2833LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-36)), 0.3)
2834RH.C0 = clerp(RH.C0, CFrame.new(1, -0.6, -0.3) * RHCF * angles(math.rad(0), math.rad(0), math.rad(-28)), 0.2)
2835LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.2, -0.5) * LHCF * angles(math.rad(0), math.rad(0), math.rad(-34)), 0.2)
2836end
2837local Cracking = Cso("292536356", tors, 10, 1)
2838for i = 0, 7.14, 0.1 do
2839swait()
2840hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8)),0.34)
2841Aura(5, 0.15, "Add" , root.CFrame * CF(Mrandom(-12, 12), -6, Mrandom(-12, 12)) * angles(Rad(90 + Mrandom(-12, 12)), 0, 0), 1.5, 1.5, 10, -0.015, BrickC"Lime green", 0, "Sphere")
2842WaveEffect(BrickColor.new("Lime green"), root.CFrame * CFrame.new(0, -6, 0) * euler(0, math.random(-25, 25), 0), 1, 1, 1, 1, 0.2, 1, 0.05)
2843SphereEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,5,1,.05,4,.05,0.03)
2844SphereEffect(BrickColor.new("Lime green"),ll.CFrame*angles(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,5,1,.05,4,.05,0.03)
2845rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, -0.8) * angles(math.rad(24), math.rad(0), math.rad(0)), 0.2)
2846tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(30), math.rad(0), math.rad(0)), 0.2)
2847RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(20), math.rad(0), math.rad(36)), 0.3)
2848LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(20), math.rad(0), math.rad(-36)), 0.3)
2849RH.C0 = clerp(RH.C0, CFrame.new(1, -0.6, -0.3) * RHCF * angles(math.rad(0), math.rad(0), math.rad(-28)), 0.2)
2850LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.2, -0.5) * LHCF * angles(math.rad(0), math.rad(0), math.rad(-34)), 0.2)
2851end
2852Cracking.Playing = false
2853so("http://www.roblox.com/asset/?id=197161452", char, 3, 0.8)
2854so("http://www.roblox.com/asset/?id=158475221", RightLeg, 1, 1.3)
2855SphereEffect(BrickColor.new("Lime green"),tors.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,38,38,38,0.08)
2856local velo=Instance.new("BodyVelocity")
2857velo.velocity=vt(0,27,0)
2858velo.P=11000
2859velo.maxForce=Vector3.new(math.huge, math.huge, math.huge)
2860velo.Parent=root
2861game:GetService("Debris"):AddItem(velo,1.24)
2862
2863
2864
2865con5=hum.Touched:connect(function(hit)
2866if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
2867if attackdebounce == false then
2868attackdebounce = true
2869coroutine.resume(coroutine.create(function()
2870for i = 0,1.5,0.1 do
2871swait()
2872hit.Parent.Head.CFrame = root.CFrame * CFrame.new(0,3.4,-1.8)
2873end
2874end))
2875so("http://roblox.com/asset/?id=636494529",rl,2,1.6)
2876RingEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2877RingEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2878SphereEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
2879
2880
2881
2882coroutine.resume(coroutine.create(function()
2883for i = 0,1,0.1 do
2884swait()
2885hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8)),0.34)
2886end
2887end))
2888
2889
2890wait(0.09)
2891attackdebounce = false
2892end
2893end
2894end)
2895
2896for i = 0, 9.11, 0.2 do
2897swait()
2898BlockEffect(BrickColor.new("Lime green"), rl.CFrame*CF(0,-1,0), 2, 2, 2, 3.5, 3.5, 3.5, 0.05)
2899rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, 0.1+0.12*i) * angles(math.rad(-10-95*i), math.rad(0), math.rad(0)), 0.42)
2900tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(-43), math.rad(0), math.rad(0)), 0.42)
2901RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-8), math.rad(0), math.rad(60)), 0.35)
2902LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-8), math.rad(0), math.rad(-60)), 0.35)
2903RH.C0 = clerp(RH.C0, CFrame.new(1, -0.5, 0) * RHCF * angles(math.rad(0), math.rad(0), math.rad(20+10*i)), 0.42)
2904LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.5, -0.4) * LHCF * angles(math.rad(0), math.rad(0), math.rad(24)), 0.42)
2905end
2906
2907
2908
2909
2910con5:disconnect()
2911
2912
2913
2914
2915
2916
2917con5=hum.Touched:connect(function(hit)
2918if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
2919if attackdebounce == false then
2920attackdebounce = true
2921coroutine.resume(coroutine.create(function()
2922for i = 0,1.5,0.1 do
2923swait()
2924hit.Parent.Head.CFrame = root.CFrame * CFrame.new(0,1.1,-1.8)
2925end
2926end))
2927so("http://roblox.com/asset/?id=636494529",rl,2,1.6)
2928RingEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2929RingEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2930SphereEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
2931
2932
2933
2934coroutine.resume(coroutine.create(function()
2935for i = 0,1,0.1 do
2936swait()
2937hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8)),0.34)
2938end
2939end))
2940
2941
2942wait(0.08)
2943attackdebounce = false
2944end
2945end
2946end)
2947
2948
2949
2950so("http://www.roblox.com/asset/?id=158475221", RightLeg, 1, 1.3)
2951for i = 0, 9.14, 0.3 do
2952swait()
2953root.Velocity = root.CFrame.lookVector * 20
2954BlockEffect(BrickColor.new("Lime green"), ll.CFrame*CF(0,-1,0), 2, 2, 2, 3.5, 3.5, 3.5, 0.05)
2955rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, -0.87) * angles(math.rad(53), math.rad(8), math.rad(0-54*i)), 0.35)
2956tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(12), math.rad(0), math.rad(24)), 0.35)
2957RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(12), math.rad(0), math.rad(62)), 0.35)
2958LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.3, 0) * angles(math.rad(12), math.rad(0), math.rad(-23)), 0.35)
2959RH.C0 = clerp(RH.C0, CFrame.new(1, -0.17, -0.4) * RHCF * angles(math.rad(7), math.rad(0), math.rad(4)), 0.35)
2960LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.13, -0.6) * LHCF * angles(math.rad(-64-7*i), math.rad(0), math.rad(0-9*i)), 0.35)
2961end
2962
2963
2964
2965con5:disconnect()
2966
2967
2968
2969con5=hum.Touched:connect(function(hit)
2970if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
2971if attackdebounce == false then
2972attackdebounce = true
2973coroutine.resume(coroutine.create(function()
2974for i = 0,1.5,0.1 do
2975swait()
2976hit.Parent.Head.CFrame = root.CFrame * CFrame.new(0,1.1,-1.8)
2977end
2978end))
2979so("http://roblox.com/asset/?id=636494529",rl,2,1.6)
2980RingEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2981RingEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
2982SphereEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
2983
2984
2985
2986coroutine.resume(coroutine.create(function()
2987for i = 0,1,0.1 do
2988swait()
2989hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8)),0.34)
2990end
2991end))
2992
2993
2994wait(0.05)
2995attackdebounce = false
2996end
2997end
2998end)
2999
3000
3001so("http://www.roblox.com/asset/?id=158475221", RightLeg, 1, 1.3)
3002for i = 0, 15.14, 0.32 do
3003swait()
3004root.Velocity = root.CFrame.lookVector * 20
3005BlockEffect(BrickColor.new("Lime green"), ll.CFrame*CF(0,-1,0), 2, 2, 2, 3.5, 3.5, 3.5, 0.05)
3006rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, -0.87) * angles(math.rad(-21-50*i), math.rad(8+20*i), math.rad(0-90*i)), 0.35)
3007tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(12), math.rad(0), math.rad(24)), 0.35)
3008RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(12), math.rad(0), math.rad(62)), 0.35)
3009LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.3, 0) * angles(math.rad(12), math.rad(0), math.rad(-23)), 0.35)
3010RH.C0 = clerp(RH.C0, CFrame.new(1, -0.17, -0.4) * RHCF * angles(math.rad(7), math.rad(0), math.rad(4)), 0.35)
3011LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.13, -0.6) * LHCF * angles(math.rad(-64-2*i), math.rad(0), math.rad(0-4*i)), 0.35)
3012end
3013
3014attack = false
3015con5:disconnect()
3016
3017end
3018
3019
3020
3021
3022
3023local ultra = false
3024
3025function Galekicks()
3026
3027attack = true
3028so("http://www.roblox.com/asset/?id=1452040709", RightLeg, 3, 1)
3029for i = 0, 1.65, 0.1 do
3030swait()
3031root.Velocity = root.CFrame.lookVector * 0
3032SphereEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,5,1,.05,4,.05,0.03)
3033rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0.7, -0.3) * angles(math.rad(-32), math.rad(-2), math.rad(90)), 0.2)
3034tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(-17), math.rad(-90)), 0.2)
3035RW.C0 = clerp(RW.C0, CFrame.new(1.1, 0.5, -0.6) * angles(math.rad(90), math.rad(0), math.rad(-56)), 0.3)
3036LW.C0 = clerp(LW.C0, CFrame.new(-1.2, 0.6, -0.5) * angles(math.rad(90), math.rad(0), math.rad(56)), 0.3)
3037RH.C0 = clerp(RH.C0, CFrame.new(1, .62 , -0.3) * RHCF * angles(math.rad(-40), math.rad(0), math.rad(2)), 0.2)
3038LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, 0) * LHCF * angles(math.rad(-28), math.rad(0), math.rad(0)), 0.2)
3039end
3040
3041
3042for i = 1, 17 do
3043
3044con5=hum.Touched:connect(function(hit)
3045if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
3046if attackdebounce == false then
3047attackdebounce = true
3048coroutine.resume(coroutine.create(function()
3049for i = 0,1.5,0.1 do
3050swait()
3051hit.Parent.Head.CFrame = root.CFrame * CFrame.new(0,1.1,-1.8)
3052end
3053end))
3054so("http://roblox.com/asset/?id=636494529",rl,2,1.6)
3055RingEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
3056RingEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
3057SphereEffect(BrickColor.new("Lime green"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
3058
3059
3060
3061coroutine.resume(coroutine.create(function()
3062for i = 0,1,0.1 do
3063swait()
3064hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8)),0.34)
3065end
3066end))
3067
3068
3069wait(0.05)
3070attackdebounce = false
3071end
3072end
3073end)
3074
3075for i = 0, .1, 0.2 do
3076swait()
3077BlockEffect(BrickColor.new("Lime green"), rl.CFrame*CF(0,-1,0), 2, 2, 2, 1.5, 1.5, 1.5, 0.03)
3078root.Velocity = root.CFrame.lookVector * 10
3079rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, -0.5, -0.3) * angles(math.rad(-44), math.rad(-2), math.rad(90)), 0.7)
3080tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(-24), math.rad(-90)), 0.7)
3081RW.C0 = clerp(RW.C0, CFrame.new(1.1, 0.5, -0.6) * angles(math.rad(90), math.rad(0), math.rad(-56)), 0.7)
3082LW.C0 = clerp(LW.C0, CFrame.new(-1.2, 0.6, -0.5) * angles(math.rad(90), math.rad(0), math.rad(56)), 0.7)
3083RH.C0 = clerp(RH.C0, CFrame.new(1, -.6 , 0) * RHCF * angles(math.rad(math.random(-100,-10)), math.rad(0), math.rad(2)), 0.7)
3084LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, 0) * LHCF * angles(math.rad(-34), math.rad(0), math.rad(0)), 0.7)
3085end
3086
3087so("http://roblox.com/asset/?id=1340545854",rl,1,math.random(0.7,1))
3088
3089for i = 0, 0.4, 0.2 do
3090swait()
3091rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0.7, -0.3) * angles(math.rad(-32), math.rad(-2), math.rad(90)), 0.2)
3092tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(-17), math.rad(-90)), 0.2)
3093RW.C0 = clerp(RW.C0, CFrame.new(1.1, 0.5, -0.6) * angles(math.rad(90), math.rad(0), math.rad(-56)), 0.3)
3094LW.C0 = clerp(LW.C0, CFrame.new(-1.2, 0.6, -0.5) * angles(math.rad(90), math.rad(0), math.rad(56)), 0.3)
3095RH.C0 = clerp(RH.C0, CFrame.new(1, .62 , -0.3) * RHCF * angles(math.rad(-40), math.rad(0), math.rad(2)), 0.2)
3096LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, 0) * LHCF * angles(math.rad(-28), math.rad(0), math.rad(0)), 0.2)
3097end
3098con5:disconnect()
3099end
3100
3101
3102u = mouse.KeyDown:connect(function(key)
3103if key == 'r' and combohits >= 150 then
3104ultra = true
3105SphereEffect(BrickColor.new("Really red"),tors.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,15,15,15,0.04)
3106end
3107end)
3108wait(0.3)
3109if ultra == true then
3110combohits = 0
3111wait(0.1)
3112for i = 0, 1.65, 0.1 do
3113swait()
3114root.Velocity = root.CFrame.lookVector * 0
3115SphereEffect(BrickColor.new("Really red"),rl.CFrame*angles(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,5,1,.05,4,.05,0.03)
3116rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0.7, -0.3) * angles(math.rad(-32), math.rad(-2), math.rad(90)), 0.2)
3117tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(-17), math.rad(-90)), 0.2)
3118RW.C0 = clerp(RW.C0, CFrame.new(1.1, 0.5, -0.6) * angles(math.rad(90), math.rad(0), math.rad(-56)), 0.3)
3119LW.C0 = clerp(LW.C0, CFrame.new(-1.2, 0.6, -0.5) * angles(math.rad(90), math.rad(0), math.rad(56)), 0.3)
3120RH.C0 = clerp(RH.C0, CFrame.new(1, .62 , -0.3) * RHCF * angles(math.rad(-40), math.rad(0), math.rad(2)), 0.2)
3121LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, 0) * LHCF * angles(math.rad(-28), math.rad(0), math.rad(0)), 0.2)
3122end
3123
3124
3125so("http://roblox.com/asset/?id=146094803",hed,1,1.2)
3126
3127for i = 1, 65 do
3128--Aura(5, 0.15, "Add" , root.CFrame * CF(Mrandom(-12, 12), -6, Mrandom(-12, 12)) * angles(Rad(90 + Mrandom(-12, 12)), 0, 0), 1.5, 1.5, 10, -0.015, BrickC"Really red", 0, "Brick")
3129con5=hum.Touched:connect(function(hit)
3130if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
3131if attackdebounce == false then
3132attackdebounce = true
3133coroutine.resume(coroutine.create(function()
3134for i = 0,1.5,0.1 do
3135swait()
3136hit.Parent.Head.CFrame = root.CFrame * CFrame.new(0,1.1,-1.8)
3137end
3138end))
3139so("http://roblox.com/asset/?id=636494529",rl,2,1.6)
3140RingEffect(BrickColor.new("Really red"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
3141RingEffect(BrickColor.new("Really red"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
3142SphereEffect(BrickColor.new("Really red"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
3143
3144
3145
3146coroutine.resume(coroutine.create(function()
3147for i = 0,1,0.1 do
3148swait()
3149hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8)),0.34)
3150end
3151end))
3152
3153
3154wait(0.05)
3155attackdebounce = false
3156end
3157end
3158end)
3159
3160for i = 0, .03, 0.1 do
3161swait()
3162BlockEffect(BrickColor.new("Really red"), rl.CFrame*CF(0,-1,0), 2, 2, 2, 1.5, 1.5, 1.5, 0.03)
3163root.Velocity = root.CFrame.lookVector * 10
3164rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, -0.5, -0.3) * angles(math.rad(-44), math.rad(-2), math.rad(90)), 0.7)
3165tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(-24), math.rad(-90)), 0.7)
3166RW.C0 = clerp(RW.C0, CFrame.new(1.1, 0.5, -0.6) * angles(math.rad(90), math.rad(0), math.rad(-56)), 0.7)
3167LW.C0 = clerp(LW.C0, CFrame.new(-1.2, 0.6, -0.5) * angles(math.rad(90), math.rad(0), math.rad(56)), 0.7)
3168RH.C0 = clerp(RH.C0, CFrame.new(1, -.6 , 0) * RHCF * angles(math.rad(math.random(-100,-10)), math.rad(0), math.rad(2)), 0.7)
3169LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, 0) * LHCF * angles(math.rad(-34), math.rad(0), math.rad(0)), 0.7)
3170end
3171
3172so("http://roblox.com/asset/?id=1340545854",rl,1,math.random(0.7,1))
3173
3174for i = 0, 0.07, 0.1 do
3175swait()
3176rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0.7, -0.3) * angles(math.rad(-32), math.rad(-2), math.rad(90)), 0.2)
3177tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(-17), math.rad(-90)), 0.2)
3178RW.C0 = clerp(RW.C0, CFrame.new(1.1, 0.5, -0.6) * angles(math.rad(90), math.rad(0), math.rad(-56)), 0.3)
3179LW.C0 = clerp(LW.C0, CFrame.new(-1.2, 0.6, -0.5) * angles(math.rad(90), math.rad(0), math.rad(56)), 0.3)
3180RH.C0 = clerp(RH.C0, CFrame.new(1, .62 , -0.3) * RHCF * angles(math.rad(-40), math.rad(0), math.rad(2)), 0.2)
3181LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, 0) * LHCF * angles(math.rad(-28), math.rad(0), math.rad(0)), 0.2)
3182end
3183con5:disconnect()
3184end
3185
3186for i = 0, 1.65, 0.1 do
3187swait()
3188root.Velocity = root.CFrame.lookVector * 0
3189SphereEffect(BrickColor.new("Really red"),rl.CFrame*angles(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,5,1,.05,4,.05,0.03)
3190rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0.7, -0.3) * angles(math.rad(-32), math.rad(-2), math.rad(90)), 0.2)
3191tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(-17), math.rad(-90)), 0.2)
3192RW.C0 = clerp(RW.C0, CFrame.new(1.1, 0.5, -0.6) * angles(math.rad(90), math.rad(0), math.rad(-56)), 0.3)
3193LW.C0 = clerp(LW.C0, CFrame.new(-1.2, 0.6, -0.5) * angles(math.rad(90), math.rad(0), math.rad(56)), 0.3)
3194RH.C0 = clerp(RH.C0, CFrame.new(1, .62 , -0.3) * RHCF * angles(math.rad(-40), math.rad(0), math.rad(2)), 0.2)
3195LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, 0) * LHCF * angles(math.rad(-28), math.rad(0), math.rad(0)), 0.2)
3196end
3197
3198con5=hum.Touched:connect(function(hit)
3199if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
3200if attackdebounce == false then
3201attackdebounce = true
3202coroutine.resume(coroutine.create(function()
3203for i = 0,1.5,0.1 do
3204swait()
3205--hit.Parent.Head.CFrame = root.CFrame * CFrame.new(0,1.1,-1.8)
3206end
3207end))
3208so("http://roblox.com/asset/?id=636494529",rl,2,.63)
3209RingEffect(BrickColor.new("Really red"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
3210RingEffect(BrickColor.new("Really red"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,.2,2,.2,0.06)
3211SphereEffect(BrickColor.new("Really red"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,3,3,3,0.06)
3212
3213
3214coroutine.resume(coroutine.create(function()
3215for i = 0,1,0.1 do
3216swait()
3217hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8)),0.34)
3218end
3219end))
3220
3221
3222wait(0.05)
3223attackdebounce = false
3224end
3225end
3226end)
3227
3228so("http://www.roblox.com/asset/?id=1452040709", RightLeg, 1, 1.4)
3229SphereEffect(BrickColor.new("Really red"),rl.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,38,38,38,0.08)
3230
3231for i = 0, 2, 0.1 do
3232swait()
3233--BlockEffect(BrickColor.new("Really red"), rl.CFrame*CF(0,-1,0), 2, 2, 2, 1.5, 1.5, 1.5, 0.03)
3234rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, -0.5, -0.3) * angles(math.rad(-32), math.rad(-2), math.rad(90)), 0.2)
3235tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(0), math.rad(-17), math.rad(-90)), 0.2)
3236RW.C0 = clerp(RW.C0, CFrame.new(1.1, 0.5, -0.6) * angles(math.rad(90), math.rad(0), math.rad(-56)), 0.3)
3237LW.C0 = clerp(LW.C0, CFrame.new(-1.2, 0.6, -0.5) * angles(math.rad(90), math.rad(0), math.rad(56)), 0.3)
3238RH.C0 = clerp(RH.C0, CFrame.new(1, -.6 , 0.2) * RHCF * angles(math.rad(-50), math.rad(0), math.rad(2)), 0.2)
3239LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.7, 0) * LHCF * angles(math.rad(-28), math.rad(0), math.rad(0)), 0.2)
3240end
3241SphereEffect(BrickColor.new("Really red"),tors.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,8,8,8,0.04)
3242
3243wait(0.25)
3244con5:Disconnect()
3245
3246
3247
3248
3249con5=hum.Touched:connect(function(hit)
3250if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
3251if attackdebounce == false then
3252attackdebounce = true
3253
3254so("http://roblox.com/asset/?id=565207203",ll,7,0.63)
3255
3256RingEffect(BrickColor.new("Really red"),ll.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,2.2,6,2.2,0.04)
3257RingEffect(BrickColor.new("Really red"),ll.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,2.2,6,2.2,0.04)
3258SphereEffect(BrickColor.new("Really red"),ll.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,8,8,8,0.04)
3259SpecialEffect(BrickColor.new("Really red"),ll.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,8,8,8,0.04)
3260SphereEffect(BrickColor.new("Really red"),ll.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,5,18,5,0.04)
3261WaveEffect(BrickColor.new("Really red"),ll.CFrame*angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)),1,5,1,1.5,16,1.5,0.04)
3262
3263coroutine.resume(coroutine.create(function()
3264for i = 0,1,0.1 do
3265swait()
3266hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8)),0.24)
3267end
3268end))
3269
3270wait(0.06)
3271attackdebounce = false
3272
3273end
3274end
3275end)
3276
3277coroutine.resume(coroutine.create(function()
3278while ultra == true do
3279swait()
3280root.CFrame = root.CFrame*CFrame.new(math.random(-3,3),math.random(-2,2),math.random(-3,3))
3281end
3282end))
3283
3284
3285so("http://www.roblox.com/asset/?id=158475221", RightLeg, 1, 1.3)
3286for i = 1,3 do
3287for i = 0, 9.14, 0.45 do
3288swait()
3289root.Velocity = root.CFrame.lookVector * 30
3290BlockEffect(BrickColor.new("Really red"), ll.CFrame*CF(0,-1,0), 2, 2, 2, 3.5, 3.5, 3.5, 0.05)
3291rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, -0.87) * angles(math.rad(8), math.rad(8), math.rad(0-94*i)), 0.35)
3292tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(12), math.rad(0), math.rad(24)), 0.35)
3293RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(12), math.rad(0), math.rad(62)), 0.35)
3294LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.3, 0) * angles(math.rad(12), math.rad(0), math.rad(-23)), 0.35)
3295RH.C0 = clerp(RH.C0, CFrame.new(1, -0.17, -0.4) * RHCF * angles(math.rad(7), math.rad(0), math.rad(4)), 0.35)
3296LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.13, -0.6) * LHCF * angles(math.rad(-64-7*i), math.rad(0), math.rad(0-9*i)), 0.35)
3297end
3298end
3299
3300
3301for i = 1,3 do
3302for i = 0, 11.14, 0.45 do
3303swait()
3304root.Velocity = root.CFrame.lookVector * 30
3305BlockEffect(BrickColor.new("Really red"), ll.CFrame*CF(0,-1,0), 2, 2, 2, 3.5, 3.5, 3.5, 0.05)
3306rootj.C0 = clerp(rootj.C0, RootCF * CFrame.new(0, 0, -0.87) * angles(math.rad(-21-30*i), math.rad(8+10*i), math.rad(0-110*i)), 0.35)
3307tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(math.rad(12), math.rad(0), math.rad(24)), 0.35)
3308RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(12), math.rad(0), math.rad(62)), 0.35)
3309LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.3, 0) * angles(math.rad(12), math.rad(0), math.rad(-23)), 0.35)
3310RH.C0 = clerp(RH.C0, CFrame.new(1, -0.17, -0.4) * RHCF * angles(math.rad(27), math.rad(0), math.rad(74)), 0.35)
3311LH.C0 = clerp(LH.C0, CFrame.new(-1, -0.13, -0.6) * LHCF * angles(math.rad(-34-2*i), math.rad(0), math.rad(0-9*i)), 0.35)
3312end
3313
3314
3315
3316end
3317so("http://www.roblox.com/asset/?id=197161452", char, 0.5, 0.8)
3318con5:disconnect()
3319
3320
3321end -- combo hit end
3322attack = false
3323ultra = false
3324u:disconnect()
3325
3326end
3327
3328
3329
3330
3331-------------------------------------------------------
3332--End Attacks N Stuff--
3333-------------------------------------------------------
3334mouse.KeyDown:connect(function(key)
3335if string.byte(key) == 48 then
3336Swing = 2
3337hum.WalkSpeed = 24.82
3338end
3339end)
3340mouse.KeyUp:connect(function(key)
3341if string.byte(key) == 48 then
3342Swing = 1
3343hum.WalkSpeed = 8
3344end
3345end)
3346
3347
3348
3349
3350
3351
3352
3353mouse.Button1Down:connect(function()
3354if attack==false then
3355if attacktype==1 then
3356attack=true
3357attacktype=2
3358attackone()
3359elseif attacktype==2 then
3360attack=true
3361attacktype=3
3362attacktwo()
3363elseif attacktype==3 then
3364attack=true
3365attacktype=4
3366attackthree()
3367elseif attacktype==4 then
3368attack=true
3369attacktype=1
3370attackfour()
3371end
3372end
3373end)
3374
3375
3376
3377
3378mouse.KeyDown:connect(function(key)
3379if key == 'e' and attack == false and cankick == true and cooldown == false then
3380quickkick()
3381cooldown = true
3382
3383coroutine.resume(coroutine.create(function()
3384wait(2)
3385cooldown = false
3386end))
3387
3388
3389
3390end
3391end)
3392
3393
3394
3395
3396
3397
3398
3399
3400mouse.KeyDown:connect(function(key)
3401if attack == false then
3402if key == 't' then
3403Taunt()
3404elseif key == 'f' then
3405Hyperkickcombo()
3406elseif key == 'r' then
3407Galekicks()
3408end
3409end
3410end)
3411
3412-------------------------------------------------------
3413--Start Animations--
3414-------------------------------------------------------
3415print("By Makhail07 and KillerDarkness0105")
3416print("Basic Animations by Makhail07")
3417print("Attack Animations by KillerDarkness0105")
3418print("This is pretty much our final script together")
3419print("--------------------------------")
3420print("Attacks")
3421print("E in air: Quick Kicks")
3422print("Left Mouse: 4 click combo")
3423print("F: Hyper Kicks")
3424print("R: Gale Kicks, Spam R if your combo is over 150 to do an ultra combo")
3425print("--------------------------------")
3426while true do
3427swait()
3428sine = sine + change
3429local torvel = (root.Velocity * Vector3.new(1, 0, 1)).magnitude
3430local velderp = root.Velocity.y
3431hitfloor, posfloor = rayCast(root.Position, CFrame.new(root.Position, root.Position - Vector3.new(0, 1, 0)).lookVector, 4* Player_Size, char)
3432
3433if hitfloor == nil then
3434cankick = true
3435else
3436cankick = false
3437end
3438
3439
3440if equipped == true or equipped == false then
3441if attack == false then
3442idle = idle + 1
3443else
3444idle = 0
3445end
3446if 1 < root.Velocity.y and hitfloor == nil then
3447Anim = "Jump"
3448if attack == false then
3449hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
3450rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1 * Cos(sine / 20)* Player_Size) * angles(Rad(-16), Rad(0), Rad(0)), 0.15)
3451neck.C0 = clerp(neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(10 - 2.5 * Sin(sine / 30)), Rad(0), Rad(0)), 0.1)
3452RH.C0 = clerp(RH.C0, CF(1* Player_Size, -.2 - 0.1 * Cos(sine / 20)* Player_Size, -.3* Player_Size) * RHCF * angles(Rad(-2.5), Rad(0), Rad(0)), 0.15)
3453LH.C0 = clerp(LH.C0, CF(-1* Player_Size, -.9 - 0.1 * Cos(sine / 20), -.5* Player_Size) * LHCF * angles(Rad(-2.5), Rad(0), Rad(0)), 0.15)
3454RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.02 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(25), Rad(-.6), Rad(13 + 4.5 * Sin(sine / 20))), 0.1)
3455LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.02 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(25), Rad(-.6), Rad(-13 - 4.5 * Sin(sine / 20))), 0.1)
3456end
3457elseif -1 > root.Velocity.y and hitfloor == nil then
3458Anim = "Fall"
3459if attack == false then
3460hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
3461rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1 * Cos(sine / 20)* Player_Size) * angles(Rad(24), Rad(0), Rad(0)), 0.15)
3462neck.C0 = clerp(neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(10 - 2.5 * Sin(sine / 30)), Rad(0), Rad(0)), 0.1)
3463RH.C0 = clerp(RH.C0, CF(1* Player_Size, -1 - 0.1 * Cos(sine / 20)* Player_Size, -.3* Player_Size) * RHCF * angles(Rad(-3.5), Rad(0), Rad(0)), 0.15)
3464LH.C0 = clerp(LH.C0, CF(-1* Player_Size, -.8 - 0.1 * Cos(sine / 20)* Player_Size, -.3* Player_Size) * LHCF * angles(Rad(-3.5), Rad(0), Rad(0)), 0.15)
3465RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.02 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(65), Rad(-.6), Rad(45 + 4.5 * Sin(sine / 20))), 0.1)
3466LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.02 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(55), Rad(-.6), Rad(-45 - 4.5 * Sin(sine / 20))), 0.1)
3467end
3468elseif torvel < 1 and hitfloor ~= nil then
3469Anim = "Idle"
3470change = 1
3471if attack == false then
3472hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
3473rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1* Player_Size * Cos(sine / 12)) * angles(Rad(0), Rad(0), Rad(20)), 0.1)
3474tors.Neck.C0 = clerp(tors.Neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(-6.5 * Sin(sine / 12)), Rad(0), Rad(-20)), 0.1)
3475RH.C0 = clerp(RH.C0, CF(1* Player_Size, -0.9 - 0.1 * Cos(sine / 12)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(75), Rad(0)) * angles(Rad(-12.5), Rad(0), Rad(0)), 0.1)
3476LH.C0 = clerp(LH.C0, CF(-1* Player_Size, -0.9 - 0.1 * Cos(sine / 12)* Player_Size, -0.2* Player_Size) * angles(Rad(0), Rad(-65), Rad(0)) * angles(Rad(-6.5), Rad(0), Rad(6)), 0.1)
3477RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.2 + 0.05 * Sin(sine / 12)* Player_Size, 0* Player_Size) * angles(Rad(110), Rad(6 + 6.5 * Sin(sine / 12)), Rad(25)), 0.1)
3478LW.C0 = clerp(LW.C0, CF(-1.3* Player_Size, 0.2 + 0.05 * Sin(sine / 12)* Player_Size, -0.5* Player_Size) * angles(Rad(110), Rad(6 - 6.5 * Sin(sine / 12)), Rad(25)), 0.1)
3479end
3480elseif torvel > 2 and torvel < 22 and hitfloor ~= nil then
3481Anim = "Walk"
3482change = 1
3483if attack == false then
3484hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
3485rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.175 + 0.025 * Cos(sine / 3.5) + -Sin(sine / 3.5) / 7* Player_Size) * angles(Rad(3 - 2.5 * Cos(sine / 3.5)), Rad(0) - root.RotVelocity.Y / 75, Rad(8 * Cos(sine / 7))), 0.15)
3486tors.Neck.C0 = clerp(tors.Neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(-1), Rad(0), Rad(0) - hed.RotVelocity.Y / 15), 0.15)
3487RH.C0 = clerp(RH.C0, CF(1* Player_Size, -0.8 - 0.5 * Cos(sine / 7) / 2* Player_Size, 0.6 * Cos(sine / 7) / 2* Player_Size) * angles(Rad(-15 - 15 * Cos(sine / 7)) - rl.RotVelocity.Y / 75 + -Sin(sine / 7) / 2.5, Rad(90 - 10 * Cos(sine / 7)), Rad(0)) * angles(Rad(0 + 2 * Cos(sine / 7)), Rad(0), Rad(0)), 0.3)
3488LH.C0 = clerp(LH.C0, CF(-1* Player_Size, -0.8 + 0.5 * Cos(sine / 7) / 2* Player_Size, -0.6 * Cos(sine / 7) / 2* Player_Size) * angles(Rad(-15 + 15 * Cos(sine / 7)) + ll.RotVelocity.Y / 75 + Sin(sine / 7) / 2.5, Rad(-90 - 10 * Cos(sine / 7)), Rad(0)) * angles(Rad(0 - 2 * Cos(sine / 7)), Rad(0), Rad(0)), 0.3)
3489RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.05 * Sin(sine / 7)* Player_Size, 0* Player_Size) * angles(Rad(56) * Cos(sine / 7) , Rad(10 * Cos(sine / 7)), Rad(6) - ra.RotVelocity.Y / 75), 0.1)
3490LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.05 * Sin(sine / 7)* Player_Size, 0* Player_Size) * angles(Rad(-56) * Cos(sine / 7) , Rad(10 * Cos(sine / 7)) , Rad(-6) + la.RotVelocity.Y / 75), 0.1)
3491end
3492elseif torvel >= 22 and hitfloor ~= nil then
3493Anim = "Sprint"
3494change = 1.35
3495if attack == false then
3496hum.CameraOffset = hum.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
3497rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.175 + 0.025 * Cos(sine / 3.5) + -Sin(sine / 3.5) / 7* Player_Size) * angles(Rad(26 - 4.5 * Cos(sine / 3.5)), Rad(0) - root.RotVelocity.Y / 75, Rad(15 * Cos(sine / 7))), 0.15)
3498tors.Neck.C0 = clerp(tors.Neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(-8.5 - 2 * Sin(sine / 20)), Rad(0), Rad(0) - hed.RotVelocity.Y / 15), 0.15)
3499RH.C0 = clerp(RH.C0, CF(1* Player_Size, -0.925 - 0.5 * Cos(sine / 7) / 2* Player_Size, 0.7 * Cos(sine / 7) / 2* Player_Size) * angles(Rad(-15 - 55 * Cos(sine / 7)) - rl.RotVelocity.Y / 75 + -Sin(sine / 7) / 2.5, Rad(90 - 0.1 * Cos(sine / 7)), Rad(0)) * angles(Rad(0 + 0.1 * Cos(sine / 7)), Rad(0), Rad(0)), 0.3)
3500LH.C0 = clerp(LH.C0, CF(-1* Player_Size, -0.925 + 0.5 * Cos(sine / 7) / 2* Player_Size, -0.7 * Cos(sine / 7) / 2* Player_Size) * angles(Rad(-15 + 55 * Cos(sine / 7)) + ll.RotVelocity.Y / 75 + Sin(sine / 7) / 2.5, Rad(-90 - 0.1 * Cos(sine / 7)), Rad(0)) * angles(Rad(0 - 0.1 * Cos(sine / 7)), Rad(0), Rad(0)), 0.3)
3501RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.05 * Sin(sine / 30)* Player_Size, 0.34 * Cos(sine / 7* Player_Size)) * angles(Rad(-65) , Rad(0), Rad(13) - ra.RotVelocity.Y / 75), 0.15)
3502LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.05 * Sin(sine / 30)* Player_Size, -0.34 * Cos(sine / 7* Player_Size)) * angles(Rad(-65) , Rad(0) , Rad(-13) + la.RotVelocity.Y / 75), 0.15)
3503end
3504end
3505end
3506Music.SoundId = "rbxassetid://"..SONG
3507Music.Looped = true
3508Music.Pitch = 1
3509Music.Volume = 0.7
3510Music.Parent = tors
3511Music:Resume()
3512if 0 < #Effects then
3513for e = 1, #Effects do
3514if Effects[e] ~= nil then
3515local Thing = Effects[e]
3516if Thing ~= nil then
3517local Part = Thing[1]
3518local Mode = Thing[2]
3519local Delay = Thing[3]
3520local IncX = Thing[4]
3521local IncY = Thing[5]
3522local IncZ = Thing[6]
3523if 1 >= Thing[1].Transparency then
3524if Thing[2] == "Block1" then
3525Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
3526local Mesh = Thing[1].Mesh
3527Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3528Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3529elseif Thing[2] == "Block2" then
3530Thing[1].CFrame = Thing[1].CFrame + Vector3.new(0, 0, 0)
3531local Mesh = Thing[7]
3532Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3533Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3534elseif Thing[2] == "Block3" then
3535Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) + Vector3.new(0, 0.15, 0)
3536local Mesh = Thing[7]
3537Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3538Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3539elseif Thing[2] == "Cylinder" then
3540local Mesh = Thing[1].Mesh
3541Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3542Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3543elseif Thing[2] == "Blood" then
3544local Mesh = Thing[7]
3545Thing[1].CFrame = Thing[1].CFrame * Vector3.new(0, 0.5, 0)
3546Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3547Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3548elseif Thing[2] == "Elec" then
3549local Mesh = Thing[1].Mesh
3550Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9])
3551Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3552elseif Thing[2] == "Disappear" then
3553Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3554elseif Thing[2] == "Shatter" then
3555Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3556Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
3557Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
3558Thing[6] = Thing[6] + Thing[5]
3559end
3560else
3561Part.Parent = nil
3562table.remove(Effects, e)
3563end
3564end
3565end
3566end
3567end
3568end
3569-------------------------------------------------------
3570--End Animations And Script--
3571 -------------------------------------------------------