示例#1
0
        public ToEMPMetBlastRefMetBlastEMP(Hero me, Key key)
            : base(me, key)
        {
            this._tornado         = new Tornado(me, () => 0);
            this._emp1            = new EMP(me, this.EMPDelay1);
            this._meteor1         = new Meteor(me, this.MeteorDelay1);
            this._deafeningBlast1 = new DeafeningBlast(me, this.BlastDelay1);

            this._refresher       = new Refresher(me);
            this._meteor2         = new Meteor(me);
            this._deafeningBlast2 = new DeafeningBlast(me);
            this._emp2            = new EMP(me);
            this._sunstrike       = new Sunstrike(me);
            this._coldSnap        = new ColdSnap(me);

            // _sunstrike2.PositionChange = ...
            this.AbilitySequence = new List <ISequenceEntry>
            {
                new AwaitBlinkOrMove(me, () => this.EngageRange),
                this._tornado,
                new AwaitModifier("modifier_invoker_tornado", 3000),
                new AwaitBlinkOrMove(me, () => (int)this._meteor1.Ability.CastRange),
                this._emp1,
                this._meteor1,
                this._deafeningBlast1,
                this._refresher,
                this._meteor2,
                this._deafeningBlast2,
                this._emp2,
                this._coldSnap                            // sunstrike?
            };
        }
示例#2
0
        public AssassinationCombo(Hero me, Key key)
            : base(me, key)
        {
            this._tornado        = new Tornado(me, () => 0);
            this._sunstrike1     = new Sunstrike(me, this.SunstrikeDelay1);
            this._meteor1        = new Meteor(me, this.MeteorDelay1);
            this._deafeningBlast = new DeafeningBlast(me, this.BlastDelay);
            this._refresher      = new Refresher(me);
            this._meteor2        = new Meteor(me);
            this._sunstrike2     = new Sunstrike(me);

            // _sunstrike2.PositionChange = ...
            this.AbilitySequence = new List <ISequenceEntry>
            {
                new AwaitBlinkOrMove(me, () => this.EngageRange),
                this._tornado,
                new AwaitModifier("modifier_invoker_tornado", 3000),
                new AwaitBlinkOrMove(me, () => (int)this._meteor1.Ability.CastRange),
                this._sunstrike1,
                this._meteor1,
                this._deafeningBlast,
                this._refresher,
                this._meteor2,
                this._sunstrike2
            };
        }
示例#3
0
文件: Core.cs 项目: Mej0/a
        public Core()
        {
            // AssemblyLogs.GLboal..
            this.me = ObjectManager.LocalHero;

            InvokerMenu.BuildMenu();
            InvokerMenu.EventAggregator.Subscribe(this);
            InvokerMenu.ActiveComboChanged  += this.InvokerMenu_ActiveComboChanged;
            InvokerMenu.GhostWalkKeyPressed += this.InvokerMenu_GhostWalkKeyPressed;

            this.sunstrike = new Sunstrike(this.me);
            this.ghostWalk = new GhostWalk(this.me);

            this.invokedBase =
                this.me.Spellbook.Spells.FirstOrDefault(x => x.ClassID == ClassID.CDOTA_Ability_Invoker_InvokedBase);

            // add combos
            this.availableCombos.Add("EulsSSMeteorBlast", new EulsSSMeteorBlast(this.me, InvokerMenu.ComboKey));
            this.availableCombos.Add("AlaForSnap", new AlaForSnap(this.me, InvokerMenu.ComboKey));
            this.availableCombos.Add("Assassination", new AssassinationCombo(this.me, InvokerMenu.ComboKey));
            this.availableCombos.Add(
                "ToEMPMetBlastRefMetBlastEMP",
                new ToEMPMetBlastRefMetBlastEMP(this.me, InvokerMenu.ComboKey));

            this.activeCombo = this.availableCombos[InvokerMenu.CurrentlyActiveCombo];
            this.activeCombo.Activate();

            this.CheckCombos();

            Entity.OnInt32PropertyChange  += this.Entity_OnInt32PropertyChange;
            Entity.OnHandlePropertyChange += this.Entity_OnHandlePropertyChange;

            GameDispatcher.OnIngameUpdate += this.GameDispatcher_OnIngameUpdate;
        }
示例#4
0
        public EulsSSMeteorBlast(Hero me, Key key)
            : base(me, key)
        {
            this._euls           = new Euls(me, () => 0);
            this._sunstrike      = new Sunstrike(me, this.SunstrikeDelay);
            this._meteor         = new Meteor(me, this.MeteorDelay);
            this._deafeningBlast = new DeafeningBlast(me, this.BlastDelay);
            this._coldSnap       = new ColdSnap(me);
            this._forgeSpirit    = new ForgeSpirit(me);

            this.AbilitySequence = new List <ISequenceEntry>
            {
                new AwaitBlinkOrMove(me, () => this.EngageRange),
                this._euls,
                new AwaitModifier("modifier_eul_cyclone", 250),
                this._sunstrike,
                this._meteor,
                this._deafeningBlast,
                this._coldSnap,
                this._forgeSpirit
            };
        }