For an example in prison royale you can have your gun in third person with crosshair locked or have it in fps mode, i have tried making a script that changes camera angles but its just one big mess... ;( would anybody be able to help?
For this to work properly, you're going to need two things UserInputService
, and MaxZoomDistance
, the first Service will allow us to Fire Events to Input related scenarios, and for the property, this allows us to restric their zooming ability, giving the impression of FirstPerson
local UserInputService = game:GetService("UserInputService") local CamView = workspace.CurrentCamera.MaxZoomDistance local CamView2 = workspace.CurrentCamera.MinZoomDistance local ThirdP = 500 game.Players.PlayerAdded:Connect(function() --// As Player joins UserInputService.InputBegan:Connect(function(InputObject, GameProcessed) if not (GameProcessed) then --// if the Key was binded to any actions event; jumping typing then ignore if (InputObject.KeyCode == Enum.KeyCode.E) then --// KeyInput you desire CamView, CamView2= ThirdP end end end) end)
Hope this helps! If so, don't forget to accept and upvote If there is anything confusing, please let me know!