public static void Postfix(Character __instance, ref DamageList __result, Weapon _weapon, DamageList _damage, Vector3 _hitDir, Vector3 _hitPoint, float _angle, float _angleDir, Character _dealerChar, float _knockBack, bool _hitInventory)
        {
            bool flag = SkillRequirements.CanEnrageFromDamage(__instance) && __result.TotalDamage > 0f;

            if (flag)
            {
                __instance.StatusEffectMngr.AddStatusEffectBuildUp(ResourcesPrefabManager.Instance.GetStatusEffectPrefab("Rage"), _damage.TotalDamage, __instance);
            }
            bool flag2 = SkillRequirements.CanTerrify((_weapon != null) ? _weapon.OwnerCharacter : null) && __result.TotalDamage > 0f;

            if (flag2)
            {
                List <Character> list = new List <Character>();
                CharacterManager.Instance.FindCharactersInRange(__instance.CenterPosition, 7f, ref list);
                list = (from c in list
                        where c.Faction == __instance.Faction
                        select c).ToList <Character>();
                foreach (Character character in list)
                {
                    StatusEffectManager statusEffectMngr = character.StatusEffectMngr;
                    bool flag3 = statusEffectMngr != null;
                    if (flag3)
                    {
                        bool flag4 = statusEffectMngr.HasStatusEffect("Confusion");
                        statusEffectMngr.AddStatusEffectBuildUp(ResourcesPrefabManager.Instance.GetStatusEffectPrefab("Confusion"), Mathf.Clamp(__result.TotalDamage, 0f, 20f), character);
                        bool flag5 = !flag4 && statusEffectMngr.HasStatusEffect("Confusion");
                        if (flag5)
                        {
                            CasualStagger.Stagger(character);
                        }
                    }
                }
            }
        }