LightCalculationType enum
Пакет: com.hypixel.hytale.server.core.command.commands.utility.lighting
Файл: com/hypixel/hytale/server/core/command/commands/utility/lighting/LightingCalculationCommand.java
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
|
FLOOD, |
FULLBRIGHT |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.command.commands.utility.lighting;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.FlagArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.RequiredArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.ArgTypes;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractWorldCommand;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.lighting.ChunkLightingManager;
class="kw">import com.hypixel.hytale.server.core.universe.world.lighting.FloodLightCalculation;
class="kw">import com.hypixel.hytale.server.core.universe.world.lighting.FullBrightLightCalculation;
class="kw">import com.hypixel.hytale.server.core.universe.world.lighting.LightCalculation;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;
class="kw">public class LightingCalculationCommand class="kw">extends AbstractWorldCommand {
@Nonnull
class="kw">private class="kw">static class="kw">final Message MESSAGE_COMMANDS_INVALIDATE_LIGHTING = Message.translation("server.commands.invalidatedlighting");
@Nonnull
class="kw">private class="kw">static class="kw">final Message MESSAGE_COMMANDS_LIGHTING_CALCULATION_ALREADY_FULLBRIGHT = Message.translation(
"server.commands.lightingcalculation.alreadyFullBright"
);
@Nonnull
class="kw">private class="kw">final RequiredArg<LightingCalculationCommand.LightCalculationType> calculationTypeArg = this.withRequiredArg(
"light-calculation",
"server.commands.lightingcalculation.calculation.desc",
ArgTypes.forEnum("server.commands.parsing.argtype.enum.name", LightingCalculationCommand.LightCalculationType.class)
);
@Nonnull
class="kw">private class="kw">final FlagArg invalidateFlag = this.withFlagArg("invalidate", "server.commands.lightingcalculation.invalidate.desc");
class="kw">public LightingCalculationCommand() {
super("calculation", "server.commands.lightingcalculation.desc");
}
@Override
class="kw">protected void execute(@Nonnull CommandContext var1, @Nonnull World var2, @Nonnull Store<EntityStore> var3) {
LightingCalculationCommand.LightCalculationType var4 = this.calculationTypeArg.get(var1);
ChunkLightingManager var5 = var2.getChunkLighting();
class="kw">switch (var4) {
case FLOOD:
var5.setLightCalculation(new FloodLightCalculation(var5));
var1.sendMessage(Message.translation("server.commands.lightingcalculation.setCalculation").param("calculation", "Flood"));
break;
case FULLBRIGHT:
LightCalculation var6 = var5.getLightCalculation();
if (var6 class="kw">instanceof FullBrightLightCalculation) {
var1.sendMessage(MESSAGE_COMMANDS_LIGHTING_CALCULATION_ALREADY_FULLBRIGHT);
class="kw">return;
}
var5.setLightCalculation(new FullBrightLightCalculation(var5, var6));
var1.sendMessage(
Message.translation("server.commands.lightcalculation.setCalculationWithDelegate").param("delegate", var6.getClass().getSimpleName())
);
}
if (this.invalidateFlag.get(var1)) {
var5.invalidateLoadedChunks();
var1.sendMessage(MESSAGE_COMMANDS_INVALIDATE_LIGHTING);
}
}
class="kw">private enum LightCalculationType {
FLOOD,
FULLBRIGHT;
LightCalculationType() {
}
}
}