From 5d63725e9d4590e67371eaaa7d5c322672c4b1dc Mon Sep 17 00:00:00 2001 From: Platinum Date: Thu, 9 Jul 2020 17:07:17 -0700 Subject: [PATCH] blacklisting genital types --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 55808 -> 56832 bytes Source/AnimationUtility.cs | 43 +++++++++++++++++++++++++ 2 files changed, 43 insertions(+) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 35ab38f6f12911f1d415cf92b35894629fbad9a6..a0d56f59d7240cdbb151ab74f26c57970949172c 100644 GIT binary patch delta 4592 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 BG&}$R delta 4013 zcmaKv3v?9a702&4vpbpD-Rx#x$&yVr??4D9yx(XrKuif3B}5=W69{1?5_y$JElxBP zsgDEkLn`9Y2#TQ9YByR`JOpD69zj!xX@a1^)<+>($+m_Tw*&7GI{B%QVvYibFIF1g*a7te{JXh*`sSn^raxgd|H>7wS z$qXFm*p7h&o+1t7^VwjV+J>%V{2u4`vuxJRUuA8H~59hrvEs5ger@k#csYEVMEoRaz zD=*GZklvR0@Pb&rDZf!#XW`A${e052qtbSn%+T~k>9mCAt5Sxz`1wOKp5kYIF+vWy zgPhH%lqy_&{miM>1b4!)HT>oL+obg_o>Vm0o#;-S_~4}uH<@n^IX3)%q@xyv|BaN-Cyk2Zf-5jly`KJd-DvrIL+-+T_wfMB(XW_llD5mWh&)AIj>lE?4dCFV}?D|1T%Cd-(?oXC7kQ25id^SMDS@_CM=5kJ<_WP z4%o5qaO}&rSlASdL*@qZ_>}M%{Z+JszC&1NUedxS1uom_J9L|9)7LO{wu?vaKfRaqQd ziQGvW8}*YqW5jNLuFym(@sMOJ9&aq>&)oh&;uI|X_7J@1VFyg~&a}%=p4G3)dBd_G ztK}~&%PLrHcf;f20R{J{ZT|JB4wBle>VXt+L%X4%Hn0(6y;syGy9b(wiFKRdfcF8O zSQB(TVh_NAQHF0-{9ayAGl#vvch!tzf8-}>D%k-(=8ij&&)o4WdyCInK0UkDo(gLU z#EOQ%gm|HvNbP{s^!HGmHPzO{*+))5emkz{=V8y)thPOLrLBfK5wZ?%vDC<}E zIZB{})H{%kcOLJkjc2X=eC-^aJLW-CwMeXoG?_c*!x2-Jqgnuymm0AxsLJ3)QpS$T z;dN4*1EF|)@<5B3X@kK^Idqz;8P!7QHr3zRVC7c$;>tRv!)>61MT;}+esOn$YO2<> z6jbfYD5hPXy310 zpI!+irW6e;;rQ}_hLv#AP}Hyz&X_ULuoBLhG10IRa%%?~R>C+^#yM3&J}KjzDxruJ zo;JSMRO;ZnQ!K29E_e>hWRfyc7eTHW+XgQ?7D1t@3fKY1VyGfzw5Woof1+L@WmKtx zgXTKXunNwt80c38`el;F(JX;MD~(-VVM^g>jF9#;Ah9D_p(4{bzlyT35 zVZ5otpkYYBcR9SDXwWdE8;S-EL$(Xri;bF~zuDr&iwg_*kcnzS}% zGkUJK?b4=7Nw&jsmZaFD^2p$kP=+O{I(phgA$zsUT`6Ukb_KvamZ{aj?U3xl(@hoVm<|CLMeLY zkf)5e7;4c|1CJtC!!yw>(tB_rx<@*JOp^uk<&R*6Yq4x+Bfa&=C%t>f-$Lw>y)4!z zTfA(mFAaIomyew9Uu@C6?4Z9MMOv6~1gHL&%-E@z&t9zI2W zLG}g6bTy+V*9FcNF$A%KSVwFmHWRyv;A#OKQ}J>kx`J3oY$P@lyA8ivn$l@34rs#Xrh?=ZT)^=-s+C}YqEgD}2{dk{cfenV@ zKb5)Qgc0=Suld{Xf6Ug>l z|CimC0@3JqQNR>vN1E@sl|^k+PpL)P8$6>vjY+()ejV~~{mzWF>U~hBeklD_?V_)y zeJEvWUHH8yEyZW$D_WBLN<`oE$e75<*Y{asW~%YGPq{m3+P+CcznXN{C#NFY4;86$ zdQ^z_w5CQ}N8C;x>hL%_`^3Y`_^I+_@7?5K-4JO3q1mf;cisXo>) GJnBF5X2=Wx diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index 42d6cdc..0490e44 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -118,6 +118,49 @@ namespace Rimworld_Animations { return false; } } + + if (x.actors[i].requiredGenitals.Contains("NoVagina")) { + + if (rjw.Genital_Helper.has_vagina(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " has vagina"); + return false; + } + + } + + if (x.actors[i].requiredGenitals.Contains("NoPenis")) { + + if ((rjw.Genital_Helper.has_multipenis(localParticipants[i]) || rjw.Genital_Helper.has_penis_infertile(localParticipants[i]) || rjw.Genital_Helper.has_penis_fertile(localParticipants[i]))) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " has penis"); + return false; + } + + } + + if (x.actors[i].requiredGenitals.Contains("NoMouth")) { + + if (rjw.Genital_Helper.has_mouth(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " has mouth"); + return false; + } + + } + + if (x.actors[i].requiredGenitals.Contains("NoAnus")) { + + if (rjw.Genital_Helper.has_anus(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " has anus"); + return false; + } + + } + + if (x.actors[i].requiredGenitals.Contains("NoBreasts")) { + if (rjw.Genital_Helper.can_do_breastjob(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " has breasts"); + return false; + } + } }