241 lines
7.7 KiB
Plaintext
241 lines
7.7 KiB
Plaintext
<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">Fixer</string>
|
|
<ProtectedString name="Source">game:GetService("Players").PlayerAdded:connect(function(Player)
|
|
Player.CharacterAdded:connect(function(char)
|
|
if (Player.Character ~= nil) then
|
|
script.Health:clone().Parent = Player.Character
|
|
end
|
|
end)
|
|
Player.Changed:connect(function(Property)
|
|
if (Property=="Character") and (Player.Character~=nil) then
|
|
local Character=Player.Character
|
|
local Humanoid=Character:FindFirstChild("Humanoid")
|
|
if (Humanoid~=nil) then
|
|
Humanoid.Died:connect(function() delay(5,function() script.Health:clone().Parent = Player.Character end) end)
|
|
end
|
|
end
|
|
end)
|
|
end)</ProtectedString>
|
|
<bool name="archivable">true</bool>
|
|
</Properties>
|
|
<Item class="Script" referent="RBX1">
|
|
<Properties>
|
|
<bool name="Disabled">false</bool>
|
|
<Content name="LinkedSource"><null></null></Content>
|
|
<string name="Name">Health</string>
|
|
<ProtectedString name="Source">--Responsible for regening a player's humanoid's health
|
|
|
|
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
|
|
|
|
-- declarations
|
|
local Figure = script.Parent
|
|
local Head = waitForChild(Figure, "Head")
|
|
local Humanoid = waitForChild(Figure, "Humanoid")
|
|
local regening = false
|
|
|
|
-- regeneration
|
|
function regenHealth()
|
|
if regening then return end
|
|
regening = true
|
|
|
|
while Humanoid.Health < Humanoid.MaxHealth do
|
|
local s = wait(1)
|
|
local health = Humanoid.Health
|
|
if health > 0 and health < Humanoid.MaxHealth then
|
|
local newHealthDelta = 0.01 * s * Humanoid.MaxHealth
|
|
health = health + newHealthDelta
|
|
Humanoid.Health = math.min(health,Humanoid.MaxHealth)
|
|
end
|
|
end
|
|
|
|
if Humanoid.Health > Humanoid.MaxHealth then
|
|
Humanoid.Health = Humanoid.MaxHealth
|
|
end
|
|
|
|
regening = false
|
|
end
|
|
|
|
Humanoid.HealthChanged:connect(regenHealth)
|
|
</ProtectedString>
|
|
<bool name="archivable">true</bool>
|
|
</Properties>
|
|
</Item>
|
|
</Item>
|
|
<Item class="Script" referent="RBX2">
|
|
<Properties>
|
|
<bool name="Disabled">false</bool>
|
|
<Content name="LinkedSource"><null></null></Content>
|
|
<string name="Name">Sorter</string>
|
|
<ProtectedString name="Source">script.Health:clone().Parent = game.StarterGui
|
|
script.ResetCommand:clone().Parent = game.Workspace
|
|
script:remove()</ProtectedString>
|
|
<bool name="archivable">true</bool>
|
|
</Properties>
|
|
<Item class="GuiMain" referent="RBX3">
|
|
<Properties>
|
|
<string name="Name">Health</string>
|
|
<bool name="archivable">true</bool>
|
|
</Properties>
|
|
<Item class="Frame" referent="RBX4">
|
|
<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.949999988</XS>
|
|
<XO>0</XO>
|
|
<YS>0.380000025</YS>
|
|
<YO>0</YO>
|
|
</UDim2>
|
|
<UDim2 name="Size">
|
|
<XS>0.0450000018</XS>
|
|
<XO>0</XO>
|
|
<YS>0.340000004</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="Frame" referent="RBX5">
|
|
<Properties>
|
|
<bool name="Active">false</bool>
|
|
<Color3 name="BackgroundColor3">4286892054</Color3>
|
|
<float name="BackgroundTransparency">0</float>
|
|
<Color3 name="BorderColor3">4278190080</Color3>
|
|
<int name="BorderSizePixel">0</int>
|
|
<string name="Name">HealthBar</string>
|
|
<UDim2 name="Position">
|
|
<XS>0.420000017</XS>
|
|
<XO>0</XO>
|
|
<YS>0</YS>
|
|
<YO>0</YO>
|
|
</UDim2>
|
|
<UDim2 name="Size">
|
|
<XS>0.159999996</XS>
|
|
<XO>0</XO>
|
|
<YS>0.800000012</YS>
|
|
<YO>0</YO>
|
|
</UDim2>
|
|
<token name="SizeConstraint">0</token>
|
|
<token name="Style">0</token>
|
|
<bool name="Visible">true</bool>
|
|
<int name="ZIndex">2</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
|
|
|
|
h.Changed:connect(function()
|
|
script.Parent.Size = UDim2.new(0.2, 0, 0.8 * (h.Health / h.MaxHealth), 0)
|
|
script.Parent.Position = UDim2.new(0.4, 0, 0.8 * (1- (h.Health / h.MaxHealth)) , 0)
|
|
end)
|
|
</ProtectedString>
|
|
<bool name="archivable">true</bool>
|
|
</Properties>
|
|
</Item>
|
|
</Item>
|
|
<Item class="Frame" referent="RBX7">
|
|
<Properties>
|
|
<bool name="Active">false</bool>
|
|
<Color3 name="BackgroundColor3">4289733411</Color3>
|
|
<float name="BackgroundTransparency">0</float>
|
|
<Color3 name="BorderColor3">4278190080</Color3>
|
|
<int name="BorderSizePixel">0</int>
|
|
<string name="Name">HealthBarBacking</string>
|
|
<UDim2 name="Position">
|
|
<XS>0.419999987</XS>
|
|
<XO>0</XO>
|
|
<YS>0</YS>
|
|
<YO>0</YO>
|
|
</UDim2>
|
|
<UDim2 name="Size">
|
|
<XS>0.159999996</XS>
|
|
<XO>0</XO>
|
|
<YS>0.800000012</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>
|
|
<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">1</int>
|
|
<Content name="Image"><url>rbxasset://../../../shareddata/textures/health.png</url></Content>
|
|
<string name="Name">ImageLabel</string>
|
|
<UDim2 name="Position">
|
|
<XS>0</XS>
|
|
<XO>0</XO>
|
|
<YS>0.800000012</YS>
|
|
<YO>3</YO>
|
|
</UDim2>
|
|
<UDim2 name="Size">
|
|
<XS>1</XS>
|
|
<XO>0</XO>
|
|
<YS>0.25</YS>
|
|
<YO>0</YO>
|
|
</UDim2>
|
|
<token name="SizeConstraint">1</token>
|
|
<bool name="Visible">true</bool>
|
|
<int name="ZIndex">1</int>
|
|
<bool name="archivable">true</bool>
|
|
</Properties>
|
|
</Item>
|
|
</Item>
|
|
</Item>
|
|
<Item class="Script" referent="RBX9">
|
|
<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 == "!!!reset" 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>
|
|
</roblox> |