帮我翻译不修改源代码
Config.DefaultSpawns = { -- If you want to have more spawn positions and select them randomly uncomment commented code or add more locations
{ x = 256.7112, -967.6342, 32.1671, heading = 130.1768},
--{x = 224.9865, y = -865.0871, z = 30.2922, heading = 1.0},
--{x = 227.8436, y = -866.0400, z = 30.2922, heading = 1.0},
--{x = 230.6051, y = -867.1450, z = 30.2922, heading = 1.0},
--{x = 233.5459, y = -868.2626, z = 30.2922, heading = 1.0}
}
Config.DefaultSpawns = { -- 如果你想要更多的重生位置并随机选择它们,请取消注释已注释的代码或添加更多位置
{ x = 256.7112, -967.6342, 32.1671, heading = 130.1768},
--{x = 224.9865, y = -865.0871, z = 30.2922, heading = 1.0},
--{x = 227.8436, y = -866.0400, z = 30.2922, heading = 1.0},
--{x = 230.6051, y = -867.1450, z = 30.2922, heading = 1.0},
--{x = 233.5459, y = -868.2626, z = 30.2922, heading = 1.0}
} heading这是
jdhd 发表于 2025-01-12 13:46
heading这是
在这里,`heading` 表示角色的朝向角度。它的值通常以度为单位,范围从 0 到 360。这个角度决定了角色在生成时面对的方向。例如,`heading = 130.1768` 表示角色生成时会面朝大约 130 度的方向。 翻译不修改源代码
Config = {
Debug = true, -- setto false to disable debug
SyncToDatabase = 5,-- time in minutes to sync gangs from server file to database
Items = {
= 'zipties', -- edit item name, not key-number
= 'headbag', -- edit item name, not key-number
= 'cutter', -- edit item name, not key-number
= 'coke_packaged', -- edit item name, not key-number
= 'meth_packaged', -- edit item name, not key-number
= 'weed_packaged', -- edit item name, not key-number
-- add more items for drug sale if u want. Make sure to add the key inside Config.DrugSale.Items as well.
},
AdminMenu = { -- settings for admin gang menu
Command = {Enable = true, String = 'admingang'}, -- enable/disable command, set command string.
Keybind = {Enable = false, DefaultMapping = 'F10'} -- enable/disable keybind, set default mapping (players edit button in-game inside GTA Settings)
},
PlayerMenu = { -- settings for admin gang menu
Command = {Enable = true, String = 'gangmenu'}, -- enable/disable command, set command string.
Keybind = {Enable = true, DefaultMapping = 'F7'} -- enable/disable keybind, set default mapping (players edit button in-game inside GTA Settings)
},
DefaultRanks = { -- every gang has these ranks, they can change the title in-game through their menu. Add as many ranks you want, gang-leader can select which ranks to give the gang-members.
= "Boss", -- (leader)
= "Underboss", -- (same perms as leader)
= "Shot Caller", -- (can recruit members to gang or kick members from gang)
= "Soldier",
= "Associate",
},
InviteMember = {
ShowFullName = true, -- set to false to only show player server id (prevent meta-gaming)
Distance = 10.0 -- distance to players in area to include.
},
Markers = {
['garage'] = {
enable = true, -- enable garage marker
cooldown = {enable = true, time = 60}, -- enable/disable cooldown on creating new marker when cur marker has been deleted. Time is in minutes.
pincode = {enable = true, attempts = 3, cooldown = 60}, -- enable/disable cooldown on x attempts of failed pin-code on markers.
cost = {notoriety = 100, cash = 5000}, -- set cost of creating this marker. Removes notoriety point and cash from cash locker. Set to 0 to disable.
showMarker = true, -- show a marker in-game to see where to interact
keybind = 38, -- key to interact with marker.
blip = {enable = true, name = 'Gang Garage', sprite = 357, display = 4, scale = 0.65, color = 0}, -- blip settings
renderDist = 10.0, -- thread render dist to show marker
interactDist = 1.0, -- interact dist to open menu
menuTitle = 'Garage', -- menu title in context menu
icon = 'car', -- icon in context menu
useBuiltInGarage = true -- use the built in garage system, see documentation for reference.
},
['stash'] = {
enable = true,
cooldown = {enable = true, time = 60}, -- enable/disable cooldown on creating new marker when cur marker has been deleted. Time is in minutes.
pincode = {enable = true, attempts = 3, cooldown = 60}, -- enable/disable cooldown on x attempts of failed pin-code on markers.
cost = {notoriety = 100, cash = 5000}, -- set cost of creating this marker. Removes notoriety point and cash from cash locker. Set to 0 to disable.
showMarker = true, -- show a marker in-game to see where to interact
keybind = 38, -- key to interact with marker.
blip = {enable = true, name = 'Gang Stash', sprite = 587, display = 4, scale = 0.65, color = 0}, -- blip settings
renderDist = 10.0, -- thread render dist to show marker
interactDist = 1.0,-- interact dist to open menu
menuTitle = 'Stash',-- menu title in context menu
icon = 'box', -- icon in context menu
stash = {slots = 50, weight = 100000}
},
['locker'] = {
enable = true,
cooldown = {enable = true, time = 60}, -- enable/disable cooldown on creating new marker when cur marker has been deleted. Time is in minutes.
pincode = {enable = true, attempts = 3, cooldown = 60}, -- enable/disable cooldown on x attempts of failed pin-code on markers.
cost = {notoriety = 100}, -- set cost of creating this marker. Removes notoriety point and cash from cash locker. Set to 0 to disable.
showMarker = true, -- show a marker in-game to see where to interact
keybind = 38, -- key to interact with marker.
blip = {enable = true, name = 'Gang Locker', sprite = 272, display = 4, scale = 0.65, color = 0}, -- blip settings
renderDist = 10.0, -- thread render dist to show marker
interactDist = 1.0, -- interact dist to open menu
menuTitle = 'Locker', -- menu title in context menu
icon = 'sack-dollar'-- icon in context menu
},
},
Actions = {
--
Menu = {
['ziptie'] = {
icon = 'handcuffs',
notoriety = 100, -- required gang notoriety to use this, set to 0 to disable required notoriety.
prop = 'p_cs_cuffs_02_s',
anim = {
= {dict = 'mp_arrest_paired', name = {['crook'] = 'crook_p2_back_left', ['cop'] = 'cop_p2_back_left'}, flag = 49},
= {dict = 'mp_arresting', name = 'idle', flag = 49},
},
},
['remove_zipties'] = {
icon = 'key',
notoriety = 100, -- required gang notoriety to use this, set to 0 to disable required notoriety.
},
['escort'] = {
icon = 'people-pulling',
notoriety = 200, -- required gang notoriety to use this, set to 0 to disable required notoriety.
},
['vehicle_in'] = {
icon = 'car',
notoriety = 300, -- required gang notoriety to use this, set to 0 to disable required notoriety.
},
['vehicle_out'] = {
icon = 'car',
notoriety = 300, -- required gang notoriety to use this, set to 0 to disable required notoriety.
},
['trunk_in'] = {
icon = 'suitcase',
notoriety = 400, -- required gang notoriety to use this, set to 0 to disable required notoriety.
},
['trunk_out'] = {
icon = 'suitcase',
notoriety = 400, -- required gang notoriety to use this, set to 0 to disable required notoriety.
},
['headbag'] = {
icon = 'eye-slash',
notoriety = 500, -- required gang notoriety to use this, set to 0 to disable required notoriety.
prop = 'prop_money_bag_01',
},
['hostage'] = {
icon = 'gun',
notoriety = 600, -- required gang notoriety to use this, set to 0 to disable required notoriety.
weapons = {'WEAPON_PISTOL', 'WEAPON_COMBATPISTOL', 'WEAPON_PISTOL50', 'WEAPON_SNSPISTOL', 'WEAPON_HEAVYPISTOL', 'WEAPON_APPISTOL', 'WEAPON_PISTOL_MK2', 'WEAPON_MACHINEPISTOL' }, -- weapons for hostaging
anim = {
= {lib = 'anim@gangops@hostage@', name = {'perp_idle', 'victim_idle', 'perp_fail', 'victim_fail'}},
= {lib = 'reaction@shove', name = {'shove_var_a', 'shoved_back'}},
}, -- anim libs & names
pos = {x = -0.24, y = 0.11, z = 0.0}, -- anim pos of hostage
rot = {x = 0.5, y = 0.5, z = 0.0}, -- anim rot of hostage
},
},
},
DrugSale = {
Enable = true, -- set to false if using your own drug sale mechanism, make sure to add export for drug zone checking.
AllowGangsOnly = true, -- set to true to only allow gang-members to sell drugs.
RequiredPolice = 0, -- required police online to sell drugs to NPC's.
BlackMoney = {enable = true, account = 'black_money'}, -- enable and set account to use other money than normal cash/money.
Blacklisted = { -- blacklisted ped models for selling;
's_m_y_cop_01', 's_m_y_dealer_01', 'mp_m_shopkeep_01', 's_m_y_xmech_02_mp', 'mp_m_weed_01', 'ig_chef', 'g_m_m_casrn_01'
},
Distance = 2.0, -- distance to target/interact with ped.
Cooldown = 3, -- cooldown in seconds between each drug sale.
Anims = {
['sale'] = {dict = 'mp_common', name = 'givetake2_a'},
['report'] = {dict = 'cellphone@', name = 'cellphone_call_listen_base'},
},
Notoriety = {
rejected = 1, -- amount of points to deduct on rejected sale (only when NPC calls police).
maxSellPriceBonus = true, -- adds 1 notoriety point if a unit sell price is equal to the max sell price of the drug.
requiredSales = 5, -- required amount of sales to NPC before notoriety point is added (to prevent adding points for each sales on grinders)
accepted = 1, -- amount of points to add on an accepted sale when the requiredSales count is met.
},
Items = {
-- Drug item:
{
itemKey = 4, -- Config.Items
sell = {
price = {min = 700, max = 1100}, -- min and max base sell price
amount = {min = 1, max = 20}, -- random amount to be sold, between min & max.
chance = 50 -- chance in % to sell this drug to NPC.
},
report = {
chance = 100, -- chance in % of NPC calling the police on a failed drug-sale.
timer = 5 -- time in seconds to beat up NPC to prevent the police alert.
},
policeBonus = {
enable = true, -- enable police bonus on drug sales.
required = 3, -- required police to apply police-bonus
percentage = 10 -- percentage added on-top of unit sell price. If price is $800 + 10% makes it $880
},
streetBonus = {
enable = true, -- enable street bonus for selling this item.
streets = { -- add streets and bonus in %. I eligibile for street bonus % is added on top of the unit sell.
['Grove St'] = 25,
['Forum Dr'] = 30,
['Jamestown St'] = 15,
['Clinton Ave'] = 20,
-- add, remove or edit streets.
}
}
},
-- Drug item:
{
itemKey = 5, -- Config.Items
sell = {
price = {min = 500, max = 800}, -- min and max base sell price
amount = {min = 1, max = 15}, -- random amount to be sold, between min & max.
chance = 60 -- chance in % to sell this drug to NPC.
},
report = {
chance = 80, -- chance in % of NPC calling the police on a failed drug-sale.
timer = 5 -- time in seconds to beat up NPC to prevent the police alert.
},
policeBonus = {
enable = true, -- enable police bonus on drug sales.
required = 3, -- required police to apply police-bonus
percentage = 10 -- percentage added on-top of unit sell price. If price is $800 + 10% makes it $880
},
streetBonus = {
enable = true, -- enable street bonus for selling this item.
streets = { -- add streets and bonus in %. I eligibile for street bonus % is added on top of the unit sell.
['Forum Dr'] = 25,
['Jamestown St'] = 30,
['Clinton Ave'] = 15,
-- add, remove or edit streets.
}
}
},
-- Drug item:
{
itemKey = 6, -- Config.Items
sell = {
price = {min = 150, max = 400}, -- min and max base sell price
amount = {min = 1, max = 10}, -- random amount to be sold, between min & max.
chance = 80 -- chance in % to sell drugs to NPC.
},
report = {
chance = 50, -- chance in % of NPC calling the police on a failed drug-sale.
timer = 5 -- time in seconds to beat up NPC to prevent the police alert.
},
policeBonus = {
enable = true, -- enable police bonus on drug sales.
required = 3, -- required police to apply police-bonus
percentage = 10 -- percentage added on-top of unit sell price. If price is $800 + 10% makes it $880
},
streetBonus = {
enable = true, -- enable street bonus for selling this item.
streets = { -- add streets and bonus in %. I eligibile for street bonus % is added on top of the unit sell.
['Grove St'] = 30,
['Forum Dr'] = 25,
['Jamestown St'] = 20,
['Clinton Ave'] = 15,
-- add, remove or edit streets.
}
}
},
-- Drug item: add more here if u want, copy paste the table from above. Make sure to add itemKey inside Config.Items in the top of Config.lua as well!
},
},
ContractNPC = {
Model = 'g_m_m_casrn_01', -- model of the contract NPC
Pos = vector4(-1119.84, -1097.26, 2.15, 171.74), -- pos of NPC
Scenario = 'WORLD_HUMAN_AA_SMOKE', -- scenario of the NPC
InteractDist = 1.5, -- distance to interact with NPC.
Blip = {enable = true, name = 'Contract NPC', sprite = 671, display = 4, scale = 0.65, color = 5}, -- Blip settings for NPC
},
Rackets = {
['protection'] = {
label = 'Protection Racket',
icon = 'shield',
claimed = false, -- do not touch!
gang = nil, -- do not touch!
cost = 100, -- costs of notoriety points to claim racket.
data = {
keybind = 38, -- keybind to collect/request protection money
timer = 30, -- time in minutes to collect from a request.
cash = {min = 2000, max = 10000},
marker = {type = 29, size = {x = 0.35, y = 0.35, z = 0.35}, color = {r = 38, g = 194, b = 129, a = 100}, faceCamera = true, bobUpAndDown = true},
notoriety = 1, -- amount of notoriety points added when collecting protection money.
shops = {
= {
coords = vector3(-41.83, -1749.36, 29.41),
cache = {}, -- do not touch!
},
= {
coords = vector3(138.30, -1704.36, 29.27),
cache = {}, -- do not touch!
},
},
},
},
['prostitution'] = {
label = 'Prostitution Racket',
icon = 'person-dress',
claimed = false, -- do not touch!
gang = nil, -- do not touch!
cost = 100, -- costs of notoriety points to claim racket.
data = {
peds = {'s_f_y_hooker_01', 's_f_y_hooker_02', 's_f_y_hooker_03', 's_f_y_stripper_01', 's_f_y_stripper_02'},
damagePercentage = 20.0, -- cancel job if vehicle engine is damaged more than 20% from picking up the girl. ex. engine is 800 when picking up and during delivery engine goes to 639, then job cancels.
notoriety = 1, -- amount of notoriety points added when job complete.
jobs = {
= {
pickup = vector4(507.58, -1875.87, 25.97, 116.22),
dropoff = vector3(-13.87, -1847.35, 24.81),
cash = {min = 100, max = 500},
},
= {
pickup = vector4(31.09,-1868.86, 22.94, 136.06),
dropoff = vector3(473.60, -1583.51, 29.09),
cash = {min = 100, max = 500},
},
},
},
},
},
}
jdhd 发表于 2025-01-12 13:50
翻译不修改源代码
Config = {
Debug = true, -- set...
Config = {
Debug = true, -- 设置为 false 禁用调试
SyncToDatabase = 5,-- 从服务器文件同步帮派到数据库的时间(单位:分钟)
Items = {
= 'zipties', -- 编辑物品名称,而不是键编号
= 'headbag', -- 编辑物品名称,而不是键编号
= 'cutter', -- 编辑物品名称,而不是键编号
= 'coke_packaged', -- 编辑物品名称,而不是键编号
= 'meth_packaged', -- 编辑物品名称,而不是键编号
= 'weed_packaged', -- 编辑物品名称,而不是键编号
-- 如果需要更多毒品销售的物品,请添加。确保在 Config.DrugSale.Items 中添加对应的键。
},
AdminMenu = { -- 管理员帮派菜单设置
Command = {Enable = true, String = 'admingang'}, -- 启用/禁用命令,设置命令字符串。
Keybind = {Enable = false, DefaultMapping = 'F10'} -- 启用/禁用快捷键,设置默认映射(玩家在 GTA 设置中编辑按钮)
},
PlayerMenu = { -- 玩家帮派菜单设置
Command = {Enable = true, String = 'gangmenu'}, -- 启用/禁用命令,设置命令字符串。
Keybind = {Enable = true, DefaultMapping = 'F7'} -- 启用/禁用快捷键,设置默认映射(玩家在 GTA 设置中编辑按钮)
},
DefaultRanks = { -- 每个帮派都有这些等级,通过菜单可以更改游戏中的称谓。可以添加任意数量的等级,帮派首领可以选择给予帮派成员的等级。
= "Boss", -- (首领)
= "Underboss", -- (与首领相同的权限)
= "Shot Caller", -- (可以招募成员或踢出成员)
= "Soldier",
= "Associate",
},
InviteMember = {
ShowFullName = true, -- 设置为 false 仅显示玩家服务器 ID(防止元游戏)
Distance = 10.0 -- 包含的区域内玩家的距离。
},
Markers = {
= {
enable = true, -- 启用车库标记
cooldown = {enable = true, time = 60}, -- 在当前标记已被删除后启用/禁用新标记创建的冷却时间。时间以分钟为单位。
pincode = {enable = true, attempts = 3, cooldown = 60}, -- 启用/禁用标记失败 PIN 码 x 次尝试的冷却时间。
cost = {notoriety = 100, cash = 5000}, -- 设置创建此标记的成本。 从现金储物柜中移除名声点和现金。设置为 0 以禁用。
showMarker = true, -- 在游戏中显示标记以查看交互位置
keybind = 38, -- 交互标记的按键。
blip = {enable = true, name = '帮派车库', sprite = 357, display = 4, scale = 0.65, color = 0}, -- blip 设置
renderDist = 10.0, -- 渲染距离以显示标记
interactDist = 1.0, -- 打开菜单的交互距离
menuTitle = '车库', -- 上下文菜单中的标题
icon = 'car', -- 上下文菜单中的图标
useBuiltInGarage = true -- 使用内置车库系统,参考文档。
},
= {
enable = true,
cooldown = {enable = true, time = 60}, -- 在当前标记已被删除后启用/禁用新标记创建的冷却时间。时间以分钟为单位。
pincode = {enable = true, attempts = 3, cooldown = 60}, -- 启用/禁用标记失败 PIN 码 x 次尝试的冷却时间。
cost = {notoriety = 100, cash = 5000}, -- 设置创建此标记的成本。 从现金储物柜中移除名声点和现金。设置为 0 以禁用。
showMarker = true, -- 在游戏中显示标记以查看交互位置
keybind = 38, -- 交互标记的按键。
blip = {enable = true, name = '帮派储藏', sprite = 587, display = 4, scale = 0.65, color = 0}, -- blip 设置
renderDist = 10.0, -- 渲染距离以显示标记
interactDist = 1.0,-- 打开菜单的交互距离
menuTitle = '储藏',-- 上下文菜单中的标题
icon = 'box', -- 上下文菜单中的图标
stash = {slots = 50, weight = 100000}
},
= {
enable = true,
cooldown = {enable = true, time = 60}, -- 在当前标记已被删除后启用/禁用新标记创建的冷却时间。时间以分钟为单位。
pincode = {enable = true, attempts = 3, cooldown = 60}, -- 启用/禁用标记失败 PIN 码 x 次尝试的冷却时间。
cost = {notoriety = 100}, -- 设置创建此标记的成本。 从现金储物柜中移除名声点和现金。设置为 0 以禁用。
showMarker = true, -- 在游戏中显示标记以查看交互位置
keybind = 38, -- 交互标记的按键。
blip = {enable = true, name = '帮派储物柜', sprite = 272, display = 4, scale = 0.65, color = 0}, -- blip 设置
renderDist = 10.0, -- 渲染距离以显示标记
interactDist = 1.0, -- 打开菜单的交互距离
menuTitle = '储物柜', -- 上下文菜单中的标题
icon = 'sack-dollar'-- 上下文菜单中的图标
},
},
Actions = {
--
Menu = {
= {
icon = 'handcuffs',
notoriety = 100, -- 使用此项所需的帮派声望,设置为 0 以禁用所需声望。
prop = 'p_cs_cuffs_02_s',
anim = {
= {dict = 'mp_arrest_paired', name = { = 'crook_p2_back_left',= 'cop_p2_back_left'}, flag = 49},
= {dict = 'mp_arresting', name = 'idle', flag = 49},
},
},
= {
icon = 'key',
notoriety = 100, -- 使用此项所需的帮派声望,设置为 0 以禁用所需声望。
},
= {
icon = 'people-pulling',
notoriety = 200, -- 使用此项所需的帮派声望,设置为 0 以禁用所需声望。
},
= {
icon = 'car',
notoriety = 300, -- 使用此项所需的帮派声望,设置为 0 以禁用所需声望。
},
= {
icon = 'car',
notoriety = 300, -- 使用此项所需的帮派声望,设置为 0 以禁用所需声望。
},
= {
icon = 'suitcase',
notoriety = 400, -- 使用此项所需的帮派声望,设置为 0 以禁用所需声望。
},
= {
icon = 'suitcase',
notoriety = 400, -- 使用此项所需的帮派声望,设置为 0 以禁用所需声望。
},
= {
icon = 'eye-slash',
notoriety = 500, -- 使用此项所需的帮派声望,设置为 0 以禁用所需声望。
prop = 'prop_money_bag_01',
},
= {
icon = 'gun',
notoriety = 600, -- 使用此项所需的帮派声望,设置为 0 以禁用所需声望。
weapons = {'WEAPON_PISTOL', 'WEAPON_COMBATPISTOL', 'WEAPON_PISTOL50', 'WEAPON_SNSPISTOL', 'WEAPON_HEAVYPISTOL', 'WEAPON_APPISTOL', 'WEAPON_PISTOL_MK2', 'WEAPON_MACHINEPISTOL' }, -- 用于劫持的武器
anim = {
= {lib = 'anim@gangops@hostage@', name = {'perp_idle', 'victim_idle', 'perp_fail', 'victim_fail'}},
= {lib = 'reaction@shove', name = {'shove_var_a', 'shoved_back'}},
}, -- 动画库和名称
pos = {x = -0.24, y = 0.11, z = 0.0}, -- 劫持者的动画位置
rot = {x = 0.5, y = 0.5, z = 0.0}, -- 劫持者的动画旋转
},
},
},
DrugSale = {
Enable = true, -- 如果使用你自己的毒品销售机制,则设置为 false,确保添加导出以检查毒品区域。
AllowGangsOnly = true, -- 设置为 true 只允许帮派成员出售毒品。
RequiredPolice = 0, -- 出售毒品给 NPC 所需的在线警察数量。
BlackMoney = {enable = true, account = 'black_money'}, -- 启用并设置账户使用非正常现金。
Blacklisted = { -- 被禁止的 NPC 模型用于出售;
's_m_y_cop_01', 's_m_y_dealer_01', 'mp_m_shopkeep_01', 's_m_y_xmech_02_mp', 'mp_m_weed_01', 'ig_chef', 'g_m_m_casrn_01'
},
Distance = 2.0, -- 与目标/互动 NPC 的距离。
Cooldown = 3, -- 每次毒品销售之间的冷却时间(秒)。
Anims = {
= {dict = 'mp_common', name = 'givetake2_a'},
= {dict = 'cellphone@', name = 'cellphone_call_listen_base'},
},
Notoriety = {
rejected = 1, -- 被拒绝的销售所得的扣分(仅当 NPC 报警时)。
maxSellPriceBonus = true, -- 如果单位销售价格等于毒品的最高售价,将增加 1 分声望点。
requiredSales = 5, -- 在达到要求的销售数量之前,不增加声望点(以防止在磨坊上每次销售时增加点数)
accepted = 1, -- 在满足要求销售数量时增加的销售额的分声望点。
},
Items = {
-- 毒品物品:
{
itemKey = 4, -- Config.Items
sell = {
price = {min = 700, max = 1100}, -- 最低和最高的基本售价
amount = {min = 1, max = 20}, -- 随机销售数量,在最小和最大之间。
chance = 50 -- 将此毒品卖给 NPC 的概率(%)。
},
report = {
chance = 100, -- NPC 在失败的毒品销售上报警的概率(%)。
timer = 5 -- 为了防止报警,殴打 NPC 的时间(秒)。
},
policeBonus = {
enable = true, -- 启用毒品销售的警察奖励。
required = 3, -- 申请警察奖励所需的警察数量
percentage = 10 -- 在单位售价基础上增加的百分比。如果价格为 $800 + 10%,则为 $880
},
streetBonus = {
enable = true, -- 启用街道奖金出售此物品。
streets = { -- 添加街道和奖金的百分比。符合资格的街道奖金 % 将加到单位售价上。
= 25,
= 30,
= 15,
= 20,
-- 添加、删除或编辑街道。
}
}
},
-- 毒品物品:
{
itemKey = 5, -- Config.Items
sell = {
price = {min = 500, max = 800}, -- 最低和最高的基本售价
amount = {min = 1, max = 15}, -- 随机销售数量,在最小和最大之间。
chance = 60 -- 将此毒品卖给 NPC 的概率(%)。
},
report = {
chance = 80, -- NPC 在失败的毒品销售上报警的概率(%)。
timer = 5 -- 为了防止报警,殴打 NPC 的时间(秒)。
},
policeBonus = {
enable = true, -- 启用毒品销售的警察奖励。
required = 3, -- 申请警察奖励所需的警察数量
percentage = 10 -- 在单位售价基础上增加的百分比。如果价格为 $800 + 10%,则为 $880
},
streetBonus = {
enable = true, -- 启用街道奖金出售此物品。
streets = { -- 添加街道和奖金的百分比。符合资格的街道奖金 % 将加到单位售价上。
= 25,
= 30,
= 15,
-- 添加、删除或编辑街道。
}
}
},
-- 毒品物品:
{
itemKey = 6, -- Config.Items
sell = {
price = {min = 150, max = 400}, -- 最低和最高的基本售价
amount = {min = 1, max = 10}, -- 随机销售数量,在最小和最大之间。
chance = 80 -- 将此毒品卖给 NPC 的概率(%)。
},
report = {
chance = 50, -- NPC 在失败的毒品销售上报警的概率(%)。
timer = 5 -- 为了防止报警,殴打 NPC 的时间(秒)。
},
policeBonus = {
enable = true, -- 启用毒品销售的警察奖励。
required = 3, -- 申请警察奖励所需的警察数量
percentage = 10 -- 在单位售价基础上增加的百分比。如果价格为 $800 + 10%,则为 $880
},
streetBonus = {
enable = true, -- 启用街道奖金出售此物品。
streets = { -- 添加街道和奖金的百分比。符合资格的街道奖金 % 将加到单位售价上。
= 30,
= 25,
= 20,
= 15,
-- 添加、删除或编辑街道。
}
}
},
-- 毒品物品:如有需要请在这里添加更多,将上面的表格复制粘贴过来。确保在 Config.lua 的顶部也添加 itemKey。
},
},
ContractNPC = {
Model = 'g_m_m_casrn_01', -- 合同 NPC 的模型
Pos = vector4(-1119.84, -1097.26, 2.15, 171.74), -- NPC 的位置
Scenario = 'WORLD_HUMAN_AA_SMOKE', -- NPC 的场景
InteractDist = 1.5, -- 与 NPC 交互的距离。
Blip = {enable = true, name = '合同 NPC', sprite = 671, display = 4, scale = 0.65, color = 5}, -- NPC 的 Blip 设置
},
Rackets = {
= {
label = '保护勒索',
icon = 'shield',
claimed = false, -- 不要触碰!
gang = nil, -- 不要触碰!
cost = 100, -- 索取勒索所需的名声点数。
data = {
keybind = 38, -- 收集/请求保护费的快捷键
timer = 30, -- 请求收集的时间(分钟)。
cash = {min = 2000, max = 10000},
marker = {type = 29, size = {x = 0.35, y = 0.35, z = 0.35}, color = {r = 38, g = 194, b = 129, a = 100}, faceCamera = true, bobUpAndDown = true},
notoriety = 1, -- 收集保护费时增加的名声点数。
shops = {
= {
coords = vector3(-41.83, -1749.36, 29.41),
cache = {}, -- 不要触碰!
},
= {
coords = vector3(138.30, -1704.36, 29.27),
cache = {}, -- 不要触碰!
},
},
},
},
= {
label = '卖淫勒索',
icon = 'person-dress',
claimed = false, -- 不要触碰!
gang = nil, -- 不要触碰!
cost = 100, -- 索取勒索所需的名声点数。
data = {
peds = {'s_f_y_hooker_01', 's_f_y_hooker_02', 's_f_y_hooker_03', 's_f_y_stripper_01', 's_f_y_stripper_02'},
damagePercentage = 20.0, -- 如果车辆引擎损坏超过 20%,取消工作。例如:引擎在接送时为 800,交付过程中引擎变为 639,则工作取消。
notoriety = 1, -- 工作完成时增加的名声点数。
jobs = {
= {
pickup = vector4(507.58, -1875.87, 25.97, 116.22),
dropoff = vector3(-13.87, -1847.35, 24.81),
cash = {min = 100, max = 500},
},
= {
pickup = vector4(31.09,-1868.86, 22.94, 136.06),
dropoff = vector3(473.60, -1583.51, 29.09),
cash = {min = 100, max = 500},
},
},
},
},
},
}
优化服务器资源方面给个建议 jdhd 发表于 2025-06-21 17:22
优化服务器资源方面给个建议
优化服务器资源的一些建议包括:
1. **使用高效的代码实践**:
- 尽量避免使用过于复杂的循环和条件判断。
- 使用适当的数据结构,如表(table)来提高查找效率。
2. **减少不必要的事件监听**:
- 只为玩家注册需要的事件,在不需要时进行注销,避免事件处理的负担。
3. **控制服务器 tickrate**:
- 调整服务器的 tickrate,适当降低 tickrate 可以减少 CPU 的使用,但需确保不会影响游戏体验。
4. **合理使用数据库**:
- 减少频繁的数据库查询,可以通过缓存机制来存储常用数据。
- 批量处理数据库操作,避免逐条提交。
5. **优化网络流量**:
- 减少不必要的网络数据传输,比如只在必要时发送数据给客户端。
- 合并多个网络请求,减少请求次数。
6. **清理无用资源**:
- 定期检查和删除不再使用的脚本、模型和资源,保持服务器的整洁。
7. **使用协程**:
- 在可行的情况下利用协程(coroutines)来异步处理任务,以减轻主线程的负担。
8. **分布式服务器架构**:
- 考虑使用多台服务器来分散负载,尤其是大型服务器或拥有大量玩家的情况。
9. **监控和分析性能**:
- 定期使用性能监控工具来分析服务器资源的使用情况,找到瓶颈并进行优化。
10. **限制玩家数目**:
- 在游戏中设置合适的玩家数量上限,以保证服务器性能不会过载。
通过以上建议,您可以有效管理服务器资源,提高 FiveM 服务器的性能和稳定性。 Config.Businesses = {
['GLOBE_OIL_DTVINE'] = {
name = 'GLOBE_OIL_DTVINE',
label = 'Globe Oil, Downtown Vinewood',
banner = 'shopui_title_gasstation',
zone = 'DTVINE',
hourlyIncome = 70,
checkpoint = vec3(645.64, 267.62, 103.23)
},
['XERO_GAS_KOREAT'] = {
name = 'XERO_GAS_KOREAT',
label = 'Xero Gas, Little Seoul',
banner = 'shopui_title_gasstation',
zone = 'KOREAT',
hourlyIncome = 90,
checkpoint = vec3(-531.24, -1220.81, 18.45)
},
['XERO_GAS_STRAW'] = {
name = 'XERO_GAS_STRAW',
label = 'Xero Gas, Strawberry',
banner = 'shopui_title_gasstation',
zone = 'STRAW',
hourlyIncome = 25,
checkpoint = vec3(288.69, -1266.93, 29.44)
},
['XERO_GAS_SANDY'] = {
name = 'XERO_GAS_SANDY',
label = 'Xero Gas, Sandy Shores',
banner = 'shopui_title_gasstation',
zone = 'SANDY',
hourlyIncome = 20,
checkpoint = vec3(2001.76, 3779.31, 32.18)
},
['XERO_GAS_PALETO'] = {
name = 'XERO_GAS_PALETO',
label = 'Xero Gas, Paleto Bay',
banner = 'shopui_title_gasstation',
zone = 'PALETO',
hourlyIncome = 18,
checkpoint = vec3(-93.18, 6410.32, 31.64)
},
['LTD_KOREAT'] = {
name = 'LTD_KOREAT',
label = 'LTD, Little Seoul',
banner = 'shopui_title_gasstation',
zone = 'KOREAT',
hourlyIncome = 100,
checkpoint = vec3(-709.26, -905.42, 19.22)
},
['LTD_DAVIS'] = {
name = 'LTD_DAVIS',
label = 'LTD, Davis',
banner = 'shopui_title_gasstation',
zone = 'DAVIS',
hourlyIncome = 38,
checkpoint = vec3(-43.89, -1749.65, 29.42)
},
['LTD_MIRR'] = {
name = 'LTD_MIRR',
label = 'LTD, Mirror Park',
banner = 'shopui_title_gasstation',
zone = 'MIRR',
hourlyIncome = 22,
checkpoint = vec3(1160.19, -315.20, 69.22)
},
['LTD_GRAPES'] = {
name = 'LTD_GRAPES',
label = 'LTD, Grapeseed',
banner = 'shopui_title_gasstation',
zone = 'GRAPES',
hourlyIncome = 10,
checkpoint = vec3(1706.59, 4920.77, 42.06)
},
['RON_MORN'] = {
name = 'RON_MORN',
label = 'Ron, Morningwood',
banner = 'shopui_title_gasstation',
zone = 'MORN',
hourlyIncome = 50,
checkpoint = vec3(-1428.70, -268.84, 46.21)
},
['RON_DAVIS'] = {
name = 'RON_DAVIS',
label = 'Ron, Davis',
banner = 'shopui_title_gasstation',
zone = 'DAVIS',
hourlyIncome = 35,
checkpoint = vec3(167.32, -1553.84, 29.26)
},
['RON_LMESA'] = {
name = 'RON_LMESA',
label = 'Ron, La Mesa',
banner = 'shopui_title_gasstation',
zone = 'LMESA',
hourlyIncome = 30,
checkpoint = vec3(818.17, -1040.34, 26.75)
},
['RON_EBURO'] = {
name = 'RON_EBURO',
label = 'Ron, El Burro Heights',
banner = 'shopui_title_gasstation',
zone = 'EBURO',
hourlyIncome = 25,
checkpoint = vec3(1211.19, -1389.48, 35.38)
},
['RON_PALETO'] = {
name = 'RON_PALETO',
label = 'Ron, Paleto Bay',
banner = 'shopui_title_gasstation',
zone = 'PALETO',
hourlyIncome = 22,
checkpoint = vec3(161.74, 6636.23, 31.57)
},
['ROB_LIQUOR_MORN'] = {
name = 'ROB_LIQUOR_MORN',
label = 'Rob\'s Liquor, Morningwoord',
banner = 'shopui_title_liquorstore2',
zone = 'MORN',
hourlyIncome = 33,
checkpoint = vec3(-1479.83, -373.27, 39.16)
},
['ROB_LIQUOR_VCANA'] = {
name = 'ROB_LIQUOR_VCANA',
label = 'Rob\'s Liquor, Vespucci Canals',
banner = 'shopui_title_liquorstore2',
zone = 'VCANA',
hourlyIncome = 22,
checkpoint = vec3(-1218.73, -915.63, 11.33)
},
['247_DTVINE'] = {
name = '247_DTVINE',
label = '24/7, Downtown Vinewood',
banner = 'shopui_title_conveniencestore',
zone = 'DTVINE',
hourlyIncome = 46,
checkpoint = vec3(379.25, 332.62, 103.57)
},
['247_STRAW'] = {
name = '247_STRAW',
label = '24/7, Strawberry',
banner = 'shopui_title_conveniencestore',
zone = 'STRAW',
hourlyIncome = 15,
checkpoint = vec3(29.45, -1339.67, 29.50)
},
['247_SANDY'] = {
name = '247_SANDY',
label = '24/7, Sandy Shores',
banner = 'shopui_title_conveniencestore',
zone = 'SANDY',
hourlyIncome = 13,
checkpoint = vec3(1960.58, 3749.12, 32.34)
},
['AMMO_KOREAT'] = {
name = 'AMMO_KOREAT',
label = 'Ammu-Nation, Little Seoul',
banner = 'shopui_title_gunclub',
zone = 'KOREAT',
hourlyIncome = 80,
checkpoint = vec3(-666.12, -933.69, 21.83)
},
['AMMO_HAWICK'] = {
name = 'AMMO_HAWICK',
label = 'Ammu-Nation, Hawick',
banner = 'shopui_title_gunclub',
zone = 'HAWICK',
hourlyIncome = 75,
checkpoint = vec3(255.02, -46.89, 69.94)
},
['AMMO_PBOX'] = {
name = 'AMMO_PBOX',
label = 'Ammu-Nation, Pillbox Hill',
banner = 'shopui_title_gunclub',
zone = 'PBOX',
hourlyIncome = 45,
checkpoint = vec3(18.94, -1104.31, 29.80)
},
['AMMO_MORN'] = {
name = 'AMMO_MORN',
label = 'Ammu-Nation, Morningwood',
banner = 'shopui_title_gunclub',
zone = 'MORN',
hourlyIncome = 30,
checkpoint = vec3(-1303.30, -390.89, 36.70)
},
['AMMO_LMESA'] = {
name = 'AMMO_LMESA',
label = 'Ammu-Nation, La Mesa',
banner = 'shopui_title_gunclub',
zone = 'LMESA',
hourlyIncome = 22,
checkpoint = vec3(846.25, -1035.176, 28.26)
},
['AMMO_CYPRE'] = {
name = 'AMMO_CYPRE',
label = 'Ammu-Nation, Cypress Flats',
banner = 'shopui_title_gunclub',
zone = 'CYPRE',
hourlyIncome = 20,
checkpoint = vec3(814.06, -2158.91, 29.62)
},
['AMMO_SANDY'] = {
name = 'AMMO_SANDY',
label = 'Ammu-Nation, Sandy Shores',
banner = 'shopui_title_gunclub',
zone = 'SANDY',
hourlyIncome = 13,
checkpoint = vec3(1689.75, 3758.06, 34.71)
},
['AMMO_PALETO'] = {
name = 'AMMO_PALETO',
label = 'Ammu-Nation, Paleto Bay',
banner = 'shopui_title_gunclub',
zone = 'PALETO',
hourlyIncome = 12,
checkpoint = vec3(-334.26, 6082.17, 31.45)
},
['SECOND_HAND_STRAW'] = {
name = 'SECOND_HAND_STRAW',
label = 'Second Hand, Strawberry',
banner = 'shopui_title_lowendfashion',
zone = 'STRAW',
hourlyIncome = 15,
checkpoint = vec3(71.64, -1391.20, 29.38)
},
['SECOND_HAND_PALETO'] = {
name = 'SECOND_HAND_PALETO',
label = 'Second Hand, Paleto Bay',
banner = 'shopui_title_lowendfashion',
zone = 'PALETO',
hourlyIncome = 10,
checkpoint = vec3(6.23, 6508.64, 31.88)
},
['SECOND_HAND_GRAPES'] = {
name = 'SECOND_HAND_GRAPES',
label = 'Second Hand, Grapeseed',
banner = 'shopui_title_lowendfashion',
zone = 'GRAPES',
hourlyIncome = 8,
checkpoint = vec3(1697.77, 4821.64, 42.06)
},
['SUBURBAN_ALTA'] = {
name = 'SUBURBAN_ALTA',
label = 'Suburban, Alta',
banner = 'shopui_title_midfashion',
zone = 'ALTA',
hourlyIncome = 78,
checkpoint = vec3(117.67, -233.88, 54.56)
},
['SUBURBAN_MOVIE'] = {
name = 'SUBURBAN_MOVIE',
label = 'Suburban, Richards Majestic',
banner = 'shopui_title_midfashion',
zone = 'MOVIE',
hourlyIncome = 50,
checkpoint = vec3(-1180.83, -764.08, 17.33)
},
['PONSON_ROCKF'] = {
name = 'PONSON_ROCKF',
label = 'Ponsonbys, Rockford Hills',
banner = 'shopui_title_highendfashion',
zone = 'ROCKF',
hourlyIncome = 50,
checkpoint = vec3(-700.60, -151.85, 37.42)
},
['PONSON_MORN'] = {
name = 'PONSON_MORN',
label = 'Ponsonbys, Morningwood',
banner = 'shopui_title_highendfashion',
zone = 'MORN',
hourlyIncome = 37,
checkpoint = vec3(-1446.40, -246.05, 49.82)
},
['PONSON_BURTON'] = {
name = 'PONSON_BURTON',
label = 'Ponsonbys, Burton',
banner = 'shopui_title_highendfashion',
zone = 'BURTON',
hourlyIncome = 25,
checkpoint = vec3(-170.50, -296.60, 39.73)
},
['BINCO_VCANA'] = {
name = 'BINCO_VCANA',
label = 'Binco, Vespucci Canals',
banner = 'shopui_title_lowendfashion2',
zone = 'VCANA',
hourlyIncome = 45,
checkpoint = vec3(-822.83, -1069.55, 11.33)
},
['BINCO_TEXTI'] = {
name = 'BINCO_TEXTI',
label = 'Binco, Textile City',
banner = 'shopui_title_lowendfashion2',
zone = 'TEXTI',
hourlyIncome = 37,
checkpoint = vec3(429.27, -807.85, 29.49)
},
['BARBER_ROCKF'] = {
name = 'BARBER_ROCKF',
label = 'Bob Mulét, Rockford Hills',
banner = 'shopui_title_highendsalon',
zone = 'ROCKF',
hourlyIncome = 80,
checkpoint = vec3(-808.94, -180.04, 37.57)
},
['BARBER_VESP'] = {
name = 'BARBER_VESP',
label = 'Beachcombover Barbers, Vespucci',
banner = 'shopui_title_barber2',
zone = 'VESP',
hourlyIncome = 40,
checkpoint = vec3(-1278.78, -1119.22, 6.99)
},
['BARBER_HAWICK'] = {
name = 'BARBER_HAWICK',
label = 'Hair on Hawick, Hawick',
banner = 'shopui_title_barber4',
zone = 'HAWICK',
hourlyIncome = 35,
checkpoint = vec3(-36.33, -155.71, 57.08)
},
['BARBER_DAVIS'] = {
name = 'BARBER_DAVIS',
label = 'Herr Kutz Barber, Davis',
banner = 'shopui_title_barber',
zone = 'DAVIS',
hourlyIncome = 32,
checkpoint = vec3(141.14, -1706.17, 29.29)
},
['BARBER_MIRR'] = {
name = 'BARBER_MIRR',
label = 'Herr Kutz Barber, Mirror Park',
banner = 'shopui_title_barber',
zone = 'MIRR',
hourlyIncome = 28,
checkpoint = vec3(1215.86, -475.74, 66.21)
},
['BARBER_PALETO'] = {
name = 'BARBER_PALETO',
label = 'Herr Kutz Barber, Paleto Bay',
banner = 'shopui_title_barber',
zone = 'PALETO',
hourlyIncome = 9,
checkpoint = vec3(-276.55, 6223.67, 31.70)
},
['BARBER_SANDY'] = {
name = 'BARBER_SANDY',
label = 'O\'Sheas Barbers, Sandy Shores',
banner = 'shopui_title_barber3',
zone = 'SANDY',
hourlyIncome = 8,
checkpoint = vec3(1931.28, 3735.05, 32.84)
},
['TATTOO_DTVINE'] = {
name = 'TATTOO_DTVINE',
label = 'Blazing Tattoo, Downtown Vinewood',
banner = 'shopui_title_tattoos',
zone = 'DTVINE',
hourlyIncome = 23,
checkpoint = vec3(320.78, 183.50, 103.59)
},
['TATTOO_VCANA'] = {
name = 'TATTOO_VCANA',
label = 'The Pit, Vespucci Canals',
banner = 'shopui_title_tattoos3',
zone = 'VCANA',
hourlyIncome = 20,
checkpoint = vec3(-1150.63, -1426.09, 4.95)
},
['TATTOO_EBURO'] = {
name = 'TATTOO_EBURO',
label = 'Los Santos Tattoos, El Burro Heights',
banner = 'shopui_title_tattoos4',
zone = 'EBURO',
hourlyIncome = 18,
checkpoint = vec3(1326.30, -1652.38, 52.28)
},
['TATTOO_SANDY'] = {
name = 'TATTOO_SANDY',
label = 'Tattoo Body Art & Piercing, Sandy Shores',
banner = 'shopui_title_tattoos2',
zone = 'SANDY',
hourlyIncome = 7,
checkpoint = vec3(1865.21, 3749.04, 33.05)
}
}
汉化不修改源代码 jdhd 发表于 2025-07-20 13:35
Config.Businesses = {
= {
name = 'GLO ...
Config.Businesses = {
= {
name = 'GLOBE_OIL_DTVINE', -- 名称
label = 'Globe Oil, Downtown Vinewood', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'DTVINE', -- 区域
hourlyIncome = 70, -- 每小时收入
checkpoint = vec3(645.64, 267.62, 103.23) -- 检查点位置
},
= {
name = 'XERO_GAS_KOREAT', -- 名称
label = 'Xero Gas, Little Seoul', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'KOREAT', -- 区域
hourlyIncome = 90, -- 每小时收入
checkpoint = vec3(-531.24, -1220.81, 18.45) -- 检查点位置
},
= {
name = 'XERO_GAS_STRAW', -- 名称
label = 'Xero Gas, Strawberry', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'STRAW', -- 区域
hourlyIncome = 25, -- 每小时收入
checkpoint = vec3(288.69, -1266.93, 29.44) -- 检查点位置
},
= {
name = 'XERO_GAS_SANDY', -- 名称
label = 'Xero Gas, Sandy Shores', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'SANDY', -- 区域
hourlyIncome = 20, -- 每小时收入
checkpoint = vec3(2001.76, 3779.31, 32.18) -- 检查点位置
},
= {
name = 'XERO_GAS_PALETO', -- 名称
label = 'Xero Gas, Paleto Bay', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'PALETO', -- 区域
hourlyIncome = 18, -- 每小时收入
checkpoint = vec3(-93.18, 6410.32, 31.64) -- 检查点位置
},
= {
name = 'LTD_KOREAT', -- 名称
label = 'LTD, Little Seoul', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'KOREAT', -- 区域
hourlyIncome = 100, -- 每小时收入
checkpoint = vec3(-709.26, -905.42, 19.22) -- 检查点位置
},
= {
name = 'LTD_DAVIS', -- 名称
label = 'LTD, Davis', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'DAVIS', -- 区域
hourlyIncome = 38, -- 每小时收入
checkpoint = vec3(-43.89, -1749.65, 29.42) -- 检查点位置
},
= {
name = 'LTD_MIRR', -- 名称
label = 'LTD, Mirror Park', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'MIRR', -- 区域
hourlyIncome = 22, -- 每小时收入
checkpoint = vec3(1160.19, -315.20, 69.22) -- 检查点位置
},
= {
name = 'LTD_GRAPES', -- 名称
label = 'LTD, Grapeseed', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'GRAPES', -- 区域
hourlyIncome = 10, -- 每小时收入
checkpoint = vec3(1706.59, 4920.77, 42.06) -- 检查点位置
},
= {
name = 'RON_MORN', -- 名称
label = 'Ron, Morningwood', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'MORN', -- 区域
hourlyIncome = 50, -- 每小时收入
checkpoint = vec3(-1428.70, -268.84, 46.21) -- 检查点位置
},
= {
name = 'RON_DAVIS', -- 名称
label = 'Ron, Davis', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'DAVIS', -- 区域
hourlyIncome = 35, -- 每小时收入
checkpoint = vec3(167.32, -1553.84, 29.26) -- 检查点位置
},
= {
name = 'RON_LMESA', -- 名称
label = 'Ron, La Mesa', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'LMESA', -- 区域
hourlyIncome = 30, -- 每小时收入
checkpoint = vec3(818.17, -1040.34, 26.75) -- 检查点位置
},
= {
name = 'RON_EBURO', -- 名称
label = 'Ron, El Burro Heights', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'EBURO', -- 区域
hourlyIncome = 25, -- 每小时收入
checkpoint = vec3(1211.19, -1389.48, 35.38) -- 检查点位置
},
= {
name = 'RON_PALETO', -- 名称
label = 'Ron, Paleto Bay', -- 标签
banner = 'shopui_title_gasstation', -- 横幅
zone = 'PALETO', -- 区域
hourlyIncome = 22, -- 每小时收入
checkpoint = vec3(161.74, 6636.23, 31.57) -- 检查点位置
},
= {
name = 'ROB_LIQUOR_MORN', -- 名称
label = 'Rob\'s Liquor, Morningwoord', -- 标签
banner = 'shopui_title_liquorstore2', -- 横幅
zone = 'MORN', -- 区域
hourlyIncome = 33, -- 每小时收入
checkpoint = vec3(-1479.83, -373.27, 39.16) -- 检查点位置
},
= {
name = 'ROB_LIQUOR_VCANA', -- 名称
label = 'Rob\'s Liquor, Vespucci Canals', -- 标签
banner = 'shopui_title_liquorstore2', -- 横幅
zone = 'VCANA', -- 区域
hourlyIncome = 22, -- 每小时收入
checkpoint = vec3(-1218.73, -915.63, 11.33) -- 检查点位置
},
= {
name = '247_DTVINE', -- 名称
label = '24/7, Downtown Vinewood', -- 标签
banner = 'shopui_title_conveniencestore', -- 横幅
zone = 'DTVINE', -- 区域
hourlyIncome = 46, -- 每小时收入
checkpoint = vec3(379.25, 332.62, 103.57) -- 检查点位置
},
= {
name = '247_STRAW', -- 名称
label = '24/7, Strawberry', -- 标签
banner = 'shopui_title_conveniencestore', -- 横幅
zone = 'STRAW', -- 区域
hourlyIncome = 15, -- 每小时收入
checkpoint = vec3(29.45, -1339.67, 29.50) -- 检查点位置
},
= {
name = '247_SANDY', -- 名称
label = '24/7, Sandy Shores', -- 标签
banner = 'shopui_title_conveniencestore', -- 横幅
zone = 'SANDY', -- 区域
hourlyIncome = 13, -- 每小时收入
checkpoint = vec3(1960.58, 3749.12, 32.34) -- 检查点位置
},
= {
name = 'AMMO_KOREAT', -- 名称
label = 'Ammu-Nation, Little Seoul', -- 标签
banner = 'shopui_title_gunclub', -- 横幅
zone = 'KOREAT', -- 区域
hourlyIncome = 80, -- 每小时收入
checkpoint = vec3(-666.12, -933.69, 21.83) -- 检查点位置
},
= {
name = 'AMMO_HAWICK', -- 名称
label = 'Ammu-Nation, Hawick', -- 标签
banner = 'shopui_title_gunclub', -- 横幅
zone = 'HAWICK', -- 区域
hourlyIncome = 75, -- 每小时收入
checkpoint = vec3(255.02, -46.89, 69.94) -- 检查点位置
},
= {
name = 'AMMO_PBOX', -- 名称
label = 'Ammu-Nation, Pillbox Hill', -- 标签
banner = 'shopui_title_gunclub', -- 横幅
zone = 'PBOX', -- 区域
hourlyIncome = 45, -- 每小时收入
checkpoint = vec3(18.94, -1104.31, 29.80) -- 检查点位置
},
= {
name = 'AMMO_MORN', -- 名称
label = 'Ammu-Nation, Morningwood', -- 标签
banner = 'shopui_title_gunclub', -- 横幅
zone = 'MORN', -- 区域
hourlyIncome = 30, -- 每小时收入
checkpoint = vec3(-1303.30, -390.89, 36.70) -- 检查点位置
},
= {
name = 'AMMO_LMESA', -- 名称
label = 'Ammu-Nation, La Mesa', -- 标签
banner = 'shopui_title_gunclub', -- 横幅
zone = 'LMESA', -- 区域
hourlyIncome = 22, -- 每小时收入
checkpoint = vec3(846.25, -1035.176, 28.26) -- 检查点位置
},
= {
name = 'AMMO_CYPRE', -- 名称
label = 'Ammu-Nation, Cypress Flats', -- 标签
banner = 'shopui_title_gunclub', -- 横幅
zone = 'CYPRE', -- 区域
hourlyIncome = 20, -- 每小时收入
checkpoint = vec3(814.06, -2158.91, 29.62) -- 检查点位置
},
= {
name = 'AMMO_SANDY', -- 名称
label = 'Ammu-Nation, Sandy Shores', -- 标签
banner = 'shopui_title_gunclub', -- 横幅
zone = 'SANDY', -- 区域
hourlyIncome = 13, -- 每小时收入
checkpoint = vec3(1689.75, 3758.06, 34.71) -- 检查点位置
},
= {
name = 'AMMO_PALETO', -- 名称
label = 'Ammu-Nation, Paleto Bay', -- 标签
banner = 'shopui_title_gunclub', -- 横幅
zone = 'PALETO', -- 区域
hourlyIncome = 12, -- 每小时收入
checkpoint = vec3(-334.26, 6082.17, 31.45) -- 检查点位置
},
= {
name = 'SECOND_HAND_STRAW', -- 名称
label = 'Second Hand, Strawberry', -- 标签
banner = 'shopui_title_lowendfashion', -- 横幅
zone = 'STRAW', -- 区域
hourlyIncome = 15, -- 每小时收入
checkpoint = vec3(71.64, -1391.20, 29.38) -- 检查点位置
},
= {
name = 'SECOND_HAND_PALETO', -- 名称
label = 'Second Hand, Paleto Bay', -- 标签
banner = 'shopui_title_lowendfashion', -- 横幅
zone = 'PALETO', -- 区域
hourlyIncome = 10, -- 每小时收入
checkpoint = vec3(6.23, 6508.64, 31.88) -- 检查点位置
},
= {
name = 'SECOND_HAND_GRAPES', -- 名称
label = 'Second Hand, Grapeseed', -- 标签
banner = 'shopui_title_lowendfashion', -- 横幅
zone = 'GRAPES', -- 区域
hourlyIncome = 8, -- 每小时收入
checkpoint = vec3(1697.77, 4821.64, 42.06) -- 检查点位置
},
= {
name = 'SUBURBAN_ALTA', -- 名称
label = 'Suburban, Alta', -- 标签
banner = 'shopui_title_midfashion', -- 横幅
zone = 'ALTA', -- 区域
hourlyIncome = 78, -- 每小时收入
checkpoint = vec3(117.67, -233.88, 54.56) -- 检查点位置
},
= {
name = 'SUBURBAN_MOVIE', -- 名称
label = 'Suburban, Richards Majestic', -- 标签
banner = 'shopui_title_midfashion', -- 横幅
zone = 'MOVIE', -- 区域
hourlyIncome = 50, -- 每小时收入
checkpoint = vec3(-1180.83, -764.08, 17.33) -- 检查点位置
},
= {
name = 'PONSON_ROCKF', -- 名称
label = 'Ponsonbys, Rockford Hills', -- 标签
banner = 'shopui_title_highendfashion', -- 横幅
zone = 'ROCKF', -- 区域
hourlyIncome = 50, -- 每小时收入
checkpoint = vec3(-700.60, -151.85, 37.42) -- 检查点位置
},
= {
name = 'PONSON_MORN', -- 名称
label = 'Ponsonbys, Morningwood', -- 标签
banner = 'shopui_title_highendfashion', -- 横幅
zone = 'MORN', -- 区域
hourlyIncome = 37, -- 每小时收入
checkpoint = vec3(-1446.40, -246.05, 49.82) -- 检查点位置
},
= {
name = 'PONSON_BURTON', -- 名称
label = 'Ponsonbys, Burton', -- 标签
banner = 'shopui_title_highendfashion', -- 横幅
zone = 'BURTON', -- 区域
hourlyIncome = 25, -- 每小时收入
checkpoint = vec3(-170.50, -296.60, 39.73) -- 检查点位置
},
= {
name = 'BINCO_VCANA', -- 名称
label = 'Binco, Vespucci Canals', -- 标签
banner = 'shopui_title_lowendfashion2', -- 横幅
zone = 'VCANA', -- 区域
hourlyIncome = 45, -- 每小时收入
checkpoint = vec3(-822.83, -1069.55, 11.33) -- 检查点位置
},
= {
name = 'BINCO_TEXTI', -- 名称
label = 'Binco, Textile City', -- 标签
banner = 'shopui_title_lowendfashion2', -- 横幅
zone = 'TEXTI', -- 区域
hourlyIncome = 37, -- 每小时收入
checkpoint = vec3(429.27, -807.85, 29.49) -- 检查点位置
},
= {
name = 'BARBER_ROCKF', -- 名称
label = 'Bob Mulét, Rockford Hills', -- 标签
banner = 'shopui_title_highendsalon', -- 横幅
zone = 'ROCKF', -- 区域
hourlyIncome = 80, -- 每小时收入
checkpoint = vec3(-808.94, -180.04, 37.57) -- 检查点位置
},
= {
name = 'BARBER_VESP', -- 名称
label = 'Beachcombover Barbers, Vespucci', -- 标签
banner = 'shopui_title_barber2', -- 横幅
zone = 'VESP', -- 区域
hourlyIncome = 40, -- 每小时收入
checkpoint = vec3(-1278.78, -1119.22, 6.99) -- 检查点位置
},
= {
name = 'BARBER_HAWICK', -- 名称
label = 'Hair on Hawick, Hawick', -- 标签
banner = 'shopui_title_barber4', -- 横幅
zone = 'HAWICK', -- 区域
hourlyIncome = 35, -- 每小时收入
checkpoint = vec3(-36.33, -155.71, 57.08) -- 检查点位置
},
= {
name = 'BARBER_DAVIS', -- 名称
label = 'Herr Kutz Barber, Davis', -- 标签
banner = 'shopui_title_barber', -- 横幅
zone = 'DAVIS', -- 区域
hourlyIncome = 32, -- 每小时收入
checkpoint = vec3(141.14, -1706.17, 29.29) -- 检查点位置
},
= {
name = 'BARBER_MIRR', -- 名称
label = 'Herr Kutz Barber, Mirror Park', -- 标签
banner = 'shopui_title_barber', -- 横幅
zone = 'MIRR', -- 区域
hourlyIncome = 28, -- 每小时收入
checkpoint = vec3(1215.86, -475.74, 66.21) -- 检查点位置
},
= {
name = 'BARBER_PALETO', -- 名称
label = 'Herr Kutz Barber, Paleto Bay', -- 标签
banner = 'shopui_title_barber', -- 横幅
zone = 'PALETO', -- 区域
hourlyIncome = 9, -- 每小时收入
checkpoint = vec3(-276.55, 6223.67, 31.70) -- 检查点位置
},
= {
name = 'BARBER_SANDY', -- 名称
label = 'O\'Sheas Barbers, Sandy Shores', -- 标签
banner = 'shopui_title_barber3', -- 横幅
zone = 'SANDY', -- 区域
hourlyIncome = 8, -- 每小时收入
checkpoint = vec3(1931.28, 3735.05, 32.84) -- 检查点位置
},
= {
name = 'TATTOO_DTVINE', -- 名称
label = 'Blazing Tattoo, Downtown Vinewood', -- 标签
banner = 'shopui_title_tattoos', -- 横幅
zone = 'DTVINE', -- 区域
hourlyIncome = 23, -- 每小时收入
checkpoint = vec3(320.78, 183.50, 103.59) -- 检查点位置
},
= {
name = 'TATTOO_VCANA', -- 名称
label = 'The Pit, Vespucci Canals', -- 标签
banner = 'shopui_title_tattoos3', -- 横幅
zone = 'VCANA', -- 区域
hourlyIncome = 20, -- 每小时收入
checkpoint = vec3(-1150.63, -1426.09, 4.95) -- 检查点位置
},
= {
name = 'TATTOO_EBURO', -- 名称
label = 'Los Santos Tattoos, El Burro Heights', -- 标签
banner = 'shopui_title_tattoos4', -- 横幅
zone = 'EBURO', -- 区域
hourlyIncome = 18, -- 每小时收入
checkpoint = vec3(1326.30, -1652.38, 52.28) -- 检查点位置
},
= {
name = 'TATTOO_SANDY', -- 名称
label = 'Tattoo Body Art & Piercing, Sandy Shores', -- 标签
banner = 'shopui_title_tattoos2', -- 横幅
zone = 'SANDY', -- 区域
hourlyIncome = 7, -- 每小时收入
checkpoint = vec3(1865.21, 3749.04, 33.05) -- 检查点位置
}
}
页:
[1]