Skip to content

Commit 42ec3bd

Browse files
authored
Upgrade to sdk csproj format; Create zips on release build (#18)
1 parent b65f2d4 commit 42ec3bd

10 files changed

Lines changed: 179 additions & 420 deletions

File tree

Core_SkinEffects/AssemblyInfo.cs

Lines changed: 0 additions & 9 deletions
This file was deleted.

Core_SkinEffects/Core_SkinEffects.projitems

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
<Import_RootNamespace>Core_SkinEffects</Import_RootNamespace>
1010
</PropertyGroup>
1111
<ItemGroup>
12-
<Compile Include="$(MSBuildThisFileDirectory)AssemblyInfo.cs" />
1312
<Compile Include="$(MSBuildThisFileDirectory)Hooks.cs" />
1413
<Compile Include="$(MSBuildThisFileDirectory)Hooks.HSceneTriggers.cs" />
1514
<Compile Include="$(MSBuildThisFileDirectory)SkinEffectGameController.cs" />

Core_SkinEffects/SkinEffectsPlugin.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@
1111

1212
namespace KK_SkinEffects
1313
{
14-
[BepInPlugin(GUID, "Additional Skin Effects", Version)]
14+
[BepInPlugin(GUID, Constants.Name, Constants.Version)]
1515
[BepInDependency(KoikatuAPI.GUID, KoikatuAPI.VersionConst)]
1616
[BepInDependency(KoiSkinOverlayX.KoiSkinOverlayMgr.GUID, KoiSkinOverlayX.KoiSkinOverlayMgr.Version)]
1717
internal class SkinEffectsPlugin : BaseUnityPlugin
1818
{
1919
public const string GUID = "Marco.SkinEffects";
20-
public const string Version = "3.0";
20+
public const string Version = Constants.Version;
2121

2222
internal static new ManualLogSource Logger { get; private set; }
2323

Directory.Build.props

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
<Project>
2+
<PropertyGroup>
3+
<!-- This is the master version, only change this one -->
4+
<Version>3.0</Version>
5+
6+
<!-- Sets the 'Product name' field on the dll file -->
7+
<Product>Additional Skin Effects</Product>
8+
<!-- Sets the 'File description' field on the dll file -->
9+
<AssemblyTitle>Adds new effects to main game and studio, for example bukkake</AssemblyTitle>
10+
<!-- Sets the 'Company' field on the dll file -->
11+
<Authors>https://github.com/ManlyMarco/Illusion_SkinEffects</Authors>
12+
<!-- Sets the 'Copyright' field on the dll file -->
13+
<Copyright>Copyright © 2019 / GPL-3.0</Copyright>
14+
15+
<Deterministic>true</Deterministic>
16+
<DebugSymbols>true</DebugSymbols>
17+
<DebugType>embedded</DebugType>
18+
<FileAlignment>512</FileAlignment>
19+
</PropertyGroup>
20+
21+
<!-- Create a release zip file (after successful Release build) -->
22+
<Target Name="CreateReleaseZip" AfterTargets="Build" Condition="'$(Configuration)' == 'Release'">
23+
<PropertyGroup>
24+
<CopyDir>$(OutputPath)\..\TEMP_COPY_$(AssemblyName)</CopyDir>
25+
</PropertyGroup>
26+
<ItemGroup>
27+
<BuildFiles Include="$(OutputPath)\*"/>
28+
</ItemGroup>
29+
30+
<RemoveDir Directories="$(CopyDir)" />
31+
<Copy DestinationFolder="$(CopyDir)\BepInEx\plugins" SourceFiles="@(BuildFiles)" />
32+
<!-- https://learn.microsoft.com/en-us/visualstudio/msbuild/zipdirectory-task?view=vs-2022 -->
33+
<ZipDirectory SourceDirectory="$(CopyDir)" DestinationFile="$(OutputPath)\..\$(AssemblyName)_v$(Version).zip" Overwrite="true" />
34+
<RemoveDir Directories="$(CopyDir)" />
35+
</Target>
36+
37+
<!-- Allow using of the csproj properties defined above in the code itself -->
38+
<Target Name="AddGeneratedConstantsFile" BeforeTargets="BeforeCompile;CoreCompile" Inputs="$(MSBuildAllProjects)" Outputs="$(IntermediateOutputPath)GeneratedConstantsFile.cs">
39+
<PropertyGroup>
40+
<GeneratedText>
41+
<![CDATA[namespace $(RootNamespace) {
42+
internal static class Constants {
43+
public const string Version = "$(Version)"%3B
44+
public const string Name = "$(Product)"%3B
45+
public const string Description = "$(AssemblyTitle)"%3B
46+
public const string Website = "$(Authors)"%3B
47+
public const string Copyright = "$(Copyright)"%3B
48+
}
49+
}]]>
50+
</GeneratedText>
51+
<GeneratedFilePath>$(IntermediateOutputPath)GeneratedConstantsFile.cs</GeneratedFilePath>
52+
</PropertyGroup>
53+
<ItemGroup>
54+
<Compile Include="$(GeneratedFilePath)" />
55+
<FileWrites Include="$(GeneratedFilePath)" />
56+
</ItemGroup>
57+
<WriteLinesToFile Lines="$(GeneratedText)" File="$(GeneratedFilePath)" WriteOnlyWhenDifferent="true" Overwrite="true" />
58+
</Target>
59+
</Project>

KKS_SkinEffects/KKS_SkinEffects.csproj

Lines changed: 51 additions & 188 deletions
Large diffs are not rendered by default.

KKS_SkinEffects/packages.config

Lines changed: 0 additions & 21 deletions
This file was deleted.
Lines changed: 45 additions & 125 deletions
Original file line numberDiff line numberDiff line change
@@ -1,126 +1,46 @@
1-
<?xml version="1.0" encoding="utf-8"?>
2-
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3-
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
4-
<PropertyGroup>
5-
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
6-
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
7-
<ProjectGuid>{629ACA07-5A28-4436-9022-4E07D8051412}</ProjectGuid>
8-
<OutputType>Library</OutputType>
9-
<AppDesignerFolder>Properties</AppDesignerFolder>
10-
<RootNamespace>KK_SkinEffects</RootNamespace>
11-
<AssemblyName>KK_SkinEffects</AssemblyName>
12-
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
13-
<FileAlignment>512</FileAlignment>
14-
<Deterministic>true</Deterministic>
15-
<NuGetPackageImportStamp>
16-
</NuGetPackageImportStamp>
17-
</PropertyGroup>
18-
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
19-
<DebugSymbols>true</DebugSymbols>
20-
<DebugType>embedded</DebugType>
21-
<Optimize>false</Optimize>
22-
<OutputPath>..\bin\BepInEx\plugins\</OutputPath>
23-
<DefineConstants>TRACE;DEBUG;KK</DefineConstants>
24-
<ErrorReport>prompt</ErrorReport>
25-
<WarningLevel>4</WarningLevel>
26-
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
27-
</PropertyGroup>
28-
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
29-
<DebugType>embedded</DebugType>
30-
<Optimize>true</Optimize>
31-
<OutputPath>..\bin\BepInEx\plugins\</OutputPath>
32-
<DefineConstants>TRACE;KK</DefineConstants>
33-
<ErrorReport>prompt</ErrorReport>
34-
<WarningLevel>4</WarningLevel>
35-
<DebugSymbols>true</DebugSymbols>
36-
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
37-
</PropertyGroup>
38-
<ItemGroup>
39-
<Reference Include="0Harmony, Version=2.9.0.0, Culture=neutral, processorArchitecture=MSIL">
40-
<HintPath>..\packages\IllusionLibs.BepInEx.Harmony.2.9.0\lib\net35\0Harmony.dll</HintPath>
41-
<Private>False</Private>
42-
</Reference>
43-
<Reference Include="Assembly-CSharp, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
44-
<HintPath>..\packages\IllusionLibs.Koikatu.Assembly-CSharp.2019.4.27.4\lib\net35\Assembly-CSharp.dll</HintPath>
45-
<Private>False</Private>
46-
</Reference>
47-
<Reference Include="Assembly-CSharp-firstpass, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
48-
<HintPath>..\packages\IllusionLibs.Koikatu.Assembly-CSharp-firstpass.2019.4.27.4\lib\net35\Assembly-CSharp-firstpass.dll</HintPath>
49-
<Private>False</Private>
50-
</Reference>
51-
<Reference Include="BepInEx, Version=5.4.22.0, Culture=neutral, processorArchitecture=MSIL">
52-
<HintPath>..\packages\IllusionLibs.BepInEx.5.4.22\lib\net35\BepInEx.dll</HintPath>
53-
<Private>False</Private>
54-
</Reference>
55-
<Reference Include="ExtensibleSaveFormat, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
56-
<HintPath>..\packages\ExtensibleSaveFormat.Koikatu.16.8.1\lib\net35\ExtensibleSaveFormat.dll</HintPath>
57-
<Private>False</Private>
58-
</Reference>
59-
<Reference Include="KKAPI, Version=1.42.1.0, Culture=neutral, processorArchitecture=MSIL">
60-
<HintPath>..\packages\IllusionModdingAPI.KKAPI.1.42.1\lib\net35\KKAPI.dll</HintPath>
61-
<Private>False</Private>
62-
</Reference>
63-
<Reference Include="KK_OverlayMods, Version=6.0.7.0, Culture=neutral, processorArchitecture=MSIL">
64-
<HintPath>..\packages\OverlayMods.Koikatu.6.0.7\lib\net35\KK_OverlayMods.dll</HintPath>
65-
<Private>False</Private>
66-
</Reference>
67-
<Reference Include="MonoMod.RuntimeDetour, Version=22.1.29.1, Culture=neutral, processorArchitecture=MSIL">
68-
<HintPath>..\packages\IllusionLibs.BepInEx.MonoMod.22.1.29.1\lib\net35\MonoMod.RuntimeDetour.dll</HintPath>
69-
<Private>False</Private>
70-
</Reference>
71-
<Reference Include="MonoMod.Utils, Version=22.1.29.1, Culture=neutral, processorArchitecture=MSIL">
72-
<HintPath>..\packages\IllusionLibs.BepInEx.MonoMod.22.1.29.1\lib\net35\MonoMod.Utils.dll</HintPath>
73-
<Private>False</Private>
74-
</Reference>
75-
<Reference Include="System" />
76-
<Reference Include="System.Core" />
77-
<Reference Include="System.Drawing" />
78-
<Reference Include="System.Xml" />
79-
<Reference Include="TextMeshPro-1.0.55.56.0b12, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
80-
<HintPath>..\packages\IllusionLibs.Koikatu.TextMeshPro.2019.4.27.4\lib\net35\TextMeshPro-1.0.55.56.0b12.dll</HintPath>
81-
<Private>False</Private>
82-
</Reference>
83-
<Reference Include="UnityEngine, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
84-
<HintPath>..\packages\IllusionLibs.Koikatu.UnityEngine.5.6.2.4\lib\net35\UnityEngine.dll</HintPath>
85-
<Private>False</Private>
86-
</Reference>
87-
<Reference Include="UnityEngine.UI, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
88-
<HintPath>..\packages\IllusionLibs.Koikatu.UnityEngine.UI.5.6.2.4\lib\net35\UnityEngine.UI.dll</HintPath>
89-
<Private>False</Private>
90-
</Reference>
91-
</ItemGroup>
92-
<ItemGroup>
93-
<None Include="packages.config" />
94-
</ItemGroup>
95-
<ItemGroup>
96-
<Folder Include="Properties\" />
97-
</ItemGroup>
98-
<ItemGroup>
99-
<Compile Include="Hooks.PersistClothes.cs" />
100-
</ItemGroup>
101-
<ItemGroup>
102-
<Analyzer Include="..\packages\KoikatuCompatibilityAnalyzer.1.1.0\analyzers\dotnet\cs\KoikatuCompatibilityAnalyzer.dll" />
103-
<Analyzer Include="..\packages\Microsoft.Unity.Analyzers.1.18.0\analyzers\dotnet\cs\Microsoft.Unity.Analyzers.dll" />
104-
</ItemGroup>
105-
<Import Project="..\Core_SkinEffects\Core_SkinEffects.projitems" Label="Shared" />
106-
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
107-
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
108-
<PropertyGroup>
109-
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
110-
</PropertyGroup>
111-
<Error Condition="!Exists('..\packages\IllusionLibs.Koikatu.Assembly-CSharp.2019.4.27.4\build\IllusionLibs.Koikatu.Assembly-CSharp.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\IllusionLibs.Koikatu.Assembly-CSharp.2019.4.27.4\build\IllusionLibs.Koikatu.Assembly-CSharp.targets'))" />
112-
<Error Condition="!Exists('..\packages\IllusionLibs.Koikatu.Assembly-CSharp-firstpass.2019.4.27.4\build\IllusionLibs.Koikatu.Assembly-CSharp-firstpass.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\IllusionLibs.Koikatu.Assembly-CSharp-firstpass.2019.4.27.4\build\IllusionLibs.Koikatu.Assembly-CSharp-firstpass.targets'))" />
113-
<Error Condition="!Exists('..\packages\IllusionLibs.Koikatu.TextMeshPro.2019.4.27.4\build\IllusionLibs.Koikatu.TextMeshPro.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\IllusionLibs.Koikatu.TextMeshPro.2019.4.27.4\build\IllusionLibs.Koikatu.TextMeshPro.targets'))" />
114-
<Error Condition="!Exists('..\packages\IllusionLibs.Koikatu.UnityEngine.5.6.2.4\build\IllusionLibs.Koikatu.UnityEngine.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\IllusionLibs.Koikatu.UnityEngine.5.6.2.4\build\IllusionLibs.Koikatu.UnityEngine.targets'))" />
115-
<Error Condition="!Exists('..\packages\IllusionLibs.Koikatu.UnityEngine.UI.5.6.2.4\build\IllusionLibs.Koikatu.UnityEngine.UI.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\IllusionLibs.Koikatu.UnityEngine.UI.5.6.2.4\build\IllusionLibs.Koikatu.UnityEngine.UI.targets'))" />
116-
<Error Condition="!Exists('..\packages\IllusionLibs.BepInEx.Harmony.2.9.0\build\IllusionLibs.BepInEx.Harmony.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\IllusionLibs.BepInEx.Harmony.2.9.0\build\IllusionLibs.BepInEx.Harmony.targets'))" />
117-
<Error Condition="!Exists('..\packages\IllusionLibs.BepInEx.MonoMod.22.1.29.1\build\IllusionLibs.BepInEx.MonoMod.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\IllusionLibs.BepInEx.MonoMod.22.1.29.1\build\IllusionLibs.BepInEx.MonoMod.targets'))" />
118-
</Target>
119-
<Import Project="..\packages\IllusionLibs.Koikatu.Assembly-CSharp.2019.4.27.4\build\IllusionLibs.Koikatu.Assembly-CSharp.targets" Condition="Exists('..\packages\IllusionLibs.Koikatu.Assembly-CSharp.2019.4.27.4\build\IllusionLibs.Koikatu.Assembly-CSharp.targets')" />
120-
<Import Project="..\packages\IllusionLibs.Koikatu.Assembly-CSharp-firstpass.2019.4.27.4\build\IllusionLibs.Koikatu.Assembly-CSharp-firstpass.targets" Condition="Exists('..\packages\IllusionLibs.Koikatu.Assembly-CSharp-firstpass.2019.4.27.4\build\IllusionLibs.Koikatu.Assembly-CSharp-firstpass.targets')" />
121-
<Import Project="..\packages\IllusionLibs.Koikatu.TextMeshPro.2019.4.27.4\build\IllusionLibs.Koikatu.TextMeshPro.targets" Condition="Exists('..\packages\IllusionLibs.Koikatu.TextMeshPro.2019.4.27.4\build\IllusionLibs.Koikatu.TextMeshPro.targets')" />
122-
<Import Project="..\packages\IllusionLibs.Koikatu.UnityEngine.5.6.2.4\build\IllusionLibs.Koikatu.UnityEngine.targets" Condition="Exists('..\packages\IllusionLibs.Koikatu.UnityEngine.5.6.2.4\build\IllusionLibs.Koikatu.UnityEngine.targets')" />
123-
<Import Project="..\packages\IllusionLibs.Koikatu.UnityEngine.UI.5.6.2.4\build\IllusionLibs.Koikatu.UnityEngine.UI.targets" Condition="Exists('..\packages\IllusionLibs.Koikatu.UnityEngine.UI.5.6.2.4\build\IllusionLibs.Koikatu.UnityEngine.UI.targets')" />
124-
<Import Project="..\packages\IllusionLibs.BepInEx.Harmony.2.9.0\build\IllusionLibs.BepInEx.Harmony.targets" Condition="Exists('..\packages\IllusionLibs.BepInEx.Harmony.2.9.0\build\IllusionLibs.BepInEx.Harmony.targets')" />
125-
<Import Project="..\packages\IllusionLibs.BepInEx.MonoMod.22.1.29.1\build\IllusionLibs.BepInEx.MonoMod.targets" Condition="Exists('..\packages\IllusionLibs.BepInEx.MonoMod.22.1.29.1\build\IllusionLibs.BepInEx.MonoMod.targets')" />
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
<PropertyGroup>
3+
<TargetFramework>net35</TargetFramework>
4+
<OutputType>Library</OutputType>
5+
6+
<Platforms>x64</Platforms>
7+
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
8+
9+
<RootNamespace>KK_SkinEffects</RootNamespace>
10+
<AssemblyName>KK_SkinEffects</AssemblyName>
11+
<DefineConstants>KK</DefineConstants>
12+
13+
<OutputPath>..\bin\KK\</OutputPath>
14+
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
15+
</PropertyGroup>
16+
17+
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
18+
<DefineConstants>$(DefineConstants);TRACE;DEBUG</DefineConstants>
19+
</PropertyGroup>
20+
21+
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
22+
<DefineConstants>$(DefineConstants);TRACE</DefineConstants>
23+
<Optimize>true</Optimize>
24+
</PropertyGroup>
25+
26+
<ItemGroup>
27+
<PackageReference Include="ExtensibleSaveFormat.Koikatu" Version="18.2.0">
28+
<IncludeAssets>compile</IncludeAssets>
29+
</PackageReference>
30+
<PackageReference Include="IllusionLibs.BepInEx.MonoMod" Version="22.1.29.1">
31+
<IncludeAssets>compile</IncludeAssets>
32+
</PackageReference>
33+
<PackageReference Include="IllusionLibs.Koikatu.TextMeshPro" Version="2019.4.27.4">
34+
<IncludeAssets>compile</IncludeAssets>
35+
</PackageReference>
36+
<PackageReference Include="IllusionModdingAPI.KKAPI" Version="1.42.1">
37+
<IncludeAssets>compile</IncludeAssets>
38+
</PackageReference>
39+
<PackageReference Include="OverlayMods.Koikatu" Version="6.0.7">
40+
<IncludeAssets>compile</IncludeAssets>
41+
</PackageReference>
42+
</ItemGroup>
43+
44+
<Import Project="..\Core_SkinEffects\Core_SkinEffects.projitems" Label="Shared" />
45+
12646
</Project>

KK_SkinEffects/packages.config

Lines changed: 0 additions & 16 deletions
This file was deleted.

0 commit comments

Comments
 (0)