protected override void Impact(Thing hitThing) { //base.Impact(hitThing); Pawn pawn = this.launcher as Pawn; Map map = pawn.Map; if (!initialized) { Initialize(pawn); TM_Action.InvulnerableAoEFor(pawn.Position, map, 3 + verVal, Mathf.RoundToInt((90 + (10 * pwrVal)) * arcaneDmg), pawn.Faction); } if (pawn != null) { if (Find.TickManager.TicksGame % 3 == 0) { DoBurstExplosion(pawn, map); this.strikeNum++; } if (strikeNum > 3 + verVal) { Destroy(); } } else { Log.Warning("failed to cast"); Destroy(); } }