保证API的纯洁性,和去除无用的导入
This commit is contained in:
parent
f8e1376a6c
commit
3126e24b80
|
|
@ -59,7 +59,7 @@ mod_name=Super Lead Rope
|
||||||
# The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default.
|
# The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default.
|
||||||
mod_license=GPLv3
|
mod_license=GPLv3
|
||||||
# The mod version. See https://semver.org/
|
# The mod version. See https://semver.org/
|
||||||
mod_version=0.0.0.4
|
mod_version=0.0.0.5
|
||||||
# The group ID for the mod. It is only important when publishing as an artifact to a Maven repository.
|
# The group ID for the mod. It is only important when publishing as an artifact to a Maven repository.
|
||||||
# This should match the base package used for the mod sources.
|
# This should match the base package used for the mod sources.
|
||||||
# See https://maven.apache.org/guides/mini/guide-naming-conventions.html
|
# See https://maven.apache.org/guides/mini/guide-naming-conventions.html
|
||||||
|
|
|
||||||
|
|
@ -53,6 +53,8 @@ import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import top.r3944realms.superleadrope.api.SuperLeadRopeApi;
|
import top.r3944realms.superleadrope.api.SuperLeadRopeApi;
|
||||||
import top.r3944realms.superleadrope.api.event.SuperLeadRopeEvent;
|
import top.r3944realms.superleadrope.api.event.SuperLeadRopeEvent;
|
||||||
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
||||||
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashState;
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.LeashInfo;
|
import top.r3944realms.superleadrope.api.type.capabilty.LeashInfo;
|
||||||
import top.r3944realms.superleadrope.config.LeashCommonConfig;
|
import top.r3944realms.superleadrope.config.LeashCommonConfig;
|
||||||
import top.r3944realms.superleadrope.config.LeashConfigManager;
|
import top.r3944realms.superleadrope.config.LeashConfigManager;
|
||||||
|
|
@ -60,8 +62,6 @@ import top.r3944realms.superleadrope.content.capability.CapabilityHandler;
|
||||||
import top.r3944realms.superleadrope.content.capability.CapabilityRemainder;
|
import top.r3944realms.superleadrope.content.capability.CapabilityRemainder;
|
||||||
import top.r3944realms.superleadrope.content.capability.impi.LeashDataImpl;
|
import top.r3944realms.superleadrope.content.capability.impi.LeashDataImpl;
|
||||||
import top.r3944realms.superleadrope.content.capability.inter.IEternalPotato;
|
import top.r3944realms.superleadrope.content.capability.inter.IEternalPotato;
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashState;
|
|
||||||
import top.r3944realms.superleadrope.content.command.MotionCommand;
|
import top.r3944realms.superleadrope.content.command.MotionCommand;
|
||||||
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
||||||
import top.r3944realms.superleadrope.content.gamerule.server.TeleportWithLeashedEntities;
|
import top.r3944realms.superleadrope.content.gamerule.server.TeleportWithLeashedEntities;
|
||||||
|
|
|
||||||
|
|
@ -24,8 +24,6 @@ import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import top.r3944realms.superleadrope.api.type.util.ILeashHelper;
|
import top.r3944realms.superleadrope.api.type.util.ILeashHelper;
|
||||||
import top.r3944realms.superleadrope.api.workspace.Services;
|
import top.r3944realms.superleadrope.api.workspace.Services;
|
||||||
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
|
||||||
import top.r3944realms.superleadrope.util.capability.LeashDataInnerAPI;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
@ -64,19 +62,19 @@ public class SuperLeadRopeApi {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isLeashHolder(@NotNull Entity pEntity, Entity pTestHolder) {
|
public static boolean isLeashHolder(@NotNull Entity pEntity, Entity pTestHolder) {
|
||||||
return pTestHolder instanceof SuperLeashKnotEntity superLeashKnotEntity ?
|
return Services.WORK_SPACE.isSuperLeadKnot(pTestHolder) ?
|
||||||
isLeashHolder(pEntity, superLeashKnotEntity.getPos()) :
|
isLeashHolder(pEntity, Services.WORK_SPACE.getSuperLeadPos(pTestHolder)) :
|
||||||
isLeashHolder(pEntity, pTestHolder.getUUID());
|
isLeashHolder(pEntity, pTestHolder.getUUID());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isLeashHolder(@NotNull Entity pEntity, UUID pHolderUUID) {
|
public static boolean isLeashHolder(@NotNull Entity pEntity, UUID pHolderUUID) {
|
||||||
return LeashDataInnerAPI.getLeashData(pEntity)
|
return Services.WORK_SPACE.getLeashData(pEntity)
|
||||||
.map(leashData -> leashData.isLeashedBy(pHolderUUID))
|
.map(leashData -> leashData.isLeashedBy(pHolderUUID))
|
||||||
.orElse(false);
|
.orElse(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isLeashHolder(@NotNull Entity pEntity, BlockPos pKnotPos) {
|
public static boolean isLeashHolder(@NotNull Entity pEntity, BlockPos pKnotPos) {
|
||||||
return LeashDataInnerAPI.getLeashData(pEntity)
|
return Services.WORK_SPACE.getLeashData(pEntity)
|
||||||
.map(leashData -> leashData.isLeashedBy(pKnotPos))
|
.map(leashData -> leashData.isLeashedBy(pKnotPos))
|
||||||
.orElse(false);
|
.orElse(false);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,6 @@ import net.minecraftforge.fml.event.IModBusEvent;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.LeashHolder;
|
import top.r3944realms.superleadrope.api.type.capabilty.LeashHolder;
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.LeashInfo;
|
import top.r3944realms.superleadrope.api.type.capabilty.LeashInfo;
|
||||||
import top.r3944realms.superleadrope.util.capability.LeashDataInnerAPI;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,9 @@ import net.minecraft.world.entity.Entity;
|
||||||
import net.minecraft.world.entity.player.Player;
|
import net.minecraft.world.entity.player.Player;
|
||||||
import net.minecraftforge.common.util.INBTSerializable;
|
import net.minecraftforge.common.util.INBTSerializable;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.Collection;
|
||||||
|
import java.util.Optional;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Capability interface for managing leash data of entities and knots.
|
* Capability interface for managing leash data of entities and knots.
|
||||||
|
|
|
||||||
|
|
@ -20,9 +20,12 @@ import net.minecraft.world.entity.Entity;
|
||||||
import net.minecraft.world.level.Level;
|
import net.minecraft.world.level.Level;
|
||||||
import net.minecraft.world.phys.Vec3;
|
import net.minecraft.world.phys.Vec3;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
||||||
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashState;
|
||||||
import top.r3944realms.superleadrope.api.type.util.ILeashHelper;
|
import top.r3944realms.superleadrope.api.type.util.ILeashHelper;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Optional;
|
||||||
import java.util.function.Predicate;
|
import java.util.function.Predicate;
|
||||||
|
|
||||||
public interface IWorkSpaceHelper {
|
public interface IWorkSpaceHelper {
|
||||||
|
|
@ -31,4 +34,6 @@ public interface IWorkSpaceHelper {
|
||||||
boolean isSuperLeadKnot(Entity pEntity);
|
boolean isSuperLeadKnot(Entity pEntity);
|
||||||
BlockPos getSuperLeadPos(Entity pEntity) throws IllegalArgumentException;
|
BlockPos getSuperLeadPos(Entity pEntity) throws IllegalArgumentException;
|
||||||
boolean isLeashable(@NotNull Entity pEntity);
|
boolean isLeashable(@NotNull Entity pEntity);
|
||||||
|
Optional<ILeashData> getLeashData(@NotNull Entity pEntity);
|
||||||
|
Optional<ILeashState> getLeashState(@NotNull Entity pEntity);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -23,9 +23,9 @@ import net.minecraft.world.entity.HumanoidArm;
|
||||||
import net.minecraft.world.entity.player.Player;
|
import net.minecraft.world.entity.player.Player;
|
||||||
import net.minecraft.world.phys.Vec3;
|
import net.minecraft.world.phys.Vec3;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashState;
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.LeashInfo;
|
import top.r3944realms.superleadrope.api.type.capabilty.LeashInfo;
|
||||||
import top.r3944realms.superleadrope.client.renderer.state.SuperLeashRenderState;
|
import top.r3944realms.superleadrope.client.renderer.state.SuperLeashRenderState;
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashState;
|
|
||||||
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
||||||
import top.r3944realms.superleadrope.util.capability.LeashStateInnerAPI;
|
import top.r3944realms.superleadrope.util.capability.LeashStateInnerAPI;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -23,10 +23,10 @@ import net.minecraftforge.common.capabilities.CapabilityToken;
|
||||||
import net.minecraftforge.common.capabilities.RegisterCapabilitiesEvent;
|
import net.minecraftforge.common.capabilities.RegisterCapabilitiesEvent;
|
||||||
import net.minecraftforge.event.AttachCapabilitiesEvent;
|
import net.minecraftforge.event.AttachCapabilitiesEvent;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import top.r3944realms.superleadrope.content.capability.impi.LeashDataImpl;
|
|
||||||
import top.r3944realms.superleadrope.content.capability.inter.IEternalPotato;
|
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashState;
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashState;
|
||||||
|
import top.r3944realms.superleadrope.content.capability.impi.LeashDataImpl;
|
||||||
|
import top.r3944realms.superleadrope.content.capability.inter.IEternalPotato;
|
||||||
import top.r3944realms.superleadrope.content.capability.provider.EternalPotatoProvider;
|
import top.r3944realms.superleadrope.content.capability.provider.EternalPotatoProvider;
|
||||||
import top.r3944realms.superleadrope.content.capability.provider.LeashDataProvider;
|
import top.r3944realms.superleadrope.content.capability.provider.LeashDataProvider;
|
||||||
import top.r3944realms.superleadrope.content.capability.provider.LeashStateProvider;
|
import top.r3944realms.superleadrope.content.capability.provider.LeashStateProvider;
|
||||||
|
|
|
||||||
|
|
@ -42,9 +42,9 @@ import org.jetbrains.annotations.Nullable;
|
||||||
import top.r3944realms.superleadrope.CommonEventHandler;
|
import top.r3944realms.superleadrope.CommonEventHandler;
|
||||||
import top.r3944realms.superleadrope.SuperLeadRope;
|
import top.r3944realms.superleadrope.SuperLeadRope;
|
||||||
import top.r3944realms.superleadrope.api.event.SuperLeadRopeEvent;
|
import top.r3944realms.superleadrope.api.event.SuperLeadRopeEvent;
|
||||||
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.LeashInfo;
|
import top.r3944realms.superleadrope.api.type.capabilty.LeashInfo;
|
||||||
import top.r3944realms.superleadrope.compat.CurtainCompat;
|
import top.r3944realms.superleadrope.compat.CurtainCompat;
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
|
||||||
import top.r3944realms.superleadrope.config.LeashConfigManager;
|
import top.r3944realms.superleadrope.config.LeashConfigManager;
|
||||||
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
||||||
import top.r3944realms.superleadrope.core.register.SLPSoundEvents;
|
import top.r3944realms.superleadrope.core.register.SLPSoundEvents;
|
||||||
|
|
|
||||||
|
|
@ -26,8 +26,8 @@ import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import top.r3944realms.superleadrope.SuperLeadRope;
|
import top.r3944realms.superleadrope.SuperLeadRope;
|
||||||
import top.r3944realms.superleadrope.api.SLPCapability;
|
import top.r3944realms.superleadrope.api.SLPCapability;
|
||||||
import top.r3944realms.superleadrope.content.capability.impi.LeashDataImpl;
|
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
||||||
|
import top.r3944realms.superleadrope.content.capability.impi.LeashDataImpl;
|
||||||
|
|
||||||
public class LeashDataProvider implements ICapabilitySerializable<CompoundTag> {
|
public class LeashDataProvider implements ICapabilitySerializable<CompoundTag> {
|
||||||
public static final ResourceLocation LEASH_DATA_REL = new ResourceLocation(SuperLeadRope.MOD_ID, "leash_data");
|
public static final ResourceLocation LEASH_DATA_REL = new ResourceLocation(SuperLeadRope.MOD_ID, "leash_data");
|
||||||
|
|
|
||||||
|
|
@ -27,8 +27,8 @@ import org.jetbrains.annotations.Nullable;
|
||||||
import top.r3944realms.superleadrope.CommonEventHandler;
|
import top.r3944realms.superleadrope.CommonEventHandler;
|
||||||
import top.r3944realms.superleadrope.SuperLeadRope;
|
import top.r3944realms.superleadrope.SuperLeadRope;
|
||||||
import top.r3944realms.superleadrope.api.SLPCapability;
|
import top.r3944realms.superleadrope.api.SLPCapability;
|
||||||
import top.r3944realms.superleadrope.content.capability.impi.LeashStateImpl;
|
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashState;
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashState;
|
||||||
|
import top.r3944realms.superleadrope.content.capability.impi.LeashStateImpl;
|
||||||
|
|
||||||
public class LeashStateProvider implements ICapabilitySerializable<CompoundTag> {
|
public class LeashStateProvider implements ICapabilitySerializable<CompoundTag> {
|
||||||
public static final ResourceLocation LEASH_STATE_REL = new ResourceLocation(SuperLeadRope.MOD_ID, "leash_state");
|
public static final ResourceLocation LEASH_STATE_REL = new ResourceLocation(SuperLeadRope.MOD_ID, "leash_state");
|
||||||
|
|
|
||||||
|
|
@ -31,8 +31,8 @@ import net.minecraft.world.level.gameevent.GameEvent;
|
||||||
import net.minecraftforge.common.extensions.IForgeItem;
|
import net.minecraftforge.common.extensions.IForgeItem;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import top.r3944realms.superleadrope.api.SuperLeadRopeApi;
|
import top.r3944realms.superleadrope.api.SuperLeadRopeApi;
|
||||||
import top.r3944realms.superleadrope.content.SLPToolTier;
|
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
||||||
|
import top.r3944realms.superleadrope.content.SLPToolTier;
|
||||||
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
||||||
import top.r3944realms.superleadrope.core.register.SLPSoundEvents;
|
import top.r3944realms.superleadrope.core.register.SLPSoundEvents;
|
||||||
import top.r3944realms.superleadrope.util.capability.LeashDataInnerAPI;
|
import top.r3944realms.superleadrope.util.capability.LeashDataInnerAPI;
|
||||||
|
|
|
||||||
|
|
@ -28,8 +28,8 @@ import net.minecraft.world.level.gameevent.GameEvent;
|
||||||
import net.minecraftforge.event.entity.player.AttackEntityEvent;
|
import net.minecraftforge.event.entity.player.AttackEntityEvent;
|
||||||
import net.minecraftforge.event.entity.player.PlayerInteractEvent;
|
import net.minecraftforge.event.entity.player.PlayerInteractEvent;
|
||||||
import top.r3944realms.superleadrope.api.SuperLeadRopeApi;
|
import top.r3944realms.superleadrope.api.SuperLeadRopeApi;
|
||||||
import top.r3944realms.superleadrope.content.capability.impi.LeashDataImpl;
|
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
||||||
|
import top.r3944realms.superleadrope.content.capability.impi.LeashDataImpl;
|
||||||
import top.r3944realms.superleadrope.content.item.SuperLeadRopeItem;
|
import top.r3944realms.superleadrope.content.item.SuperLeadRopeItem;
|
||||||
import top.r3944realms.superleadrope.core.register.SLPItems;
|
import top.r3944realms.superleadrope.core.register.SLPItems;
|
||||||
import top.r3944realms.superleadrope.core.register.SLPSoundEvents;
|
import top.r3944realms.superleadrope.core.register.SLPSoundEvents;
|
||||||
|
|
|
||||||
|
|
@ -21,8 +21,8 @@ import net.minecraft.world.entity.player.Player;
|
||||||
import org.jetbrains.annotations.ApiStatus;
|
import org.jetbrains.annotations.ApiStatus;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import top.r3944realms.superleadrope.api.SLPCapability;
|
import top.r3944realms.superleadrope.api.SLPCapability;
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.LeashInfo;
|
|
||||||
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
||||||
|
import top.r3944realms.superleadrope.api.type.capabilty.LeashInfo;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -21,12 +21,17 @@ import net.minecraft.world.level.Level;
|
||||||
import net.minecraft.world.phys.AABB;
|
import net.minecraft.world.phys.AABB;
|
||||||
import net.minecraft.world.phys.Vec3;
|
import net.minecraft.world.phys.Vec3;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashData;
|
||||||
|
import top.r3944realms.superleadrope.api.type.capabilty.ILeashState;
|
||||||
import top.r3944realms.superleadrope.api.type.util.ILeashHelper;
|
import top.r3944realms.superleadrope.api.type.util.ILeashHelper;
|
||||||
import top.r3944realms.superleadrope.api.workspace.IWorkSpaceHelper;
|
import top.r3944realms.superleadrope.api.workspace.IWorkSpaceHelper;
|
||||||
import top.r3944realms.superleadrope.content.capability.impi.LeashDataImpl;
|
import top.r3944realms.superleadrope.content.capability.impi.LeashDataImpl;
|
||||||
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
import top.r3944realms.superleadrope.content.entity.SuperLeashKnotEntity;
|
||||||
|
import top.r3944realms.superleadrope.util.capability.LeashDataInnerAPI;
|
||||||
|
import top.r3944realms.superleadrope.util.capability.LeashStateInnerAPI;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Optional;
|
||||||
import java.util.function.Predicate;
|
import java.util.function.Predicate;
|
||||||
|
|
||||||
public class WorkSpaceHelper implements IWorkSpaceHelper {
|
public class WorkSpaceHelper implements IWorkSpaceHelper {
|
||||||
|
|
@ -59,4 +64,14 @@ public class WorkSpaceHelper implements IWorkSpaceHelper {
|
||||||
return LeashDataImpl.isLeashable(pEntity);
|
return LeashDataImpl.isLeashable(pEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Optional<ILeashData> getLeashData(@NotNull Entity pEntity) {
|
||||||
|
return LeashDataInnerAPI.getLeashData(pEntity);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Optional<ILeashState> getLeashState(@NotNull Entity pEntity) {
|
||||||
|
return LeashStateInnerAPI.getLeashState(pEntity);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user