Package com.hbm_m.explosion
Class NukeMk5ChunkEater
java.lang.Object
com.hbm_m.explosion.NukeMk5ChunkEater
- All Implemented Interfaces:
IExplosionRay
chunk-by-chunk "crater" for Fat Man / MK5.
Do not confuse with
CraterGenerator (used by other charges).-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionbooleanfinal List<net.minecraft.world.level.ChunkPos>final Map<net.minecraft.world.level.ChunkPos,List<NukeMk5ChunkEater.FloatTriplet>> -
Constructor Summary
ConstructorsConstructorDescriptionNukeMk5ChunkEater(net.minecraft.world.level.Level level, int x, int y, int z, int strength, int speed, int length) -
Method Summary
Modifier and TypeMethodDescriptionvoidcacheChunksTick(int processTimeMs) Вызывается каждый тик для предвычисления и кеширования затронутых чанков.voidcancel()Немедленно отменяет взрыв и очищает внутренние структуры.voidclearRemainingFluidsInCrater(int budgetMs) Финальный проход по сфере — убирает воду, просочившуюся между тиками обработки чанков.voidcollectTip(int count) voiddestructionTick(int processTimeMs) Вызывается каждый тик для фактического разрушения блоков в уже закешированных чанках.protected voidhandleTip(int x, int y, int z) booleanstatic floatmasqueradeResistance(net.minecraft.world.level.Level level, net.minecraft.world.level.block.state.BlockState state, net.minecraft.core.BlockPos pos) void
-
Field Details
-
perChunk
-
orderedChunks
-
isAusf3Complete
public boolean isAusf3Complete
-
-
Constructor Details
-
NukeMk5ChunkEater
public NukeMk5ChunkEater(net.minecraft.world.level.Level level, int x, int y, int z, int strength, int speed, int length)
-
-
Method Details
-
collectTip
public void collectTip(int count) -
masqueradeResistance
public static float masqueradeResistance(net.minecraft.world.level.Level level, net.minecraft.world.level.block.state.BlockState state, net.minecraft.core.BlockPos pos) -
processChunk
public void processChunk() -
clearRemainingFluidsInCrater
public void clearRemainingFluidsInCrater(int budgetMs) Финальный проход по сфере — убирает воду, просочившуюся между тиками обработки чанков. -
handleTip
protected void handleTip(int x, int y, int z) -
isComplete
public boolean isComplete()- Specified by:
isCompletein interfaceIExplosionRay- Returns:
true, если расчёты и разрушение завершены или взрыв отменён.
-
cacheChunksTick
public void cacheChunksTick(int processTimeMs) Description copied from interface:IExplosionRayВызывается каждый тик для предвычисления и кеширования затронутых чанков. Тяжёлые вычисления рекомендуется выполнять здесь с ограничением по времени.- Specified by:
cacheChunksTickin interfaceIExplosionRay- Parameters:
processTimeMs- максимально допустимое время работы в этом тике (мс)
-
destructionTick
public void destructionTick(int processTimeMs) Description copied from interface:IExplosionRayВызывается каждый тик для фактического разрушения блоков в уже закешированных чанках.- Specified by:
destructionTickin interfaceIExplosionRay- Parameters:
processTimeMs- максимально допустимое время работы в этом тике (мс)
-
cancel
public void cancel()Description copied from interface:IExplosionRayНемедленно отменяет взрыв и очищает внутренние структуры.- Specified by:
cancelin interfaceIExplosionRay
-