public void ThrowPoisonSmoke()
{
Vector3 spawnPosition = this.Position.ToVector3Shifted() + Vector3Utility.RandomHorizontalOffset(3f);
if (!spawnPosition.ShouldSpawnMotesAt() || MoteCounter.SaturatedLowPriority)
{
return;
}
MoteThrown moteThrown = ThingMaker.MakeThing(Util_CaveworldFlora.MotePoisonSmokeDef, null) as MoteThrown;
moteThrown.Scale = 3f * this.Growth;
moteThrown.rotationRate = (float)Rand.Range(-5, 5);
moteThrown.exactPosition = spawnPosition;
moteThrown.SetVelocity((float)Rand.Range(-20, 20), 0);//Rand.Range(0.6f, 0.75f));
GenSpawn.Spawn(moteThrown, spawnPosition.ToIntVec3());
}
}