public override void Process(Entity entity) { AdditionalAttachedVfxComponent aavc = entity.GetComponent <AdditionalAttachedVfxComponent>(); JustCreatedModifiersComponent justCreatedModifiers = entity.GetComponent <JustCreatedModifiersComponent>(); foreach (Modifier modifier in justCreatedModifiers.modifiers) { if (aavc.interestedModifierTypes.Contains(modifier.Type())) { foreach (GameObject gameObject in aavc.vfxs) { gameObject.SetActive(false); } break; } } CharacterStateTransitionComponent characterStateTransition = entity.GetComponent <CharacterStateTransitionComponent>(); if (characterStateTransition.justChanged) { if (characterStateTransition.from != Character.CharacterState.Default) { if (characterStateTransition.to == Character.CharacterState.Default) { foreach (GameObject gameObject in aavc.vfxs) { gameObject.SetActive(true); } } } } }
public override void Process(Entity entity) { if (!ccBreakEventConfig.enable) { return; } StatsComponent statsComponent = entity.GetComponent <StatsComponent>(); if (statsComponent.BasicStatsFromConfig.ShowRole() != EntityRole.Hero) { return; } JustCreatedModifiersComponent justCreatedModifiers = entity.GetComponent <JustCreatedModifiersComponent>(); bool found = false; Modifier triggerModifier = null; foreach (Modifier modifier in justCreatedModifiers.modifiers) { if (!CcBreakByInputModifier.interested.Contains(modifier.Type())) { continue; } triggerModifier = modifier; found = true; break; } if (!found) { return; } EquippedSkillsComponent equippedSkills = entity.GetComponent <EquippedSkillsComponent>(); if (!equippedSkills.EquippedSkills.IsPassiveRecovery2Equipped()) { return; } SkillComponent skillComponent = entity.GetComponent <SkillComponent>(); CcBreakByInputInfo info = new CcBreakByInputInfo(Target.Target, modifierConfig, null); Character character = skillComponent.Character; character.AddModifier(new CcBreakByInputModifier( info, entity, entity, triggerModifier, ccBreakEventConfig, environment, modifierInteractionCollection )); }