Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implemented initial stages on BZ integration #2052

Draft
wants to merge 88 commits into
base: bz-experimental
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
4959531
Added ipAddress.IsLocalhost() API
Measurity Jul 2, 2023
c2627f9
Used ipAddress.IsLocalhost API to grant admin to local player
Measurity Jul 2, 2023
f404730
Improved grant local admin to allow all IPs that will loop back (#2056)
Measurity Jul 2, 2023
8c4fdfe
bug_report.yml: fix typo
i-Moony Jul 7, 2023
9d92714
bug_report.yml: fix typo pastbin to pastebin (#2059)
Measurity Jul 7, 2023
cccef2e
bug_report.yaml: fix typos (#2061)
i-Moony Jul 8, 2023
0f1fff6
Split in-game and file logging (#2058)
Jannify Jul 8, 2023
1f8d410
Remove duplicated leftover test
Jannify Jul 13, 2023
59bbb0b
Remove duplicated leftover test (#2066)
Jannify Jul 13, 2023
9e337a8
Refactoring NitroxEntity.GetId() to better reflect behavior (#1908)
Jannify Jul 14, 2023
06a1daa
Added source generator for NitroxPatch boilerplate
Jul 9, 2023
410c98c
Applied HarmonyRegisterPatchGenerator to all applicable patch classes
Jul 15, 2023
5557bea
Added warn log for errors returned by LogHowToConnectAsync
Jul 16, 2023
3be383a
Renamed CompilationExtensions.HasType to GetType
Aug 2, 2023
e0c63ec
Optimized patching and removed patch class boilerplate (#2063)
Measurity Aug 2, 2023
0138f7d
Updated Nitrox.BinaryPack dependency to v2.0.1
Aug 15, 2023
687273b
Removed `Queue` alloc in packet receive updates
Aug 10, 2023
84b5601
Updated binarypack and reduced packet receive memory allocation (#2072)
Measurity Aug 18, 2023
88013d8
Translated using Weblate
weblate Sep 2, 2023
93c6599
Avoid generating .pdb files (#2075)
dartasen Sep 3, 2023
91748dc
Update readme with links to documentation instead of wiki (#2077)
Codeshark-NET Sep 24, 2023
47002e5
Building overhaul (#1952)
tornac1234 Oct 6, 2023
bc43513
Set Application.runInBackground to true at all times
tornac1234 Oct 25, 2023
0d0e85a
Fix and improve vitals for remote players
tornac1234 Oct 25, 2023
4c593ab
Fix Discord implementation (can now restart discord and the activity …
tornac1234 Oct 25, 2023
f609e89
Persist gamemode and add a minecraft-like command for it
tornac1234 Oct 25, 2023
62075dd
Refactored steps logic for initial sync processors
Measurity Nov 3, 2023
a0836b2
Code fixes and clean up of initial sync processors (#2091)
Measurity Nov 5, 2023
680d248
Rework Prefab Placeholder (fragment spawning, nested spawning structu…
tornac1234 Nov 23, 2023
e48af09
Added capture of server console input for hotkeys (#2085)
Measurity Nov 29, 2023
31f9848
Implement "Empty" GameObjects in world generation
tornac1234 Dec 2, 2023
6704bbd
Synced oxygen pipes, integrated beacons to entity system, allow conta…
tornac1234 Aug 23, 2023
b83b15b
Synced LEDLights and other placeable objects (e.g. posters) which no …
tornac1234 Sep 1, 2023
2c48110
Added a patch to replace DayNightCycle.deltaTime by a local calculati…
tornac1234 Oct 15, 2023
aae2e47
Synced flares
tornac1234 Oct 20, 2023
6f04e0a
Add an Instantiate wrapper to include the NitroxEntity in spawned obj…
tornac1234 Oct 21, 2023
e5864ad
Fixed some leftovers (gamemode, item placing)
tornac1234 Dec 3, 2023
61f2a7c
Prevent entity spawning from stopping when it errors. Implement rando…
tornac1234 Dec 7, 2023
9dc6ab6
Removed Nitrox.Analyzers sources in favor of nuget
Measurity Dec 9, 2023
962bc2a
Set csharp language from 11 to 12
Measurity Dec 9, 2023
70bb571
Updated editorconfig to reflect code style
Measurity Dec 9, 2023
18f9ef4
Added Nitrox patch name convention to remove spell-check warning
Measurity Dec 9, 2023
7e89ce6
Fix children referencing when updating an entity
tornac1234 Oct 29, 2023
9efe596
Sync name and colors for vehicles, rocket and cyclops
tornac1234 Oct 29, 2023
4606d19
Big refactoring of metadata
tornac1234 Nov 2, 2023
e872a26
Merge and adapt recent changes from #2087 and #2090
tornac1234 Dec 18, 2023
078063e
Removed AliveOrNull as it's provided by Nitrox.Analyzers now
Measurity Dec 21, 2023
bb510e7
Maintainance: latest C# lang version, code style config fixes, nitrox…
Measurity Dec 26, 2023
3561d31
Translated using Weblate
weblate Dec 26, 2023
7b10ab9
Fix a mistake in prefab placeholder group spawning, refactored the pr…
tornac1234 Dec 26, 2023
2af9c87
Added tests for SerializedWorldEntity in WorldPersistenceTest
tornac1234 Dec 27, 2023
8abb67b
Rework server-side entity spawning (#2093)
dartasen Jan 1, 2024
b8eb8c4
Sync radiation leaks, added a "real elapsed time"
tornac1234 Dec 23, 2023
f15d0d6
Fix time incrementing on client-side while it's paused on server-side…
tornac1234 Dec 27, 2023
9c5cd40
Some refactoring, added a temporary (to be changed later on) Resolve<…
tornac1234 Dec 27, 2023
06e114e
Add DenyOwnershipHand translation and refactor few MBs namespaces (#2…
Jannify Jan 11, 2024
5c48f8c
Sync base hull (#2099)
tornac1234 Jan 20, 2024
f4deab1
Made MS Store startable
Measurity Jan 24, 2024
889483a
Prevent game logic from freezing in multiplayer
Measurity Jan 24, 2024
0a322c0
Disable more telemetry code as it's not needed to run
Measurity Jan 24, 2024
785d38e
Added polyfill for available c# features
dartasen Feb 12, 2024
4a3830d
Sync spawning commands (#2113)
tornac1234 Feb 16, 2024
a20c0ab
Overhauling the Sound System (#1780)
Jannify Feb 18, 2024
3f727c7
Fixes SentrySdkManager.AddLogHistory NRE
Measurity Feb 22, 2024
39aecd4
Fix crash home not spawning fishes
tornac1234 Dec 26, 2023
bb204c9
Fix spawning entities marked as deleted and updated metadata not bein…
tornac1234 Dec 26, 2023
ce9ad22
Improve simulation distribution, fix simulation not being attributed …
tornac1234 Dec 27, 2023
18e56d6
Fix constructor sinking
tornac1234 Dec 27, 2023
fad58d0
Sync geyser eruptions
tornac1234 Dec 27, 2023
eb1ef9f
Move player join broadcast to after initial sync completed, and ensur…
tornac1234 Jan 6, 2024
4647723
Change world loading to only spawn entities in view range, and refact…
tornac1234 Jan 11, 2024
f654e0e
Sync Reefbacks children spawning, fix crash homes and geysers
tornac1234 Jan 31, 2024
978b9cf
Sync creature death (corpse) and transformation into cooked item, and…
tornac1234 Feb 6, 2024
14ea71d
Improve entity loading by no longer caching GameObjects when unloadin…
tornac1234 Feb 6, 2024
ffe3352
When spawning items, sets them as secured so they aren't dropped when…
tornac1234 Feb 19, 2024
d67c62a
Fixes NRE when client is null in LiteNetLibCLient.PollEvents
Measurity Feb 22, 2024
ce02ef5
Fixes NRE in held item logic while disconnecting
Measurity Feb 22, 2024
171f23b
Fixes a few NullReferenceException (#2117)
Measurity Feb 25, 2024
cd7a75e
Upgraded Litenetlib
dartasen Feb 26, 2024
26179d0
Game finders overhaul (#2121)
dartasen Feb 29, 2024
cb048d0
Upgraded Litenetlib to 1.2.0 (#2122)
Measurity Mar 2, 2024
61bf236
Translated using Weblate (#2120)
weblate Mar 2, 2024
54fd436
Removed direct DI container usage from debugger drawers (#2136)
Measurity May 12, 2024
cfc08f3
Translated using Weblate (#2141)
weblate May 17, 2024
e4d563d
Fix for attached storage modules inventory (#2162)
Andrew1431 Aug 12, 2024
baae2a9
Added start for BZ
Coding-Hen May 7, 2023
794ee92
Fixed resource asset parsing
Coding-Hen Jun 10, 2023
287e37c
Compiles, and small error fixes
Coding-Hen Aug 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
87 changes: 86 additions & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,48 @@ indent_style = space
end_of_line = lf

# ReSharper properties
resharper_blank_lines_after_block_statements = 0
resharper_braces_for_ifelse = required_for_multiline
resharper_braces_redundant = false
resharper_keep_existing_attribute_arrangement = true
resharper_wrap_object_and_collection_initializer_style = chop_if_long

[*.{proj, csproj, targets}]
[*.{proj,csproj,props,targets}]
indent_size = 4
insert_final_newline = true
tab_width = 4
dotnet_style_operator_placement_when_wrapping = beginning_of_line
dotnet_style_readonly_field = true:suggestion
dotnet_style_require_accessibility_modifiers = for_non_interface_members:silent
dotnet_style_coalesce_expression = true:suggestion
dotnet_style_null_propagation = true:suggestion
dotnet_style_prefer_is_null_check_over_reference_equality_method = true:suggestion
dotnet_style_prefer_auto_properties = true:silent
dotnet_style_object_initializer = true:suggestion
dotnet_style_prefer_collection_expression = true:suggestion
dotnet_style_namespace_match_folder = true:suggestion
dotnet_style_collection_initializer = true:suggestion
dotnet_style_prefer_simplified_boolean_expressions = true:suggestion
dotnet_style_prefer_conditional_expression_over_assignment = true:silent
dotnet_style_prefer_conditional_expression_over_return = true:silent
dotnet_style_explicit_tuple_names = true:suggestion
dotnet_style_prefer_inferred_tuple_names = true:suggestion
dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion
dotnet_style_prefer_compound_assignment = true:suggestion
dotnet_style_prefer_simplified_interpolation = true:suggestion
dotnet_style_allow_multiple_blank_lines_experimental = true:silent
dotnet_style_allow_statement_immediately_after_block_experimental = true:silent
dotnet_code_quality_unused_parameters = all:suggestion
dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:silent
dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:silent
dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:silent
dotnet_style_parentheses_in_other_operators = never_if_unnecessary:silent
dotnet_style_qualification_for_field = false:silent
dotnet_style_qualification_for_property = false:silent
dotnet_style_qualification_for_method = false:silent
dotnet_style_qualification_for_event = false:silent
dotnet_style_predefined_type_for_locals_parameters_members = true:silent
dotnet_style_predefined_type_for_member_access = true:silent

[App.config]
indent_size = 4
Expand All @@ -21,6 +58,54 @@ insert_final_newline = true
indent_size = 4
insert_final_newline = true
charset = utf-8
csharp_space_around_binary_operators = before_and_after
csharp_indent_labels = one_less_than_current
csharp_style_expression_bodied_methods = false:silent
csharp_style_expression_bodied_constructors = false:silent
csharp_style_expression_bodied_operators = false:silent
csharp_style_expression_bodied_properties = true:silent
csharp_style_expression_bodied_indexers = true:silent
csharp_style_expression_bodied_accessors = true:silent
csharp_style_expression_bodied_lambdas = true:silent
csharp_style_expression_bodied_local_functions = false:silent
csharp_style_prefer_switch_expression = true:suggestion
csharp_style_prefer_pattern_matching = true:silent
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion
csharp_style_prefer_not_pattern = true:suggestion
csharp_style_prefer_extended_property_pattern = true:suggestion
csharp_prefer_simple_using_statement = true:suggestion
csharp_prefer_braces = true:silent
csharp_style_namespace_declarations = file_scoped:suggestion
csharp_style_prefer_method_group_conversion = true:silent
csharp_style_prefer_top_level_statements = true:silent
csharp_style_prefer_primary_constructors = true:suggestion
csharp_prefer_static_local_function = true:suggestion
csharp_style_prefer_readonly_struct = true:suggestion
csharp_style_prefer_readonly_struct_member = true:suggestion
csharp_style_throw_expression = true:suggestion
csharp_style_prefer_null_check_over_type_check = true:suggestion
csharp_prefer_simple_default_expression = true:suggestion
csharp_style_prefer_local_over_anonymous_function = true:suggestion
csharp_style_prefer_index_operator = true:suggestion
csharp_style_prefer_range_operator = true:suggestion
csharp_style_implicit_object_creation_when_type_is_apparent = true:suggestion
csharp_style_prefer_tuple_swap = true:suggestion
csharp_style_prefer_utf8_string_literals = true:suggestion
csharp_style_inlined_variable_declaration = true:suggestion
csharp_style_deconstructed_variable_declaration = true:suggestion
csharp_style_unused_value_assignment_preference = discard_variable:suggestion
csharp_style_unused_value_expression_statement_preference = discard_variable:silent
csharp_style_allow_embedded_statements_on_same_line_experimental = true:silent
csharp_style_allow_blank_lines_between_consecutive_braces_experimental = true:silent
csharp_style_allow_blank_line_after_colon_in_constructor_initializer_experimental = true:silent
csharp_style_allow_blank_line_after_token_in_conditional_expression_experimental = true:silent
csharp_style_allow_blank_line_after_token_in_arrow_expression_clause_experimental = true:silent
csharp_style_var_for_built_in_types = false:silent
csharp_style_var_when_type_is_apparent = false:silent
csharp_style_var_elsewhere = false:silent
csharp_style_conditional_delegate_call = true:suggestion
csharp_using_directive_placement = outside_namespace:silent

[*.g.cs]
generated_code = true
Expand Down
6 changes: 3 additions & 3 deletions .github/ISSUE_TEMPLATE/bug_report.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ body:
id: os_type
attributes:
label: Which OS are you playing on?
description: Please select your Operation System from the dropdown.
description: Please select your Operating System from the dropdown.
options:
- Windows
- Linux (currently not supported, don't file any reports if your are using this)
Expand Down Expand Up @@ -55,7 +55,7 @@ body:
id: steps_to_reproduce
attributes:
label: Describe the steps you took to encounter the bug.
description: How did it happened? Please provide steps to reproduce the bug if possible. Did the bug disappear with slightly altered steps?
description: How did it happen? Please provide steps to reproduce the bug if possible. Did the bug disappear with slightly altered steps?
placeholder: Tell us what you did!
validations:
required: false
Expand All @@ -65,7 +65,7 @@ body:
label: Relevant log output
description: |
Please upload your game logs if possible. The logs are located next to the launcher in a folder called "Nitrox Logs".
Upload the most recent "game-XXXXXXXX.log" and if you hosted the server also "server-XXXXXXXX.log" to [Pastbin](https://pastebin.com/).
Upload the most recent "game-XXXXXXXX.log" and if you hosted the server also "server-XXXXXXXX.log" to [Pastebin](https://pastebin.com/).
After you created a paste for both files post their links into this box.
placeholder: |
For example:
Expand Down
55 changes: 1 addition & 54 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,56 +1,3 @@
# Contributing

## Code
We do not have a formatting guideline *yet*, and expect you to write code with common sense in mind. Consistency is key, so look at the surrounding code and adhere to the same standards. Always check the diff before you commit (and more importantly: before filing a PR); many irrelevant changes usually mean your autoformat settings are off. Luckily, our project now includes a `.editorconfig` that automatically sets all the built-in formatting/language-rules. This is however only supported in Visual Studio 2017.
A large list of discussion items has been compiled [here](https://github.com/SubnauticaNitrox/Nitrox/issues/36), which hopefully make it into a guideline soon™.

### Formatting
- Use UpperCamelCase for methods, classes, properties and public fields.
- Use lowerCamelCase for local variables, private fields and function parameters.
- Remove unused `using` statements (Visual Studio has a shortcut to do this, as well as sort them).
- Put opening braces (`{`) on their own line.
- Encapsulate everything in braces, even single-line statements.
- Use `Optional<T>` for explicit nullable types.
- Use strict access modifiers where possible, and mark immutable variables wherever appropriate (`const`, `readonly` or `static readonly`, depending on the usecase).
- Remove `private set;` from properties if these are only assigned in the constructor.
- Assign simple data types (that do not require arguments) at declaration rather than in the constructor (such as `private readonly List<int> someList = new List<int>();`, instead of putting the `new` part in the constructor).

Again, consistency is key! If you're unsure, look at the rest of the code!

### Safe guidelines
When retrieving data from the game, use `Validate.NotNull` or similar where possible. Subnautica is still heavily under development, and things *will* change. Defensive coding standards help identify and fix these changes more easily.
To reduce redundant if sturctures, there are several helper functions that combine a certain retrieval function with a `Validation` check - it's recommended to use these. For example `GameObject.RequireComponent` and `GuidHelper.RequireObjectFrom`. In case of `Optional<T>` return types, these are unwrapped for you as well, saving the redundant checks *and* unwrapping.

### Help your fellow developers!
If code (especially patches that touch game internals) is/are not immediately clear, add a comment explaining the situation. This goes a long way, as you're basically presenting an overview of the research you did in the game code. And it helps others to figure out what's supposed to happen, in case the game changes and the patch is not functioning properly anymore.

### General OO(P) concepts
... such as "low coupling" and "high coherency", which basically means that you should try to reduce interaction between different pieces of code (classes) as much as possible (low coupling), and make sure that these pieces of code (classes) do the thing they are meant to do, and nothing else (high coherency). This goes a long way in code maintainability; less spaghetti code is always better :wink:
Also in this case, keep common sense in mind: if you're constantly accessing a lot of fields and methods of another class, consider tucking it away in a method in that class.

## Git workflow
### Git help
<sub><sup>Skip this section is if you are familiar with git.</sup></sub>
Git is there to help you develop and share code efficiently, though it may seem daunting at first. In order to use it effectively, we recommend you to read some tutorials so that you are familiar with the concept of commits, the way these are linked together, branches, and remotes.

When cloning a repository, git adds the clone url as a remote named `origin`. In this guide, we assume that's your fork. To keep your repository updated, add this official repo to your remotes:
```bash
# SSH:
git remote add upstream git@github.com:SubnauticaNitrox/Nitrox.git
# HTTPS:
git remote add upstream https://github.com/SubnauticaNitrox/Nitrox.git
```

We recommend to keep your master branch up to date with the offical master branch. This makes it easier to base feature branches on.
To go even further, you configure your master branch to pull from `SubnauticaNitrox`, and push to your own fork:
```bash
git config branch.master.remote upstream
git config branch.master.pushRemote origin
```

### Filing a PR
When filing a PR, we obviously expect the code to compile, run with no errors, and merge without conflicts.
To prevent these, and ensure that your code is compatible with the most recent 'version',
merge master into your branch, or rebase your branch on top of master. Even if git(hub) says your code can be merged without conflicts, there might be structural changes (renamings, moved files, refactors, etc), causing the final result to fail compilation, or break at runtime.

It is not desired to remove code just because "it doesn't work", or "causes exceptions in the log". If that's the case, try to fix it (recommended to file the changes in a separate PR), or notify the other Nitrox devs (by creating an issue on github, for example). All code is there for a reason - and someone else spent time creating it.
Please have a look at our [documentation site](https://subnauticanitrox.github.io/Documentation/) for contribution guidelines & information on how to get started.
36 changes: 21 additions & 15 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project>
<!-- Set default properties for all projects (can be overridden per project) -->
<PropertyGroup>
<LangVersion>11</LangVersion>
<LangVersion>12.0</LangVersion>
<Version>1.8.0.0</Version>
<NitroxProject>false</NitroxProject>
<TestLibrary>false</TestLibrary>
Expand All @@ -12,16 +12,18 @@
<BuildGenDllDir>$(BuildGenDir)publicized_assemblies\</BuildGenDllDir>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<Prefer32Bit>false</Prefer32Bit>
<DebugType>embedded</DebugType>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<ImplicitUsings>disable</ImplicitUsings>
<PathMap>$(MSBuildProjectDirectory)=$(MSBuildProjectName)</PathMap>
<EnableNETAnalyzers>true</EnableNETAnalyzers>
<PolySharpUsePublicAccessibilityForGeneratedTypes>true</PolySharpUsePublicAccessibilityForGeneratedTypes>
</PropertyGroup>

<PropertyGroup Condition="$([System.Text.RegularExpressions.Regex]::IsMatch($(MSBuildProjectName), '^Nitrox.*$'))">
<NitroxProject>true</NitroxProject>
</PropertyGroup>
<PropertyGroup Condition="'$(NitroxProject)' == 'true' and '$(MSBuildProjectName)' != 'Nitrox.Analyzers'">
<PropertyGroup Condition="'$(NitroxProject)' == 'true'">
<NitroxLibrary>true</NitroxLibrary>
</PropertyGroup>
<PropertyGroup Condition="'$(NitroxLibrary)' == 'true' and '$(MSBuildProjectName)' != 'NitroxModel' and '$(MSBuildProjectName)' != 'NitroxServer' and '$(MSBuildProjectName)' != 'Nitrox.BuildTool'">
Expand All @@ -30,27 +32,27 @@
<PropertyGroup Condition="'$(MSBuildProjectName)' == 'Nitrox.Test'">
<TestLibrary>true</TestLibrary>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'BelowZero' ">
<DefineConstants>DEBUG;BELOWZERO</DefineConstants>
<OutputPath>bin\BelowZero\</OutputPath>
</PropertyGroup>


<!-- Shared dependencies for all Nitrox.* projects -->
<Choose>
<When Condition="'$(NitroxProject)' == 'true'">
<ItemGroup>
<PackageReference Include="JetBrains.Annotations" Version="2022.3.1">
<PackageReference Include="JetBrains.Annotations" Version="2023.3.0">
<Aliases>JB</Aliases>
</PackageReference>
<PackageReference Include="IsExternalInit" Version="1.0.3">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>
</When>
</Choose>

<!-- Include our analyzer and code gen library to all Nitrox projects -->
<Choose>
<When Condition="'$(NitroxLibrary)' == 'true'">
<ItemGroup>
<ProjectReference Include="..\Nitrox.Analyzers\Nitrox.Analyzers.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
<PackageReference Include="PolySharp" Version="1.14.1">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>

<PackageReference Include="System.Memory" Version="4.5.5" />
<PackageReference Include="System.ValueTuple" Version="4.5.0" />
</ItemGroup>
</When>
</Choose>
Expand All @@ -67,6 +69,10 @@
<ProjectReference Include="$(SolutionDir)NitroxModel\NitroxModel.csproj">
<Name>NitroxModel</Name>
</ProjectReference>
<PackageReference Include="Nitrox.Analyzers" Version="*">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>
</When>
</Choose>
Expand Down
4 changes: 4 additions & 0 deletions Directory.Build.targets
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@
<When Condition="'$(UnityModLibrary)' == 'true' or '$(TestLibrary)' == 'true'">
<!-- UnityEngine libraries to include -->
<ItemGroup>
<Reference Include="FMODUnity">
<HintPath>$(GameManagedDir)\FMODUnity.dll</HintPath>
<Private>$(TestLibrary)</Private>
</Reference>
<Reference Include="Newtonsoft.Json">
<HintPath>$(GameManagedDir)\Newtonsoft.Json.dll</HintPath>
<Private>$(TestLibrary)</Private>
Expand Down
61 changes: 0 additions & 61 deletions Nitrox.Analyzers/Diagnostics/EnumeratorUsageAnalyzer.cs

This file was deleted.

Loading