dobrograd-13-06-2022/garrysmod/addons/_config/lua/config/groups/alpha.lua
Jonny_Bro (Nikita) e4d5311906 first commit
2023-11-16 15:01:19 +05:00

234 lines
No EOL
6.1 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

local clothesData = {
icon = 'lock',
['models/player/octo_alpha/'] = {{
sm = 'Головной убор',
icon = 'hat',
bodygroup = 1,
vals = {
[0] = { 'Без головного убора', 'cross', '/me снимает головной убор' },
[2] = { 'Кепка', 'cap', '/me надевает кепку' },
},
},{
sm = 'Перчатки',
icon = 'hand',
bodygroup = 3,
vals = {
[0] = { 'Снять', 'cross', '/me снимает перчатки' },
[1] = { 'Надеть', 'bullet_black', '/me надевает перчатки' },
},
},{
sm = 'Кобура',
icon = 'gun',
bodygroup = 6,
vals = {
[0] = { 'Надеть на пояс', 'arrow_up', '/me надевает кобуру на пояс' },
[1] = { 'Надеть на ногу', 'arrow_down', '/me надевает кобуру на ногу' },
[2] = { 'Снять', 'cross', '/me снимает кобуру' },
},
},{
sm = 'Кобура тазера',
icon = 'lightning',
bodygroup = 7,
vals = {
[0] = { 'Надеть', 'bullet_blue', '/me вешает кобуру с тазером обратно на пояс' },
[1] = { 'Снять', 'cross', '/me снимает кобуру с тазером с пояса' },
},
},{
sm = 'Дубинка',
icon = 'baton',
bodygroup = 8,
vals = {
[0] = { 'Надеть', 'bullet_blue', '/me вешает дубинку обратно на пояс' },
[1] = { 'Снять', 'cross', '/me снимает дубинку с пояса' },
},
},{
sm = 'Наручники',
icon = 'radio_button',
bodygroup = 9,
vals = {
[0] = { 'Надеть одну пару', 'bullet_blue', '/me надевает одну пару наручников обратно на пояс' },
[1] = { 'Надеть две пары', 'bullet_black', '/me надевает две пары наручников обратно на пояс' },
[2] = { 'Снять', 'cross', '/me снимает наручники с пояса' },
},
},{
sm = 'Рация',
icon = 'radio_modern',
bodygroup = 10,
vals = {
[0] = { 'Надеть', 'bullet_blue', '/me надевает рацию обратно на пояс' },
[1] = { 'Снять', 'cross', '/me снимает рацию с пояса' },
},
},
},
}
local modelNums = {1, 2, 3, 4, 5, 6, 8, 9}
local bgsData = {
[1] = {
name = 'Головной убор',
vals = {
{'Без головного убора', 0, true},
{'Кепка', 2},
},
},
[2] = {
name = 'Гарнитура',
vals = {
{'Проводная', 0, true},
{'Снять', 2},
},
},
[4] = {
name = 'Верх',
vals = {
{'Строгая рубашка', 0, true},
{'Строгая рубашка и куртка', 1},
{'Поло', 2},
{'Поло и куртка', 3},
{'Поло и куртка с бронежилетом', 4},
},
},
[5] = {
name = 'Бронежилет',
vals = {
{'Без бронежилета', 0, true},
{'Без магазинов', 1},
},
},
[11] = {
name = 'Нашивка',
vals = {
{'Без нашивки', 0, true},
{'S.S.U.', 1},
{'King', 2},
{'Zero', 3},
{'Siesta', 4},
{'Yankee', 5},
{'Alpha', 6},
{'Ricardo', 7},
{'Union', 8},
},
},
[12] = {
name = 'Патч',
vals = {
{'Без патча', 0, true},
{'DMC', 1},
{'Золотой орел', 2},
{'Череп', 3},
{'Орел со звездой', 4},
{'Sabaton', 5},
{'Снежинка', 6},
{'Вялоухий', 7},
{'Легионер', 8},
{'Нептун', 9},
{'ДУХ АХАХАХ', 10},
},
}
}
local skinData = {
name = 'Низ',
vals = {
{'Темные брюки', 0, true},
{'Светлые брюки', 4},
},
}
local models = {}
for i, v in ipairs(modelNums) do
models[#models + 1] = {
name = 'Охранник ' .. i,
model = ('models/player/octo_alpha/male_%02d.mdl'):format(v),
bgs = bgsData,
skin = skinData,
}
end
simpleOrgs.addOrg('alpha', {
name = 'Alpha',
title = 'Alpha Corporation | Делаем вашу жизнь безопаснее',
shortTitle = 'Alpha',
clothes = clothesData,
team = 'alpha',
mdls = models,
talkieFreq = 'alpha',
})
local plateCol = {
bg = Color(123, 0, 28),
border = Color(40, 40, 40),
title = Color(255, 255, 255),
txt = Color(179, 179, 179),
}
carDealer.addCategory('alpha', {
name = 'Alpha',
icon = 'icon16/lightning.png',
queue = true,
ems = true,
bulletproof = true,
doNotEvacuate = true,
spawns = carDealer.civilSpawns,
canUse = function(ply) return ply:Team() == TEAM_ALPHA, 'Доступно только Alpha' end,
})
carDealer.addVeh('alpha_merit', {
name = 'Merit',
simfphysID = 'sim_fphys_gta4_merit_alpha',
plateCol = plateCol,
price = 12000,
deposit = true,
police = true,
default = {
mats = {
[14] = 'models/alpha_cars/alpha_car_04',
},
},
})
local function canUse(ply)
return DarkRP.isTaxist(ply) or ply:Team() == TEAM_ALPHA
end
if SERVER then
local leaveMeAloneID = 0
octochat.registerCommand('/alphabutton', {
cooldown = 60,
log = true,
execute = function(ply)
local job, jobname = ply:getJobTable()
if job then jobname = job.name end
local customJob = ply:GetNetVar('customJob')
if customJob then jobname = unpack(customJob) end
ply:DoEmote('{name} нажимает кнопку паники')
local msg = ('%s %s передает свое местоположение, используя тревожную кнопку!'):format(jobname, ply:Name())
local marker = {
id = 'cpPanicBtn' .. leaveMeAloneID,
group = 'cpPanicBtn',
txt = 'Кнопка паники',
pos = ply:GetPos() + Vector(0,0,40),
col = Color(102,170,170),
des = {'timedist', { 600, 300 }},
icon = 'octoteam/icons-32/exclamation.png',
size = 32,
}
for _,v in ipairs(player.GetAll()) do
if v:Team() == TEAM_ALPHA then
v:Notify('warning', msg)
v:EmitSound('npc/attack_helicopter/aheli_damaged_alarm1.wav', 45, 100, 0.5)
v:AddMarker(marker)
end
end
leaveMeAloneID = leaveMeAloneID + 1
end,
check = canUse,
})
else
octochat.defineCommand('/alphabutton', canUse)
end