mirror of
				https://gitgud.io/c0ffeeeeeeee/rimworld-animations.git
				synced 2024-08-15 00:43:45 +00:00 
			
		
		
		
	Added dynamic prop rendering system to extendedanimator
rendernodes dynamically attach and remove per animation configure props in AnimationPropDef
This commit is contained in:
		
							parent
							
								
									0de9346eac
								
							
						
					
					
						commit
						9621dc2841
					
				
					 14 changed files with 156 additions and 17 deletions
				
			
		
										
											Binary file not shown.
										
									
								
							| 
						 | 
					@ -98,6 +98,35 @@
 | 
				
			||||||
					</keyframes>
 | 
										</keyframes>
 | 
				
			||||||
				</value>
 | 
									</value>
 | 
				
			||||||
			</li>
 | 
								</li>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								<li>
 | 
				
			||||||
 | 
									<key>RenderNodeTag_Banana</key>
 | 
				
			||||||
 | 
									<value>
 | 
				
			||||||
 | 
										<workerClass>Rimworld_Animations.AnimationWorker_KeyframesExtended</workerClass>
 | 
				
			||||||
 | 
										<keyframes>
 | 
				
			||||||
 | 
											<li Class="Rimworld_Animations.ExtendedKeyframe">
 | 
				
			||||||
 | 
												<tick>30</tick>
 | 
				
			||||||
 | 
												<angle>0</angle>
 | 
				
			||||||
 | 
												<visible>true</visible>
 | 
				
			||||||
 | 
											</li>
 | 
				
			||||||
 | 
											<li Class="Rimworld_Animations.ExtendedKeyframe">
 | 
				
			||||||
 | 
												<tick>100</tick>
 | 
				
			||||||
 | 
												<angle>0</angle>
 | 
				
			||||||
 | 
												<visible>false</visible>
 | 
				
			||||||
 | 
											</li>
 | 
				
			||||||
 | 
											<li Class="Rimworld_Animations.ExtendedKeyframe">
 | 
				
			||||||
 | 
												<tick>200</tick>
 | 
				
			||||||
 | 
												<angle>0</angle>
 | 
				
			||||||
 | 
												<visible>true</visible>
 | 
				
			||||||
 | 
											</li>
 | 
				
			||||||
 | 
											<li Class="Rimworld_Animations.ExtendedKeyframe">
 | 
				
			||||||
 | 
												<tick>300</tick>
 | 
				
			||||||
 | 
												<angle>0</angle>
 | 
				
			||||||
 | 
												<visible>true</visible>
 | 
				
			||||||
 | 
											</li>
 | 
				
			||||||
 | 
										</keyframes>
 | 
				
			||||||
 | 
									</value>
 | 
				
			||||||
 | 
								</li>
 | 
				
			||||||
		</animationParts>
 | 
							</animationParts>
 | 
				
			||||||
	</AnimationDef>
 | 
						</AnimationDef>
 | 
				
			||||||
