47 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package net.minecraft.world.level.biome;
 | |
| 
 | |
| import com.mojang.serialization.Codec;
 | |
| import com.mojang.serialization.codecs.RecordCodecBuilder;
 | |
| import net.minecraft.core.Holder;
 | |
| import net.minecraft.sounds.SoundEvent;
 | |
| import net.minecraft.sounds.SoundEvents;
 | |
| 
 | |
| public class AmbientMoodSettings {
 | |
| 	public static final Codec<AmbientMoodSettings> CODEC = RecordCodecBuilder.create(
 | |
| 		instance -> instance.group(
 | |
| 				SoundEvent.CODEC.fieldOf("sound").forGetter(ambientMoodSettings -> ambientMoodSettings.soundEvent),
 | |
| 				Codec.INT.fieldOf("tick_delay").forGetter(ambientMoodSettings -> ambientMoodSettings.tickDelay),
 | |
| 				Codec.INT.fieldOf("block_search_extent").forGetter(ambientMoodSettings -> ambientMoodSettings.blockSearchExtent),
 | |
| 				Codec.DOUBLE.fieldOf("offset").forGetter(ambientMoodSettings -> ambientMoodSettings.soundPositionOffset)
 | |
| 			)
 | |
| 			.apply(instance, AmbientMoodSettings::new)
 | |
| 	);
 | |
| 	public static final AmbientMoodSettings LEGACY_CAVE_SETTINGS = new AmbientMoodSettings(SoundEvents.AMBIENT_CAVE, 6000, 8, 2.0);
 | |
| 	private final Holder<SoundEvent> soundEvent;
 | |
| 	private final int tickDelay;
 | |
| 	private final int blockSearchExtent;
 | |
| 	private final double soundPositionOffset;
 | |
| 
 | |
| 	public AmbientMoodSettings(Holder<SoundEvent> soundEvent, int tickDelay, int blockSearchExtent, double soundPositionOffset) {
 | |
| 		this.soundEvent = soundEvent;
 | |
| 		this.tickDelay = tickDelay;
 | |
| 		this.blockSearchExtent = blockSearchExtent;
 | |
| 		this.soundPositionOffset = soundPositionOffset;
 | |
| 	}
 | |
| 
 | |
| 	public Holder<SoundEvent> getSoundEvent() {
 | |
| 		return this.soundEvent;
 | |
| 	}
 | |
| 
 | |
| 	public int getTickDelay() {
 | |
| 		return this.tickDelay;
 | |
| 	}
 | |
| 
 | |
| 	public int getBlockSearchExtent() {
 | |
| 		return this.blockSearchExtent;
 | |
| 	}
 | |
| 
 | |
| 	public double getSoundPositionOffset() {
 | |
| 		return this.soundPositionOffset;
 | |
| 	}
 | |
| }
 |