I am trying to create a obby on roblox and I am having trouble with the code for if a player touches the block to kill that player. It would be some really boring lava jumps without this! thanks for the help!
Simple, so start by creating a part and a script and placing it under the part
First start by making a variable for the part
Lava = script.Parent -- script.Parent will refer to the Part
Now you want to create a function that kills a players
function Kill(part) -- You use the keyword "function" to declare a function and the word after it is the name of the function and the word between the brackets is called the parameter, in this example it will refer to the object that touched the Lava
Now to the killing part, but first we need to get the humanoid of the object or the torso/head to kill the player, I prefer getting the torso to do it.
Player = part.Parent -- This will refer to the whole player model Torso = Player.Torso -- This will refer to the player's Torso Torso:Destroy() --This will kill the player end --This is used to signify the end of the function
Now we are done with what the lave is supposed to do, now to make it happen when the player touches the lava
lava.Touched:connect(Kill) -- We use the .Touched event to call our function
Overall the script is supposed to look like this
Lava = script.Parent -- script.Parent will refer to the Part function Kill(part) -- You use the keyword "function" to declare a function and the word after it is the name of the function and the word between the brackets is called the parameter, in this example it will refer to the object that touched the Lava local Player = part.Parent -- This will refer to the whole player model local Torso = Player.Torso -- This will refer to the player's Torso Torso:Destroy() --This will kill the player end --This is used to signify the end of the function Lava.Touched:connect(Kill) -- We use the .Touched event to call our function
I recommend you check out Roblox's tutorials so yoo can get better at scripting
This is to kill a player, put it inside the block.
script.Parent.Touched:connect(function(hit) if hit.Parent:FindFirstChild("Humanoid") then --This is to check if the hit object is a player hit.Parent:BreakJoints() --This kills him end end)
I mainly use this one, i'm sure this works cause i use this much
script.Parent.Touched:connect(function(hit) -- If a player touches the brick it connects to the function local h = hit.Parent:FindFirstChild("Humanoid") -- Finds the humanoid if h then -- Just a check if there is a humanoid (Will gives errors if you delete this) if h.Health > 0 then -- Checks if the humanoid health is above 0 h.Health = 0 -- Sets the health to 0 end end end)
Hope this works for you :D, if it works accept this answere :P
script.Parent.Touched:connect(function(hit) -- If a player touches the part it connects to the function if hit and hit.Parent and hit.Parent:FindFirstChild('Humanoid') then hit.Parent.Humanoid.Health = 0 end) -- Very Simple
local trapPart = script.Parent local function onPartTouch(otherPart) local partParent = otherPart.Parent local humanoid = partParent:FindFirstChildWhichIsA("Humanoid") if ( humanoid ) then humanoid.Health = 0 end end trapPart.Touched:Connect(onPartTouch)
Just try this:
function onTouch(part) local humanoid = part.Parent:FindFirstChild("Humanoid") if (humanoid ~= nil) then -- if a humanoid exists, then humanoid.Health = 0 -- damage the humanoid end end script.Parent.Touched:Connect(onTouch)
Put this in your part.
This can be simple, all you have to do is get a block you want to kill a player, put a script into it and paste this into the script :
local debounce = false local HealthLoss = 100 function OnTouched(Part) if Part.Parent ~= nil then if debounce == false and Part.Parent:findFirstChild("Humanoid") ~= nil then debounce = true Part.Parent:findFirstChild("Humanoid"):TakeDamage(HealthLoss) wait(2) debounce = false end end end script.Parent.Touched:connect(OnTouched)
This script will work, though if you want you can change the 100 to whatever you want to make sure the player is dead.
Here is the script I use for a kill block... place the script inside the part where you want the players to die from.
--Ultronlize local Brick = script.Parent local function PlayerTouched(Part) local Parent = Part.Parent if game.Players:GetPlayerFromCharacter(Parent) then Parent.Humanoid.Health = 0 --kills the player end end Brick.Touched:connect(PlayerTouched)
local killbrick = script.Parent killbrick.Touched:Connect(function(hit) if hit.Parent.Head then-- Checking if it is a player hit.Parent.Head:Destroy -- This can kill players that are in god mode or force field -- end end)
Locked by youtubemasterWOW
This question has been locked to preserve its current state and prevent spam and unwanted comments and answers.
Why was this question closed?