added wait timer

This commit is contained in:
Bitl 2017-07-18 12:46:31 -07:00
commit 7c3cfe494b
14 changed files with 17593 additions and 8437 deletions

View File

@ -1,6 +1,5 @@
--coded by Bitl and Carrot --coded by Bitl and Carrot
--stuff was borrowed from RBXBanland, EnergyCell, John, and the RBXPri team --stuff was borrowed from RBXBanland, EnergyCell, John, and the RBXPri team
rbxlegacyversion = "" rbxlegacyversion = ""
function SetRBXLegacyVersion(Version) function SetRBXLegacyVersion(Version)
@ -80,8 +79,10 @@ function SetRBXLegacyVersion(Version)
BottomRightControl.Position = UDim2.new(1,-BottomRightControl.AbsoluteSize.X,1,-BottomRightControl.AbsoluteSize.Y) BottomRightControl.Position = UDim2.new(1,-BottomRightControl.AbsoluteSize.X,1,-BottomRightControl.AbsoluteSize.Y)
end end
function makeXRelative() function makeXRelative()
BottomLeftControl.SizeConstraint = 1 loadstring("\66\111\116\116\111\109\76\101\102\116\67\111\110\116\114\111\108\46\83\105\122\101\67\111\110\115\116\114\97\105\110\116\32\61\32\49\10\9\9\9\9\66\111\116\116\111\109\82\105\103\104\116\67\111\110\116\114\111\108\46\83\105\122\101\67\111\110\115\116\114\97\105\110\116\32\61\32\49")()
--[[BottomLeftControl.SizeConstraint = 1
BottomRightControl.SizeConstraint = 1 BottomRightControl.SizeConstraint = 1
]]--
if TopLeftControl then TopLeftControl.SizeConstraint = 1 if TopLeftControl then TopLeftControl.SizeConstraint = 1
end end
if BuildTools then BuildTools.Frame.SizeConstraint = 1 if BuildTools then BuildTools.Frame.SizeConstraint = 1
@ -127,13 +128,27 @@ function SetRBXLegacyVersion(Version)
elseif (rbxlegacyversion == "omega") then elseif (rbxlegacyversion == "omega") then
settings().Rendering.FrameRateManager = 2 settings().Rendering.FrameRateManager = 2
pcall(function() game:GetService("ScriptContext").ScriptsDisabled = false end) pcall(function() game:GetService("ScriptContext").ScriptsDisabled = false end)
pcall(function() settings().Diagnostics:LegacyScriptMode() end) pcall(function() settings().Diagnostics:LegacyScriptMode()
elseif (rbxlegacyversion == "ultra") then --stamper
game:GetService("InsertService"):SetBaseSetsUrl("http://www.roblox.com/Game/Tools/InsertAsset.ashx?nsets=10&type=base")
game:GetService("InsertService"):SetUserSetsUrl("http://www.roblox.com/Game/Tools/InsertAsset.ashx?nsets=20&type=user&userid=%d")
game:GetService("InsertService"):SetCollectionUrl("http://www.roblox.com/Game/Tools/InsertAsset.ashx?sid=%d")
game:GetService("InsertService"):SetAssetUrl("http://www.roblox.com/Asset/?id=%d")
game:GetService("InsertService"):SetAssetVersionUrl("http://www.roblox.com/Asset/?assetversionid=%d")
--[[corescripts
local RobloxGui = game:GetService("CoreGui"):WaitForChild("RobloxGui")
local scriptContext = game:GetService("ScriptContext")
scriptContext:AddCoreScript("CoreScripts/Playerlist", RobloxGui)
scriptContext:AddCoreScript("CoreScripts/GameMenu", RobloxGui)
scriptContext:AddCoreScript("CoreScripts/BackpackFull", RobloxGui)
]]--todo: file:// (rbxasset://) and the corescript adder thing
end)
--[[elseif (rbxlegacyversion == "ultra") then
settings().Rendering.FrameRateManager = 2 settings().Rendering.FrameRateManager = 2
pcall(function() game:GetService("ScriptContext").ScriptsDisabled = false end) pcall(function() game:GetService("ScriptContext").ScriptsDisabled = false end)
pcall(function() settings().Diagnostics:LegacyScriptMode() end) pcall(function() settings().Diagnostics:LegacyScriptMode() end)]]--we aren't ready for this yet
end end
print("RBXLegacy client opration set to '" .. rbxlegacyversion .. "'.") print("RBXLegacy client operation set to '" .. rbxlegacyversion .. "'.")
end end
rbxversion = version() rbxversion = version()
@ -150,6 +165,8 @@ function newWaitForChild(newParent,name)
end end
function LoadCharacterNew(playerApp,newChar) function LoadCharacterNew(playerApp,newChar)
--authentic roblox style loading
wait(0.5)
local charparts = {[1] = newWaitForChild(newChar,"Head"),[2] = newWaitForChild(newChar,"Torso"),[3] = newWaitForChild(newChar,"Left Arm"),[4] = newWaitForChild(newChar,"Right Arm"),[5] = newWaitForChild(newChar,"Left Leg"),[6] = newWaitForChild(newChar,"Right Leg")} local charparts = {[1] = newWaitForChild(newChar,"Head"),[2] = newWaitForChild(newChar,"Torso"),[3] = newWaitForChild(newChar,"Left Arm"),[4] = newWaitForChild(newChar,"Right Arm"),[5] = newWaitForChild(newChar,"Left Leg"),[6] = newWaitForChild(newChar,"Right Leg")}
for _,newVal in pairs(playerApp:GetChildren()) do for _,newVal in pairs(playerApp:GetChildren()) do
if (newVal.CustomizationType.Value == 1) then if (newVal.CustomizationType.Value == 1) then
@ -366,6 +383,7 @@ function InitalizeClientAppearance(Player,Hat1ID,Hat2ID,Hat3ID,HeadColorID,Torso
typeValue.Name = "CustomizationType" typeValue.Name = "CustomizationType"
typeValue.Parent = newFace typeValue.Parent = newFace
typeValue.Value = 6 typeValue.Value = 6
--BODY PARTS
end end
function CSServer(Port,PlayerLimit) function CSServer(Port,PlayerLimit)
@ -414,7 +432,7 @@ function CSServer(Port,PlayerLimit)
RunService = game:GetService("RunService") RunService = game:GetService("RunService")
Server:start(Port, 20) Server:start(Port, 20)
RunService:run() RunService:run()
game.Workspace:InsertContent("rbxasset://fonts/libraries.rbxm") game.Workspace:InsertContent("rbxasset://fonts/libraries.rbxm")
game:GetService("Players").MaxPlayers = PlayerLimit game:GetService("Players").MaxPlayers = PlayerLimit
game:GetService("Players").PlayerAdded:connect(function(Player) game:GetService("Players").PlayerAdded:connect(function(Player)
if (game:GetService("Players").NumPlayers > game:GetService("Players").MaxPlayers) then if (game:GetService("Players").NumPlayers > game:GetService("Players").MaxPlayers) then
@ -559,11 +577,14 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
elseif (rbxlegacyversion == "omega" or rbxlegacyversion == "delta-omega") then elseif (rbxlegacyversion == "omega" or rbxlegacyversion == "delta-omega") then
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.Help:Remove() game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.Help:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.ReportAbuse:Remove() game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.ReportAbuse:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.RecordToggle.Position = UDim2.new(1, -150, 1, -40) game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.RecordToggle:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.Screenshot.Position = UDim2.new(1, -118, 1, -40) game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.Screenshot:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.ToggleFullScreen.Position = UDim2.new(1, -85, 1, -48) game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.ToggleFullScreen:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomLeftControl.TogglePlayMode:Remove() game.CoreGui.RobloxGui.ControlFrame.BottomLeftControl.TogglePlayMode:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomLeftControl.Exit:Remove() game.CoreGui.RobloxGui.ControlFrame.BottomLeftControl.Exit:Remove()
wait(5) -- we have to wait until the menu gets built, don't we?
Player.PlayerGui.Menu.UserSettingsShield.Settings.SettingsStyle.GameSettingsMenu.FullscreenCheckbox:SetVerb("ToggleFullScreen")
Player.PlayerGui.Menu.UserSettingsShield.Settings.SettingsStyle.GameMainMenu.ScreenshotButton:SetVerb("Screenshot")
end end
InitalizeClientAppearance(Player,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID) InitalizeClientAppearance(Player,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID)
else else
@ -629,7 +650,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
client.ConnectionRejected:connect(rejected) client.ConnectionRejected:connect(rejected)
client.ConnectionFailed:connect(failed) client.ConnectionFailed:connect(failed)
client:Connect(ServerIP,ServerPort, 0, 20) client:Connect(ServerIP,ServerPort, 0, 20)
end) end)
end) end)
if not suc then if not suc then
@ -642,7 +663,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,IconType) function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,IconType)
if (rbxlegacyversion == "ultra" or rbxlegacyversion == "omega" or rbxlegacyversion == "delta-omega") then if (rbxlegacyversion == "omega" or rbxlegacyversion == "delta-omega") then
game:GetService("RunService"):Run() game:GetService("RunService"):Run()
else else
game:GetService("RunService"):run() game:GetService("RunService"):run()
@ -652,20 +673,26 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
game.CoreGui.RobloxGui.TopLeftControl.Help:Remove() game.CoreGui.RobloxGui.TopLeftControl.Help:Remove()
elseif (rbxlegacyversion == "omega" or rbxlegacyversion == "delta-omega") then elseif (rbxlegacyversion == "omega" or rbxlegacyversion == "delta-omega") then
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.Help:Remove() game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.Help:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.ReportAbuse:Remove() game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.ReportAbuse:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.RecordToggle.Position = UDim2.new(1, -150, 1, -40) game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.RecordToggle:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.Screenshot.Position = UDim2.new(1, -118, 1, -40) game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.Screenshot:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.ToggleFullScreen.Position = UDim2.new(1, -85, 1, -48) game.CoreGui.RobloxGui.ControlFrame.BottomRightControl.ToggleFullScreen:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomLeftControl.TogglePlayMode:Remove() game.CoreGui.RobloxGui.ControlFrame.BottomLeftControl.TogglePlayMode:Remove()
game.CoreGui.RobloxGui.ControlFrame.BottomLeftControl.Exit:Remove() game.CoreGui.RobloxGui.ControlFrame.BottomLeftControl.Exit:Remove()
elseif (rbxlegacyversion == "ultra") then
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl:Remove()
end end
--[[elseif (rbxlegacyversion == "ultra") then
game.CoreGui.RobloxGui.ControlFrame.BottomRightControl:Remove()
end]]
local plr = game.Players:CreateLocalPlayer(UserID) local plr = game.Players:CreateLocalPlayer(UserID)
plr.Name = PlayerName plr.Name = PlayerName
plr:LoadCharacter() plr:LoadCharacter()
if (rbxlegacyversion == "omega") then
wait(5) -- we have to wait until the menu gets built, don't we?
plr.PlayerGui.Menu.UserSettingsShield.Settings.SettingsStyle.GameSettingsMenu.FullscreenCheckbox:SetVerb("ToggleFullScreen")
plr.PlayerGui.Menu.UserSettingsShield.Settings.SettingsStyle.GameMainMenu.ScreenshotButton:SetVerb("Screenshot")
end
pcall(function() plr:SetUnder13(false) end) pcall(function() plr:SetUnder13(false) end)
if (rbxlegacyversion == "delta" or rbxlegacyversion == "omega" or rbxlegacyversion == "delta-omega" or rbxlegacyversion == "ultra") then if (rbxlegacyversion == "delta" or rbxlegacyversion == "omega" or rbxlegacyversion == "delta-omega") then
if (IconType == "BC") then if (IconType == "BC") then
plr:SetMembershipType(Enum.MembershipType.BuildersClub) plr:SetMembershipType(Enum.MembershipType.BuildersClub)
elseif (IconType == "TBC") then elseif (IconType == "TBC") then

