public CcBreakByInputModifierAutoAttachmentSystem(Environment environment) : base(aspect) { this.environment = environment; creationPromise = new Promise(); ResourcePreload resourcePreload = new ResourcePreload(); resourcePreload.LoadModifierInteractionConfig() .Then(interactions => { modifierInteractionCollection = interactions; return(resourcePreload.LoadCcBreakByInputEventConfig()); }) .Then(config => { ccBreakEventConfig = config; modifierConfig = config.ConfigObj; creationPromise.Resolve(); }); }
public CcBreakByInputModifier(ModifierInfo info, Entity casterEntity, Entity targetEntity, Modifier parentModifier, CcBreakByInputModifierEventConfig eventConfig, Environment environment, CollectionOfInteractions modifierInteractionCollection) : base(info, casterEntity, targetEntity, environment, modifierInteractionCollection) { this.info = (CcBreakByInputInfo)info; this.parentModifier = parentModifier; this.eventConfig = eventConfig; this.environment = environment; this.modifierInteractionCollection = modifierInteractionCollection; mainLifetimes.Add(new ParentModifierLifetime(parentModifier)); smComponent = targetEntity.GetComponent <HeroStateMachineComponent>(); if (smComponent == null) { smComponent = targetEntity.GetComponent <MonsterStateMachineComponent>(); } userInput = (DefaultUserInput)smComponent.UserInput; EquippedSkills equippedSkills = targetEntity.GetComponent <EquippedSkillsComponent>().EquippedSkills; skillId = equippedSkills.PassiveRecovery2.SkillId; character = targetEntity.GetComponent <SkillComponent>().Character; }