Handle
, который будет реагировать на обновление. Изначально в состоянии нормальное, когда приходит время - переходит в состояние протухло и проверок больше не будет. (Все проверки в состоянии Update
происходят) BasePlayer.activePlayerList
только 1 пользовательif (player.IsReceivingSnapshot)
{
NextTick(() => OnPlayerConnected(player));
return;
}
постоянно срабатываетpublic class GameSib : RustPlugin
на каждого пользователя создается
Что касается jit, то это отдельная история - он работает так же как и динамическое связывание в ОС - делается стаб на определенную функцию в коде, и когда приходит момент переход выполняется не к самой функции а к заглушке, которая быстро компилирует код. Тут тоже без магии.