Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion mod/CHEVALIER/InterestingTrait.cs
Original file line number Diff line number Diff line change
Expand Up @@ -46,4 +46,4 @@ protected override void OnModLoad()
}
}
}
}
}
122 changes: 36 additions & 86 deletions mod/CHEVALIER/code/stats.cs
Original file line number Diff line number Diff line change
@@ -1,86 +1,36 @@
diff --git a/mod/CHEVALIER/code/stats.cs b/mod/CHEVALIER/code/stats.cs
index aecccbebd38802857f546b393ba30e2c699fa30e..0690b3affa9b9e0570f24298379603fda4d2cf7a 100644
--- a/mod/CHEVALIER/code/stats.cs
+++ b/mod/CHEVALIER/code/stats.cs
@@ -1,54 +1,41 @@
-namespace Chevalier.code
+namespace Chevalier.code
{
internal class stats
{
public static BaseStatAsset Resist;
public static BaseStatAsset Comprehension;

public static void Init()
{
- BaseStatAsset Chevalier = new BaseStatAsset();
- Chevalier.id = "Chevalier";
- Chevalier.normalize = true;
- Chevalier.normalize_min = -9999999;
- Chevalier.normalize_max = 9999999;
- //Chevalier.multiplier = true;
- Chevalier.used_only_for_civs = false;
- AssetManager.base_stats_library.add(Chevalier);
+ EnsureStat("Chevalier", -9999999f, 9999999f);

// 定义 Resist 属性
- Resist = new BaseStatAsset();
- Resist.id = "Resist";
- Resist.normalize = true;
- Resist.normalize_min = 0;
- Resist.normalize_max = 999999;
- Resist.used_only_for_civs = false;
- AssetManager.base_stats_library.add(Resist);
+ Resist = EnsureStat("Resist", 0f, 999999f);

- BaseStatAsset Dodge = new BaseStatAsset();
- Dodge.id = "Dodge";// 闪避率
- Dodge.normalize = true;
- Dodge.normalize_min = 0;
- Dodge.normalize_max = 99999;
- Dodge.used_only_for_civs = false;
- AssetManager.base_stats_library.add(Dodge);
-
- BaseStatAsset Accuracy = new BaseStatAsset();
- Accuracy.id = "Accuracy";// 命中率
- Accuracy.normalize = true;
- Accuracy.normalize_min = 0;
- Accuracy.normalize_max = 99999;
- Accuracy.used_only_for_civs = false;
- AssetManager.base_stats_library.add(Accuracy);
+ EnsureStat("Dodge", 0f, 99999f);
+ EnsureStat("Accuracy", 0f, 99999f);

// 定义领悟度属性
- Comprehension = new BaseStatAsset();
- Comprehension.id = "Comprehension";
- Comprehension.normalize = true;
- Comprehension.normalize_min = 0;
- Comprehension.normalize_max = 99999;
- Comprehension.used_only_for_civs = false;
- AssetManager.base_stats_library.add(Comprehension);
+ Comprehension = EnsureStat("Comprehension", 0f, 99999f);
+ }
+
+ private static BaseStatAsset EnsureStat(string pId, float pMin, float pMax)
+ {
+ var existing = AssetManager.base_stats_library.get(pId);
+ if (existing == null)
+ {
+ existing = new BaseStatAsset
+ {
+ id = pId
+ };
+ AssetManager.base_stats_library.add(existing);
+ }
+
+ existing.normalize = true;
+ existing.normalize_min = pMin;
+ existing.normalize_max = pMax;
+ existing.used_only_for_civs = false;
+ return existing;
}
}
-}
\ No newline at end of file
+}
namespace Chevalier.code
{
internal static class stats
{
public static BaseStatAsset Resist;
public static BaseStatAsset Comprehension;

public static void Init()
{
EnsureStat("Chevalier", -9999999f, 9999999f);
Resist = EnsureStat("Resist", 0f, 999999f);
EnsureStat("Dodge", 0f, 99999f);
EnsureStat("Accuracy", 0f, 99999f);
Comprehension = EnsureStat("Comprehension", 0f, 99999f);
}

private static BaseStatAsset EnsureStat(string pId, float pMin, float pMax)
{
var existing = AssetManager.base_stats_library.get(pId);
if (existing == null)
{
existing = new BaseStatAsset
{
id = pId
};
AssetManager.base_stats_library.add(existing);
}

existing.normalize = true;
existing.normalize_min = pMin;
existing.normalize_max = pMax;
existing.used_only_for_civs = false;
return existing;
}
}
}
4 changes: 1 addition & 3 deletions mod/WARRIOR/InterestingTrait.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
using HarmonyLib;
using PeerlessOverpoweringWarrior.code;
using NeoModLoader.api;
using System.IO;
using PeerlessOverpoweringWarrior.code;

