Script not working [I still need help]

it prints work, but when i type in keyword rapture it doesn’t change the terminals text to what i set it to

local plr = game.Players.LocalPlayer
--


	
local textbox = script.Parent
textbox:GetPropertyChangedSignal("Text"):Connect(function()
	

		print("work")
		task.wait(0.7)
		if textbox.Text ==  textbox.Text:find("fuck") or textbox.Text:find("Fuck") or textbox.Text:find("shit") or textbox.Text:find("Shit") then
			plr:Kick("No Swear Words.")
		end

		if textbox.Text == textbox.Text:find("rapture") or textbox.Text:find("the quiet rapture")  then
			print("yes2")
			for _, Player in pairs(game:GetService("Players"):GetPlayers()) do 
				task.wait()
				terminalscreen.SurfaceGui:FindFirstChild("Output").Text = [[(c.o.i informational terminal)
this is a local database. be sure to update before each descent. last updated today [5/3781]
[entry]
the quiet rapture
[body]
in 357 eic, without any prior warning, radio contact with our respective planets was suddenly cut. nobody can recall having visual contact with any planets when the incident occurred, or experiencing any other unusual phenomena, so it's uncertain what exactly might have happened. upon investigation, it was observed independently by several stations that where there had previously been planets, nothing remained. further investigation over the following months revealed that all known planets with sentient life, floura and fauna, a habitable atmosphere, or any sort of natural resources were likewise gone, along with all known stars. the only celestial bodies that have been found since are either uninhabitable moons or asteroids.

many theories have been proposed for this disaster, including religious interpretations of it as a literal rapture, some unknown quantum anomaly, or something more cosmic and sinister. no concrete answers yet. there are no concrete answers]]
			end
		end
		if textbox.Text == textbox.Text:find("mars") then

		end
		if textbox.Text == textbox.Text:find("iron lung") or textbox.Text:find("sm13") then

		end
		if textbox.Text == textbox.Text:find("interstellar martian calander") or textbox.Text:find("imc") then

		end
		
end)
3 Likes

Would you not do player.PlayerGui there? Also why are you looping through all the players inside of a local script??

image

so it appears for all players in the server

and no i wouldn’t cause its a surface gui on a part

2022-07-07 11-54-45 this is video

wait that doesn’t show mb ill send new

If you want it to appear for everyone not just one player you would need run the code in a server script. Looping through everyone on the client side will not show the UI for everyone cuz the client side is local meaning only the player will be able to see it.

Also you should be using the Roblox filter if everyone will be able to see it not just check to see if the text is is a swear word. (TextService:FilterStringAsync)

it will show for everyone because its making it the same for all players

1 Like

But why are you looping through all the players then?

Also “terminalscreen” is not referenced in a variable or anything.

it is but script didn’t show it

I am looping through all players, so i can apply the text for all players, so other players can see the screen.

But the script is a local script is it not?? So if it is a local script it means that only one player will be able to see the screen (the one locally).

Like I have said more the once now due to it being a local script it will not show for everyone!

ok but how do i fix the script, removing that?

Where are you getting this from?

image

I don’t see anywhere you reference where the terminalscreen is.

I said this already, script had a formatting error

Well can you send it again for me so I can view the whole script cuz if not I can’t really help you.

local plr = game.Players.LocalPlayer
--


	
local textbox = script.Parent
textbox:GetPropertyChangedSignal("Text"):Connect(function()
	

		print("work")
		task.wait(0.7)
		if textbox.Text ==  textbox.Text:find("fuck") or textbox.Text:find("Fuck") or textbox.Text:find("shit") or textbox.Text:find("Shit") then
			plr:Kick("No Swear Words.")
		end

		if textbox.Text == textbox.Text:find("rapture") or textbox.Text:find("the quiet rapture")  then
			print("yes2")
		
				task.wait()
				terminalscreen.SurfaceGui:FindFirstChild("Output").Text = [[(c.o.i informational terminal)
this is a local database. be sure to update before each descent. last updated today [5/3781]
[entry]
the quiet rapture
[body]
in 357 eic, without any prior warning, radio contact with our respective planets was suddenly cut. nobody can recall having visual contact with any planets when the incident occurred, or experiencing any other unusual phenomena, so it's uncertain what exactly might have happened. upon investigation, it was observed independently by several stations that where there had previously been planets, nothing remained. further investigation over the following months revealed that all known planets with sentient life, floura and fauna, a habitable atmosphere, or any sort of natural resources were likewise gone, along with all known stars. the only celestial bodies that have been found since are either uninhabitable moons or asteroids.

many theories have been proposed for this disaster, including religious interpretations of it as a literal rapture, some unknown quantum anomaly, or something more cosmic and sinister. no concrete answers yet. there are no concrete answers]]
			
		end
		if textbox.Text == textbox.Text:find("mars") then

		end
		if textbox.Text == textbox.Text:find("iron lung") or textbox.Text:find("sm13") then

		end
		if textbox.Text == textbox.Text:find("interstellar martian calander") or textbox.Text:find("imc") then

		end
		
end)

You still don’t reference it anywhere??

Also does it run the print("yes2") you have in it?

I do its in the script just devfourm isn’t showing

it doesn’t print yes2 ---------