diff --git a/.gitignore b/.gitignore index 9aa56aa..50cc699 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,9 @@ +# Custom ignores +project/References/EFT_Managed/* + +# Allow these files, despite the rules above +project/References/EFT_Managed/.keep + # ---> VisualStudio ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. diff --git a/README.md b/README.md index b8430f1..311d627 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,6 @@ Alternatively, you can find the `com.terkoiz.freecam.cfg` file in your `BepInEx/ ### How to build from source 1. Download/clone this repository -2. Re-import dependencies. I recommend you do this from the SPT-AKI/Modules project's `Shared/Managed` folder, if you have the Modules project fully setup. +2. Open your current SPT directory and copy all files from `\EscapeFromTarkov_Data\Managed` into this solution's `\References\EFT_Managed` folder. 3. Rebuild the project in the Release configuration. 4. Grab the `Terkoiz.Freecam.dll` file from the `bin/Release` folder and use it wherever. Refer to the "How to install" section if you need help here. \ No newline at end of file diff --git a/project/NuGet.Config b/project/NuGet.Config new file mode 100644 index 0000000..da1fd08 --- /dev/null +++ b/project/NuGet.Config @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<configuration> + <packageRestore> + <add key="enabled" value="True" /> + <add key="automatic" value="True" /> + </packageRestore> + <activePackageSource> + <add key="All" value="(Aggregate source)" /> + </activePackageSource> + <packageSources> + <add key="nuget.org" value="https://api.nuget.org/v3/index.json" /> + <add key="BepInEx" value="https://nuget.bepinex.dev/v3/index.json" protocolVersion="3" /> + </packageSources> +</configuration> \ No newline at end of file diff --git a/project/References/Hollowed/Assembly-CSharp.dll b/project/References/Hollowed/Assembly-CSharp.dll new file mode 100644 index 0000000..1a7e790 Binary files /dev/null and b/project/References/Hollowed/Assembly-CSharp.dll differ diff --git a/project/Terkoiz.Freecam.sln b/project/Terkoiz.Freecam.sln index 0c43e91..097a039 100644 --- a/project/Terkoiz.Freecam.sln +++ b/project/Terkoiz.Freecam.sln @@ -1,6 +1,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Terkoiz.Freecam", "Terkoiz.Freecam\Terkoiz.Freecam.csproj", "{BC26F21D-2987-4504-BBE6-0867001DFEB3}" +# Visual Studio Version 17 +VisualStudioVersion = 17.2.32616.157 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Terkoiz.Freecam", "Terkoiz.Freecam\Terkoiz.Freecam.csproj", "{9C38A2B1-5F09-49FE-AC57-9FBEF7717582}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -8,9 +11,15 @@ Global Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {BC26F21D-2987-4504-BBE6-0867001DFEB3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BC26F21D-2987-4504-BBE6-0867001DFEB3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BC26F21D-2987-4504-BBE6-0867001DFEB3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BC26F21D-2987-4504-BBE6-0867001DFEB3}.Release|Any CPU.Build.0 = Release|Any CPU + {9C38A2B1-5F09-49FE-AC57-9FBEF7717582}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9C38A2B1-5F09-49FE-AC57-9FBEF7717582}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9C38A2B1-5F09-49FE-AC57-9FBEF7717582}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9C38A2B1-5F09-49FE-AC57-9FBEF7717582}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {26F91A8D-3767-457A-821C-F66AFD620885} EndGlobalSection EndGlobal diff --git a/project/Terkoiz.Freecam/Properties/AssemblyInfo.cs b/project/Terkoiz.Freecam/Properties/AssemblyInfo.cs deleted file mode 100644 index 074a8d1..0000000 --- a/project/Terkoiz.Freecam/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Terkoiz.Freecam")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Terkoiz.Freecam")] -[assembly: AssemblyCopyright("Copyright © 2021")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("be2de623-48ff-4807-9696-167a17787718")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] \ No newline at end of file diff --git a/project/Terkoiz.Freecam/Terkoiz.Freecam.csproj b/project/Terkoiz.Freecam/Terkoiz.Freecam.csproj index c5e9e19..9d576d1 100644 --- a/project/Terkoiz.Freecam/Terkoiz.Freecam.csproj +++ b/project/Terkoiz.Freecam/Terkoiz.Freecam.csproj @@ -1,44 +1,48 @@ <Project Sdk="Microsoft.NET.Sdk"> - <PropertyGroup> - <TargetFramework>net472</TargetFramework> - <EnableDefaultCompileItems>False</EnableDefaultCompileItems> - </PropertyGroup> + <PropertyGroup> + <TargetFramework>net472</TargetFramework> + <Version>1.3.0</Version> + <Authors>Terkoiz, Kobrakon, CWX</Authors> + <RepositoryUrl>https://dev.sp-tarkov.com/Terkoiz/Freecam</RepositoryUrl> + <PackageLicenseExpression>NCSA</PackageLicenseExpression> + </PropertyGroup> - <ItemGroup> - <Reference Include="0Harmony"> - <HintPath>..\Shared\0Harmony.dll</HintPath> - </Reference> - <Reference Include="Aki.Reflection"> - <HintPath>..\Shared\Aki.Reflection.dll</HintPath> - </Reference> - <Reference Include="Assembly-CSharp"> - <HintPath>..\Shared\Assembly-CSharp.dll</HintPath> - </Reference> - <Reference Include="BepInEx"> - <HintPath>..\Shared\BepInEx.dll</HintPath> - </Reference> - <Reference Include="Comfort"> - <HintPath>..\Shared\Comfort.dll</HintPath> - </Reference> - <Reference Include="ConfigurationManager"> - <HintPath>..\Shared\ConfigurationManager.dll</HintPath> - </Reference> - <Reference Include="ItemComponent.Types"> - <HintPath>..\Shared\ItemComponent.Types.dll</HintPath> - </Reference> - <Reference Include="UnityEngine"> - <HintPath>..\Shared\UnityEngine.dll</HintPath> - </Reference> - <Reference Include="UnityEngine.CoreModule"> - <HintPath>..\Shared\UnityEngine.CoreModule.dll</HintPath> - </Reference> - <Reference Include="UnityEngine.InputLegacyModule"> - <HintPath>..\Shared\UnityEngine.InputLegacyModule.dll</HintPath> - </Reference> - <Reference Include="UnityEngine.UIModule"> - <HintPath>..\Shared\UnityEngine.UIModule.dll</HintPath> - </Reference> - </ItemGroup> + <ItemGroup> + <PackageReference Include="BepInEx.Core" Version="5.4.21"> + <ExcludeAssets>runtime</ExcludeAssets> + </PackageReference> + </ItemGroup> + + <ItemGroup> + <Reference Include="Aki.Reflection"> + <HintPath>..\References\EFT_Managed\Aki.Reflection.dll</HintPath> + <Private>False</Private> + </Reference> + <Reference Include="Assembly-CSharp"> + <HintPath>..\References\Hollowed\Assembly-CSharp.dll</HintPath> + <Private>False</Private> + </Reference> + <Reference Include="Comfort"> + <HintPath>..\References\EFT_Managed\Comfort.dll</HintPath> + <Private>False</Private> + </Reference> + <Reference Include="Comfort.Unity"> + <HintPath>..\References\EFT_Managed\Comfort.Unity.dll</HintPath> + <Private>False</Private> + </Reference> + <Reference Include="UnityEngine"> + <HintPath>..\References\EFT_Managed\UnityEngine.dll</HintPath> + <Private>False</Private> + </Reference> + <Reference Include="UnityEngine.CoreModule"> + <HintPath>..\References\EFT_Managed\UnityEngine.CoreModule.dll</HintPath> + <Private>False</Private> + </Reference> + <Reference Include="UnityEngine.InputLegacyModule"> + <HintPath>..\References\EFT_Managed\UnityEngine.InputLegacyModule.dll</HintPath> + <Private>False</Private> + </Reference> + </ItemGroup> </Project>