diff --git a/plugins/strangemood.cpp b/plugins/strangemood.cpp index 41b25a9bc..b91b1ff94 100644 --- a/plugins/strangemood.cpp +++ b/plugins/strangemood.cpp @@ -631,7 +631,11 @@ command_result df_strangemood (color_ostream &out, vector & parameters) // If no mood type was specified, pick one randomly if (type == mood_type::None) { - if (rng.df_trandom(100) > 90)//rng.df_trandom(100) > unit->status.happiness) + if (soul && ( + (soul->personality.stress_level >= 500000) || + (soul->personality.stress_level >= 250000 && !rng.df_trandom(2)) || + (soul->personality.stress_level >= 100000 && !rng.df_trandom(10)) + )) { switch (rng.df_trandom(2)) {