ComponentRegistryProxy class
Пакет: com.hypixel.hytale.component
Файл: com/hypixel/hytale/component/ComponentRegistryProxy.java
implements: IComponentRegistry<ECS_TYPE>
Поля (3)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
ComponentRegistry<ECS_TYPE> |
registry |
|
Class |
var2 |
|
Class |
var3 |
Методы (9)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
if if(!var2x) |
|
|
if if(!var2x) |
|
|
if if(!var2) |
|
|
if if(!var2) |
|
|
if if(!var2) |
|
|
if if(!var2) |
|
|
if if(!var2) |
|
|
if if(!var2) |
public |
void |
shutdownvoid shutdown() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.component;
class="kw">import com.hypixel.hytale.codec.builder.BuilderCodec;
class="kw">import com.hypixel.hytale.component.event.EntityEventType;
class="kw">import com.hypixel.hytale.component.event.WorldEventType;
class="kw">import com.hypixel.hytale.component.spatial.SpatialResource;
class="kw">import com.hypixel.hytale.component.spatial.SpatialStructure;
class="kw">import com.hypixel.hytale.component.system.EcsEvent;
class="kw">import com.hypixel.hytale.component.system.ISystem;
class="kw">import com.hypixel.hytale.function.consumer.BooleanConsumer;
class="kw">import java.util.List;
class="kw">import java.util.function.Supplier;
class="kw">import javax.annotation.Nonnull;
class="kw">public class ComponentRegistryProxy<ECS_TYPE> class="kw">implements IComponentRegistry<ECS_TYPE> {
class="kw">private class="kw">final ComponentRegistry<ECS_TYPE> registry;
class="kw">private class="kw">final List<BooleanConsumer> unregister;
class="kw">public ComponentRegistryProxy(List<BooleanConsumer> var1, ComponentRegistry<ECS_TYPE> var2) {
this.unregister = var1;
this.registry = var2;
}
class="kw">public void shutdown() {
}
@Nonnull
@Override
class="kw">public <T class="kw">extends Component<ECS_TYPE>> ComponentType<ECS_TYPE, T> registerComponent(@Nonnull Class<? super T> var1, @Nonnull Supplier<T> var2) {
class="kw">return this.registerComponentType(this.registry.registerComponent(var1, var2));
}
@Nonnull
@Override
class="kw">public <T class="kw">extends Component<ECS_TYPE>> ComponentType<ECS_TYPE, T> registerComponent(
@Nonnull Class<? super T> var1, @Nonnull String var2, @Nonnull BuilderCodec<T> var3
) {
class="kw">return this.registerComponentType(this.registry.registerComponent(var1, var2, var3));
}
@Deprecated(forRemoval = true)
@Nonnull
class="kw">public <T class="kw">extends Component<ECS_TYPE>> ComponentType<ECS_TYPE, T> registerComponent(
@Nonnull Class<? super T> var1, @Nonnull String var2, @Nonnull BuilderCodec<T> var3, boolean var4
) {
class="kw">return this.registerComponentType(this.registry.registerComponent(var1, var2, var3, var4));
}
@Nonnull
@Override
class="kw">public <T class="kw">extends Resource<ECS_TYPE>> ResourceType<ECS_TYPE, T> registerResource(@Nonnull Class<? super T> var1, @Nonnull Supplier<T> var2) {
class="kw">return this.registerResourceType(this.registry.registerResource(var1, var2));
}
@Nonnull
@Override
class="kw">public <T class="kw">extends Resource<ECS_TYPE>> ResourceType<ECS_TYPE, T> registerResource(
@Nonnull Class<? super T> var1, @Nonnull String var2, @Nonnull BuilderCodec<T> var3
) {
class="kw">return this.registerResourceType(this.registry.registerResource(var1, var2, var3));
}
@Nonnull
@Override
class="kw">public ResourceType<ECS_TYPE, SpatialResource<Ref<ECS_TYPE>, ECS_TYPE>> registerSpatialResource(@Nonnull Supplier<SpatialStructure<Ref<ECS_TYPE>>> var1) {
class="kw">return this.registerResourceType(this.registry.registerSpatialResource(var1));
}
@Nonnull
@Override
class="kw">public <T class="kw">extends ISystem<ECS_TYPE>> SystemType<ECS_TYPE, T> registerSystemType(@Nonnull Class<? super T> var1) {
class="kw">return this.registerSystemType(this.registry.registerSystemType(var1));
}
@Nonnull
@Override
class="kw">public <T class="kw">extends EcsEvent> EntityEventType<ECS_TYPE, T> registerEntityEventType(@Nonnull Class<? super T> var1) {
class="kw">return this.registerEntityEventType(this.registry.registerEntityEventType(var1));
}
@Nonnull
@Override
class="kw">public <T class="kw">extends EcsEvent> WorldEventType<ECS_TYPE, T> registerWorldEventType(@Nonnull Class<? super T> var1) {
class="kw">return this.registerWorldEventType(this.registry.registerWorldEventType(var1));
}
@Nonnull
@Override
class="kw">public SystemGroup<ECS_TYPE> registerSystemGroup() {
class="kw">return this.registerSystemGroup(this.registry.registerSystemGroup());
}
@Override
class="kw">public void registerSystem(@Nonnull ISystem<ECS_TYPE> var1) {
Class var2 = (Class<? class="kw">extends ISystem<ECS_TYPE>>)var1.getClass();
this.registry.registerSystem(var1);
this.unregister.add(var2x -> {
if (!var2x) {
if (this.registry.hasSystemClass(var2)) {
this.registry.unregisterSystem(var2);
}
}
});
}
@Deprecated(forRemoval = true)
class="kw">public void registerSystem(@Nonnull ISystem<ECS_TYPE> var1, boolean var2) {
Class var3 = (Class<? class="kw">extends ISystem<ECS_TYPE>>)var1.getClass();
this.registry.registerSystem(var1, var2);
this.unregister.add(var2x -> {
if (!var2x) {
if (this.registry.hasSystemClass(var3)) {
this.registry.unregisterSystem(var3);
}
}
});
}
@Nonnull
class="kw">private <T class="kw">extends Component<ECS_TYPE>> ComponentType<ECS_TYPE, T> registerComponentType(@Nonnull ComponentType<ECS_TYPE, T> var1) {
this.unregister.add(var2 -> {
if (!var2) {
if (var1.isValid()) {
this.registry.unregisterComponent(var1);
}
}
});
class="kw">return var1;
}
@Nonnull
class="kw">private <T class="kw">extends Resource<ECS_TYPE>> ResourceType<ECS_TYPE, T> registerResourceType(@Nonnull ResourceType<ECS_TYPE, T> var1) {
this.unregister.add(var2 -> {
if (!var2) {
if (var1.isValid()) {
this.registry.unregisterResource(var1);
}
}
});
class="kw">return var1;
}
@Nonnull
class="kw">private <T class="kw">extends ISystem<ECS_TYPE>> SystemType<ECS_TYPE, T> registerSystemType(@Nonnull SystemType<ECS_TYPE, T> var1) {
this.unregister.add(var2 -> {
if (!var2) {
if (var1.isValid()) {
this.registry.unregisterSystemType(var1);
}
}
});
class="kw">return var1;
}
@Nonnull
class="kw">private <T class="kw">extends EcsEvent> EntityEventType<ECS_TYPE, T> registerEntityEventType(@Nonnull EntityEventType<ECS_TYPE, T> var1) {
this.unregister.add(var2 -> {
if (!var2) {
if (var1.isValid()) {
this.registry.unregisterEntityEventType(var1);
}
}
});
class="kw">return var1;
}
@Nonnull
class="kw">private <T class="kw">extends EcsEvent> WorldEventType<ECS_TYPE, T> registerWorldEventType(@Nonnull WorldEventType<ECS_TYPE, T> var1) {
this.unregister.add(var2 -> {
if (!var2) {
if (var1.isValid()) {
this.registry.unregisterWorldEventType(var1);
}
}
});
class="kw">return var1;
}
@Nonnull
class="kw">private SystemGroup<ECS_TYPE> registerSystemGroup(@Nonnull SystemGroup<ECS_TYPE> var1) {
this.unregister.add(var2 -> {
if (!var2) {
if (var1.isValid()) {
this.registry.unregisterSystemGroup(var1);
}
}
});
class="kw">return var1;
}
}