Создание и удаление объектов в SA:MP
В этом уроке мы изучим: CreateObject, CreatePickup, DestroyPickup, CreateExplosion, CreateVehicle, AddStaticVehicle(Ex) и AddPlayerClass(Ex).
CreateObject – Создает объект на карте сервера в определённом месте.CreatePickup – Создает на сервер в определённом месте динамический пикап, который можно подобрать. DestroyPickup – Удаляет созданный пикап.CreateExplosion – Создает на сервере в определённом месте взрывCreateVehicle – Создает на сервере в определённом месте транспортное средство.AddStaticVehicle – То же самое, что и CreateVehicle, но при этом транспортное средство не может быть удалено.AddStaticVehicleEx – То же самое, что и AddStaticVehicle, но добавлена функция спавна транспортного средства.AddPlayerClass – Добавляет новый SkinID (ID скина) при выборе персонажа перед спавном (обычно несколько раз используется на DM/Drift)AddPlayerClassEx – То же самое, что и AddPlayerClass, только присутствует ещё и выбор команды (банды).
Начну как по содержанию - с CreateObject. Эта команда создаёт объект на карте, который будет виден всем игрокам в определённом мире. Используются только ID объектов.
objid – ID объекта. Как можно узнать ID объекта, написано в этом учебнике.pX – позиция X, например pX=186.82 – наземное движение влево/вправо по отношению севера (N) игры.pY – позиция Y, например pY=296.25 – наземное движение вперёд/назад по отношению к N игрыpZ – позиция Z, например pZ=12.78 – высотаrX – поворот модели на «x» градусов вниз или вверх относительно северу влево или вправо.rY – поворот модели на «x» градусов вниз или вверх относительно северу вперёд или назад.rZ – поворот модели влево или вправо на «x» градусов.VD – дистанция вида, можно её в коде не использовать
Следующее по содержанию – CreatePickup. Эта команда создает пикап, который умеет вращаться. Его можно подобрать.
objid – ID модели для пикапа (может быть любая модель)type – тип пикапа:
Так как я знаю не все типы пикапов, я процитирую их из википедии:
pX – позиция XpY – позиция YpZ – высотаVW – номер виртуального мира (-1 – объект отображается во всех 12 мирах)
Далее:в public OnGameModeInit() записываю:
Здесь был создан пикап «не понять где» со значком «GTA 3» (id 1248)
Следом за CreatePickup пойдёт команда DestroyPickup, которая удаляет созданный пикап.
На основе созданного пикапа с название PU, мы получаем:
PU – название созданного пикапа (записано в new и в CreatePickup)
Команда CreateExplosion создаёт любой существующий взрыв в определённом месте на карте.
pX – позиция XpY – позиция YpZ - высотаtype – тип
R – Радиус взрыва в метрах
Здесь создаётся большой взрыв (expID 2), видимый, без взрывной волны, создающий огонь и наносящий физический урон, созданный опять же на «не понять каком месте».
Команда CreateVehicle создаёт транспортное средство, которое можно удалить и задержать перед респавном.
vehid – ID транспортного средства (ТС)pX – позиция XpY – позиция YpZ - высотаrZ – поворот ТСc1 – цвет 1c2 – цвет 2res – время до респавна (через «x» секунд после выхода из ТС, оно респавнится)
ID цветов (Colors):
Здесь создан Виндзор (vehid 555), на неопределённой позиции, повернутый на 90 градусов с внешним цветом – красным, и внутренним – чёрным, который зареспавнится через 60 секунд (aka 1 минута).
Следующая команда – AddStaticVehicle — добавляет на карту ТС, которое нельзя удалить и нельзя задержать перед респавном.
vehid – ID транспортного средства (ТС)pX – позиция XpY – позиция YpZ - высотаrZ – поворот ТСc1 – цвет 1c2 – цвет 2
Команда AddStaticVehicleEx - это то же самое, что и CreateVehicle, но удалить это ТС нельзя.
vehid – ID транспортного средства (ТС)pX – позиция XpY – позиция YpZ - высотаrZ – поворот ТСc1 – цвет 1c2 – цвет 2
Следующая команда – это AddPlayerClass. При входе на сервер (если это не РП режим) игрок может себе выбрать персонажа, которым будет играть. Чтобы игрок выбрал персонажа, нужно его добавить в мод.
SkinID – ID скина персонажаpX – позиция XpY – позиция YpZ - высотаrZ – поворот скина персонажаw1 – оружие 1wa1 – патроны к оружию 1w2 – оружие 2wa2 – патроны к оружию 2w3 – оружие 3wa3 – патроны к оружию 3
Создает Клода (SkinID 299) с оружием:
SawnOff (двуствольный пистолет-дробовик) с 30 патронамиMicro SMG (Микро УЗИ) с 150 патронами3й слот не используетсяЗаспавнить должно где-то на Pier 69
И последняя команда - это AddPlayerClassEx. При входе на сервер (если это не РП режим) игрок может себе выбрать персонажа и команду (банду), которым будет играть. Чтобы игрок выбрал персонажа, нужно его добавить в мод.
BD - бандаSkinID – ID скина персонажаpX – позиция XpY – позиция YpZ - высотаrZ – поворот скина персонажаw1 – оружие 1wa1 – патроны к оружию 1w2 – оружие 2wa2 – патроны к оружию 2w3 – оружие 3wa3 – патроны к оружию 3
Создает Каталину(SkinID 298) в первой команде с оружием:
Colt (Кольт 9мм) с 100 патронамиShotgun (Дробовик) с 150 патронамиContry Rifle (Винтовка без прицела) с 5 патронамиЗаспавнить должно где-то на Pier 69