StaminaModule class

Пакет: com.hypixel.hytale.server.core.modules.entity.stamina

Файл: com/hypixel/hytale/server/core/modules/entity/stamina/StaminaModule.java

extends: JavaPlugin

Поля (2)

МодификаторыТипИмя
final PluginManifest MANIFEST
instance

Методы (4)

МодификаторыВозвратСигнатура
static StaminaModule getStaminaModule get()
public ResourceType<EntityStore, SprintStaminaRegenDelay> getSprintRegenDelayResourceTypeResourceType<EntityStore, SprintStaminaRegenDelay> getSprintRegenDelayResourceType()
static void onGameplayConfigsLoadedvoid onGameplayConfigsLoaded(LoadedAssetsEvent<String, GameplayConfig, AssetMap<String, GameplayConfig>> var0)
abstract super super(var1)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.modules.entity.stamina;

class="kw">import com.hypixel.hytale.assetstore.AssetMap;
class="kw">import com.hypixel.hytale.assetstore.event.LoadedAssetsEvent;
class="kw">import com.hypixel.hytale.common.plugin.PluginManifest;
class="kw">import com.hypixel.hytale.component.ResourceType;
class="kw">import com.hypixel.hytale.server.core.asset.type.gameplay.GameplayConfig;
class="kw">import com.hypixel.hytale.server.core.modules.entity.EntityModule;
class="kw">import com.hypixel.hytale.server.core.modules.entitystats.EntityStatsModule;
class="kw">import com.hypixel.hytale.server.core.plugin.JavaPlugin;
class="kw">import com.hypixel.hytale.server.core.plugin.JavaPluginInit;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;

class="kw">public class StaminaModule class="kw">extends JavaPlugin {
   class="kw">public class="kw">static class="kw">final PluginManifest MANIFEST = PluginManifest.corePlugin(StaminaModule.class)
      .depends(EntityModule.class)
      .depends(EntityStatsModule.class)
      .build();
   class="kw">private class="kw">static StaminaModule instance;
   class="kw">private ResourceType<EntityStore, SprintStaminaRegenDelay> sprintRegenDelayResourceType;

   class="kw">public StaminaModule(@Nonnull JavaPluginInit var1) {
      super(var1);
      instance = this;
   }

   @Override
   class="kw">protected void setup() {
      this.sprintRegenDelayResourceType = this.getEntityStoreRegistry().registerResource(SprintStaminaRegenDelay.class, SprintStaminaRegenDelay::new);
      this.getEntityStoreRegistry().registerSystem(new StaminaSystems.SprintStaminaEffectSystem());
      this.getCodecRegistry(GameplayConfig.PLUGIN_CODEC).register(StaminaGameplayConfig.class, "Stamina", StaminaGameplayConfig.CODEC);
      this.getEventRegistry().register(LoadedAssetsEvent.class, GameplayConfig.class, StaminaModule::onGameplayConfigsLoaded);
   }

   class="kw">public ResourceType<EntityStore, SprintStaminaRegenDelay> getSprintRegenDelayResourceType() {
      class="kw">return this.sprintRegenDelayResourceType;
   }

   class="kw">protected class="kw">static void onGameplayConfigsLoaded(LoadedAssetsEvent<String, GameplayConfig, AssetMap<String, GameplayConfig>> var0) {
      SprintStaminaRegenDelay.invalidateResources();
   }

   class="kw">public class="kw">static StaminaModule get() {
      class="kw">return instance;
   }
}