bak44Join Date: 2010-10-23 Post Count: 9 |
Im making a game right now and there is a default sprint script from roblox that makes my speed 85 when i press left shift and if i change it it doesnt matter because when i die it will go back to 85 since the sprintscript is automatically put into every player. i need to find the source or something to disable the script. Also if i just add another sprint script at the speed i want then it works until i respawn and then the other sprintscript takes over. The script spawns in the model player 1. |
|
|
Change the part of the script that triggers the death-speed regen. |
|
bak44Join Date: 2010-10-23 Post Count: 9 |
local mouse = game.Players.LocalPlayer:GetMouse()
local running = false
function getTool()
for _, kid in ipairs(script.Parent:GetChildren()) do
if kid.className == "Tool" then return kid end
end
return nil
end
mouse.KeyDown:connect(function (key) -- Run function
key = string.lower(key)
if string.byte(key) == 48 then
running = true
local keyConnection = mouse.KeyUp:connect(function (key)
if string.byte(key) == 48 then
running = false
end
end)
for i = 1,5 do
game.Workspace.CurrentCamera.FieldOfView = (70+(i*2))
wait()
end
game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = 85
repeat wait () until running == false
keyConnection:disconnect()
game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = 16
for i = 1,5 do
game.Workspace.CurrentCamera.FieldOfView = (80-(i*2))
wait()
end
end
end)
thi is the script it shows up in game.Workspace.Player1 i want people to be able to run but i want to change the speed from like 85 to 30. i can only view this script when i am playing as a character |
|
|
local mouse = game.Players.LocalPlayer:GetMouse()
local running = false
function getTool()
for _, kid in ipairs(script.Parent:GetChildren()) do
if kid.className == "Tool" then return kid end
end
return nil
end
mouse.KeyDown:connect(function (key) -- Run function
key = string.lower(key)
if string.byte(key) == 48 then
running = true
local keyConnection = mouse.KeyUp:connect(function (key)
if string.byte(key) == 48 then
running = false
end
end)
for i = 1,5 do
game.Workspace.CurrentCamera.FieldOfView = (70+(i*2))
wait()
end
game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = 30
repeat wait () until running == false
keyConnection:disconnect()
game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = 30
for i = 1,5 do
game.Workspace.CurrentCamera.FieldOfView = (80-(i*2))
wait()
end
end
end) |
|
bak44Join Date: 2010-10-23 Post Count: 9 |
Yeah i put that script so it spawns in my character already but the problem is that it works to keep my speed the way i want it one time but when i die and respawn the old script that sets my speed at 85 takes priority. I want to figure out how the script that sets my speed at 85 is even getting in my character becuase otherwise it wont matter if i change it. |
|
WXBZJoin Date: 2012-10-10 Post Count: 850 |
local mouse = game.Players.LocalPlayer:GetMouse()
local running = false
function getTool()
for _, kid in ipairs(script.Parent:GetChildren()) do
if kid.className == "Tool" then return kid end
end
return nil
end
mouse.KeyDown:connect(function (key) -- Run function
key = string.lower(key)
if string.byte(key) == 48 then
running = true
local keyConnection = mouse.KeyUp:connect(function (key)
if string.byte(key) == 48 then
running = false
end
end)
for i = 1,5 do
game.Workspace.CurrentCamera.FieldOfView = (40+(i*2))
wait()
end
game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = 30
repeat wait () until running == false
keyConnection:disconnect()
game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = 30
for i = 1,5 do
game.Workspace.CurrentCamera.FieldOfView = (80-(i*2))
wait()
end
end
That will put it to 55 ^
The thing that is setting the speed is
game.Workspace.CurrentCamera.FieldOfView = (40+(i*2))
|
|
WXBZJoin Date: 2012-10-10 Post Count: 850 |
Whoops messed it up, redoing it.
|
|
bak44Join Date: 2010-10-23 Post Count: 9 |
okay i want the walkspeed to be 16 and then the run speed 30. Remember that this script is automatically added to each player (i dont know why or how it just happens) so i need to find a way to make this script either go away, find where it is coming from, or another run script that overrides this one, because lets say you make a run script that makes my run speed 30 when i press shift and when i die it still works, there would still be the run script that makes my speed 85 and those scripts are both trying to give me a differen run speed. so just adding a different run script doesnt work i tried that i need to find a way to stop the other script from going in each player. is there possibly a script i could make that deletes the run script in each player as they spawn each time and then make my own run script that roblox didnt put in each player? |
|
bak44Join Date: 2010-10-23 Post Count: 9 |
woops i didnt read the end of your post about where the script is coming from lol |
|
bak44Join Date: 2010-10-23 Post Count: 9 |
local Players = game:GetService("Players")
function onPlayerAdded(player)
print(player.Name .. " has entered the game")
local Part = game.Players.LocalPlayer.SprintScript
Part:Destroy()
Part.Parent = game.Players.LocalPlayer
end
--When a player joins, call the onPlayerAdded function
Players.PlayerAdded:connect(onPlayerAdded)
--Call onPlayerAdded for each player already in the game
for _,player in pairs(Players:GetPlayers()) do
onPlayerAdded(player)
end
what if i did something along the lines of this to delete the roblox (SprintScript) script and then just add my own script with the speed i want to every player |
|
bak44Join Date: 2010-10-23 Post Count: 9 |
local Players = game:GetService("Players") function onPlayerAdded(player) print(player.Name .. " has entered the game") end game.Players.PlayerAdded:connect(function(player) player.CharacterAdded:connect(function(character) wait(2) local script = character.SprintScript script.Disabled = true end) end) --When a player joins, call the onPlayerAdded function Players.PlayerAdded:connect(onPlayerAdded) --Call onPlayerAdded for each player already in the game for _,player in pairs(Players:GetPlayers()) do onPlayerAdded(player) end this script works to disable the sprintscript so then i can just make my own sprint script. however how can i make it so the function keeps repeating until ### ############### = true just in case the script isnt loaded in the first time the function runs |
|
bak44Join Date: 2010-10-23 Post Count: 9 |
local Players = game:GetService("Players")
function onPlayerAdded(player)
print(player.Name .. " has entered the game")
end
game.Players.PlayerAdded:connect(function(player)
player.CharacterAdded:connect(function(character)
wait(2)
local script = character.SprintScript
script.Disabled = true
end)
end)
--When a player joins, call the onPlayerAdded function
Players.PlayerAdded:connect(onPlayerAdded)
--Call onPlayerAdded for each player already in the game
for _,player in pairs(Players:GetPlayers()) do
onPlayerAdded(player)
end
sorry about the script being messed up |
|