
- Требуемые плагины
О SimpleStatus для NoEscape
SimpleStatus для NoEscape — это мощный плагин Rust, который легко интегрируется с NoEscape и SimpleStatus , предоставляя уведомления в реальном времени, когда игроки входят или выходят из боевого блока или рейдового блока. Этот плагин, разработанный для администраторов серверов, которым нужна лучшая видимость и контроль над ограничениями игроков, улучшает пользовательский опыт с помощью настраиваемых элементов пользовательского интерфейса и надежного отслеживания.
Почему стоит выбрать SimpleStatus для NoEscape ?
Этот плагин идеально подходит для серверов Rust, которые хотят улучшить осведомленность игроков о боевых и рейдовых блоках, уменьшая путаницу и повышая честность игрового процесса. Благодаря своему легкому и оптимизированному дизайну он предоставляет важную информацию, не перегружая сервер.

✦ Обнаружение боя и рейда в реальном времени — автоматически определяет, когда игроки входят или выходят из состояния боя или рейда.
✦ Настраиваемая интеграция пользовательского интерфейса — работает с SimpleStatus для отображения визуально привлекательных индикаторов состояния.
✦ Система на основе разрешений — администраторы могут ограничить обновления статуса определенными группами игроков.
Оптимизированная производительность — эффективная система отслеживания и уведомлений для минимизации воздействия на сервер.
✦ Полная совместимость — полная интеграция с NoEscape, гарантирующая точное определение статуса блока.
✦ Настройка изображения и цвета — изменяйте цвета фона, значки и текст в соответствии с темой вашего сервера.

Чтобы этот плагин заработал, вам необходимо внести небольшую модификацию в плагин «NoEscape» следующим образом:
Поскольку последнее официальное обновление No Escape было три года назад (v2.1.35), я прикрепляю отредактированный плагин с дополнениями, описанными в этих шагах. Если вы предпочитаете не следовать шагам ниже, вы можете загрузить файл, нажав здесь .
1. Щелкните правой кнопкой мыши файл «NoEscape.cs», а затем выберите опцию открытия с помощью вашего любимого текстового редактора (например, «Блокнот», VS Code или просто текстовый редактор по умолчанию в Windows).
2. Затем вам нужно перейти примерно к строке 1218 в разделе «API».
3. Оказавшись на указанной строке, вам необходимо вставить следующий код:
4. Готово!
C#:
float GetRemainingBlockTime(BasePlayer player, string type)
{
Type blockType = type == "raid" ? typeof(RaidBlock) : typeof(CombatBlock);
UnityEngine.Component block = player.GetComponent(blockType);
if (block == null)
return 0;
FieldInfo lastBlockField = blockType.GetField("lastBlock", BindingFlags.Public | BindingFlags.Instance);
if (lastBlockField == null)
return 0;
DateTime lastBlock = (DateTime)lastBlockField.GetValue(block);
float blockDuration = type == "raid" ? raidDuration : combatDuration;
return Math.Max(0, blockDuration - (float)(DateTime.Now - lastBlock).TotalSeconds);
}