Hísëa
hsa · 593634 загрузок · MIT
клиент: unknown · сервер: unknown (заявлено автором мода)
Добавляет настраиваемые блоки, генерирующие туман для атмосферы и детализации.
Описание
Hísëa (на квенья «туманный») — это мод, разработанный для проекта ArdaCraft. Он добавляет блоки, генерирующие туман, которые невидимы для пользователя, если он не держит блок в руке. Эти блоки не имеют коллизий, а это означает, что игроки могут добавлять в свои конструкции интересные детали, такие как водопадный туман, пар от горячих ванн и туман, не мешая исследованию или погружению.
Различные аспекты тумана, создаваемого этими блоками, можно настроить с помощью Ctrl+щелчка правой кнопкой мыши:

Более подробную инструкцию можно найти ниже.
<details> <summary>Инструкции Хисеа</summary>
Интенсивность (0–50%)
Пояснение: Управляет толщиной тумана. Более высокие значения создают более плотный и видимый туман. При максимальных значениях туман становится очень заметным и создает эффект густого тумана.
С точки зрения кода: масштабирует количество и размер генерируемых частиц. Внутренне хранится как число с плавающей запятой (0,0–5,0), где:
- Каждые 10% в пользовательском интерфейсе = 1,0 в коде.
- Влияет как на масштаб частиц, так и на скорость появления.
- Влияет на расчет времени жизни частиц
Скорость (0–200%)
Пояснение: Определяет, насколько быстро движутся частицы тумана. Низкие значения создают неподвижный, висящий туман. Более высокие значения создают струящийся, дрейфующий туман, который более резко перемещается по пространству.
С точки зрения кода: хранится как число с плавающей запятой (0,0–2,0) и напрямую умножается на значения движения:
.setMotion(
velocityMultiplier == 0 ? 0 : (world.getRandom().nextFloat() * 0.01f) * Math.signum(offsetX) * velocityMultiplier,
velocityMultiplier == 0 ? 0 : (world.getRandom().nextFloat() * 0.005f) * velocityMultiplier, // Slower vertical
velocityMultiplier == 0 ? 0 : (world.getRandom().nextFloat() * 0.01f) * Math.signum(offsetZ) * velocityMultiplier
)
Время действия (5–30 секунд)
Пояснение: Управляет тем, как долго частицы тумана остаются видимыми, прежде чем исчезнуть. Более длительный срок службы создает более стойкий эффект тумана, а более короткий срок службы создает более эфемерный, тонкий эффект.
По коду: хранится в виде тиков (100–600), где:
- Каждая секунда = 20 тактов (Minecraft работает со скоростью 20 тактов в секунду)
- Непосредственно используется в построителе частиц:
.setLifetime(lifetime)
Цвет (RGB)
Пояснение: Устанавливает цвет частиц тумана. Может использоваться для создания атмосферных эффектов, таких как цветной туман, волшебный туман, токсичные облака, пар различной температуры и т. д.
С точки зрения кода: хранится как стандартное целое число RGB (от 0x000000 до 0xFFFFFF):
.setColorData(ColorParticleData.create(particleColor).build())
Прозрачность (0–100 %)
Пояснение: Управляет прозрачностью тумана. Более низкие значения создают полупрозрачный призрачный туман, который едва закрывает обзор. Более высокие значения создают более непрозрачный туман, который может скрывать за собой элементы.
В коде: хранится как число с плавающей запятой (0,0–1,0) и используется при вычислении градиента прозрачности:
.setTransparencyData(
GenericParticleData.create(0.001f, 0.7f * customTransparency, 0f)
.setEasing(Easing.EXPO_OUT, Easing.SINE_OUT)
.build()
)
Это создает эффект плавного появления/затухания, при этом пиковая видимость контролируется этой настройкой.
Радиус (1–100 блоков)
Пояснение: Определяет, насколько далеко туман распространяется от исходного блока. Больший радиус создает туман, который покрывает большую площадь, а меньший радиус создает концентрированные облака.
С точки зрения кода: хранится как целое число и используется для масштабирования смещений положения частиц:
double radiusScale = customRadius / 3.0; // Scale factor where 3 is the default radius
double scaledOffsetX = offsetX * radiusScale;
double scaledOffsetZ = offsetZ * radiusScale;
Включено (Вкл./Выкл.)
Пояснение: Простой переключатель, позволяющий включить или выключить выброс тумана, не снимая блок. Полезно для временного отключения эффектов или переключения между различными сценами.
С точки зрения кода: хранится как логическое значение и проверяется перед созданием каких-либо частиц:
if (cachedEnabled != null && !cachedEnabled) {
// Block has been disabled by the user
return;
}
Примечания по технической реализации
- Синхронизация клиент-сервер: все настройки хранятся на сервере в блочном объекте и синхронизируются с подключенными клиентами.
- Постоянство: настройки сохраняются в мировых данных NBT для восстановления после перезапуска сервера.
- Эффективность: частицы используют проверки видимости и оптимизации, чтобы минимизировать влияние на производительность.
- Последние использованные настройки: мод запоминает ваши последние использованные настройки при размещении новых блоков.
</details>
Мод был разработан для ArdaCraft компанией Divined (.divined на Discord). Большое спасибо разработчикам Effective за помощь.
Иконка проекта принадлежит kameh.space в Instagram.
Версии (3)
| Версия | Minecraft | Загрузчики | Файл |
|---|---|---|---|
1.0.2 |
1.20.1 | fabric | скачать |
1.0.1 |
1.20.1 | fabric | скачать |
1.0.0 |
1.20.1 | fabric | скачать |