[FREE][QBCore] CCTV Cameras

:spiral_notepad: Description

Introducing our new CCTV script - the perfect addition to any FiveM server with a player-run dispatch. With this simple surveillance camera script, police and other security jobs can access any camera around the city. Features include the ability to add cameras to existing targets or place them wherever you want, add as many cameras as you need in different categories, and choose whether or not they are rotatable. Our script is optimized for performance and easy to use. Don’t miss out on this essential tool for keeping your city safe and secure!

This is just a simple CCTV Script, that takes inspiration from the police job and adds it into a menu instead of having them in a command.
Preview will be added soon, but it has the almost same feature as my latest Penitentiary Script.

:video_camera: Preview

  • Coming soon

:bookmark_tabs: Features

  • Add camera menu into a existing target or place it wherever you want.
  • Add as many cameras in one of the three categories (Banks, Stores & others)
  • Make them rotatable or not
  • Optimized and easy to use

:lock: Dependencies

  • Frameworks: qb-core
  • Menu: qb-menu
  • Target: qb-target

:shopping_cart: How to get it

:notebook_with_decorative_cover: Other resources (only a few of the latest)

:chains: Links

Code is accessible Partially
Subscription-based No
Lines (approximately) ~500
Requirements qb-core, qb-menu, qb-target
Support Partially

nice work!!!

1 Like

Awesome script and it’s for free??? awesome work!

my only downsides are I’m not smart enough to understand how to edit anything.

After hours of trying to add additional camera’s, I would get stuck inside the camera view & I couldn’t exit nor did the text appear.

I was able to make a custom area for the cctv menu to be accessed so I had a major win there, then tried to add another category, it would show up in the cctv menu but if I clicked it, it would close the menu completely.

please provide some instructions on how to edit this amazing script? I hate using commands and your script is perfect for what I am looking for.

I might add a guide in our document page at some point. :wink: Thank you for the feedback.

any chance of releasing for ESX?

1 Like

same :frowning:

We are currently working on major updates for all of our scripts, to support ox and esx.
But the free scripts will not be looked at, before all the paid scripts are done. So it might take a little while.

But you can get the scripts and if you have a little knowledge, always convert it, yourself. :wink:
It is a open source script. At least if you get it from the github.

arrangement to exit the new cameras

    while true do
        local sleep = 2000
        if createdCamera ~= 0 then
            sleep = 5
            local instructions = CreateInstuctionScaleform("instructional_buttons")
            DrawScaleformMovieFullscreen(instructions, 255, 255, 255, 255, 0)
            if hideradar then DisplayRadar(false) end
            -- CLOSE CAMERAS
            if IsControlJustPressed(1, 177) then
                while not IsScreenFadedOut() do Wait(0) end
                SendNUIMessage({ type = "disablecam", })
				local PlayerPed = PlayerPedId()
				FreezeEntityPosition(PlayerPed, false)
            local cameraConfig = nil
            if Config.Surveillance.Cameras.Banks[currentCameraIndex] ~= nil and Config.Surveillance.Cameras.Banks[currentCameraIndex].rotatable then
                cameraConfig = Config.Surveillance.Cameras.Banks[currentCameraIndex]
            elseif Config.Surveillance.Cameras.Stores[currentCameraIndex] ~= nil and Config.Surveillance.Cameras.Stores[currentCameraIndex].rotatable then
                cameraConfig = Config.Surveillance.Cameras.Stores[currentCameraIndex]
            elseif Config.Surveillance.Cameras.Others[currentCameraIndex] ~= nil and Config.Surveillance.Cameras.Others[currentCameraIndex].rotatable then
                cameraConfig = Config.Surveillance.Cameras.Others[currentCameraIndex]
            if cameraConfig ~= nil then handleCameraRotation() end