-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathVRisingStarterProject.csproj
81 lines (66 loc) · 4.56 KB
/
VRisingStarterProject.csproj
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<Project Sdk="Microsoft.NET.Sdk" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!-- VRising Properties -->
<PropertyGroup>
<VRisingBasePath>Z:\SteamLibrary\steamapps\common\VRising</VRisingBasePath>
<ModType>Server</ModType>
<Wetstone>true</Wetstone>
<VCF>true</VCF>
<Harmony>true</Harmony>
</PropertyGroup>
<!-- If Client -->
<PropertyGroup Condition="'$(ModType)' == 'Client'">
<VRisingPath>$(VRisingBasePath)</VRisingPath>
<DefineConstants>$(DefineConstants);CLIENT</DefineConstants>
</PropertyGroup>
<!-- If Server -->
<PropertyGroup Condition="'$(ModType)' == 'Server'">
<VRisingPath>$(VRisingBasePath)\VRising_Server</VRisingPath>
<DefineConstants>$(DefineConstants);SERVER</DefineConstants>
</PropertyGroup>
<!-- Generic Properties -->
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<Description>V-Rising Starter Project</Description>
<Version>0.0.1</Version>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<LangVersion>latest</LangVersion>
<ExcludeGeneratedDebugSymbol>False</ExcludeGeneratedDebugSymbol>
<PluginsPath>$(VRisingPath)\BepInEx\plugins</PluginsPath>
<VCFReloadPath>$(VRisingPath)\BepInEx\VCF-Reloadable-Debugging</VCFReloadPath>
<WetstonePluginsPath>$(VRisingPath)\BepInEx\WetstonePlugins</WetstonePluginsPath>
<PackageId>VRisingStarterProject</PackageId>
<RootNamespace>VRisingStarterProject</RootNamespace>
<DefineConstants Condition="'$(Wetstone)' == 'true'">$(DefineConstants);WETSTONE</DefineConstants>
<DefineConstants Condition="'$(VCF)' == 'true'">$(DefineConstants);VCF</DefineConstants>
<DefineConstants Condition="'$(Harmony)' == 'true'">$(DefineConstants);HARMONY</DefineConstants>
</PropertyGroup>
<!-- Copy Plugin DLLs -->
<Target Name="CopyDLLs" AfterTargets="Build">
<!-- Copy DLLs directly to plugins folder if not using VCF or Wetstone -->
<Copy SourceFiles="$(TargetDir)$(ProjectName).dll;$(TargetDir)$(ProjectName).pdb" DestinationFolder="$(PluginsPath)" Condition="'$(VCF)' != 'true' And '$(Wetstone)' != 'true'" />
<!-- Copy respective reloadable DLLs if using VCF or Wetstone -->
<Copy SourceFiles="$(TargetDir)$(ProjectName).dll;$(TargetDir)$(ProjectName).pdb" DestinationFolder="$(WetstonePluginsPath)" Condition="'$(Wetstone)' == 'true'" />
<Copy SourceFiles="$(TargetDir)$(ProjectName).dll;$(TargetDir)$(ProjectName).pdb" DestinationFolder="$(VCFReloadPath)" Condition="'$(VCF)' == 'true'" />
<!-- Copy VCF or Wetstone DLLs if they're being used -->
<Copy SourceFiles="$(ProjectDir)libs\VampireCommandFramework.dll" DestinationFolder="$(PluginsPath)" Condition="'$(VCF)' == 'true'" ContinueOnError="true" Retries="0" />
<Copy SourceFiles="$(ProjectDir)libs\Wetstone.dll" DestinationFolder="$(PluginsPath)" Condition="'$(Wetstone)' == 'true'" ContinueOnError="true" Retries="0" />
<Message Text="Files copied to $(PluginsPath)" Importance="High" />
</Target>
<Target Name="ValidateCustomProperties" BeforeTargets="Build">
<Error Condition="'$(ModType)' != 'Client' And '$(ModType)' != 'Server'" Text="Invalid ModType value. Must be either 'Client' or 'Server'." />
<Error Condition="'$(VCF)' != 'true' And '$(VCF)' != 'false'" Text="Invalid value for VCF. Must be either 'true' or 'false'." />
<Error Condition="'$(Wetstone)' != 'true' And '$(Wetstone)' != 'false'" Text="Invalid value for Wetstone. Must be either 'true' or 'false'." />
<Error Condition="'$(Harmony)' != 'true' And '$(Harmony)' != 'false'" Text="Invalid value for Harmony. Must be either 'true' or 'false'." />
<Warning Condition="'$(ModType)' == 'Client' And '$(VCF)' == 'true'" Text="VCF should not be set to true with the 'Client' ModType." />
</Target>
<ItemGroup>
<PackageReference Include="BepInEx.Unity.IL2CPP" Version="6.0.0-be*" />
<PackageReference Include="BepInEx.Core" Version="6.0.0-be*" IncludeAssets="compile" />
<PackageReference Include="BepInEx.PluginInfoProps" Version="1.*" />
<PackageReference Include="VRising.Unhollowed.Client" Version="0.6.1.*" />
<PackageReference Condition="'$(VCF)' == 'true'" Include="VRising.VampireCommandFramework" Version="0.5.3" />
<Reference Condition="'$(Wetstone)' == 'true'" Include="Wetstone">
<HintPath>./lib/Wetstone.dll</HintPath>
</Reference>
</ItemGroup>
</Project>