Class SpecialItemRefresher

java.lang.Object
server.specialitem.SpecialItemRefresher

public final class SpecialItemRefresher extends Object
特殊道具加成的週期安全網:每隔數秒掃一遍線上玩家,對「目前持有特殊道具」或「目前有特殊道具加成生效」者 觸發一次數值重算(recalcLocalStats),涵蓋沒有即時觸發點的生效/移除情況——尤其是 道具時間到自然消失(無任何背包異動事件),以及撿取/交易取得/倉庫取出等「取得即生效」的情況。

即時的移除(脫裝、丟棄、消耗、交易、存倉)已由各自的觸發點即時重算;本任務是補網,確保 「不管任何原因不符合條件,加成都會在數秒內移除」。重算本身具備過期判斷(已過期的道具不計入),故過期道具 即使尚未被背包清理,加成也會在此被移除。當沒有任何特殊道具設定時整個任務直接略過、零負擔。

沿用 PlayerAutoSaver 的排程模式(Timer.WorldTimer);由 server.Start 在三大伺服器 就緒後呼叫 start() 註冊。每個角色各自 try/catch,單一角色失敗不影響其餘角色。

  • Method Details

    • start

      public static void start()
      註冊週期安全網任務(首次延遲一個完整間隔後開始,之後每間隔執行一次)。重複呼叫為 no-op。