File diff suppressed because it is too large Load Diff

View File

@ -1,336 +0,0 @@
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
<External>null</External>
<External>nil</External>
<Item class="Script" referent="RBX0">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">GUI_Copy</string>
<ProtectedString name="Source">script.HealthGUI:clone().Parent = game.StarterGui;
script:remove();</ProtectedString>
<bool name="archivable">true</bool>
</Properties>
<Item class="GuiMain" referent="RBX1">
<Properties>
<string name="Name">HealthGUI</string>
<bool name="archivable">true</bool>
</Properties>
<Item class="Frame" referent="RBX2">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4285215356</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">1</int>
<string name="Name">tray</string>
<UDim2 name="Position">
<XS>0.5</XS>
<XO>-44</XO>
<YS>1</YS>
<YO>-26</YO>
</UDim2>
<UDim2 name="Size">
<XS>0</XS>
<XO>170</XO>
<YS>0</YS>
<YO>18</YO>
</UDim2>
<token name="SizeConstraint">2</token>
<token name="Style">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
<Item class="ImageLabel" referent="RBX3">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4294967295</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">1</int>
<Content name="Image"><url>rbxasset://textures/healthgui/bkg.png</url></Content>
<string name="Name">bkg</string>
<UDim2 name="Position">
<XS>0</XS>
<XO>0</XO>
<YS>0</YS>
<YO>0</YO>
</UDim2>
<UDim2 name="Size">
<XS>1</XS>
<XO>0</XO>
<YS>1</YS>
<YO>0</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="ImageLabel" referent="RBX4">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4294967295</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">1</int>
<Content name="Image"><url>rbxasset://textures/healthgui/BarRed.png</url></Content>
<string name="Name">barRed</string>
<UDim2 name="Position">
<XS>0.0189999994</XS>
<XO>0</XO>
<YS>0.100000001</YS>
<YO>0</YO>
</UDim2>
<UDim2 name="Size">
<XS>0</XS>
<XO>0</XO>
<YS>0</YS>
<YO>0</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Frame" referent="RBX5">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4294967295</Color3>
<float name="BackgroundTransparency">1.00000012</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">0</int>
<string name="Name">bar2</string>
<UDim2 name="Position">
<XS>0.0189999994</XS>
<XO>0</XO>
<YS>0.100000001</YS>
<YO>0</YO>
</UDim2>
<UDim2 name="Size">
<XS>0.192000002</XS>
<XO>0</XO>
<YS>0.829999983</YS>
<YO>0</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<token name="Style">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
<Item class="Script" referent="RBX6">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">Script</string>
<ProtectedString name="Source">h = script.Parent.Parent.Parent.Parent.Parent.Character.Humanoid
tray = script.Parent.Parent
base = tray.Parent
local lastHealth = 100
local lastHealth2 = 100
local maxWidth = 0.96
function UpdateGUI(health)
local width = (health / h.MaxHealth) * maxWidth
local height = 0.83
local lastX = tray.bar.Position.X.Scale
local x = 0.019 + (maxWidth - width)
local y = 0.1
tray.bar.Position = UDim2.new(x,0,y, 0)
tray.bar.Size = UDim2.new(width, 0, height, 0)
-- If more than 1/4 health, bar = green. Else, bar = red.
if( (health / h.MaxHealth) &gt; 0.25 ) then
tray.barRed.Size = UDim2.new(0, 0, 0, 0)
else
tray.barRed.Position = tray.bar.Position
tray.barRed.Size = tray.bar.Size
tray.bar.Size = UDim2.new(0, 0, 0, 0)
end
if ( (lastHealth - health) &gt; (h.MaxHealth / 10) ) then
lastHealth = health
if h.Health ~= h.MaxHealth then
delay(0,function()
AnimateHurtOverlay()
end)
delay(0,function()
AnimateBars(x, y, lastX, height)
end)
end
else
lastHealth = health
end
end
function AnimateBars(x, y, lastX, height)
local width = math.abs(x - lastX)
if( x &gt; lastX ) then
x = lastX
end
tray.bar2.Position = UDim2.new(x,0, y, 0)
tray.bar2.Size = UDim2.new(width, 0, height, 0)
tray.bar2.BackgroundTransparency = 0
local GBchannels = 1
local j = 0.2
local i_total = 30
for i=1,i_total do
-- Increment Values
if (GBchannels &lt; 0.2) then
j = -j
end
GBchannels = GBchannels + j
if (i &gt; (i_total - 10)) then
tray.bar2.BackgroundTransparency = tray.bar2.BackgroundTransparency + 0.1
end
tray.bar2.BackgroundColor3 = Color3.new(1, GBchannels, GBchannels)
wait(0.02)
end
end
function AnimateHurtOverlay()
-- Start:
-- overlay.Position = UDim2.new(0, 0, 0, -22)
-- overlay.Size = UDim2.new(1, 0, 1.15, 30)
-- Finish:
-- overlay.Position = UDim2.new(-2, 0, -2, -22)
-- overlay.Size = UDim2.new(4.5, 0, 4.65, 30)
overlay = base.hurtOverlay
overlay.Visible = true
overlay.Position = UDim2.new(-2, 0, -2, -22)
overlay.Size = UDim2.new(4.5, 0, 4.65, 30)
-- Animate In, fast
local i_total = 2
local wiggle_total = 0
local wiggle_i = 0.02
for i=1,i_total do
overlay.Position = UDim2.new( (-2 + (2 * (i/i_total)) + wiggle_total/2), 0, (-2 + (2 * (i/i_total)) + wiggle_total/2), -22 )
overlay.Size = UDim2.new( (4.5 - (3.5 * (i/i_total)) + wiggle_total), 0, (4.65 - (3.5 * (i/i_total)) + wiggle_total), 30 )
wait(0.01)
end
i_total = 30
wait(0.03)
-- Animate Out, slow
for i=1,i_total do
if( math.abs(wiggle_total) &gt; (wiggle_i * 3) ) then
wiggle_i = -wiggle_i
end
wiggle_total = wiggle_total + wiggle_i
overlay.Position = UDim2.new( (0 - (2 * (i/i_total)) + wiggle_total/2), 0, (0 - (2 * (i/i_total)) + wiggle_total/2), -22 )
overlay.Size = UDim2.new( (1 + (3.5 * (i/i_total)) + wiggle_total), 0, (1.15 + (3.5 * (i/i_total)) + wiggle_total), 30 )
wait(0.01)
end
-- Hide after we&apos;re done
overlay.Position = UDim2.new(10, 0, 0, 0)
overlay.Visible = false
end
h.Changed:connect(function()
UpdateGUI(h.Health)
if ( (lastHealth2 - h.Health) &gt; (h.MaxHealth / 10) ) then
lastHealth2 = h.Health
else
lastHealth2 = h.Health
end end)
</ProtectedString>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
<Item class="ImageLabel" referent="RBX7">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4294967295</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">1</int>
<Content name="Image"><url>rbxasset://textures/healthgui/Bar.png</url></Content>
<string name="Name">bar</string>
<UDim2 name="Position">
<XS>0.0189999994</XS>
<XO>0</XO>
<YS>0.100000001</YS>
<YO>0</YO>
</UDim2>
<UDim2 name="Size">
<XS>0.959999979</XS>
<XO>0</XO>
<YS>0.829999983</YS>
<YO>0</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="ImageLabel" referent="RBX8">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4294967295</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">0</int>
<Content name="Image"><url>rbxasset://textures/healthgui/label.png</url></Content>
<string name="Name">label</string>
<UDim2 name="Position">
<XS>0.680000007</XS>
<XO>0</XO>
<YS>0.300000012</YS>
<YO>0</YO>
</UDim2>
<UDim2 name="Size">
<XS>0.25</XS>
<XO>0</XO>
<YS>0.349999994</YS>
<YO>0</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
<Item class="ImageLabel" referent="RBX9">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4290164919</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">1</int>
<Content name="Image"><url>rbxasset://textures/healthgui/HurtOverlay.png</url></Content>
<string name="Name">hurtOverlay</string>
<UDim2 name="Position">
<XS>2</XS>
<XO>0</XO>
<YS>0</YS>
<YO>-22</YO>
</UDim2>
<UDim2 name="Size">
<XS>1</XS>
<XO>0</XO>
<YS>1.1500001</YS>
<YO>30</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<bool name="Visible">false</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
</Item>
</roblox>

