View difference between Paste ID: Xxucingp and qGyrBDhx
SHOW: | | - or go back to the newest paste.
1
Player=game:GetService("Players").LocalPlayer
2
Character=Player.Character 
3
PlayerGui=Player.PlayerGui 
4
Backpack=Player.Backpack 
5
Torso=Character.Torso 
6
Head=Character.Head 
7
Humanoid=Character.Humanoid
8
LeftArm=Character["Left Arm"] 
9
LeftLeg=Character["Left Leg"] 
10
RightArm=Character["Right Arm"] 
11
RightLeg=Character["Right Leg"] 
12
LS=Torso["Left Shoulder"] 
13
LH=Torso["Left Hip"] 
14
RS=Torso["Right Shoulder"] 
15
RH=Torso["Right Hip"] 
16
Neck=Torso.Neck
17
it=Instance.new
18
vt=Vector3.new
19
cf=CFrame.new
20
euler=CFrame.fromEulerAnglesXYZ
21
angles=CFrame.Angles
22
necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
23
necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
24
LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
25
LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
26
RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
27
RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
28
RootPart=Character.HumanoidRootPart
29
RootJoint=RootPart.RootJoint
30
RootCF=euler(-1.57,0,3.14)
31
attack = false 
32
attackdebounce = false 
33
MMouse=nil
34
combo=0
35
mana=0
36
local idle=0
37
local Anim="Idle"
38
local cansleigh=true
39
--player 
40
player=nil 
41
--save shoulders 
42
RSH, LSH=nil, nil 
43
--welds 
44
RW, LW=Instance.new("Weld"), Instance.new("Weld") 
45
RW.Name="Right Shoulder" LW.Name="Left Shoulder"
46
LH=Torso["Left Hip"]
47
RH=Torso["Right Hip"]
48
local Effects={}
49
local GiftbagGifts={}
50
 
51
function swait(num)
52
if num==0 or num==nil then
53
game:service'RunService'.RenderStepped:wait()
54
else
55
for i=0,num do
56
game:service'RunService'.RenderStepped:wait()
57
end
58
end
59
end
60
 
61
if Character:findFirstChild("Elf",true) ~= nil then 
62
Character:findFirstChild("Elf",true).Parent = nil 
63
end 
64
if Player.PlayerGui:findFirstChild("WeaponGUI",true) ~= nil then 
65
Player.PlayerGui:findFirstChild("WeaponGUI",true).Parent = nil 
66
end 
67
 
68
 
69
function NoOutline(Part)
70
Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
71
end
72
 
73
function part(formfactor,parent,reflectance,transparency,brickcolor,name,size)
74
local fp=it("Part")
75
fp.formFactor=formfactor 
76
fp.Parent=parent
77
fp.Reflectance=reflectance
78
fp.Transparency=transparency
79
fp.CanCollide=false 
80
fp.Locked=true
81
fp.BrickColor=brickcolor
82
fp.Name=name
83
fp.Size=size
84
fp.Position=Torso.Position 
85
NoOutline(fp)
86
fp.Material="SmoothPlastic"
87
fp:BreakJoints()
88
return fp 
89
end 
90
 
91
function mesh(Mesh,part,meshtype,meshid,offset,scale)
92
local mesh=it(Mesh) 
93
mesh.Parent=part
94
if Mesh=="SpecialMesh" then
95
mesh.MeshType=meshtype
96
mesh.MeshId=meshid
97
end
98
mesh.Offset=offset
99
mesh.Scale=scale
100
return mesh
101
end
102
 
103
function weld(parent,part0,part1,c0)
104
local weld=it("Weld") 
105
weld.Parent=parent
106
weld.Part0=part0 
107
weld.Part1=part1 
108
weld.C0=c0
109
return weld
110
end
111
 
112
GiftTextures1={
113
 "http://www.roblox.com/asset/?id=67108526",
114
 "http://www.roblox.com/asset/?id=66892127",
115
 "http://www.roblox.com/asset/?id=67156256",
116
 "http://www.roblox.com/asset/?id=22731874",
117
 "http://www.roblox.com/asset/?id=66888912",
118
 "http://www.roblox.com/asset/?id=138053709",
119
 "http://www.roblox.com/asset/?id=137677423",
120
 "http://www.roblox.com/asset/?id=137441786",
121
 "http://www.roblox.com/asset/?id=67156688",
122
 "http://www.roblox.com/asset/?id=67156487",
123
 "http://www.roblox.com/asset/?id=67108654",
124
 "http://www.roblox.com/asset/?id=67108786",
125
 "http://www.roblox.com/asset/?id=99262324",
126
 "http://www.roblox.com/asset/?id=99262600",
127
 "http://www.roblox.com/asset/?id=189783253",
128
 "http://www.roblox.com/asset/?id=137441880",
129
 "http://www.roblox.com/asset/?id=67099135",
130
 "http://www.roblox.com/asset/?id=137729610",
131
 "http://www.roblox.com/asset/?id=138219638",
132
 "http://www.roblox.com/asset/?id=162200169",
133
 "http://www.roblox.com/asset/?id=66888967",
134
 "http://www.roblox.com/asset/?id=66895727",
135
 "http://www.roblox.com/asset/?id=66895855",
136
 "http://www.roblox.com/asset/?id=67108896",
137
 "http://www.roblox.com/asset/?id=99262911",
138
 "http://www.roblox.com/asset/?id=100205893",
139
 "http://www.roblox.com/asset/?id=100372723",
140
 "http://www.roblox.com/asset/?id=189748284",
141
 "http://www.roblox.com/asset/?id=137676972",
142
 "http://www.roblox.com/asset/?id=137441880",
143
 "http://www.roblox.com/asset/?id=138376505",
144
 "http://www.roblox.com/asset/?id=138219638",
145
 "http://www.roblox.com/asset/?id=138135295",
146
 "http://www.roblox.com/asset/?id=137611947",
147
 "http://www.roblox.com/asset/?id=137677423",
148
 "http://www.roblox.com/asset/?id=137729610",
149
 "http://www.roblox.com/asset/?id=137384483",
150
 "http://www.roblox.com/asset/?id=137441786",
151
 "http://www.roblox.com/asset/?id=138293850",
152
 "http://www.roblox.com/asset/?id=138053709",
153
 "http://www.roblox.com/asset/?id=136798527",
154
 "http://www.roblox.com/asset/?id=99902032",
155
}
156
GiftTextures2={
157
 "http://www.roblox.com/asset/?id=41510057",
158
 "http://www.roblox.com/asset/?id=1238797",
159
 "http://www.roblox.com/asset/?id=10090366",
160
 "http://www.roblox.com/asset/?id=1237427",
161
 "http://www.roblox.com/asset/?id=1247867",
162
 "http://www.roblox.com/asset/?id=18986139",
163
 "http://www.roblox.com/asset/?id=19906004",
164
 "http://www.roblox.com/asset/?id=40867788",
165
 "http://www.roblox.com/asset/?id=1247871",
166
 "http://www.roblox.com/asset/?id=1239423",
167
 "http://www.roblox.com/asset/?id=11596767",
168
 "http://www.roblox.com/asset/?id=1247866",
169
 "http://www.roblox.com/asset/?id=1246569",
170
 "http://www.roblox.com/asset/?id=1239715",
171
 "http://www.roblox.com/asset/?id=6125462",
172
 "http://www.roblox.com/asset/?id=6202189",
173
 "http://www.roblox.com/asset/?id=34115626",
174
 "http://www.roblox.com/asset/?id=6313630",
175
 "http://www.roblox.com/asset/?id=6024329",
176
 "http://www.roblox.com/asset/?id=6020478",
177
 "http://www.roblox.com/asset/?id=6144194",
178
 "http://www.roblox.com/asset/?id=1459021",
179
 "http://www.roblox.com/asset/?id=18824013",
180
}
181
 
