Data class
Пакет: com.hypixel.hytale.component.system.tick
Файл: com/hypixel/hytale/component/system/tick/DelayedEntitySystem.java
implements: Resource<ECS_TYPE>
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
|
private float |
dt |
|
DelayedEntitySystem.Data |
var1 |
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
public Resource<ECS_TYPE> |
clonepublic Resource<ECS_TYPE> clone() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.component.system.tick;
class="kw">import com.hypixel.hytale.component.Resource;
class="kw">import com.hypixel.hytale.component.ResourceType;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import javax.annotation.Nonnull;
class="kw">public class="kw">abstract class DelayedEntitySystem<ECS_TYPE> class="kw">extends EntityTickingSystem<ECS_TYPE> {
class="kw">private class="kw">final ResourceType<ECS_TYPE, DelayedEntitySystem.Data<ECS_TYPE>> resourceType = this.registerResource(
DelayedEntitySystem.Data.class, DelayedEntitySystem.Data::new
);
class="kw">private class="kw">final float intervalSec;
class="kw">public DelayedEntitySystem(float var1) {
this.intervalSec = var1;
}
@Nonnull
class="kw">public ResourceType<ECS_TYPE, DelayedEntitySystem.Data<ECS_TYPE>> getResourceType() {
class="kw">return this.resourceType;
}
class="kw">public float getIntervalSec() {
class="kw">return this.intervalSec;
}
@Override
class="kw">public void tick(float var1, int var2, @Nonnull Store<ECS_TYPE> var3) {
DelayedEntitySystem.Data var4 = var3.getResource(this.resourceType);
var4.dt += var1;
if (var4.dt >= this.intervalSec) {
float var5 = var4.dt;
var4.dt = 0.0F;
super.tick(var5, var2, var3);
}
}
class="kw">private class="kw">static class Data<ECS_TYPE> class="kw">implements Resource<ECS_TYPE> {
class="kw">private float dt;
class="kw">private Data() {
}
@Nonnull
@Override
class="kw">public Resource<ECS_TYPE> clone() {
DelayedEntitySystem.Data var1 = new DelayedEntitySystem.Data<>();
var1.dt = this.dt;
class="kw">return var1;
}
}
}