22 lines
695 B
C#
22 lines
695 B
C#
|
using SlugBase.Features;
|
||
|
using static SlugBase.Features.FeatureTypes;
|
||
|
using SlugBase;
|
||
|
|
||
|
namespace JilloSlug;
|
||
|
|
||
|
internal static class MarkFeature {
|
||
|
public static readonly PlayerFeature<bool> Mark = PlayerBool("jillo/has_mark");
|
||
|
|
||
|
public static void AddHooks() {
|
||
|
On.SaveState.ctor += SaveState_ctor;
|
||
|
}
|
||
|
|
||
|
private static void SaveState_ctor(On.SaveState.orig_ctor orig, SaveState self, SlugcatStats.Name slugcat, PlayerProgression progression) {
|
||
|
orig(self, slugcat, progression);
|
||
|
|
||
|
if (SlugBaseCharacter.TryGet(slugcat, out var chara) && Mark.TryGet(chara, out bool hasMark) && hasMark) {
|
||
|
self.deathPersistentSaveData.theMark = true;
|
||
|
}
|
||
|
}
|
||
|
}
|