-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathPupifier.csproj
156 lines (135 loc) · 6.1 KB
/
Pupifier.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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net48</TargetFramework>
<AssemblyName>amione.Pupifier</AssemblyName>
<Product>Pupifier</Product>
<ProductDescription>[h2]Lets you become a slugpup in Rain World with a push of a button[/h2]
This mod was made specifically for meadow but works for non-meadow as well
[hr][/hr]
[h3]Known issues[/h3]
[list]
[*]Meadow issues (not related to my mod): grabbing players and breaking if you go thru a pipe, piggybacking desync (toggle grabbability in settings)
[*]Meadow Gamemode: Not working; henpemaz has coded it so that pups are not allowed in the meadow gamemode, enable locally in toggles settings
[/list]
[hr][/hr]
[h3]Features[/h3]
[list]
[*] Transform into a slugpup dynamically, with a hotkey, even when in-game
[*] Change your stats based on slugpup relativity
[*] Supports controller input as a hotkey to change
[*] Supports Rain Meadow
[*] Supports Modded Slugcats
[/list]
[hr][/hr]
[h3]Q&A[/h3]
[list]
[*] Does this mod change gameplay? Yes, and a ton, you will behave almost like a slugpup, with some changes, for example, it's all relative so if you pick rivulet you will be faster than a normal slugpup
[*] Is it only cosmetic? No, you could try to make it, I haven't tested much but there is a toggle in the stats settings to turn off changing stats, that way you will still be small but no stats will be changed
[*] What is configurable? Every stat you have as a player, along with holding double spears as spearmaster or holding 2 items no matter what or not letting people grab you
[/list]
[hr][/hr]
[h3]Credits[/h3]
- amione - Creator
- youbitchoc - For helping in development
- henpemaz - For Rain Meadow
- Maxi Mol - For Mouse Drag code
- LDani, simichan1227 - For testing the s**t out of my mod (It was kinda encouraging)
[hr][/hr]
[h3]Report Issues on github please! https://github.com/xamionex/Pupifier/issues/new[/h3]
</ProductDescription>
<ModVersion>2.0.9</ModVersion>
<Version>2.0.8</Version>
<LangVersion>10.0</LangVersion>
<Nullable>enable</Nullable>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<Configurations>Debug;Release</Configurations>
<RootNamespace>Pupifier</RootNamespace>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DefineConstants>$(DefineConstants);TRACE</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
<DefineConstants>$(DefineConstants);TRACE</DefineConstants>
</PropertyGroup>
<PropertyGroup>
<PathMap>$(MSBuildThisFileDirectory.Replace(',', ',,').Replace('=', '=='))=/</PathMap>
</PropertyGroup>
<ItemGroup>
<Reference Include="lib\*.dll" Private="False" />
</ItemGroup>
<ItemGroup>
<None Remove=".gitattributes" />
</ItemGroup>
<ItemGroup>
<Compile Update="Properties\Settings.Designer.cs">
<DesignTimeSharedInput>True</DesignTimeSharedInput>
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<None Update="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
</ItemGroup>
<ItemGroup>
<Content Include="Pupifier.sln" />
</ItemGroup>
<Target Name="PreBuild" BeforeTargets="PreBuildEvent">
<ItemGroup>
<PluginInfoLines Include="internal static class PluginInfo {" />
<PluginInfoLines Include=" public const string PluginGUID = "$(AssemblyName)"%3B" />
<PluginInfoLines Include=" public const string PluginName = "$(Product)"%3B" />
<PluginInfoLines Include=" public const string PluginVersion = "$(ModVersion)"%3B" />
<PluginInfoLines Include="}" />
</ItemGroup>
<WriteLinesToFile File="$(ProjectDir)PluginInfo.cs" Lines="@(PluginInfoLines)" Overwrite="true" />
</Target>
<Target Name="PostBuild" AfterTargets="PostBuildEvent">
<ItemGroup>
<BuildFiles Include="$(Outdir)\*" />
</ItemGroup>
<Copy SourceFiles="@(BuildFiles)" DestinationFolder="$(ProjectDir)$(RootNamespace)\plugins" />
</Target>
<UsingTask TaskName="RegexReplaceTask" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll" TaskFactory="RoslynCodeTaskFactory">
<ParameterGroup>
<InputFile />
<VersionValue Required="true" />
<AssemblyName Required="true" />
<ProductDescription Required="true" />
<Product Required="true" />
</ParameterGroup>
<Task>
<Using Namespace="System.IO" />
<Using Namespace="System.Text.RegularExpressions" />
<Code Type="Fragment" Language="cs">
<![CDATA[
string content = File.ReadAllText(InputFile);
// Replace "version"
content = Regex.Replace(content, @"""version"":\s*""[^""]*""", $@"""version"": ""{VersionValue}""");
// Replace "id"
content = Regex.Replace(content, @"""id"":\s*""[^""]*""", $@"""id"": ""{AssemblyName}""");
// Replace "name"
content = Regex.Replace(content, @"""name"":\s*""[^""]*""", $@"""name"": ""{Product}""");
// Replace "description"
content = Regex.Replace(content, @"""description"":\s*""[^""]*""", $@"""description"": ""{ProductDescription}""");
File.WriteAllText(InputFile, content);
]]>
</Code>
</Task>
</UsingTask>
<Target Name="UpdateModInfo" AfterTargets="Build">
<RegexReplaceTask
InputFile="$(ProjectDir)$(RootNamespace)\modinfo.json"
VersionValue="$(ModVersion)"
AssemblyName="$(AssemblyName)"
ProductDescription="$(ProductDescription)"
Product="$(Product)" />
</Target>
<Target Name="ZipProjectDirectory" AfterTargets="Build">
<Exec Command="zip -r $(RootNamespace).zip $(RootNamespace)/*" Condition="'$(OS)' == 'Unix'" />
<Exec Command="powershell -Command "Compress-Archive -Path '$(ProjectDir)$(RootNamespace)' -DestinationPath '$(ProjectDir)$(RootNamespace).zip' -Force"" Condition="'$(OS)' == 'Windows_NT'" />
</Target>
</Project>