null
nil
-
false
true
0
0
1
1
0
0
0
1
0
0
0
1
RoachfingersDodgeball
http://www.roblox.com/asset/?id=131774352
Dodgeball
-
false
-0.5
0.5
0
0
-0.5
0.5
0
0
23
-19.9982605
1.45499945
57.539917
1
7.45122178e-017
8.75443291e-008
-3.33066907e-016
1
0
-8.75443291e-008
0
1
true
0.5
0.300000012
-0.5
0.5
0
0
-0.5
0.5
0
0
false
512
Handle
0
-0.5
0.5
0
0
0
0
0
-0.5
0.5
0
0
0
0
0
0
0
0
2.92999935
2.92999935
2.92999935
-
false
Fire
1
false
http://www.roblox.com/asset/?id=131774671
1
-
owner
-
passTo
-
http://www.roblox.com/Asset?ID=94156535
EquipAnim2
-
http://www.roblox.com/Asset?ID=94156486
IdleEquipAnim2
-
http://www.roblox.com/Asset?ID=94157627
ThrowAnim2
-
http://www.roblox.com/Asset?ID=94156580
UnEquipAnim2
-
true
Killer
--[[
ULTIMATE ROBLOX DODGEBALL 2
ALEXNEWTRON 2013
THE STEALING OF THIS SCRIPT IS NOOBISH.
]]
Ball = script.Parent;
Owner = Ball:WaitForChild("owner").Value;
PassTo = Ball:WaitForChild("passTo");
--OriginalTeam = game.Players[Owner]["playerTeam"].Value;
OriginalColor = Ball:WaitForChild("ballColor").Value
BALL_KILL_IMAGE = "http://www.roblox.com/asset/?id=130512988";
Ball.BrickColor = BrickColor.new("White");
Ball.Fire:Play();
function killOfficial(victim)
local k = Instance.new("StringValue");
k.Name = "Killer";
k.Value = Owner;
local v = Instance.new("StringValue");
v.Parent = k;
v.Name = "victim"
v.Value = victim;
local w = Instance.new("StringValue");
w.Parent = k;
w.Name = "weapon"
w.Value = BALL_KILL_IMAGE
k.Parent = workspace["GameKills"];
end
function hitOfficial(victim, dmg)
local o = Instance.new("StringValue");
o.Name = "owner";
o.Value = Owner;
local v = Instance.new("StringValue");
v.Parent = o;
v.Name = "victim"
v.Value = victim;
local d = Instance.new("IntValue");
d.Parent = o;
d.Name = "damage"
d.Value = dmg;
o.Parent = workspace["DamageLog"];
Ball.PlayerHit:Play();
Ball.Fire:Stop();
end
function toucher(hit)
print("Hit "..hit.Name);
if (hit.Parent:findFirstChild("Humanoid")) then
if (hit.Parent.Name ~= Owner) then
if (game.Players[hit.Parent.Name]:findFirstChild("playerTeam")) then
if (game.Players[hit.Parent.Name]["playerTeam"].Value == OriginalTeam) then
-- Pass the ball to the team member.
PassTo.Value = hit.Parent.Name;
script.Disabled = true;
else
-- Make the player loose health.
if (hit.Parent.Humanoid.Health > 0 and game.Players[hit.Parent.Name]:findFirstChild("isInGame")) then
if (game.Players[hit.Parent.Name]["isInGame"].Value) then
hit.Parent.Humanoid.Health = hit.Parent.Humanoid.Health - workspace.globalDodgeballDamage.Value;
hitOfficial(hit.Parent.Name, 999999999999)
if (hit.Parent.Humanoid.Health <= 0) then
killOfficial(hit.Parent.Name); -- We killed somebody.
end
print("Disabling Ball");
Ball.BrickColor = OriginalColor
script.Disabled = true;
end
end
end
end
end
end
end
Ball.Touched:connect(toucher);
wait(2);
print("Disabling Ball");
Ball:Destroy();
Ball.BrickColor = OriginalColor
script.Disabled = true;
-
false
Hit
1
false
http://www.roblox.com/asset/?id=130781043
1
-
false
Sound
--[[
ULTIMATE ROBLOX DODGEBALL 2
ALEXNEWTRON 2013
THE STEALING OF THIS SCRIPT IS NOOBISH.
]]
Ball = script.Parent;
BallTouch = Ball:WaitForChild("Hit");
LAST_SOUND_HIT = 0;
SOUND_ALLOWED_TIME = 0.1;
GROUND_ALLOWED_TIME = 0.3;
equipped = 0
if (Ball.Parent:isA("Tool")) then
Ball.Parent.Equipped:connect(function()
equipped = 1
while equipped == 1 do
Ball.Hold:Play()
wait(4.233011)
end
end);
Ball.Parent.Unequipped:connect(function()
equipped = 0
Ball.Hold:Stop()
end);
end
Ball.Touched:connect(function(hit)
if (LAST_SOUND_HIT+SOUND_ALLOWED_TIME<time() and hit.CanCollide) then
LAST_SOUND_HIT = time();
if (hit.Size == Vector3.new(10,0.2,10)) then
-- This is a ground. Have we hit our debounce for the ground?
if (LAST_SOUND_HIT+GROUND_ALLOWED_TIME>time()) then
return;
end
end
BallTouch.Volume = math.min(Ball.Velocity.magnitude/50,1);
print("MAGNITUDE: "..Ball.Velocity.magnitude);
BallTouch.Pitch=.5+math.random();
if (Ball.Velocity.magnitude > 60) then
BallTouch:Play();
end
end
end);
-
false
Hold
1
false
http://www.roblox.com/asset/?id=131774430
1
-
false
PlayerHit
1
false
http://www.roblox.com/asset/?id=131774794
1
-
5
Decal
20
0
http://www.roblox.com/asset/?id=131774352
0
-
true
Passer
-
false
Dodgeball Scriptv3
--[[
ULTIMATE ROBLOX DODGEBALL 2
ALEXNEWTRON 2013
THE STEALING OF THIS SCRIPT IS NOOBISH.
]]
local Tool = script.Parent;
local player = game.Players.LocalPlayer;
local Ball = Tool:WaitForChild("Handle");
local PLAYER_HAS_THROWN = false;
local BallColor = nil;
local EquipAnim
local IdleEquipAnim
local ThrowAnim
local UnEquipAnim
if not Ball:findFirstChild("ballColor") then
BallColor = Ball.BrickColor;
local bc = Instance.new("BrickColorValue")
bc.Parent = Ball;
bc.Name = "ballColor"
bc.Value = BallColor;
else
BallColor = Ball["ballColor"].Value
end
Ball.BrickColor = BallColor;
Ball.Killer.Disabled = true;
Ball.Passer.Disabled = true;
if (Ball:findFirstChild("BodyForce")) then
Ball["BodyForce"]:remove();
end
function WaitForChild(parent, childName)
while not parent:FindFirstChild(childName) do parent.ChildAdded:wait() end
print("done waiting");
return parent[childName]
end
function onActivated()
wait()
local character = Tool.Parent;
local humanoid = character.Humanoid;
local targetPos = humanoid.TargetPoint;
local lookAt = (targetPos - character.Head.Position).unit;
Ball.Hold:Stop()
if (workspace:findFirstChild(player.Name):findFirstChild("Torso") and not PLAYER_HAS_THROWN and workspace.canThrowDodgeball.Value) then
PLAYER_HAS_THROWN = true;
local torso = player.Character.Torso;
local spawnPos = torso.Position + (lookAt * 25);
if ThrowAnim then
ThrowAnim:Play()
end
wait(0.3)
print("Shooting");
local p = Tool.Handle:Clone();
p.owner.Value = player.Name;
p.passTo.Value = "";
p.CanCollide = true;
local prts = {};
-- Are there any other parts?
local tl = Tool:GetChildren();
for i=1, #tl do
if (tl[i].className == "Part" and tl[i].Name ~= "Handle") then
-- There are extra parts in this dodgeball that need to be sent to the Handle.
local prT = tl[i]:Clone();
prT.Parent = p;
prT.Name = "EXTRAPART"..i
prT.Anchored = true;
local w = Instance.new("Weld")
w.Parent = p
w.Part0 = p
w.Part1 = prT
w.C0 = p.CFrame:inverse();
w.C1 = prT.CFrame:inverse();
prT.Anchored = false;
table.insert(prts, prT);
end
end
table.insert(prts, p);
p.Parent = workspace;
-- p.Fire:Play();
for i=1, #prts do
prts[i].Velocity = lookAt * ((200 / #prts) * #prts);
end
local bForce = Instance.new("BodyForce");
bForce.force = Vector3.new(0,100,0);
bForce.Parent = p;
p.Killer.Disabled = false;
p.Passer.Disabled = false
OnUnequipped();
script.Parent:remove();
end
end
function OnEquipped(m)
local character = Tool.Parent;
local humanoid = character.Humanoid;
print("running");
if (humanoid) then
print("running2");
EquipAnim = humanoid:LoadAnimation(WaitForChild(Tool.Handle, 'EquipAnim2'))
IdleEquipAnim = humanoid:LoadAnimation(WaitForChild(Tool.Handle, 'IdleEquipAnim2'))
ThrowAnim = humanoid:LoadAnimation(WaitForChild(Tool.Handle, 'ThrowAnim2'))
UnEquipAnim = humanoid:LoadAnimation(WaitForChild(Tool.Handle, 'UnEquipAnim2'))
end
if EquipAnim then
EquipAnim:Play()
end
if IdleEquipAnim then
IdleEquipAnim:Play()
end
end
Tool.Activated:connect(onActivated)
function OnUnequipped()
print("Stopping Animations");
if EquipAnim then
EquipAnim:Stop()
end
if ThrowAnim then
ThrowAnim:Stop()
end
if IdleEquipAnim then
IdleEquipAnim:Stop()
end
end
Tool.Equipped:connect(OnEquipped)
Tool.Unequipped:connect(OnUnequipped)