View File

@ -1,336 +0,0 @@
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
<External>null</External>
<External>nil</External>
<Item class="Script" referent="RBX0">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">GUI_Copy</string>
<ProtectedString name="Source">script.HealthGUI:clone().Parent = game.StarterGui;
script:remove();</ProtectedString>
<bool name="archivable">true</bool>
</Properties>
<Item class="GuiMain" referent="RBX1">
<Properties>
<string name="Name">HealthGUI</string>
<bool name="archivable">true</bool>
</Properties>
<Item class="Frame" referent="RBX2">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4285215356</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">1</int>
<string name="Name">tray</string>
<UDim2 name="Position">
<XS>0.5</XS>
<XO>-44</XO>
<YS>1</YS>
<YO>-26</YO>
</UDim2>
<UDim2 name="Size">
<XS>0</XS>
<XO>170</XO>
<YS>0</YS>
<YO>18</YO>
</UDim2>
<token name="SizeConstraint">2</token>
<token name="Style">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
<Item class="ImageLabel" referent="RBX3">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4294967295</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">1</int>
<Content name="Image"><url>rbxasset://textures/healthgui/bkg.png</url></Content>
<string name="Name">bkg</string>
<UDim2 name="Position">
<XS>0</XS>
<XO>0</XO>
<YS>0</YS>
<YO>0</YO>
</UDim2>
<UDim2 name="Size">
<XS>1</XS>
<XO>0</XO>
<YS>1</YS>
<YO>0</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="ImageLabel" referent="RBX4">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4294967295</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">1</int>
<Content name="Image"><url>rbxasset://textures/healthgui/BarRed.png</url></Content>
<string name="Name">barRed</string>
<UDim2 name="Position">
<XS>0.0189999994</XS>
<XO>0</XO>
<YS>0.100000001</YS>
<YO>0</YO>
</UDim2>
<UDim2 name="Size">
<XS>0</XS>
<XO>0</XO>
<YS>0</YS>
<YO>0</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Frame" referent="RBX5">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4294967295</Color3>
<float name="BackgroundTransparency">1.00000012</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">0</int>
<string name="Name">bar2</string>
<UDim2 name="Position">
<XS>0.0189999994</XS>
<XO>0</XO>
<YS>0.100000001</YS>
<YO>0</YO>
</UDim2>
<UDim2 name="Size">
<XS>0.192000002</XS>
<XO>0</XO>
<YS>0.829999983</YS>
<YO>0</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<token name="Style">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
<Item class="Script" referent="RBX6">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">Script</string>
<ProtectedString name="Source">h = script.Parent.Parent.Parent.Parent.Parent.Character.Humanoid
tray = script.Parent.Parent
base = tray.Parent
local lastHealth = 100
local lastHealth2 = 100
local maxWidth = 0.96
function UpdateGUI(health)
local width = (health / h.MaxHealth) * maxWidth
local height = 0.83
local lastX = tray.bar.Position.X.Scale
local x = 0.019 + (maxWidth - width)
local y = 0.1
tray.bar.Position = UDim2.new(x,0,y, 0)
tray.bar.Size = UDim2.new(width, 0, height, 0)
-- If more than 1/4 health, bar = green. Else, bar = red.
if( (health / h.MaxHealth) &gt; 0.25 ) then
tray.barRed.Size = UDim2.new(0, 0, 0, 0)
else
tray.barRed.Position = tray.bar.Position
tray.barRed.Size = tray.bar.Size
tray.bar.Size = UDim2.new(0, 0, 0, 0)
end
if ( (lastHealth - health) &gt; (h.MaxHealth / 10) ) then
lastHealth = health
if h.Health ~= h.MaxHealth then
delay(0,function()
AnimateHurtOverlay()
end)
delay(0,function()
AnimateBars(x, y, lastX, height)
end)
end
else
lastHealth = health
end
end
function AnimateBars(x, y, lastX, height)
local width = math.abs(x - lastX)
if( x &gt; lastX ) then
x = lastX
end
tray.bar2.Position = UDim2.new(x,0, y, 0)
tray.bar2.Size = UDim2.new(width, 0, height, 0)
tray.bar2.BackgroundTransparency = 0
local GBchannels = 1
local j = 0.2
local i_total = 30
for i=1,i_total do
-- Increment Values
if (GBchannels &lt; 0.2) then
j = -j
end
GBchannels = GBchannels + j
if (i &gt; (i_total - 10)) then
tray.bar2.BackgroundTransparency = tray.bar2.BackgroundTransparency + 0.1
end
tray.bar2.BackgroundColor3 = Color3.new(1, GBchannels, GBchannels)
wait(0.02)
end
end
function AnimateHurtOverlay()
-- Start:
-- overlay.Position = UDim2.new(0, 0, 0, -22)
-- overlay.Size = UDim2.new(1, 0, 1.15, 30)
-- Finish:
-- overlay.Position = UDim2.new(-2, 0, -2, -22)
-- overlay.Size = UDim2.new(4.5, 0, 4.65, 30)
overlay = base.hurtOverlay
overlay.Visible = true
overlay.Position = UDim2.new(-2, 0, -2, -22)
overlay.Size = UDim2.new(4.5, 0, 4.65, 30)
-- Animate In, fast
local i_total = 2
local wiggle_total = 0
local wiggle_i = 0.02
for i=1,i_total do
overlay.Position = UDim2.new( (-2 + (2 * (i/i_total)) + wiggle_total/2), 0, (-2 + (2 * (i/i_total)) + wiggle_total/2), -22 )
overlay.Size = UDim2.new( (4.5 - (3.5 * (i/i_total)) + wiggle_total), 0, (4.65 - (3.5 * (i/i_total)) + wiggle_total), 30 )
wait(0.01)
end
i_total = 30
wait(0.03)
-- Animate Out, slow
for i=1,i_total do
if( math.abs(wiggle_total) &gt; (wiggle_i * 3) ) then
wiggle_i = -wiggle_i
end
wiggle_total = wiggle_total + wiggle_i
overlay.Position = UDim2.new( (0 - (2 * (i/i_total)) + wiggle_total/2), 0, (0 - (2 * (i/i_total)) + wiggle_total/2), -22 )
overlay.Size = UDim2.new( (1 + (3.5 * (i/i_total)) + wiggle_total), 0, (1.15 + (3.5 * (i/i_total)) + wiggle_total), 30 )
wait(0.01)
end
-- Hide after we&apos;re done
overlay.Position = UDim2.new(10, 0, 0, 0)
overlay.Visible = false
end
h.Changed:connect(function()
UpdateGUI(h.Health)
if ( (lastHealth2 - h.Health) &gt; (h.MaxHealth / 10) ) then
lastHealth2 = h.Health
else
lastHealth2 = h.Health
end end)
</ProtectedString>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
<Item class="ImageLabel" referent="RBX7">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4294967295</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">1</int>
<Content name="Image"><url>rbxasset://textures/healthgui/Bar.png</url></Content>
<string name="Name">bar</string>
<UDim2 name="Position">
<XS>0.0189999994</XS>
<XO>0</XO>
<YS>0.100000001</YS>
<YO>0</YO>
</UDim2>
<UDim2 name="Size">
<XS>0.959999979</XS>
<XO>0</XO>
<YS>0.829999983</YS>
<YO>0</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="ImageLabel" referent="RBX8">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4294967295</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">0</int>
<Content name="Image"><url>rbxasset://textures/healthgui/label.png</url></Content>
<string name="Name">label</string>
<UDim2 name="Position">
<XS>0.680000007</XS>
<XO>0</XO>
<YS>0.300000012</YS>
<YO>0</YO>
</UDim2>
<UDim2 name="Size">
<XS>0.25</XS>
<XO>0</XO>
<YS>0.349999994</YS>
<YO>0</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<bool name="Visible">true</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
<Item class="ImageLabel" referent="RBX9">
<Properties>
<bool name="Active">false</bool>
<Color3 name="BackgroundColor3">4290164919</Color3>
<float name="BackgroundTransparency">1</float>
<Color3 name="BorderColor3">4279970357</Color3>
<int name="BorderSizePixel">1</int>
<Content name="Image"><url>rbxasset://textures/healthgui/HurtOverlay.png</url></Content>
<string name="Name">hurtOverlay</string>
<UDim2 name="Position">
<XS>2</XS>
<XO>0</XO>
<YS>0</YS>
<YO>-22</YO>
</UDim2>
<UDim2 name="Size">
<XS>1</XS>
<XO>0</XO>
<YS>1.1500001</YS>
<YO>30</YO>
</UDim2>
<token name="SizeConstraint">0</token>
<bool name="Visible">false</bool>
<int name="ZIndex">1</int>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
</Item>
</roblox>

