53 lines
1.7 KiB
C#
53 lines
1.7 KiB
C#
using System.Collections.Generic;
|
||
|
||
namespace Continentis.MainGame.Saving
|
||
{
|
||
/// <summary>
|
||
/// 单个玩家英雄的存档快照。
|
||
/// 记录英雄在跑局中跨战斗保持的所有可变状态。
|
||
/// </summary>
|
||
public class HeroSave
|
||
{
|
||
/// <summary>
|
||
/// 英雄角色数据 DataID,格式:CharacterData_ModName_HeroName
|
||
/// 通过 ModManager.GetData<CharacterData>(characterDataID) 还原。
|
||
/// </summary>
|
||
public string characterDataID;
|
||
|
||
/// <summary>
|
||
/// 当前 HP(跨战斗保持,受到伤害后降低,不自动回满)。
|
||
/// </summary>
|
||
public int currentHP;
|
||
|
||
/// <summary>
|
||
/// 当前最大 HP(初始值来自 CharacterData,装备或跑局事件可能修改)。
|
||
/// </summary>
|
||
public int maxHP;
|
||
|
||
/// <summary>
|
||
/// 当前完整牌组快照,包括初始牌、奖励牌和装备附带牌。
|
||
/// </summary>
|
||
public List<CardSave> deck;
|
||
|
||
/// <summary>
|
||
/// 当前装备 DataID 列表,格式:EquipmentData_ModName_EquipmentName
|
||
/// 通过 ModManager.GetData<EquipmentData>(id) 还原。
|
||
/// </summary>
|
||
public List<string> equipmentIDs;
|
||
|
||
public HeroSave()
|
||
{
|
||
deck = new List<CardSave>();
|
||
equipmentIDs = new List<string>();
|
||
}
|
||
|
||
public HeroSave(string characterDataID, int currentHP, int maxHP)
|
||
{
|
||
this.characterDataID = characterDataID;
|
||
this.currentHP = currentHP;
|
||
this.maxHP = maxHP;
|
||
deck = new List<CardSave>();
|
||
equipmentIDs = new List<string>();
|
||
}
|
||
}
|
||
} |