</Defs>
 | 
					</Defs>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										25
									
								
								1.5/Defs/AnimationPropDefs/AnimationPropDef.xml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								1.5/Defs/AnimationPropDefs/AnimationPropDef.xml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,25 @@
 | 
				
			||||||
 | 
					<?xml version="1.0" encoding="utf-8" ?>
 | 
				
			||||||
 | 
					<Defs>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						<PawnRenderNodeTagDef>
 | 
				
			||||||
 | 
							<defName>RenderNodeTag_Banana</defName>
 | 
				
			||||||
 | 
						</PawnRenderNodeTagDef>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						<Rimworld_Animations.AnimationPropDef>
 | 
				
			||||||
 | 
							<defName>AnimationProp_Banana</defName>
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							<!-- Note: props always return graphic_multi; set cardinal textures to blank and only north in anim if only one tex-->
 | 
				
			||||||
 | 
							<!-- or draw east, south, and west directions, use them in animations? -->
 | 
				
			||||||
 | 
							<animPropProperties>
 | 
				
			||||||
 | 
								<debugLabel>AnimProp_Banana</debugLabel>
 | 
				
			||||||
 | 
								<workerClass>Rimworld_Animations.PawnRenderNodeWorker_AnimationProp</workerClass>
 | 
				
			||||||
 | 
								<tagDef>RenderNodeTag_Banana</tagDef>
 | 
				
			||||||
 | 
								<parentTagDef>Body</parentTagDef>
 | 
				
			||||||
 | 
								<texPath>AnimationProps/Banana/Banana</texPath>
 | 
				
			||||||
 | 
								<!-- for height -->
 | 
				
			||||||
 | 
								<overlayLayer>Head</overlayLayer>
 | 
				
			||||||
 | 
								<baseLayer>95</baseLayer>
 | 
				
			||||||
 | 
								
 | 
				
			||||||
 | 
							</animPropProperties>
 | 
				
			||||||
 | 
						</Rimworld_Animations.AnimationPropDef>
 | 
				
			||||||
 | 
					</Defs>
 | 
				
			||||||
| 
						 | 
					@ -1,11 +0,0 @@
 | 
				
			||||||
<?xml version="1.0" encoding="utf-8" ?>
 | 
					 | 
				
			||||||
<Defs>
 | 
					 | 
				
			||||||
	<Rimworld_Animations.AnimationPropDef>
 | 
					 | 
				
			||||||
		<tagDef>Root</tagDef>
 | 
					 | 
				
			||||||
		<renderNode>
 | 
					 | 
				
			||||||
			<debugLabel>Hand</debugLabel>
 | 
					 | 
				
			||||||
			<nodeClass>PawnRenderNode</nodeClass>
 | 
					 | 
				
			||||||
			<graphic>P</graphic>
 | 
					 | 
				
			||||||
		</renderNode>
 | 
					 | 
				
			||||||
	</Rimworld_Animations.AnimationPropDef>
 | 
					 | 
				
			||||||
