Colshape (Коллизии)
Описание
Класс Colshape
предназначен для управления коллизиями (Colshape) в RAGE:MP. Он позволяет создавать коллизии с различными параметрами настройки, а также настраивать обработку входа и выхода игроков из зоны коллизии.
Подключение библиотеки
Перед использованием необходимо импортировать библиотеку:
import { essentials } from 'ragemp-essentials';
Использование
Создание одной коллизии
Для создания одной коллизии используется метод essentials.colshape.create()
.
Пример:
essentials.colshape.create(new mp.Vector3(427.95, -981.05, 29.8), 2, {
onEnter: (player) => {
console.log(`${player.name} вошел в колшейп`);
},
onExit: (player) => {
console.log(`${player.name} покинул колшейп`);
},
marker: { type: 1, color: [255, 0, 0, 100] }
});
Создание нескольких коллизий
Если необходимо создать несколько коллизий, передайте массив координат в essentials.colshape.create()
.
Пример:
const Coords = [
new mp.Vector3(1820.113, 3673.207, 34.27),
new mp.Vector3(-252.971, 6315.504, 32.427),
new mp.Vector3(427.95, -981.05, 29.8)
];
essentials.colshape.create(Coords, 2, {
onEnter: (player) => {
console.log(`${player.name} вошел в колшейп`);
},
onExit: (player) => {
console.log(`${player.name} покинул колшейп`);
}
});
Интерфейс ColshapeOptions
ColshapeOptions
Определяет настройки, которые могут быть применены к создаваемым коллизиям.
Поля:
key
(string, необязательное) — Уникальный ключ коллизии.onEnter
(function, необязательное) — Функция, вызываемая при входе игрока в коллизии.onExit
(function, необязательное) — Функция, вызываемая при выходе игрока из коллизии.marker
(boolean | object, необязательное) — Будет ли отображаться маркер над коллизией.type
(number) — Тип маркера (по умолчанию 1).color
([number, number, number, number]) — Цвет маркера в формате RGBA (по умолчанию[255, 255, 255, 255]
).
Использование маркера
Можно указать параметры маркера, чтобы он отображался в зоне коллизии. Маркер может быть настроен как объект с полями type
и color
, или как просто булевое значение.
Пример с маркером:
essentials.colshape.create(new mp.Vector3(427.95, -981.05, 29.8), 2, {
onEnter: (player) => {
console.log(`${player.name} вошел в колшейп`);
},
onExit: (player) => {
console.log(`${player.name} покинул колшейп`);
},
marker: { type: 1, color: [255, 0, 0, 100] }
});
Пример без маркера:
essentials.colshape.create(new mp.Vector3(427.95, -981.05, 29.8), 2, {
onEnter: (player) => {
console.log(`${player.name} вошел в колшейп`);
},
onExit: (player) => {
console.log(`${player.name} покинул колшейп`);
},
marker: false
});
Примечания:
Указывать
marker: false
необязательно, так как по умолчанию маркер отсутствует.Если требуется отобразить маркер, укажите объект с настройками
type
иcolor
.Цвет указывается в формате RGBA:
[R, G, B, A]
, гдеA
— прозрачность (от0
до255
).
Last updated