<?xml version="1.0" encoding="utf-8" ?>
<Defs>
  
  <RitualPatternDef>
    <defName>FuneralStandard</defName>
    <nameMaker>NamerRitualFuneral</nameMaker>
    <ritualExpectedDesc>You can hold a {IDEOLIGION_adjective} funeral for {PAWN_nameDef}.</ritualExpectedDesc>
    <ritualExpectedDescNoAdjective>You can hold a funeral for {PAWN_nameDef}.</ritualExpectedDescNoAdjective>
    <ritualObligationTriggers>
      <li Class="RitualObligationTrigger_MemberDiedProperties">
        <mustBePlayerIdeo>true</mustBePlayerIdeo>
      </li>
    </ritualObligationTriggers>
    <ritualObligationTargetFilter>GraveWithTargetsCorpse</ritualObligationTargetFilter>
    <ritualBehavior>Funeral</ritualBehavior>
    <ritualOutcomeEffect>AttendedFuneral</ritualOutcomeEffect>
  </RitualPatternDef>
  
  <RitualPatternDef>
    <defName>FuneralNoCorpse</defName>
    <ritualExpectedDesc>You can hold a {IDEOLIGION_adjective} funeral for {PAWN_nameDef} even though the body was lost.</ritualExpectedDesc>
    <ritualExpectedDescNoAdjective>You can hold a funeral for {PAWN_nameDef} even though the body was lost.</ritualExpectedDescNoAdjective>
    <ritualObligationTriggers>
      <li Class="RitualObligationTrigger_MemberCorpseDestroyedProperties">
        <mustBePlayerIdeo>true</mustBePlayerIdeo>
      </li>
    </ritualObligationTriggers>
    <ritualObligationTargetFilter>AnyEmptyGrave</ritualObligationTargetFilter>
    <ritualBehavior>Funeral</ritualBehavior>
    <ritualOutcomeEffect>AttendedFuneralNoCorpse</ritualOutcomeEffect>
  </RitualPatternDef>

  <RitualPatternDef>
    <defName>TreeConnection</defName>
    <iconPathOverride>UI/Icons/Rituals/TreeConnection</iconPathOverride>
    <alwaysStartAnytime>true</alwaysStartAnytime>
    <ritualObligationTargetFilter>GauranlenTree</ritualObligationTargetFilter>
    <ritualBehavior>TreeConnection</ritualBehavior>
    <ritualOutcomeEffect>ConnectToTree</ritualOutcomeEffect>
    <ritualOnlyForIdeoMembers>false</ritualOnlyForIdeoMembers>
    <tags>
      <li>TreeConnection</li>
    </tags>
  </RitualPatternDef>
  
  <RitualPatternDef Name="CelebrationPartyChat">
    <defName>CelebrationPartyChat</defName> 
    <nameMaker>NamerRitualFestival</nameMaker>
    <ritualExpectedDesc>Every year on {DATE}, {MEMBERS} can have a special celebration.</ritualExpectedDesc>
    <iconPathOverride>UI/Icons/Rituals/RitualFestival</iconPathOverride>
    <canStartAnytime>true</canStartAnytime>
    <ritualObligationTriggers>
      <li Class="RitualObligationTrigger_DateProperties">
        <mustBePlayerIdeo>true</mustBePlayerIdeo>
      </li>
    </ritualObligationTriggers>
    <ritualObligationTargetFilter>GatheringSpotOrAltar</ritualObligationTargetFilter>
    <ritualBehavior>DateRitual</ritualBehavior>
    <ritualOutcomeEffect>CelebratedDate</ritualOutcomeEffect>
    <tags>
      <li>CelebratedDate</li>
    </tags>
    <patternGroupTag>CelebratedDate</patternGroupTag>
  </RitualPatternDef>

  <RitualPatternDef Abstract="True" Name="SacrificeBase" ParentName="CelebrationPartyChat">
    <nameMaker>NamerRitualSacrifice</nameMaker>
    <canStartAnytime>true</canStartAnytime>
    <ritualObligationTargetFilter>RitualSpotOrAltar</ritualObligationTargetFilter>
    <tags>
      <li>Sacrifice</li>
    </tags>
  </RitualPatternDef>
  
  <RitualPatternDef ParentName="SacrificeBase">
    <defName>SacrificePrisoner</defName>
    <ritualBehavior>SacrificePrisoner</ritualBehavior>
    <shortDescOverride>prisoner sacrifice</shortDescOverride>
    <descOverride>A ritualistic prisoner sacrifice. The organizer will give a speech to excite the crowd, then cut the prisoner's throat. Once the prisoner is dead, organizer will speak some finishing words.</descOverride>
    <iconPathOverride>UI/Icons/Rituals/RitualPrisonerSacrifice</iconPathOverride>
    <patternGroupTag/>
    <ritualOutcomeEffect>Sacrifice</ritualOutcomeEffect>
  </RitualPatternDef>

  <RitualPatternDef ParentName="SacrificeBase">
    <defName>SacrificeAnimal</defName>
    <ritualBehavior>SacrificeAnimal</ritualBehavior>
    <shortDescOverride>animal sacrifice</shortDescOverride>
    <descOverride>A ritualistic animal sacrifice. The organizer will give a speech to excite the crowd, then cut the animal's throat. Once the animal is dead, the organizer will speak some finishing words.</descOverride>
    <iconPathOverride>UI/Icons/Rituals/RitualAnimalSacrifice</iconPathOverride>
    <patternGroupTag/>
    <ritualOutcomeEffect>Sacrifice</ritualOutcomeEffect>
  </RitualPatternDef>
  
  <RitualPatternDef ParentName="SpeechPatternBase">
    <defName>LeaderSpeech</defName>
    <ritualBehavior>LeaderSpeech</ritualBehavior>
    <ritualObligationTargetFilter>AnyIdeoBuildingOrRitualSpot</ritualObligationTargetFilter>
    <ritualTargetFilter>IdeoBuildingOrRitualSpot</ritualTargetFilter>
    <alwaysStartAnytime>true</alwaysStartAnytime>
    <ritualOnlyForIdeoMembers>false</ritualOnlyForIdeoMembers>
    <canMergeGizmosFromDifferentIdeos>false</canMergeGizmosFromDifferentIdeos>
  </RitualPatternDef>

  <RitualPatternDef ParentName="SpeechPatternBase" Name="Trial">
    <defName>Trial</defName>
    <ritualBehavior>Trial</ritualBehavior>
    <ritualTargetFilter>IdeoBuildingOrRitualSpot</ritualTargetFilter>
    <ritualOutcomeEffect>Trial</ritualOutcomeEffect>
    <playsIdeoMusic>false</playsIdeoMusic>
  </RitualPatternDef>

  <RitualPatternDef ParentName="Trial">
    <defName>TrialPrisoner</defName>
    <ritualBehavior>TrialPrisoner</ritualBehavior>
  </RitualPatternDef>

  <RitualPatternDef ParentName="Trial">
    <defName>TrialMentalState</defName>
    <ritualBehavior>TrialMentalState</ritualBehavior>
    <ritualOutcomeEffect>TrialMentalState</ritualOutcomeEffect>
  </RitualPatternDef>

  <RitualPatternDef>
    <defName>Conversion</defName>
    <ritualBehavior>Conversion</ritualBehavior>
    <ritualTargetFilter>AltarOrRitualSpot</ritualTargetFilter>
    <ritualObligationTargetFilter>RitualSpotOrAltar</ritualObligationTargetFilter>
    <ritualExplanation>In case of success, their certainty will be reduced or they will convert immediately. If it backfires, their certainty in own beliefs will increase.</ritualExplanation>
    <ritualOutcomeEffect>Conversion</ritualOutcomeEffect>
    <alwaysStartAnytime>true</alwaysStartAnytime>
    <canMergeGizmosFromDifferentIdeos>false</canMergeGizmosFromDifferentIdeos>
  </RitualPatternDef>
  
  <RitualPatternDef ParentName="CelebrationPartyChat">
    <defName>CelebrationPartyDanceTech</defName>
    <shortDescOverride>dance party</shortDescOverride>
    <descOverride>A dance party with loud music. Participants will gather, socialize, and dance to have fun and connect with each other.</descOverride>
    <iconPathOverride>UI/Icons/Rituals/CelebrationPartyDanceTech</iconPathOverride>
    <canStartAnytime>true</canStartAnytime>
    <ritualObligationTargetFilter>LightBall</ritualObligationTargetFilter>
    <ritualBehavior>DancePartyTech</ritualBehavior>
    <patternGroupTag>CelebratedDate</patternGroupTag>
    <minTechLevel>Industrial</minTechLevel>
    <ritualOutcomeEffect>CelebrationPartyDanceTech</ritualOutcomeEffect>
    <playsIdeoMusic>false</playsIdeoMusic>
  </RitualPatternDef>

  <RitualPatternDef ParentName="CelebrationPartyChat">
    <defName>CelebrationPartyDanceDrum</defName>
    <shortDescOverride>drum party</shortDescOverride>
    <descOverride>A dance party with drums. Participants will gather, socialize, play drums, and dance to have fun and connect with each other.</descOverride>
    <iconPathOverride>UI/Icons/Rituals/CelebrationPartyDanceDrums</iconPathOverride>
    <canStartAnytime>true</canStartAnytime>
    <ritualObligationTargetFilter>RitualSpotOrCampfireParty</ritualObligationTargetFilter>
    <ritualBehavior>CelebrationPartyDanceDrum</ritualBehavior>
    <patternGroupTag>CelebratedDate</patternGroupTag>
    <maxTechLevel>Neolithic</maxTechLevel>
    <ritualOutcomeEffect>CelebrationPartyDanceDrum</ritualOutcomeEffect>
    <playsIdeoMusic>false</playsIdeoMusic>
  </RitualPatternDef>

  <RitualPatternDef ParentName="CelebrationPartyChat">
    <defName>CelebrationSkyLanterns</defName>
    <shortDescOverride>skylantern festival</shortDescOverride>
    <descOverride>A social ritual where people release skylanterns. Participants will assemble wooden skylanterns while socializing, then release them and watch them drift away.</descOverride>
    <iconPathOverride>UI/Icons/Rituals/CelebrationPartySkylanterns</iconPathOverride>
    <canStartAnytime>true</canStartAnytime>
    <ritualObligationTargetFilter>CampfireSkylanterns</ritualObligationTargetFilter>
    <ritualBehavior>CelebrationSkyLanterns</ritualBehavior>
    <patternGroupTag>CelebratedDate</patternGroupTag>
    <ritualOutcomeEffect>CelebrationSkyLanterns</ritualOutcomeEffect>
  </RitualPatternDef>

  <RitualPatternDef Name="CelebrationConsumable" ParentName="CelebrationPartyChat" Abstract="True">
    <patternGroupTag>RitualBuildingConsumer</patternGroupTag>
    <canStartAnytime>true</canStartAnytime>
    <ritualOutcomeEffect>CelebratedDate_Consumable</ritualOutcomeEffect>
    <tags Inherit="False">
      <li>Consumable</li>
    </tags>
  </RitualPatternDef>

  <RitualPatternDef ParentName="CelebrationConsumable">
    <defName>CelebrationTree</defName>
    <shortDescOverride>christmas tree party</shortDescOverride>
    <descOverride>A party around a Christmas tree. Participants will gather around a Christmas tree and make merry.</descOverride>
    <iconPathOverride>UI/Icons/Rituals/TreeCelebration</iconPathOverride>
    <ritualObligationTargetFilter>ChristmasTree</ritualObligationTargetFilter>
    <ritualBehavior>CelebrationTree</ritualBehavior>
    <ignoreConsumableBuildingRequirement>true</ignoreConsumableBuildingRequirement>
    <ritualOutcomeEffect>DestroyConsumableBuilding_ChristmasTree</ritualOutcomeEffect>
  </RitualPatternDef>

  <RitualPatternDef ParentName="CelebrationConsumable">
    <defName>BurnCircle</defName>
    <shortDescOverride>symbol burning</shortDescOverride>
    <descOverride>A ritualistic burning of a hated symbol. Participants will gather around a sacrificial structure, light it on fire, and celebrate as it burns to ash.</descOverride>
    <iconPathOverride>UI/Icons/Rituals/BurnCircle</iconPathOverride>
    <ritualObligationTargetFilter>BurnTargets</ritualObligationTargetFilter>
    <ritualBehavior>BurnCircle</ritualBehavior>
    <ritualOutcomeEffect>DestroyConsumableBuilding_Pyre</ritualOutcomeEffect>
  </RitualPatternDef>

  <RitualPatternDef ParentName="CelebrationConsumable">
    <defName>SmokeCircle</defName>
    <shortDescOverride>smokeleaf circle</shortDescOverride>
    <descOverride>A ritualistic smoking of large amounts of smokeleaf. Participants will gather around a burnbong or incense shrine, light it on fire, and celebrate while inhaling the fumes.</descOverride>
    <iconPathOverride>UI/Icons/Rituals/SmokeCircle</iconPathOverride>
    <ritualObligationTargetFilter>SmokeCircle</ritualObligationTargetFilter>
    <ritualBehavior>SmokeCircle</ritualBehavior>
    <ritualOutcomeEffect>DestroyConsumableBuilding_Burnbong</ritualOutcomeEffect>
  </RitualPatternDef>

  <RitualPatternDef>
    <defName>GladiatorDuel</defName>
    <canStartAnytime>true</canStartAnytime>
    <ritualObligationTargetFilter>AnyRitualSpot</ritualObligationTargetFilter>
    <ritualBehavior>GladiatorDuel</ritualBehavior>
    <alwaysStartAnytime>true</alwaysStartAnytime>
    <nameMaker>NamerRitualGladiatorDuel</nameMaker>
    <ritualOnlyForIdeoMembers>false</ritualOnlyForIdeoMembers>
    <ritualOutcomeEffect>GladiatorDuel</ritualOutcomeEffect>
    <tags Inherit="False" />
    <playsIdeoMusic>false</playsIdeoMusic>
  </RitualPatternDef>

  <RitualPatternDef ParentName="CelebrationConsumable">
    <defName>FeastCannibal</defName>
    <shortDescOverride>cannibal feast</shortDescOverride>
    <descOverride>A ritualistic flesh-eating meal. Participants gather around a platter of human flesh and bloodily feast on it.</descOverride>
    <iconPathOverride>UI/Icons/Rituals/CannibalFeast</iconPathOverride>
    <ritualObligationTargetFilter>FeastCannibal</ritualObligationTargetFilter>
    <ritualBehavior>FeastCannibal</ritualBehavior>
    <ritualOutcomeEffect>DestroyConsumableBuilding_CannibalPlatter</ritualOutcomeEffect>
  </RitualPatternDef>

  <RitualPatternDef Abstract="True" Name="MutilationBase">
    <nameMaker>NamerRitualMutilation</nameMaker>
    <tags>
      <li>Mutilation</li>
    </tags>
  </RitualPatternDef>

  <RitualPatternDef ParentName="MutilationBase">
    <defName>ScarificationCeremony</defName>
    <ritualBehavior>ScarificationCeremony</ritualBehavior>
    <ritualObligationTargetFilter>RitualSpotOrAltar_Scarification</ritualObligationTargetFilter>
    <ritualOutcomeEffect>ScarificationCeremony</ritualOutcomeEffect>
    <tags>
      <li>ScarificationCeremony</li>
    </tags>
    <patternGroupTag>ScarificationCeremony</patternGroupTag>
    <ritualObligationTriggers>
      <li Class="RitualObligationTrigger_ScarificationProperties">
        <mustBePlayerIdeo>true</mustBePlayerIdeo>
      </li>
    </ritualObligationTriggers>
    <mergeGizmosForObligations>true</mergeGizmosForObligations>
  </RitualPatternDef>

  <RitualPatternDef ParentName="MutilationBase">
    <defName>BlindingCeremony</defName>
    <ritualBehavior>BlindingCeremony</ritualBehavior>
    <ritualObligationTargetFilter>RitualSpotOrAltar_Blinding</ritualObligationTargetFilter>
    <ritualOutcomeEffect>BlindingCeremony</ritualOutcomeEffect>
    <tags>
      <li>BlindingCeremony</li>
    </tags>
    <patternGroupTag>BlindingCeremony</patternGroupTag>
    <ritualObligationTriggers>
      <li Class="RitualObligationTrigger_BlindingProperties">
        <mustBePlayerIdeo>true</mustBePlayerIdeo>
      </li>
    </ritualObligationTriggers>
    <mergeGizmosForObligations>true</mergeGizmosForObligations>
  </RitualPatternDef>

  <RitualPatternDef>
    <defName>Execution</defName>
    <alwaysStartAnytime>true</alwaysStartAnytime>
    <ritualObligationTargetFilter>RitualSpotIdeogramOrAltar</ritualObligationTargetFilter>
    <ritualBehavior>Execution</ritualBehavior>
    <ritualOnlyForIdeoMembers>false</ritualOnlyForIdeoMembers>
    <ritualOutcomeEffect>Execution</ritualOutcomeEffect>
    <tags>
      <li>Execution</li>
    </tags>
  </RitualPatternDef>

  <RitualPatternDef>
    <defName>RoleChange</defName>
    <alwaysStartAnytime>true</alwaysStartAnytime>
    <ritualObligationTargetFilter>RitualSpotIdeogramOrAltar</ritualObligationTargetFilter>
    <ritualTargetFilter>AltarIdeogramOrRitualSpot</ritualTargetFilter>
    <ritualBehavior>RoleChange</ritualBehavior>
    <ritualOnlyForIdeoMembers>true</ritualOnlyForIdeoMembers>
    <ritualOutcomeEffect>RoleChange</ritualOutcomeEffect>
  </RitualPatternDef>
  
</Defs>