RobloxLocked (Property): Difference between revisions

From Legacy Roblox Wiki
Jump to navigationJump to search
>Legend26
Some grammar errors fixed, cleared a few things up, and changed the code to non camelCase
>Legend26
No edit summary
Line 2: Line 2:
|name        = RobloxLocked
|name        = RobloxLocked
|property    = [[Bool]] ''RobloxLocked''
|property    = [[Bool]] ''RobloxLocked''
|description = Sets whether the object and its descendants can be indexed or edited by code with a security context level below 4<!--[[Script]]s or [[LocalScript]]s-->.
|description = If true, the object and its descendants cannot be indexed or edited by a [[Script]] or [[LocalScript]] and will throw an error if it is attempted.
|object      = Instance
|object      = Instance
}}</onlyinclude>
}}</onlyinclude>

Revision as of 18:58, 1 January 2012

RobloxLocked
Property Bool RobloxLocked
Description If true, the object and its descendants cannot be indexed or edited by a Script or LocalScript and will throw an error if it is attempted.
Member of Instance


Example
If using the Command Bar or a CoreScript...
game.Workspace.Part.RobloxLocked = true -- sets the Part's RobloxLocked to true
If using a Script or LocalScript...
game.Workspace.Part.RobloxLocked = true --> Unknown exception


RobloxLocked doesn't get saved

Therefore, you can set an object's RobloxLocked to true, but unless you found some way to do that with a CoreScript at the start of the game, you will still be able to access the object from a Script or LocalScript. There are, however, some objects that are RobloxLocked by default.

Example
Command Bar:
Workspace.Part.RobloxLocked = true

print( Workspace.Part.RobloxLocked ) --> true
Script:
script.Parent = Workspace.Part -- does not error because RobloxLocked is false by default for this object

script.Parent = game.CoreGui --> Unknown exception
--Errors because CoreGui has RobloxLocked set to true by default


RobloxLocked-ness is inherited

This means that if Workspace.RobloxLocked is true, then everything in the Workspace will act as if it was RobloxLocked.

Example
Script:
game.CoreGui.RobloxGui:Remove() -- nope
Command Bar:
game.CoreGui.RobloxGui.RobloxLocked = false
Script:
game.CoreGui.RobloxGui:Remove() -- still no
Command Bar:
game.CoreGui.RobloxLocked = false
Script:
game.CoreGui.RobloxGui:Remove() -- Yes!