Config

📝 Field Reference

  • key → Internal identifier for the menu item.

  • label → Text shown in the menu.

  • type → Defines if it’s a submenu ("submenu") or direct item.

  • items → List of actions inside a submenu.

  • event → What happens when clicked:

    • side → Where the event runs (client or command).

    • name → Event/command name triggered.

    • args → Arguments passed to the event.


👤 Citizen Transactions

Actions you can perform on citizens:

  • Search Person → Triggers frkn:police:searchPerson.

  • Handcuff / Uncuff → Uses items (handcuffs or cuffkeys) to restrain or free.

  • Transport Handcuffed Person → Escort system.

  • Carry Person → Carry animation/interaction.

  • Put in Vehicle / Take out of Vehicle → Place or remove handcuffed person from a vehicle.

  • Send to Public Authorities → Custom action (frkn:police:sendPublic).

  • Send to Jail → Uses the command jailmenu.

  • Perform GSR Test → Gunshot residue test.

  • Perform Alcohol Test → Breathalyzer test.


🚗 Vehicle Operations

Police vehicle-related actions:

  • Check Tuning Status → Detect modifications.

  • Check Window Tint / Remove Tint → Inspect or remove tint.

  • Towing Vehicle → Tow/impound vehicle (VehicleScuff).

  • Parking Violation → Issue violation ticket.


🪧 Object Operations

Allows placing world props for police operations:

  • Barriers, Cones, Road Signs, Tents, Lights, Stands, Metal Barriers, Bollards, Fences, Checkpoints.

  • Each item has:

    • prop → Model to spawn.

    • freeze → Whether it’s locked in place.

    • count → How many to place.

    • spacing → Distance between multiple props.

    • grade → Minimum police rank required.


🚔 Police Operations

General police tools:

  • Show Badge → Show police badge.

  • Vehicle Radar → Activate in-vehicle radar.

  • Radar Remote → Open radar remote control.

  • Fingerprint → Open fingerprint system.

  • K9 Menu → Open dog companion menu.


