User:Outofspace/Gus-Bot: Difference between revisions
From Legacy Roblox Wiki
Jump to navigationJump to search
>Outofspace 3.2, includes allot of fixes. |
>Outofspace No edit summary |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<br>[http://www.roblox.com/Item.aspx?ID=499790 Gus 3.3] | |||
This is a script I'm working on. Feel free to use it and modify it. | This is a script I'm working on. Feel free to use it and modify it. | ||
Line 8: | Line 10: | ||
*Heals others on touch. | *Heals others on touch. | ||
*Heals itself. | *Heals itself. | ||
*Sparkle commands ("sparkles/on" or "sparkles/off") | |||
== Future Plans == | == Future Plans == | ||
*Improving Healing itself | *Improving Healing itself | ||
*Ability to shoot rockets (via command). | *Ability to shoot rockets (via command). | ||
*More customability. | *More customability. | ||
Line 21: | Line 23: | ||
--[[ | --[[ | ||
By outofspace | By outofspace | ||
Revision 3. | Revision 3.3 | ||
--]] | --]] | ||
Line 85: | Line 87: | ||
local bav = Instance.new("BodyAngularVelocity") | local bav = Instance.new("BodyAngularVelocity") | ||
bav.Parent = m.Head | bav.Parent = m.Head | ||
bav.angularvelocity = Vector3.new(0, 0, 3) | |||
--[[ | --[[ | ||
Line 183: | Line 185: | ||
sd:Remove() | sd:Remove() | ||
sdd.Parent = m.Head | sdd.Parent = m.Head | ||
function onChatted(msg, recipient, speaker) | |||
--tyy = game.Players:findFirstChild(""..UserName.."") | |||
if string.sub(msg,1,11) == "sparkles/on" and speaker.Name == UserName then | |||
local sp = Instance.new("Sparkles") | |||
sp.Parent = m | |||
sp.Color = Color3.new(math.Random(), math.Random(), math.Random()) | |||
end | |||
if string.sub(msg,1,12) == "sparkles/off" and speaker.Name == UserName then | |||
t = m:GetChildren() | |||
for i=1, #t do | |||
if t[i].className == "Sparkles" then | |||
t[i]:Remove() | |||
end | |||
end | |||
end --onchatted | |||
function onPlayerEntered(newPlayer) | |||
print("entered") | |||
newPlayer.Chatted:connect(function(msg, recipient) onChatted(msg, recipient, newPlayer) end) | |||
end | |||
game.Players.ChildAdded:connect(onPlayerEntered) | |||
</pre> | </pre> |
Latest revision as of 01:17, 23 November 2008
This is a script I'm working on. Feel free to use it and modify it.
Features
- Follows you around.
- Heals others on touch.
- Heals itself.
- Sparkle commands ("sparkles/on" or "sparkles/off")
Future Plans
- Improving Healing itself
- Ability to shoot rockets (via command).
- More customability.
Script
--[[ By outofspace Revision 3.3 --]] ---- ---- local BotName = "Gus" --Put your pets name here. local UserName = "outofspace" --Replace with your username! cc = true --Can gus collide with other objects? ---- ---- ----Gus controls. ---- ---- local has = Instance.new("Hint") has.Parent = game.Workspace has.Text = "Creating gus..." c = game.Workspace:GetChildren() for i=1,#c do if c[i].Name == BotName and c[i].className == "Model" then c[i]:Remove() end end script.Name = "GusScript" local m = Instance.new("Model") m.Name = BotName m.Parent = game.Workspace local ma = Instance.new("Model") ma.Parent = m ma.Name = "SETTINGS" local sva = Instance.new("StringValue") sva.Name = "NameBot" sva.Parent = m.SETTINGS sva.Value = BotName local svb = Instance.new("StringValue") svb.Name = "NameUser" svb.Parent = m.SETTINGS svb.Value = UserName local b = Instance.new("Part") b.Parent = m b.Locked = true b.Name = "Head" b.Position = Vector3.new(-14.5, 103, -10) b.CanCollide = cc local rp = Instance.new("RocketPropulsion") rp.Parent = m.Head rp.Name = "RP" local h = Instance.new("Humanoid") h.Parent = m local bav = Instance.new("BodyAngularVelocity") bav.Parent = m.Head bav.angularvelocity = Vector3.new(0, 0, 3) --[[ Self heal script --]] local sa = Instance.new("Script") sa.Parent = m sa.Source =[[ 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") -- regeneration while true do local s = wait(1) local health = Humanoid.Health if health > -1 and health < Humanoid.MaxHealth then health = health + 0.05 * s * Humanoid.MaxHealth if health * 1.05 < Humanoid.MaxHealth then Humanoid.Health = health else Humanoid.Health = Humanoid.MaxHealth end end end ]] sad = sa:clone() sa:Remove() --Removes the old script sad.Parent = game.Workspace.Gus --Replaces the old script sad.Name = "HealingScript" local sb = Instance.new("Script") --Touch to heal script. sb.Parent = m.Head sb.Source =[[ function onTouched(part) local h = part.Parent:findFirstChild("Humanoid") -- Find Humanoids in whatever touched this if (h ~=nil) then -- If there is a Humanoid then h.Health = h.MaxHealth -- Set the health to maximum (full healing) end end script.Parent.Touched:connect(onTouched) -- Make it call onTouched when touched ]] sbd = sb:clone() sb:Remove() sbd.Parent = m.Head sbd.Name = "Touch-to-Heal" --game.Workspace.Gus.Name = game.Workspace.Gus.SETTINGS.NameBot.Value --Sets name ty = game.Workspace:findFirstChild(""..UserName.."") if (ty ~= nil) then m.Head.RP.Target = ty.Head else m:Remove() end has.Text = "Done!" wait(2) has:Remove() local sd = Instance.new("Script") sd.Parent = m.Head sd.Source = [[ script.Name = "FollowScript" while true do --script.Parent.RP.Target = script.Parent.Parent.SETTINGS.NameUser.Value script.Parent.RP:Fire() wait(0.1) end ]] sdd = sd:clone() sd:Remove() sdd.Parent = m.Head function onChatted(msg, recipient, speaker) --tyy = game.Players:findFirstChild(""..UserName.."") if string.sub(msg,1,11) == "sparkles/on" and speaker.Name == UserName then local sp = Instance.new("Sparkles") sp.Parent = m sp.Color = Color3.new(math.Random(), math.Random(), math.Random()) end if string.sub(msg,1,12) == "sparkles/off" and speaker.Name == UserName then t = m:GetChildren() for i=1, #t do if t[i].className == "Sparkles" then t[i]:Remove() end end end --onchatted function onPlayerEntered(newPlayer) print("entered") newPlayer.Chatted:connect(function(msg, recipient) onChatted(msg, recipient, newPlayer) end) end game.Players.ChildAdded:connect(onPlayerEntered)