Add utility method for time to tick conversion for better readability.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
package li.cil.oc2.client.audio;
|
||||
|
||||
import li.cil.oc2.common.Constants;
|
||||
import li.cil.oc2.common.util.TickUtils;
|
||||
import net.minecraft.client.resources.sounds.AbstractTickableSoundInstance;
|
||||
import net.minecraft.sounds.SoundEvent;
|
||||
import net.minecraft.sounds.SoundSource;
|
||||
@@ -9,9 +9,10 @@ import net.minecraft.world.level.ChunkPos;
|
||||
import net.minecraft.world.level.block.entity.BlockEntity;
|
||||
import net.minecraft.world.phys.Vec3;
|
||||
|
||||
import java.time.Duration;
|
||||
|
||||
public final class LoopingBlockEntitySound extends AbstractTickableSoundInstance {
|
||||
private static final float FADE_IN_DURATION_IN_SECONDS = 2.0f;
|
||||
private static final float FADE_IN_DURATION_IN_TICKS = FADE_IN_DURATION_IN_SECONDS * Constants.SECONDS_TO_TICKS;
|
||||
private static final float FADE_IN_DURATION_IN_TICKS = TickUtils.toTicks(Duration.ofSeconds(2));
|
||||
private static final float FADE_IN_PER_TICK = 1f / FADE_IN_DURATION_IN_TICKS;
|
||||
|
||||
///////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -23,10 +23,7 @@ import li.cil.oc2.common.network.message.ComputerBusStateMessage;
|
||||
import li.cil.oc2.common.network.message.ComputerRunStateMessage;
|
||||
import li.cil.oc2.common.network.message.ComputerTerminalOutputMessage;
|
||||
import li.cil.oc2.common.serialization.NBTSerialization;
|
||||
import li.cil.oc2.common.util.HorizontalBlockUtils;
|
||||
import li.cil.oc2.common.util.NBTUtils;
|
||||
import li.cil.oc2.common.util.SoundEvents;
|
||||
import li.cil.oc2.common.util.TerminalUtils;
|
||||
import li.cil.oc2.common.util.*;
|
||||
import li.cil.oc2.common.vm.*;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.core.Direction;
|
||||
@@ -45,9 +42,11 @@ import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.time.Duration;
|
||||
import java.util.*;
|
||||
|
||||
import static li.cil.oc2.common.Constants.*;
|
||||
import static li.cil.oc2.common.Constants.BLOCK_ENTITY_TAG_NAME_IN_ITEM;
|
||||
import static li.cil.oc2.common.Constants.ITEMS_TAG_NAME;
|
||||
|
||||
public final class ComputerBlockEntity extends ModBlockEntity implements TerminalUserProvider {
|
||||
private static final String BUS_ELEMENT_TAG_NAME = "busElement";
|
||||
@@ -61,7 +60,7 @@ public final class ComputerBlockEntity extends ModBlockEntity implements Termina
|
||||
private static final int FLASH_MEMORY_SLOTS = 1;
|
||||
private static final int CARD_SLOTS = 4;
|
||||
|
||||
private static final int MAX_RUNNING_SOUND_DELAY = SECONDS_TO_TICKS * 2;
|
||||
private static final int MAX_RUNNING_SOUND_DELAY = TickUtils.toTicks(Duration.ofSeconds(2));
|
||||
|
||||
///////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
@@ -8,10 +8,7 @@ import li.cil.oc2.common.capabilities.Capabilities;
|
||||
import li.cil.oc2.common.item.Items;
|
||||
import li.cil.oc2.common.network.Network;
|
||||
import li.cil.oc2.common.network.message.NetworkConnectorConnectionsMessage;
|
||||
import li.cil.oc2.common.util.ItemStackUtils;
|
||||
import li.cil.oc2.common.util.LazyOptionalUtils;
|
||||
import li.cil.oc2.common.util.NBTTagIds;
|
||||
import li.cil.oc2.common.util.ServerScheduler;
|
||||
import li.cil.oc2.common.util.*;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.core.Direction;
|
||||
@@ -33,6 +30,7 @@ import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
import net.minecraftforge.common.util.LazyOptional;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.time.Duration;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
@@ -51,7 +49,7 @@ public final class NetworkConnectorBlockEntity extends ModBlockEntity {
|
||||
private static final String CONNECTIONS_TAG_NAME = "connections";
|
||||
private static final String IS_OWNER_TAG_NAME = "is_owner";
|
||||
|
||||
private static final int RETRY_UNLOADED_CHUNK_INTERVAL = 5 * Constants.SECONDS_TO_TICKS;
|
||||
private static final int RETRY_UNLOADED_CHUNK_INTERVAL = TickUtils.toTicks(Duration.ofSeconds(5));
|
||||
private static final int MAX_CONNECTION_COUNT = 2;
|
||||
private static final int MAX_CONNECTION_DISTANCE = 16;
|
||||
private static final int INITIAL_PACKET_TIME_TO_LIVE = 12;
|
||||
|
||||
@@ -3,12 +3,13 @@ package li.cil.oc2.common.bus;
|
||||
import li.cil.oc2.api.bus.DeviceBusController;
|
||||
import li.cil.oc2.api.bus.DeviceBusElement;
|
||||
import li.cil.oc2.api.bus.device.Device;
|
||||
import li.cil.oc2.common.Constants;
|
||||
import li.cil.oc2.common.util.Event;
|
||||
import li.cil.oc2.common.util.LazyOptionalUtils;
|
||||
import li.cil.oc2.common.util.ParameterizedEvent;
|
||||
import li.cil.oc2.common.util.TickUtils;
|
||||
import net.minecraftforge.common.util.LazyOptional;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.*;
|
||||
|
||||
import static java.util.Collections.emptySet;
|
||||
@@ -25,8 +26,8 @@ public class CommonDeviceBusController implements DeviceBusController {
|
||||
///////////////////////////////////////////////////////////////////
|
||||
|
||||
private static final int MAX_BUS_ELEMENT_COUNT = 128;
|
||||
private static final int INCOMPLETE_RETRY_INTERVAL = 10 * Constants.SECONDS_TO_TICKS;
|
||||
private static final int BAD_CONFIGURATION_RETRY_INTERVAL = 5 * Constants.SECONDS_TO_TICKS;
|
||||
private static final int INCOMPLETE_RETRY_INTERVAL = TickUtils.toTicks(Duration.ofSeconds(10));
|
||||
private static final int BAD_CONFIGURATION_RETRY_INTERVAL = TickUtils.toTicks(Duration.ofSeconds(5));
|
||||
|
||||
///////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
@@ -5,8 +5,8 @@ import li.cil.oc2.api.bus.device.object.Parameter;
|
||||
import li.cil.oc2.api.capabilities.Robot;
|
||||
import li.cil.oc2.api.util.RobotOperationSide;
|
||||
import li.cil.oc2.common.Config;
|
||||
import li.cil.oc2.common.Constants;
|
||||
import li.cil.oc2.common.util.FakePlayerUtils;
|
||||
import li.cil.oc2.common.util.TickUtils;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.core.Direction;
|
||||
import net.minecraft.nbt.CompoundTag;
|
||||
@@ -38,12 +38,13 @@ import net.minecraftforge.items.IItemHandler;
|
||||
import net.minecraftforge.items.ItemStackHandler;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.time.Duration;
|
||||
import java.util.List;
|
||||
|
||||
public final class BlockOperationsModuleDevice extends AbstractItemRPCDevice {
|
||||
private static final String LAST_OPERATION_TAG_NAME = "cooldown";
|
||||
|
||||
private static final int COOLDOWN = Constants.SECONDS_TO_TICKS;
|
||||
private static final int COOLDOWN = TickUtils.toTicks(Duration.ofSeconds(1));
|
||||
|
||||
///////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ package li.cil.oc2.common.bus.device.item;
|
||||
|
||||
import li.cil.oc2.api.bus.device.object.Callback;
|
||||
import li.cil.oc2.api.bus.device.object.Parameter;
|
||||
import li.cil.oc2.common.Constants;
|
||||
import li.cil.oc2.common.util.Location;
|
||||
import li.cil.oc2.common.util.TickUtils;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.server.level.ServerLevel;
|
||||
import net.minecraft.sounds.SoundEvent;
|
||||
@@ -13,13 +13,14 @@ import net.minecraft.world.level.LevelAccessor;
|
||||
import net.minecraftforge.registries.ForgeRegistries;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.time.Duration;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.function.Supplier;
|
||||
|
||||
public final class SoundCardItemDevice extends AbstractItemRPCDevice {
|
||||
private static final int COOLDOWN_IN_TICKS = 2 * Constants.SECONDS_TO_TICKS;
|
||||
private static final int COOLDOWN_IN_TICKS = TickUtils.toTicks(Duration.ofSeconds(2));
|
||||
private static final int MAX_FIND_RESULTS = 25;
|
||||
|
||||
///////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package li.cil.oc2.common.entity.robot;
|
||||
|
||||
import li.cil.oc2.common.Constants;
|
||||
import li.cil.oc2.common.entity.Entities;
|
||||
import li.cil.oc2.common.entity.Robot;
|
||||
import li.cil.oc2.common.util.NBTTagIds;
|
||||
import li.cil.oc2.common.util.NBTUtils;
|
||||
import li.cil.oc2.common.util.TickUtils;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.core.Direction;
|
||||
import net.minecraft.nbt.CompoundTag;
|
||||
@@ -13,6 +13,7 @@ import net.minecraft.world.entity.MoverType;
|
||||
import net.minecraft.world.phys.Vec3;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.time.Duration;
|
||||
import java.util.Objects;
|
||||
|
||||
public final class RobotMovementAction extends AbstractRobotAction {
|
||||
@@ -20,7 +21,7 @@ public final class RobotMovementAction extends AbstractRobotAction {
|
||||
|
||||
///////////////////////////////////////////////////////////////////
|
||||
|
||||
private static final float MOVEMENT_SPEED = 1f / Constants.SECONDS_TO_TICKS; // block / sec -> block / tick.
|
||||
private static final float MOVEMENT_SPEED = 1f / TickUtils.toTicks(Duration.ofSeconds(1)); // blocks per tick
|
||||
|
||||
private static final String DIRECTION_TAG_NAME = "direction";
|
||||
private static final String ORIGIN_TAG_NAME = "origin";
|
||||
|
||||
@@ -1,21 +1,22 @@
|
||||
package li.cil.oc2.common.entity.robot;
|
||||
|
||||
import li.cil.oc2.common.Constants;
|
||||
import li.cil.oc2.common.entity.Robot;
|
||||
import li.cil.oc2.common.util.NBTTagIds;
|
||||
import li.cil.oc2.common.util.NBTUtils;
|
||||
import li.cil.oc2.common.util.TickUtils;
|
||||
import net.minecraft.core.Direction;
|
||||
import net.minecraft.nbt.CompoundTag;
|
||||
import net.minecraft.util.Mth;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.time.Duration;
|
||||
|
||||
public final class RobotRotationAction extends AbstractRobotAction {
|
||||
public static final float TARGET_EPSILON = 0.0001f;
|
||||
|
||||
///////////////////////////////////////////////////////////////////
|
||||
|
||||
private static final float ROTATION_SPEED = 90f / Constants.SECONDS_TO_TICKS; // degrees / sec -> degrees / tick
|
||||
private static final float ROTATION_SPEED = 90f / TickUtils.toTicks(Duration.ofSeconds(1)); // degrees per tick
|
||||
|
||||
private static final String DIRECTION_TAG_NAME = "direction";
|
||||
private static final String TARGET_TAG_NAME = "start";
|
||||
|
||||
11
src/main/java/li/cil/oc2/common/util/TickUtils.java
Normal file
11
src/main/java/li/cil/oc2/common/util/TickUtils.java
Normal file
@@ -0,0 +1,11 @@
|
||||
package li.cil.oc2.common.util;
|
||||
|
||||
import li.cil.oc2.common.Constants;
|
||||
|
||||
import java.time.Duration;
|
||||
|
||||
public final class TickUtils {
|
||||
public static int toTicks(final Duration duration) {
|
||||
return (int) (duration.getSeconds() * Constants.SECONDS_TO_TICKS);
|
||||
}
|
||||
}
|
||||
@@ -3,13 +3,13 @@ package li.cil.oc2.common.vm;
|
||||
import li.cil.ceres.api.Serialized;
|
||||
import li.cil.oc2.api.bus.device.vm.FirmwareLoader;
|
||||
import li.cil.oc2.api.bus.device.vm.VMDeviceLoadResult;
|
||||
import li.cil.oc2.api.bus.device.vm.event.VMPausingEvent;
|
||||
import li.cil.oc2.common.Constants;
|
||||
import li.cil.oc2.common.bus.CommonDeviceBusController;
|
||||
import li.cil.oc2.common.bus.RPCDeviceBusAdapter;
|
||||
import li.cil.oc2.common.serialization.NBTSerialization;
|
||||
import li.cil.oc2.common.util.NBTTagIds;
|
||||
import li.cil.oc2.common.util.NBTUtils;
|
||||
import li.cil.oc2.common.util.TickUtils;
|
||||
import li.cil.oc2.common.vm.context.global.GlobalVMContext;
|
||||
import li.cil.sedna.api.memory.MemoryAccessException;
|
||||
import li.cil.sedna.riscv.R5Board;
|
||||
@@ -22,6 +22,7 @@ import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.time.Duration;
|
||||
import java.util.Objects;
|
||||
|
||||
public abstract class AbstractVirtualMachine implements VirtualMachine {
|
||||
@@ -36,7 +37,7 @@ public abstract class AbstractVirtualMachine implements VirtualMachine {
|
||||
public static final String RUN_STATE_TAG_NAME = "runState";
|
||||
public static final String BOOT_ERROR_TAG_NAME = "bootError";
|
||||
|
||||
private static final int DEVICE_LOAD_RETRY_INTERVAL = 10 * Constants.SECONDS_TO_TICKS;
|
||||
private static final int DEVICE_LOAD_RETRY_INTERVAL = TickUtils.toTicks(Duration.ofSeconds(10));
|
||||
|
||||
///////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
Reference in New Issue
Block a user