public Storm(Unit9 owner, MultiSleeper abilitySleeper, Sleeper orbwalkSleeper, ControllableUnitMenu menu) : base(owner, abilitySleeper, orbwalkSleeper, menu) { this.ComboAbilities = new Dictionary <AbilityId, Func <ActiveAbility, UsableAbility> > { { AbilityId.brewmaster_storm_cyclone, x => this.cyclone = new Cyclone(x) }, { AbilityId.brewmaster_storm_dispel_magic, x => this.dispel = new Dispel(x) }, { AbilityId.brewmaster_storm_wind_walk, x => this.windWalk = new WindWalk(x) }, { AbilityId.brewmaster_cinder_brew, x => this.cender = new DebuffAbility(x) }, }; this.MoveComboAbilities.Add(AbilityId.brewmaster_storm_wind_walk, _ => this.windWalk); }
private static void CheckGaleSteps(S_ABNORMALITY_END p) { if (!WindWalkIds.Contains(p.AbnormalityId)) { return; } if (!IsViewModelAvailable <ArcherLayoutVM>(out var vm)) { return; } vm !.WindWalk.Stop(); vm !.WindWalkProc = false; }
private static void CheckGaleSteps(S_ABNORMALITY_BEGIN p) { if (!WindWalkIds.Contains(p.AbnormalityId)) { return; } if (!IsViewModelAvailable <ArcherLayoutVM>(out var vm)) { return; } vm !.WindWalk.Start(p.Duration); vm !.WindWalkProc = true; }
private static void CheckWindWalk(S_ABNORMALITY_REFRESH p) { if (!WindWalkIds.Contains(p.AbnormalityId)) { return; } if (!IsViewModelAvailable <ArcherLayoutVM>(out var vm)) { return; } vm !.WindWalk.Refresh(p.Duration, CooldownMode.Normal); vm !.WindWalkProc = true; }