Как создать одежду - Shark-vil/Clothing-system GitHub Wiki
Для создания энтити одежды, нужно создать SH файл, который будет выполняться как на сервере, так и на клиенте. Проще всего создать такой файл в папке lua/autorun/.
Описание обязательных параметров:
Если вы добавляйте вещь, на время работы обязательно добавляйте переменную Developing! Она позволяет менять настройки (положение, размер и т.д.) модели без снятия и повторного надевания предмета. Однако учтите, что этот режим более ресурсозатратный, и не стоит его оставлять, когда вы окончательно настроите предмет. Developing - режим разработки (Тип переменной - Bool)
Name - название объекта (Тип переменной - String)
Category - категория объекта в меню спавна (Тип переменной - String)
WireModel - модель, которая будет отображаться на игроке (Тип переменной - String)
FoldedModel - модель, которая будет при спавне энтити (Тип переменной - String)
PlayerBase - база одежды (Тип переменной - String)
CustomCollision - генерация собственной коллизии (Тип переменной - Bool)
Skin - скин используемой модели (Тип переменной - Integer)
Bodygroup - используемая бодигруппа на модели (Тип переменной - Double array)
Bodygroups - список точных значений для установки бодигрупп (Тип переменной - String)
Overlay - оверлей, который будет использоваться при экипировке этой вещи (Тип переменной - Table)
ChangeModelDamage - смена модели в зависимости от оставшегося количества здоровья (Тип переменной - Table)
BoneAttach - использовать систему крепления к одной кости (Тип переменной - Bool)
- Bone - имя кости для крепления (Тип переменной - String)
- ScaleModel - размер модели одежды/брони после крепления (Тип переменной - Float)
- xPos - Позиция по X, относительно центра кости (Тип переменной - Any numeric)
- yPos - Позиция по Y, относительно центра кости (Тип переменной - Any numeric)
- zPos - Позиция по Z, относительно центра кости (Тип переменной - Any numeric)
- xAng - Поворот по X, относительно центра кости (Тип переменной - Any numeric)
- yAng - Поворот по Y, относительно центра кости (Тип переменной - Any numeric)
- zAng - Поворот по Z, Относительно центра кости (Тип переменной - Any numeric)
Bonemerge - использовать систему крепления ко всем костям игрока, если они совпадают (Тип переменной - Bool)
TypePut - Условные кости, которые должны быть закрыты при экипировке (Кости задаются в базе) (Тип переменной - Array)
Описание второстепенных параметров:
- EquipSound - звук при экипировке одежды (Тип переменной - String или Array)
- UnEquipSound - звук при снятии одежды (Тип переменной - String или Array)
- WalkSound - звук при ходьбе (Тип переменной - String или Array)
- RunSound - звук при беге (Тип переменной - String или Array)
- JumpSound - звук при прыжке (Тип переменной - String или Array)
- LandingSound - звук при касании с землёй после обычного прыжка (Тип переменной - String или Array)
- PowerLandingSound - звук при падении с большой высоты (Тип переменной - String или Array)
- UnderWaterSound - звук под водой (Тип переменной - String или Array)
- AboveWaterSound - звук над водой (Тип переменной - String или Array)
- BreathSoundInGasMask - звук дыхания в маске (Тип переменной - String или Array)
- DamageSoundList - звук при получении урона (Тип переменной - String или Array)
- RicochetSoundList - звук рикошета (Тип переменной - String или Array)
- RadiationSound - звук при получении урона от радиации (Тип переменной - String или Array)
TakesDamagePercent - процент получения повреждений, в зависимости от типа урона (Тип переменной - Table)
GasMask - включить или выключить противогаз (Тип переменной - Bool)
RegenerationHealth - кол-во восстанавливаемого HP каждые 2 секунды (Тип переменной - Integer)
Accessory - использовать модель как аксессуар (В этом случае закрытие костей не происходит) или нет (Тип переменной - Bool)
OnlySteamID - список steamid/steamid64, которым дозволено использовать вещь (Тип переменной - String или Array)
OnlyAdmin - могут ли использовать одежду только админы/суперадмины (Тип переменной - Bool)
GroupDress - список групп, которым дозволено использовать вещь (Тип переменной - String или Array)
Функции:
Spawn = function(item) - выполняется при спавне энтити одежды
Equip = function (ply, class, item) - выполняется перед тем, как игрок экипирует одежду. ПРЕДУПРЕЖДЕНИЕ: аргумент item возвращает значение NULL, если игрок надевает вещи автоматически (После подключения к серверу).
Disconnected = function(ply, class) - выполняется перед отключением игрока
Drop = function (ply, class, item) - выполняется после выбрасывания одежды
Death = function(ply, class) - выполняется, когда игрок умирает
Think = function(ply, class) - выполняется каждый тик
Damage = function(ply, class, hitgroup, dmginfo) - выполняется, когда игрок получает урон