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); } } }