182
function Giftify(Part,x,y,z)
183
if Part.className=="Part" then
184
if math.random(1,2)==1 then
185
Texture=math.random(1,#GiftTextures1) --FileMesh of gift 1 is weird :V
186
local giftmsh=mesh("SpecialMesh",Part,"FileMesh","http://www.roblox.com/asset/?id=66887781",vt(0,0,0),vt(x,y,z))
187
giftmsh.TextureId=GiftTextures1[Texture]
188
else
189
Texture=math.random(1,#GiftTextures2)
190
local giftmsh=mesh("SpecialMesh",Part,"FileMesh","http://www.roblox.com/asset/?id=1237207",vt(0,0,0),vt(x,y,z))
191
giftmsh.TextureId=GiftTextures2[Texture]
192
end
193
end
194
end
195
 
196
local modelzorz=Instance.new("Model") 
197
modelzorz.Parent=Character 
198
modelzorz.Name="Elf" 
199
 
200
local prt1=part(3,modelzorz,0,0,BrickColor.new("Black"),"Hat",vt())
201
local prt2=part(3,modelzorz,0,0,BrickColor.new("Black"),"Bag",vt())
202
local prt3=part(3,modelzorz,0,0,BrickColor.new("Black"),"Gift1",vt())
203
local prt4=part(3,modelzorz,0,0,BrickColor.new("Black"),"Gift2",vt())
204
local prt5=part(3,modelzorz,0,0,BrickColor.new("Black"),"Gift3",vt())
205
local prt6=part(3,modelzorz,0,0,BrickColor.new("Black"),"Gift4",vt())
206
table.insert(GiftbagGifts,prt3)
207
table.insert(GiftbagGifts,prt4)
208
table.insert(GiftbagGifts,prt5)
209
table.insert(GiftbagGifts,prt6)
210
 
211
local msh1=mesh("SpecialMesh",prt1,"FileMesh","http://www.roblox.com/asset/?id=1090610",vt(0,0,0),vt(1,1,1))
212
msh1.TextureId="http://www.roblox.com/asset/?id=42037120"
213
local msh2=mesh("SpecialMesh",prt2,"FileMesh","http://www.roblox.com/asset/?id=19646118",vt(0,0,0),vt(1.5,1.5,1.5))
214
msh2.TextureId="http://www.roblox.com/asset/?id=19646165"
215
Giftify(prt3,1.3,1.3,1.3)
216
Giftify(prt4,1.3,1.3,1.3)
217
Giftify(prt5,1.3,1.3,1.3)
218
Giftify(prt6,1.3,1.3,1.3)
219
 
220
local wld1=weld(prt1,prt1,Head,euler(0,0,0)*cf(0,-.5,0))
221
local wld2=weld(prt2,prt2,Torso,euler(0,1.57,0)*cf(0,.5,-1.5))
222
local wld3=weld(prt3,prt3,prt2,euler(.5,.1,0)*cf(-.2,-1.6,0.3))
223
local wld4=weld(prt4,prt4,prt2,euler(0,.1,.5)*cf(-.2,-1.4,0))
224
local wld5=weld(prt5,prt5,prt2,euler(0,.1,-.3)*cf(.3,-1.6,-.1))
225
local wld6=weld(prt6,prt6,prt2,euler(-.4,-.2,0)*cf(0,-1.7,-.4))
226
 
227
local hitbox=part(3,nil,0,1,BrickColor.new("Black"),"Hitbox",vt(1,1,1))
228
hitbox.Anchored=false
229
 
230
if (script.Parent.className~="HopperBin") then 
231
Tool=Instance.new("HopperBin") 
232
Tool.Parent=Backpack 
233
Tool.Name="Christmas Spirit" 
234
script.Parent=Tool 
235
end 
236
Bin=script.Parent 
237
 
238
local bodvel=Instance.new("BodyVelocity")
239
local bg=Instance.new("BodyGyro")
240
 
241
so = function(id,par,vol,pit) 
242
coroutine.resume(coroutine.create(function()
243
local sou = Instance.new("Sound",par or workspace)
244
sou.Volume=vol
245
sou.Pitch=pit or 1
246
sou.SoundId=id
247
swait() 
248
sou:play() 
249
game:GetService("Debris"):AddItem(sou,6)
250
end))
251
end
252
 
253
function clerp(a,b,t) 
254
local qa = {QuaternionFromCFrame(a)}
255
local qb = {QuaternionFromCFrame(b)} 
256
local ax, ay, az = a.x, a.y, a.z 
257
local bx, by, bz = b.x, b.y, b.z
258
local _t = 1-t
259
return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t)) 
260
end 
261
 
262
function QuaternionFromCFrame(cf) 
263
local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components() 
264
local trace = m00 + m11 + m22 
265
if trace > 0 then 
266
local s = math.sqrt(1 + trace) 
267
local recip = 0.5/s 
268
return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5 
269
else 
270
local i = 0 
271
if m11 > m00 then
272
i = 1
273
end
274
if m22 > (i == 0 and m00 or m11) then 
275
i = 2 
276
end 
277
if i == 0 then 
278
local s = math.sqrt(m00-m11-m22+1) 
279
local recip = 0.5/s 
280
return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip 
281
elseif i == 1 then 
282
local s = math.sqrt(m11-m22-m00+1) 
283
local recip = 0.5/s 
284
return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip 
285
elseif i == 2 then 
286
local s = math.sqrt(m22-m00-m11+1) 
287
local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip 
288
end 
289
end 
290
end
291
 
292
function QuaternionToCFrame(px, py, pz, x, y, z, w) 
293
local xs, ys, zs = x + x, y + y, z + z 
294
local wx, wy, wz = w*xs, w*ys, w*zs 
295
local xx = x*xs 
296
local xy = x*ys 
297
local xz = x*zs 
298
local yy = y*ys 
299
local yz = y*zs 
300
local zz = z*zs 
301
return CFrame.new(px, py, pz,1-(yy+zz), xy - wz, xz + wy,xy + wz, 1-(xx+zz), yz - wx, xz - wy, yz + wx, 1-(xx+yy)) 
302
end
303
 
304
function QuaternionSlerp(a, b, t) 
305
local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4] 
306
local startInterp, finishInterp; 
307
if cosTheta >= 0.0001 then 
308
if (1 - cosTheta) > 0.0001 then 
309
local theta = math.acos(cosTheta) 
310
local invSinTheta = 1/math.sin(theta) 
311
startInterp = math.sin((1-t)*theta)*invSinTheta 
312
finishInterp = math.sin(t*theta)*invSinTheta  
313
else 
314
startInterp = 1-t 
315
finishInterp = t 
316
end 
317
else 
318
if (1+cosTheta) > 0.0001 then 
319
local theta = math.acos(-cosTheta) 
320
local invSinTheta = 1/math.sin(theta) 
321
startInterp = math.sin((t-1)*theta)*invSinTheta 
322
finishInterp = math.sin(t*theta)*invSinTheta 
323
else 
324
startInterp = t-1 
325
finishInterp = t 
326
end 
327
end 
328
return a[1]*startInterp + b[1]*finishInterp, a[2]*startInterp + b[2]*finishInterp, a[3]*startInterp + b[3]*finishInterp, a[4]*startInterp + b[4]*finishInterp 
329
end
330
 