namespace PeerlessOverpoweringWarrior
{
Expand Down Expand Up @@ -55,4 +53,4 @@ protected override void OnModLoad()
}
}
}
}
}
2 changes: 1 addition & 1 deletion mod/WARRIOR/code/Config.cs
Original file line number Diff line number Diff line change
Expand Up @@ -160,4 +160,4 @@ public static void NotifyXuanZhenBreakthroughCallBack(bool newValue)
NotifyXuanZhenBreakthrough = newValue;
}
}
}
}
13 changes: 7 additions & 6 deletions mod/WARRIOR/code/NotificationHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using UnityEngine.UI;
using System.Collections.Generic;
using System.Collections;
using PeerlessOverpoweringWarrior.code.Config;

namespace PeerlessOverpoweringWarrior.code
{
Expand Down Expand Up @@ -156,19 +157,19 @@ private static bool ShouldShowNotification(string newTrait)
// 检查是否是特定的高级境界突破
if (newTrait == "Warrior91" || newTrait == "Warrior91+") // 合道境
{
return PeerlessOverpoweringWarrior.code.Config.WarriorConfig.NotifyHarmonyBreakthrough;
return WarriorConfig.NotifyHarmonyBreakthrough;
}
else if (newTrait == "Warrior92" || newTrait == "Warrior92+") // 斩我境
{
return PeerlessOverpoweringWarrior.code.Config.WarriorConfig.NotifyZhanWoBreakthrough;
return WarriorConfig.NotifyZhanWoBreakthrough;
}
else if (newTrait == "Warrior93" || newTrait == "Warrior93+") // 武极境
{
return PeerlessOverpoweringWarrior.code.Config.WarriorConfig.NotifyWuJiBreakthrough;
return WarriorConfig.NotifyWuJiBreakthrough;
}
else if (newTrait == "FormationRealm6") // 玄真境
{
return PeerlessOverpoweringWarrior.code.Config.WarriorConfig.NotifyXuanZhenBreakthrough;
return WarriorConfig.NotifyXuanZhenBreakthrough;
}

// 其他境界突破默认显示通知
Expand Down Expand Up @@ -198,7 +199,7 @@ public static void ShowGrottoNotification(Actor actor, string traitId)
public static void ShowFormationRealm6Notification(Actor actor)
{
// 检查是否需要显示通知
if (!PeerlessOverpoweringWarrior.code.Config.WarriorConfig.NotifyXuanZhenBreakthrough)
if (!WarriorConfig.NotifyXuanZhenBreakthrough)
{
return; // 根据配置跳过通知
}
Expand Down Expand Up @@ -571,4 +572,4 @@ IEnumerator FadeOut()
Destroy(gameObject);
}
}
}
}
174 changes: 44 additions & 130 deletions mod/WARRIOR/code/stats.cs
Original file line number Diff line number Diff line change
@@ -1,130 +1,44 @@
diff --git a/mod/WARRIOR/code/stats.cs b/mod/WARRIOR/code/stats.cs
index e192474c0fe97cb50b4b4d9b63bafcea8a275aba..5fe7ca1cca2184649467eff5671ebd2e88009673 100644
--- a/mod/WARRIOR/code/stats.cs
+++ b/mod/WARRIOR/code/stats.cs
@@ -1,95 +1,58 @@
-namespace PeerlessOverpoweringWarrior.code
+namespace PeerlessOverpoweringWarrior.code
{
internal class stats
{
public static BaseStatAsset Resist;
public static BaseStatAsset TrueGang;
public static BaseStatAsset TrueGangTrueDamageMultiplier; // 真罡真伤倍数
public static BaseStatAsset TrueGangHealMultiplier; // 真罡回血倍数
public static BaseStatAsset TrueGangDamageReductionMultiplier; // 真罡伤害稀释倍数

public static BaseStatAsset Pattern;

public static void Init()
{
- BaseStatAsset Warrior = new BaseStatAsset();
- Warrior.id = "Warrior";
- Warrior.normalize = true;
- Warrior.normalize_min = -9999999;
- Warrior.normalize_max = 9999999;
- //Warrior.multiplier = true;
- Warrior.used_only_for_civs = false;
- AssetManager.base_stats_library.add(Warrior);
+ EnsureStat("Warrior", -9999999f, 9999999f);

// 定义阵纹属性
- Pattern = new BaseStatAsset();
- Pattern.id = "Pattern";
- Pattern.normalize = true;
- Pattern.normalize_min = -9999999;
- Pattern.normalize_max = 9999999;
- Pattern.used_only_for_civs = false;
- AssetManager.base_stats_library.add(Pattern);
+ Pattern = EnsureStat("Pattern", -9999999f, 9999999f);

// 定义真罡属性,与武道气血使用相同的上下限
- TrueGang = new BaseStatAsset();
- TrueGang.id = "TrueGang";
- TrueGang.normalize = true;
- TrueGang.normalize_min = -9999999;
- TrueGang.normalize_max = 9999999;
- TrueGang.used_only_for_civs = false;
- AssetManager.base_stats_library.add(TrueGang);
+ TrueGang = EnsureStat("TrueGang", -9999999f, 9999999f);

// 定义真罡真伤倍数属性
- TrueGangTrueDamageMultiplier = new BaseStatAsset();
- TrueGangTrueDamageMultiplier.id = "TrueGangTrueDamageMultiplier";
- TrueGangTrueDamageMultiplier.normalize = true;
- TrueGangTrueDamageMultiplier.normalize_min = 0;
- TrueGangTrueDamageMultiplier.normalize_max = 999999;
- TrueGangTrueDamageMultiplier.used_only_for_civs = false;
- AssetManager.base_stats_library.add(TrueGangTrueDamageMultiplier);
+ TrueGangTrueDamageMultiplier = EnsureStat("TrueGangTrueDamageMultiplier", 0f, 999999f);

// 定义真罡回血倍数属性
- TrueGangHealMultiplier = new BaseStatAsset();
- TrueGangHealMultiplier.id = "TrueGangHealMultiplier";
- TrueGangHealMultiplier.normalize = true;
- TrueGangHealMultiplier.normalize_min = 0;
- TrueGangHealMultiplier.normalize_max = 999999;
- TrueGangHealMultiplier.used_only_for_civs = false;
- AssetManager.base_stats_library.add(TrueGangHealMultiplier);
+ TrueGangHealMultiplier = EnsureStat("TrueGangHealMultiplier", 0f, 999999f);

// 定义真罡伤害稀释倍数属性
- TrueGangDamageReductionMultiplier = new BaseStatAsset();
- TrueGangDamageReductionMultiplier.id = "TrueGangDamageReductionMultiplier";
- TrueGangDamageReductionMultiplier.normalize = true;
- TrueGangDamageReductionMultiplier.normalize_min = 0;
- TrueGangDamageReductionMultiplier.normalize_max = 999999;
- TrueGangDamageReductionMultiplier.used_only_for_civs = false;
- AssetManager.base_stats_library.add(TrueGangDamageReductionMultiplier);
+ TrueGangDamageReductionMultiplier = EnsureStat("TrueGangDamageReductionMultiplier", 0f, 999999f);

// 定义 Resist 属性
- Resist = new BaseStatAsset();
- Resist.id = "Resist";
- Resist.normalize = true;
- Resist.normalize_min = 0;
- Resist.normalize_max = 999999;
- Resist.used_only_for_civs = false;
- AssetManager.base_stats_library.add(Resist);
+ Resist = EnsureStat("Resist", 0f, 999999f);

- BaseStatAsset Dodge = new BaseStatAsset();
- Dodge.id = "Dodge";// 闪避率
- Dodge.normalize = true;
- Dodge.normalize_min = 0;
- Dodge.normalize_max = 99999;
- Dodge.used_only_for_civs = false;
- AssetManager.base_stats_library.add(Dodge);
+ EnsureStat("Dodge", 0f, 99999f);
+ EnsureStat("Accuracy", 0f, 99999f);
+ }

- BaseStatAsset Accuracy = new BaseStatAsset();
- Accuracy.id = "Accuracy";// 命中率
- Accuracy.normalize = true;
- Accuracy.normalize_min = 0;
- Accuracy.normalize_max = 99999;
- Accuracy.used_only_for_civs = false;
- AssetManager.base_stats_library.add(Accuracy);
+ private static BaseStatAsset EnsureStat(string pId, float pMin, float pMax)
+ {
+ var existing = AssetManager.base_stats_library.get(pId);
+ if (existing == null)
+ {
+ existing = new BaseStatAsset
+ {
+ id = pId
+ };
+ AssetManager.base_stats_library.add(existing);
+ }
+
+ existing.normalize = true;
+ existing.normalize_min = pMin;
+ existing.normalize_max = pMax;
+ existing.used_only_for_civs = false;
+ return existing;
}
}
-}
\ No newline at end of file
+}
namespace PeerlessOverpoweringWarrior.code
{
internal static class stats
{
public static BaseStatAsset Resist;
public static BaseStatAsset TrueGang;
public static BaseStatAsset TrueGangTrueDamageMultiplier;
public static BaseStatAsset TrueGangHealMultiplier;
public static BaseStatAsset TrueGangDamageReductionMultiplier;
public static BaseStatAsset Pattern;

public static void Init()
{
EnsureStat("Warrior", -9999999f, 9999999f);
Pattern = EnsureStat("Pattern", -9999999f, 9999999f);
TrueGang = EnsureStat("TrueGang", -9999999f, 9999999f);
TrueGangTrueDamageMultiplier = EnsureStat("TrueGangTrueDamageMultiplier", 0f, 999999f);
TrueGangHealMultiplier = EnsureStat("TrueGangHealMultiplier", 0f, 999999f);
TrueGangDamageReductionMultiplier = EnsureStat("TrueGangDamageReductionMultiplier", 0f, 999999f);
Resist = EnsureStat("Resist", 0f, 999999f);
EnsureStat("Dodge", 0f, 99999f);
EnsureStat("Accuracy", 0f, 99999f);
}

private static BaseStatAsset EnsureStat(string pId, float pMin, float pMax)
{
var existing = AssetManager.base_stats_library.get(pId);
if (existing == null)
{
existing = new BaseStatAsset
{
id = pId
};
AssetManager.base_stats_library.add(existing);
}

existing.normalize = true;
existing.normalize_min = pMin;
existing.normalize_max = pMax;
existing.used_only_for_civs = false;
return existing;
}
}
}
2 changes: 1 addition & 1 deletion mod/西幻中文名/Code/Utils/GeneralUtils.cs
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,4 @@ public static TextAsset[] LoadAllFrom(string pPath)
}
return text_assets.ToArray();
}
}
}
Loading