डेव पार्टनर
Agency स्क्रिप्ट से जुड़ना
अपनी FiveM स्क्रिप्ट बना रहे हैं और चाहते हैं कि वह हमारी स्क्रिप्ट से बात करे? यहाँ हर सार्वजनिक एक्सपोर्ट और हर इवेंट दिया है, और हर एक के साथ कॉपी करने लायक Lua का टुकड़ा।
एक्सपोर्ट से आपकी स्क्रिप्ट हमारी स्क्रिप्ट का फ़ंक्शन बुला सकती है: exports['script-name']:FunctionName(args), क्लाइंट और सर्वर दोनों पर एक जैसा। इवेंट उल्टी दिशा में चलते हैं: TriggerEvent या TriggerServerEvent से चलाएँ और RegisterNetEvent से सुनें।
01Agency-Phone
SMS, कॉल, सोशल फ़ीड, मेल, कैमरा, वॉलेट और AgencyPay चेकआउट वाला पूरा मल्टी-फ़्रेमवर्क फ़ोन।
किसी भी शॉप, चोरी या जॉब स्क्रिप्ट में इस्तेमाल करें जहाँ पैसे तुरंत काटने की जगह फ़ोन के अंदर साफ़ भुगतान फ़्लो चाहिए। स्वीकार/अस्वीकार वाली इन-गेम सूचनाओं के लिए भी बढ़िया (जैसे टैक्सी राइड के अनुरोध, डिस्पैच कॉल)।
क्लाइंट एक्सपोर्ट
IsPhoneOpen()फ़ोन का इंटरफ़ेस अभी खुला हो तो true लौटाता है।
उदाहरण देखें
फ़ोन का इंटरफ़ेस स्क्रीन पर हो तो कस्टम मेनू नहीं खोलता।
RegisterCommand('openmymenu', function()
if exports['agency-phone']:IsPhoneOpen() then
return
end
TriggerEvent('myresource:openMenu')
end)IsPhonePoweredOn()फ़ोन चालू हो तो true लौटाता है (खिलाड़ी ने बंद किया हो तो false)।
उदाहरण देखें
खिलाड़ी ने फ़ोन बंद किया हो तो बैकग्राउंड सिंक का काम रोक देता है।
CreateThread(function()
while true do
Wait(2000)
if not exports['agency-phone']:IsPhonePoweredOn() then
print('Phone off, pausing background sync')
end
end
end)GetPhoneData()क्लाइंट की पूरी PhoneData टेबल लौटाता है (खुला होने की स्थिति, मेटा आदि)।
उदाहरण देखें
डीबग के लिए क्लाइंट की पूरी फ़ोन डेटा टेबल छापता है।
RegisterCommand('phonedebug', function()
local data = exports['agency-phone']:GetPhoneData()
print(json.encode(data, { indent = true }))
end)GetPhonePropEntity()हाथ में पकड़े फ़ोन प्रॉप का एंटिटी हैंडल लौटाता है, दिखाई न दे तो 0।
उदाहरण देखें
असली लॉजिक पर असर डाले बिना फ़ोन प्रॉप एंटिटी को थोड़ी देर छिपाता है।
CreateThread(function()
Wait(500)
local prop = exports['agency-phone']:GetPhonePropEntity()
if prop ~= 0 and DoesEntityExist(prop) then
SetEntityVisible(prop, false, false)
end
end)IsPhoneExpanded()IsPhoneOpen() का उपनाम, पुराने कोड के साथ संगतता के लिए रखा गया।
उदाहरण देखें
फ़ोन खुला होने पर मिनीगेम रोकने के लिए इस्तेमाल होने वाला पुराना उपनाम।
AddEventHandler('myresource:beforeMinigame', function()
if exports['agency-phone']:IsPhoneExpanded() then
TriggerEvent('chat:addMessage', { args = { 'Close phone first' } })
return
end
end)HasCarrierContract()खिलाड़ी के पास सक्रिय कैरियर डेटा प्लान हो तो true लौटाता है।
उदाहरण देखें
कोई सक्रिय कैरियर डेटा प्लान न हो तो खिलाड़ी को चेतावनी देता है।
RegisterCommand('checkdata', function()
if not exports['agency-phone']:HasCarrierContract() then
TriggerEvent('chat:addMessage', { args = { 'No data plan, buy one in the store app' } })
end
end)GetPhoneState()फ़ोन की मौजूदा स्थिति वाली टेबल { isOpen, poweredOn, syncEnabled } लौटाता है।
उदाहरण देखें
फ़ोन खुला, चालू और सिंक हो रहा हो तभी उसकी स्थिति सर्वर पर सहेजता है।
AddEventHandler('myresource:saveProfile', function()
local state = exports['agency-phone']:GetPhoneState()
if state.isOpen and state.poweredOn and state.syncEnabled then
TriggerServerEvent('myresource:server:cachePhoneState', state)
end
end)HasPhone()खिलाड़ी की इन्वेंटरी में कॉन्फ़िगर किया गया फ़ोन आइटम हो तो true लौटाता है।
उदाहरण देखें
खिलाड़ी के पास फ़ोन आइटम न हो तो इमरजेंसी कॉल कमांड रोकता है।
RegisterCommand('callemergency', function()
if not exports['agency-phone']:HasPhone() then
TriggerEvent('chat:addMessage', { args = { 'You need a phone first' } })
return
end
TriggerEvent('myresource:client:openEmergency')
end)RegisterAgencyPayPoint(id, data)रनटाइम पर किसी कोऑर्डिनेट पर Agency Pay टर्मिनल रजिस्टर करता है (मार्कर, ब्लिप, चेकआउट डेटा)।
उदाहरण देखें
मैकेनिक शॉप के चेकआउट के लिए रनटाइम पर Agency Pay टर्मिनल बनाता है।
CreateThread(function()
exports['agency-phone']:RegisterAgencyPayPoint('mechanic_main', {
coords = vector3(-211.74, -1314.59, 31.29),
label = 'Mechanic Pay Point',
amount = 250,
receiver = 'mechanic'
})
end)RemoveAgencyPayPoint(id)पहले रजिस्टर किए गए Agency Pay टर्मिनल को id से हटाता है।
उदाहरण देखें
रात में दुकान बंद होने पर रजिस्टर किया गया भुगतान पॉइंट हटाता है।
AddEventHandler('myresource:onShopClosed', function(shopId)
exports['agency-phone']:RemoveAgencyPayPoint('mechanic_main')
print('Removed pay point for shop ' .. shopId)
end)StartAgencyPayCheckout(data)ज़रूरत हो तो फ़ोन खोलता है और दिए गए भुगतान डेटा के साथ Agency Pay चेकआउट शुरू करता है।
उदाहरण देखें
फ़ोन खोलता है और Agency Pay से छोटी टिप का चेकआउट शुरू करता है।
RegisterCommand('paytip', function()
exports['agency-phone']:StartAgencyPayCheckout({
amount = 25,
receiver = 'staff_tip_jar',
label = 'Staff tip',
memo = 'Thanks for great service'
})
end)StartCall(contactData)दिए गए कॉन्टैक्ट ({ name, number, ... }) को आउटगोइंग कॉल शुरू करता है।
उदाहरण देखें
इवेंट आने पर डिस्पैच किए गए कॉन्टैक्ट को आउटगोइंग कॉल शुरू करता है।
RegisterNetEvent('myresource:client:incomingDispatch', function(payload)
exports['agency-phone']:StartCall({
name = payload.callerName or 'Dispatch',
number = payload.callerNumber or '911',
anonymous = false
})
end)PhoneNotification(title, text, icon, color, timeout, acceptIcon, denyIcon)स्वीकार/अस्वीकार बटन वाली सूचना दिखाता है, जवाब आने तक रुकता है और true/false लौटाता है।
उदाहरण देखें
टो कॉन्ट्रैक्ट के लिए स्वीकार/अस्वीकार वाली रुकने वाली फ़ोन सूचना दिखाता है।
CreateThread(function()
local accepted = exports['agency-phone']:PhoneNotification(
'Tow request', 'Accept the contract?', 'truck', '#FF8800', 15000, 'check', 'x'
)
if accepted then
TriggerServerEvent('myresource:server:acceptTow')
end
end)RegisterApp(config)आपके अपने रिसोर्स का ऐप फ़ोन की होम स्क्रीन और Store में जोड़ता है। true लौटाता है, या false और एक एरर। कस्टम ऐप देखें।
UnregisterApp(id)RegisterApp से जोड़ा गया ऐप हटाता है। जिस रिसोर्स ने उसे रजिस्टर किया, उसके रुकने पर यह अपने आप होता है।
GetRegisteredApps()दूसरे रिसोर्स द्वारा रजिस्टर किए गए सभी ऐप्स की टेबल लौटाता है, id के हिसाब से।
ClosePhone()फ़ोन बंद करता है, जैसे आपका अपना इंटरफ़ेस खुलने से पहले।
IsPhoneRadioActive()दो वैल्यू लौटाता है: फ़ोन रेडियो चलते समय true, और जो स्टेशन चल रहा है।
StopPhoneRadio()फ़ोन रेडियो बंद करता है।
सर्वर एक्सपोर्ट
SendMail(identifier, mailData)identifier के ज़रिए खिलाड़ी के मुख्य मेलबॉक्स में मेल भेजता है (सफलता लौटाता है)।
उदाहरण देखें
खिलाड़ी के मुख्य identifier से उसे ऑर्डर की रसीद वाला मेल भेजता है।
RegisterNetEvent('myresource:server:sendReceipt', function(targetId)
local identifier = GetPlayerIdentifier(targetId, 0)
exports['agency-phone']:SendMail(identifier, {
sender = '[email protected]',
subject = 'Your receipt',
body = 'Thanks for your purchase!'
})
end)AddChirp(chirpData)स्क्रिप्ट की ओर से Pulse फ़ीड में पोस्ट जोड़ता है ({ identifier, firstName, lastName, message, postId })।
उदाहरण देखें
सर्वर इवेंट से Chirper पर इनाम की घोषणा पोस्ट करता है।
RegisterNetEvent('myresource:server:postBounty', function(targetName)
local src = source
exports['agency-phone']:AddChirp({
identifier = GetPlayerIdentifier(src, 0),
firstName = 'Bounty',
lastName = 'Office',
message = 'Wanted: ' .. targetName,
postId = ('bounty_%s'):format(GetGameTimer())
})
end)usePhone(event, item, inventory, slot, data)ESX और ox_inventory मिलने पर रजिस्टर होने वाला ox_inventory हुक; इन्वेंटरी वाले खिलाड़ी के लिए फ़ोन खोलता है।
उदाहरण देखें
इंटीग्रेशन हेल्पर से फ़ोन खोलने के लिए ox_inventory के usingItem इवेंट से जुड़ता है।
exports.ox_inventory:registerHook('usingItem', function(payload)
if payload.item.name ~= 'phone' then return end
return exports['agency-phone']:usePhone('inventory', payload.item, payload.inventory, payload.slot)
end, { itemFilter = { phone = true } })VerifyAgencyPayCharge(source, requestId, minAmount)सर्वर पर पुष्टि करता है कि इस खिलाड़ी ने पिछले 60 सेकंड में इस id वाला Agency Pay चेकआउट कम से कम minAmount के लिए चुकाया है, और भुगतान को इस्तेमाल हुआ मान लेता है ताकि वह सिर्फ़ एक बार गिना जाए। requestId वही id है जो आपने StartAgencyPayCheckout को दी थी। true और राशि लौटाता है, या false। सामान देने से पहले इसे कॉल करें।
इवेंट
agency-phone:client:notifyफ़ोन पर सूचना दिखाता है (title, text, icon, color, timeout, silent)।
उदाहरण देखें
बिना रोके फ़ोन पर छोटी सूचना दिखाता है कि खिलाड़ी का वाहन तैयार है।
TriggerEvent('agency-phone:client:notify', 'Heads up', 'Vehicle ready for pickup', 'car', '#22cc88', 5000, false)agency-phone:client:usePhoneItemइन्वेंटरी का फ़ोन आइटम इस्तेमाल करने पर फ़ोन खोलने की प्रक्रिया शुरू करता है।
उदाहरण देखें
कस्टम इन्वेंटरी आइटम इस्तेमाल करने के इवेंट को फ़ोन खोलने की प्रक्रिया तक पहुँचाता है।
AddEventHandler('myresource:client:onItemUsed', function(itemName)
if itemName == 'phone' then
TriggerEvent('agency-phone:client:usePhoneItem')
end
end)agency-phone:client:openAppफ़ोन से id के ज़रिए किसी कस्टम ऐप पर जाने को कहता है (ऐप मॉड्यूल इसका इस्तेमाल करते हैं)।
उदाहरण देखें
ऐप id से फ़ोन को सीधे कस्टम बैंकिंग ऐप पर ले जाता है।
RegisterCommand('openbank', function()
TriggerEvent('agency-phone:client:openApp', 'banking')
end)agency-phone:client:newMailNotifyक्लाइंट को अभी-अभी आए मेल की सूचना देता है।
उदाहरण देखें
नए मेल की सूचनाएँ सुनता है और डीबग के लिए उन्हें लॉग करता है।
AddEventHandler('agency-phone:client:newMailNotify', function(mail)
print(('New mail from %s: %s'):format(mail.sender, mail.subject))
end)agency-phone:server:requestPhoneDataकॉल करने वाले खिलाड़ी के लिए फ़ोन डेटा का ताज़ा सिंक माँगता है।
उदाहरण देखें
सर्वर से फ़ोन डेटा सिंक की ताज़ा कॉपी भेजने को कहता है।
RegisterCommand('refreshphone', function()
TriggerServerEvent('agency-phone:server:requestPhoneData')
end)agency-phone:server:cancelCallचल रही कॉल को रद्द करता है या खत्म करता है।
उदाहरण देखें
कस्टम कीबाइंड या चैट कमांड से चल रही कॉल काटता है।
RegisterCommand('hangup', function()
TriggerServerEvent('agency-phone:server:cancelCall')
end)agency-phone:server:sendMessageSMS संदेश भेजता है (newMsg, targetNumber)।
उदाहरण देखें
चैट इनपुट से किसी फ़ोन नंबर पर जल्दी से SMS भेजता है।
RegisterCommand('quicksms', function(_, args)
local target, msg = args[1], table.concat(args, ' ', 2)
TriggerServerEvent('agency-phone:server:sendMessage', { message = msg }, target)
end)agency-phone:server:saveSettingखिलाड़ी के लिए फ़ोन की एक सेटिंग को key/value के रूप में सहेजता है।
उदाहरण देखें
उपयोगकर्ता क्लाइंट पर कोई सेटिंग बदले तो फ़ोन की वह एक सेटिंग सहेजता है।
AddEventHandler('myresource:client:onSettingChanged', function(key, value)
TriggerServerEvent('agency-phone:server:saveSetting', key, value)
end)agency-phone:server:airdropPayपास के खिलाड़ी को Agency Airdrop भुगतान ट्रांसफ़र करता है।
उदाहरण देखें
लिखी गई राशि के साथ पास के खिलाड़ी को Agency Airdrop ट्रांसफ़र शुरू करता है।
RegisterCommand('airdrop', function(_, args)
local amount = tonumber(args[1]) or 0
TriggerServerEvent('agency-phone:server:airdropPay', amount, 'Tip via airdrop')
end)agency-phone:server:buyDataPlanखिलाड़ी के लिए कैरियर डेटा प्लान खरीदता है (price, planName)।
उदाहरण देखें
खिलाड़ी के कस्टम इंटरफ़ेस में चुनने के बाद चुना गया कैरियर डेटा प्लान खरीदता है।
AddEventHandler('myresource:client:onPlanSelected', function(plan)
TriggerServerEvent('agency-phone:server:buyDataPlan', plan.price, plan.name)
end)agency-phone:dispatch:createइमरजेंसी कॉल या SMS से डिस्पैच बनाता है।
उदाहरण देखें
आने वाली इमरजेंसी कॉल से फ़ोन डिस्पैच एंट्री बनाता है।
RegisterNetEvent('myresource:server:dispatchFromCall', function(payload)
TriggerEvent('agency-phone:dispatch:create', {
source = source,
coords = payload.coords,
type = 'robbery',
title = '24/7 Robbery'
})
end)02Agency-Pad
पूरे ऐप इकोसिस्टम वाला AgencyOS टैबलेट। config.lua से अपने ऐप्स रजिस्टर करें।
एडमिन डैशबोर्ड, बिज़नेस मैनेजमेंट ऐप, गैंग इलाकों के मैप या GTA में खिलाड़ियों को चाहिए कोई भी कस्टम इंटरफ़ेस, सब कुछ बिना अतिरिक्त मेहनत के एक सुंदर टैबलेट में चलता है।
क्लाइंट एक्सपोर्ट
IsPadOpen()टैबलेट का इंटरफ़ेस अभी खुला हो तो true लौटाता है।
उदाहरण देखें
गेम का टैबलेट पहले से खुला हो तो कस्टम टैबलेट इंटरफ़ेस दोबारा नहीं खोलता।
RegisterCommand('opentablet', function()
if exports['agency-pad']:IsPadOpen() then
return
end
TriggerEvent('myresource:openTablet')
end)IsPadPoweredOn()टैबलेट चालू हो तो true लौटाता है।
उदाहरण देखें
खिलाड़ी ने टैबलेट बंद किया हो तो फ़्लीट की जाँच रोक देता है।
CreateThread(function()
while true do
Wait(3000)
if not exports['agency-pad']:IsPadPoweredOn() then
print('Tablet powered down, pausing fleet poll')
end
end
end)GetPadData()क्लाइंट की पूरी PadData टेबल लौटाता है।
उदाहरण देखें
जाँच के लिए क्लाइंट की पूरी टैबलेट डेटा टेबल छापता है।
RegisterCommand('paddebug', function()
local data = exports['agency-pad']:GetPadData()
print(json.encode(data, { indent = true }))
end)GetPadPropEntity()हाथ में पकड़े टैबलेट प्रॉप का एंटिटी हैंडल लौटाता है, दिखाई न दे तो 0।
उदाहरण देखें
कस्टम कटसीन के दौरान हाथ में पकड़े टैबलेट प्रॉप को थोड़ी देर छिपाता है।
CreateThread(function()
Wait(750)
local prop = exports['agency-pad']:GetPadPropEntity()
if prop ~= 0 and DoesEntityExist(prop) then
SetEntityVisible(prop, false, false)
end
end)IsPadExpanded()IsPadOpen() का उपनाम, पुराने कोड के साथ संगतता के लिए रखा गया।
उदाहरण देखें
टैबलेट खुला होने पर मिनीगेम रोकने के लिए इस्तेमाल होने वाला पुराना उपनाम।
AddEventHandler('myresource:client:beforeMinigame', function()
if exports['agency-pad']:IsPadExpanded() then
return
end
TriggerEvent('myresource:client:startMinigame')
end)HasCarrierContract()टैबलेट पर खिलाड़ी का सक्रिय कैरियर डेटा प्लान हो तो true लौटाता है।
उदाहरण देखें
टैबलेट पर कोई सक्रिय कैरियर डेटा प्लान न हो तो खिलाड़ी को चेतावनी देता है।
RegisterCommand('checkpaddata', function()
if not exports['agency-pad']:HasCarrierContract() then
TriggerEvent('chat:addMessage', { args = { 'No tablet data plan, buy one in Settings' } })
end
end)GetPadState()टैबलेट की मौजूदा स्थिति वाली टेबल { isOpen, poweredOn, syncEnabled } लौटाता है।
उदाहरण देखें
टैबलेट खुला और चालू हो तभी उसकी स्थिति सर्वर पर सहेजता है।
AddEventHandler('myresource:saveSession', function()
local state = exports['agency-pad']:GetPadState()
if state.isOpen and state.poweredOn then
TriggerServerEvent('myresource:server:cachePadState', state)
end
end)HasPad()खिलाड़ी की इन्वेंटरी में कॉन्फ़िगर किया गया टैबलेट आइटम हो तो true लौटाता है।
उदाहरण देखें
खिलाड़ी के पास टैबलेट आइटम न हो तो डिस्पैच इंटरफ़ेस कमांड रोकता है।
RegisterCommand('opendispatch', function()
if not exports['agency-pad']:HasPad() then
TriggerEvent('chat:addMessage', { args = { 'You need a tablet first' } })
return
end
TriggerEvent('myresource:client:openDispatch')
end)RegisterAgencyPayPoint(id, data)रनटाइम पर किसी कोऑर्डिनेट पर Agency Pay टर्मिनल रजिस्टर करता है (मार्कर, ब्लिप, चेकआउट डेटा)।
उदाहरण देखें
बिलिंग के लिए अस्पताल की लॉबी में रनटाइम पर Agency Pay टर्मिनल बनाता है।
CreateThread(function()
exports['agency-pad']:RegisterAgencyPayPoint('hospital_lobby', {
coords = vector3(307.7, -1433.4, 30.0),
label = 'Hospital Bill',
amount = 500,
receiver = 'medical'
})
end)RemoveAgencyPayPoint(id)पहले रजिस्टर किए गए Agency Pay टर्मिनल को id से हटाता है।
उदाहरण देखें
जगह बंद होने पर टैबलेट का रजिस्टर किया गया भुगतान पॉइंट हटाता है।
AddEventHandler('myresource:onLocationClosed', function(locationId)
exports['agency-pad']:RemoveAgencyPayPoint(locationId)
end)StartAgencyPayCheckout(data)ज़रूरत हो तो टैबलेट खोलता है और दिए गए भुगतान डेटा के साथ Agency Pay चेकआउट शुरू करता है।
उदाहरण देखें
टैबलेट खोलता है और प्रॉपर्टी टैक्स के लिए Agency Pay चेकआउट शुरू करता है।
RegisterCommand('paybill', function()
exports['agency-pad']:StartAgencyPayCheckout({
amount = 1500,
receiver = 'gov_taxes',
label = 'Property tax',
memo = 'Quarterly tax'
})
end)StartCall(contactData)टैबलेट से दिए गए कॉन्टैक्ट ({ name, number, ... }) को आउटगोइंग कॉल शुरू करता है।
उदाहरण देखें
डिस्पैच इवेंट आने पर टैबलेट से आउटगोइंग कॉल शुरू करता है।
RegisterNetEvent('myresource:client:dispatchOnTablet', function(payload)
exports['agency-pad']:StartCall({
name = payload.name or 'Field Agent',
number = payload.number,
anonymous = false
})
end)PhoneNotification(title, text, icon, color, timeout, acceptIcon, denyIcon)स्वीकार/अस्वीकार बटन वाली सूचना दिखाता है, जवाब आने तक रुकता है और true/false लौटाता है।
उदाहरण देखें
डिलीवरी मिशन शुरू करने के लिए टैबलेट पर स्वीकार/अस्वीकार वाली रुकने वाली सूचना दिखाता है।
CreateThread(function()
local accepted = exports['agency-pad']:PhoneNotification(
'Mission ready', 'Start the delivery now?', 'box', '#3399ff', 12000, 'check', 'x'
)
if accepted then
TriggerServerEvent('myresource:server:startDelivery')
end
end)RegisterApp(config)आपके अपने रिसोर्स का ऐप पैड की होम स्क्रीन और Store में जोड़ता है। true लौटाता है, या false और एक एरर।
UnregisterApp(id)RegisterApp से जोड़ा गया ऐप हटाता है।
GetRegisteredApps()दूसरे रिसोर्स द्वारा रजिस्टर किए गए सभी ऐप्स की टेबल लौटाता है, id के हिसाब से।
ClosePad()पैड बंद करता है, जैसे आपका अपना इंटरफ़ेस खुलने से पहले।
ClosePhone()ClosePad() जैसा ही, पर Agency Phone वाले नाम से, ताकि एक ही इंटीग्रेशन कोड दोनों के लिए चले।
IsPhoneRadioActive()दो वैल्यू लौटाता है: पैड का रेडियो चलते समय true, और जो स्टेशन चल रहा है।
StopPhoneRadio()पैड का रेडियो बंद करता है।
सर्वर एक्सपोर्ट
SendMail(identifier, mailData)identifier के ज़रिए खिलाड़ी के मुख्य मेलबॉक्स में मेल भेजता है (सफलता लौटाता है)।
उदाहरण देखें
खिलाड़ी के identifier से उसे इनवॉइस की सूचना वाला मेल भेजता है।
RegisterNetEvent('myresource:server:sendInvoiceMail', function(targetId)
local identifier = GetPlayerIdentifier(targetId, 0)
exports['agency-pad']:SendMail(identifier, {
sender = '[email protected]',
subject = 'New invoice available',
body = 'Open the tablet to review your invoice.'
})
end)usePad(event, item, inventory, slot, data)ESX और ox_inventory मिलने पर रजिस्टर होने वाला ox_inventory हुक; इन्वेंटरी वाले खिलाड़ी के लिए टैबलेट खोलता है।
उदाहरण देखें
इंटीग्रेशन हेल्पर से टैबलेट खोलने के लिए ox_inventory से जुड़ता है।
exports.ox_inventory:registerHook('usingItem', function(payload)
if payload.item.name ~= 'tablet' then return end
return exports['agency-pad']:usePad('inventory', payload.item, payload.inventory, payload.slot)
end, { itemFilter = { tablet = true } })usePhone(event, item, inventory, slot, data)पुराने फ़ोन आइटम id के लिए ox_inventory हुक; इन्वेंटरी वाले खिलाड़ी के लिए टैबलेट खोलता है।
उदाहरण देखें
पुराने फ़ोन इन्वेंटरी आइटम को उसकी जगह टैबलेट इंटरफ़ेस खोलने की ओर भेजता है।
exports.ox_inventory:registerHook('usingItem', function(payload)
if payload.item.name ~= 'phone' then return end
return exports['agency-pad']:usePhone('inventory', payload.item, payload.inventory, payload.slot)
end, { itemFilter = { phone = true } })GetMarketPrices()शेयर और क्रिप्टो के मौजूदा दाम लौटाता है, मार्केट id के हिसाब से।
PushPadData(source)इस खिलाड़ी के पैड पर टैबलेट डेटा की ताज़ा कॉपी भेजता है। न बन पाए तो false लौटाता है।
इवेंट
agency-pad:client:notifyटैबलेट पर सूचना दिखाता है (title, text, icon, color, timeout, silent)।
उदाहरण देखें
नए खुले मिशन के बारे में बिना रोके टैबलेट पर छोटी सूचना दिखाता है।
TriggerEvent('agency-pad:client:notify', 'Job update', 'New mission unlocked', 'briefcase', '#22cc88', 5000, false)agency-pad:client:usePadItemइन्वेंटरी आइटम इस्तेमाल करने पर टैबलेट खोलता है।
उदाहरण देखें
कस्टम इन्वेंटरी आइटम इस्तेमाल करने के इवेंट को टैबलेट खोलने की प्रक्रिया तक पहुँचाता है।
AddEventHandler('myresource:client:onItemUsed', function(itemName)
if itemName == 'tablet' then
TriggerEvent('agency-pad:client:usePadItem')
end
end)agency-pad:client:openAppटैबलेट से id के ज़रिए किसी कस्टम ऐप पर जाने को कहता है।
उदाहरण देखें
टैबलेट को सीधे कस्टम फ़्लीट मैनेजमेंट ऐप पर ले जाता है।
RegisterCommand('openfleet', function()
TriggerEvent('agency-pad:client:openApp', 'fleet')
end)agency-pad:client:newMailNotifyक्लाइंट को अभी-अभी आए मेल की सूचना देता है।
उदाहरण देखें
टैबलेट के नए मेल की सूचनाएँ सुनता है और उन्हें लोकल रूप से लॉग करता है।
AddEventHandler('agency-pad:client:newMailNotify', function(mail)
print(('Tablet mail from %s: %s'):format(mail.sender, mail.subject))
end)agency-pad:client:hourlyPaycheckक्लाइंट को बिज़नेस की हर घंटे की सैलरी भुगतान की सूचना देता है।
उदाहरण देखें
टैबलेट से बिज़नेस की हर घंटे की सैलरी वाले इवेंट पर प्रतिक्रिया देता है।
AddEventHandler('agency-pad:client:hourlyPaycheck', function(payload)
print(('Hourly paycheck: $%s from %s'):format(payload.amount, payload.businessName))
end)agency-pad:server:requestPadDataकॉल करने वाले खिलाड़ी के लिए टैबलेट डेटा का ताज़ा सिंक माँगता है।
उदाहरण देखें
सर्वर से खिलाड़ी को टैबलेट डेटा का ताज़ा सिंक भेजने को कहता है।
RegisterCommand('refreshpad', function()
TriggerServerEvent('agency-pad:server:requestPadData')
end)agency-pad:server:sendMessageSMS संदेश भेजता है (newMsg, targetNumber)।
उदाहरण देखें
कस्टम कमांड और नंबर आर्ग्युमेंट से टैबलेट से SMS भेजता है।
RegisterCommand('quicksmsTab', function(_, args)
local target, msg = args[1], table.concat(args, ' ', 2)
TriggerServerEvent('agency-pad:server:sendMessage', { message = msg }, target)
end)agency-pad:server:airdropPayपास के खिलाड़ी को Agency Airdrop भुगतान ट्रांसफ़र करता है।
उदाहरण देखें
टैबलेट से पास के खिलाड़ियों को Agency Airdrop ट्रांसफ़र शुरू करता है।
RegisterCommand('airdroppad', function(_, args)
local amount = tonumber(args[1]) or 0
TriggerServerEvent('agency-pad:server:airdropPay', amount, 'Tablet airdrop')
end)agency-pad:server:buyDataPlanखिलाड़ी के लिए कैरियर डेटा प्लान खरीदता है।
उदाहरण देखें
खिलाड़ी के कस्टम इंटरफ़ेस में चुनने के बाद टैबलेट का चुना गया डेटा प्लान खरीदता है।
AddEventHandler('myresource:client:padPlanSelected', function(plan)
TriggerServerEvent('agency-pad:server:buyDataPlan', plan.price, plan.name)
end)agency-pad:dispatch:createइमरजेंसी कॉल या SMS से टैबलेट पर डिस्पैच बनाता है।
उदाहरण देखें
आने वाली इमरजेंसी कॉल से टैबलेट डिस्पैच एंट्री बनाता है।
RegisterNetEvent('myresource:server:padDispatchFromCall', function(payload)
TriggerEvent('agency-pad:dispatch:create', {
source = source,
coords = payload.coords,
type = 'medical',
title = 'Medical assistance'
})
end)agency-pad:server:biz:createखिलाड़ी के लिए नया बिज़नेस या संगठन बनाता है।
उदाहरण देखें
गेम के अंदर कस्टम कमांड से नई बिज़नेस एंट्री बनाता है।
RegisterCommand('startbiz', function()
TriggerServerEvent('agency-pad:server:biz:create', {
name = 'Bennys Repair',
type = 'mechanic',
location = 'sandy_shores'
})
end)agency-pad:server:biz:adminCreateएडमिन किसी दूसरे खिलाड़ी की ओर से बिज़नेस बनाता है।
उदाहरण देखें
किसी दूसरे खिलाड़ी की ओर से बिज़नेस बनाने के लिए एडमिन कमांड आगे भेजता है।
RegisterNetEvent('myresource:server:adminCreateBiz', function(targetSrc, payload)
TriggerEvent('agency-pad:server:biz:adminCreate', targetSrc, payload)
end)agency-pad:server:biz:startMissionखिलाड़ी के लिए कॉन्फ़िगर किया गया बिज़नेस मिशन शुरू करता है।
उदाहरण देखें
कॉल करने वाले खिलाड़ी के लिए कॉन्फ़िगर किया गया बिज़नेस मिशन शुरू करता है।
RegisterCommand('bizmission', function()
TriggerServerEvent('agency-pad:server:biz:startMission', {
bizId = 12,
missionId = 'delivery_route_a'
})
end)agency-pad:server:applyToListingकिसी बिज़नेस की नौकरी लिस्टिंग पर आवेदन भेजता है।
उदाहरण देखें
id से टैबलेट की बिज़नेस लिस्टिंग पर नौकरी का आवेदन भेजता है।
RegisterCommand('apply', function(_, args)
local listingId = tonumber(args[1])
TriggerServerEvent('agency-pad:server:applyToListing', listingId, {
coverNote = 'Available immediately'
})
end)agency-pad:server:createMechanicInvoiceमैकेनिक इनवॉइस का ड्राफ़्ट बनाता है।
उदाहरण देखें
वाहन प्लेट और राशि के लिए मैकेनिक इनवॉइस का ड्राफ़्ट बनाता है।
RegisterCommand('mechinvoice', function(_, args)
TriggerServerEvent('agency-pad:server:createMechanicInvoice', {
plate = args[1],
amount = tonumber(args[2]) or 250,
notes = 'Brake replacement'
})
end)agency-pad:server:sendMechanicInvoicePayभुगतान के लिए ग्राहक को मैकेनिक इनवॉइस भेजता है।
उदाहरण देखें
भुगतान के लिए ग्राहक को तैयार मैकेनिक इनवॉइस भेजता है।
AddEventHandler('myresource:client:onInvoiceConfirmed', function(invoice)
TriggerServerEvent('agency-pad:server:sendMechanicInvoicePay', invoice.id, invoice.targetSrc)
end)agency-pad:server:mdtCreateInvoiceMDT किसी नागरिक के लिए जुर्माना या इनवॉइस बनाता है।
उदाहरण देखें
कस्टम नेट इवेंट से किसी नागरिक के लिए MDT जुर्माना/इनवॉइस बनाता है।
RegisterNetEvent('myresource:server:mdtFine', function(targetSrc, amount, reason)
TriggerEvent('agency-pad:server:mdtCreateInvoice', {
target = targetSrc,
amount = amount,
reason = reason,
officer = source
})
end)03Agency-Watch
अब AgencyOS27 के साथ: जिनके पास घड़ी पहले से है उनके लिए मुफ़्त अपडेट। FiveM के लिए एक असली स्मार्टवॉच, HUD नहीं। दस वॉच फ़ेस, केस, स्ट्रैप और रंगों के लिए एक Studio, एक्टिविटी रिंग, स्टॉपवॉच, टाइमर, अलार्म, मौसम, कम्पास, स्पीडोमीटर, चार गेम, एक कंट्रोल सेंटर और एक ऐप स्टोर, यह सब किसी दूसरे रिसोर्स के बिना चलता है। Angy क्राउन पर बैठी है और कहने भर से घड़ी चलाती है, तय नियमों पर, बिना एआई के। Agency Phone मिलते ही कॉल, संदेश, मेल, कॉन्टैक्ट और Agency Pay कलाई पर आ जाते हैं, और घड़ी आपकी अपनी ऐप्स के लिए खुल जाती है। मुफ़्त, QBCore / Qbox / ESX / standalone, दस भाषाएँ।
क्लाइंट एक्सपोर्ट
OpenWatch(mitte)घड़ी खोलता है। true देने पर यह तय कोने की जगह स्क्रीन के बीच में खुलती है।
CloseWatch()घड़ी बंद करता है और NUI फ़ोकस छोड़ता है।
ToggleWatch()घड़ी खुली हो तो बंद करता है, नहीं तो खोलता है।
IsWatchOpen()जब तक घड़ी का इंटरफ़ेस स्क्रीन पर है, true लौटाता है।
IsWatchLinked()खिलाड़ी ने कंट्रोल सेंटर में Agency Phone से कनेक्शन बंद किया हो तो false लौटाता है।
RunWatchAction()नारंगी एक्शन बटन पर जो भी सेट है, उसे चलाता है (Config.ActionButton)।
GetWatchSettings()वह पूरी सेटिंग्स टेबल लौटाता है जिससे घड़ी का इंटरफ़ेस बनता है (थीम, फ़ेस, साइज़, ऐप्स, भाषा)।
SetWatchSetting(key, value)एक सेटिंग सेट करता है, हर किरदार के लिए सहेजता है और तुरंत लागू करता है।
SetWatchSettings(table)कई सेटिंग्स एक साथ सेट करता है और हर वैल्यू पर नहीं, सिर्फ़ एक बार इंटरफ़ेस दोबारा बनाता है।
RequestWatchPairing()सर्वर से Companion ऐप का पेयरिंग कोड माँगता है। जवाब रिटर्न वैल्यू नहीं, इवेंट के रूप में आता है।
ShowUpdate()AgencyOS की सॉफ़्टवेयर अपडेट स्क्रीन खोलता है।
HandlesDeath()मौत पर घड़ी इमरजेंसी स्क्रीन दिखाती हो तो true लौटाता है। Agency Phone यह पूछता है ताकि दोनों डिवाइस उसे एक साथ न दिखाएँ।
GetFitness()चालू दिन के मौजूदा फ़िटनेस आँकड़े लौटाता है: कदम, दूरी, सक्रिय मिनट और कैलोरी।
SetWatchAppInstalled(id, on)इस खिलाड़ी के लिए एक ऐप इंस्टॉल करता है या हटाता है। वही जो App Store करता है, ताकि सर्वर इनाम में ऐप दे सके।
FindWatch()घड़ी को बजाता और रोशन करता है, जैसे Companion ऐप का ढूँढने वाला फ़ीचर करता है।
StopFindWatch()घंटी अपने आप रुकने से पहले उसे बंद करता है।
IsWatchRinging()जब तक घड़ी बज रही है, true लौटाता है।
सर्वर एक्सपोर्ट
IsPremium(src)इस खिलाड़ी की घड़ी Pro वर्ज़न में चलती हो तो true लौटाता है। फ़ैसला असली Agency Phone के साथ हैंडशेक से होता है, क्लाइंट से कभी नहीं।
04Agency-Zero
FiveM के लिए मुफ़्त, खुद चलने वाली चार सीटों वाली इलेक्ट्रिक कार। Project 0 एक अपना वाहन है, जिसे Blender में Sollumz के साथ शुरू से बनाया गया है: दरवाज़ों पर हैंडल नहीं, लहर की तरह खुलने वाले दरवाज़े, और खुद चलाने के लिए असली स्टीयरिंग व्हील और पैडल। खिलाड़ी इसे Agency Phone, Agency Pad या अपने असली फ़ोन के Agency Companion ऐप से बुलाते हैं, और यह उनके पास आकर फ़ुटपाथ के किनारे पार्क होती है, पार्किंग ढूँढने नहीं निकल जाती। अंदर डैशबोर्ड के टैबलेट और Z मेनू पर AgencyOS27 चलता है: टैप करने लायक मैप, आसान शब्दों में बात करने के लिए Angy, बिल्ट-इन असिस्टेंट, जो तय नियमों पर और बिना एआई के चलता है, एक मास्टर स्विच वाले छह ड्राइवर असिस्टेंट, स्टेज में चिप ट्यूनिंग, साउंड चिप, और हर कार व हर मालिक के आँकड़े। हर कार का अपना नंबर होता है जो डेटाबेस में उसके मालिक से जुड़ा रहता है, इसलिए मालिकाना हक, ट्यूनिंग और हर सेटिंग रीस्टार्ट के बाद भी बनी रहती है। QBCore, Qbox और ESX अपने आप पहचाने जाते हैं, यह standalone भी चलती है, और सारे टेक्स्ट 27 भाषाओं में आते हैं जिनकी नींव अंग्रेज़ी है।
क्लाइंट एक्सपोर्ट
ZeroStatus()खिलाड़ी की अपनी Project 0 की स्थिति लौटाता है: है या नहीं, कहाँ है, बैटरी, रेंज और कोई राइड चल रही है या नहीं।
ZeroCall()कार को खिलाड़ी के पास बुलाता है। वह वहाँ जाती है और उसके पास फ़ुटपाथ के किनारे पार्क होती है।
ZeroDeliver()कार मैप पर न हो तो उसकी डिलीवरी करवाता है। कीमत Config.Remote.deliveryFee, बिना फ़्रेमवर्क के मुफ़्त।
ZeroGarage()कार को वापस उसके गैराज भेजता है।
ZeroCancel()चल रहा कॉल या राइड रद्द करता है।
ZeroFind()स्क्रीन के नीचे Config.Remote.findRadarSeconds सेकंड तक कार की दिशा दिखाता है।
ZeroDoors(on)true से दरवाज़े खोलता है, false से बंद करता है। वे एक साथ नहीं, लहर की तरह एक-एक करके चलते हैं।
ZeroLock(on)true से कार लॉक करता है, false से अनलॉक।
ZeroLights(on)लाइटें चालू और बंद करता है।
ZeroBuyInfo()बताता है कि खिलाड़ी Project 0 खरीद सकता है या नहीं और उसकी कीमत क्या है। जिसके पास पहले से है, उसे कुछ नहीं मिलता।
ZeroBuy()इस खिलाड़ी के लिए Project 0 खरीदता है। उसी कदम में कार उससे जुड़ जाती है।
ZeroRefresh()स्थिति दोबारा पढ़ता है, उस इंटरफ़ेस के लिए जिसे अगले टिक का इंतज़ार किए बिना ताज़ा आँकड़े चाहिए।
IsRideActive()जब तक ऑटोनॉमस राइड चल रही है, true लौटाता है।
CallProjectZero()मौजूदा मंज़िल की ओर राइड शुरू करता है। मंज़िल न हो तो मैप का वेपॉइंट इस्तेमाल होता है।
CancelProjectZero()राइड खत्म करता है। कार किनारे लगकर रुक जाती है।
IsCockpitOpen()जब तक डैशबोर्ड का टैबलेट स्क्रीन पर है, true लौटाता है।
IsManualOverride()ड्राइवर ने स्टीयरिंग संभाल लिया हो तो true लौटाता है। इसके बिना Zero सिर्फ़ खुद चलती है।
AnyDoorOpen(veh)उस वाहन का कम से कम एक दरवाज़ा खुला हो तो true लौटाता है।
OpenDoors(veh, opts)लहर वाले एनिमेशन के साथ वाहन के दरवाज़े खोलता है।
CloseDoors(veh, opts)उन्हें फिर बंद करता है।
AnimateDoors(veh, open, opts)दूसरे आर्ग्युमेंट के हिसाब से खोलता या बंद करता है, उस कोड के लिए जो रनटाइम पर तय करता है।
SoundChipOf(veh)उस कार में लगी साउंड चिप लौटाता है। चिप बदलने से इंजन की आवाज़ बदलती है, रेडियो कभी नहीं।
सर्वर एक्सपोर्ट
IsPro(src)इस खिलाड़ी की Zero Pro वर्ज़न में चलती हो तो true लौटाता है। फ़ैसला असली Agency Phone के साथ HMAC हैंडशेक से होता है, क्लाइंट से कभी नहीं।
ZeroVin(plate)किसी नंबर प्लेट के पीछे का वाहन नंबर लौटाता है। हर Project 0 को सौंपे जाने पर एक नंबर मिलता है और हमेशा उसी के पास रहता है।
ZeroCarsOf(src)इस खिलाड़ी की हर Project 0 लौटाता है, नंबर, प्लेट, ट्यूनिंग स्टेज और आँकड़ों के साथ।
ZeroSync(src)रजिस्ट्री की स्थिति इस खिलाड़ी को फिर से भेजता है, जैसे किसी दूसरी स्क्रिप्ट के मालिकाना हक बदलने के बाद।
इवेंट
agency-zero:client:rideStartedराइड शुरू हो गई है। इसमें मंज़िल शामिल है।
agency-zero:client:rideEndedराइड खत्म हुई, रद्द हुई या पहुँच गई।
agency-zero:client:arrivedकार खिलाड़ी तक पहुँच गई है और दरवाज़े खोल दिए हैं।
05Agency-Lifeinvader V3
शहर की विज्ञापन एजेंसी: categories, boosts, scheduling, drafts, review, स्टाफ़ जॉब, AI writer और Agency Phone तथा Agency Pad के लिए ऐप के साथ हर स्क्रीन पर खिलाड़ी विज्ञापन।
ऐसे business और job scripts के लिए उपयुक्त, जो अपने विज्ञापन दिखाते हैं; event और casino scripts के लिए, जो चल रही चीज़ों की घोषणा करते हैं; हर विज्ञापन के Discord logs के लिए; ऐप खोलने वाले फ़ोन और radial menus के लिए; और Lifeinvader admins की जाँच करने वाले admin tools के लिए।
क्लाइंट एक्सपोर्ट
OpenApp(tab)आपके बताए page पर app खोलता है: 'feed', 'create', 'mine', 'drafts' या 'settings'। कोई page न देने पर, आखिरी बार इस्तेमाल किया गया page खुलेगा, या live feed खुलेगी।
उदाहरण देखें
आपके अपने radial menu या फ़ोन से ऐप को New ad पर खोलता है।
-- an entry in your radial menu
exports['Agency-LifeinvaderV3']:OpenApp('create')OpenFeed()app को live feed पर खोलता है।
उदाहरण देखें
लाइव फ़ीड खोलता है, उदाहरण के लिए किसी अख़बार के स्टैंड पर।
exports['Agency-LifeinvaderV3']:OpenFeed()CloseApp()app बंद करता है।
उदाहरण देखें
आपका अपना मेनू खुलने से पहले ऐप बंद करता है।
exports['Agency-LifeinvaderV3']:CloseApp()IsOpen()इस client पर app खुला होने पर true।
उदाहरण देखें
आपका मेनू ऐप के ऊपर खुलने से रोकता है।
if not exports['Agency-LifeinvaderV3']:IsOpen() then
-- open your own menu
endसर्वर एक्सपोर्ट
PostAd(text, opts)server का अपना ad पोस्ट करता है: मुफ़्त, इसकी कभी समीक्षा नहीं होती और यह queue में सबसे पहले आता है। opts: author, category, instant (तुरंत चलता है), reps, interval, duration और boosted। ad id लौटाता है, या nil और एक error code।
उदाहरण देखें
आपके casino या event script से एक आधिकारिक विज्ञापन पोस्ट करता है, मुफ़्त और कतार में सबसे पहले।
exports['Agency-LifeinvaderV3']:PostAd('Casino night tonight at 20:00, free entry!', {
author = 'Diamond Casino', category = 'events', instant = true,
})GetFeed(limit)app में दिखने वाली live feed, सबसे नए ad पहले: id, text, category, boosted, author (anonymous ads के लिए nil), sentAt, created, sent और live।
उदाहरण देखें
वेबसाइट, अख़बार या फ़ोन ऐप के लिए हाल के विज्ञापन पढ़ता है।
for _, ad in ipairs(exports['Agency-LifeinvaderV3']:GetFeed(10)) do
print(ad.id, ad.author or 'anonymous', ad.text)
endGetAd(id)feed वाले ही format में एक ad, या nil।
उदाहरण देखें
नंबर से कोई विज्ञापन ढूँढ़ता है।
local ad = exports['Agency-LifeinvaderV3']:GetAd(412)
if ad then print(ad.text) endIsAdmin(source)ACE, group या identifier के ज़रिए player Lifeinvader admin होने पर true।
उदाहरण देखें
अपने स्क्रिप्ट में Lifeinvader के एडमिन अधिकारों का इस्तेमाल करता है।
if exports['Agency-LifeinvaderV3']:IsAdmin(source) then
-- show your admin tools
endइवेंट
agency-lifeinvader:adShownहर client पर ad स्क्रीन पर दिखने पर local event, इसमें id, text, category, catLabel, icon, author (anonymous होने पर nil), boosted, duration और system (official announcements के लिए true) शामिल हैं।
उदाहरण देखें
क्लाइंट पर प्रतिक्रिया देता है, जब कोई विज्ञापन दिखाई देता है, उदाहरण के लिए किसी बिलबोर्ड पर।
AddEventHandler('agency-lifeinvader:adShown', function(ad)
-- ad.text, ad.author, ad.category
end)agency-lifeinvader:adBroadcastहर बार ad चलने पर server पर local event, इसमें feed वाले format में ad शामिल है। logs या Discord webhook के लिए उपयोगी।
उदाहरण देखें
सर्वर पर चलने वाले हर विज्ञापन का लॉग रखता है।
AddEventHandler('agency-lifeinvader:adBroadcast', function(ad)
-- send ad.text to your Discord log
end)agency_lifeinvader:openMenuV3 से रखा गया: app को New ad पर खोलता है, ताकि पुराने menu को खोलने वाली scripts काम करती रहें।
उदाहरण देखें
किसी खिलाड़ी के लिए ऐप को New ad पर खोलता है, जैसा V3 इवेंट करता था।
TriggerClientEvent('agency_lifeinvader:openMenu', source)agency_lifeinvader:openRecentMenuV3 से रखा गया: app को live feed पर खोलता है।
उदाहरण देखें
किसी खिलाड़ी के लिए लाइव फ़ीड खोलता है, जैसा V3 इवेंट करता था।
TriggerClientEvent('agency_lifeinvader:openRecentMenu', source)06Agency-Blackmarket V2
घूमते डीलर, लाइव बाज़ार, मोलभाव, उठाने वाले ऑर्डर, डिलीवरी के काम, फ़ेंस, मनी लॉन्ड्रिंग और पाँच साख लेवल वाला एक जीवंत ब्लैक मार्केट।
गैंग, डकैती और ड्रग स्क्रिप्ट के लिए सही है जो साख या क्रेडिट देना चाहती हैं, पुलिस और dispatch टूल के लिए जो सौदों और डीलरों के हटने पर प्रतिक्रिया देते हैं, और उन रेडियल मेनू या फ़ोन के लिए जो ब्लैक मार्केट मेनू खोलते हैं।
क्लाइंट एक्सपोर्ट
OpenMenu()/ablackmarket का मेनू खोलता है, जैसे किसी रेडियल मेनू या फ़ोन ऐप से। कमांड वाली सारी जाँचें इस पर भी लागू होती हैं।
उदाहरण देखें
आपके अपने रेडियल मेनू या फ़ोन ऐप से ब्लैक मार्केट मेनू खोलता है।
-- an entry in your radial menu
exports['Agency-Blackmarket']:OpenMenu()CloseMenu()मेनू बंद करता है और माउस गेम को वापस दे देता है।
उदाहरण देखें
मेनू बंद करता है, जैसे आपकी अपनी कटसीन से पहले।
-- before your own cutscene starts
exports['Agency-Blackmarket']:CloseMenu()IsMenuOpen()जब तक ब्लैक मार्केट मेनू खुला है, डीलर के पास या कहीं भी, तब तक true लौटाता है।
उदाहरण देखें
आपका अपना इंटरफ़ेस दिखने से पहले जाँचता है कि मेनू खुला है या नहीं।
if exports['Agency-Blackmarket']:IsMenuOpen() then
return -- the player is busy in the black market menu
endसर्वर एक्सपोर्ट
GetReputation(source)किसी खिलाड़ी के साख पॉइंट, और जिसके पास अभी कोई नहीं उसके लिए 0।
उदाहरण देखें
सिर्फ़ पर्याप्त साख वाले खिलाड़ियों को आपका जॉब या डकैती शुरू करने देता है।
local rep = exports['Agency-Blackmarket']:GetReputation(source)
if rep < 150 then
return -- this heist needs a known name on the street
endSetReputation(source, value)खिलाड़ी की साख को एक तय मान पर सेट करता है, कभी 0 से कम नहीं। सफल होने पर true लौटाता है।
उदाहरण देखें
खिलाड़ी की साख को एक तय मान पर सेट करता है।
-- an admin tool resets a player
exports['Agency-Blackmarket']:SetReputation(targetId, 0)AddReputation(source, amount)साख जोड़ता है, या ऋणात्मक मान देने पर घटाता है। नया लेवल खिलाड़ी और Companion ऐप को बताया जाता है। सफल होने पर true लौटाता है।
उदाहरण देखें
पूरे हुए जॉब का इनाम साख में देता है; नया लेवल बताया जाता है।
-- a finished drug run earns street reputation
exports['Agency-Blackmarket']:AddReputation(source, 15)GetLevel(source)दो मान लौटाता है: खिलाड़ी के लेवल का नंबर (डिफ़ॉल्ट रूप से 1 से 5) और उसका नाम।
उदाहरण देखें
लेवल का नंबर और नाम पढ़ता है, जैसे अपना कंटेंट अनलॉक करने के लिए।
local level, name = exports['Agency-Blackmarket']:GetLevel(source)
if level >= 4 then
print(('%s is %s on the street'):format(GetPlayerName(source), name))
endAddCredit(source, amount)डीलर क्रेडिट जोड़ता है, जिसे खिलाड़ी अपनी अगली ख़रीद या ऑर्डर में इस्तेमाल कर सकता है। सफल होने पर true लौटाता है।
उदाहरण देखें
खिलाड़ी को अगली ख़रीद या ऑर्डर के लिए डीलर क्रेडिट देता है।
-- a gang boss pays out in dealer credit
exports['Agency-Blackmarket']:AddCredit(source, 2500)RelocateDealer(dealerId)डीलर को तुरंत उसकी किसी दूसरी जगह पर भेज देता है। उसके हटने पर true लौटाता है।
उदाहरण देखें
डीलर को तुरंत उसकी किसी दूसरी जगह पर भेज देता है।
-- a tip reached the police: the dealer changes his spot
exports['Agency-Blackmarket']:RelocateDealer('vince')SendDealerAway(dealerId, minutes)डीलर दिए गए मिनटों के लिए ग़ायब हो जाता है और फिर अपनी किसी दूसरी जगह दिखता है, जैसे पुलिस के आने के बाद।
उदाहरण देखें
डीलर को कुछ देर के लिए दूर भेज देता है, जैसे पुलिस के आने के बाद।
-- a raid in the area: Marlow goes quiet for 20 minutes
exports['Agency-Blackmarket']:SendDealerAway('marlow', 20)IsDealerPresent(dealerId)जब तक डीलर अपनी किसी जगह पर खड़ा है और गया नहीं है, तब तक true।
उदाहरण देखें
जाँचता है कि डीलर इस समय अपनी किसी जगह पर है या नहीं।
if exports['Agency-Blackmarket']:IsDealerPresent('vince') then
print('Vince is on the street')
endStartFlashSale(minutes)छूट पर रैंडम आइटम के साथ फ़्लैश सेल शुरू करता है। मिनट न देने पर Config.FlashSale का समय लिया जाता है।
उदाहरण देखें
आपके अपने इवेंट या शेड्यूल से फ़्लैश सेल शुरू करता है।
-- the city had a big night: a flash sale for 10 minutes
exports['Agency-Blackmarket']:StartFlashSale(10)इवेंट
agency-blackmarket:dealहर सौदे के बाद सर्वर पर (source, kind, data) के साथ चलता है। kind का मान buy, sell, launder, order, pickup या job होता है, और data में सौदे का ब्योरा होता है, जैसे डीलर, आइटम और कुल रकम।
उदाहरण देखें
हर सौदे पर प्रतिक्रिया देता है, जैसे आपके अपने लॉग या पुलिस टैबलेट के लिए।
AddEventHandler('agency-blackmarket:deal', function(source, kind, data)
if kind == 'buy' then
print(('%s spent %d at %s'):format(GetPlayerName(source), data.total, data.dealer))
end
end)agency-blackmarket:dealerMovedजब कोई डीलर अपनी जगह बदलता है, तब सर्वर पर (dealerId, pos, reason) के साथ चलता है। reason का मान rotate, return, admin या export होता है।
उदाहरण देखें
डीलरों पर नज़र रखता है, जैसे मुख़बिर या जासूस वाले जॉब के लिए।
AddEventHandler('agency-blackmarket:dealerMoved', function(dealerId, pos, reason)
print(('%s moved to %.1f, %.1f (%s)'):format(dealerId, pos.x, pos.y, reason))
end)agency-blackmarket:flashSaleफ़्लैश सेल शुरू होने पर सर्वर पर (items, minutes) के साथ चलता है। items हर छूट वाले आइटम को उसकी प्रतिशत छूट से जोड़ता है।
उदाहरण देखें
आपके अपने चैनलों पर फ़्लैश सेल की घोषणा करता है।
AddEventHandler('agency-blackmarket:flashSale', function(items, minutes)
for item, discount in pairs(items) do
print(('%s is %d%% off for %d minutes'):format(item, discount, minutes))
end
end)07Agency-Minerjob V2
एक माइनिंग जॉब, जिसमें सात क्षेत्र, तीन टूल, 100 स्तर, भट्टियां, रत्न कटाई, कॉन्ट्रैक्ट और बदलती कीमतों वाला एक बाज़ार, सब एक ही मेनू में हैं।
उन क्वेस्ट और उपलब्धि स्क्रिप्ट के साथ काम करता है जो माइनिंग पर प्रतिक्रिया देती हैं, उन इकोनॉमी और जॉब स्क्रिप्ट के साथ जो बाज़ार की कीमतें पढ़ती हैं, उन रेडियल मेनू और फोन के साथ जो मेनू खोलते हैं, और उन एडमिन टूल के साथ जो स्तर सेट करते हैं या XP देते हैं।
क्लाइंट एक्सपोर्ट
OpenMenu(page)मेनू खोलता है, उदाहरण के लिए radial menu या phone app से। page विकल्प overview (डिफ़ॉल्ट), market, tools, smelter, cutting या contracts है।
उदाहरण देखें
अपने रेडियल मेनू या फोन ऐप से बाज़ार पेज पर मेनू खोलता है।
-- an entry in your radial menu
exports['Agency-Minerjob']:OpenMenu('market')CloseMenu()मेनू बंद करता है और माउस गेम को वापस दे देता है।
उदाहरण देखें
आपका मेनू खुलने से पहले मेनू बंद करता है।
exports['Agency-Minerjob']:CloseMenu()IsMenuOpen()मेनू खुला होने पर True।
उदाहरण देखें
आपका मेनू माइनिंग मेनू के ऊपर खुलने से रोकता है।
if not exports['Agency-Minerjob']:IsMenuOpen() then
-- open your own menu
endIsWorking()खिलाड़ी के mining करने या gem काटने पर True।
उदाहरण देखें
आपकी स्क्रिप्ट को माइनिंग या कटिंग एनीमेशन में बाधा डालने से रोकता है।
if exports['Agency-Minerjob']:IsWorking() then
return -- no emotes while mining
endGetLevel()खिलाड़ी का mining लेवल।
उदाहरण देखें
खिलाड़ी का लेवल पढ़ता है, उदाहरण के लिए HUD या फ़ोन ऐप के लिए।
local level = exports['Agency-Minerjob']:GetLevel()
print('Mining level', level)सर्वर एक्सपोर्ट
GetLevel(source)किसी खिलाड़ी का mining लेवल, खिलाड़ी की जानकारी न होने पर 0।
उदाहरण देखें
आपकी स्क्रिप्ट को कोई कार्रवाई करने की अनुमति देने से पहले सर्वर पर माइनिंग लेवल जाँचता है।
if exports['Agency-Minerjob']:GetLevel(source) < 25 then
return -- the quarry job needs level 25
endGetProgress(source)लेवल और प्रगति इस रूप में: { level, xp, need, pct, max }।
उदाहरण देखें
लेवल और प्रोग्रेस पढ़ता है, उदाहरण के लिए फ़ोन ऐप या स्कोरबोर्ड के लिए।
local p = exports['Agency-Minerjob']:GetProgress(source)
print(p.level, p.xp, p.need, p.pct)AddXp(source, amount)XP जोड़ता है, साथ ही लेवल अप और उसका संदेश भी। खिलाड़ी मिलने पर true लौटाता है।
उदाहरण देखें
आपकी अपनी क्वेस्ट या इवेंट से इनाम के रूप में माइनिंग XP देता है।
-- a quest reward
exports['Agency-Minerjob']:AddXp(source, 250)SetLevel(source, level)लेवल को 1 और अधिकतम लेवल के बीच सेट करता है और उसे 0 XP से शुरू करता है।
उदाहरण देखें
लेवल सेट करता है, उदाहरण के लिए आपके अपने एडमिन टूल से।
exports['Agency-Minerjob']:SetLevel(source, 10)GetStats(source)खिलाड़ी ने अब तक क्या किया: { mined, smelted, cut, broken, sold, earned, contracts }।
उदाहरण देखें
लीडरबोर्ड या उपलब्धियों के लिए पढ़ता है कि खिलाड़ी ने क्या माइन किया और क्या कमाया।
local stats = exports['Agency-Minerjob']:GetStats(source)
print(stats.mined, stats.earned)GetPrice(item)किसी आइटम की प्रति पीस मौजूदा बाज़ार कीमत।
उदाहरण देखें
मौजूदा बाज़ार कीमत पढ़ता है, उदाहरण के लिए स्टॉक टिकर या ऐसी दुकान के लिए जो वही आइटम खरीदती है।
local price = exports['Agency-Minerjob']:GetPrice('gold_bar')
print('Gold bar pays', price)इवेंट
agency-minerjob:minedमाइनिंग से भुगतान होने के बाद सर्वर पर चलता है, इसमें source, item, count और mining area शामिल होते हैं। उदाहरण के लिए quests या statistics के लिए AddEventHandler के साथ सुनें।
उदाहरण देखें
सर्वर पर हर उस माइनिंग कार्रवाई पर प्रतिक्रिया देता है जिससे भुगतान हुआ हो।
AddEventHandler('agency-minerjob:mined', function(source, item, count, area)
-- count mined ore for a quest
end)agency-minerjob:soldबिक्री के बाद सर्वर पर चलता है, इसमें source, item, count और कुल भुगतान शामिल होते हैं।
उदाहरण देखें
लॉग या आँकड़ों के लिए सर्वर पर हर बिक्री पर प्रतिक्रिया देता है।
AddEventHandler('agency-minerjob:sold', function(source, item, count, total)
-- log big sales
end)agency-minerjob:contractcontract पूरा करके सौंपे जाने पर सर्वर पर चलता है, इसमें source, item, count और pay शामिल होते हैं।
उदाहरण देखें
कॉन्ट्रैक्ट डिलीवर होने पर सर्वर पर प्रतिक्रिया देता है।
AddEventHandler('agency-minerjob:contract', function(source, item, count, pay)
-- an achievement for delivered contracts
end)08Agency-Repairkit V2
चार रिपेयर किट, स्किल चेक और मैकेनिक बोनस के साथ यथार्थवादी वाहन क्षति।
मैकेनिक और टो-ट्रक जॉब, किट बेचने वाले शॉप, और ऐसे किसी भी स्क्रिप्ट के लिए उपयुक्त जिसे पूरे हुए रिपेयर पर या प्लेयर की चलाई जा रही गाड़ी के डैमेज लेवल पर रिएक्ट करना हो।
क्लाइंट एक्सपोर्ट
IsRepairing()जब तक लोकल प्लेयर किसी वाहन पर काम कर रहा हो, तब तक true रिटर्न करता है, उदाहरण के लिए अपना मेन्यू बंद रखने के लिए।
उदाहरण देखें
जब तक प्लेयर वाहन रिपेयर कर रहा हो, तब तक आपका मेन्यू बंद रखता है।
if exports['Agency-Repairkit']:IsRepairing() then
return -- keep your menu closed while the player works
endGetVehicleCondition(vehicle)इंजन, बॉडी और टैंक % में, टायर, गंदगी, डैमेज लेवल और क्या टैंक लीक कर रहा है। बिना आर्गुमेंट के यह उस वाहन को पढ़ता है जिसमें प्लेयर बैठा है।
उदाहरण देखें
प्लेयर की चलाई जा रही गाड़ी की स्थिति पढ़ता है।
local vehicle = GetVehiclePedIsIn(PlayerPedId(), false)
local cond = exports['Agency-Repairkit']:GetVehicleCondition(vehicle)
if cond and cond.level == 'critical' then
print(('Engine %d %%, leaking: %s'):format(cond.engine, tostring(cond.leaking)))
endOpenMenu()/arepairkit मेनू खोलता है, उदाहरण के लिए किसी फोन ऐप या रेडियल मेनू से।
उदाहरण देखें
अपने रेडियल मेनू या फोन ऐप से रिपेयर किट मेनू खोलता है।
-- an entry in your radial menu or phone app
exports['Agency-Repairkit']:OpenMenu()CloseMenu()मेनू बंद करता है और माउस गेम को वापस दे देता है।
उदाहरण देखें
मेनू बंद करता है, उदाहरण के लिए अपने किसी कटसीन से पहले।
-- before your own cutscene starts
exports['Agency-Repairkit']:CloseMenu()IsMenuOpen()जब तक मेनू खुला रहता है, true रिटर्न करता है।
उदाहरण देखें
अपना इंटरफेस दिखने से पहले जांचता है कि मेनू खुला है या नहीं।
if exports['Agency-Repairkit']:IsMenuOpen() then
return -- the player is busy in the repair kit menu
endसर्वर एक्सपोर्ट
UseKit(source, kit)किसी प्लेयर के लिए किट इस तरह शुरू करता है जैसे आइटम इस्तेमाल किया गया हो, सभी चेक के साथ। true रिटर्न करता है, या false और कारण। कस्टम इन्वेंटरी और शॉप के लिए।
उदाहरण देखें
कस्टम इन्वेंटरी से किसी प्लेयर के लिए रोडसाइड किट शुरू करता है।
-- your own inventory: start the repair when the item is used
local ok, reason = exports['Agency-Repairkit']:UseKit(source, 'basic')
if not ok then print('Repair refused: ' .. tostring(reason)) endGiveKit(source, kit, amount)पता लगाई गई इन्वेंटरी के जरिए प्लेयर की इन्वेंटरी में किट जोड़ता है। सफल होने पर true रिटर्न करता है।
उदाहरण देखें
पता लगाई गई इन्वेंटरी के जरिए किसी प्लेयर को दो टायर किट देता है।
-- a shop NPC sells two tyre kits
exports['Agency-Repairkit']:GiveKit(source, 'tyre', 2)IsRepairing(source)जब तक वह प्लेयर किसी वाहन पर काम कर रहा हो, तब तक true।
उदाहरण देखें
खिलाड़ी के मरम्मत करने के दौरान एक टास्क को स्किप करता है।
if exports['Agency-Repairkit']:IsRepairing(source) then
return -- no new job task while the player is busy
endGetKits()हर कॉन्फिगर की गई किट, उसके आइटम, लेबल, काम के प्रकार और अवधि के साथ।
उदाहरण देखें
हर किट को उसके आइटम और लेबल के साथ सूचीबद्ध करता है।
for name, kit in pairs(exports['Agency-Repairkit']:GetKits()) do
print(name, kit.item, kit.label, kit.duration)
enduseKit(event, item, inventory, slot, data)ox_inventory आइटम एक्सपोर्ट। install/ox_inventory.lua में मौजूद आइटम एंट्रीज़ इसी की ओर इशारा करती हैं; इसे सीधे कॉल करने के लिए नहीं बनाया गया है।
उदाहरण देखें
वह आइटम एंट्री जो ox_inventory को किट्स से जोड़ती है।
-- ox_inventory/data/items.lua
['agencyrepairkit'] = {
label = 'Roadside Repair Kit', weight = 1500, consume = 0,
server = { export = 'Agency-Repairkit.useKit' },
},इवेंट
agency-repairkit:repairedरिपेयर पूरा होने और किट इस्तेमाल हो जाने के बाद सर्वर पर (source, netId, kit) के साथ फायर होता है। लॉग, पेमेंट या जॉब प्रोग्रेस के लिए अच्छा।
उदाहरण देखें
सर्वर पर हर पूरी हुई मरम्मत को लॉग करता है।
AddEventHandler('agency-repairkit:repaired', function(src, netId, kit)
print(('%s finished %s on vehicle %s'):format(GetPlayerName(src), kit, netId))
end)agency-repairkit:client:repairedजब रिपेयर पूरा हो जाता है तो रिपेयर करने वाले प्लेयर के क्लाइंट पर (netId, kit) के साथ फायर होता है।
उदाहरण देखें
मरम्मत करने वाले खिलाड़ी के क्लाइंट पर प्रतिक्रिया देता है।
AddEventHandler('agency-repairkit:client:repaired', function(netId, kit)
if kit == 'advanced' then
-- play a sound or advance a job step
end
end)agency-repairkit:client:damageLevelड्राइवर के क्लाइंट पर (level, vehicle) के साथ तब फायर होता है जब भी डैमेज लेवल बदलता है: ok, light, medium, heavy या critical।
उदाहरण देखें
खिलाड़ी जिस वाहन को चला रहा है, उसके डैमेज लेवल को ट्रैक करता है।
AddEventHandler('agency-repairkit:client:damageLevel', function(level, vehicle)
if level == 'critical' then
-- offer the tow-truck job
end
end)09Agency-Vehiclekeys V2
की रिंग और रिमोट के साथ यूनिवर्सल वाहन चाबियाँ, सेव की गई और अस्थायी चाबियाँ, जॉब चाबियाँ, पुलिस अलर्ट के साथ लॉकपिकिंग और hotwiring, और एक एडमिन पेज।
उन गैरेज, वाहन दुकानों और रेंटल के लिए उपयुक्त जो चाबियाँ देते हैं, अपने वाहन वाली जॉब स्क्रिप्ट, ऐसी हीस्ट और कार चोरी की स्क्रिप्ट जिन्हें चाबियाँ जाँचनी या देनी चाहिए, इंजन के अनुसार काम करने वाले HUD, और की रिंग खोलने वाले radial menu या फ़ोन।
क्लाइंट एक्सपोर्ट
HasKeys(plate)True जब खिलाड़ी के पास इस प्लेट के लिए चाबी हो: owner, shared या temporary। Job vehicles अपने मॉडल से खुलते हैं और यहाँ गिने नहीं जाते।
उदाहरण देखें
आपकी स्क्रिप्ट खिलाड़ी को कार इस्तेमाल करने देने से पहले चाबी जाँचता है।
if exports['Agency-Vehiclekeys']:HasKeys(GetVehicleNumberPlateText(vehicle)) then
-- the player may drive this car
endGetKeys()खिलाड़ी की सभी चाबियाँ { plate, kind } की सूची के रूप में। kind, owner, shared या temp होता है।
उदाहरण देखें
खिलाड़ी की हर चाबी की सूची दिखाता है, उदाहरण के लिए फ़ोन ऐप में।
for _, key in ipairs(exports['Agency-Vehiclekeys']:GetKeys()) do
print(key.plate, key.kind)
endToggleLock(vehicle)उस वाहन को लॉक या अनलॉक करता है जिसकी चाबी खिलाड़ी के पास है, G जैसे ही एनिमेशन और जाँच के साथ। वाहन में न होने पर, रेंज में सबसे नज़दीकी वाहन इस्तेमाल होता है।
उदाहरण देखें
आपके अपने radial menu से सबसे नज़दीकी कार को लॉक या अनलॉक करता है।
-- an entry in your radial menu
exports['Agency-Vehiclekeys']:ToggleLock()ToggleEngine()जिस वाहन को खिलाड़ी चला रहा है, उसका इंजन चालू या बंद करता है, U की तरह।
उदाहरण देखें
आपके अपने menu या कार HUD से इंजन चालू या बंद करता है।
exports['Agency-Vehiclekeys']:ToggleEngine()OpenMenu()चाबी का छल्ला खोलता है, उदाहरण के लिए radial menu या फ़ोन ऐप से।
उदाहरण देखें
आपके अपने radial menu या फ़ोन ऐप से की रिंग खोलता है।
-- an entry in your radial menu
exports['Agency-Vehiclekeys']:OpenMenu()CloseMenu()चाबी का छल्ला बंद करता है और माउस का नियंत्रण गेम को वापस देता है।
उदाहरण देखें
आपका अपना मेनू खुलने से पहले की रिंग बंद करता है।
exports['Agency-Vehiclekeys']:CloseMenu()IsMenuOpen()चाबी का छल्ला खुला होने पर True।
उदाहरण देखें
आपका मेनू की रिंग के ऊपर खुलने से रोकता है।
if not exports['Agency-Vehiclekeys']:IsMenuOpen() then
-- open your own menu
enduseLockpick()खिलाड़ी के सामने वाली कार पर lockpick करने की कोशिश शुरू करता है, या ड्राइवर सीट पर hotwiring शुरू करता है। ox_inventory आइटम के लिए बनाया गया है: client = { export = 'Agency-Vehiclekeys.useLockpick' }.
उदाहरण देखें
खिलाड़ियों को ox_inventory मेनू से लॉकपिक इस्तेमाल करने देता है।
-- ox_inventory/data/items.lua
['lockpick'] = {
label = 'Lockpick',
client = { export = 'Agency-Vehiclekeys.useLockpick' },
},सर्वर एक्सपोर्ट
GiveKeys(source, plate, mode, hours)चाबी देता है। mode 'temp' (डिफ़ॉल्ट) एक अस्थायी चाबी है, वैकल्पिक रूप से कुछ घंटों के लिए, और 'perm' एक सहेजी गई चाबी है। source या identifier, दोनों में से कोई भी काम करता है।
उदाहरण देखें
एक अस्थायी चाबी देता है, उदाहरण के लिए जब कोई कार किराए पर ली जाती है या किसी जॉब के ज़रिए स्पॉन की जाती है।
-- a rental that lasts two hours
exports['Agency-Vehiclekeys']:GiveKeys(source, plate, 'temp', 2)RemoveKeys(source, plate)shared या temporary चाबी वापस लेता है। चाबी मौजूद होने पर true लौटाता है।
उदाहरण देखें
किराया खत्म होने या जॉब पूरा होने पर चाबी वापस ले लेता है।
exports['Agency-Vehiclekeys']:RemoveKeys(source, plate)HasKeys(source, plate)True जब खिलाड़ी के पास इस plate की चाबी हो, जिसमें पास के वाहन की job keys भी शामिल हैं।
उदाहरण देखें
सर्वर पर जाँचता है कि खिलाड़ी के पास सच में चाबी है।
if not exports['Agency-Vehiclekeys']:HasKeys(source, plate) then
return -- no key, no delivery
endSetOwner(source, plate)खिलाड़ी को किसी plate का owner बनाता है, standalone सर्वर पर garages और shops के लिए। पिछला owner चाबी खो देता है।
उदाहरण देखें
स्टैंडअलोन सर्वर पर खरीदार को कार का मालिक बनाता है।
-- your standalone vehicle shop, after the purchase
exports['Agency-Vehiclekeys']:SetOwner(source, plate)RemoveOwner(plate)इस स्क्रिप्ट द्वारा किसी plate के लिए सहेजे गए owner को हटाता है।
उदाहरण देखें
कार बेचने या कबाड़ में डालने पर सेव किए गए मालिक को हटा देता है।
exports['Agency-Vehiclekeys']:RemoveOwner(plate)GetOwner(plate)owner का identifier और उसका स्रोत: QBCore, Qbox या ESX के स्वामित्व वाले वाहनों के लिए 'framework', और इस स्क्रिप्ट द्वारा सहेजे गए owners के लिए 'store'।
उदाहरण देखें
नंबर प्लेट के मालिक का पता लगाता है, पुलिस टूल या इंपाउंड स्क्रिप्ट के लिए।
local owner, from = exports['Agency-Vehiclekeys']:GetOwner(plate)
print(owner, from) -- identifier, 'framework' or 'store'GetKeyHolders(plate)प्लेट की चाबी रखने वाले बाकी सभी लोगों की सूची, { identifier, kind, name, expires } के रूप में।
उदाहरण देखें
कार की चाबी रखने वाले सभी लोगों को दिखाता है, उदाहरण के लिए पुलिस कंप्यूटर में।
for _, h in ipairs(exports['Agency-Vehiclekeys']:GetKeyHolders(plate)) do
print(h.name, h.kind)
endSetVehicleLocked(vehicle, locked)चाबी की जाँच किए बिना, सभी के लिए वाहन को लॉक या अनलॉक करता है। उन scripts के लिए जिन्हें कार खोलनी होती है।
उदाहरण देखें
बिना चाबी की जाँच के सभी के लिए कार खोलता या लॉक करता है।
-- a heist script opens the car for the crew
exports['Agency-Vehiclekeys']:SetVehicleLocked(vehicle, false)IsVehicleLocked(vehicle)वाहन लॉक होने पर True।
उदाहरण देखें
सर्वर पर लॉक की स्थिति पढ़ता है।
if exports['Agency-Vehiclekeys']:IsVehicleLocked(vehicle) then
-- the car is closed
endGetFramework()स्क्रिप्ट को मिला framework: qbcore, esx या standalone।
उदाहरण देखें
आपकी स्क्रिप्ट को की स्क्रिप्ट द्वारा खोजे गए फ्रेमवर्क का इस्तेमाल करने देता है।
if exports['Agency-Vehiclekeys']:GetFramework() == 'standalone' then
-- give the key yourself
endइवेंट
Agency:Keys:GiveServerप्लेट के लिए अस्थायी चाबी माँगता है, जैसा Agency Garage और Agency Vehicleshop करते हैं। इसे client से प्लेट के साथ ट्रिगर करें। कार खिलाड़ी के पास होनी चाहिए या उसकी होनी चाहिए।
उदाहरण देखें
खिलाड़ी के पास अभी-अभी स्पॉन की गई कार की चाबी माँगता है।
-- client side, after your garage spawned the car
TriggerServerEvent('Agency:Keys:GiveServer', GetVehicleNumberPlateText(vehicle))qb-vehiclekeys:server:AcquireVehicleKeysqb-vehiclekeys का key event, जिसे उसी तरह समझा जाता है, ताकि qb-vehiclekeys के लिए बने गैरेज और दुकानें काम करती रहें।
उदाहरण देखें
qb-vehiclekeys के लिए लिखी गई स्क्रिप्ट बिना बदलाव के काम करती रहती हैं।
TriggerServerEvent('qb-vehiclekeys:server:AcquireVehicleKeys', plate)vehiclekeys:client:SetOwnerकई गैरेज और दुकानें कार spawn करने के बाद यह client event चलाती हैं। सर्वर पर वही जाँच करने के बाद उस प्लेट के लिए अस्थायी चाबी मिलती है।
उदाहरण देखें
कई गैराज कार स्पॉन करने के बाद यह इवेंट चलाते हैं, जो खिलाड़ी को चाबी देता है।
TriggerEvent('vehiclekeys:client:SetOwner', plate)qb-vehiclekeys:client:AddKeysचाबियाँ देने के लिए qb-vehiclekeys का client event, जिसे उसी तरह समझा जाता है।
उदाहरण देखें
qb-vehiclekeys की तरह चाबी देता है।
TriggerEvent('qb-vehiclekeys:client:AddKeys', plate)simple_carkeys:client:toggleEngineचाबी से इंजन चालू या बंद करने पर client पर चलता है, ताकि Agency-Hud जैसे HUD इंजन की स्थिति दिखा सकें।
उदाहरण देखें
चाबी से इंजन चालू या बंद करने पर आपका HUD भी उसी के अनुसार बदलता है।
AddEventHandler('simple_carkeys:client:toggleEngine', function()
-- update the engine icon of your HUD
end)10Agency-Vending
खिलाड़ियों के मालिकाना हक वाली वेंडिंग मशीनें, नकद या AgencyPay कार्ड से भुगतान।
कार्ड से खरीदारी के लिए Agency-Phone के AgencyPay एक्सपोर्ट के साथ जोड़ें। उन जॉब्स में इस्तेमाल करें जहाँ खिलाड़ी वेंडिंग लोकेशन के मालिक हों (पेट्रोल पंप, दफ़्तर, अपार्टमेंट), ताकि बिना मेहनत की कमाई हो।
इवेंट
agency-vending:notifyवेंडिंग रिसोर्स के लिए सर्वर से चलने वाला सामान्य सूचना भेजने वाला।
उदाहरण देखें
खरीदारी के बाद खिलाड़ी को वेंडिंग थीम वाली सामान्य सूचना भेजता है।
-- Plug a vending receipt into a custom logger via notify event
TriggerClientEvent('agency-vending:notify', src, 'success', 'Receipt #4821 saved to wallet')agency-vending:startAgencyPayagency-phone इंटीग्रेशन के ज़रिए व्यापारी मेटाडेटा के साथ Agency Pay चेकआउट शुरू करता है।
उदाहरण देखें
कियोस्क के व्यापारी डेटा के साथ फ़ोन से Agency Pay चेकआउट शुरू करता है।
-- Pop a phone Agency Pay flow when a player taps a kiosk
TriggerClientEvent('agency-vending:startAgencyPay', src, { merchant = 'Sprunk Co', amount = 4.50, ref = 'flash_sale_01' })agency-vending:buyMachineResultमशीन खरीदने का नतीजा, फ़ीडबैक के लिए NUI को भेजा जाता है।
उदाहरण देखें
मशीन खरीद का नतीजा फ़ीडबैक के लिए कस्टम शॉप NUI को भेजता है।
-- Forward buy-machine outcome to a custom shop UI
TriggerClientEvent('agency-vending:buyMachineResult', src, { success = true, machineId = 102 })agency-vending:machineCreatedसबको बताता है कि खिलाड़ी की नई मशीन बनी है; लोकल कैश अपडेट करता है और मालिक को सूचित करता है।
उदाहरण देखें
खिलाड़ी की अभी बनी वेंडिंग मशीन की सूचना सभी क्लाइंट को भेजता है।
-- Cache new owner-machine instantly when business script registers it
TriggerClientEvent('agency-vending:machineCreated', -1, { id = 142, owner = identifier, type = 'sprunk' })agency-vending:openManagementVerifiedसर्वर से जाँच के बाद मालिक का मैनेजमेंट मेनू खोलता है, आइटम, कमाई और नाम के साथ।
उदाहरण देखें
पुष्टि के बाद आइटम, कमाई और नाम के साथ जाँचा हुआ मैनेजमेंट इंटरफ़ेस खोलता है।
-- After server-side ownership check open management menu with stock
TriggerClientEvent('agency-vending:openManagementVerified', src, { items = items, earnings = 1240, label = 'East LS Sprunk' })agency-vending:openOwnedListमालिक का ओवरव्यू NUI खोलता है, जिसमें खिलाड़ी की सभी मशीनें गली के नाम के साथ हैं।
उदाहरण देखें
खिलाड़ी की सभी वेंडिंग मशीनों वाला मालिक ओवरव्यू NUI खोलता है।
-- Hotkey opens the owner overview NUI listing all owned machines
TriggerClientEvent('agency-vending:openOwnedList', src)agency-vending:spawnMachineCreatedएडमिन स्पॉनर की सूचना कि नई मशीन एंटिटी बनाई गई है।
उदाहरण देखें
सभी क्लाइंट को बताता है कि एडमिन ने नई वेंडिंग मशीन एंटिटी बनाई है।
-- Custom mapping tool tracks newly admin-spawned machine
TriggerClientEvent('agency-vending:spawnMachineCreated', -1, { entity = netId, model = 'prop_vend_soda_01', id = 7 })agency-vending:spawnMachineDeletedएडमिन स्पॉनर की सूचना कि बनाई गई मशीन एंटिटी हटा दी गई है।
उदाहरण देखें
सभी क्लाइंट को बताता है कि एडमिन ने पहले बनाई गई वेंडिंग मशीन हटा दी है।
-- Mapping tool removes a deleted spawned machine from cache
TriggerClientEvent('agency-vending:spawnMachineDeleted', -1, 7)agency-vending:openSpawnerUIसर्वर पर अनुमति जाँच पास होने के बाद एडमिन स्पॉनर NUI खोलता है।
उदाहरण देखें
दुनिया में वेंडिंग मशीनें रखने के लिए एडमिन स्पॉनर NUI खोलता है।
-- Custom command opens the admin spawner UI after permission passes
TriggerClientEvent('agency-vending:openSpawnerUI', src)agency-vending:buyMachineखिलाड़ी दिए गए कोऑर्डिनेट और दिशा पर तय प्रकार की वेंडिंग मशीन खरीदता है।
उदाहरण देखें
खिलाड़ी NPC से अपनी मौजूदा जगह पर sprunk प्रकार की वेंडिंग मशीन खरीदता है।
-- Custom NPC sells vending machines via dialog
local coords = GetEntityCoords(PlayerPedId())
local heading = GetEntityHeading(PlayerPedId())
TriggerServerEvent('agency-vending:buyMachine', 'sprunk', coords, heading)agency-vending:requestOwnedListकॉल करने वाला मालिक ओवरव्यू के लिए अपनी मशीनों की सूची माँगता है।
उदाहरण देखें
सर्वर से खिलाड़ी की अपनी वेंडिंग मशीनों की सूची माँगता है।
-- Refresh owner overview after a balance/restock action elsewhere
TriggerServerEvent('agency-vending:requestOwnedList')agency-vending:requestMachinesकॉल करने वाला सर्वर से खिलाड़ियों की सभी मशीनों का पूरा सिंक माँगता है।
उदाहरण देखें
सर्वर से खिलाड़ियों की सभी वेंडिंग मशीनों का ताज़ा पूरा सिंक माँगता है।
-- Scan for nearby machines after teleport finished
TriggerServerEvent('agency-vending:requestMachines')agency-vending:requestManagementसर्वर से जाँच के बाद अपनी मशीन का मैनेजमेंट इंटरफ़ेस खोलता है।
उदाहरण देखें
क्लिक की गई अपनी वेंडिंग मशीन के लिए सर्वर से जाँचा हुआ मैनेजमेंट इंटरफ़ेस माँगता है।
-- Owner UI requests verified management menu for a clicked machine
TriggerServerEvent('agency-vending:requestManagement', machineId)agency-vending:requestSpawnedMachinesकॉल करने वाला स्पॉनर इंटरफ़ेस के लिए एडमिन की बनाई मशीनों की सूची माँगता है।
उदाहरण देखें
स्पॉनर इंटरफ़ेस के लिए एडमिन की बनाई सभी वेंडिंग मशीनों की सूची माँगता है।
-- Admin spawner UI fetches all currently spawned machines
TriggerServerEvent('agency-vending:requestSpawnedMachines')agency-vending:adminSpawnMachineअनुमति जाँच के बाद एडमिन सर्वर पर नई वेंडिंग मशीन प्रॉप रखता है।
उदाहरण देखें
अनुमति जाँच के बाद एडमिन स्नैक प्रकार की नई वेंडिंग मशीन प्रॉप बनाता है।
-- Admin places a snack machine via custom slash command
TriggerServerEvent('agency-vending:adminSpawnMachine', 'snack', vector3(120.5, -1280.7, 29.3), 90.0)agency-vending:adminDeleteSpawnedएडमिन सर्वर पर पहले रखी गई वेंडिंग मशीन प्रॉप हटाता है।
उदाहरण देखें
एडमिन सर्वर पर पहले बनाई गई वेंडिंग मशीन प्रॉप हटाता है।
-- Admin removes a misplaced machine via map editor button
TriggerServerEvent('agency-vending:adminDeleteSpawned', spawnedId)11Agency-Admin
ग्लास इंटरफ़ेस, AgencyAI चैट और 60 से ज़्यादा एडमिन टूल वाला पूरा एडमिन पैनल।
ये इवेंट एंटी-चीट, मॉडरेशन बॉट या ऑटोमैटिक कार्रवाई वाले टूल के लिए "बुनियादी हिस्सों" की तरह बढ़िया हैं, अपना इंटरफ़ेस लिखे बिना सर्वर स्क्रिप्ट से फ़्रीज़/किक/सूचना के लिए इन्हें कॉल करें।
इवेंट
agency-admin:client:refreshStaffRanksक्लाइंट से स्टाफ़ रैंक का डेटा दोबारा लाने को कहता है।
उदाहरण देखें
प्रमोशन के बाद हर ऑनलाइन एडमिन के लिए स्टाफ़ रैंक का कैश ताज़ा करता है।
-- After auto-promotion, refresh staff ranks for all online admins
for _, src in ipairs(GetPlayers()) do
TriggerClientEvent('agency-admin:client:refreshStaffRanks', tonumber(src))
endagency-admin:client:freezeTimeक्लाइंट पर दुनिया का समय तय घंटे/मिनट पर रोकता है या फिर चलाता है।
उदाहरण देखें
किसी खिलाड़ी की जाँच के दौरान एंटी-चीट दुनिया की घड़ी दोपहर पर रोक देता है।
-- Anti-cheat halts world time during an investigation
local hour, minute = 12, 0
TriggerClientEvent('agency-admin:client:freezeTime', src, true, hour, minute)agency-admin:client:dashboardValueडैशबोर्ड के एक कार्ड की वैल्यू (जैसे लाइव काउंटर) पैनल इंटरफ़ेस को भेजता है।
उदाहरण देखें
ऑनलाइन खिलाड़ियों की लाइव गिनती एडमिन डैशबोर्ड कार्ड पर भेजता है।
-- Stream live online player count to admin dashboard cards
local count = #GetPlayers()
TriggerClientEvent('agency-admin:client:dashboardValue', adminSrc, 'players_online', count)agency-admin:client:teleportToCoordsकॉल करने वाले को दिए गए वर्ल्ड कोऑर्डिनेट पर टेलीपोर्ट करता है।
उदाहरण देखें
रीस्पॉन इवेंट के बाद खिलाड़ी को सहेजे गए कोऑर्डिनेट पर टेलीपोर्ट करता है।
-- Job script teleports a player back to last save point on respawn
local coords = vector3(-1037.7, -2737.6, 20.16)
TriggerClientEvent('agency-admin:client:teleportToCoords', src, coords)agency-admin:client:announceबताए गए भेजने वाले की ओर से पूरे सर्वर पर घोषणा बैनर दिखाता है।
उदाहरण देखें
नाम वाले सिस्टम प्रेषक की ओर से पूरे सर्वर पर घोषणा बैनर दिखाता है।
-- Event bot announces a community contest start
TriggerClientEvent('agency-admin:client:announce', -1, 'Event Crew', 'Heist contest starts in 5 minutes!')agency-admin:client:notifyसर्वर से आने वाली सूचना, जिसमें शीर्षक, टेक्स्ट, प्रकार और अवधि है।
उदाहरण देखें
आवेदन मंज़ूर होने पर खिलाड़ी को स्टाइल वाली सूचना भेजता है।
-- Whitelist bot informs a player they passed the application
TriggerClientEvent('agency-admin:client:notify', src, 'Whitelist', 'Application approved!', 'success', 8000)agency-admin:client:freezeलोकल खिलाड़ी के पेड को रोकता है या फिर चलाता है।
उदाहरण देखें
संदिग्ध खिलाड़ी को रोक देता है ताकि स्टाफ़ उसके हिले बिना जाँच कर सके।
-- Anti-cheat freezes a suspect player while staff investigates
TriggerClientEvent('agency-admin:client:freeze', suspectSrc, true)agency-admin:client:healलोकल खिलाड़ी के पेड को पूरी तरह ठीक करता है।
उदाहरण देखें
RP इलाज पूरा होने के बाद मरीज़ को पूरी तरह ठीक करता है।
-- Medic job script fully heals the player after RP treatment ends
TriggerClientEvent('agency-admin:client:heal', patientSrc)agency-admin:client:reviveलोकल खिलाड़ी के पेड को फिर से ज़िंदा करता है।
उदाहरण देखें
EMS मिनीगेम सफलता से पूरा होने के बाद गिरे हुए खिलाड़ी को फिर से ज़िंदा करता है।
-- EMS revive minigame succeeds, server marks player alive again
TriggerClientEvent('agency-admin:client:revive', downedSrc)agency-admin:client:teleportलोकल खिलाड़ी को दिए गए कोऑर्डिनेट वेक्टर पर टेलीपोर्ट करता है।
उदाहरण देखें
लोकल खिलाड़ी को दिए गए कोऑर्डिनेट वेक्टर पर टेलीपोर्ट करता है।
-- Tutorial system teleports new player to spawn pad on first join
local coords = vector3(245.7, -871.5, 30.5)
TriggerClientEvent('agency-admin:client:teleport', src, coords)agency-admin:client:openMenuसर्वर से चलने वाला ट्रिगर, जो मुख्य एडमिन पैनल खोलता है।
उदाहरण देखें
स्टाफ़ सदस्य के ड्यूटी पर आने पर मुख्य एडमिन पैनल खोलता है।
-- Auto-open admin panel for staff right after they switch on duty
TriggerClientEvent('agency-admin:client:openMenu', src)agency-admin:client:openToolsMenuसर्वर से चलने वाला ट्रिगर, जो एडमिन टूल्स का सब-मेनू खोलता है।
उदाहरण देखें
स्टाफ़ हॉटकी दबाने पर एडमिन टूल्स का सब-मेनू खोलता है।
-- Quick-action keybind opens the admin tools sub-menu
TriggerClientEvent('agency-admin:client:openToolsMenu', src)agency-admin:client:closeMenuसर्वर से चलने वाला ट्रिगर, जो एडमिन पैनल बंद करता है।
उदाहरण देखें
एडमिन की जाँच चल रही हो तो एडमिन पैनल को ज़बरदस्ती बंद करता है।
-- Force-close the panel when admin gets reported themselves
TriggerClientEvent('agency-admin:client:closeMenu', adminSrc)agency-admin:client:openClothingMenuसर्वर से चलने वाला ट्रिगर, जो खिलाड़ी के लिए गेम का कपड़ों वाला मेनू खोलता है।
उदाहरण देखें
खिलाड़ी के दर्ज़ी से पोशाक खरीदने के बाद कपड़ों का मेनू खोलता है।
-- Tailor NPC opens clothing menu after a uniform purchase
TriggerClientEvent('agency-admin:client:openClothingMenu', src)agency-admin:server:requestPlayersएडमिन पैनल के लिए अभी ऑनलाइन खिलाड़ियों की सूची माँगता है।
उदाहरण देखें
पैनल के लिए सर्वर से ऑनलाइन खिलाड़ियों की नई सूची माँगता है।
-- Custom dashboard widget refreshes its players list
TriggerServerEvent('agency-admin:server:requestPlayers')agency-admin:server:requestPanelPermissionsरैंक एडिटर के लिए पैनल की अनुमति टेबल माँगता है।
उदाहरण देखें
रैंक एडिटर के लिए सर्वर से पैनल की अनुमति टेबल माँगता है।
-- Permission editor needs the latest panel permission map
TriggerServerEvent('agency-admin:server:requestPanelPermissions')agency-admin:server:requestStaffRanksपैनल के लिए स्टाफ़ रैंक का डेटा माँगता है।
उदाहरण देखें
कस्टम CRM विजेट में इस्तेमाल के लिए स्टाफ़ रैंक का पूरा डेटा माँगता है।
-- Sync staff ranks dataset into a custom CRM widget
TriggerServerEvent('agency-admin:server:requestStaffRanks')agency-admin:server:createRankमेटाडेटा और अनुमतियों के साथ नई स्टाफ़ रैंक बनाता है।
उदाहरण देखें
बाहरी HR पोर्टल सिंक से नई स्टाफ़ रैंक बनाता है।
-- Sync rank from external HR portal -> create matching staff rank
TriggerServerEvent('agency-admin:server:createRank', { name = 'Senior Mod', color = '#a855f7', priority = 50 })agency-admin:server:requestMyPermissionsकॉल करने वाला पैनल में अपनी तय अनुमतियों का सेट माँगता है।
उदाहरण देखें
इंटरफ़ेस खुलते ही कॉल करने वाले की तय पैनल अनुमतियाँ माँगता है।
-- Fetch caller's resolved permission set before showing dev tools
TriggerServerEvent('agency-admin:server:requestMyPermissions')agency-admin:server:requestSyncकॉल करने वाला सर्वर से सामान्य सिंक डेटा भेजने को कहता है (ड्यूटी, अनुमतियाँ आदि)।
उदाहरण देखें
सर्वर को कॉल करने वाले को ड्यूटी/अनुमतियों का सामान्य सिंक डेटा भेजने पर मजबूर करता है।
-- Force a fresh sync after the player reconnects
TriggerServerEvent('agency-admin:server:requestSync')agency-admin:server:requestDutyRankकॉल करने वाला एडमिन ड्यूटी में अपनी मौजूदा रैंक की जानकारी माँगता है।
उदाहरण देखें
कस्टम HUD ओवरले के लिए कॉल करने वाले की मौजूदा एडमिन ड्यूटी रैंक माँगता है।
-- Display admin's duty rank on a custom HUD overlay
TriggerServerEvent('agency-admin:server:requestDutyRank')agency-admin:server:requestSpawnedObjectsकॉल करने वाला एडमिन द्वारा दुनिया में रखी चीज़ों की सूची माँगता है।
उदाहरण देखें
मिनीमैप ओवरले के लिए एडमिन द्वारा दुनिया में रखी चीज़ों की सूची माँगता है।
-- Map editor needs to draw all admin-spawned objects on a minimap
TriggerServerEvent('agency-admin:server:requestSpawnedObjects')12Agency-Anticheat
FiveM के लिए एक एंटीचीट जो आपके सर्वर को धीरे-धीरे समझ लेता है। यह हर खिलाड़ी की जांच सर्वर साइड पर करता है, जहां चीट छिप नहीं सकता: godmode, सुपर जंप, डैमेज मल्टीप्लायर, टेलीपोर्ट और प्रतिबंधित हथियार सिंक की गई गेम स्थिति से पढ़े जाते हैं। क्रॉस-चेक वह पकड़ लेते हैं जो अलग-अलग मान चूक जाते हैं: ऐसा घातक वार जिससे पीड़ित बच जाए, 500 मीटर दूर से पिस्तौल से किल, निशाने की सांख्यिकी, और कई कमजोर संकेत जो मिलकर एक पैटर्न बन जाते हैं। वर्ल्ड प्रोटेक्शन स्पॉन किए गए टैंक, विस्फोट, आग और पार्टिकल स्पैम को किसी के देखने से पहले ही रद्द कर देता है। बैन आइडेंटिफायर और हार्डवेयर टोकन दोनों को कवर करते हैं, इसलिए उसी पीसी पर नया अकाउंट बाहर ही रहता है, और कई चीटर एक साथ हमला करें तो लॉकडाउन सर्वर को अपने आप बंद कर देता है। नई इंस्टॉलेशन 48 घंटे Learning मोड में चलती है और किसी को सज़ा नहीं देती। इसका अपना इन-गेम पैनल (/acpanel) सब कुछ लाइव दिखाता है और हर कार्रवाई करता है, किसी भी सर्वर पर। Agency Admin के साथ इसके एडमिन अपने आप छूट पाते हैं और वही पेज उस पैनल के अंदर भी मिलता है; AgencyMod के साथ बैन आपके Discord तक भी पहुंचते हैं। न डेटाबेस, न सब्सक्रिप्शन, 25 भाषाएं, QBCore, Qbox, ESX या स्टैंडअलोन।
सर्वर एक्सपोर्ट
AllowTeleport(source: number, seconds?: number)अपनी स्क्रिप्ट के किसी खिलाड़ी को हिलाने से ठीक पहले इसे कॉल करें, तब यह छलांग टेलीपोर्ट नहीं गिनी जाएगी। डिफ़ॉल्ट 5 सेकंड।
SetExempt(source: number, seconds: number)किसी खिलाड़ी को कुछ समय के लिए सभी जाँचों से छूट देता है, जैसे Godmode वाले इवेंट के दौरान। 0 इसे खत्म करता है।
Flag(source: number, detail: string)आपकी अपनी डिटेक्शन। यह किसी भी अन्य हिट की तरह गिनी जाती है, डिटेक्शन external के तहत।
BanPlayer(source: number, reason: string, duration?: number, by?: string)ऑनलाइन खिलाड़ी को आइडेंटिफ़ायर और हार्डवेयर टोकन से बैन करता है। अवधि सेकंड में, 0 स्थायी है। बैन ID लौटाता है।
KickPlayer(source: number, reason: string, by?: string)किसी खिलाड़ी को किक करता है और Discord में लॉग करता है।
Unban(banId: string, by?: string)बैन हटाता है, जैसे AC-7K3P9।
SetMode(mode: string)मोड को लाइव बदलता है: learning, relaxed, balanced या strict।
SetDetection(key: string, enabled: boolean)एक डिटेक्शन को लाइव चालू या बंद करता है।
SetLockdown(on: boolean, by?: string)लॉकडाउन शुरू या खत्म करता है।
IsExempt(source: number)लौटाता है कि कोई खिलाड़ी जाँचों से छूट प्राप्त है या नहीं।
IsKnownPlayer(source: number)लौटाता है कि कोई खिलाड़ी यहाँ बिना हिट के इतना लंबा खेला है कि उसे जाना-पहचाना माना जाए।
GetStatus()पैनल जो कुछ दिखाता है वह सब लौटाता है: मोड, लेयर, ज्ञान, आज के आँकड़े, सर्वर लोड और हर डिटेक्शन उसके नियम के साथ।
GetDetections(limit?: number)नवीनतम डिटेक्शन लौटाता है, सबसे नई पहले।
GetBans()हर सक्रिय बैन को उसके सबूत के साथ लौटाता है।
GetPlayers()ऑनलाइन खिलाड़ियों को रिस्क स्कोर और खुले स्ट्राइक के साथ लौटाता है, सबसे ज़्यादा जोखिम पहले।
इवेंट
Agency-Anticheat:detectionहर हिट पर चलता है, खिलाड़ी, डिटेक्शन, विवरण, कार्रवाई और स्ट्राइक के साथ।
Agency-Anticheat:bannedहर बैन के बाद चलता है, पूरे बैन रिकॉर्ड के साथ।
Agency-Anticheat:unbannedबैन हटाए जाने के बाद चलता है।
Agency-Anticheat:lockdownलॉकडाउन शुरू या खत्म होने पर चलता है।
Agency-Anticheat:learnedजब एंटीचीट आपके सर्वर का नया टेलीपोर्ट पॉइंट सीखता है तब चलता है।
13Agency-Reports V2
हर रिपोर्ट के लिए लाइव चैट और AI की मदद से जवाब देने वाला आधुनिक रिपोर्ट सिस्टम।
पूरे सर्वर के लिए "सपोर्ट टिकट" की रीढ़ की तरह इस्तेमाल करें। कुछ गड़बड़ होने पर (अटके वाहन, डुप्लिकेट आइटम, फ़ेल SQL सेव) आपकी कस्टम स्क्रिप्ट एडमिन की समीक्षा के लिए अपने आप रिपोर्ट खोल सकती हैं।
इवेंट
agency-reports:client:notifyसर्वर से आने वाली सूचना, जो खिलाड़ी की सूचना पसंद का ध्यान रखती है।
उदाहरण देखें
सर्वर से आने वाली सूचना, जो खिलाड़ी की सूचना पसंद का ध्यान रखती है।
-- Server tells client a new admin reply landed
TriggerClientEvent('agency-reports:client:notify', source, 'New reply on your report', 'info')agency-reports:client:openPlayerUIOpens the player report UI with categories, open/recent reports and Discord settings.
उदाहरण देखें
कैटेगरी, खुली/हाल की रिपोर्ट और AI/Discord सेटिंग्स के साथ खिलाड़ी का रिपोर्ट इंटरफ़ेस खोलता है।
-- Open the player report UI on a custom keybind
local categories = { 'Bug', 'Player report', 'Stuck' }
TriggerEvent('agency-reports:client:openPlayerUI', categories, {}, {}, {})agency-reports:client:openAdminUIएडमिन रिपोर्ट डैशबोर्ड खोलता है, पूरे रिपोर्ट डेटा के साथ।
उदाहरण देखें
पूरे रिपोर्ट डेटा के साथ एडमिन रिपोर्ट डैशबोर्ड खोलता है।
-- Force-open the admin reports dashboard from a staff command
TriggerEvent('agency-reports:client:openAdminUI', { reports = {}, total = 0 })agency-reports:client:teleportकॉल करने वाले एडमिन को दिए गए कोऑर्डिनेट पर टेलीपोर्ट करता है (goto के लिए)।
उदाहरण देखें
goto के लिए कॉल करने वाले एडमिन को दिए गए कोऑर्डिनेट पर टेलीपोर्ट करता है।
-- Goto-action: teleport the responding admin to the report scene
TriggerEvent('agency-reports:client:teleport', vector3(-247.6, -2010.2, 30.1))agency-reports:client:healSelfकॉल करने वाले एडमिन के पेड को पूरी तरह ठीक करता है।
उदाहरण देखें
रिपोर्ट का जवाब देने के बाद कॉल करने वाले एडमिन के पेड को पूरी तरह ठीक करता है।
-- Heal admin after a hostile scene to keep them in service
TriggerEvent('agency-reports:client:healSelf')agency-reports:server:submitReportखिलाड़ी नई रिपोर्ट भेजता है (शीर्षक/कैटेगरी/विवरण), जो agency_reports डेटाबेस में जुड़ती है।
उदाहरण देखें
खिलाड़ी शीर्षक, कैटेगरी और विवरण के साथ नई रिपोर्ट डेटाबेस में भेजता है।
-- Player submits a quick stuck-at-pier report
TriggerServerEvent('agency-reports:server:submitReport', 'Stuck at pier', 'Stuck', 'Vehicle wedged under pier - cant move')agency-reports:server:requestPlayerDataकॉल करने वाला अपना रिपोर्ट डेटा माँगता है; चाहें तो जवाब आने पर खिलाड़ी इंटरफ़ेस खुलता है।
उदाहरण देखें
कॉल करने वाला अपना रिपोर्ट डेटा माँगता है, चाहें तो जवाब आने पर खिलाड़ी इंटरफ़ेस खुलता है।
-- Pull fresh data and (optionally) auto-open the player UI
TriggerServerEvent('agency-reports:server:requestPlayerData', true)agency-reports:server:requestAdminDataएडमिन पूरा रिपोर्ट डेटा माँगता है और अनुमति हो तो एडमिन डैशबोर्ड खोलता है।
उदाहरण देखें
एडमिन पूरा रिपोर्ट डेटा माँगता है और अनुमति हो तो एडमिन डैशबोर्ड खोलता है।
-- Admin staff opens the dashboard after going on duty
TriggerServerEvent('agency-reports:server:requestAdminData')agency-reports:server:sendChatMessageकिसी खास रिपोर्ट की बातचीत में चैट संदेश भेजता है (एडमिन या खिलाड़ी)।
उदाहरण देखें
एडमिन या खिलाड़ी के लिए किसी खास रिपोर्ट की बातचीत में चैट संदेश पोस्ट करता है।
-- Player posts a follow-up chat message into report #42
TriggerServerEvent('agency-reports:server:sendChatMessage', 42, 'Still stuck, any ETA?')14Agency-Doorlock
लॉक होने वाले दरवाज़े, गेम के अंदर सेटअप और हर दरवाज़े के लिए जॉब, गैंग या खिलाड़ी के हिसाब से पहुँच।
हाउसिंग, प्रॉपर्टी या चाबी स्क्रिप्ट के लिए: किसी खिलाड़ी को एक खास दरवाज़े की चाबी दें और वापस लें। चाबियाँ डेटाबेस में सहेजी जाती हैं और तुरंत सिंक होती हैं, किसी को एडमिन अधिकार नहीं चाहिए।
क्लाइंट एक्सपोर्ट
ToggleNearestDoor()Locks or unlocks the door the player is standing at. The server checks access exactly like the E key.
उदाहरण देखें
अपनी एक कुंजी (L) जोड़ता है जो खिलाड़ी के पास वाले दरवाज़े को लॉक या अनलॉक करती है। अनुमति की जाँच सर्वर पर ही होती है।
RegisterCommand('lockdoor', function()
-- same as pressing E at the door; the server still checks access
exports['Agency-Doorlock']:ToggleNearestDoor()
end)
RegisterKeyMapping('lockdoor', 'Lock / unlock door', 'keyboard', 'L')GetNearbyDoorId()Returns the id of the door the player is standing at, or nil.
उदाहरण देखें
पढ़ता है कि खिलाड़ी किस दरवाज़े के पास है, जैसे अपनी स्क्रिप्ट में उसे किसी घर से जोड़ने के लिए।
local doorId = exports['Agency-Doorlock']:GetNearbyDoorId()
if doorId then
-- e.g. let the house owner pick this door when setting up keys
TriggerServerEvent('myhousing:server:linkDoor', doorId)
endGetAllDoors()Returns every door as { id, label, locked, static, leaves, access }. The PIN is never included.
उदाहरण देखें
हर दरवाज़े को उसके नंबर और लॉक की स्थिति के साथ दिखाता है। PIN कभी डेटा में नहीं होता।
for _, door in ipairs(exports['Agency-Doorlock']:GetAllDoors()) do
print(('#%d %s - %s'):format(door.id, door.label, door.locked and 'locked' or 'open'))
endGetDoorCoords(doorId: number)Returns the position of the first door leaf as { x, y, z }, or nil.
उदाहरण देखें
किसी दरवाज़े तक GPS वेपॉइंट लगाता है, जैसे खिलाड़ी को उसके नए घर तक ले जाने के लिए।
local c = exports['Agency-Doorlock']:GetDoorCoords(doorId)
if c then
SetNewWaypoint(c.x, c.y)
endसर्वर एक्सपोर्ट
AddPlayerAccess(doorId: number, player: number|string)Gives one player access to one door. Saved to the database and synced to every player at once. Returns true, or false plus a reason. true, "unchanged" if the player already had access.
उदाहरण देखें
घर का मालिक किसी दूसरे खिलाड़ी को चाबी देता है। आपकी स्क्रिप्ट मालिकाना हक़ जाँचती है, Agency-Doorlock चाबी सहेजता है और तुरंत सिंक करता है। किसी को एडमिन अधिकार नहीं मिलते।
RegisterNetEvent('myhousing:server:giveKey', function(targetId, houseId)
local src = source
if not IsHouseOwner(src, houseId) then return end -- your own check
local doorId = GetHouseDoorId(houseId) -- id from /adoorlock
local ok, reason = exports['Agency-Doorlock']:AddPlayerAccess(doorId, tonumber(targetId))
if not ok then
print(('Key not given: %s'):format(reason))
end
end)RemovePlayerAccess(doorId: number, player: number|string)Takes the access away again. Saved and synced at once. Returns true, or false plus a reason. true, "unchanged" if there was nothing to remove.
उदाहरण देखें
चाबी वापस लेता है, जैसे जब कोई किरायेदार घर छोड़ दे। citizenid के साथ यह खिलाड़ी के ऑफ़लाइन होने पर भी काम करता है।
-- works while the player is offline: pass the citizenid
local ok, reason = exports['Agency-Doorlock']:RemovePlayerAccess(doorId, 'ABC12345')HasPlayerAccess(doorId: number, player: number|string)true if the player is on the door's player list. Job, gang and "everyone" access are not counted.
उदाहरण देखें
जाँचता है कि खिलाड़ी के पास इस दरवाज़े की अपनी चाबी है या नहीं। जॉब, गैंग या "everyone" वाली पहुँच नहीं गिनी जाती।
if exports['Agency-Doorlock']:HasPlayerAccess(doorId, source) then
TriggerClientEvent('myhousing:client:showKeyMenu', source, doorId)
endGetPlayerAccess(doorId: number)Returns a copy of the door's player list, or nil if the door does not exist.
उदाहरण देखें
किसी दरवाज़े की चाबी रखने वाले सभी लोगों की सूची देता है, जैसे "चाबियाँ प्रबंधित करें" मेनू के लिए। यह एक कॉपी लौटाता है, उसे बदलने से कुछ नहीं होता।
for _, citizenid in ipairs(exports['Agency-Doorlock']:GetPlayerAccess(doorId) or {}) do
print('Key holder: ' .. citizenid)
endIsReady()false while the doors are still loading from the database after a start, true afterwards.
उदाहरण देखें
सर्वर शुरू होने के बाद दरवाज़े लोड होने तक इंतज़ार करता है, फिर आपकी स्क्रिप्ट चाबियाँ देती है।
CreateThread(function()
while not exports['Agency-Doorlock']:IsReady() do Wait(500) end
-- doors are loaded, safe to grant keys from your own database now
end)इवेंट
agency-doorlock:accessChangedFired on the server after AddPlayerAccess or RemovePlayerAccess changed a door. Arguments: doorId, identifier, granted (true / false). Listen with AddEventHandler.
उदाहरण देखें
सर्वर पर हर दी गई या वापस ली गई चाबी का रिकॉर्ड, जैसे Discord webhook के लिए।
AddEventHandler('agency-doorlock:accessChanged', function(doorId, identifier, granted)
print(('Door #%d: %s %s'):format(doorId, identifier, granted and 'got a key' or 'lost their key'))
end)15Agency-Hud
वाहन डैशबोर्ड, स्टेटस बार, स्पीडोमीटर और सीटबेल्ट इंटीग्रेशन वाला एनिमेटेड HUD।
अगर आपकी अपनी इकॉनमी या ज़रूरतों वाला सिस्टम है, तो उसके आसपास जुगाड़ करने की जगह इन सेटर से अपनी स्क्रिप्ट से HUD चलाएँ। एनिमेशन और सहेजना HUD खुद संभालता है।
क्लाइंट एक्सपोर्ट
GetVehicleSettings()लोकल वाहन HUD की सेटिंग्स टेबल लौटाता है (स्टाइल, पोज़िशन, स्केल, इकाइयाँ, टॉगल)।
उदाहरण देखें
जाँच या सिंक के लिए लोकल वाहन HUD की सेटिंग्स टेबल पढ़ता है।
local settings = exports['Agency-Hud']:GetVehicleSettings()
print('Speed unit:', settings.speedUnit)
print('HUD scale:', settings.scale)SetSpeedUnit(unit: string)वाहन की स्पीड इकाई ('kmh' या 'mph') सेट करता है और लोकल रूप से सहेजता है।
उदाहरण देखें
वाहन स्पीडोमीटर को मील प्रति घंटा पर बदलता है और लोकल रूप से सहेजता है।
RegisterCommand('usemph', function()
exports['Agency-Hud']:SetSpeedUnit('mph')
end)SetHunger(value: number)HUD में दिखने वाली भूख की वैल्यू अपडेट करता है।
उदाहरण देखें
खिलाड़ी की मौजूदा भूख का स्तर HUD में भेजता है।
AddEventHandler('player:hungerChanged', function(value)
exports['Agency-Hud']:SetHunger(value)
end)SetThirst(value: number)HUD में दिखने वाली प्यास की वैल्यू अपडेट करता है।
उदाहरण देखें
खिलाड़ी की मौजूदा प्यास का स्तर HUD में भेजता है।
AddEventHandler('player:thirstChanged', function(value)
exports['Agency-Hud']:SetThirst(value)
end)SetStress(value: number)HUD में दिखने वाली तनाव की वैल्यू अपडेट करता है।
उदाहरण देखें
कस्टम तनाव सिस्टम से HUD का तनाव मीटर अपडेट करता है।
AddEventHandler('jobstress:onTick', function(stress)
exports['Agency-Hud']:SetStress(stress)
end)SetMoney(value: number)HUD में दिखने वाली नकद राशि अपडेट करता है।
उदाहरण देखें
HUD के वॉलेट पैनल पर दिखने वाली नकद राशि अपडेट करता है।
AddEventHandler('wallet:cashChanged', function(cash)
exports['Agency-Hud']:SetMoney(cash)
end)SetBank(value: number)HUD में दिखने वाली बैंक राशि अपडेट करता है।
उदाहरण देखें
HUD में दिखने वाला बैंक बैलेंस अपडेट करता है।
AddEventHandler('bank:balanceChanged', function(balance)
exports['Agency-Hud']:SetBank(balance)
end)SetJob(label: string)HUD में दिखने वाला जॉब का नाम सेट करता है।
उदाहरण देखें
खिलाड़ी के पेशा बदलने के बाद दिखने वाला जॉब का नाम सेट करता है।
AddEventHandler('job:onChange', function(job)
exports['Agency-Hud']:SetJob(job.label)
end)SetRank(rank: string)HUD में दिखने वाली खिलाड़ी की रैंक सेट करता है।
उदाहरण देखें
जॉब के नाम के बगल में दिखने वाली खिलाड़ी की रैंक अपडेट करता है।
AddEventHandler('job:onGradeChange', function(grade)
exports['Agency-Hud']:SetRank(grade.label)
end)GetDetectedFramework()अपने आप पहचाने गए फ़्रेमवर्क की key लौटाता है (qb, esx, qbox, ox, nd, standalone)।
उदाहरण देखें
कस्टम HUD लॉजिक को अलग-अलग रास्ते देने के लिए पहचाने गए फ़्रेमवर्क की key पढ़ता है।
local fw = exports['Agency-Hud']:GetDetectedFramework()
if fw == 'qb' then
print('QB-Core detected')
endइवेंट
Agency-HUD:client:applyVehicleSettingsPatchलोकल वाहन HUD पर वाहन सेटिंग्स का आंशिक बदलाव लागू करता है।
उदाहरण देखें
लोकल क्लाइंट पर वाहन HUD सेटिंग्स का आंशिक बदलाव लागू करता है।
TriggerEvent('Agency-HUD:client:applyVehicleSettingsPatch', {
style = 'modern',
speedUnit = 'kmh'
})Agency-HUD:client:openAdminMenuप्राप्त करने वाले खिलाड़ी के लिए एडमिन मेनू NUI खोलता है।
उदाहरण देखें
प्राप्त करने वाले क्लाइंट पर एडमिन HUD मेनू NUI खोलता है।
TriggerEvent('Agency-HUD:client:openAdminMenu')Agency-HUD:server:checkAdminPermissionकॉल करने वाले के एडमिन अधिकार जाँचता है और सफल होने पर एडमिन मेनू खोलता है।
उदाहरण देखें
सर्वर से एडमिन अधिकार जाँचने और HUD एडमिन मेनू खोलने को कहता है।
RegisterCommand('checkhudadmin', function()
TriggerServerEvent('Agency-HUD:server:checkAdminPermission')
end)Agency-HUD:server:saveGlobalSettingsसिर्फ़ एडमिन के लिए ग्लोबल HUD सेटिंग्स सहेजता है; सिंक सबको भेजता है।
उदाहरण देखें
नई ग्लोबल HUD कॉन्फ़िगरेशन सहेजता है (सिर्फ़ एडमिन) और सबको भेजता है।
TriggerServerEvent('Agency-HUD:server:saveGlobalSettings', {
style = 'modern',
accent = '#ff6b00'
})Agency-HUD:server:requestGlobalSettingsमाँगने वाले क्लाइंट को मौजूदा ग्लोबल सेटिंग्स लौटाता है।
उदाहरण देखें
रिसोर्स शुरू होने पर मौजूदा ग्लोबल HUD सेटिंग्स माँगता है।
AddEventHandler('onClientResourceStart', function(res)
if res == GetCurrentResourceName() then
TriggerServerEvent('Agency-HUD:server:requestGlobalSettings')
end
end)Agency-HUD:server:requestTimeHUD घड़ी के लिए कॉल करने वाले को सर्वर का मौजूदा समय लौटाता है।
उदाहरण देखें
HUD में समय ताज़ा करने के लिए हर मिनट सर्वर की घड़ी पूछता है।
CreateThread(function()
while true do
TriggerServerEvent('Agency-HUD:server:requestTime')
Wait(60000)
end
end)16Agency-Progressbar V2
ग्लास इंटरफ़ेस, 4 थीम, रद्द हो सकने वाले एक्शन और क्लाइंट/सर्वर एक्सपोर्ट वाला एनिमेटेड प्रोग्रेस बार।
जहाँ भी आप आम तौर पर "X काम Y सेकंड तक" दिखाते हैं, वहाँ इस्तेमाल करें। कई पुराने प्रोग्रेस बार रिसोर्स की जगह पूरे सर्वर पर एक जैसा इंटरफ़ेस देता है।
क्लाइंट एक्सपोर्ट
StartProgress(data: table)लेबल, अवधि, थीम, एनिमेशन और onFinish/onCancel कॉलबैक के साथ प्रोग्रेस बार शुरू करता है।
उदाहरण देखें
एनिमेशन और पूरा होने पर कॉलबैक के साथ 8 सेकंड का ताला खोलने वाला प्रोग्रेस शुरू करता है।
exports['Agency-Progressbar']:StartProgress({
label = 'Picking lock...',
duration = 8000,
animation = { dict = 'anim@heists@fleeca_bank@drilling', clip = 'drill_straight_idle' },
onFinish = function() TriggerServerEvent('garage:lockpicked', vehNet) end,
onCancel = function() print('Lockpick cancelled') end
})StopProgress(completed: boolean)चल रहा प्रोग्रेस बार रोकता है; पूरा होने की स्थिति onFinish को देता है।
उदाहरण देखें
खिलाड़ी के X दबाने पर चल रहा प्रोग्रेस बार रद्द करता है।
if IsControlJustPressed(0, 73) then
exports['Agency-Progressbar']:StopProgress(false)
endIsProgressActive()बताता है कि अभी कोई प्रोग्रेस बार चल रहा है या नहीं।
उदाहरण देखें
प्रोग्रेस बार चलते समय नया क्राफ़्टिंग काम शुरू होने से रोकता है।
if exports['Agency-Progressbar']:IsProgressActive() then
return
end
startCrafting()GetProgressPercentage()चल रहे बार का 0-100 में मौजूदा पूरा होने का प्रतिशत लौटाता है।
उदाहरण देखें
प्रोग्रेस बार 75 प्रतिशत से ज़्यादा होने पर मिनीगेम का एक कदम चलाता है।
CreateThread(function()
while exports['Agency-Progressbar']:IsProgressActive() do
local pct = exports['Agency-Progressbar']:GetProgressPercentage()
if pct > 75 then SendMinigameTick() end
Wait(100)
end
end)SetProgressTheme(theme: string)चल रहे प्रोग्रेस बार की थीम बदलता है (जैसे 'modern')।
उदाहरण देखें
चल रहे प्रोग्रेस बार का लुक मॉडर्न थीम पर बदलता है।
RegisterCommand('darkbar', function()
exports['Agency-Progressbar']:SetProgressTheme('modern')
end)SetProgressPosition(position: string)स्क्रीन पर चल रहे प्रोग्रेस बार की जगह बदलता है।
उदाहरण देखें
चल रहे प्रोग्रेस बार को स्क्रीन के नीचे बीच में ले जाता है।
RegisterCommand('barbottom', function()
exports['Agency-Progressbar']:SetProgressPosition('bottom-center')
end)TryReload(usedItem?: string)सुरक्षित हथियार रीलोड शुरू करता है (गोली का प्रकार और आइटम सर्वर पर जाँचे जाते हैं)।
उदाहरण देखें
9mm गोलियों के डिब्बे वाले आइटम से सर्वर द्वारा जाँचा गया रीलोड शुरू करता है।
RegisterKeyMapping('+reload', 'Reload weapon', 'keyboard', 'R')
RegisterCommand('+reload', function()
exports['Agency-Progressbar']:TryReload('ammo-9')
end)UseConsumable(itemName: string, isDrink: boolean)बताए गए आइटम के लिए खाने/पीने की प्रोग्रेस एनिमेशन के साथ चलाता है।
उदाहरण देखें
पानी इस्तेमाल करने पर पीने का एनिमेशन चलाता है और प्यास की बढ़त लागू करता है।
RegisterNetEvent('inventory:useItem', function(item)
if item == 'water_bottle' then
exports['Agency-Progressbar']:UseConsumable('water_bottle', true)
end
end)सर्वर एक्सपोर्ट
StartProgressForPlayer(playerId: number, data: table)सर्वर से किसी खास खिलाड़ी पर प्रोग्रेस बार शुरू करता है।
उदाहरण देखें
माँगने वाले खिलाड़ी पर 5 सेकंड का क्रेट उठाने वाला प्रोग्रेस बार शुरू करता है।
RegisterCommand('lift', function(source)
exports['Agency-Progressbar']:StartProgressForPlayer(source, {
label = 'Lifting crate...',
duration = 5000
})
end, false)StopProgressForPlayer(playerId: number, completed?: boolean)किसी खास खिलाड़ी का चल रहा प्रोग्रेस बार रोकता है।
उदाहरण देखें
सर्वर से किसी खिलाड़ी का चल रहा प्रोग्रेस बार रद्द करता है।
RegisterNetEvent('admin:cancelProgress', function(targetId)
exports['Agency-Progressbar']:StopProgressForPlayer(targetId, false)
end)StartProgressForAllPlayers(data: table)सभी जुड़े खिलाड़ियों को प्रोग्रेस बार भेजता है।
उदाहरण देखें
हर खिलाड़ी को 30 सेकंड का तूफ़ान चेतावनी वाला प्रोग्रेस बार भेजता है।
RegisterNetEvent('event:weatherWarning', function()
exports['Agency-Progressbar']:StartProgressForAllPlayers({
label = 'Storm incoming - take shelter',
duration = 30000
})
end)StopProgressForAllPlayers(completed?: boolean)सभी जुड़े खिलाड़ियों का चल रहा प्रोग्रेस बार रोकता है।
उदाहरण देखें
हर खिलाड़ी पर तूफ़ान चेतावनी वाला प्रोग्रेस बार रोकता है।
RegisterNetEvent('event:weatherCleared', function()
exports['Agency-Progressbar']:StopProgressForAllPlayers(true)
end)इवेंट
Agency:Progressbar:LoadSettingsहर खिलाड़ी की इंटरफ़ेस सेटिंग्स (पोज़िशन, रंग, स्केल, स्टाइल) डेटाबेस से क्लाइंट में लोड करता है।
उदाहरण देखें
स्पॉन होने पर खिलाड़ी की सहेजी प्रोग्रेस बार इंटरफ़ेस सेटिंग्स लोड करता है।
AddEventHandler('playerSpawned', function()
TriggerEvent('Agency:Progressbar:LoadSettings')
end)agency-progressbar:client:startदिए गए डेटा के साथ प्राप्त करने वाले क्लाइंट पर प्रोग्रेस बार शुरू करता है।
उदाहरण देखें
रद्द हो सकने वाला 12 सेकंड का इंजन मरम्मत प्रोग्रेस बार शुरू करता है।
TriggerEvent('agency-progressbar:client:start', {
label = 'Repairing engine...',
duration = 12000,
canCancel = true
})agency-progressbar:client:stopपूरा होने के फ़्लैग के साथ चल रहा प्रोग्रेस बार रोकता है।
उदाहरण देखें
खिलाड़ी को हथकड़ी लगने पर चल रहा प्रोग्रेस बार रोक देता है।
RegisterNetEvent('police:cuffed', function()
TriggerEvent('agency-progressbar:client:stop', false)
end)agency:consumables:useFoodखाने का आइटम इस्तेमाल करने के लिए इन्वेंटरी ब्रिज (एनिमेशन + सर्वर पर सुरक्षित असर)।
उदाहरण देखें
सैंडविच आइटम इस्तेमाल करने के लिए इन्वेंटरी का खाना ब्रिज चलाता है।
TriggerEvent('agency:consumables:useFood', 'sandwich')agency:consumables:useDrinkपीने का आइटम इस्तेमाल करने के लिए इन्वेंटरी ब्रिज (एनिमेशन + सर्वर पर सुरक्षित असर)।
उदाहरण देखें
कॉफ़ी कप आइटम इस्तेमाल करने के लिए इन्वेंटरी का पेय ब्रिज चलाता है।
TriggerEvent('agency:consumables:useDrink', 'coffee_cup')Agency:Progressbar:SaveSettingsखिलाड़ी की प्रोग्रेस बार इंटरफ़ेस सेटिंग्स जाँचता है और डेटाबेस में सहेजता है।
उदाहरण देखें
खिलाड़ी की प्रोग्रेस बार इंटरफ़ेस पसंद डेटाबेस में सहेजता है।
TriggerServerEvent('Agency:Progressbar:SaveSettings', {
position = 'top-right',
color = '#00aaff',
scale = 1.2
})agency-progressbar:server:startकिसी टारगेट (या खुद) पर प्रोग्रेस बार शुरू करने का सर्वर ट्रिगर।
उदाहरण देखें
किसी टारगेट पर 6 सेकंड का क्रेट लोडिंग बार शुरू करने का सर्वर ट्रिगर।
RegisterCommand('movecrate', function(source)
TriggerEvent('agency-progressbar:server:start', source, {
label = 'Loading crate onto truck',
duration = 6000
})
end, false)agency-progressbar:server:stopकिसी टारगेट (या खुद) पर प्रोग्रेस बार रोकने का सर्वर ट्रिगर।
उदाहरण देखें
रद्द स्थिति के साथ किसी टारगेट का प्रोग्रेस बार रोकने का सर्वर ट्रिगर।
RegisterNetEvent('admin:abortJob', function(targetId)
TriggerEvent('agency-progressbar:server:stop', targetId, false)
end)agency:reload:requestमाँगने वाले खिलाड़ी को रीलोड देने से पहले गोली, हथियार और आइटम जाँचता है।
उदाहरण देखें
सर्वर से गोलियाँ जाँचने और पिस्तौल का रीलोड देने को कहता है।
TriggerServerEvent('agency:reload:request', 'WEAPON_PISTOL', 'ammo-9')agency:consumables:applyइन्वेंटरी जाँचता है, एक आइटम हटाता है और भूख/प्यास की बढ़त लागू करता है।
उदाहरण देखें
सर्वर से खाने का आइटम हटाने और भूख की बढ़त लागू करने को कहता है।
RegisterNetEvent('food:onEatStart', function(itemName)
TriggerServerEvent('agency:consumables:apply', itemName)
end)17Agency-Notify V2
V1/V2 स्टाइल, AgencyAI स्मार्ट प्राथमिकता, स्पैम सुरक्षा और डेटाबेस में सहेजने वाला सूचना सिस्टम।
अपने सर्वर के हर दूसरे सूचना रिसोर्स (qb-notify, esx_notify, mythic_notify, okok-notify आदि) की जगह एक जैसा लुक लाएँ। AgencyAI का प्राथमिकता सिस्टम ज़्यादा आने वाली सूचनाओं को अपने आप सीमित करता है।
क्लाइंट एक्सपोर्ट
Notify(data: { title, text, type, duration, ... })Displays a v2 notification with optional Smart Mode priority/duration/spam handling.
उदाहरण देखें
डकैती के लक्ष्य की घोषणा वाली 6 सेकंड की सफलता सूचना भेजता है।
exports['Agency-Notify']:Notify({
title = 'Bank Heist',
text = 'Vault drilled, grab the loot!',
type = 'success',
duration = 6000
})इवेंट
Agency:Notify:Sendपुराना v1 एंट्री पॉइंट, जो एक्सपोर्ट वाले डेटा के साथ ही सूचना दिखाता है।
उदाहरण देखें
पुराना v1 क्लाइंट इवेंट, जो एक्सपोर्ट वाला ही डेटा दिखाता है।
TriggerEvent('Agency:Notify:Send', {
title = 'Old Notify',
text = 'Legacy v1 entry point still works',
type = 'info'
})Agency:Notify:LoadSettingsसर्वर से हर खिलाड़ी की सहेजी इंटरफ़ेस सेटिंग्स लागू करता है (पोज़िशन, रंग, स्केल, स्टाइल)।
उदाहरण देखें
स्पॉन होने पर हर खिलाड़ी की सहेजी सूचना इंटरफ़ेस सेटिंग्स लोड करता है।
AddEventHandler('playerSpawned', function()
TriggerEvent('Agency:Notify:LoadSettings')
end)Agency:Notify:SaveSettingsखिलाड़ी की सूचना सेटिंग्स जाँचता और सहेजता है (पोज़िशन, एक्सेंट, स्केल, स्टाइल)।
उदाहरण देखें
खिलाड़ी की सूचना की पोज़िशन, एक्सेंट और स्केल डेटाबेस में सहेजता है।
TriggerServerEvent('Agency:Notify:SaveSettings', {
position = 'top-right',
accent = '#ff8800',
scale = 1.1,
style = 'modern'
})18Agency-Seatbelt V2
बाहर उछलने की फ़िज़िक्स, 3D आवाज़ों, कई सवारों के सपोर्ट और HUD इंटीग्रेशन वाला सीटबेल्ट।
इसकी स्थिति अपने HUD से जोड़ें, या पुलिस चेज़ / डकैती के बाद भागने की शुरुआत में ज़बरदस्ती चालू करें। ज़बरदस्ती चालू/बंद करने वाले एक्सपोर्ट RP पलों के लिए बढ़िया हैं।
क्लाइंट एक्सपोर्ट
isSeatbeltOn()जब तक लोकल खिलाड़ी की बेल्ट बँधी है, true लौटाता है, चाहे उसने खुद बाँधी हो या कार ने।
उदाहरण देखें
सीटबेल्ट बँधी होने पर वाहन से उतरने का कंट्रोल बंद कर देता है।
if exports['Agency-Seatbelt']:isSeatbeltOn() then
DisableControlAction(0, 75, true)
endenableSeatbelt()सामान्य आवाज़ और फ़ीडबैक के साथ लोकल खिलाड़ी की बेल्ट बाँधता है।
उदाहरण देखें
HUD और आवाज़ वाले फ़ीडबैक के साथ लोकल खिलाड़ी की सीटबेल्ट बाँधता है।
RegisterNetEvent('vehicle:autoBuckle', function()
if IsPedInAnyVehicle(PlayerPedId(), false) then
exports['Agency-Seatbelt']:enableSeatbelt()
end
end)disableSeatbelt()सामान्य आवाज़ और फ़ीडबैक के साथ लोकल खिलाड़ी की बेल्ट खोलता है।
उदाहरण देखें
वाहन छोड़ते समय लोकल खिलाड़ी की सीटबेल्ट खोलता है।
RegisterNetEvent('vehicle:onExit', function()
exports['Agency-Seatbelt']:disableSeatbelt()
end)toggleSeatbelt()लोकल खिलाड़ी की बेल्ट बदलता है। नई स्थिति नहीं, बल्कि स्थिति सच में बदली हो तो true लौटाता है, ताकि ठुकराया गया बदलाव (कोई वाहन नहीं, या इस सीट पर बेल्ट नहीं) सफल बदलाव से अलग पहचाना जा सके।
उदाहरण देखें
की दबाने पर लोकल खिलाड़ी की सीटबेल्ट बँधी/खुली स्थिति बदलता है।
RegisterKeyMapping('+seatbelt', 'Toggle seatbelt', 'keyboard', 'B')
RegisterCommand('+seatbelt', function()
exports['Agency-Seatbelt']:toggleSeatbelt()
end)isAutoBuckled()जब तक बेल्ट कार ने बाँधी है, खिलाड़ी ने नहीं, true लौटाता है।
autoBuckle(on: boolean)बेल्ट को ऑटोमैटिक बेल्ट की तरह बाँधता या खोलता है, जैसे खुद चलने वाली कार करती है।
getSeatbeltState()एक टेबल लौटाता है: बेल्ट बँधी है या नहीं, ऑटोमैटिक है या नहीं, सीट और वाहन।
setSeatbeltEnabled(on: boolean)कटसीन या एडमिन स्थितियों के लिए इस खिलाड़ी का पूरा सीटबेल्ट बंद या चालू करता है।
isPlayerSeatbeltOn(serverId: number)दूसरे खिलाड़ी की बेल्ट की स्थिति लौटाता है, जो रेप्लिकेटेड state bag से पढ़ी जाती है।
bucklesItselfVehicle(vehicle: number)बताता है कि यह वाहन खुद अपने सवारों की बेल्ट बाँधता है या नहीं, मॉडल लिस्ट या agAuto state bag से।
openSettings()सेटिंग्स कार्ड खोलता है।
closeSettings()सेटिंग्स कार्ड बंद करता है।
isSettingsOpen()बताता है कि सेटिंग्स कार्ड खुला है या नहीं।
सर्वर एक्सपोर्ट
isSeatbeltOn(source: number)सर्वर पर किसी खिलाड़ी की बेल्ट की स्थिति लौटाता है, जो रेप्लिकेटेड state bag से पढ़ी जाती है।
getBuckledPlayers()अभी बेल्ट बाँधे सभी खिलाड़ियों की सर्वर id लौटाता है।
setSeatbelt(source: number, on: boolean)सर्वर से किसी खिलाड़ी की बेल्ट बाँधता या खोलता है।
इवेंट
Agency-HUD:seatbeltStateChangedहर बदलाव पर नई स्थिति के साथ चलता है। Agency-HUD इसे सुनता है; कोई दूसरा रिसोर्स भी सुन सकता है।
19Agency-Elevator
Liquid Glass इंटरफ़ेस और कॉन्फ़िगरेटर वाला असली जैसा लिफ़्ट सिस्टम।
अपार्टमेंट/हाउसिंग स्क्रिप्ट, पुलिस मुख्यालय, अस्पताल या किसी भी कई मंज़िल वाले इंटीरियर में बढ़िया। कॉन्फ़िग फ़ाइलें छुए बिना लिफ़्ट देखकर रखने के लिए कॉन्फ़िगरेटर इस्तेमाल करें।
इवेंट
Agency-Elevator:server:requestTravelजॉब की पहुँच जाँचता है, फिर क्लाइंट को तय मंज़िल पर भेजता है।
उदाहरण देखें
सर्वर से पहुँच जाँचने और फिर लिफ़्ट की तीसरी मंज़िल पर जाने को कहता है।
TriggerServerEvent('Agency-Elevator:server:requestTravel', 'lspd-tower-1', 3)Agency-Elevator:server:travelCompleteक्लाइंट के पहुँचने की पुष्टि करता है और 'मंज़िल पर पहुँचे' सूचना भेजता है।
उदाहरण देखें
सर्वर को बताता है कि खिलाड़ी तीसरी मंज़िल पर पहुँचा, ताकि पहुँचने की सूचना भेजी जाए।
TriggerServerEvent('Agency-Elevator:server:travelComplete', 'lspd-tower-1', 3)Agency-Elevator:server:requestElevatorsडेटाबेस से लोड हुई लिफ़्ट सूची माँगने वाले क्लाइंट को सिंक करता है।
उदाहरण देखें
क्लाइंट शुरू होने पर सर्वर से पूरी लिफ़्ट सूची माँगता है।
AddEventHandler('onClientResourceStart', function(res)
if res == GetCurrentResourceName() then
TriggerServerEvent('Agency-Elevator:server:requestElevators')
end
end)Agency-Elevator:server:saveElevatorअनुमति होने पर लिफ़्ट (id/नाम/मंज़िलें) MySQL में जोड़ता या अपडेट करता है।
उदाहरण देखें
एक Lobby मंज़िल वाली लिफ़्ट को एडमिन द्वारा जोड़ना या अपडेट करना।
TriggerServerEvent('Agency-Elevator:server:saveElevator', {
id = 'lspd-tower-1',
label = 'LSPD HQ',
floors = { { name = 'Lobby', coords = vector3(441.0, -981.5, 30.7) } }
})Agency-Elevator:server:loadElevatorएक लिफ़्ट का डेटा एडिट करने के लिए कॉन्फ़िगरेटर NUI को वापस भेजता है।
उदाहरण देखें
एक लिफ़्ट का डेटा एडिट करने के लिए कॉन्फ़िगरेटर NUI में लोड करता है।
TriggerServerEvent('Agency-Elevator:server:loadElevator', 'lspd-tower-1')Agency-Elevator:server:saveSettingsइंटरफ़ेस सेटिंग्स (पोज़िशन/स्केल/एक्सेंट रंग) MySQL में सहेजता है और सभी क्लाइंट दोबारा सिंक करता है।
उदाहरण देखें
लिफ़्ट इंटरफ़ेस की पोज़िशन, एक्सेंट रंग और स्केल सहेजता है और सभी क्लाइंट दोबारा सिंक करता है।
TriggerServerEvent('Agency-Elevator:server:saveSettings', {
position = 'top-right',
accent = '#22c55e',
scale = 1.0
})Agency-Elevator:client:startTravelफ़ेड/एनिमेशन चलाता है, पेड को टारगेट मंज़िल के कोऑर्डिनेट पर टेलीपोर्ट करता है, फिर वापस सिंक करता है।
उदाहरण देखें
फ़ेड और एनिमेशन चलाता है, फिर पेड को गैराज की दूसरी मंज़िल पर टेलीपोर्ट करता है।
TriggerEvent('Agency-Elevator:client:startTravel', 'parking-garage', 2)Agency-Elevator:client:applySettingsइंटरफ़ेस सेटिंग्स (एक्सेंट/स्केल/पोज़िशन) NUI में भेजता है।
उदाहरण देखें
लोकल क्लाइंट पर लिफ़्ट NUI का एक्सेंट, स्केल और पोज़िशन लागू करता है।
TriggerEvent('Agency-Elevator:client:applySettings', {
accent = '#0ea5e9',
scale = 0.9,
position = 'bottom-left'
})Agency-Elevator:client:openConfiguratorमौजूदा लिफ़्ट सूची और सेटिंग्स के साथ एडमिन कॉन्फ़िगरेटर NUI खोलता है।
उदाहरण देखें
मौजूदा लिफ़्ट सूची के साथ एडमिन कॉन्फ़िगरेटर NUI खोलता है।
TriggerEvent('Agency-Elevator:client:openConfigurator')Agency-Elevator:client:refreshConfiguratorसेव/डिलीट के बाद खुले कॉन्फ़िगरेटर को बंद किए बिना रिफ़्रेश करता है।
उदाहरण देखें
सेव करने के बाद खुले कॉन्फ़िगरेटर NUI को बंद किए बिना ताज़ा करता है।
AddEventHandler('Agency-Elevator:server:elevatorSaved', function()
TriggerEvent('Agency-Elevator:client:refreshConfigurator')
end)20Agency-Multicharacter
FiveM के लिए एक सिनेमाई कैरेक्टर चयन और निर्माण। प्रत्येक कैरेक्टर अपने काम से मेल खाते दृश्य में खड़ा होता है, पुलिस क्रूजर के पास, मेडिक्स एम्बुलेंस के पास, वर्कशॉप में मैकेनिक्स, अपने सेव किए गए ऑउटफिट में, एक साफ कार्ड पर अपनी हेड पिक्चर, जॉब, गैंग, कैश, बैंक, फोन नंबर, प्लेटाइम और अंतिम लोकेशन के साथ। नए कैरेक्टर्स को नाम और उम्र के नियम, खोजने योग्य राष्ट्रीयता सूची और ऊंचाई मिलती है, फिर सर्वर का clothing script अपने आप खुल जाता है। स्लॉट्स को Tebex के माध्यम से बेचा जा सकता है: खरीदार अपनी transaction id से उन्हें अनलॉक करते हैं। खिलाड़ी /logout से कैरेक्टर बदलते हैं। Framework, clothing script, inventory, spawn selector और loading screen अपने आप डिटेक्ट हो जाते हैं; पुराने multicharacter से मौजूदा कैरेक्टर्स, प्लेटाइम और खरीदे गए स्लॉट्स ट्रांसफर हो जाते हैं। QBCore, Qbox, ESX या अपने कैरेक्टर स्टोरेज के साथ पूरी तरह standalone, 25 भाषाएं, रंग सर्वर लोगो के अनुसार रहता है।
क्लाइंट एक्सपोर्ट
IsOpen()True while the character selection is open.
OpenSelection()Opens the selection, for example from your own logout button.
सर्वर एक्सपोर्ट
GetCharacter(source)The loaded character (standalone: the full record).
GetCharacterId(source)citizenid, ESX identifier or agency:<id> of the loaded character.
IsInSelection(source)True while the player is in the selection.
GetSlots(license)Slots of a licence.
AddSlots(license, amount)Adds slots, returns the new total.
Logout(source)Saves the character and opens the selection.
इवेंट
agency-multicharacter:server:loadedA character was loaded or created (source, charid, isNew).
agency-multicharacter:server:deletedA character was deleted (source, charid).
agency:selectiontrue while a selection screen is open, HUDs can hide themselves.
21Agency-Spawn
FiveM के लिए लाइव कैमरा वाला एक spawn selector। जब खिलाड़ी ब्राउज करता है, तो कैमरा Los Santos के ऊपर से हर लोकेशन तक उड़ता है; किसी एक को चुनने पर वह आसमान से नीचे उनके कैरेक्टर के पास ले आता है। यह अंतिम लोकेशन, एक कमेंटेड सूची से पब्लिक स्पॉन्स, केवल संबंधित कैरेक्टर्स को दिखने वाले जॉब और गैंग स्पॉन्स, Agency Housing का हर घर जिसका कैरेक्टर मालिक है या जिसकी चाबी उसके पास है, qb-apartments और नए कैरेक्टर्स के लिए एक निश्चित आगमन बिंदु प्रदान करता है। खिलाड़ी अपनी अंतिम लोकेशन पर auto spawn चालू कर सकते हैं। यह qb-spawn और apartment इवेंट्स का जवाब देता है, इसलिए अधिकांश multicharacter scripts बिना किसी बदलाव के इसे खोल देती हैं, और यह Agency Multicharacter के साथ मिलकर काम करता है। QBCore, Qbox, ESX या standalone, 25 भाषाएं, रंग सर्वर लोगो के अनुसार रहता है।
क्लाइंट एक्सपोर्ट
Open(options)Opens the selector. options.isNew = true sends new characters to the arrival point.
IsOpen()True while the selector is open.
इवेंट
agency-spawn:client:spawnedThe character landed (id, kind).
agency-spawn:server:spawnedA player spawned (source, id, kind).
qb-spawn:client:setupSpawns / openUIAnswered when qb-spawn is not running, so other multicharacters open Agency Spawn.
22Agency-Housing
FiveM के लिए डेटाबेस-आधारित हाउसिंग सिस्टम। यह QBCore, QBox और ESX को स्वयं पहचान लेता है, या किसी भी फ्रेमवर्क के बिना पूरी तरह स्टैंडअलोन चल सकता है। घरों को कॉन्फ़िग फ़ाइल के बजाय गेम के अंदर चरण-दर-चरण क्रिएटर से बनाया जाता है: इंटीरियर, शेल, MLO और पूरी अपार्टमेंट बिल्डिंग, जिनमें एक ही मुख्य दरवाज़े के पीछे 40 फ़्लैट तक हो सकते हैं, और हर प्लॉट के चारों ओर एक प्रॉपर्टी बॉर्डर होती है जो ऊपर से दिखाई देता है। खिलाड़ी घर खरीदते हैं, आपस में बेचते हैं, किराए पर लेते और देते हैं, मार्केट में सभी ऑफ़र देखते हैं, और किराया पहले से चुका सकते हैं। ऑफ़लाइन रहते हुए आने वाला पैसा अगली बार लॉगिन करने पर दे दिया जाता है। चाबियाँ, ऑटो लॉक और डोरबेल वाला MLO दरवाज़ा-लॉकिंग, 1,300 से अधिक प्रॉप्स के कैटलॉग से फ़र्निशिंग, सुरक्षा कैमरे और बिल्ट-इन वॉर्डरोब शामिल हैं, और Housing ऐप Agency Phone, Agency Pad, lb-phone और qs-smartphone-pro पर लॉक नियंत्रण और लाइव कैमरे लाता है। इन्वेंटरी, कपड़े और गैराज स्क्रिप्ट अपने-आप मिल जाती हैं, डेटाबेस खुद अपडेट होता है, और सब कुछ MySQL में सहेजा जाता है।
क्लाइंट एक्सपोर्ट
IsInsideHouse()जब तक खिलाड़ी किसी घर के अंदर है, true लौटाता है।
GetCurrentHouse()वह घर जिसके अंदर खिलाड़ी अभी है, या nil।
LeaveHouse()खिलाड़ी को प्रवेश द्वार से वापस बाहर ले आता है।
GetHouseAtPoint(coords)पहला घर जिसकी प्रॉपर्टी सीमा में यह ज़मीन आती है।
GetHousesAtPoint(coords)वे सभी घर जिनमें यह ज़मीन आती है, एक-दूसरे पर चढ़े प्लॉट जैसे अपार्टमेंट ब्लॉक के लिए।
GetCurrentProperty()वह प्लॉट जिस पर खिलाड़ी अभी खड़ा है, या nil।
IsOnProperty(houseId)क्या खिलाड़ी उस घर की प्रॉपर्टी पर खड़ा है।
GetHouseZone(houseId)किसी घर की सहेजी गई सीमा का आकार।
GetAccent()वह एक्सेंट रंग जो खिलाड़ी ने Housing > Settings में चुना।
GetAppUrl(theme)Housing ऐप पेज का पता, ताकि ऐप को किसी भी अन्य फ़ोन में जोड़ा जा सके। थीम जबरन लागू करने के लिए 'light' या 'dark' पास करें।
GetAppData()Housing ऐप जो कुछ दिखाता है: वे घर जिनका खिलाड़ी मालिक है, जिन्हें वह किराए पर लेता है, या जिनकी चाबी उसके पास है।
AppAction(action, houseId)किसी घर के लिए ऐप क्रिया चलाता है: 'waypoint', 'lock' या 'cams'।
सर्वर एक्सपोर्ट
GetHouses()सर्वर के सभी घर, id के हिसाब से।
GetPlayerHouses(source)वे घर जो उस खिलाड़ी के हैं।
HasHouseAccess(source, houseId)क्या वह खिलाड़ी घर का मालिक है या उसके पास उसकी चाबी है।
GetHouseAtPoint(coords)पहला घर जिसकी प्रॉपर्टी सीमा में यह ज़मीन आती है।
GetHousesAtPoint(coords)वे सभी घर जिनमें यह ज़मीन आती है, एक-दूसरे पर चढ़े प्लॉट के लिए।
GetHouseZone(houseId)किसी घर की सहेजी गई सीमा का आकार।
इवेंट
agency-housing:client:enteredZoneखिलाड़ी के किसी प्रॉपर्टी पर कदम रखते ही (houseId, house) के साथ चलता है, ताकि जॉब या चोरी वाली स्क्रिप्ट को बार-बार जाँचना न पड़े।
agency-housing:client:leftZoneखिलाड़ी के प्रॉपर्टी छोड़ने पर (houseId, house) के साथ चलता है।
agency-housing:garage:openजब कोई हाउस गैराज इस्तेमाल होता है और Config.Garage.script 'event' है, तो (houseId, houseName) के साथ फायर होता है, ताकि आपकी अपनी गैराज स्क्रिप्ट उसे खोल सके।
23Agency-Banking
FiveM के लिए एक पूरा बैंक, जो QBCore, Qbox, ESX पर या पूरी तरह standalone चलता है। खिलाड़ियों को बैंक बैलेंस और नकद वाला वॉलेट, चार थीम वाले बैंक कार्ड, ID से या पास के खिलाड़ियों को ट्रांसफ़र, ऐसी फ़िक्स्ड डिपॉज़िट जिनका ब्याज सिर्फ़ सर्वर तय करता है, शेयर और क्रिप्टो ट्रेडिंग, ATM PIN और लेन-देन का पूरा इतिहास मिलता है। बिना फ़्रेमवर्क के बैंक अपने खाते खुद रखता है, और दूसरे रिसोर्स सर्वर एक्सपोर्ट के ज़रिए इसे अपने पैसे के सिस्टम की तरह इस्तेमाल कर सकते हैं। साथ में मेनू के दो डिज़ाइन, 13 भाषाएँ, मार्कर या qb-target / ox_target, हर खिलाड़ी के लिए डिस्प्ले साइज़ स्लाइडर, पहली शुरुआत में अपने आप बनने वाली टेबल और मुफ़्त Agency Companion ऐप, जिससे बैलेंस, ट्रांसफ़र, फ़िक्स्ड डिपॉज़िट और कार्ड कहीं से भी संभाले जा सकते हैं।
क्लाइंट एक्सपोर्ट
OpenBank()लोकल खिलाड़ी के लिए बैंक खोलता है, वह जहाँ भी हो।
OpenATM()लोकल खिलाड़ी के लिए ATM की PIN स्क्रीन खोलता है। खिलाड़ी को पहले किसी बैंक में ATM PIN सेट करना होगा।
सर्वर एक्सपोर्ट
GetBankBalance(source)खिलाड़ी का बैंक बैलेंस लौटाता है, हर फ़्रेमवर्क पर और standalone में।
GetCashBalance(source)खिलाड़ी का नकद लौटाता है।
AddBankMoney(source, amount, reason)बैंक बैलेंस में पैसे जोड़ता है। सफल होने पर true लौटाता है, और खुला बैंक अपने आप ताज़ा हो जाता है।
RemoveBankMoney(source, amount, reason)बैंक बैलेंस से पैसे काटता है। बैलेंस कम होने पर false लौटाता है, और तब कुछ नहीं कटता।
AddCashMoney(source, amount, reason)नकद जोड़ता है। सफल होने पर true लौटाता है।
RemoveCashMoney(source, amount, reason)नकद लेता है। पर्याप्त न हो तो false लौटाता है, और तब कुछ नहीं लिया जाता।
AddTransaction(identifier, type, amount, reason)identifier से खिलाड़ी के लेन-देन इतिहास में एक एंट्री लिखता है (QBCore और Qbox पर citizenid, ESX पर identifier, standalone में लाइसेंस)।
GetFramework()बैंक द्वारा पहचाना गया फ़्रेमवर्क लौटाता है: qbcore, esx या standalone।
इवेंट
agency_banking:client:OpenBankउस खिलाड़ी के लिए बैंक खोलने के लिए इसे सर्वर से ट्रिगर करें।
agency_banking:client:MoneyChangedकिसी दूसरी स्क्रिप्ट के खिलाड़ी का पैसा बदलने के बाद इसे सर्वर से ट्रिगर करें, खुला बैंक ताज़ा हो जाएगा।
इस पेज के बाद भी अटके हैं? आगे हमारा सपोर्ट संभाल लेगा।