331
function hideanim() 
332
equipped=false
333
for i=0,1,0.1 do
334
swait()
335
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.4)
336
Torso.Neck.C0=clerp(Torso.Neck.C0,necko*euler(0,0,0),.4)
337
Torso.Neck.C1=clerp(Torso.Neck.C1,necko2*euler(0,0,0),.4)
338
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(0,0,0),.4)
339
RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
340
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(0,0,0),.4)
341
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
342
RH.C0=clerp(RH.C0,RHC0,.2)
343
RH.C1=clerp(RH.C1,RHC1,.2)
344
LH.C0=clerp(LH.C0,LHC0,.2)
345
LH.C1=clerp(LH.C1,LHC1,.2)
346
end
347
end 
348
 
349
function equipanim() 
350
equipped=true
351
for i=0,1,0.1 do
352
swait()
353
Neck.C0=clerp(Neck.C0,necko*euler(0,0,0),.3)
354
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
355
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(0,0,0.1),.3)
356
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
357
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(0,0,-0.1),.3)
358
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
359
end
360
end 
361
 
362
function attackone()
363
attack=true
364
for i=0,1,0.1 do
365
swait()
366
Neck.C0=clerp(Neck.C0,necko*euler(-.3,0,-.4),.3)
367
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,-.5),.3)
368
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(3.8,0,-0.4),.3)
369
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
370
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(0,0,-0.3),.3)
371
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
372
end
373
num=math.random(1,#GiftbagGifts)
374
GiftbagGifts[num].Mesh.Parent=nil
375
Giftify(GiftbagGifts[num],1.3,1.3,1.3)
376
local giftprt=part(3,modelzorz,0,0,BrickColor.new("Black"),"Gift",vt(1.3,1.3,1.3))
377
Giftify(giftprt,1.3,1.3,1.3)
378
local gwld=weld(giftprt,giftprt,RightArm,euler(1.57,0,0)*cf(0,1.3,0))
379
for i=0,1,0.15 do
380
swait()
381
Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.5),.3)
382
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,.5),.3)
383
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.57,0,0.5),.3)
384
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
385
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.4,0,-0.3),.3)
386
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
387
end
388
so("http://roblox.com/asset/?id=169445092",RightArm,1,math.random(80,120)/100) 
389
gwld.Parent=nil
390
giftprt.Parent=workspace
391
giftprt.CanCollide=true
392
local TheHit=MMouse.Hit.p
393
local MouseLook=cf((RootPart.Position+TheHit)/2,TheHit)
394
--giftprt.Velocity=RootPart.CFrame.lookVector*100
395
giftprt.Velocity=MouseLook.lookVector*160
396
game:GetService("Debris"):AddItem(giftprt,5)
397
Boom(giftprt,100,2,5,10,true)
398
for i=0,1,0.1 do
399
swait()
400
Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.7),.3)
401
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,.7),.3)
402
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1,0,-.2),.3)
403
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
404
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.4,0,-0.3),.3)
405
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
406
end
407
attack=false
408
end
409
 
410
function attacktwo()
411
attack=true
412
for i=0,1,0.1 do
413
swait()
414
Neck.C0=clerp(Neck.C0,necko*euler(-.3,0,.4),.3)
415
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,.5),.3)
416
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(0,0,0.3),.3)
417
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
418
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(3.8,0,0.4),.3)
419
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
420
end
421
num=math.random(1,#GiftbagGifts)
422
GiftbagGifts[num].Mesh.Parent=nil
423
Giftify(GiftbagGifts[num],1.3,1.3,1.3)
424
local giftprt=part(3,modelzorz,0,0,BrickColor.new("Black"),"Gift",vt(1.3,1.3,1.3))
425
Giftify(giftprt,1.3,1.3,1.3)
426
local gwld=weld(giftprt,giftprt,LeftArm,euler(1.57,0,0)*cf(0,1.3,0))
427
for i=0,1,0.15 do
428
swait()
429
Neck.C0=clerp(Neck.C0,necko*euler(0,0,.5),.3)
430
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,-.5),.3)
431
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.4,0,0.3),.3)
432
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
433
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.57,0,-0.5),.3)
434
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
435
end
436
so("http://roblox.com/asset/?id=169445092",LeftArm,1,math.random(80,120)/100) 
437
gwld.Parent=nil
438
giftprt.Parent=workspace
439
giftprt.CanCollide=true
440
local TheHit=MMouse.Hit.p
441
local MouseLook=cf((RootPart.Position+TheHit)/2,TheHit)
442
--giftprt.Velocity=RootPart.CFrame.lookVector*100
443
giftprt.Velocity=MouseLook.lookVector*160
444
game:GetService("Debris"):AddItem(giftprt,5)
445
Boom(giftprt,100,2,5,10,true)
446
for i=0,1,0.1 do
447
swait()
448
Neck.C0=clerp(Neck.C0,necko*euler(0,0,.7),.3)
449
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,-.7),.3)
450
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.4,0,0.3),.3)
451
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
452
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1,0,-0.2),.3)
453
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
454
end
455
attack=false
456
end
457
 
458
function attackthree()
459
attack=true
460
for i=0,1,0.1 do
461
swait()
462
Neck.C0=clerp(Neck.C0,necko*euler(-.5,0,0),.3)
463
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
464
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(3.8,0,-0.4),.3)
465
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
466
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(3.8,0,0.4),.3)
467
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
468
end
469
num=math.random(1,#GiftbagGifts)
470
GiftbagGifts[num].Mesh.Parent=nil
471
Giftify(GiftbagGifts[num],1.3,1.3,1.3)
472
local giftprt=part(3,modelzorz,0,0,BrickColor.new("Black"),"Gift",vt(2,2,2))
473
Giftify(giftprt,2,2,2)
474
local gwld=weld(giftprt,giftprt,LeftArm,euler(1.57,0,0)*cf(-.8,1.8,0))
475
for i=0,1,0.15 do
476
swait()
477
Neck.C0=clerp(Neck.C0,necko*euler(0,0,0),.3)
478
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
479
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.57,0,-0.4),.3)
480
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
481
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.57,0,0.4),.3)
482
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
483
end
484
so("http://roblox.com/asset/?id=169445092",LeftArm,1,math.random(60,90)/100) 
485
gwld.Parent=nil
486
giftprt.Parent=workspace
487
giftprt.CanCollide=true
488
local TheHit=MMouse.Hit.p
489
local MouseLook=cf((RootPart.Position+TheHit)/2,TheHit)
490
--giftprt.Velocity=RootPart.CFrame.lookVector*100
491
giftprt.Velocity=MouseLook.lookVector*120
492
game:GetService("Debris"):AddItem(giftprt,5)
493
Boom(giftprt,150,4,7,12,true)
494
for i=0,1,0.1 do
495
swait()
496
Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0),.3)
497
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
498
RW.C0=clerp(RW.C0,cf(1.2,0.5,-.3)*euler(1,0,-0.4),.3)
499
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
500
LW.C0=clerp(LW.C0,cf(-1.2,0.5,-.3)*euler(1,0,0.4),.3)
501
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
502
end
503
attack=false
504
end
505
 
