<?xml version="1.0" encoding="utf-8" ?>
<Defs>

  <ThingDef Abstract="True" Name="IdeoBuildingBase" ParentName="BuildingBase">
    <altitudeLayer>Building</altitudeLayer>
    <forceDebugSpawnable>true</forceDebugSpawnable>
    <canGenerateDefaultDesignator>false</canGenerateDefaultDesignator> <!-- We handle ideo buildings as a special case in DesignationCategoryDef -->
    <ideoBuilding>true</ideoBuilding>
    <designationCategory>Ideology</designationCategory>
    <uiOrder>2010</uiOrder>
    <comps>
      <li Class="CompProperties_Styleable" />
    </comps>
    <ritualFocus>
      <spectateDistance>2</spectateDistance>
      <allowedSpectateSides>Down</allowedSpectateSides>
    </ritualFocus>
    <placeWorkers>
      <li>PlaceWorker_RitualFocus</li>
    </placeWorkers>
    <drawPlaceWorkersWhileSelected>True</drawPlaceWorkersWhileSelected>
  </ThingDef>
  
  <ThingDef Abstract="True" Name="AltarBase" ParentName="IdeoBuildingBase">
    <ideoBuildingNamerBase>NamerAltar</ideoBuildingNamerBase>
    <passability>PassThroughOnly</passability>
    <fillPercent>0.5</fillPercent>
    <selectable>true</selectable>
    <useHitPoints>true</useHitPoints>
    <isAltar>true</isAltar>
    <hasInteractionCell>True</hasInteractionCell>
    <interactionCellOffset>(0,0, -1)</interactionCellOffset>
    <stuffCategories>
      <li>Metallic</li>
      <li>Woody</li>
      <li>Stony</li>
    </stuffCategories>
    <defaultStuff>BlocksGranite</defaultStuff>
    <building>
      <buildingTags>
        <li>RitualFocus</li>
      </buildingTags>
      <relatedBuildCommands>
        <li>Lectern</li>
        <li>KneelPillow</li>
        <li>KneelSheet</li>
      </relatedBuildCommands>
      <paintable>true</paintable>
    </building>
    <placeWorkers Inherit="False">
      <li>PlaceWorker_RitualFocusNoArrow</li>
      <li>PlaceWorker_PreventInteractionSpotOverlap</li>
    </placeWorkers>
    <drawPlaceWorkersWhileSelected>True</drawPlaceWorkersWhileSelected>
  </ThingDef>

  <ThingDef ParentName="AltarBase">
    <defName>Altar_Small</defName>
    <label>small altar</label>
    <description>A small platform that plays a role in ideoligious rituals.</description>
    <graphicData>
      <graphicClass>Graphic_Multi</graphicClass>
      <texPath>Things/Building/Misc/Altars/Altar1x1</texPath>
      <drawSize>(1,1)</drawSize>
      <shadowData>
        <volume>(0.8, 1, 0.8)</volume>
      </shadowData>
    </graphicData>
    <size>(1,1)</size>
    <costStuffCount>50</costStuffCount>
    <statBases>
      <MaxHitPoints>50</MaxHitPoints>
      <WorkToBuild>5000</WorkToBuild>
      <Beauty>10</Beauty>
      <StyleDominance>10</StyleDominance>
    </statBases>
    <terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
  </ThingDef>
  
  <ThingDef ParentName="AltarBase">
    <defName>Altar_Medium</defName>
    <label>medium altar</label>
    <description>A medium platform that plays a role in ideoligious rituals.</description>
    <graphicData>
      <graphicClass>Graphic_Multi</graphicClass>
      <texPath>Things/Building/Misc/Altars/Altar1x3</texPath>
      <drawSize>(3,1)</drawSize>
      <shadowData>
        <volume>(2.4, 1, 0.8)</volume>
      </shadowData>
    </graphicData>
    <size>(3,1)</size>
    <castEdgeShadows>true</castEdgeShadows>
    <costStuffCount>100</costStuffCount>
    <statBases>
      <MaxHitPoints>150</MaxHitPoints>
      <WorkToBuild>15000</WorkToBuild>
      <Beauty>15</Beauty>
      <StyleDominance>20</StyleDominance>
    </statBases>
    <terrainAffordanceNeeded>Medium</terrainAffordanceNeeded>
  </ThingDef>

  <ThingDef ParentName="AltarBase">
    <defName>Altar_Large</defName>
    <label>large altar</label>
    <description>A large platform that plays a role in ideoligious rituals.</description>
    <graphicData>
      <graphicClass>Graphic_Multi</graphicClass>
      <texPath>Things/Building/Misc/Altars/Altar2x3</texPath>
      <drawSize>(3,2)</drawSize>
      <shadowData>
        <volume>(2.4, 1, 1.6)</volume>
      </shadowData>
    </graphicData>
    <size>(3,2)</size>
    <castEdgeShadows>true</castEdgeShadows>
    <costStuffCount>200</costStuffCount>
    <statBases>
      <MaxHitPoints>250</MaxHitPoints>
      <WorkToBuild>20000</WorkToBuild>
      <Beauty>20</Beauty>
      <StyleDominance>40</StyleDominance>
    </statBases>
    <terrainAffordanceNeeded>Medium</terrainAffordanceNeeded>
  </ThingDef>

  <ThingDef ParentName="AltarBase">
    <defName>Altar_Grand</defName>
    <label>grand altar</label>
    <description>A grand platform that plays a role in ideoligious rituals.</description>
    <graphicData>
      <graphicClass>Graphic_Multi</graphicClass>
      <texPath>Things/Building/Misc/Altars/Altar3x3</texPath>
      <drawSize>(3,3)</drawSize>
      <shadowData>
        <volume>(2.4, 1, 2.4)</volume>
      </shadowData>
    </graphicData>
    <size>(3,3)</size>
    <castEdgeShadows>true</castEdgeShadows>
    <costStuffCount>300</costStuffCount>
    <statBases>
      <MaxHitPoints>350</MaxHitPoints>
      <WorkToBuild>30000</WorkToBuild>
      <Beauty>30</Beauty>
      <StyleDominance>50</StyleDominance>
    </statBases>
    <terrainAffordanceNeeded>Medium</terrainAffordanceNeeded>
    <interactionCellOffset>(0,0, -2)</interactionCellOffset>
  </ThingDef>
  
  <ThingDef ParentName="IdeoBuildingBase">
    <defName>Ideogram</defName>
    <label>ideogram</label>
    <description>A large image drawn on the ground and reinforced with metal edges. It is used as a focus for rituals.</description>
    <graphicData>
      <graphicClass>Graphic_Single</graphicClass>
      <color>(105,105,105)</color>
      <texPath>Things/Building/Misc/Ideogram/IconChristian/IconChristianA</texPath>
      <drawSize>(3,3)</drawSize>
      <shadowData>
        <volume>(0.8, 1, 0.8)</volume>
      </shadowData>
    </graphicData>
    <size>(3,3)</size>
    <costList>
      <Steel>50</Steel>
    </costList>
    <statBases>
      <MaxHitPoints>50</MaxHitPoints>
      <WorkToBuild>25000</WorkToBuild>
      <Beauty>10</Beauty>
      <StyleDominance>20</StyleDominance>
    </statBases>
    <terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
    <ideoBuildingNamerBase>NamerIdeogram</ideoBuildingNamerBase>
    <passability>Standable</passability>
    <selectable>true</selectable>
    <useHitPoints>true</useHitPoints>
    <isAltar>true</isAltar>
    <hasInteractionCell>True</hasInteractionCell>
    <interactionCellOffset>(0,0,-1)</interactionCellOffset>
    <canEditAnyStyle>true</canEditAnyStyle>
    <building>
      <buildingTags>
        <li>RitualFocus</li>
      </buildingTags>
      <relatedBuildCommands>
        <li>Lectern</li>
        <li>KneelPillow</li>
      </relatedBuildCommands>
    </building>
    <placeWorkers Inherit="False">
      <li>PlaceWorker_RitualFocusNoArrow</li>
      <li>PlaceWorker_PreventInteractionSpotOverlap</li>
    </placeWorkers>
    <drawPlaceWorkersWhileSelected>True</drawPlaceWorkersWhileSelected>
  </ThingDef>

  <ThingDef ParentName="TorchLamp">
    <defName>Darktorch</defName>
    <label>darktorch</label>
    <description>A specially-treated wooden torch that produces a dim light over a large area. People who prefer darklight work best with this light source. Can be automatically refueled with wood. Produces a small amount of heat.</description>
    <graphicData>
      <texPath>Things/Building/Misc/Darktorch</texPath>
    </graphicData>
    <uiIconPath>Things/Building/Misc/Darktorch_MenuIcon</uiIconPath>
    <comps Inherit="False">
      <li Class="CompProperties_Glower">
        <glowRadius>7</glowRadius>
        <glowColor>(78, 226, 229, 0)</glowColor><!-- This is a specific darklight color, make sure it matches DarklightUtility.IsDarklight -->
      </li>
      <li Class="CompProperties_Refuelable">
        <fuelConsumptionRate>1.5</fuelConsumptionRate>
        <fuelCapacity>20.0</fuelCapacity>
        <fuelConsumptionPerTickInRain>0.0006</fuelConsumptionPerTickInRain>
        <fuelFilter>
          <thingDefs>
            <li>WoodLog</li>
          </thingDefs>
        </fuelFilter>
        <initialFuelPercent>1</initialFuelPercent>
        <showAllowAutoRefuelToggle>true</showAllowAutoRefuelToggle>
      </li>
      <li Class="CompProperties_HeatPusher">
        <compClass>CompHeatPusherPowered</compClass>
        <heatPerSecond>3.5</heatPerSecond>
        <heatPushMaxTemperature>23</heatPushMaxTemperature>
      </li>
      <li Class="CompProperties_DarklightOverlay">
        <fireSize>0.4</fireSize>
        <offset>(0,0,0.2)</offset>
      </li>
      <li Class="CompProperties_MeditationFocus">
        <statDef>MeditationFocusStrength</statDef>
        <focusTypes>
          <li>Flame</li>
        </focusTypes>
        <offsets>
          <li Class="FocusStrengthOffset_Lit">
            <offset>0.1</offset>
          </li>
          <li Class="FocusStrengthOffset_BuildingDefsLit">
            <defs>
              <li>Campfire</li>
              <li>TorchLamp</li>
              <li MayRequire="Ludeon.RimWorld.Royalty">Brazier</li>
              <li MayRequire="Ludeon.RimWorld.Royalty,Ludeon.RimWorld.Ideology">DarklightBrazier</li>
              <li MayRequire="Ludeon.RimWorld.Ideology">Darktorch</li>
              <li MayRequire="Ludeon.RimWorld.Ideology">DarktorchFungus</li>
            </defs>
            <offsetPerBuilding>0.01</offsetPerBuilding>
            <radius>9.9</radius>
            <maxBuildings>8</maxBuildings>
            <explanationKey>MeditationFocusPerFlame</explanationKey>
            <explanationKeyAbstract>MeditationFocusPerFlameAbstract</explanationKeyAbstract>
          </li>
        </offsets>
      </li>
    </comps>
  </ThingDef>

  <ThingDef ParentName="TorchLamp">
    <defName>DarktorchFungus</defName>
    <label>fungus darktorch</label>
    <description>A specially-treated fungus torch that produces a dim light over a large area. People who prefer darklight work best with this light source. Can be automatically refueled with raw fungus. Produces a small amount of heat.</description>
    <graphicData>
      <texPath>Things/Building/Misc/FungusDarktorch/FungusDarkTorch</texPath>
    </graphicData>
    <uiIconPath>Things/Building/Misc/FungusDarktorch/FungusDarkTorch_MenuIcon</uiIconPath>
    <costList Inherit="False">
      <RawFungus>20</RawFungus>
    </costList>
    <comps Inherit="False">
      <li Class="CompProperties_Glower">
        <glowRadius>7</glowRadius>
        <glowColor>(78, 226, 229, 0)</glowColor><!-- This is a specific darklight color, make sure it matches DarklightUtility.IsDarklight -->
      </li>
      <li Class="CompProperties_Refuelable">
        <fuelConsumptionRate>1.5</fuelConsumptionRate>
        <fuelCapacity>20.0</fuelCapacity>
        <fuelConsumptionPerTickInRain>0.0006</fuelConsumptionPerTickInRain>
        <fuelFilter>
          <thingDefs>
            <li>RawFungus</li>
          </thingDefs>
        </fuelFilter>
        <initialFuelPercent>1</initialFuelPercent>
        <showAllowAutoRefuelToggle>true</showAllowAutoRefuelToggle>
      </li>
      <li Class="CompProperties_HeatPusher">
        <compClass>CompHeatPusherPowered</compClass>
        <heatPerSecond>3.5</heatPerSecond>
        <heatPushMaxTemperature>23</heatPushMaxTemperature>
      </li>
      <li Class="CompProperties_DarklightOverlay">
        <fireSize>0.4</fireSize>
        <offset>(0,0,0.2)</offset>
      </li>
      <li Class="CompProperties_MeditationFocus">
        <statDef>MeditationFocusStrength</statDef>
        <focusTypes>
          <li>Flame</li>
        </focusTypes>
        <offsets>
          <li Class="FocusStrengthOffset_Lit">
            <offset>0.1</offset>
          </li>
          <li Class="FocusStrengthOffset_BuildingDefsLit">
            <defs>
              <li>Campfire</li>
              <li>TorchLamp</li>
              <li MayRequire="Ludeon.RimWorld.Royalty">Brazier</li>
              <li MayRequire="Ludeon.RimWorld.Royalty,Ludeon.RimWorld.Ideology">DarklightBrazier</li>
              <li MayRequire="Ludeon.RimWorld.Ideology">Darktorch</li>
              <li MayRequire="Ludeon.RimWorld.Ideology">DarktorchFungus</li>
            </defs>
            <offsetPerBuilding>0.01</offsetPerBuilding>
            <radius>9.9</radius>
            <maxBuildings>8</maxBuildings>
            <explanationKey>MeditationFocusPerFlame</explanationKey>
            <explanationKeyAbstract>MeditationFocusPerFlameAbstract</explanationKeyAbstract>
          </li>
        </offsets>
      </li>
    </comps>
  </ThingDef>

  <ThingDef ParentName="BuildingBase">
    <defName>SleepAccelerator</defName>
    <label>sleep accelerator</label>
    <description>A bedside device that accelerates the sleeper's circadian rhythm. This speeds up sleep, but consumes a lot of electricity and also causes increased hunger. It must be placed directly adjacent to and facing the head of the bed. Placing more than one sleep accelerator near the same bed has no effect.</description>
    <graphicData>
      <texPath>Things/Building/Misc/SleepAccelerator/SleepAccelerator</texPath>
      <graphicClass>Graphic_Multi</graphicClass>
      <shaderType>CutoutComplex</shaderType>
      <shadowData>
        <volume>(0.55, 0.30, 0.40)</volume>
      </shadowData>
      <damageData>
        <rectN>(0.078125,0.46875,0.859375,0.53125)</rectN>
        <rectS>(0.078125,0.46875,0.859375,0.53125)</rectS>
        <rectE>(0.125,0.46875,0.625,0.296875)</rectE>
        <rectW>(0.25,0.46875,0.625,0.296875)</rectW>
        <cornerTR>Damage/Corner</cornerTR>
      </damageData>
    </graphicData>
    <uiIconScale>0.7</uiIconScale>
    <defaultPlacingRot>South</defaultPlacingRot>
    <researchPrerequisites><li>MicroelectronicsBasics</li></researchPrerequisites>
    <altitudeLayer>Building</altitudeLayer>
    <passability>PassThroughOnly</passability>
    <fillPercent>0.2</fillPercent>
    <statBases>
      <MaxHitPoints>100</MaxHitPoints>
      <WorkToBuild>6000</WorkToBuild>
      <Mass>20</Mass>
      <Flammability>0.7</Flammability>
    </statBases>
    <size>(1,1)</size>
    <costList>
      <Steel>50</Steel>
      <ComponentIndustrial>5</ComponentIndustrial>
    </costList>
    <constructionSkillPrerequisite>8</constructionSkillPrerequisite>
    <building>
      <destroySound>BuildingDestroyed_Metal_Small</destroySound>
    </building>
    <designationCategory>Ideology</designationCategory>
    <uiOrder>2510</uiOrder>
    <canGenerateDefaultDesignator>false</canGenerateDefaultDesignator>
    <minifiedDef>MinifiedThing</minifiedDef>
    <thingCategories>
      <li>BuildingsMisc</li>
    </thingCategories>
    <tickerType>Normal</tickerType>
    <comps>
      <li Class="CompProperties_Power">
        <compClass>CompPowerTrader</compClass>
        <basePowerConsumption>50</basePowerConsumption>
      </li>
      <li Class="CompProperties_FacilityInUse">
        <inUsePowerConsumption>400</inUsePowerConsumption>
        <effectInUse>SleepAcceleratorActive</effectInUse>
      </li>
      <li Class="CompProperties_Flickable"/>
      <li Class="CompProperties_Facility">
        <statOffsets>
          <BedRestEffectiveness>0.35</BedRestEffectiveness>
          <BedHungerRateFactor>0.20</BedHungerRateFactor>
        </statOffsets>
        <maxSimultaneous>1</maxSimultaneous>
        <mustBePlacedAdjacent>true</mustBePlacedAdjacent>
        <mustBePlacedAdjacentCardinalToAndFacingBedHead>true</mustBePlacedAdjacentCardinalToAndFacingBedHead>
      </li>
    </comps>
    <placeWorkers>
      <li>PlaceWorker_ShowFacilitiesConnections</li>
    </placeWorkers>
  </ThingDef>

  <ThingDef ParentName="BuildingBase">
    <defName>BiosculpterPod</defName>
    <label>biosculpter pod</label>
    <description>An immersion pod full of bioactive gel. It can perform a variety of biological alterations including age reversal and pleasure-giving.\n\nThe pod biotunes to its user at the end of a cycle. While biotuned, it cannot be used by anyone else, but cycles will complete 25% more quickly. Biotuning resets if the pod is unused for 80 days.\n\nThe pod consumess 200W of power while working, but only 50W on standby.</description>
    <containedPawnsSelectable>true</containedPawnsSelectable>
    <graphicData>
      <texPath>Things/Building/Misc/BiosculpterPod/BiosculpterPod</texPath>
      <graphicClass>Graphic_Multi</graphicClass>
      <shadowData>
        <volume>(2.9,0.6,1.9)</volume>
      </shadowData>
      <drawSize>(3, 2)</drawSize>
    </graphicData>
    <drawerType>MapMeshAndRealTime</drawerType>
    <drawGUIOverlay>true</drawGUIOverlay>
    <defaultPlacingRot>South</defaultPlacingRot>
    <researchPrerequisites><li>Biosculpting</li></researchPrerequisites>
    <altitudeLayer>Building</altitudeLayer>
    <passability>PassThroughOnly</passability>
    <pathCost>42</pathCost>
    <blockWind>true</blockWind>
    <fillPercent>0.5</fillPercent>
    <canOverlapZones>false</canOverlapZones>
    <statBases>
      <MaxHitPoints>250</MaxHitPoints>
      <WorkToBuild>28000</WorkToBuild>
      <Mass>50</Mass>
      <Flammability>0.5</Flammability>
      <BiosculpterPodSpeedFactor>1</BiosculpterPodSpeedFactor>
      <Beauty>-5</Beauty>
    </statBases>
    <size>(3,2)</size>
    <interactionCellOffset>(0,0,2)</interactionCellOffset>
    <hasInteractionCell>true</hasInteractionCell>
    <costList>
      <Steel>120</Steel>
      <ComponentIndustrial>4</ComponentIndustrial>
    </costList>
    <constructionSkillPrerequisite>8</constructionSkillPrerequisite>
    <building>
      <destroySound>BuildingDestroyed_Metal_Big</destroySound>
      <haulToContainerDuration>120</haulToContainerDuration>
      <uninstallWork>1800</uninstallWork>
      <fixedStorageSettings>
        <filter>
          <categories>
            <li>Foods</li>
          </categories>
          <specialFiltersToDisallow>
            <li>AllowPlantFood</li>
          </specialFiltersToDisallow>
          <disallowedThingDefs>
            <li>Hay</li>
          </disallowedThingDefs>
        </filter>
      </fixedStorageSettings>
      <defaultStorageSettings>
        <filter>
          <categories>
            <li>Foods</li>
          </categories>
          <disallowedCategories>
            <li>EggsFertilized</li>
          </disallowedCategories>
          <disallowedThingDefs>
            <li>InsectJelly</li>
            <li>MealLavish</li>
            <li>MealLavish_Veg</li>
            <li>MealLavish_Meat</li>
            <li>Chocolate</li>
            <li MayRequire="Ludeon.Rimworld.Biotech">HemogenPack</li>
          </disallowedThingDefs>
        </filter>
      </defaultStorageSettings>
    </building>
    <resourcesFractionWhenDeconstructed>0.25</resourcesFractionWhenDeconstructed>
    <designationCategory>Ideology</designationCategory>
    <uiOrder>2500</uiOrder>
    <minifiedDef>MinifiedThing</minifiedDef>
    <thingCategories>
      <li>BuildingsMisc</li>
    </thingCategories>
    <tickerType>Normal</tickerType>
    <inspectorTabs>
      <li>ITab_BiosculpterNutritionStorage</li>
    </inspectorTabs>
    <comps>
      <li Class="CompProperties_Power">
        <compClass>CompPowerTrader</compClass>
        <basePowerConsumption>200</basePowerConsumption>
      </li>
      <li Class="CompProperties_Flickable"/>
      <li Class="CompProperties_BiosculpterPod">
        <enterSound>BiosculpterPod_Enter</enterSound>
        <exitSound>BiosculpterPod_Exit</exitSound>
        <operatingEffecter>BiosculpterPod_Operating</operatingEffecter>
        <readyEffecter>BiosculpterPod_Ready</readyEffecter>
        <selectCycleColor>(0.321, 1, 0.349)</selectCycleColor>
        <powerConsumptionStandby>50</powerConsumptionStandby>
        <biotunedCycleSpeedFactor>1.25</biotunedCycleSpeedFactor>
      </li>
      <li Class="CompProperties_BiosculpterPod_HealingCycle">
        <compClass>CompBiosculpterPod_MedicCycle</compClass>
        <key>medic</key>
        <label>medic</label>
        <description>Heal all fresh wounds, blood loss, and one random infectious disease.</description>
        <iconPath>UI/Gizmos/BiosculpterCycleHealing</iconPath>
        <durationDays>6</durationDays>
        <operatingColor>(0.554,0.887,1.000)</operatingColor>
        <conditionsToPossiblyCure>
          <li>Malaria</li>
          <li>SleepingSickness</li>
          <li>Flu</li>
          <li>Plague</li>
          <li>GutWorms</li>
          <li>MuscleParasites</li>
          <li>WoundInfection</li>
        </conditionsToPossiblyCure>
      </li>
      <li Class="CompProperties_BiosculpterPod_HealingCycle">
        <compClass>CompBiosculpterPod_RegenerationCycle</compClass>
        <key>bioregeneration</key>
        <label>bioregeneration</label>
        <description>Heal all fresh wounds, heal one random permanent injury, and restore small missing body parts like fingers and toes.</description>
        <iconPath>UI/Gizmos/BiosculpterCycleBioregeneration</iconPath>
        <durationDays>25</durationDays>
        <operatingColor>(0.554,0.887,1.000)</operatingColor>
        <extraRequiredIngredients>
          <MedicineUltratech>2</MedicineUltratech>
        </extraRequiredIngredients>
        <requiredResearch>
          <li>Bioregeneration</li>
        </requiredResearch>
        <bodyPartsToRestore>
          <li>Eye</li>
          <li>Ear</li>
          <li>Nose</li>
          <li>Finger</li>
          <li>Toe</li>
          <li>Tongue</li>
        </bodyPartsToRestore>
        <conditionsToPossiblyCure>
          <li>Asthma</li>
          <li>BadBack</li>
          <li>Cataract</li>
          <li>Blindness</li>
          <li>Frail</li>
          <li>HearingLoss</li>
          <li>HeartArteryBlockage</li>
        </conditionsToPossiblyCure>
      </li>
      <li Class="CompProperties_BiosculpterPod_AgeReversalCycle">
        <key>ageReversal</key>
        <label>age reversal</label>
        <description>Reverse {DURATION} of aging.</description>
        <iconPath>UI/Gizmos/BiosculpterCycleAgeReversal</iconPath>
        <durationDays>8</durationDays>
        <gainThoughtOnCompletion>AgeReversalReceived</gainThoughtOnCompletion>
        <operatingColor>(1.000,0.585,0.158)</operatingColor>
      </li>
      <li Class="CompProperties_BiosculpterPod_PleasureCycle">
        <key>pleasure</key>
        <label>pleasure</label>
        <description>Temporarily reshape the nervous system to deliver elevated levels of happiness for a time.</description>
        <iconPath>UI/Gizmos/BiosculpterCyclePleasure</iconPath>
        <durationDays>4</durationDays>
        <operatingColor>(1.000,0.918,0.000)</operatingColor>
      </li>
    </comps>
    <placeWorkers>
      <li>PlaceWorker_PreventInteractionSpotOverlap</li>
    </placeWorkers>
  </ThingDef>

  <ThingDef ParentName="BuildingBase">
    <defName>NeuralSupercharger</defName>
    <label>neural supercharger</label>
    <description>A neuron-sensitizing device that can deliver one neural supercharge each day. A person with a neural supercharge will think and learn faster, but will also consume more food. The effect wears off in one day. Neural superchargers consume a lot of electricity.</description>
    <graphicData>
      <texPath>Things/Building/Misc/NeuralSupercharger/NeuralSupercharger</texPath>
      <graphicClass>Graphic_Multi</graphicClass>
      <shadowData>
        <volume>(0.85, 0.60, 2.5)</volume>
      </shadowData>
      <drawSize>(1.05, 3)</drawSize>
    </graphicData>
    <researchPrerequisites><li>NeuralSupercharger</li></researchPrerequisites>
    <altitudeLayer>Building</altitudeLayer>
    <terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
    <passability>PassThroughOnly</passability>
    <pathCost>42</pathCost>
    <canOverlapZones>false</canOverlapZones>
    <fillPercent>0.25</fillPercent>
    <hasInteractionCell>True</hasInteractionCell>
    <interactionCellOffset>(0, 0, 2)</interactionCellOffset>
    <defaultPlacingRot>South</defaultPlacingRot>
    <statBases>
      <MaxHitPoints>100</MaxHitPoints>
      <WorkToBuild>6000</WorkToBuild>
      <Mass>20</Mass>
      <Flammability>0.3</Flammability>
    </statBases>
    <size>(1, 3)</size>
    <costList>
      <Steel>50</Steel>
      <ComponentIndustrial>4</ComponentIndustrial>
    </costList>
    <building>
      <destroySound>BuildingDestroyed_Metal_Small</destroySound>
    </building>
    <canGenerateDefaultDesignator>false</canGenerateDefaultDesignator>
    <designationCategory>Ideology</designationCategory>
    <uiOrder>2520</uiOrder>
    <minifiedDef>MinifiedThing</minifiedDef>
    <thingCategories>
      <li>BuildingsMisc</li>
    </thingCategories>
    <tickerType>Normal</tickerType>
    <comps>
      <li Class="CompProperties_Power">
        <compClass>CompPowerTrader</compClass>
        <basePowerConsumption>400</basePowerConsumption>
      </li>
      <li Class="CompProperties_Flickable"/>
      <li Class="CompProperties_NeuralSupercharger">
        <jobString>Get neural supercharge</jobString>
        <ticksToRecharge>60000</ticksToRecharge>
        <effectCharged>NeuralSuperchargerCharged</effectCharged>
        <chargedSoundDef>NeuralSupercharger_Ready</chargedSoundDef>
      </li>
    </comps>
  </ThingDef>


  <!-- Consumable buildings -->

  <ThingDef ParentName="IdeoBuildingBase" Name="IdeoBuildingConsumableBase" Abstract="True">
    <selectable>true</selectable>
    <tickerType>Normal</tickerType>
    <useHitPoints>true</useHitPoints>
    <statBases>
      <StyleDominance>10</StyleDominance>
    </statBases>
    <ritualFocus>
      <spectateDistance>2~3</spectateDistance>
      <allowedSpectateSides>All</allowedSpectateSides>
      <consumable>true</consumable>
    </ritualFocus>
    <minifiedDef>MinifiedThing</minifiedDef>
    <thingCategories>
      <li>BuildingsMisc</li>
    </thingCategories>
    <building>
      <buildingTags>
        <li>RitualFocus</li>
      </buildingTags>
    </building>
    <placeWorkers Inherit="False">
      <li>PlaceWorker_RitualFocusNoArrow</li>
    </placeWorkers>
  </ThingDef>

  <ThingDef ParentName="IdeoBuildingConsumableBase">
    <defName>ChristmasTree</defName>
    <label>christmas tree</label>
    <description>A celebratory tree decorated with ornaments and lights traditionally made as part of Christmas celebrations.</description>
    <ideoBuildingNamerBase>NamerChristmasTree</ideoBuildingNamerBase>
    <uiOrder>2050</uiOrder>
    <graphicData>
      <graphicClass>Graphic_Single</graphicClass>
      <texPath>Things/Building/Misc/ChristmasTree/ChristmasTree</texPath>
      <drawSize>(2.2,2.2)</drawSize>
      <drawOffset>(0, 0, 0.75)</drawOffset>
      <shadowData>
        <volume>(0.8, 1.5, 0.8)</volume>
        <offset>(0, 0, -0.25)</offset>
      </shadowData>
    </graphicData>
    <size>(1,1)</size>
    <uiIconScale>0.5</uiIconScale>
    <costList>
      <WoodLog>70</WoodLog>
      <Steel>20</Steel>
    </costList>
    <statBases>
      <MaxHitPoints>50</MaxHitPoints>
      <WorkToBuild>10000</WorkToBuild>
      <Beauty>10</Beauty>
      <Mass>25</Mass>
    </statBases>
    <terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
    <passability>PassThroughOnly</passability>
    <rotatable>false</rotatable>
    <comps>
      <li Class="CompProperties_RitualTargetEffecterSpawner">
        <effecter>ChristmasTreeTwinkle</effecter>
      </li>
      <li Class="CompProperties_RitualSignalSender" />
      <li Class="CompProperties_Glower">
        <glowRadius>8</glowRadius>
        <glowColor>(255,255,108,0)</glowColor>
      </li>
    </comps>
  </ThingDef>

  <ThingDef ParentName="IdeoBuildingConsumableBase">
    <defName>CannibalPlatter</defName>
    <label>cannibal platter</label>
    <description>An area of floor covered with pre-chopped and arranged human meat ready for a cannibal feast.</description>
    <ideoBuildingNamerBase>NamerCannibalPlatter</ideoBuildingNamerBase>
    <graphicData>
      <graphicClass>Graphic_Multi</graphicClass>
      <texPath>Things/Building/Misc/CannibalPlatter/CannibalPlatter</texPath>
      <drawSize>(2.2,3.3)</drawSize>
      <shadowData>
        <volume>(0.8, 1 ,0.8)</volume>
      </shadowData>
    </graphicData>
    <size>(2,3)</size>
    <costList>
      <Meat_Human>120</Meat_Human>
    </costList>
    <killedLeavings>
      <Meat_Human>120</Meat_Human>
    </killedLeavings>
    <leaveResourcesWhenKilled>false</leaveResourcesWhenKilled>
    <defaultPlacingRot>East</defaultPlacingRot>
    <ritualFocus>
      <spectateDistance>1~2</spectateDistance>
    </ritualFocus>
    <statBases>
      <MaxHitPoints>50</MaxHitPoints>
      <WorkToBuild>10000</WorkToBuild>
      <Mass>25</Mass>
    </statBases>
    <terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
    <passability>PassThroughOnly</passability>
    <placeWorkers Inherit="False" />
  </ThingDef>


  <!-- Burnable -->

  <ThingDef ParentName="IdeoBuildingConsumableBase" Name="IdeoBurnableBase" Abstract="True">
    <drawerType>RealtimeOnly</drawerType>
    <rotatable>false</rotatable>
    <comps>
      <li Class="CompProperties_RitualTargetEffecterSpawner">
        <effecter>FireSmoke</effecter>
      </li>
      <li Class="CompProperties_RitualSignalSender" />
    </comps>
  </ThingDef>

  <ThingDef ParentName="IdeoBurnableBase">
    <defName>Effigy</defName>
    <label>effigy</label>
    <description>A rough wooden frame in the shape of a human, ready to be burned as part of a ritual.</description>
    <ideoBuildingNamerBase>NamerBurnTarget</ideoBuildingNamerBase>
    <graphicData>
      <graphicClass>Graphic_Single</graphicClass>
      <texPath>Things/Building/Misc/Effigy/Effigy</texPath>
      <drawSize>(1,1)</drawSize>
      <shadowData>
        <volume>(0.5, 0.3 ,0.5)</volume>
      </shadowData>
    </graphicData>
    <size>(1,1)</size>
    <costList>
      <WoodLog>80</WoodLog>
    </costList>
    <statBases>
      <MaxHitPoints>50</MaxHitPoints>
      <WorkToBuild>3000</WorkToBuild>
      <Mass>25</Mass>
    </statBases>
    <terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
    <passability>PassThroughOnly</passability>
    <comps>
      <li Class="CompProperties_FireOverlayRitual">
        <fireSize>0.8</fireSize>
      </li>
      <li Class="CompProperties_Glower">
        <glowRadius>10</glowRadius>
        <glowColor>(252,187,113,0)</glowColor>
      </li>
    </comps>
  </ThingDef>

  <ThingDef ParentName="IdeoBurnableBase">
    <defName>SacrificialFlag</defName>
    <label>sacrificial flag</label>
    <description>A flag representing enemies, ready to be burned as part of a ritual.</description>
    <ideoBuildingNamerBase>NamerBurnTarget</ideoBuildingNamerBase>
    <graphicData>
      <graphicClass>Graphic_Single</graphicClass>
      <texPath>Things/Building/Misc/SacrificialFlag/SacrificialFlag</texPath>
      <drawSize>(1,1)</drawSize>
      <shadowData>
        <volume>(0.3, 0.3 ,0.3)</volume>
        <offset>(0, 0, -0.2)</offset>
      </shadowData>
    </graphicData>
    <size>(1,1)</size>
    <costList>
      <Cloth>40</Cloth>
      <WoodLog>40</WoodLog>
    </costList>
    <statBases>
      <MaxHitPoints>20</MaxHitPoints>
      <WorkToBuild>3000</WorkToBuild>
      <Mass>5</Mass>
    </statBases>
    <terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
    <passability>PassThroughOnly</passability>
    <comps>
      <li Class="CompProperties_FireOverlayRitual">
        <fireSize>0.8</fireSize>
        <offset>(0,0,0.2)</offset>
      </li>
      <li Class="CompProperties_Glower">
        <glowRadius>10</glowRadius>
        <glowColor>(252,187,113,0)</glowColor>
      </li>
    </comps>
  </ThingDef>

  <ThingDef ParentName="IdeoBurnableBase">
    <defName>Pyre</defName>
    <label>pyre</label>
    <description>A wooden tower for ritual burning.</description>
    <ideoBuildingNamerBase>NamerBurnTarget</ideoBuildingNamerBase>
    <graphicData>
      <graphicClass>Graphic_Single</graphicClass>
      <texPath>Things/Building/Misc/Pyre/Pyre</texPath>
      <drawSize>(2,2)</drawSize>
      <shadowData>
        <volume>(0.8, 1 ,0.8)</volume>
      </shadowData>
    </graphicData>
    <size>(2,2)</size>
    <costList>
      <WoodLog>100</WoodLog>
    </costList>
    <statBases>
      <MaxHitPoints>100</MaxHitPoints>
      <WorkToBuild>5000</WorkToBuild>
      <Mass>25</Mass>
    </statBases>
    <terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
    <passability>Impassable</passability>
    <canOverlapZones>false</canOverlapZones>
    <castEdgeShadows>true</castEdgeShadows>
    <comps Inherit="False">
      <li Class="CompProperties_FireOverlayRitual">
        <fireSize>1.0</fireSize>
        <offset>(0,0,0.5)</offset>
        <finalFireSize>1.75</finalFireSize>
        <fireGrowthDurationTicks>500</fireGrowthDurationTicks>
        <minRitualProgress>0.25</minRitualProgress>
      </li>
      <li Class="CompProperties_Glower">
        <glowRadius>18</glowRadius>
        <glowColor>(252,187,113,0)</glowColor>
      </li>
      <li Class="CompProperties_RitualTargetEffecterSpawner">
        <effecter>FireSmoke</effecter>
        <minRitualProgress>0.25</minRitualProgress>
      </li>
      <li Class="CompProperties_RitualSignalSender" />
      <li Class="CompProperties_Styleable" />
    </comps>
  </ThingDef>


  <!-- Smoker -->

  <ThingDef ParentName="IdeoBuildingConsumableBase" Name="IdeoSmokerBase" Abstract="True">
    <ideoBuildingNamerBase>NamerSmoker</ideoBuildingNamerBase>
    <terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
    <passability>PassThroughOnly</passability>
    <rotatable>false</rotatable>
    <comps>
      <li Class="CompProperties_SpawnEffectersInRoom">
        <effecter>RoomSmoke</effecter>
        <radius>10</radius>
      </li>
      <li Class="CompProperties_RitualSignalSender" />
    </comps>
    <placeWorkers Inherit="False">
      <li>PlaceWorker_MustBeIndoors</li>
    </placeWorkers>
    <uiOrder>2100</uiOrder>
  </ThingDef>

  <ThingDef ParentName="IdeoSmokerBase">
    <defName>Burnbong</defName>
    <label>burnbong</label>
    <description>A wood structure packed with smokeleaf. It can be ignited during a ritual and produce a huge amount of smokeleaf smoke for a few hours, after which it is destroyed.</description>
    <drawerType>RealtimeOnly</drawerType>
    <graphicData>
      <graphicClass>Graphic_Single</graphicClass>
      <texPath>Things/Building/Misc/Burnbong/Burnbong</texPath>
      <drawSize>(1.2,1.2)</drawSize>
      <shadowData>
        <volume>(0.92, 1 ,0.92)</volume>
      </shadowData>
    </graphicData>
    <size>(1,1)</size>
    <costList>
      <WoodLog>30</WoodLog>
      <SmokeleafLeaves>150</SmokeleafLeaves>
    </costList>
    <killedLeavings>
      <SmokeleafLeaves>150</SmokeleafLeaves>
    </killedLeavings>
    <leaveResourcesWhenKilled>false</leaveResourcesWhenKilled>
    <statBases>
      <MaxHitPoints>50</MaxHitPoints>
      <WorkToBuild>10000</WorkToBuild>
      <Mass>25</Mass>
    </statBases>
    <comps>
      <li Class="CompProperties_RitualTargetEffecterSpawner">
        <effecter>BurnbongSmoke</effecter>
      </li>
      <li Class="CompProperties_FireOverlayRitual">
        <fireSize>0.5</fireSize>
        <offset>(0, 0, 0.42)</offset>
      </li>
      <li Class="CompProperties_RitualHediffGiverInRoom">
        <hediff>SmokeleafHigh</hediff>
        <resetLastRecreationalDrugTick>true</resetLastRecreationalDrugTick>
        <minRadius>10</minRadius>
        <severity>0.01</severity>
      </li>
    </comps>
  </ThingDef>

  <ThingDef ParentName="IdeoSmokerBase">
    <defName>IncenseShrine</defName>
    <label>incense shrine</label>
    <description>A collection of packed incense containers. It can be ignited and produce a powerful incense effect as a focus for rituals. It is destroyed after it burns down.</description>
    <graphicData>
      <graphicClass>Graphic_Single</graphicClass>
      <texPath>Things/Building/Misc/IncenseShrine/IncenseShrine</texPath>
      <drawSize>(2,2)</drawSize>
      <shadowData>
        <volume>(0.8, 1 ,0.8)</volume>
      </shadowData>
    </graphicData>
    <size>(2,2)</size>
    <costList>
      <WoodLog>100</WoodLog>
    </costList>
    <statBases>
      <MaxHitPoints>80</MaxHitPoints>
      <WorkToBuild>12000</WorkToBuild>
      <Mass>25</Mass>
    </statBases>
    <comps>
      <li Class="CompProperties_RitualTargetEffecterSpawner">
        <effecter>IncenseShrineSmoke</effecter>
      </li>
    </comps>
  </ThingDef>

  <ThingDef ParentName="BuildingBase">
    <defName>RitualSpot</defName>
    <label>ritual spot</label>
    <description>A spot for carrying out certain kinds of rituals.</description>
    <graphicData>
      <texPath>Things/Building/Misc/RitualSpot</texPath>
      <graphicClass>Graphic_Single</graphicClass>
    </graphicData>
    <altitudeLayer>FloorEmplacement</altitudeLayer>
    <statBases>
      <WorkToBuild>0</WorkToBuild>
    </statBases>
    <rotatable>false</rotatable>
    <scatterableOnMapGen>false</scatterableOnMapGen>
    <useHitPoints>False</useHitPoints>
    <designationCategory>Ideology</designationCategory>
    <uiOrder>2000</uiOrder>
    <passability>Standable</passability>
    <building>
      <sowTag>SupportPlantsOnly</sowTag>
      <canPlaceOverImpassablePlant>false</canPlaceOverImpassablePlant>
      <ai_chillDestination>false</ai_chillDestination>
      <wakeDormantPawnsOnConstruction>false</wakeDormantPawnsOnConstruction>
      <artificialForMeditationPurposes>false</artificialForMeditationPurposes>
      <buildingTags>
        <li>RitualFocus</li>
      </buildingTags>
    </building>
  </ThingDef>

</Defs>