Beispiel #1
0
        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();
            }
        }