👉 In short: This ActionMenu organizes police job features into submenus for citizen handling, vehicle operations, prop placement, and advanced police tools (radar, K9, etc.).

  ActionMenu = {
        { 
            key = "citizen", label = "Citizen Transactions", type = "submenu", 
            items = {
                { key = "search_person", label = "Search Person", event = { side = "client", name = "frkn:police:searchPerson", args = {} } },
                { key = "handcuff", label = "Handcuff", event = { side = "client", name = "police:client:CuffPlayer", args = { item = "handcuffs", menu = "main" } } },
                { key = "uncuff", label = "Uncuff", event = { side = "client", name = "police:client:UnCuffPlayer", args = { item = "cuffkeys", menu = "main" } } },
                { key = "transport_cuffed", label = "Transport Handcuffed Person", event = { side = "client", name = "frkn-policejob:client:EscortPlayer", args = {} } },
                { key = "carry", label = "Carry Person", event = { side = "client", name = "frkn:police:carry", args = {} } },
                { key = "put_in_vehicle", label = "Put Handcuffed Person in Vehicle", event = { side = "client", name = "police:client:PutPlayerInVehicle", args = {} } },
                { key = "take_out_vehicle", label = "Take Handcuffed Person out of Vehicle", event = { side = "client", name = "police:client:SetPlayerOutVehicle", args = {} } },
                { key = "send_public", label = "Send to public authorities", event = { side = "client", name = "frkn:police:sendPublic", args = {} } },
                { key = "send_jail", label = "Send to jail", event = { side = "command", name = "jailmenu", args = {} } },
                { key = "gsr", label = "Perform GSR test", event = { side = "client", name = "frkn-policejob:gsr", args = {} } },
                { key = "alcohol", label = "Perform alcohol test", event = { side = "client", name = "frkn-policejob:alcoholtest", args = {} } },
            }
        },
        { 
            key = "vehicle", label = "Vehicle Operations", type = "submenu", 
            items = {
                { key = "check_tuning", label = "Check tuning status", event = { side = "client", name = "frkn:vehicle:checkTuning", args = {} } },
                { key = "check_tint", label = "Check window tint", event = { side = "client", name = "frkn:vehicle:checkTint", args = {} } },
                { key = "remove_tint", label = "Remove window tint", event = { side = "client", name = "frkn:vehicle:removeTint", args = {} } },
                { key = "vehicle_scuff", label = "Towing Vehicle",  event = { side = "client", name = "frkn-policejob:client:VehicleScuff", args = {} } },
                { key = "parking_violation", label = "Parking Violation", event = { side = "client", name = "frkn-policejob:client:ParkingViolation", args = {} } },
            }
        },
        {
            key = "objects",
            label = "Object Operations",
            type = "submenu",
            items = {
                { key = "place_barrier",   label = "Place barrier",        event = { side = "client", name = "frkn:props:place", args = { prop = "prop_barrier_work06a", freeze = true,  count = 1, spacing = 1.5, grade = 0 } } },
                { key = "place_spike",     label = "Place spike",          event = { side = "client", name = "frkn:props:place", args = { prop = "P_ld_stinger_s",     freeze = false, count = 1, spacing = 3.5, grade = 2 } } },
                { key = "place_cone",      label = "Place cone",           event = { side = "client", name = "frkn:props:place", args = { prop = "prop_roadcone02a",   freeze = false, count = 1, spacing = 1.5, grade = 0 } } },
                { key = "place_roadsign",  label = "Place road sign",      event = { side = "client", name = "frkn:props:place", args = { prop = "prop_snow_sign_road_06g", freeze = true, count = 1, spacing = 1.5, grade = 1 } } },
                { key = "place_tent",      label = "Place tent",           event = { side = "client", name = "frkn:props:place", args = { prop = "prop_gazebo_03",    freeze = true,  count = 1, spacing = 1.5, grade = 2 } } },
                { key = "place_light",     label = "Place light",          event = { side = "client", name = "frkn:props:place", args = { prop = "prop_worklight_03b", freeze = true,  count = 1, spacing = 1.5, grade = 0 } } },
                { key = "place_stand",     label = "Place Police Stand",   event = { side = "client", name = "frkn:props:place", args = { prop = "p_amb_cop_stand",   freeze = true,  count = 1, spacing = 1.5, grade = 1 } } },
                { key = "place_barrier_2", label = "Place Metal Barrier",  event = { side = "client", name = "frkn:props:place", args = { prop = "prop_barrier_02a",  freeze = true,  count = 1, spacing = 1.5, grade = 1 } } },
                { key = "place_bollard",   label = "Place Concrete Bollard", event = { side = "client", name = "frkn:props:place", args = { prop = "prop_bollard_01a", freeze = true,  count = 1, spacing = 1.5, grade = 2 } } },
                { key = "place_fence",     label = "Place Temporary Fence", event = { side = "client", name = "frkn:props:place", args = { prop = "prop_temp_fence_01", freeze = true, count = 1, spacing = 1.5, grade = 2 } } },
                { key = "place_cone_2",    label = "Place Orange Cone",    event = { side = "client", name = "frkn:props:place", args = { prop = "prop_coner",        freeze = false, count = 1, spacing = 1.5, grade = 0 } } },
                { key = "place_checkpoint",label = "Place Checkpoint",     event = { side = "client", name = "frkn:props:place", args = { prop = "prop_air_mainsign",  freeze = true,  count = 1, spacing = 1.5, grade = 2 } } },
            }
        },

        { 
            key = "policeops", label = "Police Operations", type = "submenu", 
            items = {
                { key = "show_badge", label = "Show Badge", event = { side = "client", name = "frkn-policejob:showBadge", args = {} } },
                { key = "vehicle_radar_on", label = "Vehicle Radar", event = { side = "client", name = "frkn-policejob:radarOn", args = {} } },
                { key = "vehicle_remote_opn", label = "Radar Remote", event = { side = "client", name = "frkn-policejob:radarRemote", args = {} } },
                { key = "finger", label = "Fingerprint", event = { side = "client", name = "frkn-policejob:openFingerPrint", args = {} } },
                { key = "k9", label = "K9 Menu", event = { side = "client", name = "frkn-k9:open", args = {} } },
            }
        },
    },

Last updated