<Project Sdk="Microsoft.NET.Sdk">
	<PropertyGroup>
		<AssemblyName>dumb282tweaks</AssemblyName>
		<TargetFramework>net48</TargetFramework>
		<LangVersion>latest</LangVersion>
		<WarningsAsErrors>CS8600;CS8602;CS8603</WarningsAsErrors>
	</PropertyGroup>

	<!-- Mod Loader -->
	<ItemGroup>
		<PackageReference Include="UnityModManager" Version="0.27.2" />
	</ItemGroup>

	<!-- Null Checking -->
	<ItemGroup>
		<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
	</ItemGroup>
	<ItemGroup>
		<!-- Derail Valley -->

		<Reference Include="0Harmony" />
		<Reference Include="Assembly-CSharp" />
		<Reference Include="DV.BrakeSystem" />
		<Reference Include="DV.Common" />
		<Reference Include="DV.ControllerAnchors" />
		<Reference Include="DV.Highlighting" />
		<Reference Include="DV.Interaction" />
		<Reference Include="DV.Inventory" />
		<Reference Include="DV.Localization" />
		<Reference Include="DV.NAudio" />
		<Reference Include="DV.PointSet" />
		<Reference Include="DV.RadioPlayer" />
		<Reference Include="DV.Scenarios.CRUD" />
		<Reference Include="DV.Simulation" />
		<Reference Include="DV.Telemetry" />
		<Reference Include="DV.TerrainSystem" />
		<Reference Include="DV.TerrainTools" />
		<Reference Include="DV.ThingTypes" />
		<Reference Include="DV.UI" />
		<Reference Include="DV.UIFramework" />
		<Reference Include="DV.UserManagement" />
		<Reference Include="DV.Utils" />
		<Reference Include="DV.WeatherSystem" />

		<!-- Unity -->

		<Reference Include="UnityEngine" />
		<Reference Include="UnityEngine.AccessibilityModule" />
		<Reference Include="UnityEngine.AIModule" />
		<Reference Include="UnityEngine.AndroidJNIModule" />
		<Reference Include="UnityEngine.AnimationModule" />
		<Reference Include="UnityEngine.ARModule" />
		<Reference Include="UnityEngine.AssetBundleModule" />
		<Reference Include="UnityEngine.AudioModule" />
		<Reference Include="UnityEngine.ClothModule" />
		<Reference Include="UnityEngine.ClusterInputModule" />
		<Reference Include="UnityEngine.ClusterRendererModule" />
		<Reference Include="UnityEngine.CoreModule" />
		<Reference Include="UnityEngine.CrashReportingModule" />
		<Reference Include="UnityEngine.DirectorModule" />
		<Reference Include="UnityEngine.DSPGraphModule" />
		<Reference Include="UnityEngine.GameCenterModule" />
		<Reference Include="UnityEngine.GridModule" />
		<Reference Include="UnityEngine.HotReloadModule" />
		<Reference Include="UnityEngine.ImageConversionModule" />
		<Reference Include="UnityEngine.IMGUIModule" />
		<Reference Include="UnityEngine.InputLegacyModule" />
		<Reference Include="UnityEngine.InputModule" />
		<Reference Include="UnityEngine.JSONSerializeModule" />
		<Reference Include="UnityEngine.LocalizationModule" />
		<Reference Include="UnityEngine.ParticleSystemModule" />
		<Reference Include="UnityEngine.PerformanceReportingModule" />
		<Reference Include="UnityEngine.Physics2DModule" />
		<Reference Include="UnityEngine.PhysicsModule" />
		<Reference Include="UnityEngine.ProfilerModule" />
		<Reference Include="UnityEngine.ScreenCaptureModule" />
		<Reference Include="UnityEngine.SharedInternalsModule" />
		<Reference Include="UnityEngine.SpatialTracking" />
		<Reference Include="UnityEngine.SpriteMaskModule" />
		<Reference Include="UnityEngine.SpriteShapeModule" />
		<Reference Include="UnityEngine.StreamingModule" />
		<Reference Include="UnityEngine.SubstanceModule" />
		<Reference Include="UnityEngine.SubsystemsModule" />
		<Reference Include="UnityEngine.TerrainModule" />
		<Reference Include="UnityEngine.TerrainPhysicsModule" />
		<Reference Include="UnityEngine.TextCoreModule" />
		<Reference Include="UnityEngine.TextRenderingModule" />
		<Reference Include="UnityEngine.TilemapModule" />
		<Reference Include="UnityEngine.TLSModule" />
		<Reference Include="UnityEngine.UI" />
		<Reference Include="UnityEngine.UIElementsModule" />
		<Reference Include="UnityEngine.UIModule" />
		<Reference Include="UnityEngine.UmbraModule" />
		<Reference Include="UnityEngine.UNETModule" />
		<Reference Include="UnityEngine.UnityAnalyticsModule" />
		<Reference Include="UnityEngine.UnityConnectModule" />
		<Reference Include="UnityEngine.UnityTestProtocolModule" />
		<Reference Include="UnityEngine.UnityWebRequestAssetBundleModule" />
		<Reference Include="UnityEngine.UnityWebRequestAudioModule" />
		<Reference Include="UnityEngine.UnityWebRequestModule" />
		<Reference Include="UnityEngine.UnityWebRequestTextureModule" />
		<Reference Include="UnityEngine.UnityWebRequestWWWModule" />
		<Reference Include="UnityEngine.VehiclesModule" />
		<Reference Include="UnityEngine.VFXModule" />
		<Reference Include="UnityEngine.VideoModule" />
		<Reference Include="UnityEngine.VRModule" />
		<Reference Include="UnityEngine.WindModule" />
		<Reference Include="UnityEngine.XR.LegacyInputHelpers" />
		<Reference Include="UnityEngine.XRModule" />

	  	<Reference Include="UnityModManager" />
	</ItemGroup>

	<Target Name="PostBuild" AfterTargets="PostBuildEvent">
		<!-- Copy to build folder -->
		<Copy SourceFiles="$(TargetPath)" DestinationFolder="../build/" />

		<!-- Package after Release build -->
		<Exec Condition="'$(OS)' == 'Windows_NT'" Command="powershell -executionpolicy bypass ../package.ps1 -NoArchive -OutputDirectory 'D:\Programs\Derail Valley\Mods'" />
<!--		todo fix linux below-->
<!--		<Exec Condition="'$(ConfigurationName)' == 'Release' And '$(OS)' != 'Windows_NT'" Command="pwsh -Command &quot;(../package.ps1)&quot;" />-->
	</Target>
</Project>