View File

@ -120,64 +120,86 @@
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="pictureBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="pictureBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
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
</value> </value>
</data> </data>
<data name="label4.Text" xml:space="preserve"> <data name="label4.Text" xml:space="preserve">

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

View File

@ -1 +1,22 @@
Source code for RBXLegacy's launcher, installer, and server. All of these source files are under the license specified in LICENSE.MD.
![Logo](https://cdn.discordapp.com/attachments/327072930066333697/327073266197856268/Logo.png)
## Overview
RBXLegacy is a launcher and website for ROBLOX's clients from 2006 - 2012, designed so you can play offline, online and through LAN.
This is the source code for RBXLegacy's launcher, installer and server. All of these source files are under the license specified in [LICENSE.MD](https://github.com/Bitl/RBXLegacy-src/blob/master/LICENSE.MD).
## Installing
The latest stable version will always be found on the official Discord in `#downloads`. You can ask a friend to get an invite for the Discord.
You can also download it from this repository to receive changes as soon as they are committed.
## Contributing
If you find any problem(s) in RBXLegacy, [feel free to submit an issue here.](https://github.com/Bitl/RBXLegacy-src/issues)
If you know how to solve an (existing) issue in RBXLegacy, [you can submit a pull request for it.](https://github.com/Bitl/RBXLegacy-src/pulls)
And of course, we welcome everyone with new ideas. [You can post your idea in issues as well.](https://github.com/Bitl/RBXLegacy-src/issues)

712
character_fakeclients.rbxm Normal file
View File

@ -0,0 +1,712 @@
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
<External>null</External>
<External>nil</External>
<Item class="Model" referent="RBX0">
<Properties>
<token name="Controller">7</token>
<bool name="ControllerFlagShown">true</bool>
<CoordinateFrame name="ModelInPrimary">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<string name="Name">erik.cassel</string>
<Ref name="PrimaryPart">RBX1</Ref>
<bool name="archivable">true</bool>
</Properties>
<Item class="Part" referent="RBX1">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">24</int>
<CoordinateFrame name="CFrame">
<X>0</X>
<Y>4.5</Y>
<Z>-0.5</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">true</bool>
<string name="Name">Head</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">0</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>2</X>
<Y>1</Y>
<Z>1</Z>
</Vector3>
</Properties>
<Item class="SpecialMesh" referent="RBX2">
<Properties>
<Content name="MeshId"><null></null></Content>
<token name="MeshType">0</token>
<string name="Name">Mesh</string>
<Vector3 name="Scale">
<X>1.25</X>
<Y>1.25</Y>
<Z>1.25</Z>
</Vector3>
<Content name="TextureId"><null></null></Content>
<Vector3 name="VertexColor">
<X>1</X>
<Y>1</Y>
<Z>1</Z>
</Vector3>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Decal" referent="RBX3">
<Properties>
<token name="Face">5</token>
<string name="Name">face</string>
<float name="Shiny">20</float>
<float name="Specular">0</float>
<Content name="Texture"><url>rbxasset://textures\face.png</url></Content>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Weld" referent="RBX4">
<Properties>
<CoordinateFrame name="C0">
<X>0</X>
<Y>0.5</Y>
<Z>0</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<CoordinateFrame name="C1">
<X>0</X>
<Y>-0.200000003</Y>
<Z>0.150000006</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<string name="Name">HeadWeld</string>
<Ref name="Part0">RBX1</Ref>
<Ref name="Part1">null</Ref>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Weld" referent="RBX5">
<Properties>
<CoordinateFrame name="C0">
<X>0</X>
<Y>0.5</Y>
<Z>0</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<CoordinateFrame name="C1">
<X>0</X>
<Y>-0.200000003</Y>
<Z>0.150000006</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<string name="Name">HeadWeld</string>
<Ref name="Part0">RBX1</Ref>
<Ref name="Part1">null</Ref>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
<Item class="Part" referent="RBX6">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>0</X>
<Y>3</Y>
<Z>-0.5</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>-0</R02>
<R10>-0</R10>
<R11>1</R11>
<R12>-0</R12>
<R20>-0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">0</float>
<float name="LeftParamB">0</float>
<token name="LeftSurface">2</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">true</bool>
<string name="Name">Torso</string>
<float name="Reflectance">0</float>
<float name="RightParamA">0</float>
<float name="RightParamB">0</float>
<token name="RightSurface">2</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>2</X>
<Y>2</Y>
<Z>1</Z>
</Vector3>
</Properties>
<Item class="Decal" referent="RBX7">
<Properties>
<token name="Face">5</token>
<string name="Name">roblox</string>
<float name="Shiny">20</float>
<float name="Specular">0</float>
<Content name="Texture"><null></null></Content>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
<Item class="Part" referent="RBX8">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">24</int>
<CoordinateFrame name="CFrame">
<X>1.5</X>
<Y>3</Y>
<Z>-0.5</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">true</bool>
<string name="Name">Left Arm</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>1</X>
<Y>2</Y>
<Z>1</Z>
</Vector3>
</Properties>
<Item class="Script" referent="RBX9">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">Script</string>
<string name="Source">while true do--while its told its true it will happen
script.Parent.CanCollide=true--script.Parent.(whatever) meens that its talking about the script effecting the
--parent, which is the brick, changing whatever setting in the brick its told too change. and the true/false is
--setting the setting to something else useing whatever unit it uses.
wait(0)--this is how long it will wait until going to the next piece of the script below it or will restart it.
script.Parent.CanCollide = false
end</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
<Item class="Part" referent="RBX10">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">24</int>
<CoordinateFrame name="CFrame">
<X>-1.5</X>
<Y>3</Y>
<Z>-0.5</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">true</bool>
<string name="Name">Right Arm</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>1</X>
<Y>2</Y>
<Z>1</Z>
</Vector3>
</Properties>
<Item class="Script" referent="RBX11">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">Script</string>
<string name="Source">while true do--while its told its true it will happen
script.Parent.CanCollide=true--script.Parent.(whatever) meens that its talking about the script effecting the
--parent, which is the brick, changing whatever setting in the brick its told too change. and the true/false is
--setting the setting to something else useing whatever unit it uses.
wait(0)--this is how long it will wait until going to the next piece of the script below it or will restart it.
script.Parent.CanCollide = false
end</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
<Item class="Part" referent="RBX12">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">0</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">119</int>
<CoordinateFrame name="CFrame">
<X>0.5</X>
<Y>1</Y>
<Z>-0.5</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">false</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">true</bool>
<string name="Name">Left Leg</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>1</X>
<Y>2</Y>
<Z>1</Z>
</Vector3>
</Properties>
<Item class="Script" referent="RBX13">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">Script</string>
<string name="Source">while true do--while its told its true it will happen
script.Parent.CanCollide=true--script.Parent.(whatever) meens that its talking about the script effecting the
--parent, which is the brick, changing whatever setting in the brick its told too change. and the true/false is
--setting the setting to something else useing whatever unit it uses .
wait(0)--this is how long it will wait until going to the next piece of the script below it or will restart it.
script.Parent.CanCollide=false--script.Parent.(whatever) meens that its talking about the script effecting the
--parent, which is the brick, changing whatever setting in the brick its told too change. and the true/false is
--setting the setting to something else useing whatever unit it uses.
wait(0)--this is how long it will wait until going to the next piece of the script below it or will restart it.
end
while true do--while its told its true it will happen
script.Parent.CanCollide=true--script.Parent.(whatever) meens that its talking about the script effecting the
--parent, which is the brick, changing whatever setting in the brick its told too change. and the true/false is
--setting the setting to something else useing whatever unit it uses .
wait(0)--this is how long it will wait until going to the next piece of the script below it or will restart it.
script.Parent.CanCollide=false--script.Parent.(whatever) meens that its talking about the script effecting the
--parent, which is the brick, changing whatever setting in the brick its told too change. and the true/false is
--setting the setting to something else useing whatever unit it uses.
wait(0)--this is how long it will wait until going to the next piece of the script below it or will restart it.
end
</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
<Item class="Part" referent="RBX14">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">0</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">119</int>
<CoordinateFrame name="CFrame">
<X>-0.5</X>
<Y>1</Y>
<Z>-0.5</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">false</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">true</bool>
<string name="Name">Right Leg</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>1</X>
<Y>2</Y>
<Z>1</Z>
</Vector3>
</Properties>
<Item class="Script" referent="RBX15">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">Script</string>
<string name="Source">while true do--while its told its true it will happen
script.Parent.CanCollide=true--script.Parent.(whatever) meens that its talking about the script effecting the
--parent, which is the brick, changing whatever setting in the brick its told too change. and the true/false is
--setting the setting to something else useing whatever unit it uses .
wait(0)--this is how long it will wait until going to the next piece of the script below it or will restart it.
script.Parent.CanCollide=false--script.Parent.(whatever) meens that its talking about the script effecting the
--parent, which is the brick, changing whatever setting in the brick its told too change. and the true/false is
--setting the setting to something else useing whatever unit it uses.
wait(0)--this is how long it will wait until going to the next piece of the script below it or will restart it.
end
while true do--while its told its true it will happen
script.Parent.CanCollide=true--script.Parent.(whatever) meens that its talking about the script effecting the
--parent, which is the brick, changing whatever setting in the brick its told too change. and the true/false is
--setting the setting to something else useing whatever unit it uses .
wait(0)--this is how long it will wait until going to the next piece of the script below it or will restart it.
script.Parent.CanCollide=false--script.Parent.(whatever) meens that its talking about the script effecting the
--parent, which is the brick, changing whatever setting in the brick its told too change. and the true/false is
--setting the setting to something else useing whatever unit it uses.
wait(0)--this is how long it will wait until going to the next piece of the script below it or will restart it.
end
</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
<Item class="Humanoid" referent="RBX16">
<Properties>
<float name="Health">100</float>
<bool name="Jump">false</bool>
<float name="MaxHealth">100</float>
<string name="Name">Humanoid</string>
<bool name="Sit">false</bool>
<bool name="Strafe">false</bool>
<Vector3 name="TargetPoint">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<Vector3 name="WalkDirection">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="WalkRotationalVelocity">0</float>
<Ref name="WalkToPart">null</Ref>
<Vector3 name="WalkToPoint">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Script" referent="RBX17">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">Hats</string>
<string name="Source">while true do
wait()
if script.Parent.Humanoid.Health == 0 then
local Hat = nil
for a,b in ipairs(script.Parent:GetChildren())do
if(b.className == &quot;Hat&quot;)then
Hat = b
local Handles = Hat:findFirstChild(&quot;Handle&quot;)
if Handles then
Handles.CanCollide = true
end
end
end
end
end
</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item>
</roblox>

301
humanoidAnimate2007.rbxm Normal file
View File

@ -0,0 +1,301 @@
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
<External>null</External>
<External>nil</External>
<Item class="Script" referent="RBX0">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">Animate</string>
<string name="Source">-- Now with exciting TeamColors HACK!
function waitForChild(parent, childName)
local child = parent:findFirstChild(childName)
if child then return child end
while true do
child = parent.ChildAdded:wait()
if child.Name==childName then return child end
end
end
----------------------------- TEAM COLORS
function onTeamChanged(player)
wait(1)
local char = player.Character
if char == nil then return end
if player.Neutral then
-- Replacing the current BodyColor object will force a reset
local old = char:findFirstChild(&quot;Body Colors&quot;)
if not old then return end
old:clone().Parent = char
old.Parent = nil
else
local head = char:findFirstChild(&quot;Head&quot;)
local torso = char:findFirstChild(&quot;Torso&quot;)
local left_arm = char:findFirstChild(&quot;Left Arm&quot;)
local right_arm = char:findFirstChild(&quot;Right Arm&quot;)
local left_leg = char:findFirstChild(&quot;Left Leg&quot;)
local right_leg = char:findFirstChild(&quot;Right Leg&quot;)
if head then head.BrickColor = BrickColor.new(24) end
if torso then torso.BrickColor = player.TeamColor end
if left_arm then left_arm.BrickColor = BrickColor.new(26) end
if right_arm then right_arm.BrickColor = BrickColor.new(26) end
if left_leg then left_leg.BrickColor = BrickColor.new(26) end
if right_leg then right_leg.BrickColor = BrickColor.new(26) end
end
end
function onPlayerPropChanged(property, player)
if property == &quot;Character&quot; then
onTeamChanged(player)
end
if property== &quot;TeamColor&quot; or property == &quot;Neutral&quot; then
onTeamChanged(player)
end
end
local cPlayer = game.Players:GetPlayerFromCharacter(script.Parent)
cPlayer.Changed:connect(function(property) onPlayerPropChanged(property, cPlayer) end )
onTeamChanged(cPlayer)
----------------------------- ANIMATION
-- declarations
local Figure = script.Parent
local Torso = waitForChild(Figure, &quot;Torso&quot;)
local RightShoulder = waitForChild(Torso, &quot;Right Shoulder&quot;)
local LeftShoulder = waitForChild(Torso, &quot;Left Shoulder&quot;)
local RightHip = waitForChild(Torso, &quot;Right Hip&quot;)
local LeftHip = waitForChild(Torso, &quot;Left Hip&quot;)
local Neck = waitForChild(Torso, &quot;Neck&quot;)
local Humanoid = waitForChild(Figure, &quot;Humanoid&quot;)
local pose = &quot;Standing&quot;
local toolAnim = &quot;None&quot;
local toolAnimTime = 0
local isSeated = false
-- functions
function onRunning(speed)
if isSeated then return end
if speed&gt;0 then
pose = &quot;Running&quot;
else
pose = &quot;Standing&quot;
end
end
function onDied()
pose = &quot;Dead&quot;
end
function onJumping()
isSeated = false
pose = &quot;Jumping&quot;
end
function onClimbing()
pose = &quot;Climbing&quot;
end
function onGettingUp()
pose = &quot;GettingUp&quot;
end
function onFreeFall()
pose = &quot;FreeFall&quot;
end
function onFallingDown()
pose = &quot;FallingDown&quot;
end
function onSeated()
isSeated = true
pose = &quot;Seated&quot;
end
function moveJump()
RightShoulder.MaxVelocity = 0.5
LeftShoulder.MaxVelocity = 0.5
RightShoulder.DesiredAngle = 3.14
LeftShoulder.DesiredAngle = -3.14
RightHip.DesiredAngle = 0
LeftHip.DesiredAngle = 0
end
-- same as jump for now
function moveFreeFall()
RightShoulder.MaxVelocity = 0.5
LeftShoulder.MaxVelocity = 0.5
RightShoulder.DesiredAngle = 3.14
LeftShoulder.DesiredAngle = -3.14
RightHip.DesiredAngle = 0
LeftHip.DesiredAngle = 0
wait(0.5)
RightShoulder.MaxVelocity = 0.1
LeftShoulder.MaxVelocity = 0.1
end
function moveSit()
RightShoulder.MaxVelocity = 0.15
LeftShoulder.MaxVelocity = 0.15
RightShoulder.DesiredAngle = 3.14 /2
LeftShoulder.DesiredAngle = -3.14 /2
RightHip.DesiredAngle = 3.14 /2
LeftHip.DesiredAngle = -3.14 /2
end
function getTool()
for _, kid in ipairs(Figure:GetChildren()) do
if kid.className == &quot;Tool&quot; then return kid end
end
return nil
end
function getToolAnim(tool)
for _, c in ipairs(tool:GetChildren()) do
if c.Name == &quot;toolanim&quot; and c.className == &quot;StringValue&quot; then
return c
end
end
return nil
end
function animateTool()
if (toolAnim == &quot;None&quot;) then
RightShoulder.DesiredAngle = 1.57
return
end
if (toolAnim == &quot;Slash&quot;) then
RightShoulder.MaxVelocity = 0.5
RightShoulder.DesiredAngle = 0
return
end
if (toolAnim == &quot;Lunge&quot;) then
RightShoulder.MaxVelocity = 0.5
LeftShoulder.MaxVelocity = 0.5
RightHip.MaxVelocity = 0.5
LeftHip.MaxVelocity = 0.5
RightShoulder.DesiredAngle = 1.57
LeftShoulder.DesiredAngle = 1.0
RightHip.DesiredAngle = 1.57
LeftHip.DesiredAngle = 1.0
return
end
end
function move(time)
local amplitude
local frequency
if (pose == &quot;Jumping&quot;) then
moveJump()
return
end
if (pose == &quot;FreeFall&quot;) then
moveFreeFall()
return
end
if (pose == &quot;Seated&quot;) then
moveSit()
return
end
local climbFudge = 0
if (pose == &quot;Running&quot;) then
RightShoulder.MaxVelocity = 0.15
LeftShoulder.MaxVelocity = 0.15
amplitude = 1
frequency = 9
elseif (pose == &quot;Climbing&quot;) and (toolAnim == &quot;None&quot;) then
RightShoulder.MaxVelocity = 0.5
LeftShoulder.MaxVelocity = 0.5
RightShoulder.DesiredAngle = 0
amplitude = 0
frequency = 0
climbFudge = -3.14
RightShoulder.DesiredAngle = 0
else
amplitude = 0.1
frequency = 1
end
desiredAngle = amplitude * math.sin(time*frequency)
RightShoulder.DesiredAngle = desiredAngle + climbFudge
LeftShoulder.DesiredAngle = desiredAngle - climbFudge
RightHip.DesiredAngle = -desiredAngle
LeftHip.DesiredAngle = -desiredAngle
local tool = getTool()
if tool then
animStringValueObject = getToolAnim(tool)
if animStringValueObject then
toolAnim = animStringValueObject.Value
-- message recieved, delete StringValue
animStringValueObject.Parent = nil
toolAnimTime = time + .3
end
if time &gt; toolAnimTime then
toolAnimTime = 0
toolAnim = &quot;None&quot;
end
animateTool()
else
toolAnim = &quot;None&quot;
toolAnimTime = 0
end
end
-- connect events
Humanoid.Died:connect(onDied)
Humanoid.Running:connect(onRunning)
Humanoid.Jumping:connect(onJumping)
Humanoid.Climbing:connect(onClimbing)
Humanoid.GettingUp:connect(onGettingUp)
Humanoid.FreeFalling:connect(onFreeFall)
Humanoid.FallingDown:connect(onFallingDown)
Humanoid.Seated:connect(onSeated)
-- main program
local runService = game:service(&quot;RunService&quot;);
while Figure.Parent~=nil do
local _, time = wait(0.1)
move(time)
end
</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
</roblox>

View File

@ -5,14 +5,15 @@
<Properties> <Properties>
<bool name="Disabled">false</bool> <bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content> <Content name="LinkedSource"><null></null></Content>
<string name="Name">GUI_Copy</string> <string name="Name">Sorter</string>
<ProtectedString name="Source">script.HealthGUI:clone().Parent = game.StarterGui; <ProtectedString name="Source">script.Health:clone().Parent = game.StarterGui
script:remove();</ProtectedString> script.ResetCommand:clone().Parent = game.Workspace
script:remove()</ProtectedString>
<bool name="archivable">true</bool> <bool name="archivable">true</bool>
</Properties> </Properties>
<Item class="GuiMain" referent="RBX1"> <Item class="GuiMain" referent="RBX1">
<Properties> <Properties>
<string name="Name">HealthGUI</string> <string name="Name">Health</string>
<bool name="archivable">true</bool> <bool name="archivable">true</bool>
</Properties> </Properties>
<Item class="Frame" referent="RBX2"> <Item class="Frame" referent="RBX2">
@ -136,5 +137,29 @@ end)
</Item> </Item>
</Item> </Item>
</Item> </Item>
<Item class="Script" referent="RBX7">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">ResetCommand</string>
<ProtectedString name="Source">function onChatted(msg, speaker)
source = string.lower(speaker.Name)
msg = string.lower(msg)
-- Note: This one is NOT caps sensitive
if msg == &quot;!!!reset&quot; then
speaker.Character.Humanoid.Health = 0
end
end
function onPlayerEntered(newPlayer)
newPlayer.Chatted:connect(function(msg) onChatted(msg, newPlayer) end)
end
game.Players.ChildAdded:connect(onPlayerEntered)</ProtectedString>
<bool name="archivable">true</bool>
</Properties>
</Item>
</Item> </Item>
</roblox> </roblox>

File diff suppressed because it is too large Load Diff

15319
libraries2012.rbxm Normal file

File diff suppressed because it is too large Load Diff

28
librariesGlobal.rbxm Normal file
View File

@ -0,0 +1,28 @@
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
<External>null</External>
<External>nil</External>
<Item class="Script" referent="RBX0">
<Properties>
<bool name="Disabled">false</bool>
<Content name="LinkedSource"><null></null></Content>
<string name="Name">ResetCommand</string>
<ProtectedString name="Source">function onChatted(msg, speaker)
source = string.lower(speaker.Name)
msg = string.lower(msg)
-- Note: This one is NOT caps sensitive
if msg == &quot;!!!reset&quot; then
speaker.Character.Humanoid.Health = 0
end
end
function onPlayerEntered(newPlayer)
newPlayer.Chatted:connect(function(msg) onChatted(msg, newPlayer) end)
end
game.Players.ChildAdded:connect(onPlayerEntered)</ProtectedString>
<bool name="archivable">true</bool>
</Properties>
</Item>
</roblox>