Three new schems

This commit is contained in:
SD 2021-02-14 19:34:21 +05:30
parent 90ed79ba38
commit 0b44f205bc
No known key found for this signature in database
GPG key ID: E36B57EE08544BC5
11 changed files with 78 additions and 12 deletions

View file

@ -13,7 +13,6 @@ import org.dimdev.dimdoors.pockets.virtual.selection.ConditionalSelector;
import java.util.function.Supplier; import java.util.function.Supplier;
// TODO: do something about getting correct Pocket sizes // TODO: do something about getting correct Pocket sizes
public abstract class VirtualSingularPocket implements VirtualPocket { public abstract class VirtualSingularPocket implements VirtualPocket {
public static final Registry<VirtualSingularPocketType<? extends VirtualSingularPocket>> REGISTRY = FabricRegistryBuilder.from(new SimpleRegistry<VirtualSingularPocketType<? extends VirtualSingularPocket>>(RegistryKey.ofRegistry(new Identifier("dimdoors", "virtual_pocket_type")), Lifecycle.stable())).buildAndRegister(); public static final Registry<VirtualSingularPocketType<? extends VirtualSingularPocket>> REGISTRY = FabricRegistryBuilder.from(new SimpleRegistry<VirtualSingularPocketType<? extends VirtualSingularPocket>>(RegistryKey.ofRegistry(new Identifier("dimdoors", "virtual_pocket_type")), Lifecycle.stable())).buildAndRegister();
@ -51,14 +50,11 @@ public abstract class VirtualSingularPocket implements VirtualPocket {
public abstract String getKey(); public abstract String getKey();
public interface VirtualSingularPocketType<T extends VirtualSingularPocket> { public interface VirtualSingularPocketType<T extends VirtualSingularPocket> {
VirtualSingularPocketType<IdReference> ID_REFERENCE = register(new Identifier("dimdoors", IdReference.KEY), IdReference::new); VirtualSingularPocketType<IdReference> ID_REFERENCE = register(new Identifier("dimdoors", IdReference.KEY), IdReference::new);
VirtualSingularPocketType<TagReference> TAG_REFERENCE = register(new Identifier("dimdoors", TagReference.KEY), TagReference::new); VirtualSingularPocketType<TagReference> TAG_REFERENCE = register(new Identifier("dimdoors", TagReference.KEY), TagReference::new);
VirtualSingularPocketType<ConditionalSelector> DEPTH_DEPENDENT_SELECTOR = register(new Identifier("dimdoors", ConditionalSelector.KEY), ConditionalSelector::new); VirtualSingularPocketType<ConditionalSelector> DEPTH_DEPENDENT_SELECTOR = register(new Identifier("dimdoors", ConditionalSelector.KEY), ConditionalSelector::new);
VirtualSingularPocket fromTag(CompoundTag tag); VirtualSingularPocket fromTag(CompoundTag tag);
CompoundTag toTag(CompoundTag tag); CompoundTag toTag(CompoundTag tag);
@ -66,11 +62,11 @@ public abstract class VirtualSingularPocket implements VirtualPocket {
static void register() { static void register() {
} }
static <U extends VirtualSingularPocket> VirtualSingularPocketType<U> register(Identifier id, Supplier<U> constructor) { static <U extends VirtualSingularPocket> VirtualSingularPocketType<U> register(Identifier id, Supplier<U> factory) {
return Registry.register(REGISTRY, id, new VirtualSingularPocketType<U>() { return Registry.register(REGISTRY, id, new VirtualSingularPocketType<U>() {
@Override @Override
public VirtualSingularPocket fromTag(CompoundTag tag) { public VirtualSingularPocket fromTag(CompoundTag tag) {
return constructor.get().fromTag(tag); return factory.get().fromTag(tag);
} }
@Override @Override

View file

@ -0,0 +1,21 @@
{
"type": "dimdoors:schematic",
"id": "v2/custom/mob_prison",
"modifiers": [
{
"type": "dimdoors:rift_data",
"ids": [0],
"rift_data": "rift_data/pocket_entrance"
},
{
"type": "dimdoors:rift_data",
"ids": [1],
"rift_data": "rift_data/available_link"
},
{
"type": "dimdoors:rift_data",
"ids": [2],
"rift_data": "rift_data/available_link"
}
]
}

View file

@ -0,0 +1,11 @@
{
"type": "dimdoors:schematic",
"id": "v2/custom/rising_hand",
"modifiers": [
{
"type": "dimdoors:rift_data",
"ids": [0],
"rift_data": "rift_data/pocket_entrance"
}
]
}

View file

@ -0,0 +1,11 @@
{
"type": "dimdoors:schematic",
"id": "v2/custom/waiting_room",
"modifiers": [
{
"type": "dimdoors:rift_data",
"ids": [0],
"rift_data": "rift_data/pocket_entrance"
}
]
}

View file

@ -1,4 +1,18 @@
{ [
"id": "custom/purpur_hallway", {
"type": "dimdoors:id" "id": "custom/purpur_hallway",
} "type": "dimdoors:id"
},
{
"id": "custom/waiting_room",
"type": "dimdoors:id"
},
{
"id": "custom/mob_prison",
"type": "dimdoors:id"
},
{
"id": "custom/rising_hand",
"type": "dimdoors:id"
}
]

View file

@ -0,0 +1,13 @@
{
"destination": {
"type": "dimdoors:available_link",
"newRiftWeight": 1,
"weightMaximum": 100,
"coordFactor": 1,
"positiveDepthFactor": 80,
"negativeDepthFactor": 10000,
"acceptedGroups": [0],
"noLink": false,
"noLinkBack": false
}
}

View file

@ -6,4 +6,4 @@
"weight": 1.0, "weight": 1.0,
"type": "dimdoors:pocket_entrance" "type": "dimdoors:pocket_entrance"
} }
} }

View file

@ -2,4 +2,4 @@
"destination": { "destination": {
"type": "dimdoors:public_pocket" "type": "dimdoors:public_pocket"
} }
} }