Skip to content

PP 系统

PP(Power Point)是 Seer Mod 的核心卡牌机制,每张赛尔卡牌拥有 PP 值,打出时消耗 PP,PP 耗尽后卡牌无法主动打出。

基本规则

PP 字段

每张赛尔卡牌包含以下字段:

  • Pp:当前 PP 值
  • MaxPp:最大 PP 值(打出时消耗 1 点 PP)

打出消耗

  • 每次打出消耗 1 点 PP(基础值)
  • MaxPp = 0 的牌不消耗 PP
  • 自动打出(薇、悼、附魔触发)不消耗 PP
  • Boss 免费效果(SeerBossPpFreePower)存在时不消耗 PP

可打出判定

条件可否打出
MaxPp <= 0可打
Pp > 0可打
拥有「无为觉者」遗物可打(即使 PP=0)
其他情况不可打

PP 消耗修正

部分能力会修改 PP 消耗:

能力效果
腐蚀能量一PP 消耗 ×2
腐蚀能量二PP 消耗 += DynamicVars["PpIncrease"]
罗生门PP 消耗 ×3

PP 保护机制

SeerPpProtectionPower 会阻止 PP 减少:

  • PP setter 中检查:如果非内部使用且 PP 要减少,直接 return
  • 绕过保护的方式:SetPpInternal(value)(设置 _isUsingPp = true

PP 自动管理

「群星的礼赠」遗物(SeerElementalCore)提供 PP 自动循环:

  • 回合结束:抽牌堆/弃牌堆/手牌中 PP≤0 的赛尔 PP 卡移入消耗堆
  • 己方回合开始前:消耗堆中 PP>0 的赛尔 PP 卡移回弃牌堆

形成"休息-再战"循环,让消耗的卡牌在后续回合重新可用。

深克隆行为

卡牌克隆时(如复制、生成):

  • _pp = _maxPp(PP 重置为最大值,不继承原 PP)
  • 必须调用 UpdateDynamicVars() + ReapplyDynamicKeywords()

动态关键词系统

PP 卡牌支持 14 个动态关键词 flag,根据 flag 状态动态添加关键词:

  • FlagShatteredHeartFlagVigil 等 14 个常量
  • AddDynamicKeyword(flag) 添加 flag
  • ReapplyDynamicKeywords() 重新应用所有 flag 对应的关键词

资源路径

  • 卡图:res://seer/images/packed/card_portraits/seer/{snake_case}.png

源码参考

  • SeerPpCardModel.cs - PP 卡牌基类
  • SeerPpProtectionPower.cs - PP 保护能力
  • SeerBossPpFreePower.cs - Boss 免费能力
  • SeerInactionAwakener - 无为觉者遗物
  • SeerElementalCore - 群星的礼赠遗物

非官方玩家维护资料站,内容基于 Seer Mod 源码