This will be an easy task that someone else should know how to help me with. I’m making a story game and it’s gonna have one of those generic poisoned food gimmicks that get overused. I’m not gonna get fancy and give the players a tool to use, instead I’ll just make the food disappear and assume that every player has eaten it. Then the next player that gets randomly selected to speak will be the one to take damage. I just need that randomly selected player to take damage.
Just send me back a copy of the place after you got it working the way it should. Also you are allowed to freely keep and use the assets in the uncopylocked place as long as you can help me out. Thanks!
--READ THIS FIRST
--Make it so that the random player that speaks takes damage also. The random player is at line 80.
--By the way you are free to use and copy everything in here, I won't mind as long as you can help me out.
local Players = game:GetService("Players")
local CreateDialogueEvent = game.ReplicatedStorage.CreateDialogueEvent
local TimerEvent = game.ReplicatedStorage.TimerEvent
local TransitionEvent = game.ReplicatedStorage.TransitionEvent
local EndFadeEvent = game.ReplicatedStorage.EndFadeEvent
local EndEvent = game.ReplicatedStorage.EndEvent
local playSoundEvent = game.ReplicatedStorage.playSoundEvent
local stopSoundsEvent = game.ReplicatedStorage.stopSoundsEvent
local randomPlayerName
local randomPlayerId
local function getPlayerImage(player_id)
local content, isReady = game:GetService("Players"):GetUserThumbnailAsync(player_id, Enum.ThumbnailType.HeadShot, Enum.ThumbnailSize.Size420x420)
return content
end
local function getRandomPlayer()
local players = game.Players:getPlayers()
local howMany = #players
if howMany == 0 then
return
end
local number = math.random(1,#players)
local randomPlayer = players[number]
randomPlayerName = randomPlayer.Name
randomPlayerId = randomPlayer.UserId
end
function teleportPlayers(partCFrame)
local players = game.Players:getPlayers()
for _,player in pairs(players) do
if player.Character then
if player.Character.HumanoidRootPart.Anchored == false then
player.Character.Humanoid.Jump = true
end
end
end
wait(.5)
for _,player in pairs(players) do
if player.Character then
if player.Character.HumanoidRootPart.Anchored == false then
player.Character:SetPrimaryPartCFrame(partCFrame)
end
end
end
end
----------------------------------------
local function challenge_1()
getRandomPlayer()
CreateDialogueEvent:FireAllClients(getPlayerImage(randomPlayerId),"Let's eat these snadwhiches that are totally not poisoned!")
wait(8)
game.Workspace.Sandwhiches:Destroy()
wait(4)
getRandomPlayer() --This is what randomly selects a new player, now how do I make this randomly selected player take damage?
local player = Players:GetPlayerByUserId(randomPlayerId)
if player then
local Humanoid = player.Character:FindFirstChild("Humanoid")
if Humanoid then
Humanoid:TakeDamage(50)
end
CreateDialogueEvent:FireAllClients(getPlayerImage(randomPlayerId),"I took 50 damage, that's what I would say if I actually took damage...")
wait(20)
end
end
--------------------------------------------------
local function startGame()
challenge_1()
end
wait(6)
while #Players:GetPlayers() < 1 do
Players.PlayerAdded:Wait()
end
print("Ready to start game")
startGame()