Class RefSystem<ECS_TYPE>

java.lang.Object
com.hypixel.hytale.component.system.System<ECS_TYPE>
com.hypixel.hytale.component.system.RefSystem<ECS_TYPE>
Type Parameters:
ECS_TYPE - The store type
All Implemented Interfaces:
ISystem<ECS_TYPE>, QuerySystem<ECS_TYPE>
Direct Known Subclasses:
AmbientEmitterSystems.EntityRefAdded, AugmentProgressionRestoreSystem, BenchSystems.OnAddOrRemoved, BenchSystems.ProcessingBenchLifecycle, BlackboardSystems.SubscriptionLifecycleSystem, BlockMapMarker.OnAddRemove, BlockModule.BlockStateInfoRefSystem, BlockModule.ItemContainerStateRefSystem, CarriedBlockSystems.ApplyDroppedBlockEntityEffect, ChunkSpawningSystems.ChunkRefAdded, ChunkSuppressionSystems.ChunkAdded, ChunkSystems.OnChunkLoad, CloseWorldWhenBreakingDeviceSystems.EntityRemoved, CompanionBlockSpawnerSystems.AddOrRemove, ConfigurableInstanceBlock.OnRemove, CraftingPlugin.PlayerAddedSystem, DeathSystems.SpawnedDeathAnimation, DeleteEphemeralItemsOnSpawnSystem, DeployablesSystem.DeployableRegisterer, EncounterManagerSystems.LifecycleSystem, EntityModule.LegacyEntityRefSystem, EntityRemovalSystem, EntityStore.NetworkIdSystem, EntityStore.UUIDSystem, EntitySystems.ClearMarker, EntitySystems.UnloadEntityFromChunk, EphemeralItemDropsSystem, ExplosiveSystems.OnExplosiveAdded, FailedSpawnSystem, FarmingSystems.CoopResidentEntitySystem, FarmingSystems.OnCoopAdded, FarmingSystems.OnFarmBlockAdded, FarmingSystems.OnSoilAdded, FlockMembershipSystems.EntityRef, FlockSystems.EntityRemoved, GameModeTypeSystems.Setup, HardcoreGameOver.ApplyOnJoin, HardcoreLivesHud.ShowOnJoin, InstanceBlock.OnRemove, InstanceRemovalTitleSystem, InteractionSystems.CleanUpSystem, InteractionSystems.DropUnresolvedInteractions, ItemContainerSystems.OnAddedOrRemoved, KnockbackPredictionSystems.ClearOnRemove, LeavePortalButtonSystem, LegacyProjectileSystems.OnAddRefSystem, LocalSpawnBeaconSystem, LocalSpawnSetupSystem, MemoriesPlugin.PlayerAddedSystem, MergeWaitingBlocksSystem, MountSystems.RemoveBlockSeat, MountSystems.RemoveMounted, MountSystems.RemoveMountedBy, MovementStatesSystems.PlayerInitSystem, MusicPlayerSystems.Setup, NPCMountSystems.OnAdd, NPCMountSystems.OnPlayerRemove, NPCSystems.AddedFromExternalSystem, NPCSystems.AddedSystem, NPCSystems.AddSpawnEntityEffectSystem, ObjectiveLocationMarkerSystems.InitSystem, ObjectivePlayerSetupSystem, ParkourCheckpointSystems.Init, PlayerCraftingSystems.CraftingRefSystem, PlayerHudManagerSystems.InitializeSystem, PlayerMovementManagerSystems.PostAssignmentSystem, PlayerRefAddedSystem, PlayerSystems.NameplateRefSystem, PlayerSystems.PlayerAddedSystem, PlayerSystems.PlayerSpawnedSystem, PortalInvalidDestinationSystem, PortalTrackerSystems.TrackerSystem, ReachLocationMarkerSystems.EntityAdded, RespawnBlock.OnRemove, ReturnToHubButtonSystem, RoleSystems.RoleActivateSystem, SpawnBeaconSystems.EntityAdded, SpawnBeaconSystems.LegacyEntityAdded, SpawnMarkerBlockStateSystems.AddOrRemove, SpawnMarkerBlockStateSystems.SpawnMarkerAddedFromExternal, SpawnMarkerSuppressionSystem, SpawnMarkerSystems.CacheMarker, SpawnMarkerSystems.EntityAdded, SpawnMarkerSystems.EntityAddedFromExternal, SpawnReferenceSystems.BeaconAddRemoveSystem, SpawnReferenceSystems.MarkerAddRemoveSystem, SpawnSuppressionSystems.Suppressor, TrackedPlacement.OnAddRemove, TriggerVolumeChunkRegenSystem, TriggerVolumeEntityRemoveSystem, TriggerVolumeGroupWorldGenHandler, TriggerVolumeWorldGenHandler, TurnOffTeleportersSystem, UpdateLocationSystems.SpawnSystem, VoidEventRefSystem, VoidSpawnerSystems.Instantiate, WildernessEntitySystems.AddSystem, WildernessTrackerSystems.EntityAddRemove, WorldEventInitSystem, WorldSpawnTrackingSystem

public abstract class RefSystem<ECS_TYPE> extends System<ECS_TYPE> implements QuerySystem<ECS_TYPE>
A system type that allows for additional logic to be executed upon the addition/removal of an entity
  • Constructor Details

    • RefSystem

      public RefSystem()
  • Method Details

    • onEntityAdded

      public abstract void onEntityAdded(@Nonnull Ref<ECS_TYPE> ref, @Nonnull AddReason reason, @Nonnull Store<ECS_TYPE> store, @Nonnull CommandBuffer<ECS_TYPE> commandBuffer)
      Called after an entity has been added to a Store and has an Archetype that fulfills the Query provided by QuerySystem.getQuery()}.
      Parameters:
      ref - The entity reference of the added entity.
      reason - The reason for the entity being added.
      store - The store the entity was added to.
      commandBuffer - The command buffer to execute tasks. Note: The command buffer tasks are executed after all systems have processed the entity add.
    • onEntityRemove

      public abstract void onEntityRemove(@Nonnull Ref<ECS_TYPE> ref, @Nonnull RemoveReason reason, @Nonnull Store<ECS_TYPE> store, @Nonnull CommandBuffer<ECS_TYPE> commandBuffer)
      Called before an entity has been removed from a Store and has an Archetype that fulfills the Query provided by QuerySystem.getQuery()}.
      Parameters:
      ref - The entity reference of the removed entity.
      reason - The reason for the entity being removed.
      store - The store the entity is being removed from.
      commandBuffer - The command buffer to execute tasks. Note: The command buffer tasks are executed after all systems have processed the entity remove.