Hediff causing Thought - AndroidQuazar/VanillaExpandedFramework GitHub Wiki
The Thought_Hediff class creates a hediff as soon as a pawn receives a thought
-"But there is already a vanilla class that creates a thought when a hediff is present! Why do you do that?"
Well, it's because eating something in RW can create a hediff, and then it can create a thought, but when you consume something AS AN INGREDIENT, it can only create a Thought (for example, insect meat), but no hediffs. So this class basically allows us to make ingredients that cause thoughts and hediffs.
First of all, you'll need to assign the Thought_Hediff class to a Thought (example here). Then you place the hediff you want to add on that Thought's <hediff>
tag. That's it.
If you want the thought (and thus the hediff) to be caused by an ingredient, you just set that thought at the ingestible item's <specialThoughtAsIngredient>
tag (example).
There are a couple companion classes:
-
First of all, Thought_Hediff_Extension can be used to add a second (and even a third, though no examples of this, you'd have to look at the source code) hediff to the thought. You can see an example here
-
Secondly, there is another hediff comp class, HediffCompProperties_WhileHavingThoughts, that is explained in its own page