mirror of
				https://gitgud.io/c0ffeeeeeeee/rimworld-animations.git
				synced 2024-08-15 00:43:45 +00:00 
			
		
		
		
	facial anim patch
This commit is contained in:
		
							parent
							
								
									f293a09f58
								
							
						
					
					
						commit
						2c6732310c
					
				
					 4 changed files with 90 additions and 12 deletions
				
			
		
										
											Binary file not shown.
										
									
								
							| 
						 | 
					@ -1,3 +1,87 @@
 | 
				
			||||||
 | 
					<?xml version="1.0" encoding="utf-8"?>
 | 
				
			||||||
 | 
					<Patch>
 | 
				
			||||||
 | 
					  <Operation Class="PatchOperationFindMod">
 | 
				
			||||||
 | 
					    <mods>
 | 
				
			||||||
 | 
					      <li>[NL] Facial Animation - WIP</li>
 | 
				
			||||||
 | 
					    </mods>
 | 
				
			||||||
 | 
					    <match Class="PatchOperationSequence">
 | 
				
			||||||
 | 
					      <success>Always</success>
 | 
				
			||||||
 | 
					      <operations>
 | 
				
			||||||
 | 
					        <li Class="PatchOperationAdd">
 | 
				
			||||||
 | 
					          <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Lovin" or defName="Lovin2"]/targetJobs</xpath>
 | 
				
			||||||
 | 
					          <success>Always</success>
 | 
				
			||||||
 | 
					          <value>
 | 
				
			||||||
 | 
					            <li>RJW_Masturbate</li>
 | 
				
			||||||
 | 
					            <li>GettinBred</li>
 | 
				
			||||||
 | 
					            <li>Bestiality</li>
 | 
				
			||||||
 | 
					            <li>BestialityForFemale</li>
 | 
				
			||||||
 | 
					            <li>ViolateCorpse</li>
 | 
				
			||||||
 | 
					            <li>Quickie</li>
 | 
				
			||||||
 | 
					            <li>GettingQuickie</li>
 | 
				
			||||||
 | 
					            <li>GettinRaped</li>
 | 
				
			||||||
 | 
					            <li>JoinInBed</li>
 | 
				
			||||||
 | 
					            <li>GettinLoved</li>
 | 
				
			||||||
 | 
					            <li>GettinLicked</li>
 | 
				
			||||||
 | 
					            <li>GettinSucked</li>
 | 
				
			||||||
 | 
					            <li>WhoreIsServingVisitors</li>
 | 
				
			||||||
 | 
					            <li>JoinInBedAnimation</li>
 | 
				
			||||||
 | 
					            <li>GettinLovedAnimation</li>
 | 
				
			||||||
 | 
					          </value>
 | 
				
			||||||
 | 
					        </li>
 | 
				
			||||||
 | 
					        <li Class="PatchOperationAdd">
 | 
				
			||||||
 | 
					          <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="WaitCombat" or defName="Wait_Combat_Rare"]/targetJobs</xpath>
 | 
				
			||||||
 | 
					          <success>Always</success>
 | 
				
			||||||
 | 
					          <value>
 | 
				
			||||||
 | 
					            <li>RapeComfortPawn</li>
 | 
				
			||||||
 | 
					            <li>RandomRape</li>
 | 
				
			||||||
 | 
					            <li>RapeEnemy</li>
 | 
				
			||||||
 | 
					          </value>
 | 
				
			||||||
 | 
					        </li>
 | 
				
			||||||
 | 
					        <li Class="PatchOperationAdd">
 | 
				
			||||||
 | 
					          <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="StandAndBeSociallyActive"]/targetJobs</xpath>
 | 
				
			||||||
 | 
					          <success>Always</success>
 | 
				
			||||||
 | 
					          <value>
 | 
				
			||||||
 | 
					            <li>WhoreInvitingVisitors</li>
 | 
				
			||||||
 | 
					          </value>
 | 
				
			||||||
 | 
					        </li>
 | 
				
			||||||
 | 
					        <li Class="PatchOperationAdd">
 | 
				
			||||||
 | 
					          <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Wear" or defName="Wear2" or defName="Wear3"]/targetJobs</xpath>
 | 
				
			||||||
 | 
					          <success>Always</success>
 | 
				
			||||||
 | 
					          <value>
 | 
				
			||||||
 | 
					            <li>CleanSelf</li>
 | 
				
			||||||
 | 
					            <li>StruggleInBondageGear</li>
 | 
				
			||||||
 | 
					          </value>
 | 
				
			||||||
 | 
					        </li>
 | 
				
			||||||
 | 
					        <li Class="PatchOperationFindMod">
 | 
				
			||||||
 | 
					          <mods>
 | 
				
			||||||
 | 
					            <li>Rimworld-Animations</li>
 | 
				
			||||||
 | 
					          </mods>
 | 
				
			||||||
 | 
					          <match Class="PatchOperationSequence">
 | 
				
			||||||
 | 
					            <success>Always</success>
 | 
				
			||||||
 | 
					            <operations>
 | 
				
			||||||
 | 
					              <li Class="PatchOperationRemove">
 | 
				
			||||||
 | 
					                <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Lovin" or defName="Lovin2"]/animationFrames/li[1]/headOffset</xpath>
 | 
				
			||||||
 | 
					                <success>Always</success>
 | 
				
			||||||
 | 
					              </li>
 | 
				
			||||||
 | 
					              <li Class="PatchOperationRemove">
 | 
				
			||||||
 | 
					                <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Lovin"]/animationFrames/li[2]/headOffset</xpath>
 | 
				
			||||||
 | 
					                <success>Always</success>
 | 
				
			||||||
 | 
					              </li>
 | 
				
			||||||
 | 
					              <li Class="PatchOperationRemove">
 | 
				
			||||||
 | 
					                <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Lovin"]/animationFrames/li[3]/headOffset</xpath>
 | 
				
			||||||
 | 
					                <success>Always</success>
 | 
				
			||||||
 | 
					              </li>
 | 
				
			||||||
 | 
					            </operations>
 | 
				
			||||||
 | 
					          </match>
 | 
				
			||||||
 | 
					        </li>
 | 
				
			||||||
 | 
					      </operations>
 | 
				
			||||||
 | 
					    </match>
 | 
				
			||||||
 | 
					  </Operation>
 | 
				
			||||||
 | 
					</Patch>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<!--
 | 
				
			||||||
 | 
					OLD PATCH
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<?xml version="1.0" encoding="utf-8"?>
 | 
					<?xml version="1.0" encoding="utf-8"?>
 | 
				
			||||||
