protected override void Impact(Thing hitThing) { if (hitThing == null) { } else { foreach (IntVec3 current in GenAdj.AdjacentSquares8WayAndInside(hitThing.Position)) { MoteMaker.ThrowDustPuff(current, 2f); Thing t = GenAI.BestAttackTarget(hitThing.Position, this, new Predicate <Thing>(this.IsValidTarget), 2f, 0f, false, false, false, true); Pawn pawn = t as Pawn; pawn.thinker.mindState.Sanity.Equals(SanityState.Psychotic); } } }