public void ExactLaunch(ThingDef effectMote, int moteFrequencyTicks, bool shouldSpin, List <Vector3> travelPath, Thing launcher, Vector3 origin, LocalTargetInfo targ, Thing flyingThing, int flyingSpeed, float _impactRadius, NaniteDispersal dispersal, NaniteActions action) { this.naniteAction = action; this.dispersalMethod = dispersal; this.moteFrequency = moteFrequencyTicks; this.moteDef = effectMote; this.impactRadius = _impactRadius; this.spinning = shouldSpin; this.speed = flyingSpeed; this.curvePoints = travelPath; this.curveVariance = 1; this.Launch(launcher, origin, targ, flyingThing, null); }
public void AdvancedLaunch(Thing launcher, ThingDef effectMote, int moteFrequencyTicks, float curveAmount, bool shouldSpin, Vector3 origin, LocalTargetInfo targ, Thing flyingThing, int flyingSpeed, bool isExplosion, int _impactDamage, float _impactRadius, NaniteDispersal dispersal, NaniteActions action, DamageDef damageType, DamageInfo?newDamageInfo = null) { this.naniteAction = action; this.dispersalMethod = dispersal; this.explosionDamage = _impactDamage; this.isExplosive = isExplosion; this.impactRadius = _impactRadius; this.impactDamageType = damageType; this.moteFrequency = moteFrequencyTicks; this.moteDef = effectMote; this.curveVariance = curveAmount; this.spinning = shouldSpin; this.speed = flyingSpeed; this.curvePoints = new List <Vector3>(); this.curvePoints.Clear(); this.Launch(launcher, origin, targ, flyingThing, newDamageInfo); }