diff --git a/About/Preview.svg b/About/Preview.svg deleted file mode 100644 index 7b837df..0000000 --- a/About/Preview.svg +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - AUTARKY - - diff --git a/Assemblies/Autarky.dll b/Assemblies/Autarky.dll new file mode 100755 index 0000000..7e31581 Binary files /dev/null and b/Assemblies/Autarky.dll differ diff --git a/Source/CompExplosive.cs b/Source/CompExplosive.cs deleted file mode 100644 index e8536f3..0000000 --- a/Source/CompExplosive.cs +++ /dev/null @@ -1,176 +0,0 @@ -using System; -using UnityEngine; -using Verse; -using Verse.Sound; -using RimWorld; - -namespace Autarky -{ - public class CompExplosive : ThingComp - { - // - // Fields - // - public bool wickStarted; - - protected Sustainer wickSoundSustainer; - - public bool detonated; - - private Thing instigator; - - protected int wickTicksLeft; - - // - // Properties - // - private bool CanEverExplodeFromDamage { - get { - if (this.Props.chanceNeverExplodeFromDamage < 1E-05f) { - return true; - } - Rand.PushState (); - Rand.Seed = this.parent.thingIDNumber.GetHashCode (); - bool result = Rand.Value < this.Props.chanceNeverExplodeFromDamage; - Rand.PopState (); - return result; - } - } - - public CompProperties_Explosive Props { - get { - return (CompProperties_Explosive)this.props; - } - } - - protected int StartWickThreshold { - get { - return Mathf.RoundToInt (this.Props.startWickHitPointsPercent * (float)this.parent.MaxHitPoints); - } - } - - // - // Methods - // - public override void CompTick () - { - if (this.wickStarted) { - if (this.wickSoundSustainer == null) { - this.StartWickSustainer (); - } - else { - this.wickSoundSustainer.Maintain (); - } - this.wickTicksLeft--; - if (this.wickTicksLeft <= 0) { - this.Detonate (this.parent.MapHeld); - } - } - } - - protected void Detonate (Map map) - { - if (this.detonated) { - return; - } - this.detonated = true; - if (!this.parent.SpawnedOrAnyParentSpawned) { - return; - } - if (map == null) { - Log.Warning ("Tried to detonate CompExplosive in a null map."); - return; - } - CompProperties_Explosive props = this.Props; - float num = props.explosiveRadius; - if (this.parent.stackCount > 1 && props.explosiveExpandPerStackcount > 0f) { - num += Mathf.Sqrt ((float)(this.parent.stackCount - 1) * props.explosiveExpandPerStackcount); - } - if (props.explosionEffect != null) { - Effecter effecter = props.explosionEffect.Spawn (); - effecter.Trigger (new TargetInfo (this.parent.PositionHeld, map, false), new TargetInfo (this.parent.PositionHeld, map, false)); - effecter.Cleanup (); - } - ThingDef postExplosionSpawnThingDef = props.postExplosionSpawnThingDef; - float postExplosionSpawnChance = props.postExplosionSpawnChance; - int postExplosionSpawnThingCount = props.postExplosionSpawnThingCount; - GenExplosion.DoExplosion (this.parent.PositionHeld, map, num, props.explosiveDamageType, this.instigator ?? this.parent, null, null, null, postExplosionSpawnThingDef, postExplosionSpawnChance, postExplosionSpawnThingCount, props.applyDamageToExplosionCellsNeighbors, props.preExplosionSpawnThingDef, props.preExplosionSpawnChance, props.preExplosionSpawnThingCount); - if (!this.parent.Destroyed) - { - this.parent.Kill(null); - } - } - - public override void PostDraw () - { - if (this.wickStarted) { - this.parent.Map.overlayDrawer.DrawOverlay (this.parent, OverlayTypes.BurningWick); - } - } - - public override void PostExposeData () - { - base.PostExposeData (); - Scribe_References.Look (ref this.instigator, "instigator", false); - Scribe_Values.Look (ref this.wickStarted, "wickStarted", false, false); - Scribe_Values.Look (ref this.wickTicksLeft, "wickTicksLeft", 0, false); - Scribe_Values.Look (ref this.detonated, "detonated", false, false); - } - - public override void PostPostApplyDamage (DamageInfo dinfo, float totalDamageDealt) - { - if (!this.CanEverExplodeFromDamage) { - return; - } - if (!this.parent.Destroyed) { - if (this.wickStarted && dinfo.Def == DamageDefOf.Stun) { - this.StopWick (); - } - else if (!this.wickStarted && this.parent.HitPoints <= this.StartWickThreshold && dinfo.Def.externalViolence) { - this.StartWick (dinfo.Instigator); - } - } - } - - public override void PostPreApplyDamage (DamageInfo dinfo, out bool absorbed) - { - absorbed = false; - if (this.CanEverExplodeFromDamage) { - if (dinfo.Def.externalViolence && dinfo.Amount >= this.parent.HitPoints) { - if (this.parent.MapHeld != null) { - this.Detonate (this.parent.MapHeld); - absorbed = true; - } - } - else if (!this.wickStarted && this.Props.startWickOnDamageTaken != null && dinfo.Def == this.Props.startWickOnDamageTaken) { - this.StartWick (dinfo.Instigator); - } - } - } - - public void StartWick (Thing instigator = null) - { - if (this.wickStarted) { - return; - } - this.instigator = instigator; - this.wickStarted = true; - this.wickTicksLeft = this.Props.wickTicks.RandomInRange; - this.StartWickSustainer (); - GenExplosion.NotifyNearbyPawnsOfDangerousExplosive (this.parent, this.Props.explosiveDamageType, null); - } - - private void StartWickSustainer () - { - SoundDefOf.MetalHitImportant.PlayOneShot (new TargetInfo (this.parent.Position, this.parent.Map, false)); - SoundInfo info = SoundInfo.InMap (this.parent, MaintenanceType.PerTick); - this.wickSoundSustainer = SoundDefOf.HissSmall.TrySpawnSustainer (info); - } - - public void StopWick () - { - this.wickStarted = false; - this.instigator = null; - } - } -} \ No newline at end of file diff --git a/Source/CompHarvestable.cs b/Source/CompHarvestable.cs deleted file mode 100644 index 0fd9b1c..0000000 --- a/Source/CompHarvestable.cs +++ /dev/null @@ -1,49 +0,0 @@ -using RimWorld; -using Verse; - -namespace Autarky -{ - public class CompHarvestable : CompHasGatherableBodyResource - { - // - // Properties - // - protected override bool Active - { - get - { - if (!base.Active) - { - return false; - } - Pawn pawn = this.parent as Pawn; - Autarky.LifeStageDef curLifeStage = pawn.ageTracker.CurLifeStage as Autarky.LifeStageDef; - bool harvestable = curLifeStage != null ? curLifeStage.harvestable : false; - return (!this.Props.harvestFemaleOnly || pawn == null || pawn.gender == Gender.Female) && - (pawn == null || harvestable); - } - } - - protected override int GatherResourcesIntervalDays => this.Props.harvestIntervalDays; - - public CompProperties_Harvestable Props => (CompProperties_Harvestable) this.props; - - protected override int ResourceAmount => this.Props.resourceAmount; - - protected override ThingDef ResourceDef => this.Props.resourceDef; - - protected override string SaveKey => this.Props.resourceDef.defName + "Production"; - - // - // Methods - // - public override string CompInspectStringExtra() - { - if (!this.Active) - { - return null; - } - return this.Props.fullnessKey.Translate() + ": " + base.Fullness.ToStringPercent(); - } - } -} \ No newline at end of file diff --git a/Source/CompProperties_Explosive.cs b/Source/CompProperties_Explosive.cs deleted file mode 100644 index de2be7e..0000000 --- a/Source/CompProperties_Explosive.cs +++ /dev/null @@ -1,52 +0,0 @@ -using System; -using Verse; -using RimWorld; - -namespace Autarky -{ - public class CompProperties_Explosive : CompProperties - { - // - // Fields - // - public float explosiveRadius = 1.9f; - - public float explosiveExpandPerStackcount; - - public EffecterDef explosionEffect; - - public DamageDef startWickOnDamageTaken; - - public float startWickHitPointsPercent = 0.2f; - - public IntRange wickTicks = new IntRange (140, 150); - - public float wickScale = 1f; - - public float chanceNeverExplodeFromDamage; - - public int preExplosionSpawnThingCount = 1; - - public DamageDef explosiveDamageType = DamageDefOf.Bomb; - - public ThingDef postExplosionSpawnThingDef; - - public float postExplosionSpawnChance; - - public int postExplosionSpawnThingCount = 1; - - public bool applyDamageToExplosionCellsNeighbors; - - public ThingDef preExplosionSpawnThingDef; - - public float preExplosionSpawnChance; - - // - // Constructors - // - public CompProperties_Explosive () - { - this.compClass = typeof(CompExplosive); - } - } -} \ No newline at end of file diff --git a/Source/CompProperties_Harvestable.cs b/Source/CompProperties_Harvestable.cs deleted file mode 100644 index 9453472..0000000 --- a/Source/CompProperties_Harvestable.cs +++ /dev/null @@ -1,28 +0,0 @@ -using Verse; - -namespace Autarky -{ - public class CompProperties_Harvestable : CompProperties - { - // - // Fields - // - public int harvestIntervalDays; - - public int resourceAmount = 1; - - public ThingDef resourceDef; - - public bool harvestFemaleOnly = true; - - public string fullnessKey; - - // - // Constructors - // - public CompProperties_Harvestable() - { - this.compClass = typeof(CompHarvestable); - } - } -} \ No newline at end of file diff --git a/Source/JobDefOf.cs b/Source/JobDefOf.cs deleted file mode 100644 index ab5118e..0000000 --- a/Source/JobDefOf.cs +++ /dev/null @@ -1,11 +0,0 @@ -using Verse; -using RimWorld; - -namespace Autarky -{ - [DefOf] - public static class JobDefOf - { - public static JobDef Autarky_AnimalHarvest; - } -} diff --git a/Source/JobDriver_AnimalHarvest.cs b/Source/JobDriver_AnimalHarvest.cs deleted file mode 100644 index cc165d2..0000000 --- a/Source/JobDriver_AnimalHarvest.cs +++ /dev/null @@ -1,25 +0,0 @@ -using RimWorld; -using Verse; - -namespace Autarky -{ - public class JobDriver_AnimalHarvest : JobDriver_GatherAnimalBodyResources - { - // - // Properties - // - protected override float WorkTotal { - get { - return 1000f; - } - } - - // - // Methods - // - protected override CompHasGatherableBodyResource GetComp (Pawn animal) - { - return animal.TryGetComp (); - } - } -} diff --git a/Source/LifeStageDef.cs b/Source/LifeStageDef.cs deleted file mode 100644 index b271a4f..0000000 --- a/Source/LifeStageDef.cs +++ /dev/null @@ -1,12 +0,0 @@ -using RimWorld; - -namespace Autarky -{ - public class LifeStageDef : RimWorld.LifeStageDef - { - // - // Fields - // - public bool harvestable; - } -} diff --git a/Source/WorkGiver_AnimalHarvest.cs b/Source/WorkGiver_AnimalHarvest.cs deleted file mode 100644 index 7d68444..0000000 --- a/Source/WorkGiver_AnimalHarvest.cs +++ /dev/null @@ -1,25 +0,0 @@ -using Verse; -using RimWorld; - -namespace Autarky -{ - public class WorkGiver_AnimalHarvest : WorkGiver_GatherAnimalBodyResources - { - // - // Properties - // - protected override JobDef JobDef { - get { - return Autarky.JobDefOf.Autarky_AnimalHarvest; - } - } - - // - // Methods - // - protected override CompHasGatherableBodyResource GetComp (Pawn animal) - { - return animal.TryGetComp (); - } - } -} diff --git a/Textures/Things/Item/Resource/Chemicals.png b/Textures/Things/Item/Resource/Chemicals.png new file mode 100644 index 0000000..9cdb17d Binary files /dev/null and b/Textures/Things/Item/Resource/Chemicals.png differ diff --git a/Textures/Things/Item/Resource/Chemicals.svg b/Textures/Things/Item/Resource/Chemicals.svg deleted file mode 100644 index 82b8f39..0000000 --- a/Textures/Things/Item/Resource/Chemicals.svg +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/Textures/Things/Item/Resource/DevilsDust/DevilsDust.svg b/Textures/Things/Item/Resource/DevilsDust/DevilsDust.svg deleted file mode 100644 index 34a8751..0000000 --- a/Textures/Things/Item/Resource/DevilsDust/DevilsDust.svg +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Textures/Things/Item/Resource/DevilsDust/DevilsDust_a.png b/Textures/Things/Item/Resource/DevilsDust/DevilsDust_a.png new file mode 100644 index 0000000..1bc3f5d Binary files /dev/null and b/Textures/Things/Item/Resource/DevilsDust/DevilsDust_a.png differ diff --git a/Textures/Things/Item/Resource/DevilsDust/DevilsDust_a.svg b/Textures/Things/Item/Resource/DevilsDust/DevilsDust_a.svg deleted file mode 100644 index 735c56f..0000000 --- a/Textures/Things/Item/Resource/DevilsDust/DevilsDust_a.svg +++ /dev/null @@ -1,256 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - diff --git a/Textures/Things/Item/Resource/DevilsDust/DevilsDust_b.png b/Textures/Things/Item/Resource/DevilsDust/DevilsDust_b.png new file mode 100644 index 0000000..e267bee Binary files /dev/null and b/Textures/Things/Item/Resource/DevilsDust/DevilsDust_b.png differ diff --git a/Textures/Things/Item/Resource/DevilsDust/DevilsDust_b.svg b/Textures/Things/Item/Resource/DevilsDust/DevilsDust_b.svg deleted file mode 100644 index bee3936..0000000 --- a/Textures/Things/Item/Resource/DevilsDust/DevilsDust_b.svg +++ /dev/null @@ -1,362 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Textures/Things/Item/Resource/DevilsDust/DevilsDust_c.png b/Textures/Things/Item/Resource/DevilsDust/DevilsDust_c.png new file mode 100644 index 0000000..05b2fe1 Binary files /dev/null and b/Textures/Things/Item/Resource/DevilsDust/DevilsDust_c.png differ diff --git a/Textures/Things/Item/Resource/DevilsDust/DevilsDust_c.svg b/Textures/Things/Item/Resource/DevilsDust/DevilsDust_c.svg deleted file mode 100644 index 63236a4..0000000 --- a/Textures/Things/Item/Resource/DevilsDust/DevilsDust_c.svg +++ /dev/null @@ -1,468 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -