Beispiel #1
0
 private void Flamethrower_OnExit(On.EntityStates.Mage.Weapon.Flamethrower.orig_OnExit orig, Flamethrower self)
 {
     orig(self);
     if (this.flamethrowerContext.ContainsKey(self))
     {
         FlamethrowerContext context = this.flamethrowerContext[self];
         context.passive.SkillCast();
         _ = this.flamethrowerContext.Remove(self);
     }
 }
Beispiel #2
0
        private void Flamethrower_OnEnter(On.EntityStates.Mage.Weapon.Flamethrower.orig_OnEnter orig, Flamethrower self)
        {
            orig(self);
            GameObject obj = self.outer.gameObject;

            if (AltArtiPassive.instanceLookup.ContainsKey(obj))
            {
                AltArtiPassive passive = AltArtiPassive.instanceLookup[obj];
                var            context = new FlamethrowerContext(passive);
                passive.SkillCast();
                this.flamethrowerContext[self] = context;
            }
        }
Beispiel #3
0
 private void Flamethrower_FixedUpdate(On.EntityStates.Mage.Weapon.Flamethrower.orig_FixedUpdate orig, Flamethrower self)
 {
     orig(self);
     if (this.flamethrowerContext.ContainsKey(self))
     {
         FlamethrowerContext context = this.flamethrowerContext[self];
         context.timer += Time.fixedDeltaTime * context.passive.ext_attackSpeedStat;
         Int32 count = 0;
         while (context.timer >= context.passive.ext_flamethrowerInterval && count <= context.passive.ext_flamethrowerMaxPerTick)
         {
             context.passive.SkillCast();
             count++;
             context.timer -= context.passive.ext_flamethrowerInterval;
         }
     }
 }