</Defs>
 | 
					 | 
				
			||||||
							
								
								
									
										16
									
								
								1.5/Source/AnimationProps/AnimationPropDef.cs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								1.5/Source/AnimationProps/AnimationPropDef.cs
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,16 @@
 | 
				
			||||||
 | 
					using System;
 | 
				
			||||||
 | 
					using System.Collections.Generic;
 | 
				
			||||||
 | 
					using System.Linq;
 | 
				
			||||||
 | 
					using System.Text;
 | 
				
			||||||
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
 | 
					using Verse;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Rimworld_Animations
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public class AnimationPropDef : Def
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        public PawnRenderNodeProperties animPropProperties;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -124,9 +124,57 @@ namespace Rimworld_Animations {
 | 
				
			||||||
            
 | 
					            
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        public static void CheckRecacheNecessary(int anim)
 | 
					        public override List<PawnRenderNode> CompRenderNodes()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
 | 
					            //only if pawn is animating for performance
 | 
				
			||||||
 | 
					            if (IsAnimating)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                List<PawnRenderNode> animRenderNodes = new List<PawnRenderNode>();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                // for all animationpropdefs,
 | 
				
			||||||
 | 
					                foreach (AnimationPropDef animationProp in DefDatabase<AnimationPropDef>.AllDefsListForReading)
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    //if animation makes use of prop,
 | 
				
			||||||
 | 
					                    if (AnimationMakesUseOfProp(animationProp))
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        //create new render node
 | 
				
			||||||
 | 
					                        PawnRenderNode animRenderNode = new PawnRenderNode(pawn, animationProp.animPropProperties, pawn.Drawer.renderer.renderTree);
 | 
				
			||||||
 | 
					                        animRenderNodes.Add(animRenderNode);
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //return list of rendernodes that should animate
 | 
				
			||||||
 | 
					                return animRenderNodes;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            else
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                return null;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        public bool AnimationMakesUseOfProp(AnimationPropDef animationProp)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            // never true if not animating; anim props shouldn't be attached
 | 
				
			||||||
 | 
					            if (!IsAnimating) return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            //for all queued animations,
 | 
				
			||||||
 | 
					            foreach (AnimationDef animation in animationQueue)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                // for each prop tag in the currently playing animation,
 | 
				
			||||||
 | 
					                foreach (PawnRenderNodeTagDef propTag in animation.animationParts.Keys)
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    // if that proptag is the same as the one for animationProp,
 | 
				
			||||||
 | 
					                    if (propTag == animationProp.animPropProperties.tagDef)
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        //that prop is being used in the animation
 | 
				
			||||||
 | 
					                        return true;
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            return false;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        private Pawn pawn => base.parent as Pawn;
 | 
					        private Pawn pawn => base.parent as Pawn;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -10,8 +10,7 @@ namespace Rimworld_Animations
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    public class ExtendedKeyframe : Verse.Keyframe
 | 
					    public class ExtendedKeyframe : Verse.Keyframe
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
					        public Rot4 rotation = Rot4.North;
 | 
				
			||||||
        public Rot4 rotation;
 | 
					 | 
				
			||||||
        public SoundDef sound = null;
 | 
					        public SoundDef sound = null;
 | 
				
			||||||
        public bool visible = true;
 | 
					        public bool visible = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9,7 +9,9 @@ using Verse;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Rimworld_Animations
 | 
					namespace Rimworld_Animations
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    //Head Rotation Code - Textures
 | 
					    // Head Rotation Code - Textures
 | 
				
			||||||
 | 
					    // it's fine to just edit each AppendRequests individually
 | 
				
			||||||
 | 
					    // because they all the parms are passed down to each child node recursively
 | 
				
			||||||
    [HarmonyPatch(typeof(PawnRenderNode), "AppendRequests")]
 | 
					    [HarmonyPatch(typeof(PawnRenderNode), "AppendRequests")]
 | 
				
			||||||
    public static class HarmonyPatch_PawnRenderNode
 | 
					    public static class HarmonyPatch_PawnRenderNode
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
| 
						 | 
					@ -28,7 +30,9 @@ namespace Rimworld_Animations
 | 
				
			||||||
                //replace maybe?
 | 
					                //replace maybe?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                //cheaper call now comparing prev tick to cur tick
 | 
					                //cheaper call now comparing prev tick to cur tick
 | 
				
			||||||
                return extendedAnimWorker.visibleAtTick(__instance.tree.AnimationTick);
 | 
					
 | 
				
			||||||
 | 
					                //not necessary because of new rendernodeworker hiding props now
 | 
				
			||||||
 | 
					                //return extendedAnimWorker.visibleAtTick(__instance.tree.AnimationTick);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,23 @@
 | 
				
			||||||
 | 
					using System;
 | 
				
			||||||
 | 
					using System.Collections.Generic;
 | 
				
			||||||
 | 
					using System.Linq;
 | 
				
			||||||
 | 
					using System.Text;
 | 
				
			||||||
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
 | 
					using Verse;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Rimworld_Animations
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public class PawnRenderNodeWorker_AnimationProp : PawnRenderNodeWorker
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        public override bool CanDrawNow(PawnRenderNode node, PawnDrawParms parms)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            if (node.AnimationWorker is AnimationWorker_KeyframesExtended propAnimator)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                return propAnimator.visibleAtTick(node.tree.AnimationTick);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            return false;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								1.5/Textures/AnimationProps/Banana/Banana_east.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								1.5/Textures/AnimationProps/Banana/Banana_east.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 2.2 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								1.5/Textures/AnimationProps/Banana/Banana_north.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								1.5/Textures/AnimationProps/Banana/Banana_north.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 6.8 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								1.5/Textures/AnimationProps/Banana/Banana_south.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								1.5/Textures/AnimationProps/Banana/Banana_south.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 2.2 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								1.5/Textures/AnimationProps/Banana/Banana_west.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								1.5/Textures/AnimationProps/Banana/Banana_west.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 2.2 KiB  | 
| 
						 | 
					@ -72,6 +72,7 @@
 | 
				
			||||||
    <Compile Include="1.5\Source\Actors\Actor.cs" />
 | 
					    <Compile Include="1.5\Source\Actors\Actor.cs" />
 | 
				
			||||||
    <Compile Include="1.5\Source\Actors\AlienRaceOffset.cs" />
 | 
					    <Compile Include="1.5\Source\Actors\AlienRaceOffset.cs" />
 | 
				
			||||||
    <Compile Include="1.5\Source\Actors\BodyTypeOffset.cs" />
 | 
					    <Compile Include="1.5\Source\Actors\BodyTypeOffset.cs" />
 | 
				
			||||||
 | 
					    <Compile Include="1.5\Source\AnimationProps\AnimationPropDef.cs" />
 | 
				
			||||||
    <Compile Include="1.5\Source\AnimationWorkers\AnimationWorker_KeyframesExtended.cs" />
 | 
					    <Compile Include="1.5\Source\AnimationWorkers\AnimationWorker_KeyframesExtended.cs" />
 | 
				
			||||||
    <Compile Include="1.5\Source\Comps\CompExtendedAnimator.cs" />
 | 
					    <Compile Include="1.5\Source\Comps\CompExtendedAnimator.cs" />
 | 
				
			||||||
    <Compile Include="1.5\Source\Comps\CompProperties_ExtendedAnimator.cs" />
 | 
					    <Compile Include="1.5\Source\Comps\CompProperties_ExtendedAnimator.cs" />
 | 
				
			||||||
| 
						 | 
					@ -105,6 +106,7 @@
 | 
				
			||||||
    <Compile Include="1.5\Source\Patches\RJWPatches\JobDrivers\HarmonyPatch_JobDriver_SexBaseInitiator.cs" />
 | 
					    <Compile Include="1.5\Source\Patches\RJWPatches\JobDrivers\HarmonyPatch_JobDriver_SexBaseInitiator.cs" />
 | 
				
			||||||
    <Compile Include="1.5\Source\Patches\RJWPatches\JobDrivers\SexBaseReceivers\HarmonyPatch_JobDriver_SexBaseReceiverRaped.cs" />
 | 
					    <Compile Include="1.5\Source\Patches\RJWPatches\JobDrivers\SexBaseReceivers\HarmonyPatch_JobDriver_SexBaseReceiverRaped.cs" />
 | 
				
			||||||
    <Compile Include="1.5\Source\Patches\RJWPatches\JobDrivers\SexBaseReceivers\HarmonyPatch_JobDriver_SexBaseReceiverLoved.cs" />
 | 
					    <Compile Include="1.5\Source\Patches\RJWPatches\JobDrivers\SexBaseReceivers\HarmonyPatch_JobDriver_SexBaseReceiverLoved.cs" />
 | 
				
			||||||
 | 
					    <Compile Include="1.5\Source\PawnRenderNode\PawnRenderNodeWorker_AnimationProp.cs" />
 | 
				
			||||||
    <Compile Include="1.5\Source\Settings\AnimationSettings.cs" />
 | 
					    <Compile Include="1.5\Source\Settings\AnimationSettings.cs" />
 | 
				
			||||||
    <Compile Include="1.5\Source\Utilities\AnimationUtility.cs" />
 | 
					    <Compile Include="1.5\Source\Utilities\AnimationUtility.cs" />
 | 
				
			||||||
    <Compile Include="Properties\AssemblyInfo.cs" />
 | 
					    <Compile Include="Properties\AssemblyInfo.cs" />
 | 
				
			||||||
| 
						 | 
					@ -115,11 +117,11 @@
 | 
				
			||||||
    <Content Include="1.5\Assemblies\RJW.dll" />
 | 
					    <Content Include="1.5\Assemblies\RJW.dll" />
 | 
				
			||||||
    <Content Include="1.5\Defs\AnimationDefs\TestAnimation1.xml" />
 | 
					    <Content Include="1.5\Defs\AnimationDefs\TestAnimation1.xml" />
 | 
				
			||||||
    <Content Include="1.5\Defs\AnimationDefs\TestAnimation2.xml" />
 | 
					    <Content Include="1.5\Defs\AnimationDefs\TestAnimation2.xml" />
 | 
				
			||||||
 | 
					    <Content Include="1.5\Defs\AnimationPropDefs\AnimationPropDef.xml" />
 | 
				
			||||||
    <Content Include="1.5\Defs\GroupAnimationDefs\TestGroupAnimation1.xml" />
 | 
					    <Content Include="1.5\Defs\GroupAnimationDefs\TestGroupAnimation1.xml" />
 | 
				
			||||||
    <Content Include="1.5\Defs\MainTabDefs\MainButtonDef.xml" />
 | 
					    <Content Include="1.5\Defs\MainTabDefs\MainButtonDef.xml" />
 | 
				
			||||||
    <Content Include="1.5\Defs\OffsetDefs\OffsetDef_GroinToAppropriateHeight.xml" />
 | 
					    <Content Include="1.5\Defs\OffsetDefs\OffsetDef_GroinToAppropriateHeight.xml" />
 | 
				
			||||||
    <Content Include="1.5\Defs\SoundDefs\Sounds_Sex.xml" />
 | 
					    <Content Include="1.5\Defs\SoundDefs\Sounds_Sex.xml" />
 | 
				
			||||||
    <Content Include="1.5\Defs\XMLFile1.xml" />
 | 
					 | 
				
			||||||
    <Content Include="1.5\Patches\AnimationPatchHSK.xml" />
 | 
					    <Content Include="1.5\Patches\AnimationPatchHSK.xml" />
 | 
				
			||||||
    <Content Include="1.5\Patches\AnimationPatch_CompExtendedAnimator.xml" />
 | 
					    <Content Include="1.5\Patches\AnimationPatch_CompExtendedAnimator.xml" />
 | 
				
			||||||
    <Content Include="1.5\Patches\CompatibilityPatch_FacialAnimation.xml" />
 | 
					    <Content Include="1.5\Patches\CompatibilityPatch_FacialAnimation.xml" />
 | 
				
			||||||
| 
						 | 
					@ -156,6 +158,10 @@
 | 
				
			||||||
    <Content Include="1.5\Sounds\Sex\Suck\Swallow_1.wav" />
 | 
					    <Content Include="1.5\Sounds\Sex\Suck\Swallow_1.wav" />
 | 
				
			||||||
    <Content Include="1.5\Sounds\Sex\Suck\Swallow_2.wav" />
 | 
					    <Content Include="1.5\Sounds\Sex\Suck\Swallow_2.wav" />
 | 
				
			||||||
    <Content Include="1.5\Sounds\Sex\Suck\Swallow_3.wav" />
 | 
					    <Content Include="1.5\Sounds\Sex\Suck\Swallow_3.wav" />
 | 
				
			||||||
 | 
					    <Content Include="1.5\Textures\AnimationProps\Banana\Banana_east.png" />
 | 
				
			||||||
 | 
					    <Content Include="1.5\Textures\AnimationProps\Banana\Banana_north.png" />
 | 
				
			||||||
 | 
					    <Content Include="1.5\Textures\AnimationProps\Banana\Banana_south.png" />
 | 
				
			||||||
 | 
					    <Content Include="1.5\Textures\AnimationProps\Banana\Banana_west.png" />
 | 
				
			||||||
    <Content Include="1.5\Textures\UI\MainTab.png" />
 | 
					    <Content Include="1.5\Textures\UI\MainTab.png" />
 | 
				
			||||||
    <Content Include="About\About.xml" />
 | 
					    <Content Include="About\About.xml" />
 | 
				
			||||||
    <Content Include="About\Manifest.xml" />
 | 
					    <Content Include="About\Manifest.xml" />
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue