Class CutsceneSessionManager

java.lang.Object
de.luckymcdev.foundryengine.common.cutscene.CutsceneSessionManager

public class CutsceneSessionManager extends Object
Server-side tracker for active cutscene playbacks per player (used for temporary invulnerability etc.).
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addInstance(net.minecraft.server.level.ServerPlayer player, int ticks)
     
    void
    cancelCutscene(net.minecraft.server.level.ServerPlayer player)
     
    boolean
    inCutscene(net.minecraft.server.level.ServerPlayer player)
     
    void
    onPlayerDisconnect(net.minecraft.server.level.ServerPlayer player)
    Clears this tracker for a player leaving the server.
    boolean
    shouldPlayerBeProtected(net.minecraft.server.level.ServerPlayer player)
    Returns true if the player is still protected by either tracker (cutscene or screen effect).
    void
    tick(net.minecraft.server.MinecraftServer server)
     

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • CutsceneSessionManager

      public CutsceneSessionManager()
  • Method Details

    • tick

      public void tick(net.minecraft.server.MinecraftServer server)
    • cancelCutscene

      public void cancelCutscene(net.minecraft.server.level.ServerPlayer player)
    • shouldPlayerBeProtected

      public boolean shouldPlayerBeProtected(net.minecraft.server.level.ServerPlayer player)
      Returns true if the player is still protected by either tracker (cutscene or screen effect). The predicate is evaluated from both trackers in one place so the outcome does not depend on which tracker ticks first.
    • onPlayerDisconnect

      public void onPlayerDisconnect(net.minecraft.server.level.ServerPlayer player)
      Clears this tracker for a player leaving the server. The corresponding screen-effect tracker entry is cleared from the disconnect handler in the mod entrypoint so stale entries cannot leave the player permanently invulnerable.
    • inCutscene

      public boolean inCutscene(net.minecraft.server.level.ServerPlayer player)
    • addInstance

      public void addInstance(net.minecraft.server.level.ServerPlayer player, int ticks)