506
function Surprise()
507
attack=true
508
for i=0,1,0.1 do
509
swait()
510
Neck.C0=clerp(Neck.C0,necko*euler(-.5,0,0),.3)
511
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
512
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(3.8,0,-0.4),.3)
513
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
514
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(3.8,0,0.4),.3)
515
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
516
end
517
num=math.random(1,#GiftbagGifts)
518
GiftbagGifts[num].Mesh.Parent=nil
519
Giftify(GiftbagGifts[num],1.3,1.3,1.3)
520
Humanoid.WalkSpeed=0
521
so("http://roblox.com/asset/?id=169445092",RightArm,1,math.random(50,80)/100) 
522
local giftprt=part(3,modelzorz,0,0,BrickColor.new("Black"),"Gift",vt(6,6,6))
523
Giftify(giftprt,6,6,6)
524
local gwld=weld(giftprt,giftprt,LeftArm,euler(1.57,0,.4)*cf(-.2,2.5,0))
525
for i=0,1,0.1 do
526
swait()
527
Neck.C0=clerp(Neck.C0,necko*euler(0.2,0,0),.3)
528
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1.5)*euler(0,0,0),.3)
529
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.57,0,-0.4),.3)
530
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
531
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.57,0,0.4),.3)
532
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
533
RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(-1.2,1.57,0),.3)
534
LH.C0=clerp(LH.C0,cf(-1.1,0.4,-0.8)*euler(-0.05,-1.57,0),.3)
535
end
536
Humanoid.WalkSpeed=16
537
gwld.Parent=nil
538
giftprt.Parent=workspace
539
giftprt.CanCollide=true
540
game:GetService("Debris"):AddItem(giftprt,10)
541
Boom(giftprt,300,6,10,20,false)
542
attack=false
543
end
544
 
545
function PartyCannon()
546
attack=true
547
for i=0,1,0.1 do
548
swait()
549
Neck.C0=clerp(Neck.C0,necko*euler(-.5,0,0),.3)
550
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
551
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(3.8,0,-0.4),.3)
552
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
553
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(3.8,0,0.4),.3)
554
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
555
end
556
Humanoid.WalkSpeed=0
557
local cannon=part(3,modelzorz,0,0,BrickColor.new("Bright stone grey"),"Cannon",vt())
558
local cmsh=mesh("SpecialMesh",cannon,"FileMesh","http://www.roblox.com/asset/?id=110153429",vt(0,0,0),vt(1.5,1.5,1.5))
559
local cwld=weld(cannon,cannon,LeftArm,euler(1.57,0,.4)*cf(-0.6,2,-0.5))
560
for i=0,1,0.1 do
561
swait()
562
Neck.C0=clerp(Neck.C0,necko*euler(0.4,0,0),.3)
563
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1.5)*euler(0,0,0),.3)
564
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.57,0,-0.4),.3)
565
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
566
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.57,0,0.4),.3)
567
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
568
RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(-1.2,1.57,0),.3)
569
LH.C0=clerp(LH.C0,cf(-1.1,0.4,-0.8)*euler(-0.05,-1.57,0),.3)
570
end
571
swait(5)
572
so("http://roblox.com/asset/?id=146767803",cannon,1,1) 
573
swait(5)
574
MagicBlock(BrickColor.new("Bright red"),cannon.CFrame,1,1,1,3,3,3,.05,1)
575
Torso.Velocity=RootPart.CFrame.lookVector*-130
576
for i=1,30 do
577
local confetti=part(3,workspace,0,0,BrickColor.Random(),"Confetti",vt())
578
local cmsh=mesh("BlockMesh",confetti,"","",vt(0,0,0),vt(3,1,3))
579
confetti.CFrame=cannon.CFrame*cf(math.random(-300,300)/100,math.random(-300,300)/100,math.random(-300,300)/100)
580
confetti.Velocity=(RootPart.CFrame.lookVector*math.random(40,60))+(vt(math.random(-100,100)/100,1,math.random(-100,100)/100)*math.random(60,80))
581
game:GetService("Debris"):AddItem(confetti,5)
582
end
583
for i=1,10 do
584
num=math.random(100,400)/100
585
local giftprt=part(3,workspace,0,0,BrickColor.new("Black"),"Gift",vt(num,num,num))
586
Giftify(giftprt,num,num,num)
587
giftprt.CFrame=cannon.CFrame*cf(math.random(-300,300)/100,math.random(-300,300)/100,math.random(-300,-100)/100)
588
giftprt.CanCollide=true
589
giftprt.Velocity=(RootPart.CFrame.lookVector*math.random(40,60))+(vt(0,1,0)*math.random(60,80))
590
game:GetService("Debris"):AddItem(giftprt,10)
591
Boom(giftprt,math.random(200,600),num,10,20,false)
592
end
593
--[[for i=1,100 do
594
num=math.random(100,400)/100
595
local giftprt=part(3,workspace,0,0,BrickColor.new("Black"),"Gift",vt(num,num,num))
596
Giftify(giftprt,num,num,num)
597
giftprt.CFrame=cannon.CFrame*cf(math.random(-300,300)/100,math.random(-300,300)/100,math.random(-300,-100)/100)
598
giftprt.CanCollide=true
599
giftprt.Velocity=(RootPart.CFrame.lookVector*math.random(30,80))+(vt(0,1,0)*math.random(60,80))
600
game:GetService("Debris"):AddItem(giftprt,10)
601
Boom(giftprt,math.random(200,600),num,10,20,false)
602
end]]
603
swait(100)
604
cannon.Parent=nil
605
Humanoid.WalkSpeed=16
606
attack=false
607
end
608
 
609
function SnowDay()
610
attack=true
611
Humanoid.WalkSpeed=0
612
local gairo=Instance.new("BodyGyro") 
613
gairo.Parent=RootPart
614
gairo.maxTorque=Vector3.new(4e+005,4e+005,4e+005)*math.huge 
615
gairo.P=20e+003 
616
gairo.cframe=RootPart.CFrame
617
s=Instance.new("Sound")
618
s.Parent=Torso
619
s.Pitch=1
620
s.Volume=1
621
s.SoundId="http://www.roblox.com/asset/?id=19358641"
622
s.Looped=true
623
s:Play()
624
num=0
625
num2=0
626
num3=0
627
CF=RootPart.CFrame
628
local snowfield=part(3,modelzorz,0,1,BrickColor.new("White"),"SnowField",vt())
629
local cmsh=mesh("CylinderMesh",snowfield,"","",vt(0,0,0),vt(300,1,300))
630
snowfield.Anchored=true
631
snowfield.CFrame=cf(RootPart.Position)*cf(0,-3,0)
632
while holdc==true do
633
swait()
634
hitfloor2,posfloor2=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,999,Character)
635
if hitfloor2~=nil then
636
snowfield.CFrame=cf(posfloor2)
637
end
638
if snowfield.Transparency>=.85 then
639
snowfield.Transparency=snowfield.Transparency-0.0001
640
end
641
Neck.C0=clerp(Neck.C0,necko*euler(-.6,0,0),.3)
642
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
643
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(3,0,.8),.3)
644
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
645
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(3,0,-.8),.3)
646
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
647
MagicBlock(BrickColor.new("White"),LeftArm.CFrame*cf(0,-1,0),1,1,1,1,1,1,.1,1)
648
MagicBlock(BrickColor.new("White"),RightArm.CFrame*cf(0,-1,0),1,1,1,1,1,1,.1,1)
649
gairo.cframe=CF*euler(0,num,0)
650
num=num+0.1
651
num2=num2+1
652
if num2%100==0 then
653
MagniDamage(RootPart,30,0,10,math.random(1,5),"Knockdown")
654
end
655
if num2%20==0 then
656
local cloud=part(3,workspace,0,0,BrickColor.new("White"),"Cloud",vt())
657
local cmsh=mesh("SpecialMesh",cloud,"FileMesh","http://www.roblox.com/asset/?id=1095708",vt(0,0,0),vt(8,8,8))
658
cloud.Anchored=true
659
cloud.CFrame=cf(RootPart.Position)*cf(math.random(-2000,2000)/100,30,math.random(-2000,2000)/100)*euler(0,1.57,0)
660
game:GetService("Debris"):AddItem(cloud,5)
661
table.insert(Effects,{cloud,"Snow",40,0})
662
end
663
end
664
snowfield.Parent=nil
665
gairo.Parent=nil
666
s:Stop()
667
s.Parent=nil
668
Humanoid.WalkSpeed=16
669
attack=false
670
end
671
 
