// Token: 0x060003BC RID: 956 RVA: 0x0001FBB0 File Offset: 0x0001DDB0 public static int CalculateComfortLevel(Player player) { List <Piece> nearbyPieces = SE_Rested.GetNearbyPieces(player.transform.position); nearbyPieces.Sort(new Comparison <Piece>(SE_Rested.PieceComfortSort)); int num = 1; if (player.InShelter()) { num++; int i = 0; while (i < nearbyPieces.Count) { Piece piece = nearbyPieces[i]; if (i <= 0) { goto IL_77; } Piece piece2 = nearbyPieces[i - 1]; if ((piece.m_comfortGroup == Piece.ComfortGroup.None || piece.m_comfortGroup != piece2.m_comfortGroup) && !(piece.m_name == piece2.m_name)) { goto IL_77; } IL_80: i++; continue; IL_77: num += piece.m_comfort; goto IL_80; } } return(num); }
private static void UpdateStatusEffect(StatusEffect se, bool onPlayer = false) { string playerString = onPlayer ? " on local player " : " in ObjectDB "; if (se is SE_Stats stats) { switch (se.m_name) { case "$se_cold_name": BetterStaminaPlugin.DebugLog($"[{Localization.instance.Localize(se.m_name)}] Updating m_staminaRegenMultiplier{playerString}from {stats.m_staminaRegenMultiplier} to {BetterStaminaPlugin.coldStaminaRegenMultiplier.Value}"); stats.m_staminaRegenMultiplier = BetterStaminaPlugin.coldStaminaRegenMultiplier.Value; break; case "$se_wet_name": BetterStaminaPlugin.DebugLog($"[{Localization.instance.Localize(se.m_name)}] Updating m_staminaRegenMultiplier{playerString}from {stats.m_staminaRegenMultiplier} to {BetterStaminaPlugin.wetStaminaRegenMultiplier.Value}"); stats.m_staminaRegenMultiplier = BetterStaminaPlugin.wetStaminaRegenMultiplier.Value; break; case "$se_rested_name": BetterStaminaPlugin.DebugLog($"[{Localization.instance.Localize(se.m_name)}] Updating m_staminaRegenMultiplier{playerString}from {stats.m_staminaRegenMultiplier} to {BetterStaminaPlugin.restedStaminaRegenMultiplier.Value}"); stats.m_staminaRegenMultiplier = BetterStaminaPlugin.restedStaminaRegenMultiplier.Value; SE_Rested ser = se as SE_Rested; BetterStaminaPlugin.DebugLog($"[{Localization.instance.Localize(se.m_name)}] Updating m_TTLPerComfortLevel{playerString}from {ser.m_TTLPerComfortLevel} to {BetterStaminaPlugin.restedDurationPerComfortLvl.Value}"); ser.m_TTLPerComfortLevel = BetterStaminaPlugin.restedDurationPerComfortLvl.Value; break; } } }