EA 23.71 Nightly hotfix 1
January 1, 2025
7 files modified.
Important Changes
None.
AI_Fuck
@@ -137,7 +137,7 @@ public override IEnumerable<Status> Run()
cs
int num2 = cc.CHA / 2 + cc.Evalue(237) - tc.CHA * 2;
int num3 = ((EClass.rnd(cc.CHA / 2 + cc.Evalue(237)) <= EClass.rnd(tc.CHA * num / 100)) ? (-5 + Mathf.Clamp(num2 / 10, -30, 0)) : (5 + Mathf.Clamp(num2 / 20, 0, 20)));
int a = 20;
if (tc.IsPCFactionOrMinion && tc.affinity.CurrentStage >= Affinity.Stage.Fond)
if (tc.IsPCFactionOrMinion && tc.affinity.CurrentStage >= Affinity.Stage.Love)
{
num3 = ((EClass.rnd(3) == 0) ? 4 : 0);
a = 10;
Affinity
@@ -144,7 +144,7 @@ public void OnTalkRumor()
cs
{
CC.interest -= 10 + EClass.rnd(10);
}
if (CC.IsPCFactionOrMinion && CurrentStage >= Stage.Intimate)
if (CC.IsPCFactionOrMinion && CurrentStage >= Stage.Love)
{
if (EClass.rnd(4) == 0)
{
Chara
@@ -3278,7 +3278,7 @@ public void TickConditions()
cs
{
int phase = hygiene.GetPhase();
int num = 0;
num = ((!IsPC) ? ((phase > 3) ? 50 : 0) : ((phase > 3) ? 50 : 10));
num = ((!IsPC) ? ((phase > 3) ? 50 : 0) : ((phase > 3) ? 50 : 0));
if (num > EClass.rnd(100))
{
hygiene.Mod(-1);
FactionBranch
@@ -536,11 +536,14 @@ public void OnSimulateDay(VirtualDate date)
cs
{
luckyDay = true;
}
Log("lucky_day", EClass._zone.Name);
if (luckyDay && date.IsRealTime)
if (luckyDay)
{
Msg.Say("lucky_day", EClass._zone.Name);
SE.Play("godbless");
Log("lucky_day", EClass._zone.Name);
if (date.IsRealTime)
{
Msg.Say("lucky_day", EClass._zone.Name);
SE.Play("godbless");
}
}
}
Game
@@ -440,6 +440,16 @@ public void OnLoad()
cs
}
}
});
if (version.IsBelow(0, 23, 72))
{
foreach (Chara value2 in EClass.game.cards.globalCharas.Values)
{
if (!value2.isDead)
{
value2.c_wasInPcParty = false;
}
}
}
if (version.IsBelow(0, 23, 59))
{
while (TryDestroy())
@@ -452,11 +462,11 @@ public void OnLoad()
cs
}
if (version.IsBelow(0, 23, 51))
{
foreach (Chara value2 in EClass.game.cards.globalCharas.Values)
foreach (Chara value3 in EClass.game.cards.globalCharas.Values)
{
if (!(value2.id != "adv") && value2.IsPCFaction)
if (!(value3.id != "adv") && value3.IsPCFaction)
{
value2.idSkin = value2.uid % (value2.source._tiles.Length - 4) / 2 * 2 + ((!value2.IsMale) ? 1 : 0);
value3.idSkin = value3.uid % (value3.source._tiles.Length - 4) / 2 * 2 + ((!value3.IsMale) ? 1 : 0);
}
}
}
@@ -522,9 +532,9 @@ public void OnLoad()
cs
});
if (version.IsBelow(0, 22, 20))
{
foreach (Chara value3 in cards.globalCharas.Values)
foreach (Chara value4 in cards.globalCharas.Values)
{
value3.SetBool(18, enable: false);
value4.SetBool(18, enable: false);
}
}
if (version.IsBelow(0, 22, 22))
StatsHygiene
@@ -12,7 +12,7 @@ public class StatsHygiene : Stats
cs
public const int Garbage = 0;
public static int[] listMod = new int[6] { 125, 110, 100, 80, 50, 10 };
public static int[] listMod = new int[6] { 10, 50, 80, 100, 110, 120 };
public override int max => 100;
StatsStamina
@@ -29,27 +29,22 @@ public override void Mod(int a)
cs
a = -EClass.rnd(-a * 130 / 100 + 2);
}
int num = BaseStats.CC.Evalue(1403);
if (a < 0 && num > 0)
if (a < 0 && num > 0 && (a != -1 || EClass.rnd(num + 1) != 0))
{
if (a == -1 && num > EClass.rnd(3))
a = a * 100 / (100 + EClass.rnd(num + 1) * 20);
}
if (a != 0)
{
base.Mod(a);
if (a < 0)
{
return;
_ = BaseStats.CC.ShouldShowMsg;
}
a = a * 100 / (100 + EClass.rnd(num + 1) * 20);
if (a == 0)
if (a < 0 && value < 0)
{
return;
BaseStats.CC.DamageHP(-value, AttackSource.Fatigue);
}
}
base.Mod(a);
if (a < 0)
{
_ = BaseStats.CC.ShouldShowMsg;
}
if (a < 0 && value < 0)
{
BaseStats.CC.DamageHP(-value, AttackSource.Fatigue);
}
}
public override int GetPhase()