<Patch>
 | 
					<Patch>
 | 
				
			||||||
	<Operation Class="PatchOperationFindMod">
 | 
						<Operation Class="PatchOperationFindMod">
 | 
				
			||||||
| 
						 | 
					@ -43,3 +127,4 @@
 | 
				
			||||||
		</match>
 | 
							</match>
 | 
				
			||||||
	</Operation>
 | 
						</Operation>
 | 
				
			||||||
</Patch>
 | 
					</Patch>
 | 
				
			||||||
 | 
					-->
 | 
				
			||||||
| 
						 | 
					@ -242,7 +242,7 @@ namespace Rimworld_Animations {
 | 
				
			||||||
            if (optionsWithSexTypeAndInitiator.Any()) {
 | 
					            if (optionsWithSexTypeAndInitiator.Any()) {
 | 
				
			||||||
                if (AnimationSettings.debugMode)
 | 
					                if (AnimationSettings.debugMode)
 | 
				
			||||||
                    Log.Message("Selecting animation for rjwSexType " + sexType.ToStringSafe() + " and initiators...");
 | 
					                    Log.Message("Selecting animation for rjwSexType " + sexType.ToStringSafe() + " and initiators...");
 | 
				
			||||||
                return optionsWithSexType.RandomElement();
 | 
					                return optionsWithSexTypeAndInitiator.RandomElement();
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if (optionsWithSexType.Any()) {
 | 
					            if (optionsWithSexType.Any()) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -20,13 +20,6 @@ namespace Rimworld_Animations {
 | 
				
			||||||
					if (LoadedModManager.RunningModsListForReading.Any(x => x.Name == "[NL] Facial Animation - WIP")) {
 | 
										if (LoadedModManager.RunningModsListForReading.Any(x => x.Name == "[NL] Facial Animation - WIP")) {
 | 
				
			||||||
						(new Harmony("rjw")).Patch(AccessTools.Method(AccessTools.TypeByName("FacialAnimation.DrawFaceGraphicsComp"), "DrawGraphics"),
 | 
											(new Harmony("rjw")).Patch(AccessTools.Method(AccessTools.TypeByName("FacialAnimation.DrawFaceGraphicsComp"), "DrawGraphics"),
 | 
				
			||||||
							prefix: new HarmonyMethod(AccessTools.Method(typeof(Patch_FacialAnimation), "Prefix")));
 | 
												prefix: new HarmonyMethod(AccessTools.Method(typeof(Patch_FacialAnimation), "Prefix")));
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						(new Harmony("rjw")).Patch(AccessTools.Method(AccessTools.TypeByName("FacialAnimation.FaceAnimationDef"), "IsSame", new Type[] { typeof(JobDef) }),
 | 
					 | 
				
			||||||
							prefix: new HarmonyMethod(AccessTools.Method(typeof(Patch_FacialAnimation), "Prefix_IsSameA")));
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						(new Harmony("rjw")).Patch(AccessTools.Method(AccessTools.TypeByName("FacialAnimation.FaceAnimationDef"), "IsSame", new Type[] { typeof(string) }),
 | 
					 | 
				
			||||||
							prefix: new HarmonyMethod(AccessTools.Method(typeof(Patch_FacialAnimation), "Prefix_IsSameB")));
 | 
					 | 
				
			||||||
					}
 | 
										}
 | 
				
			||||||
				}))();
 | 
									}))();
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
| 
						 | 
					@ -48,7 +41,7 @@ namespace Rimworld_Animations {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			return true;
 | 
								return true;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
							/*
 | 
				
			||||||
		public static List<string> rjwLovinDefNames = new List<string>{
 | 
							public static List<string> rjwLovinDefNames = new List<string>{
 | 
				
			||||||
			"Lovin",
 | 
								"Lovin",
 | 
				
			||||||
			"Quickie",
 | 
								"Quickie",
 | 
				
			||||||
| 
						 | 
					@ -78,7 +71,6 @@ namespace Rimworld_Animations {
 | 
				
			||||||
			"RapeEnemy"
 | 
								"RapeEnemy"
 | 
				
			||||||
		};
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
		public static bool Prefix_IsSameA(JobDef job, string ___jobDef, ref bool __result) {
 | 
							public static bool Prefix_IsSameA(JobDef job, string ___jobDef, ref bool __result) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			if(___jobDef != null && ___jobDef == "Lovin" && job?.defName != null && rjwLovinDefNames.Contains(job?.defName)) {
 | 
								if(___jobDef != null && ___jobDef == "Lovin" && job?.defName != null && rjwLovinDefNames.Contains(job?.defName)) {
 | 
				
			||||||
| 
						 | 
					@ -107,5 +99,6 @@ namespace Rimworld_Animations {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			return true;
 | 
								return true;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
							*/
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue