✓ Accepted answer
Theory
What you could do is make an invisible part cover the area you want the player to be first person in and once the player touches it put them into first person. This would be quite simple to do initially until you are wanting to get them out of first person...
Possible Solution
It would be something like this, utilizing the Touched event to change the player's camera.
script.Parent.Touched:connect(function(plr)
plr.CameraMode = "LockFirstPerson"
end)
Then you'd have to get them out of first person either when they die or have some more invisible parts surrounding the first one, and using the same script except change line three (plr.CameraMode = "LockFirstPerson") to have the player's current camera...
Conclusion
I've not tested the script I've provided so hopefully it works, I don't see any reason why it wouldn't. If it doesn't work, please do tell me and I'll fix it. If you want a better explanation please do ask and if this answered your question please accept it with the button on the right!
2 comments
Use an if statement to see if the Players position is within certain values, where you want it to lock. Then put and else in that will unlock the camera. You could also reverse the order and define where you want it unlocked and lock it in the else.
could you make a script showing how to do this?