672
function SantaSleigh()
673
attack=true
674
Humanoid.WalkSpeed=0
675
for i=0,1,0.1 do
676
swait()
677
Neck.C0=clerp(Neck.C0,necko*euler(-.5,0,0),.3)
678
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
679
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(3.8,0,-0.4),.3)
680
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
681
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(3.8,0,0.4),.3)
682
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
683
end
684
local sleigh=part(3,modelzorz,0,0,BrickColor.new("White"),"Sleigh",vt())
685
local smsh=mesh("SpecialMesh",sleigh,"FileMesh","http://www.roblox.com/asset/?id=67730602 ",vt(0,0,0),vt(1.5,1.5,1.5))
686
smsh.TextureId="http://www.roblox.com/asset/?id=67730764"
687
local swld=weld(sleigh,sleigh,LeftArm,euler(3.14,0,.4+1.57)*cf(-0.6,2,-1))
688
for i=0,1,0.1 do
689
swait()
690
Neck.C0=clerp(Neck.C0,necko*euler(0.4,0,0),.3)
691
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1.5)*euler(0,0,0),.3)
692
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.57,0,-0.4),.3)
693
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
694
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.57,0,0.4),.3)
695
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
696
RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(-1.2,1.57,0),.3)
697
LH.C0=clerp(LH.C0,cf(-1.1,0.4,-0.8)*euler(-0.05,-1.57,0),.3)
698
end
699
swld.Part1=Torso
700
swld.C0=euler(1.57,-1.57,0)*cf(0,1.2,0)
701
wld2.C0=euler(0,1.57,0)*cf(0,-.8,-1.8)
702
for i=0,1,0.1 do
703
swait()
704
Neck.C0=clerp(Neck.C0,necko*euler(0,0,0),.3)
705
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*euler(0,0,0),.3)
706
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(0,0,0.4),.3)
707
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
708
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(0,0,-0.4),.3)
709
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
710
RH.C0=clerp(RH.C0,cf(1,-1,-0)*euler(1.3,1.57,0)*euler(-0.2,0,0),.3)
711
LH.C0=clerp(LH.C0,cf(-1,-1,-0)*euler(1.3,-1.57,0)*euler(-0.2,0,0),.3)
712
end
713
s=Instance.new("Sound")
714
s.Parent=Torso
715
s.Pitch=1
716
s.Volume=1
717
s.SoundId="http://www.roblox.com/asset/?id=19358641"
718
s.Looped=true
719
s:Play()
720
bodvel=Instance.new("BodyVelocity")
721
bodvel.Parent=RootPart
722
bodvel.velocity=MMouse.Hit.lookVector*30 
723
bodvel.P=5000
724
bodvel.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
725
local gairo=Instance.new("BodyGyro") 
726
gairo.Parent=RootPart
727
gairo.maxTorque=Vector3.new(4e+005,4e+005,4e+005)
728
gairo.P=3000
729
gairo.cframe=RootPart.CFrame
730
gift=0
731
for i=1,1000 do
732
swait()
733
bodvel.velocity=MMouse.Hit.lookVector*80 
734
gairo.cframe=CFrame.new(RootPart.Position,MMouse.Hit.p) 
735
if gift>=20 then
736
gift=0
737
for i=1,5 do
738
local confetti=part(3,workspace,0,0,BrickColor.Random(),"Confetti",vt())
739
local cmsh=mesh("BlockMesh",confetti,"","",vt(0,0,0),vt(3,1,3))
740
confetti.CFrame=RootPart.CFrame*cf(math.random(-300,300)/100,math.random(-300,300)/100,math.random(-300,300)/100)
741
confetti.Velocity=(RootPart.CFrame.lookVector*math.random(40,60))+(vt(math.random(-100,100)/100,-1,math.random(-100,100)/100)*math.random(60,80))
742
game:GetService("Debris"):AddItem(confetti,5)
743
end
744
for i=1,2 do
745
num=math.random(100,300)/100
746
local giftprt=part(3,workspace,0,0,BrickColor.new("Black"),"Gift",vt(num,num,num))
747
Giftify(giftprt,num,num,num)
748
giftprt.CFrame=RootPart.CFrame*cf(math.random(-300,300)/100,math.random(-500,-300)/100,math.random(-300,300)/100)
749
giftprt.CanCollide=true
750
giftprt.Velocity=(RootPart.CFrame.lookVector*math.random(20,40))+(vt(math.random(-1,1),-1,math.random(-1,1))*math.random(80,100))
751
game:GetService("Debris"):AddItem(giftprt,10)
752
Boom(giftprt,math.random(200,400),num,10,20,false)
753
end
754
end
755
gift=gift+1
756
end
757
s:Stop()
758
s.Parent=nil
759
bodvel.Parent=nil
760
gairo.Parent=nil
761
wld2.C0=euler(0,1.57,0)*cf(0,.5,-1.5)
762
Humanoid.WalkSpeed=16
763
sleigh.Parent=nil
764
attack=false
765
end
766
 
767
function MagniDamage(Part,magni,mindam,maxdam,knock,Type)
768
for _,c in pairs(workspace:children()) do
769
local hum=c:findFirstChild("Humanoid")
770
if hum~=nil then
771
local head=c:findFirstChild("Torso")
772
if head~=nil then
773
local targ=head.Position-Part.Position
774
local mag=targ.magnitude
775
if mag<=magni and c.Name~=Player.Name then 
776
Damagefunc(head,mindam,maxdam,knock,Type,RootPart,.2,1,3,1)
777
end
778
end
779
end
780
end
781
end
782
 
783
function rayCast(Pos, Dir, Max, Ignore)  -- Origin Position , Direction, MaxDistance , IgnoreDescendants
784
return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore) 
785
end 
786
 
787
function MagicBlock(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay,Type,parent)
788
local prt=part(3,workspace,0,0,brickcolor,"Effect",vt())
789
prt.Anchored=true
790
prt.CFrame=cframe
791
msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
792
game:GetService("Debris"):AddItem(prt,5)
793
if Type==1 or Type==nil then
794
table.insert(Effects,{prt,"Block1",delay,x3,y3,z3,msh})
795
elseif Type==2 then
796
table.insert(Effects,{prt,"Block2",delay,x3,y3,z3,msh})
797
end
798
end
799
 
