Привет, подскажите пожалуйста) Сразу с примера)
Пример 1. server-side (синхронный код):
Пример 2. server-side (Асинхронный код):
Суть вопроса:
1) Надо ли перед тем как ты обращаешься к entity (player, object, ped, vehicle и любые другие entity), проверять её наличие на exist ?
2) Как часто надо проверять на exist ? Перед каждым обращением или 1-ого раза достаточно ? Или зависит от sync/asycn ?
3) exist() принимает либо EntityMp, либо number (id), без разницы, что туда передавать ?
А вдруг игрок/объект вышел/удален на сервере и был создан/вошел и в игру и к нему присвоился такой же id ?
Пример 1. server-side (синхронный код):
Код:
mp.events.add('myCustomEvent', (player: PlayerMp, entity: EntityMp) => {
// надо ли здесь делать проверку на exists ?
// if (!mp.players.exists(entity)) return;
entity.position = new mp.Vector3(....)
// ...еще какой-то синхронный код...
// надо ли здесь делать проверку на exists ?
// if (!mp.players.exists(entity)) return;
entity.setVariable('qwe', null)
// ...и еще какой-то синхронный код...
// надо ли здесь делать проверку на exists ?
// if (!mp.players.exists(entity)) return;
const one = entity.getVariable('qqqq123')
});
Пример 2. server-side (Асинхронный код):
Код:
mp.events.add('myCustomEvent', async (player: PlayerMp, entity: EntityMp) => {
// надо ли здесь делать проверку на exists ?
// if (!mp.players.exists(entity)) return;
entity.position = new mp.Vector3(....)
// ...еще какой-то асинхронный код...
await mp.game.waitAsync(50);
// надо ли здесь делать проверку на exists ?
// if (!mp.players.exists(entity)) return;
entity.setVariable('qwe', null)
// ...и еще какой-то асинхронный код...
await mp.game.waitAsync(50);
// надо ли здесь делать проверку на exists ?
// if (!mp.players.exists(entity)) return;
const one = entity.getVariable('qqqq123')
});
Суть вопроса:
1) Надо ли перед тем как ты обращаешься к entity (player, object, ped, vehicle и любые другие entity), проверять её наличие на exist ?
2) Как часто надо проверять на exist ? Перед каждым обращением или 1-ого раза достаточно ? Или зависит от sync/asycn ?
3) exist() принимает либо EntityMp, либо number (id), без разницы, что туда передавать ?
А вдруг игрок/объект вышел/удален на сервере и был создан/вошел и в игру и к нему присвоился такой же id ?