ShadowOne.csproj 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Project Sdk="Microsoft.NET.Sdk">
  3. <ImportGroup>
  4. <Import Project="../GamePaths.xml" />
  5. </ImportGroup>
  6. <PropertyGroup>
  7. <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
  8. <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
  9. <ProjectGuid>{91AB81DE-EAEE-47D1-93DD-541179208219}</ProjectGuid>
  10. <OutputType>Library</OutputType>
  11. <AppDesignerFolder>Properties</AppDesignerFolder>
  12. <RootNamespace>ShadowOne</RootNamespace>
  13. <AssemblyName>ShadowOne</AssemblyName>
  14. <TargetFrameworks>net35</TargetFrameworks>
  15. <FileAlignment>512</FileAlignment>
  16. <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
  17. <Configurations>Release</Configurations>
  18. <Authors>Zariteis</Authors>
  19. <ApplicationIcon />
  20. <StartupObject />
  21. <Platforms>x86</Platforms>
  22. </PropertyGroup>
  23. <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
  24. <PlatformTarget>x86</PlatformTarget>
  25. <DebugType>none</DebugType>
  26. <Optimize>true</Optimize>
  27. <OutputPath>Release\</OutputPath>
  28. <DefineConstants>TRACE</DefineConstants>
  29. <ErrorReport>prompt</ErrorReport>
  30. <WarningLevel>4</WarningLevel>
  31. <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
  32. </PropertyGroup>
  33. <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net35|x86'">
  34. <NoWarn>1701;1702</NoWarn>
  35. </PropertyGroup>
  36. <ItemGroup>
  37. <Reference Include="0Harmony">
  38. <HintPath>$(GamePath)$(ManagedFolder)0Harmony.dll</HintPath>
  39. <Private>false</Private>
  40. </Reference>
  41. <Reference Include="Assembly-CSharp">
  42. <HintPath>$(GamePath)$(ManagedFolder)Assembly-CSharp.dll</HintPath>
  43. <Private>false</Private>
  44. </Reference>
  45. <Reference Include="GadgetCore">
  46. <HintPath>$(GamePath)$(ManagedFolder)GadgetCore.dll</HintPath>
  47. <Private>false</Private>
  48. </Reference>
  49. <Reference Include="UnityEngine">
  50. <HintPath>$(GamePath)$(ManagedFolder)UnityEngine.dll</HintPath>
  51. <Private>false</Private>
  52. </Reference>
  53. <Reference Include="WindowsBase" />
  54. </ItemGroup>
  55. <ItemGroup>
  56. <Content Include="ModInfo.txt">
  57. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  58. </Content>
  59. </ItemGroup>
  60. <UsingTask TaskName="GetFileVersion" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
  61. <ParameterGroup>
  62. <AssemblyPath ParameterType="System.String" Required="true" />
  63. <Version ParameterType="System.String" Output="true" />
  64. <TrimmedVersion ParameterType="System.String" Output="true" />
  65. </ParameterGroup>
  66. <Task>
  67. <Using Namespace="System.Diagnostics" />
  68. <Using Namespace="System.Text" />
  69. <Using Namespace="System.Linq" />
  70. <Code Type="Fragment" Language="cs">
  71. <![CDATA[
  72. this.Version = FileVersionInfo.GetVersionInfo(this.AssemblyPath).FileVersion;
  73. this.TrimmedVersion = this.Version.Split('.').TakeWhile(x => !x.Equals("0")).Aggregate(new StringBuilder(), (a, b) => { if (a.Length > 0) a.Append("."); a.Append(b); return a; }).ToString();
  74. if (this.TrimmedVersion.IndexOf('.') == -1) this.TrimmedVersion += ".0";
  75. ]]>
  76. </Code>
  77. </Task>
  78. </UsingTask>
  79. <Target Name="PostBuild" AfterTargets="PostBuildEvent">
  80. <GetFileVersion AssemblyPath="$(TargetPath)">
  81. <Output TaskParameter="Version" PropertyName="ModFullVersion" />
  82. <Output TaskParameter="TrimmedVersion" PropertyName="AssemblyFileVersion" />
  83. </GetFileVersion>
  84. <ItemGroup>
  85. <OldZip Include="$(TargetDir)$(AssemblyName)_v*.zip" />
  86. <OldZip Include="$(GamePath)GadgetCore\Mods\$(AssemblyName)_v*.zip" />
  87. </ItemGroup>
  88. <Delete Files="@(OldZip)" />
  89. <MakeDir Directories="$(TargetDir)..\BuildCache\" />
  90. <ZipDirectory SourceDirectory="$(TargetDir)" DestinationFile="$(TargetDir)..\BuildCache\$(AssemblyName)_v$(AssemblyFileVersion).zip" />
  91. <Copy SourceFiles="$(TargetDir)..\BuildCache\$(AssemblyName)_v$(AssemblyFileVersion).zip" DestinationFiles="$(TargetDir)$(AssemblyName)_v$(AssemblyFileVersion).zip" />
  92. <RemoveDir Directories="$(TargetDir)..\BuildCache\" />
  93. <MakeDir Directories="$(GamePath)GadgetCore\Mods\" />
  94. <Copy SourceFiles="$(TargetDir)$(AssemblyName)_v$(AssemblyFileVersion).zip" DestinationFiles="$(GamePath)GadgetCore\Mods\$(AssemblyName)_v$(AssemblyFileVersion).zip" />
  95. <Message Importance="High" Text="Mod Exported to $(GamePath)GadgetCore\Mods\$(AssemblyName)_v$(AssemblyFileVersion).zip" />
  96. </Target>
  97. <ItemGroup>
  98. <None Update="Assets\cGreenLamp.png">
  99. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  100. </None>
  101. <None Update="Assets\charBG.png">
  102. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  103. </None>
  104. <None Update="Assets\cOrangeLamp.png">
  105. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  106. </None>
  107. <None Update="Assets\cPurpleLamp.png">
  108. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  109. </None>
  110. <None Update="Assets\cWhiteLamp.png">
  111. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  112. </None>
  113. <None Update="Assets\cYellowLamp.png">
  114. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  115. </None>
  116. <None Update="Assets\First\one">
  117. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  118. </None>
  119. <None Update="Assets\iAirCore.png">
  120. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  121. </None>
  122. <None Update="Assets\iCore.png">
  123. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  124. </None>
  125. <None Update="Assets\iEarthCore.png">
  126. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  127. </None>
  128. <None Update="Assets\iFireCore.png">
  129. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  130. </None>
  131. <None Update="Assets\iGreenLamp.png">
  132. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  133. </None>
  134. <None Update="Assets\iOrangeLamp.png">
  135. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  136. </None>
  137. <None Update="Assets\iPurpleLamp.png">
  138. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  139. </None>
  140. <None Update="Assets\iWaterCore.png">
  141. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  142. </None>
  143. <None Update="Assets\iWhiteLamp.png">
  144. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  145. </None>
  146. <None Update="Assets\iYellowLamp.png">
  147. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  148. </None>
  149. <None Update="Assets\one">
  150. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  151. </None>
  152. <None Update="Manifest.ini">
  153. <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  154. </None>
  155. </ItemGroup>
  156. <ItemGroup>
  157. <Reference Update="System">
  158. <Private>false</Private>
  159. <SpecificVersion>true</SpecificVersion>
  160. </Reference>
  161. </ItemGroup>
  162. <ItemGroup>
  163. <Reference Update="System.Data">
  164. <EmbedInteropTypes>false</EmbedInteropTypes>
  165. </Reference>
  166. </ItemGroup>
  167. <ItemGroup>
  168. <Reference Update="System.Drawing">
  169. <EmbedInteropTypes>false</EmbedInteropTypes>
  170. </Reference>
  171. </ItemGroup>
  172. <ItemGroup>
  173. <Reference Update="System.IO.Compression.FileSystem">
  174. <EmbedInteropTypes>false</EmbedInteropTypes>
  175. </Reference>
  176. </ItemGroup>
  177. <ItemGroup>
  178. <Reference Update="System.Numerics">
  179. <EmbedInteropTypes>false</EmbedInteropTypes>
  180. </Reference>
  181. </ItemGroup>
  182. <ItemGroup>
  183. <Reference Update="System.Runtime.Serialization">
  184. <EmbedInteropTypes>false</EmbedInteropTypes>
  185. </Reference>
  186. </ItemGroup>
  187. <ItemGroup>
  188. <Reference Update="System.Xml">
  189. <EmbedInteropTypes>false</EmbedInteropTypes>
  190. </Reference>
  191. </ItemGroup>
  192. <ItemGroup>
  193. <Reference Update="System.Xml.Linq">
  194. <EmbedInteropTypes>false</EmbedInteropTypes>
  195. </Reference>
  196. </ItemGroup>
  197. <ItemGroup>
  198. <Folder Include="Assets\" />
  199. <Folder Include="Patches\" />
  200. </ItemGroup>
  201. </Project>