800
function MagicCircle(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
801
local prt=part(3,workspace,0,0,brickcolor,"Effect",vt())
802
prt.Anchored=true
803
prt.CFrame=cframe
804
local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
805
game:GetService("Debris"):AddItem(prt,2)
806
table.insert(Effects,{prt,"Cylinder",delay,x3,y3,z3,msh})
807
end
808
 
809
function MagicWave(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
810
local prt=part(3,workspace,0,0,brickcolor,"Effect",vt())
811
prt.Anchored=true
812
prt.CFrame=cframe
813
local msh=mesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=20329976",vt(0,0,0),vt(x1,y1,z1))
814
game:GetService("Debris"):AddItem(prt,5)
815
table.insert(Effects,{prt,"Cylinder",delay,x3,y3,z3,msh})
816
end
817
 
818
function Boom(Part,numb,magnitude,mindam,maxdam,cantouch)
819
if cantouch==true then
820
con1=Part.Touched:connect(function(hit)
821
if hit.Parent==nil then
822
return
823
end
824
h=hit.Parent:FindFirstChild("Humanoid")
825
for _,v in pairs(hit.Parent:children()) do
826
if v:IsA("Humanoid") then
827
h=v
828
end
829
end
830
if h~=nil and hit.Parent.Name~=Character.Name and hit.Parent:FindFirstChild("Torso")~=nil then
831
Part.Parent=nil
832
end
833
end) 
834
end
835
table.insert(Effects,{Part,"Explode",numb,magnitude,mindam,maxdam})
836
end
837
 
838
Damagefunc=function(hit,minim,maxim,knockback,Type,Property,Delay,KnockbackType,decreaseblock)
839
        if hit.Parent==nil then
840
                return
841
        end
842
        h=hit.Parent:FindFirstChild("Humanoid")
843
        for _,v in pairs(hit.Parent:children()) do
844
        if v:IsA("Humanoid") then
845
        h=v
846
        end
847
        end
848
        if hit.Parent.Parent:FindFirstChild("Torso")~=nil then
849
        h=hit.Parent.Parent:FindFirstChild("Humanoid")
850
        end
851
        if hit.Parent.className=="Hat" then
852
        hit=hit.Parent.Parent:findFirstChild("Head")
853
        end
854
        if h~=nil and hit.Parent.Name~=Character.Name and hit.Parent:FindFirstChild("Torso")~=nil then
855
        if hit.Parent:findFirstChild("DebounceHit")~=nil then if hit.Parent.DebounceHit.Value==true then return end end
856
        --[[                if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
857
                        return
858
                end]]
859
--                        hs(hit,1.2) 
860
                        c=Instance.new("ObjectValue")
861
                        c.Name="creator"
862
                        c.Value=game:service("Players").LocalPlayer
863
                        c.Parent=h
864
                        game:GetService("Debris"):AddItem(c,.5)
865
                Damage=math.random(minim,maxim)
866
--                h:TakeDamage(Damage)
867
                blocked=false
868
                block=hit.Parent:findFirstChild("Block")
869
                if block~=nil then
870
                print(block.className)
871
                if block.className=="NumberValue" then
872
                if block.Value>0 then
873
                blocked=true
874
                if decreaseblock~=nil then
875
                block.Value=block.Value-decreaseblock
876
                end
877
                end
878
                end
879
                if block.className=="IntValue" then
880
                if block.Value>0 then
881
                blocked=true
882
                if decreaseblock~=nil then
883
                block.Value=block.Value-decreaseblock
884
                end
885
                end
886
                end
887
                end
888
                if blocked==false then
889
--                h:TakeDamage(Damage)
890
                h.Health=h.Health-Damage
891
                showDamage(hit.Parent,Damage,.5,BrickColor:Red())
892
                else
893
                h.Health=h.Health-(Damage/2)
894
                showDamage(hit.Parent,Damage/2,.5,BrickColor.new("Bright blue"))
895
                end
896
                if Type=="Knockdown" then
897
                hum=hit.Parent.Humanoid
898
hum.PlatformStand=true
899
coroutine.resume(coroutine.create(function(HHumanoid)
900
swait(1)
901
HHumanoid.PlatformStand=false
902
end),hum)
903
                local angle=(hit.Position-(Property.Position+Vector3.new(0,0,0))).unit
904
--hit.CFrame=cf(hit.Position,Vector3.new(angle.x,hit.Position.y,angle.z))*CFrame.fromEulerAnglesXYZ(math.pi/4,0,0)
905
local bodvol=Instance.new("BodyVelocity")
906
bodvol.velocity=angle*knockback
907
bodvol.P=5000
908
bodvol.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
909
bodvol.Parent=hit
910
rl=Instance.new("BodyAngularVelocity")
911
rl.P=3000
912
rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000
913
rl.angularvelocity=Vector3.new(math.random(-10,10),math.random(-10,10),math.random(-10,10))
914
rl.Parent=hit
915
game:GetService("Debris"):AddItem(bodvol,.5)
916
game:GetService("Debris"):AddItem(rl,.5)
917
                elseif Type=="Normal" then
918
                vp=Instance.new("BodyVelocity")
919
                vp.P=500
920
                vp.maxForce=Vector3.new(math.huge,0,math.huge)
921
--                vp.velocity=Character.Torso.CFrame.lookVector*Knockback
922
                if KnockbackType==1 then
923
                vp.velocity=Property.CFrame.lookVector*knockback
924
                elseif KnockbackType==2 then
925
                vp.velocity=Property.CFrame.lookVector*knockback
926
                end
927
                if knockback>0 then
928
                        vp.Parent=hit.Parent.Torso
929
                end
930
                game:GetService("Debris"):AddItem(vp,.5)
931
                elseif Type=="Up" then
932
                local bodyVelocity=Instance.new("BodyVelocity")
933
                bodyVelocity.velocity=vt(0,30,0)
934
                bodyVelocity.P=5000
935
                bodyVelocity.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
936
                bodyVelocity.Parent=hit
937
                game:GetService("Debris"):AddItem(bodyVelocity,1)
938
                rl=Instance.new("BodyAngularVelocity")
939
                rl.P=3000
940
                rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000
941
                rl.angularvelocity=Vector3.new(math.random(-2,2),math.random(-2,2),math.random(-2,2))
942
                rl.Parent=hit
943
                game:GetService("Debris"):AddItem(rl,.5)
944
                elseif Type=="Snare" then
945
                bp=Instance.new("BodyPosition")
946
                bp.P=2000
947
                bp.D=100
948
                bp.maxForce=Vector3.new(math.huge,math.huge,math.huge)
949
                bp.position=hit.Parent.Torso.Position
950
                bp.Parent=hit.Parent.Torso
951
                game:GetService("Debris"):AddItem(bp,1)
952
                end
953
                        debounce=Instance.new("BoolValue")
954
                        debounce.Name="DebounceHit"
955
                        debounce.Parent=hit.Parent
956
                        debounce.Value=true
957
                        game:GetService("Debris"):AddItem(debounce,Delay)
958
                        c=Instance.new("ObjectValue")
959
                        c.Name="creator"
960
                        c.Value=Player
961
                        c.Parent=h
962
                        game:GetService("Debris"):AddItem(c,.5)
963
                CRIT=false
964
        end
965
end
966
 
967
showDamage=function(Char,Dealt,du,Color)
968
        m=Instance.new("Model")
969
        m.Name=tostring(math.floor(Dealt))
970
        h=Instance.new("Humanoid")
971
        h.Health=0
972
        h.MaxHealth=0
973
        h.Parent=m
974
        c=Instance.new("Part")
975
        c.Transparency=0
976
        c.BrickColor=Color
977
        c.Name="Head"
978
        c.TopSurface=0
979
        c.BottomSurface=0
980
        c.formFactor="Plate"
981
        c.Size=Vector3.new(1,.4,1)
982
        ms=Instance.new("CylinderMesh")
983
        ms.Scale=Vector3.new(.8,.8,.8)
984
        if CRIT==true then
985
                ms.Scale=Vector3.new(1,1.25,1)
986
        end
987
        ms.Parent=c
988
        c.Reflectance=0
989
        Instance.new("BodyGyro").Parent=c
990
        c.Parent=m
991
        if Char:findFirstChild("Head")~=nil then
992
        c.CFrame=cf(Char["Head"].CFrame.p+Vector3.new(0,1.5,0))
993
        elseif Char.Parent:findFirstChild("Head")~=nil then
994
        c.CFrame=cf(Char.Parent["Head"].CFrame.p+Vector3.new(0,1.5,0))
995
        end
996
        f=Instance.new("BodyPosition")
997
        f.P=2000
998
        f.D=100
999
        f.maxForce=Vector3.new(math.huge,math.huge,math.huge)
1000
        f.position=c.Position+Vector3.new(0,3,0)
1001
        f.Parent=c
1002
        game:GetService("Debris"):AddItem(m,.5+du)
1003
        c.CanCollide=false
1004
        m.Parent=workspace
1005
        c.CanCollide=false
1006
end
1007
 
1008
combo=0
1009
function ob1d(mouse) 
1010
if attack==true or equipped==false then return end
1011
hold=true
1012
 
1013
if combo==0 then
1014
combo=1
1015
attackone()
1016
elseif combo==1 then
1017
combo=2
1018
attacktwo()
1019
elseif combo==2 then
1020
combo=0
1021
attackthree()
1022
end
1023
coroutine.resume(coroutine.create(function() 
1024
for i=1,50 do
1025
if attack==false then
1026
swait()
1027
end
1028
end
1029
if attack==false then
1030
combo=0
1031
end
1032
end))
1033
end 
1034
 
1035
function ob1u(mouse) 
1036
hold = false 
1037
end 
1038
 
1039
buttonhold = false 
1040
 
1041
eul=0
1042
holdg=false
1043
holdc=false
1044
cansurprise=true
1045
equipped=false
1046
function key(key) 
1047
if key=="g" then
1048
holdg=true
1049
end
1050
if key=="c" then
1051
holdc=true
1052
end
1053
if attack==true then return end
1054
if key=="f" then
1055
attack=true
1056
if equipped==false then
1057
equipped=true
1058
RSH=ch.Torso["Right Shoulder"] 
1059
LSH=ch.Torso["Left Shoulder"] 
1060
-- 
1061
RSH.Parent=nil 
1062
LSH.Parent=nil 
1063
-- 
1064
RW.Name="Right Shoulder"
1065
RW.Part0=ch.Torso 
1066
RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) 
1067
RW.C1=cf(0, 0.5, 0) 
1068
RW.Part1=ch["Right Arm"] 
1069
RW.Parent=ch.Torso 
1070
-- 
1071
LW.Name="Left Shoulder"
1072
LW.Part0=ch.Torso 
1073
LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8) 
1074
LW.C1=cf(0, 0.5, 0) 
1075
LW.Part1=ch["Left Arm"] 
1076
LW.Parent=ch.Torso 
1077
--
1078
equipanim() 
1079
else
1080
equipped=false
1081
hideanim() 
1082
swait(0) 
1083
RW.Parent=nil 
1084
LW.Parent=nil 
1085
RSH.Parent=player.Character.Torso 
1086
LSH.Parent=player.Character.Torso 
1087
end
1088
attack=false
1089
end
1090
if equipped==false then return end
1091
if key=="z" and cansurprise==true then
1092
Surprise()
1093
cansurprise=false
1094
coroutine.resume(coroutine.create(function()
1095
wait(5)
1096
cansurprise=true
1097
end))
1098
end
1099
if key=="x" then
1100
PartyCannon()
1101
end
1102
if key=="c" then
1103
SnowDay()
1104
end
1105
if key=="v" and cansleigh==true then
1106
cansleigh=false
1107
SantaSleigh()
1108
end
1109
--[[if key=="g" then
1110
while holdg==true do
1111
swait()
1112
attack=true
1113
Neck.C0=clerp(Neck.C0,necko*euler(-.6,0,0),.3)
1114
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
1115
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(3,0,.8),.3)
1116
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1117
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(3,0,-.8),.3)
1118
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1119
size=math.random(100,500)/100
1120
local giftprt=part(3,modelzorz,0,0,BrickColor.new("Black"),"Gift",vt(size*2,size*2,size*2))
1121
Giftify(giftprt,size*2,size*2,size*2)
1122
giftprt.Parent=workspace
1123
giftprt.CanCollide=true
1124
giftprt.CFrame=Torso.CFrame*cf(math.random(-50,50),math.random(80,100),math.random(-50,50))
1125
game:GetService("Debris"):AddItem(giftprt,5)
1126
Boom(giftprt,size*100,size*2,5,10,false)
1127
end
1128
attack=false
1129
end]]
1130
end 
1131
 
