Exemplo n.º 1
0
        private void Check(On.RoR2.CharacterBody.orig_AddBuff orig, CharacterBody self, BuffIndex buff)
        {
            if (self)
            {
                if (self.activeBuffsList != null)
                {
                    if (self.activeBuffsListCount >= 4)
                    {
                        if (base.meetsBodyRequirement)
                        {
                            base.Grant();
                        }
                    }
                }
            }

            orig(self, buff);
        }
 private void CharacterBody_AddBuff(On.RoR2.CharacterBody.orig_AddBuff orig, CharacterBody self, BuffIndex buffType)
 {
     orig(self, buffType);
     if (buffType == Modules.Buffs.scaredDebuff)
     {
         if (self.skillLocator)
         {
             if (self.skillLocator.primary)
             {
                 self.skillLocator.primary.SetSkillOverride(self, Modules.Skills.NoAttackSkillDef, GenericSkill.SkillOverridePriority.Replacement);
             }
             if (self.skillLocator.secondary)
             {
                 self.skillLocator.secondary.SetSkillOverride(self, Modules.Skills.NoAttackSkillDef, GenericSkill.SkillOverridePriority.Replacement);
             }
             if (self.skillLocator.utility)
             {
                 self.skillLocator.utility.SetSkillOverride(self, Modules.Skills.NoAttackSkillDef, GenericSkill.SkillOverridePriority.Replacement);
             }
             if (self.skillLocator.special)
             {
                 self.skillLocator.special.SetSkillOverride(self, Modules.Skills.NoAttackSkillDef, GenericSkill.SkillOverridePriority.Replacement);
             }
         }
         if (self.inventory && self.inventory.activeEquipmentSlot <= 190)
         {
             byte newSlot = (byte)(self.inventory.activeEquipmentSlot + 200);
             self.inventory.SetActiveEquipmentSlot(newSlot);
         }
         var interactor = self.gameObject.GetComponent <Interactor>();
         if (interactor)
         {
             interactor.maxInteractionDistance = -Math.Abs(interactor.maxInteractionDistance);
         }
     }
 }