示例#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 void OnLoad()
        {
            Variables.Hero = ObjectManager.LocalHero;
            this.pause     = Variables.Hero.ClassID != ClassID.CDOTA_Unit_Hero_Invoker;
            if (this.pause)
            {
                return;
            }
            Variables.MenuManager = new MenuManager(Me.Name);
            this.coldSnap         = new ColdSnap();
            this.alacrity         = new Alacrity();
            this.chaosMeteor      = new ChaosMeteor();
            this.deafeningBlast   = new DeafeningBlast();
            this.forgeSpirit      = new ForgeSpirit();
            this.ghostWalk        = new GhostWalk();
            this.iceWall          = new IceWall();
            this.sunStrike        = new SunStrike();
            this.tornado          = new Tornado();
            this.emp         = new EMP();
            Variables.Quas   = Me.Spellbook.SpellQ;
            Variables.Wex    = Me.Spellbook.SpellW;
            Variables.Exort  = Me.Spellbook.SpellE;
            Variables.Invoke = Me.Spellbook.SpellR;

            Variables.MenuManager.Menu.AddToMainMenu();
            Variables.EnemyTeam = Me.GetEnemyTeam();
            this.targetFind     = new TargetFind();
            Game.PrintMessage(
                "Invoker" + System.Reflection.Assembly.GetExecutingAssembly().GetName().Version + " loaded",
                MessageType.LogMessage);
        }
示例#3
0
    // Coldsnap
    // Raycast at the mouse position until the Left-Click is performed. If an enemy falls under the Raycast when
    // clicked, attach the Cold Snap script and associated properties.
    IEnumerator ColdSnap(float duration, float tickCooldown, float tickDamage)
    {
        while (!Input.GetButtonUp("Fire1"))
        {
            Ray        ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;

            Physics.Raycast(ray, out hit);
            if (hit.collider.CompareTag("Enemy") && Input.GetButtonDown("Fire1"))
            {
                print("Casted: Cold Snap on " + hit.collider.name);
                ColdSnap coldSnap = hit.collider.gameObject.AddComponent <ColdSnap>();
                coldSnap.Duration            = duration;
                coldSnap.TickCooldown        = tickCooldown;
                coldSnap.TickDamage          = tickDamage;
                coldSnap.SnapMaterial        = ColdSnapMaterial;
                coldSnap.ColdSnapSound       = spellSoundClips[0];
                coldSnap.ColdSnapImpactSound = spellSoundClips[1];
            }
            yield return(null);
        }
    }
示例#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
            };
        }