🎨 Эстетика и звуковое окружение
Agrarian Reform обогащает визуальный и звуковой отклик, делая фермерские поля живыми и динамичными.
🌾 Шелест растений при движении
Когда игроки или существа проходят сквозь созревшие культуры, воспроизводится шелест растений (SoundEvents.GRASS_HIT):
java
if (isMaxAge && DynamicGameRuleManager.getBoolean(serverLevel, AgrarianGameRules.AMBIENT_CROP_RUSTLE)) {
if (SoundHelper.shouldPlayRustle(entityId, time)) {
if (entity.getDeltaMovement().horizontalDistance() > 0.01D) {
float pitch = 0.8F + serverLevel.getRandom().nextFloat() * 0.4F;
float volume = 0.2F + serverLevel.getRandom().nextFloat() * 0.1F;
serverLevel.playSound(null, pos, SoundEvents.GRASS_HIT, SoundSource.BLOCKS, volume, pitch);
}
}
}- Вариация высоты звука: Высота тона динамически меняется от $0.8$ до $1.2$ во избежание монотонности.
- Ограничение частоты:
SoundHelperограничивает срабатывание звука на сущность, устраняя звуковой шум при беге.
✨ Искры жизненной силы
При переходе растения на новую стадию роста возникают зеленые искры радости жителя (ParticleTypes.HAPPY_VILLAGER):
- Количество частиц: 3 частицы на каждое событие роста.
- Зона распределения: $0.25\text{м} \times 0.25\text{м} \times 0.25\text{м}$ от центра блока.
- Управление правилом: Отключается через
/gamerule agrarian_reform:ambient_vitality_particles false.
🌅 Утренняя влажность грядок
На рассвете оттенок вспаханной земли слегка обновляется, имитируя утреннюю росу на влажной почве.
See also: Устойчивость почвы и защита от вытаптывания and Игровые правила (GameRules).
