#Help
1 messages · Page 1 of 1 (latest)
Script Setup
Create a part in your game (name it something like "CameraTrigger").
Insert a Script into ServerScriptService to detect touch and fire RemoteEvents.
Insert a LocalScript in StarterPlayer → StarterPlayerScripts to change camera settings.
Use a RemoteEvent to communicate (Insert one into ReplicatedStorage and name it CameraControlEvent).
Server Script (CameraTriggerScript)local part = workspace:WaitForChild("CameraTrigger")
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local CameraEvent = ReplicatedStorage:WaitForChild("CameraControlEvent")
local touchingPlayers = {}
part.Touched:Connect(function(hit)
local character = hit.Parent
local player = Players:GetPlayerFromCharacter(character)
if player and not touchingPlayers[player] then
touchingPlayers[player] = true
CameraEvent:FireClient(player, "Enter")
end
end)
part.TouchEnded:Connect(function(hit)
local character = hit.Parent
local player = Players:GetPlayerFromCharacter(character)
if player and touchingPlayers[player] then
touchingPlayers[player] = nil
CameraEvent:FireClient(player, "Exit")
end
end)
LocalScript (CameraControlHandler)local Players = game:GetService("Players")
local player = Players.LocalPlayer
local CameraMode = Enum.CameraMode
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local CameraEvent = ReplicatedStorage:WaitForChild("CameraControlEvent")
CameraEvent.OnClientEvent:Connect(function(action)
if action == "Enter" then
-- Option 1: Set zoom range
player.CameraMinZoomDistance = 5.5
player.CameraMaxZoomDistance = 15
-- Option 2: Lock first person
-- player.CameraMode = CameraMode.LockFirstPerson
elseif action == "Exit" then
-- Reset everything
player.CameraMode = CameraMode.Classic
player.CameraMinZoomDistance = 0.5
player.CameraMaxZoomDistance = 128
end
end)
If you want zoom control, keep:
lua
Copy
Edit
player.CameraMinZoomDistance = 5.5
player.CameraMaxZoomDistance = 15
If you want first person, use:
lua
Copy
Edit
player.CameraMode = CameraMode.LockFirstPerson