1132
function key2(key) 
1133
if key=="g" then
1134
holdg=false
1135
end
1136
if key=="c" then
1137
holdc=false
1138
end
1139
end 
1140
 
1141
function s(mouse) 
1142
mouse.Button1Down:connect(function() ob1d(mouse) end) 
1143
mouse.Button1Up:connect(function() ob1u(mouse) end) 
1144
mouse.KeyDown:connect(key) 
1145
mouse.KeyUp:connect(key2) 
1146
 
1147
player=Player 
1148
ch=Character 
1149
MMouse=mouse 
1150
end 
1151
 
1152
function ds(mouse) 
1153
end 
1154
 
1155
Bin.Selected:connect(s) 
1156
Bin.Deselected:connect(ds) 
1157
print("Santa's Elf loaded.")
1158
 
1159
 
1160
local donum=0
1161
while true do
1162
swait()
1163
if donum>=.5 then
1164
handidle=true
1165
elseif donum<=0 then
1166
handidle=false
1167
end
1168
if handidle==false then
1169
donum=donum+0.003
1170
else
1171
donum=donum-0.003
1172
end
1173
--between prt16 and prt17
1174
--local wld27=weld(prt27,prt27,prt26,euler(0,0,0)*cf(0,-1.2,0))
1175
--[[local top=prt16r.CFrame
1176
local bottom=prt17r.CFrame
1177
oristrpos=CFrame.new((top.p+bottom.p)/2)
1178
local mg1=(top.p-oristrpos.p).magnitude
1179
local mg2=(bottom.p-oristrpos.p).magnitude
1180
cff=CFrame.new(top*angles(1.57,0,0).p,prt17r.Position)*angles(math.rad(90),0,0)*cf(0,-mg1/2,0)
1181
hit2=prt27
1182
hit=prt17r
1183
wld27.Parent=prt27
1184
wld27.Part0=hit2
1185
wld27.Part1=hit
1186
HitPos=cff.p
1187
local CJ = CFrame.new(HitPos)
1188
local C0=cff:inverse() *CJ 
1189
local C1=hit.CFrame:inverse() * CJ 
1190
wld27.C0=clerp(wld27.C0,C0,.1)
1191
wld27.C1=clerp(wld27.C1,C1,.1)]]
1192
local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude 
1193
local velderp=RootPart.Velocity.y
1194
hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character)
1195
if equipped==true then
1196
if attack==false then
1197
idle=idle+1
1198
else
1199
idle=0
1200
end
1201
if idle>=500 then
1202
if attack==false then
1203
--Sheath()
1204
end
1205
end
1206
if RootPart.Velocity.y > 1 and hitfloor==nil then 
1207
Anim="Jump"
1208
if attack==false then
1209
Neck.C0=clerp(Neck.C0,necko*euler(-0.2,0,0),.3)
1210
Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.3)
1211
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
1212
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.5,0,0.5),.3)
1213
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1214
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.5,0,-0.5),.3)
1215
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1216
RH.C0=clerp(RH.C0,cf(1,-1,-.3)*euler(-0.5,1.57,0)*euler(-.2,0,0),.2)
1217
LH.C0=clerp(LH.C0,cf(-1,-1,-.3)*euler(-0.5,-1.57,0)*euler(-.2,0,0),.2)
1218
end
1219
elseif RootPart.Velocity.y < -1 and hitfloor==nil then 
1220
Anim="Fall"
1221
if attack==false then
1222
Neck.C0=clerp(Neck.C0,necko*euler(0.4,0,0),.3)
1223
Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.3)
1224
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
1225
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(0.3,0,0.2),.3)
1226
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1227
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(0.3,0,-0.2),.3)
1228
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1229
RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0.4,1.57,0),.2)
1230
LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(-0.2,-1.57,0),.2)
1231
end
1232
elseif torvel<1 and hitfloor~=nil then
1233
Anim="Idle"
1234
if attack==false then
1235
Neck.C0=clerp(Neck.C0,necko*euler(0,0,0),.3)
1236
Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.3)
1237
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
1238
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(0,0,0.1-(donum/5)),.3)
1239
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1240
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(0,0,-0.1+(donum/5)),.3)
1241
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1242
RH.C0=clerp(RH.C0,RHC0,.3)
1243
RH.C1=clerp(RH.C1,RHC1,.3)
1244
LH.C0=clerp(LH.C0,LHC0,.3)
1245
LH.C1=clerp(LH.C1,LHC1,.3)
1246
end
1247
elseif torvel>2 and torvel<22 and hitfloor~=nil then
1248
Anim="Walk"
1249
if attack==false then
1250
Neck.C0=clerp(Neck.C0,necko*euler(0,0,0),.3)
1251
Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.3)
1252
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0.1,0,0),.3)
1253
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-0.2,0,0.3),.3)
1254
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1255
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-0.2,0,-0.3),.3)
1256
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1257
RH.C0=clerp(RH.C0,RHC0,.3)
1258
LH.C0=clerp(LH.C0,LHC0,.3)
1259
end
1260
elseif torvel>=22 and hitfloor~=nil then
1261
Anim="Run"
1262
if attack==false then
1263
Neck.C0=clerp(Neck.C0,necko*euler(0,0,0),.3)
1264
Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.3)
1265
RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0.3,0,0),.3)
1266
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-0.5,0,0.5),.3)
1267
RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1268
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-0.5,0,-0.5),.3)
1269
LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
1270
end
1271
end
1272
end
1273
if #Effects>0 then
1274
--table.insert(Effects,{prt,"Block1",delay})
1275
for e=1,#Effects do
1276
if Effects[e]~=nil then
1277
--for j=1,#Effects[e] do
1278
local Thing=Effects[e]
1279
if Thing~=nil then
1280
local Part=Thing[1]
1281
local Mode=Thing[2]
1282
local Delay=Thing[3]
1283
local IncX=Thing[4]
1284
local IncY=Thing[5]
1285
local IncZ=Thing[6]
1286
if Thing[2]=="Snow" then
1287
if Thing[1].Parent~=nil then
1288
if Thing[4]==Thing[3] then
1289
local snow=part(3,workspace,0,0,BrickColor.new("White"),"Effect",vt())
1290
snow.CFrame=Thing[1].CFrame*cf(math.random(-300,300)/100,0,math.random(-300,300)/100)
1291
local smsh=mesh("SpecialMesh",snow,"Sphere","",vt(0,0,0),vt(1,1,1))
1292
bodvol=Instance.new("BodyVelocity")
1293
bodvol.Parent=snow
1294
bodvol.velocity=vt(0,-1,0)*10
1295
bodvol.P=5000
1296
bodvol.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
1297
game:GetService("Debris"):AddItem(snow,5)
1298
Thing[4]=0
1299
else
1300
Thing[4]=Thing[4]+1
1301
end
1302
end
1303
end
1304
if Thing[2]=="Explode" then
1305
if Thing[3]<=0 or Thing[1].Parent==nil then
1306
Thing[1].Parent=nil
1307
size=Thing[4]
1308
MagicBlock(BrickColor.new("Bright red"),Thing[1].CFrame,1,1,1,size,size,size,.05,1)
1309
MagicCircle(BrickColor.new("Bright yellow"),Thing[1].CFrame,1,1,1,size*5,size*5,size*5,.1)
1310
local prtt=part(3,workspace,0,1,BrickColor.new("Black"),"Effect",vt())
1311
prtt.Anchored=true
1312
prtt.CFrame=Thing[1].CFrame
1313
MagniDamage(prtt,size*5,Thing[5],Thing[6],math.random(size*2,size*3),"Normal")
1314
game:GetService("Debris"):AddItem(prtt,1)
1315
so("http://roblox.com/asset/?id=2101148",prtt,1,1) 
1316
table.remove(Effects,e)
1317
end
1318
Thing[3]=Thing[3]-1
1319
end
1320
if Thing[1].Transparency<=1 then
1321
if Thing[2]=="Block1" then
1322
Thing[1].CFrame=Thing[1].CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
1323
Mesh=Thing[7]
1324
Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
1325
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1326
elseif Thing[2]=="Block2" then
1327
Thing[1].CFrame=Thing[1].CFrame
1328
Mesh=Thing[7]
1329
Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
1330
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1331
elseif Thing[2]=="Cylinder" then
1332
Mesh=Thing[7]
1333
Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
1334
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1335
elseif Thing[2]=="Blood" then
1336
Mesh=Thing[7]
1337
Thing[1].CFrame=Thing[1].CFrame*cf(0,.5,0)
1338
Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
1339
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1340
elseif Thing[2]=="Elec" then
1341
Mesh=Thing[1].Mesh
1342
Mesh.Scale=Mesh.Scale+vt(Thing[7],Thing[8],Thing[9])
1343
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1344
elseif Thing[2]=="Disappear" then
1345
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1346
end
1347
else
1348
Part.Parent=nil
1349
table.remove(Effects,e)
1350
end
1351
end
1352
--end
1353
end
1354
end
1355
end
1356
end