//Method to spawn fissure public void MakeAndSpawnFissure(FissureSize size, IntVec3 loc) { if (size == FissureSize.SteamGeyser) { GenSpawn.Spawn(ThingDef.Named("SteamGeyser"), loc); } else { Fissure fis = (Fissure)ThingMaker.MakeThing(ThingDef.Named("MD2Fissure")); fis.size = size; GenSpawn.Spawn(fis, loc); } }
public Fissure() { int num = Rand.Range(1, 4); switch (num) { case 1: this.size = FissureSize.Small; break; case 2: this.size = FissureSize.Medium; break; case 3: this.size = FissureSize.Large; break; default: this.size = FissureSize.Small; break; } }
private float PowerUsageFor(FissureSize size) { switch (size) { case FissureSize.SteamGeyser: return(-1200f); case FissureSize.Large: return(-1000f); case FissureSize.Medium: return(-750f); case FissureSize.Small: return(-550f); default: return(-this.powerTrader.props.basePowerConsumption); } }
//Method to get a random time based on the fissure type public int RandomDigTimeFrom(FissureSize size) { if (size == FissureSize.Small) { return((int)Rand.Range(35000, 45000)); } if (size == FissureSize.Medium) { return((int)Rand.Range(45000, 55000)); } if (size == FissureSize.Large) { return((int)Rand.Range(60000, 75000)); } if (size == FissureSize.SteamGeyser) { return((int)Rand.Range(60000, 90000)); } return((int)Rand.Range(25000, 55000)); }
private void CycleThroughFissuresToGenerate() { count++; if (this.count > 3) { this.count = 0; } if (this.count == 0) { this.fissureSize = FissureSize.Small; } if (this.count == 1) { this.fissureSize = FissureSize.Medium; } if (this.count == 2) { this.fissureSize = FissureSize.Large; } if (this.count == 3) { this.fissureSize = FissureSize.SteamGeyser; } }
public Fissure(FissureSize size) { this.size = size; }
//Overload to use generator base location as location public void MakeAndSpawnFissure(FissureSize size) { MakeAndSpawnFissure(size, base.Position); }
private float PowerUsageFor(FissureSize size) { switch (size) { case FissureSize.SteamGeyser: return -1200f; case FissureSize.Large: return -1000f; case FissureSize.Medium: return -750f; case FissureSize.Small: return -550f; default: return -this.powerTrader.props.basePowerConsumption; } }
//Method to get a random time based on the fissure type public int RandomDigTimeFrom(FissureSize size) { if (size == FissureSize.Small) { return (int)Rand.Range(35000, 45000); } if (size == FissureSize.Medium) { return (int)Rand.Range(45000, 55000); } if (size == FissureSize.Large) { return (int)Rand.Range(60000, 75000); } if (size == FissureSize.SteamGeyser) { return (int)Rand.Range(60000, 90000); } return (int)Rand.Range(25000, 55000); }