Weapon Scripting Overhaul

Weapons are now monolithic behaviors
Various new weapon behavior types implemented
All weapons have optional magazine and reload mechanic
Visibility now decays globally
This commit is contained in:
Reinier Vens 2021-01-25 05:53:36 +00:00
commit 357f9db329
95 changed files with 2571 additions and 754 deletions

View file

@ -210,9 +210,7 @@
</e>
</e>
<e p="Scripts" t="Include">
<e p="ActionGameManager.cs" t="Include" />
<e p="AetheriaInput.cs" t="Include" />
<e p="ArticulationPoint.cs" t="Include" />
<e p="CameraPerlinOrbit.cs" t="Include" />
<e p="CultClient.cs" t="Include" />
<e p="Editor" t="Include">
@ -224,19 +222,31 @@
<e p="SerializerTestWindow.cs" t="Include" />
<e p="SpriteProcessor.cs" t="Include" />
</e>
<e p="EntityPrefab.cs" t="Include" />
<e p="EventLog.cs" t="Include" />
<e p="FilterTest.cs" t="Include" />
<e p="FitToCamera.cs" t="Include" />
<e p="Galaxy.cs" t="Include" />
<e p="Gameplay" t="Include">
<e p="ActionGameManager.cs" t="Include" />
<e p="ArticulationPoint.cs" t="Include" />
<e p="EntityPrefab.cs" t="Include" />
<e p="HullCollider.cs" t="Include" />
<e p="ThrusterHardpoint.cs" t="Include" />
<e p="WeaponHardpoint.cs" t="Include" />
<e p="Weapons" t="Include">
<e p="ConstantWeaponEffectManager.cs" t="Include" />
<e p="GuidedProjectile.cs" t="Include" />
<e p="GuidedProjectileManager.cs" t="Include" />
<e p="InstantWeaponEffectManager.cs" t="Include" />
<e p="Laser.cs" t="Include" />
<e p="LaserManager.cs" t="Include" />
<e p="Projectile.cs" t="Include" />
<e p="ProjectileManager.cs" t="Include" />
</e>
</e>
<e p="GameSettings.cs" t="Include" />
<e p="Gravity.cs" t="Include" />
<e p="GuidedProjectile.cs" t="Include" />
<e p="GuidedProjectileManager.cs" t="Include" />
<e p="HullCollider.cs" t="Include" />
<e p="InitialSettings.cs" t="Include" />
<e p="InventoryCell.cs" t="Include" />
<e p="InventoryMenu.cs" t="Include" />
<e p="MapMenuInput.cs" t="Include" />
<e p="MapRenderer.cs" t="Include" />
<e p="MarkovNameGenerator.cs" t="Include" />
@ -1420,15 +1430,10 @@
</e>
<e p="XKCDColors.cs" t="Include" />
</e>
<e p="Projectile.cs" t="Include" />
<e p="ProjectileManager.cs" t="Include" />
<e p="Prototype.cs" t="Include" />
<e p="PrototypeParticleReturn.cs" t="Include" />
<e p="RethinkConnection.cs" t="Include" />
<e p="Rotate.cs" t="Include" />
<e p="SchematicDisplay.cs" t="Include" />
<e p="SchematicListElement.cs" t="Include" />
<e p="SchematicTriggerGroupElement.cs" t="Include" />
<e p="Sector Display" t="Include">
<e p="BlueNoiseProvider.cs" t="Include" />
<e p="CopyTransform.cs" t="Include" />
@ -1459,8 +1464,10 @@
</e>
<e p="Attributes.cs" t="Include" />
<e p="Behaviors" t="Include">
<e p="AutoWeapon.cs" t="Include" />
<e p="Behaviors.cs" t="Include" />
<e p="Capacitor.cs" t="Include" />
<e p="ChargedWeapon.cs" t="Include" />
<e p="Cockpit.cs" t="Include" />
<e p="ConstantWeapon.cs" t="Include" />
<e p="Controller.cs" t="Include" />
@ -1470,11 +1477,13 @@
<e p="HaulingController.cs" t="Include" />
<e p="Heat.cs" t="Include" />
<e p="Heatsink.cs" t="Include" />
<e p="Hitscan.cs" t="Include" />
<e p="InstantWeapon.cs" t="Include" />
<e p="ItemUsage.cs" t="Include" />
<e p="Launcher.cs" t="Include" />
<e p="LockWeapon.cs" t="Include" />
<e p="MiningController.cs" t="Include" />
<e p="MiningTool.cs" t="Include" />
<e p="ParticleEffect.cs" t="Include" />
<e p="PatrolController.cs" t="Include" />
<e p="ProjectileWeapon.cs" t="Include" />
<e p="Radiance.cs" t="Include" />
@ -1487,12 +1496,10 @@
<e p="StatModifier.cs" t="Include" />
<e p="SurveyController.cs" t="Include" />
<e p="Switch.cs" t="Include" />
<e p="TargetLock.cs" t="Include" />
<e p="Thermotoggle.cs" t="Include" />
<e p="Thruster.cs" t="Include" />
<e p="TowingController.cs" t="Include" />
<e p="Trigger.cs" t="Include" />
<e p="Turning.cs" t="Include" />
<e p="TurretController.cs" t="Include" />
<e p="VelocityConversion.cs" t="Include" />
<e p="VelocityLimit.cs" t="Include" />
@ -1971,12 +1978,7 @@
<e p="ZoneData.cs" t="Include" />
<e p="ZoneGenerator.cs" t="Include" />
</e>
<e p="SizeFilter.cs" t="Include" />
<e p="Spreadsheet.cs" t="Include" />
<e p="SpreadsheetColumnHeader.cs" t="Include" />
<e p="SpreadsheetRow.cs" t="Include" />
<e p="TechTreeMsagl.cs" t="Include" />
<e p="ThrusterHardpoint.cs" t="Include" />
<e p="TradeMenu.cs" t="Include" />
<e p="UI" t="Include">
<e p="AttributeProperty.cs" t="Include" />
@ -2000,6 +2002,8 @@
<e p="Icons.cs" t="Include" />
<e p="IncrementField.cs" t="Include" />
<e p="InputField.cs" t="Include" />
<e p="InventoryCell.cs" t="Include" />
<e p="InventoryMenu.cs" t="Include" />
<e p="InventoryPanel.cs" t="Include" />
<e p="LoginScreen.cs" t="Include" />
<e p="MapViewDragHandler.cs" t="Include" />
@ -2012,6 +2016,13 @@
<e p="PropertyButton.cs" t="Include" />
<e p="PropertyLabel.cs" t="Include" />
<e p="RangedFloatField.cs" t="Include" />
<e p="SchematicDisplay.cs" t="Include" />
<e p="SchematicListElement.cs" t="Include" />
<e p="SchematicTriggerGroupElement.cs" t="Include" />
<e p="SizeFilter.cs" t="Include" />
<e p="Spreadsheet.cs" t="Include" />
<e p="SpreadsheetColumnHeader.cs" t="Include" />
<e p="SpreadsheetRow.cs" t="Include" />
<e p="TabActivator.cs" t="Include" />
<e p="TabButton.cs" t="Include" />
<e p="TabGroup.cs" t="Include" />
@ -2025,7 +2036,6 @@
<e p="UnityExtensions.cs" t="Include" />
<e p="UnityFormatters.cs" t="Include" />
<e p="UnityHelpers.cs" t="Include" />
<e p="WeaponHardpoint.cs" t="Include" />
</e>
<e p="Shaders" t="Include">
<e p="AdditiveUI.shader" t="Include" />

View file

@ -64,10 +64,10 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Layered\IntEdge.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Layered\Layering\LongestPathLayering.cs" />
<Compile Include="Assets\Scripts\UI\FlatButton.cs" />
<Compile Include="Assets\Scripts\EntityPrefab.cs" />
<Compile Include="Assets\Scripts\Gameplay\EntityPrefab.cs" />
<Compile Include="Assets\com.unity.uiextensions\Runtime\Scripts\Primitives\UILineRendererList.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Visibility\ActiveDiagonalComparerWithRay.cs" />
<Compile Include="Assets\Scripts\SchematicDisplay.cs" />
<Compile Include="Assets\Scripts\UI\SchematicDisplay.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\MultiEdgeRouter.cs" />
<Compile Include="Assets\Scripts\RethinkConnection.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Visibility\VisibilityEdge.cs" />
@ -77,7 +77,7 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\Curves\CurvatureDerivative.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\OverlapRemoval\OverlapRemovalClusterScanLine.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Layout\ProximityOverlapRemoval\StressEnergy\MaxIterationMethod.cs" />
<Compile Include="Assets\Scripts\GuidedProjectile.cs" />
<Compile Include="Assets\Scripts\Gameplay\Weapons\GuidedProjectile.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Spline\Bundling\NodePositionsAdjuster.cs" />
<Compile Include="Assets\Scripts\Galaxy.cs" />
<Compile Include="Assets\Scripts\UI\PropertyLabel.cs" />
@ -88,7 +88,7 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\LargeGraphLayout\LgLayoutSettings.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Visibility\Diagonal.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\RTree\IntervalRTree.cs" />
<Compile Include="Assets\Scripts\InventoryCell.cs" />
<Compile Include="Assets\Scripts\UI\InventoryCell.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Spline\Bundling\IMetroMapOrderingAlgorithm.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Layout\LabelPlacementResult.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Layout\GeometryObject.cs" />
@ -116,7 +116,7 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Incremental\IConstraint.cs" />
<Compile Include="Assets\Scripts\NIH\MIConvexHull\Constants.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\DebugHelpers\Persistence\ClusterWithChildLists.cs" />
<Compile Include="Assets\Scripts\Projectile.cs" />
<Compile Include="Assets\Scripts\Gameplay\Weapons\Projectile.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Spline\ConeSpanner\ConeSpannerForPortLocations.cs" />
<Compile Include="Assets\Scripts\Sector Display\GradientMapper.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\SingleSourceSingleTargetShortestPathOnVisibilityGraph.cs" />
@ -197,10 +197,10 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Miscellaneous\LayoutEditing\LabelFixture.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\RectanglePacking\OptimalRectanglePacking.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Miscellaneous\LayoutEditing\EdgeRestoreData.cs" />
<Compile Include="Assets\Scripts\ArticulationPoint.cs" />
<Compile Include="Assets\Scripts\Gameplay\ArticulationPoint.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Rectilinear\CloseVertexEvent.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\ConstrainedDelaunayTriangulation\PerimeterEdge.cs" />
<Compile Include="Assets\Scripts\SchematicListElement.cs" />
<Compile Include="Assets\Scripts\UI\SchematicListElement.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Miscellaneous\LayoutEditing\IncrementalDragger.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\DataStructures\BinaryHeapPriorityQueue.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\LargeGraphLayout\LgNodeCollection.cs" />
@ -270,7 +270,7 @@
<Compile Include="Assets\Scripts\Sector Display\CopyTransform.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\Site.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Spline\Bundling\StationEdgeInfo.cs" />
<Compile Include="Assets\Scripts\InventoryMenu.cs" />
<Compile Include="Assets\Scripts\UI\InventoryMenu.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Spline\ConeSpanner\RightVertexEvent.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Visibility\SegmentBase.cs" />
<Compile Include="Assets\Scripts\UI\ClickRaycaster.cs" />
@ -315,7 +315,7 @@
<Compile Include="Assets\Scripts\UI\MapViewDragHandler.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\Curves\Polyline.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Rectilinear\HighBendVertexEvent.cs" />
<Compile Include="Assets\Scripts\SizeFilter.cs" />
<Compile Include="Assets\Scripts\UI\SizeFilter.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Layout\ProximityOverlapRemoval\StressEnergy\SolvingMethod.cs" />
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Core\DrawerAttributes\ResizableTextAreaAttribute.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\Curves\CubicBezierSegment.cs" />
@ -338,7 +338,7 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Layout\Label.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\ConstrainedDelaunayTriangulation\CdtFront.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Miscellaneous\LayoutEditing\WeightedEdge.cs" />
<Compile Include="Assets\Scripts\WeaponHardpoint.cs" />
<Compile Include="Assets\Scripts\Gameplay\WeaponHardpoint.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Miscellaneous\Phylo\PhyloTree.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Rectilinear\PointAndCrossingsList.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\Curves\RootFinder.cs" />
@ -407,7 +407,7 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Layered\VertexEnumerators.cs" />
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Core\DrawerAttributes\ShowNativePropertyAttribute.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Layered\NetworkEdge.cs" />
<Compile Include="Assets\Scripts\ActionGameManager.cs" />
<Compile Include="Assets\Scripts\Gameplay\ActionGameManager.cs" />
<Compile Include="Assets\Scripts\UI\TabActivator.cs" />
<Compile Include="Assets\Scripts\UI\AttributeProperty.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Spline\ConeSpanner\VertexEvent.cs" />
@ -462,7 +462,7 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Initial\InitialLayoutHelpers.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\MinEnclosingDisc\Disc.cs" />
<Compile Include="Assets\Scripts\NIH\MIConvexHull\ConvexHull\ConvexFace.cs" />
<Compile Include="Assets\Scripts\SpreadsheetRow.cs" />
<Compile Include="Assets\Scripts\UI\SpreadsheetRow.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\DebugHelpers\Persistence\CurveStream.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\ConstrainedDelaunayTriangulation\CdtSite.cs" />
<Compile Include="Assets\Scripts\UI\DropdownMenu.cs" />
@ -513,7 +513,7 @@
<Compile Include="Assets\Scripts\NIH\MIConvexHull\ConvexHull\MathHelper.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Rectilinear\PointAndCrossings.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Layout\GraphConnectedComponents.cs" />
<Compile Include="Assets\Scripts\SchematicTriggerGroupElement.cs" />
<Compile Include="Assets\Scripts\UI\SchematicTriggerGroupElement.cs" />
<Compile Include="Assets\Scripts\UI\ConsoleView.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\LargeGraphLayout\LgSkeletonLevel.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\LargeGraphLayout\LgInteractor.cs" />
@ -549,7 +549,7 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Layout\ProximityOverlapRemoval\IOverlapRemoval.cs" />
<Compile Include="Assets\Scripts\NIH\MIConvexHull\Vertex2.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Layout\ProximityOverlapRemoval\MST\MstLineSweeper.cs" />
<Compile Include="Assets\Scripts\GuidedProjectileManager.cs" />
<Compile Include="Assets\Scripts\Gameplay\Weapons\GuidedProjectileManager.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Layered\HorizontalConstraintsForSugiyama.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Layered\LayerInserter.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Visibility\ObstacleSideComparer.cs" />
@ -572,7 +572,7 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Spline\Bundling\GeneralMetroMapOrdering.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Rectilinear\ObstacleTree.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\ProjectionSolver\ISolverShell.cs" />
<Compile Include="Assets\Scripts\SpreadsheetColumnHeader.cs" />
<Compile Include="Assets\Scripts\UI\SpreadsheetColumnHeader.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Visibility\PointVisibilityCalculator.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\OverlapRemoval\OverlapRemovalParameters.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\DataStructures\RBTree\RBNode.cs" />
@ -647,13 +647,13 @@
<Compile Include="Assets\Scripts\UI\ConfirmationDialog.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\DataStructures\GenericBinaryHeapPriorityQueueWithTimestamp.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\RelaxedPolylinePoint.cs" />
<Compile Include="Assets\Scripts\ThrusterHardpoint.cs" />
<Compile Include="Assets\Scripts\Gameplay\ThrusterHardpoint.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Layered\Ordering\AdjacentSwaps.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Layout\ProximityOverlapRemoval\StressEnergy\ExampleStressMajorization.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\Curves\RoundedRect.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Spline\ConeSpanner\LowestVertexEvent.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\DebugHelpers\ShowDebugCurvesEnumeration.cs" />
<Compile Include="Assets\Scripts\ProjectileManager.cs" />
<Compile Include="Assets\Scripts\Gameplay\Weapons\ProjectileManager.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\DebugHelpers\ShowDebugCurves.cs" />
<Compile Include="Assets\Scripts\UI\TabButton.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Layout\EdgeCollection.cs" />
@ -706,10 +706,10 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\NodeKind.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Rectilinear\SsstRectilinearPath.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Layered\XCoordsWithAlignment.cs" />
<Compile Include="Assets\Scripts\Spreadsheet.cs" />
<Compile Include="Assets\Scripts\UI\Spreadsheet.cs" />
<Compile Include="Assets\Scripts\CameraPerlinOrbit.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\GraphmapsWithMesh\LocalModifications.cs" />
<Compile Include="Assets\Scripts\HullCollider.cs" />
<Compile Include="Assets\Scripts\Gameplay\HullCollider.cs" />
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Core\DrawerAttributes\DrawerAttribute.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Routing\Rectilinear\Nudging\AxisEdgeLowPointEvent.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Layout\Layered\NetworkSimplexForGeneralGraph.cs" />
@ -719,6 +719,10 @@
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\MinEnclosingDisc\MinimumEnclosingDisc.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\DataStructures\BinaryHeapWithComparer.cs" />
<Compile Include="Assets\Scripts\NIH\MSAGL\Core\Geometry\Direction.cs" />
<Compile Include="Assets\Scripts\Gameplay\Weapons\LaserManager.cs" />
<Compile Include="Assets\Scripts\Gameplay\Weapons\Laser.cs" />
<Compile Include="Assets\Scripts\Gameplay\Weapons\InstantWeaponEffectManager.cs" />
<Compile Include="Assets\Scripts\Gameplay\Weapons\ConstantWeaponEffectManager.cs" />
<None Include="Assets\com.unity.uiextensions\Runtime\Resources\Shaders\UIAdditive.shader" />
<None Include="Assets\TextMesh Pro\Resources\Shaders\TMPro.cginc" />
<None Include="Assets\TextMesh Pro\Resources\Shaders\TMP_SDF-Mobile Overlay.shader" />

BIN
Assets/Resources/Settings.asset (Stored with Git LFS)

Binary file not shown.

View file

@ -1586,7 +1586,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
NoiseAmplitude: 0
NoiseFrequency: 0
CanvasRectTransform: {fileID: 761574181}
Canvas: {fileID: 0}
BorderPixels: 10
Target: {x: 0, y: 0, z: 0}
--- !u!1 &166261016
@ -9668,7 +9668,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
NoiseAmplitude: 0
NoiseFrequency: 0
CanvasRectTransform: {fileID: 761574181}
Canvas: {fileID: 761574180}
BorderPixels: 10
Target: {x: 0, y: 0, z: 0}
--- !u!114 &776416426
@ -14877,7 +14877,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
NoiseAmplitude: 0
NoiseFrequency: 0
CanvasRectTransform: {fileID: 761574181}
Canvas: {fileID: 761574180}
BorderPixels: 10
Target: {x: 0, y: 0, z: 0}
--- !u!114 &1284802340
@ -17253,12 +17253,12 @@ PrefabInstance:
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
@ -17273,12 +17273,12 @@ PrefabInstance:
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 55.675
value: 0
objectReference: {fileID: 0}
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchoredPosition.y
value: -16
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1713457305180270767, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
@ -17608,7 +17608,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
NoiseAmplitude: 0
NoiseFrequency: 0
CanvasRectTransform: {fileID: 761574181}
Canvas: {fileID: 761574180}
BorderPixels: 10
Target: {x: 0, y: 0, z: 0}
--- !u!1 &1558520821
@ -18109,12 +18109,12 @@ PrefabInstance:
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
@ -18129,12 +18129,12 @@ PrefabInstance:
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 60.98
value: 0
objectReference: {fileID: 0}
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchoredPosition.y
value: -16
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1713457305180270767, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
@ -18501,7 +18501,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
NoiseAmplitude: 0
NoiseFrequency: 0
CanvasRectTransform: {fileID: 761574181}
Canvas: {fileID: 761574180}
BorderPixels: 10
Target: {x: 0, y: 0, z: 0}
--- !u!114 &1631662980
@ -19785,7 +19785,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
NoiseAmplitude: 0
NoiseFrequency: 0
CanvasRectTransform: {fileID: 761574181}
Canvas: {fileID: 761574180}
BorderPixels: 10
Target: {x: 0, y: 0, z: 0}
--- !u!114 &1771741751
@ -20663,7 +20663,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
NoiseAmplitude: 0
NoiseFrequency: 0
CanvasRectTransform: {fileID: 761574181}
Canvas: {fileID: 761574180}
BorderPixels: 10
Target: {x: 0, y: 0, z: 0}
--- !u!114 &1876420642
@ -20888,7 +20888,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
NoiseAmplitude: 0
NoiseFrequency: 0
CanvasRectTransform: {fileID: 761574181}
Canvas: {fileID: 761574180}
BorderPixels: 10
Target: {x: 0, y: 0, z: 0}
--- !u!114 &1914685584

View file

@ -330,33 +330,38 @@ public class DatabaseInspector : EditorWindow
field.SetValue(obj, list);
GUI.changed = true;
}
else
{
var sorted = true;
var order = int.MinValue;
foreach(var element in list)
{
var elementType = element.GetType();
var elementOrder = elementType.GetCustomAttribute<OrderAttribute>()?.Order ?? 0;
if (elementOrder < order)
sorted = false;
order = elementOrder;
}
if (!sorted)
{
var sortedList = list
.Cast<object>()
.OrderBy(o => o.GetType().GetCustomAttribute<OrderAttribute>()?.Order ?? 0);
list = (IList) Activator.CreateInstance(type);
foreach (var o in sortedList)
list.Add(o);
field.SetValue(obj, list);
GUI.changed = true;
}
}
// else
// {
// var sorted = true;
// var order = int.MinValue;
// foreach(var element in list)
// {
// var elementType = element.GetType();
// var elementOrder = elementType.GetCustomAttribute<OrderAttribute>()?.Order ?? 0;
// if (elementOrder < order)
// sorted = false;
// order = elementOrder;
// }
//
// if (!sorted)
// {
// var sortedList = list
// .Cast<object>()
// .OrderBy(o => o.GetType().GetCustomAttribute<OrderAttribute>()?.Order ?? 0);
// list = (IList) Activator.CreateInstance(type);
// foreach (var o in sortedList)
// list.Add(o);
// field.SetValue(obj, list);
// GUI.changed = true;
// }
// }
foreach (var o in list)
{
if (o == null)
{
list.Remove(o);
break;
}
bool _tinted = false;
var originalColor = GUI.backgroundColor;
if (o is ITintInspector tint)

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 65a07df7be49d8a46adc474abc4277d9
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -59,7 +59,7 @@ public class ActionGameManager : MonoBehaviour
private float2 _shipYawPitch;
private float3 _viewDirection;
private (HardpointData[] hardpoints, Transform[] barrels, PlaceUIElementWorldspace crosshair)[] _articulationGroups;
private (TargetLock targetLock, PlaceUIElementWorldspace indicator, Rotate spin)[] _lockingIndicators;
private (LockWeapon targetLock, PlaceUIElementWorldspace indicator, Rotate spin)[] _lockingIndicators;
public List<Ship> PlayerShips { get; } = new List<Ship>();
public EquippedDockingBay DockingBay { get; private set; }
@ -234,172 +234,92 @@ public class ActionGameManager : MonoBehaviour
{
if (CurrentShip.Parent != null) return;
var item = SchematicDisplay.SchematicItems[SchematicDisplay.SelectedItemIndex];
if (CurrentShip.TriggerGroups[SchematicDisplay.SelectedGroupIndex].Contains(item.Item))
CurrentShip.TriggerGroups[SchematicDisplay.SelectedGroupIndex].Remove(item.Item);
else CurrentShip.TriggerGroups[SchematicDisplay.SelectedGroupIndex].Add(item.Item);
if (CurrentShip.TriggerGroups[SchematicDisplay.SelectedGroupIndex].items.Contains(item.Item))
CurrentShip.TriggerGroups[SchematicDisplay.SelectedGroupIndex].items.Remove(item.Item);
else CurrentShip.TriggerGroups[SchematicDisplay.SelectedGroupIndex].items.Add(item.Item);
foreach (var group in item.Item.BehaviorGroups.Values)
{
var behavior = group.GetBehavior<IActivatedBehavior>();
if(behavior != null)
{
if (CurrentShip.TriggerGroups[SchematicDisplay.SelectedGroupIndex].behaviors.Contains(behavior))
CurrentShip.TriggerGroups[SchematicDisplay.SelectedGroupIndex].behaviors.Remove(behavior);
else CurrentShip.TriggerGroups[SchematicDisplay.SelectedGroupIndex].behaviors.Add(behavior);
}
}
SchematicDisplay.UpdateTriggerGroups();
};
_input.Player.FireGroup1.started += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[0])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = true;
behaviors.Trigger?.Pull();
}
}
foreach (var s in CurrentShip.TriggerGroups[0].behaviors) s.Activate();
};
_input.Player.FireGroup1.canceled += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[0])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = false;
}
}
foreach (var s in CurrentShip.TriggerGroups[0].behaviors) s.Deactivate();
};
_input.Player.FireGroup2.started += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[1])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = true;
behaviors.Trigger?.Pull();
}
}
foreach (var s in CurrentShip.TriggerGroups[1].behaviors) s.Activate();
};
_input.Player.FireGroup2.canceled += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[1])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = false;
}
}
foreach (var s in CurrentShip.TriggerGroups[1].behaviors) s.Deactivate();
};
_input.Player.FireGroup3.started += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[2])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = true;
behaviors.Trigger?.Pull();
}
}
foreach (var s in CurrentShip.TriggerGroups[2].behaviors) s.Activate();
};
_input.Player.FireGroup3.canceled += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[2])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = false;
}
}
foreach (var s in CurrentShip.TriggerGroups[2].behaviors) s.Deactivate();
};
_input.Player.FireGroup4.started += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[3])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = true;
behaviors.Trigger?.Pull();
}
}
foreach (var s in CurrentShip.TriggerGroups[3].behaviors) s.Activate();
};
_input.Player.FireGroup4.canceled += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[3])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = false;
}
}
foreach (var s in CurrentShip.TriggerGroups[3].behaviors) s.Deactivate();
};
_input.Player.FireGroup5.started += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[4])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = true;
behaviors.Trigger?.Pull();
}
}
foreach (var s in CurrentShip.TriggerGroups[4].behaviors) s.Activate();
};
_input.Player.FireGroup5.canceled += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[4])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = false;
}
}
foreach (var s in CurrentShip.TriggerGroups[4].behaviors) s.Deactivate();
};
_input.Player.FireGroup6.started += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[5])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = true;
behaviors.Trigger?.Pull();
}
}
foreach (var s in CurrentShip.TriggerGroups[5].behaviors) s.Activate();
};
_input.Player.FireGroup6.canceled += context =>
{
if (CurrentShip.Parent != null) return;
foreach (var item in CurrentShip.TriggerGroups[5])
{
foreach (var behaviors in item.BehaviorGroups)
{
if (behaviors.Switch != null)
behaviors.Switch.Activated = false;
}
}
foreach (var s in CurrentShip.TriggerGroups[5].behaviors) s.Deactivate();
};
#endregion
@ -604,7 +524,7 @@ public class ActionGameManager : MonoBehaviour
foreach (var group in _articulationGroups)
group.crosshair.gameObject.SetActive(true);
_lockingIndicators = CurrentShip.GetBehaviors<TargetLock>().Select(x =>
_lockingIndicators = CurrentShip.GetBehaviors<LockWeapon>().Select(x =>
{
var i = LockIndicator.Instantiate<PlaceUIElementWorldspace>();
return (x, i, i.GetComponent<Rotate>());

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 89bd1fe14443ac841ba3ad78301769f5
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,9 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public abstract class ConstantWeaponEffectManager : MonoBehaviour
{
public abstract void Start(WeaponData data, EquippedItem item, EntityInstance source, EntityInstance target);
public abstract void Stop(WeaponData data, EquippedItem item, EntityInstance source, EntityInstance target);
}

View file

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7d1880b94a9e9f74e9c13be8d5fd8dee
guid: 38df809a0cf4b7748bad88620bb7b3ab
MonoImporter:
externalObjects: {}
serializedVersion: 2

View file

@ -0,0 +1,35 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GuidedProjectileManager : InstantWeaponEffectManager
{
public Prototype ProjectilePrototype;
public override void Fire(WeaponData data, EquippedItem item, EntityInstance source, EntityInstance target)
{
if(data is LauncherData launcher)
{
var p = ProjectilePrototype.Instantiate<GuidedProjectile>();
p.Source = source.Transform;
p.SourceEntity = source.Entity;
p.Target = target.Transform;
p.Frequency = launcher.DodgeFrequency;
p.Thrust = source.Entity.ItemManager.Evaluate(launcher.Thrust, item.EquippableItem, source.Entity);
var hp = source.Entity.Hardpoints[item.Position.x, item.Position.y];
var barrel = source.GetBarrel(hp);
p.transform.position = barrel.position;
p.Velocity = barrel.forward * source.Entity.ItemManager.Evaluate(launcher.LaunchSpeed, item.EquippableItem, source.Entity);
p.Damage = source.Entity.ItemManager.Evaluate(data.Damage, item.EquippableItem, source.Entity);
p.Penetration = source.Entity.ItemManager.Evaluate(data.Penetration, item.EquippableItem, source.Entity);
p.Spread = source.Entity.ItemManager.Evaluate(data.DamageSpread, item.EquippableItem, source.Entity);
p.DamageType = data.DamageType;
p.GuidanceCurve = launcher.GuidanceCurve.ToCurve();
p.LiftCurve = launcher.LiftCurve.ToCurve();
p.ThrustCurve = launcher.ThrustCurve.ToCurve();
p.Thrust = source.Entity.ItemManager.Evaluate(launcher.Thrust, item.EquippableItem, source.Entity);
p.TopSpeed = source.Entity.ItemManager.Evaluate(launcher.Velocity, item.EquippableItem, source.Entity);
}
else Debug.LogError($"Weapon {item.EquippableItem.Name} linked to {name} effect, but is not a Launcher!");
}
}

View file

@ -0,0 +1,8 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public abstract class InstantWeaponEffectManager : MonoBehaviour
{
public abstract void Fire(WeaponData data, EquippedItem item, EntityInstance source, EntityInstance target);
}

View file

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 215516570484dc343ab90cae7a8ec175
guid: 947a7d0e9469d724daed03d35a0c1f4e
MonoImporter:
externalObjects: {}
serializedVersion: 2

View file

@ -0,0 +1,13 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Laser : MonoBehaviour
{
public float Damage { get; set; }
public float Penetration { get; set; }
public float Spread { get; set; }
public DamageType DamageType { get; set; }
public Entity SourceEntity { get; set; }
public float Range { get; set; }
}

View file

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 166b726996e49bd4b87608739a5af815
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -2,24 +2,24 @@
using System.Collections.Generic;
using UnityEngine;
public class ProjectileManager : MonoBehaviour
public class LaserManager : InstantWeaponEffectManager
{
public Prototype ProjectilePrototype;
public void Launch(ProjectileWeaponData data, EquippedItem item, EntityInstance source)
public override void Fire(WeaponData data, EquippedItem item, EntityInstance source, EntityInstance target)
{
var p = ProjectilePrototype.Instantiate<Projectile>();
var p = ProjectilePrototype.Instantiate<Laser>();
p.SourceEntity = source.Entity;
var hp = source.Entity.Hardpoints[item.Position.x, item.Position.y];
var barrel = source.GetBarrel(hp);
p.Range = source.Entity.ItemManager.Evaluate(data.Range, item.EquippableItem, source.Entity);
p.StartPosition = p.transform.position = barrel.position;
p.Velocity = barrel.forward * source.Entity.ItemManager.Evaluate(data.Velocity, item.EquippableItem, source.Entity);
var t = p.transform;
t.SetParent(barrel);
t.forward = barrel.forward;
t.position = barrel.position;
p.Damage = source.Entity.ItemManager.Evaluate(data.Damage, item.EquippableItem, source.Entity);
p.Penetration = source.Entity.ItemManager.Evaluate(data.Penetration, item.EquippableItem, source.Entity);
p.Spread = source.Entity.ItemManager.Evaluate(data.DamageSpread, item.EquippableItem, source.Entity);
p.DamageType = data.DamageType;
p.Zone = source.Entity.Zone;
p.Trail.Clear();
}
}

View file

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 5745a5be5f0c02b4b88bd094ea609c13
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,31 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ProjectileManager : InstantWeaponEffectManager
{
public Prototype ProjectilePrototype;
public override void Fire(WeaponData data, EquippedItem item, EntityInstance source, EntityInstance target)
{
if(data is ProjectileWeaponData projectile)
{
var p = ProjectilePrototype.Instantiate<Projectile>();
p.SourceEntity = source.Entity;
var hp = source.Entity.Hardpoints[item.Position.x, item.Position.y];
var barrel = source.GetBarrel(hp);
p.Range = source.Entity.ItemManager.Evaluate(data.Range, item.EquippableItem, source.Entity);
p.StartPosition = p.transform.position = barrel.position;
var angle = source.Entity.ItemManager.Evaluate(projectile.Spread, item.EquippableItem, source.Entity) / 2;
p.Velocity = (Quaternion.Euler(Random.Range(-angle, angle), Random.Range(-angle, angle), Random.Range(-angle, angle)) * barrel.forward) *
source.Entity.ItemManager.Evaluate(projectile.Velocity, item.EquippableItem, source.Entity);
p.Damage = source.Entity.ItemManager.Evaluate(data.Damage, item.EquippableItem, source.Entity);
p.Penetration = source.Entity.ItemManager.Evaluate(data.Penetration, item.EquippableItem, source.Entity);
p.Spread = source.Entity.ItemManager.Evaluate(data.DamageSpread, item.EquippableItem, source.Entity);
p.DamageType = data.DamageType;
p.Zone = source.Entity.Zone;
p.Trail.Clear();
}
else Debug.LogError($"Weapon {item.EquippableItem.Name} linked to {name} effect, but is not a Projectile Weapon!");
}
}

View file

@ -1,31 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GuidedProjectileManager : MonoBehaviour
{
public Prototype ProjectilePrototype;
public void Launch(LauncherData data, EquippedItem item, EntityInstance source, EntityInstance target)
{
var p = ProjectilePrototype.Instantiate<GuidedProjectile>();
p.Source = source.Transform;
p.SourceEntity = source.Entity;
p.Target = target.Transform;
p.Frequency = data.DodgeFrequency;
p.Thrust = source.Entity.ItemManager.Evaluate(data.Thrust, item.EquippableItem, source.Entity);
var hp = source.Entity.Hardpoints[item.Position.x, item.Position.y];
var barrel = source.GetBarrel(hp);
p.transform.position = barrel.position;
p.Velocity = barrel.forward * source.Entity.ItemManager.Evaluate(data.LaunchSpeed, item.EquippableItem, source.Entity);
p.Damage = source.Entity.ItemManager.Evaluate(data.Damage, item.EquippableItem, source.Entity);
p.Penetration = source.Entity.ItemManager.Evaluate(data.Penetration, item.EquippableItem, source.Entity);
p.Spread = source.Entity.ItemManager.Evaluate(data.DamageSpread, item.EquippableItem, source.Entity);
p.DamageType = data.DamageType;
p.GuidanceCurve = data.GuidanceCurve.ToCurve();
p.LiftCurve = data.LiftCurve.ToCurve();
p.ThrustCurve = data.ThrustCurve.ToCurve();
p.Thrust = source.Entity.ItemManager.Evaluate(data.Thrust, item.EquippableItem, source.Entity);
p.TopSpeed = source.Entity.ItemManager.Evaluate(data.Velocity, item.EquippableItem, source.Entity);
}
}

View file

@ -234,10 +234,10 @@ namespace Microsoft.Msagl.Layout.Layered {
MessageId = "System.String.Format(System.String,System.Object)")]
override protected void RunInternal() {
#if REPORTING
Timer t = null;
DebugHelpers.Timer t = null;
if (sugiyamaSettings.Reporting) {
Report("removing cycles ... ");
t = new Timer();
t = new DebugHelpers.Timer();
t.Start();
}
#endif
@ -262,10 +262,10 @@ namespace Microsoft.Msagl.Layout.Layered {
void RunPostLayering() {
#if REPORTING
Timer t = null;
DebugHelpers.Timer t = null;
if (sugiyamaSettings.Reporting) {
Report("Calculating edge splines... ");
t = new Timer();
t = new DebugHelpers.Timer();
t.Start();
}
#endif
@ -448,10 +448,10 @@ namespace Microsoft.Msagl.Layout.Layered {
#region reporting
#if REPORTING
Timer t = null;
DebugHelpers.Timer t = null;
if (sugiyamaSettings.Reporting) {
Report("calculating layers ... ");
t = new Timer();
t = new DebugHelpers.Timer();
t.Start();
}
#endif
@ -1050,9 +1050,9 @@ namespace Microsoft.Msagl.Layout.Layered {
#region reporting
#if REPORTING
Timer t = null;
DebugHelpers.Timer t = null;
if (sugiyamaSettings.Reporting) {
t = new Timer();
t = new DebugHelpers.Timer();
Report("ylayering ... ");
t.Start();
}
@ -1250,9 +1250,9 @@ namespace Microsoft.Msagl.Layout.Layered {
var routing = new Routing(sugiyamaSettings, originalGraph, database, engineLayerArrays, properLayeredGraph,
IntGraph);
#if REPORTING
Timer t = null;
DebugHelpers.Timer t = null;
if (sugiyamaSettings.Reporting) {
t = new Timer();
t = new DebugHelpers.Timer();
t.Start();
}
#endif

View file

@ -7,9 +7,9 @@ namespace Microsoft.Msagl.Routing.Spline.Bundling {
/// </summary>
internal class TimeMeasurer {
#if DEBUG && TEST_MSAGL
static Timer timer;
static DebugHelpers.Timer timer;
static TimeMeasurer() {
timer = new Timer();
timer = new DebugHelpers.Timer();
timer.Start();
}
#endif

View file

@ -62,8 +62,8 @@ public class SectorRenderer : MonoBehaviour
private Dictionary<Guid, AsteroidBeltUI> _beltObjects = new Dictionary<Guid, AsteroidBeltUI>();
private Dictionary<Guid, InstancedMesh[]> _beltMeshes = new Dictionary<Guid, InstancedMesh[]>();
private Dictionary<Guid, Matrix4x4[][]> _beltMatrices = new Dictionary<Guid, Matrix4x4[][]>();
private Dictionary<ProjectileWeaponData, ProjectileManager> _projectileManagers = new Dictionary<ProjectileWeaponData, ProjectileManager>();
private Dictionary<LauncherData, GuidedProjectileManager> _guidedProjectileManagers = new Dictionary<LauncherData, GuidedProjectileManager>();
private Dictionary<InstantWeaponData, InstantWeaponEffectManager> _instantWeaponManagers = new Dictionary<InstantWeaponData, InstantWeaponEffectManager>();
private Dictionary<ConstantWeaponData, ConstantWeaponEffectManager> _constantWeaponManagers = new Dictionary<ConstantWeaponData, ConstantWeaponEffectManager>();
private Zone _zone;
private float _viewDistance;
private float _maxDepth;
@ -179,19 +179,18 @@ public class SectorRenderer : MonoBehaviour
instance.Transform = Instantiate(UnityHelpers.LoadAsset<GameObject>(hullData.Prefab), ZoneRoot).transform;
instance.Prefab = instance.Transform.GetComponent<EntityPrefab>();
var shipInstance = (ShipInstance) instance;
shipInstance.Thrusters = ship.GetBehaviors<Thruster>().ToArray();
shipInstance.ThrusterParticles = shipInstance.Thrusters
.Select(x =>
shipInstance.Particles = ship.GetBehaviors<Thruster>()
.Select<Thruster, (Thruster effect, ParticleSystem system, float baseEmission)>(x =>
{
var particles = Instantiate(UnityHelpers.LoadAsset<ParticleSystem>(((ThrusterData) x.Data).ParticlesPrefab), shipInstance.Transform, false);
var effectData = (ThrusterData) x.Data;
var particles = Instantiate(UnityHelpers.LoadAsset<ParticleSystem>(effectData.ParticlesPrefab), shipInstance.Transform, false);
var particlesShape = particles.shape;
particlesShape.meshRenderer = shipInstance.Prefab.ThrusterHardpoints
.FirstOrDefault(t => t.name == x.Entity.Hardpoints[x.Item.Position.x, x.Item.Position.y].Transform)
?.Emitter;
return particles;
return (x, particles, particles.emission.rateOverTimeMultiplier);
})
.ToArray();
shipInstance.ThrusterBaseEmission = shipInstance.ThrusterParticles.Select(x => x.emission.rateOverTimeMultiplier).ToArray();
}
else
{
@ -208,35 +207,19 @@ public class SectorRenderer : MonoBehaviour
{
if (behavior is InstantWeapon instantWeapon)
{
if (behavior.Data is ProjectileWeaponData projectileWeaponData)
var data = (InstantWeaponData) instantWeapon.Data;
if (!_instantWeaponManagers.ContainsKey(data))
{
if (!_projectileManagers.ContainsKey(projectileWeaponData))
var managerPrefab = UnityHelpers.LoadAsset<InstantWeaponEffectManager>(data.EffectPrefab);
if(managerPrefab)
{
var managerPrefab = UnityHelpers.LoadAsset<ProjectileManager>(projectileWeaponData.EffectPrefab);
if(managerPrefab)
{
_projectileManagers.Add(projectileWeaponData, Instantiate(managerPrefab, EffectManagerParent));
}
else Debug.LogError($"No ProjectileManager prefab found at path {projectileWeaponData.EffectPrefab}");
_instantWeaponManagers.Add(data, Instantiate(managerPrefab, EffectManagerParent));
}
instantWeapon.OnFire += () => _projectileManagers[projectileWeaponData].Launch(projectileWeaponData, item, instance);
else Debug.LogError($"No InstantWeaponEffectManager prefab found at path {data.EffectPrefab}");
}
else if (behavior.Data is LauncherData launcherData)
{
if (!_guidedProjectileManagers.ContainsKey(launcherData))
{
var managerPrefab = UnityHelpers.LoadAsset<GuidedProjectileManager>(launcherData.EffectPrefab);
if(managerPrefab)
{
_guidedProjectileManagers.Add(launcherData, Instantiate(managerPrefab, EffectManagerParent));
}
else Debug.LogError($"No ProjectileManager prefab found at path {launcherData.EffectPrefab}");
}
instantWeapon.OnFire += () =>
_guidedProjectileManagers[launcherData].Launch(launcherData, item, instance, EntityInstances[entity.Target.Value]);
}
instantWeapon.OnFire += () =>
_instantWeaponManagers[data].Fire(data, item, instance, entity.Target.Value != null ? EntityInstances[entity.Target.Value] : null);
}
}
}
@ -605,12 +588,12 @@ public class SectorRenderer : MonoBehaviour
}
if(entity.Value is ShipInstance shipInstance)
{
for (int i = 0; i < shipInstance.Thrusters.Length; i++)
foreach (var (effect, system, baseEmission) in shipInstance.Particles)
{
var emissionModule = shipInstance.ThrusterParticles[i].emission;
var item = shipInstance.Thrusters[i].Item.EquippableItem;
var emissionModule = system.emission;
var item = effect.Item.EquippableItem;
var data = shipInstance.Entity.ItemManager.GetData(item);
emissionModule.rateOverTimeMultiplier = shipInstance.ThrusterBaseEmission[i] * shipInstance.Thrusters[i].Axis * (item.Durability / data.Durability);
emissionModule.rateOverTimeMultiplier = baseEmission * effect.Axis * (item.Durability / data.Durability);
}
entity.Value.Transform.rotation = ((Ship) entity.Key).Rotation;
@ -672,9 +655,7 @@ public class EntityInstance
public class ShipInstance : EntityInstance
{
public ParticleSystem[] ThrusterParticles;
public Thruster[] Thrusters;
public float[] ThrusterBaseEmission;
public (Thruster effect, ParticleSystem system, float baseEmission)[] Particles;
}
[Serializable]

View file

@ -8,13 +8,13 @@ using System.Collections.Generic;
using System.Linq;
using Unity.Mathematics;
using static Unity.Mathematics.math;
using float2 = Unity.Mathematics.float2;
public class VelocityMatch : AgentBehavior
{
public event Action OnMatch;
public float2 TargetVelocity;
private Thruster _thrust;
private Turning _turning;
private const float TargetThreshold = .1f;
private ItemManager _context;
@ -23,7 +23,6 @@ public class VelocityMatch : AgentBehavior
{
_context = context;
_thrust = Entity.GetBehavior<Thruster>();
_turning = Entity.GetBehavior<Turning>();
}
public void Clear()
@ -33,31 +32,32 @@ public class VelocityMatch : AgentBehavior
public override void Update(float delta)
{
if (_thrust != null && _turning != null)
{
var deltaV = TargetVelocity - Entity.Velocity;
if(length(deltaV) < TargetThreshold)
OnMatch?.Invoke();
_turning.Axis = TurningInput(deltaV);
_thrust.Axis = ThrustInput(deltaV);
}
// if (_thrust != null && _turning != null)
// {
// var deltaV = TargetVelocity - Entity.Velocity;
// if(length(deltaV) < TargetThreshold)
// OnMatch?.Invoke();
// _turning.Axis = TurningInput(deltaV);
// _thrust.Axis = ThrustInput(deltaV);
// }
}
public float2 MatchDistanceTime
{
get
{
var velocity = length(Entity.Velocity);
var deltaV = TargetVelocity - Entity.Velocity;
var stoppingTime = length(deltaV) / (_thrust.Thrust / Entity.Mass);
var stoppingDistance = stoppingTime * (velocity / 2);
var angleDiff = Entity.Direction.AngleDiff(deltaV);
var turnaroundTime = angleDiff / (_turning.Torque / Entity.Mass);
var turnaroundDistance = turnaroundTime * velocity;
return float2(stoppingDistance + turnaroundDistance, stoppingTime + turnaroundTime);
// var velocity = length(Entity.Velocity);
// var deltaV = TargetVelocity - Entity.Velocity;
//
// var stoppingTime = length(deltaV) / (_thrust.Thrust / Entity.Mass);
// var stoppingDistance = stoppingTime * (velocity / 2);
//
// var angleDiff = Entity.Direction.AngleDiff(deltaV);
// var turnaroundTime = angleDiff / (_turning.Torque / Entity.Mass);
// var turnaroundDistance = turnaroundTime * velocity;
//
// return float2(stoppingDistance + turnaroundDistance, stoppingTime + turnaroundTime);
return float2.zero;
}
}
}

View file

@ -127,6 +127,23 @@ public class InspectableTypeAttribute : InspectableFieldAttribute
[AttributeUsage(AttributeTargets.Field)]
public class SimplePerformanceStatAttribute : Attribute { }
/// <summary>
/// <para>Specify a tooltip for a field in the Inspector window.</para>
/// </summary>
[AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)]
public class TooltipAttribute : Attribute
{
/// <summary>
/// <para>The tooltip text.</para>
/// </summary>
public readonly string tooltip;
/// <summary>
/// <para>Specify a tooltip for a field.</para>
/// </summary>
/// <param name="tooltip">The tooltip text.</param>
public TooltipAttribute(string tooltip) => this.tooltip = tooltip;
}
// public class CategoryAttribute : Attribute
// {
// public readonly Type Type;

View file

@ -0,0 +1,32 @@
using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
using static Unity.Mathematics.math;
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn), RuntimeInspectable]
public class AutoWeaponData : InstantWeaponData
{
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
return new AutoWeapon(context, this, entity, item);
}
}
public class AutoWeapon : InstantWeapon
{
public AutoWeapon(ItemManager context, InstantWeaponData data, Entity entity, EquippedItem item) : base(context, data, entity, item)
{
}
public override bool Execute(float delta)
{
if(_firing && _burstRemaining == 0 && _cooldown < 0)
Trigger();
return base.Execute(delta);
}
}

View file

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 9f709e48e6db48bb8214d07fc593f9bd
timeCreated: 1611439063

View file

@ -19,11 +19,11 @@ public interface IBehavior
BehaviorData Data { get; }
}
// public interface IActivatedBehavior : IBehavior
// {
// bool Activate();
// void Deactivate();
// }
public interface IActivatedBehavior : IBehavior
{
void Activate();
void Deactivate();
}
public interface IAnalogBehavior : IBehavior
{
@ -40,6 +40,11 @@ public interface IInitializableBehavior
void Initialize();
}
public interface IInteractiveBehavior
{
bool Exposed { get; }
}
public interface IAlwaysUpdatedBehavior
{
void Update(float delta);
@ -92,7 +97,7 @@ public abstract class PersistentBehaviorData
Union(6, typeof(ReflectorData)),
Union(7, typeof(ShieldData)),
Union(8, typeof(ThrusterData)),
Union(9, typeof(TurningData)),
// Union(9, typeof(TurningData)),
Union(10, typeof(VelocityConversionData)),
Union(11, typeof(VelocityLimitData)),
Union(12, typeof(FactoryData)),
@ -100,7 +105,7 @@ public abstract class PersistentBehaviorData
Union(14, typeof(TowingControllerData)),
Union(15, typeof(CooldownData)),
Union(16, typeof(HeatData)),
Union(17, typeof(HitscanData)),
// Union(17, typeof(HitscanData)),
Union(18, typeof(ItemUsageData)),
Union(19, typeof(RadianceData)),
Union(20, typeof(SwitchData)),
@ -118,7 +123,10 @@ public abstract class PersistentBehaviorData
Union(32, typeof(CockpitData)),
Union(33, typeof(HeatsinkData)),
Union(34, typeof(TurretControllerData)),
Union(35, typeof(TargetLockData)),
Union(35, typeof(InstantWeaponData)),
Union(36, typeof(ConstantWeaponData)),
Union(37, typeof(ChargedWeaponData)),
Union(38, typeof(AutoWeaponData)),
JsonConverter(typeof(JsonKnownTypesConverter<BehaviorData>)), JsonObject(MemberSerialization.OptIn)]
public abstract class BehaviorData
{

View file

@ -0,0 +1,95 @@
using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
using static Unity.Mathematics.math;
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn), RuntimeInspectable]
public class ChargedWeaponData : InstantWeaponData
{
[InspectableField, JsonProperty("chargeTime"), Key(13), RuntimeInspectable]
public PerformanceStat ChargeTime = new PerformanceStat();
[InspectableField, JsonProperty("chargeEnergy"), Key(14), RuntimeInspectable]
public PerformanceStat ChargeEnergy = new PerformanceStat();
[InspectableField, JsonProperty("canFireEarly"), Key(15)]
public bool CanFireEarly;
[InspectableField, JsonProperty("failureCharge"), Key(16)]
public float FailureCharge;
[InspectableField, JsonProperty("failureDamage"), Key(17)]
public float FailureDamage;
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
return new ChargedWeapon(context, this, entity, item);
}
}
public class ChargedWeapon : InstantWeapon
{
private ChargedWeaponData _data;
private bool _charging;
private bool _charged;
private float _charge;
private float _progress;
public event Action OnCharged;
public event Action OnFailed;
public override float Progress => saturate(_charging ? _charge : _cooldown);
public float Charge
{
get => _charge;
}
public ChargedWeapon(ItemManager context, ChargedWeaponData data, Entity entity, EquippedItem item) : base(context, data, entity, item)
{
_data = data;
}
public override bool Execute(float delta)
{
if (_charging)
{
_charge += delta / Context.Evaluate(_data.ChargeTime, Item.EquippableItem, Entity);
if (!_charged && _charge > 1)
{
_charged = true;
OnCharged?.Invoke();
}
if (_charge > _data.FailureCharge)
{
_charging = false;
_cooldown = 1;
OnFailed?.Invoke();
Item.EquippableItem.Durability -= _data.FailureDamage;
}
}
return base.Execute(delta);
}
public override void Activate()
{
if(_cooldown < 0)
{
_charging = true;
_charged = false;
}
}
public override void Deactivate()
{
if (_charging && (_data.CanFireEarly || _charge > 1))
{
Trigger();
_charge = 0;
}
}
}

View file

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 9dc2759ab65d73c4a8b831f4f23ef48a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -5,67 +5,117 @@
using System;
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
using static Unity.Mathematics.math;
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn)]
public class ConstantWeaponData : WeaponData
{
[InspectablePrefab, JsonProperty("ammoInterval"), Key(13)]
public float AmmoInterval = 1;
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
return new ConstantWeapon(context, this, entity, item);
}
}
public class ConstantWeapon : IBehavior, IAlwaysUpdatedBehavior
public class ConstantWeapon : Weapon, IProgressBehavior
{
private ConstantWeaponData _data;
private int _ammo = 1;
private float _ammoInterval;
private float _reload;
private bool _reloading;
private Entity Entity { get; }
private EquippedItem Item { get; }
private ItemManager Context { get; }
public override int Ammo
{
get => _ammo;
}
public BehaviorData Data => _data;
public float Progress
{
get { return saturate(_reload); }
}
public event Action OnReloadBegin;
public event Action OnReloadComplete;
public event Action OnStartFiring;
public event Action OnStopFiring;
private bool _firing;
private bool _stoppedFiring;
public ConstantWeapon(ItemManager context, ConstantWeaponData c, Entity entity, EquippedItem item)
public ConstantWeapon(ItemManager context, ConstantWeaponData data, Entity entity, EquippedItem item) : base(context, data, entity, item)
{
Context = context;
_data = c;
Entity = entity;
Item = item;
_data = data;
}
public bool Execute(float delta)
public override bool Execute(float delta)
{
if (!_firing)
if (_firing)
{
if (_data.AmmoType != Guid.Empty)
{
if (_reloading)
{
_reload -= delta / _data.ReloadTime;
if (_reload < 0)
{
_reloading = false;
OnReloadComplete?.Invoke();
}
return false;
}
_ammoInterval -= delta / _data.AmmoInterval;
if (_ammoInterval < 0)
{
_ammoInterval = 1;
if (_data.MagazineSize > 1 && _ammo > 0) _ammo--;
else
{
var cargo = Entity.FindItemInCargo(_data.AmmoType);
if (cargo != null)
{
var item = cargo.ItemsOfType[_data.AmmoType][0];
if (item is SimpleCommodity simpleCommodity)
cargo.Remove(simpleCommodity, 1);
if(_data.MagazineSize > 1)
{
_reloading = true;
_reload = 1;
OnReloadBegin?.Invoke();
_firing = false;
OnStopFiring?.Invoke();
}
}
return false;
}
}
}
Item.AddHeat(Context.Evaluate(_data.Heat, Item.EquippableItem, Entity) * delta);
Entity.VisibilitySources[this] = Context.Evaluate(_data.Visibility, Item.EquippableItem, Entity);
Entity.Energy -= Context.Evaluate(_data.Energy, Item.EquippableItem, Entity) * delta;
}
return true;
}
public override void Activate()
{
if(!_reloading)
{
_firing = true;
OnStartFiring?.Invoke();
}
_stoppedFiring = false;
return true;
}
public void Update(float delta)
public override void Deactivate()
{
// Update executes after AlwaysUpdate,
// so if the stop flag didn't get disabled previous frame,
// we know the weapon has stopped firing
if (_firing)
{
if (_stoppedFiring)
{
_firing = false;
_stoppedFiring = false;
OnStopFiring?.Invoke();
}
else
_stoppedFiring = true;
_firing = false;
OnStopFiring?.Invoke();
}
}
}

View file

@ -1,48 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
using MessagePack;
using Newtonsoft.Json;
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn)]
public class HitscanData : WeaponData
{
[InspectableField, JsonProperty("perSecond"), Key(6)]
public bool PerSecond;
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
return new Hitscan(context, this, entity, item);
}
}
public class Hitscan : IBehavior
{
private bool _firing;
private float _cooldown; // normalized
private HitscanData _data;
private Entity Entity { get; }
private EquippedItem Item { get; }
private ItemManager Context { get; }
private float _firingVisibility;
public BehaviorData Data => _data;
public float Range { get; private set; }
public Hitscan(ItemManager context, HitscanData c, Entity entity, EquippedItem item)
{
Context = context;
_data = c;
Entity = entity;
Item = item;
}
public bool Execute(float delta)
{
// TODO: Implement hitscan weapons!
Range = Context.Evaluate(_data.Range, Item.EquippableItem, Entity);
return true;
}
}

View file

@ -0,0 +1,125 @@
using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
using static Unity.Mathematics.math;
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn), RuntimeInspectable]
public class InstantWeaponData : WeaponData
{
[InspectableField, JsonProperty("burstCount"), Key(13)]
public int BurstCount;
[InspectableField, JsonProperty("burstTime"), Key(14)]
public PerformanceStat BurstTime = new PerformanceStat();
[InspectableField, JsonProperty("cooldown"), Key(15), RuntimeInspectable]
public PerformanceStat Cooldown = new PerformanceStat();
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
return new InstantWeapon(context, this, entity, item);
}
}
public class InstantWeapon : Weapon, IProgressBehavior
{
private InstantWeaponData _data;
protected int _burstRemaining;
private float _burstTimer;
private float _burstInterval;
protected float _cooldown; // Normalized
private int _ammo = 1;
private bool _coolingDown;
public override int Ammo
{
get => _ammo;
}
public virtual float Progress => saturate(_cooldown);
public event Action OnReloadBegin;
public event Action OnReloadComplete;
public event Action OnCooldownComplete;
public event Action OnFire;
public InstantWeapon(ItemManager context, InstantWeaponData data, Entity entity, EquippedItem item) : base(context,data,entity,item)
{
_data = data;
}
protected void Trigger()
{
_burstRemaining = _data.BurstCount;
_burstInterval = Context.Evaluate(_data.BurstTime, Item.EquippableItem, Entity) / _burstRemaining;
_burstTimer = 0;
_cooldown = 1;
_coolingDown = true;
}
public override bool Execute(float delta)
{
if (_coolingDown)
{
_cooldown -= delta / (_ammo == 0 ? _data.ReloadTime : Context.Evaluate(_data.Cooldown, Item.EquippableItem, Entity));
if (_cooldown < 0)
{
_coolingDown = false;
if (_ammo == 0)
{
_ammo = _data.MagazineSize;
OnReloadComplete?.Invoke();
}
else
OnCooldownComplete?.Invoke();
}
}
_burstTimer += delta;
while (_burstRemaining > 0 && _burstTimer > 0)
{
if (_data.AmmoType != Guid.Empty)
{
if (_data.MagazineSize > 1 && _ammo > 0) _ammo--;
else
{
var cargo = Entity.FindItemInCargo(_data.AmmoType);
if (cargo != null)
{
var item = cargo.ItemsOfType[_data.AmmoType][0];
if (item is SimpleCommodity simpleCommodity)
cargo.Remove(simpleCommodity, 1);
if(_data.MagazineSize > 1)
{
OnReloadBegin?.Invoke();
_cooldown = 1;
_coolingDown = true;
_firing = false;
}
}
_burstRemaining = 0;
return false;
}
}
_burstRemaining--;
_burstTimer -= _burstInterval;
OnFire?.Invoke();
Item.AddHeat(Context.Evaluate(_data.Heat, Item.EquippableItem, Entity));
Entity.VisibilitySources[this] = Context.Evaluate(_data.Visibility, Item.EquippableItem, Entity);
Entity.Energy -= Context.Evaluate(_data.Energy, Item.EquippableItem, Entity);
}
return true;
}
public override void Activate()
{
if(!_coolingDown)
Trigger();
base.Activate();
}
}

View file

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 47fd83e8ade851c4e9177cd1de58949d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -7,31 +7,31 @@ using Newtonsoft.Json;
using Unity.Mathematics;
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn)]
public class LauncherData : InstantWeaponData
public class LauncherData : LockWeaponData
{
[InspectableAnimationCurve, JsonProperty("guidance"), Key(9)]
[InspectableAnimationCurve, JsonProperty("guidance"), Key(21)]
public float4[] GuidanceCurve;
[InspectableAnimationCurve, JsonProperty("thrustCurve"), Key(10)]
[InspectableAnimationCurve, JsonProperty("thrustCurve"), Key(22)]
public float4[] ThrustCurve;
[InspectableAnimationCurve, JsonProperty("liftCurve"), Key(11)]
[InspectableAnimationCurve, JsonProperty("liftCurve"), Key(23)]
public float4[] LiftCurve;
[InspectableField, JsonProperty("thrust"), Key(12)]
[InspectableField, JsonProperty("thrust"), Key(24)]
public PerformanceStat Thrust = new PerformanceStat();
[InspectableField, JsonProperty("frequency"), Key(13)]
[InspectableField, JsonProperty("frequency"), Key(25)]
public float DodgeFrequency;
[InspectableField, JsonProperty("launchSpeed"), Key(14)]
[InspectableField, JsonProperty("launchSpeed"), Key(26)]
public PerformanceStat LaunchSpeed = new PerformanceStat();
[InspectableField, JsonProperty("missileSpeed"), Key(15), RuntimeInspectable]
[InspectableField, JsonProperty("missileSpeed"), Key(27), RuntimeInspectable]
public PerformanceStat Velocity = new PerformanceStat();
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
return new InstantWeapon(context, this, entity, item);
return new LockWeapon(context, this, entity, item);
}
}

View file

@ -0,0 +1,97 @@
using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
using static Unity.Mathematics.math;
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn), RuntimeInspectable]
public class LockWeaponData : InstantWeaponData
{
[InspectableField, JsonProperty("speed"), Key(16), RuntimeInspectable]
public PerformanceStat LockSpeed = new PerformanceStat();
[InspectableField, JsonProperty("sensorImpact"), Key(17)]
public PerformanceStat SensorImpact = new PerformanceStat();
[InspectableField, JsonProperty("threshold"), Key(18), RuntimeInspectable]
public PerformanceStat LockAngle = new PerformanceStat();
[InspectableField, JsonProperty("directionImpact"), Key(19)]
public PerformanceStat DirectionImpact = new PerformanceStat();
[InspectableField, JsonProperty("decay"), Key(20)]
public PerformanceStat Decay = new PerformanceStat();
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
return new LockWeapon(context, this, entity, item);
}
}
public class LockWeapon : InstantWeapon
{
private LockWeaponData _data;
private float _lock;
private bool _locking;
private Entity _target;
public event Action OnLocked;
public event Action OnBeginLocking;
public event Action OnLockLost;
public float LockSpeed { get; private set; }
public float SensorImpact { get; private set; }
public float LockAngle { get; private set; }
public float DirectionImpact { get; private set; }
public float Decay { get; private set; }
public override float Progress => saturate(_cooldown > 0 ? _cooldown : _lock);
public float Lock
{
get => saturate(_lock);
}
public LockWeapon(ItemManager context, LockWeaponData data, Entity entity, EquippedItem item) : base(context, data, entity, item)
{
_data = data;
}
public override bool Execute(float delta)
{
if (_target != Entity.Target.Value)
{
_lock = 0;
_target = Entity.Target.Value;
}
if (Entity.Target.Value != null)
{
LockSpeed = Context.Evaluate(_data.LockSpeed, Item.EquippableItem, Entity);
SensorImpact = Context.Evaluate(_data.SensorImpact, Item.EquippableItem, Entity);
LockAngle = Context.Evaluate(_data.LockAngle, Item.EquippableItem, Entity);
DirectionImpact = Context.Evaluate(_data.DirectionImpact, Item.EquippableItem, Entity);
Decay = Context.Evaluate(_data.Decay, Item.EquippableItem, Entity);
var degrees = acos(dot(normalize(Entity.Target.Value.Position - Entity.Position), normalize(Entity.LookDirection))) * 57.2958f;
if (degrees < LockAngle)
{
var lerp = 1 - unlerp(0, 90, degrees);
_lock = saturate(_lock + pow(lerp, DirectionImpact) * delta * LockSpeed);
}
}
return base.Execute(delta);
}
public override void Activate()
{
if(_lock > .99f)
{
base.Activate();
}
}
}

View file

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 33fa49d85b53444c92c8c0979f2b95f9
timeCreated: 1611439099

View file

@ -38,8 +38,8 @@ public class MiningController : ControllerBase<Mining>, IBehavior, IPersistentBe
public new void Initialize()
{
_miningTool = Entity.GetBehavior<MiningTool>();
_toolSwitch = Entity.GetSwitch<MiningTool>();
// _miningTool = Entity.GetBehavior<MiningTool>();
// _toolSwitch = Entity.GetSwitch<MiningTool>();
base.Initialize();
}

View file

@ -0,0 +1,56 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
using System.Collections.Generic;
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
using static Unity.Mathematics.math;
// [MessagePackObject, JsonObject(MemberSerialization.OptIn)]
// public class ParticleEffectData : BehaviorData
// {
// [InspectablePrefab, JsonProperty("Particles"), Key(1)]
// public string ParticlesPrefab;
//
// [InspectableField, JsonProperty("thrust"), Key(2)]
// public bool AreaEmitter;
//
// public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
// {
// return new ParticleEffect(context, this, entity, item);
// }
// }
//
// public class ParticleEffect : IBehavior, IAlwaysUpdatedBehavior
// {
// private ParticleEffectData _data;
//
// public Entity Entity { get; }
// public EquippedItem Item { get; }
// public ItemManager Context { get; }
//
// public BehaviorData Data => _data;
//
// public float Emission { get; private set; }
//
// public ParticleEffect(ItemManager context, ParticleEffectData data, Entity entity, EquippedItem item)
// {
// Context = context;
// _data = data;
// Entity = entity;
// Item = item;
// }
//
// public float Execute(float delta, float input)
// {
// Emission = saturate(input);
// return input;
// }
//
// public void Update(float delta)
// {
// Emission = 0;
// }
// }

View file

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 3c26dc8102d619a429a178bc6670242d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -9,17 +9,20 @@ using Newtonsoft.Json;
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn)]
public class ProjectileWeaponData : InstantWeaponData
{
[InspectableField, JsonProperty("spread"), Key(9), RuntimeInspectable]
[InspectableField, JsonProperty("spread"), Key(16), RuntimeInspectable]
public PerformanceStat Spread = new PerformanceStat();
[InspectableField, JsonProperty("bulletInherit"), Key(10)]
[InspectableField, JsonProperty("bulletInherit"), Key(17)]
public float Inherit;
[InspectableField, JsonProperty("bulletVelocity"), Key(11), RuntimeInspectable]
[InspectableField, JsonProperty("bulletVelocity"), Key(18), RuntimeInspectable]
public PerformanceStat Velocity = new PerformanceStat();
[InspectableField, JsonProperty("auto"), Key(19)]
public bool Auto;
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
return new InstantWeapon(context, this, entity, item);
return Auto ? new AutoWeapon(context, this, entity, item) : new InstantWeapon(context, this, entity, item);
}
}

View file

@ -41,7 +41,7 @@ public class SurveyController : ControllerBase<Survey>, IBehavior, IPersistentBe
public new void Initialize()
{
_scanningTool = Entity.GetBehavior<ResourceScanner>();
_toolSwitch = Entity.GetSwitch<ResourceScanner>();
// _toolSwitch = Entity.GetSwitch<ResourceScanner>();
base.Initialize();
}

View file

@ -1,94 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
using System.Collections.Generic;
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
using static Unity.Mathematics.math;
[MessagePackObject, JsonObject(MemberSerialization.OptIn), Order(-11), RuntimeInspectable]
public class TargetLockData : BehaviorData
{
[InspectableField, JsonProperty("speed"), Key(1), RuntimeInspectable]
public PerformanceStat LockSpeed = new PerformanceStat();
[InspectableField, JsonProperty("sensorImpact"), Key(2)]
public PerformanceStat SensorImpact = new PerformanceStat();
[InspectableField, JsonProperty("threshold"), Key(3), RuntimeInspectable]
public PerformanceStat LockAngle = new PerformanceStat();
[InspectableField, JsonProperty("directionImpact"), Key(4)]
public PerformanceStat DirectionImpact = new PerformanceStat();
[InspectableField, JsonProperty("decay"), Key(5)]
public PerformanceStat Decay = new PerformanceStat();
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
return new TargetLock(context, this, entity, item);
}
}
public class TargetLock : IBehavior, IAlwaysUpdatedBehavior
{
private TargetLockData _data;
public Entity Entity { get; }
public EquippedItem Item { get; }
public ItemManager Context { get; }
public BehaviorData Data => _data;
public float Lock { get; private set; }
public float Speed { get; private set; }
public float SensorImpact { get; private set; }
public float Threshold { get; private set; }
public float DirectionImpact { get; private set; }
public float Decay { get; private set; }
private Entity _target;
public TargetLock(ItemManager context, TargetLockData data, Entity entity, EquippedItem item)
{
Context = context;
_data = data;
Entity = entity;
Item = item;
}
public bool Execute(float delta)
{
// TODO: Hook into sensory systems to influence lock speed
return Lock > .99f;
}
public void Update(float delta)
{
if (_target != Entity.Target.Value)
{
Lock = 0;
_target = Entity.Target.Value;
}
if (Entity.Target.Value != null)
{
Speed = Context.Evaluate(_data.LockSpeed, Item.EquippableItem, Entity);
SensorImpact = Context.Evaluate(_data.SensorImpact, Item.EquippableItem, Entity);
Threshold = Context.Evaluate(_data.LockAngle, Item.EquippableItem, Entity);
DirectionImpact = Context.Evaluate(_data.DirectionImpact, Item.EquippableItem, Entity);
Decay = Context.Evaluate(_data.Decay, Item.EquippableItem, Entity);
var degrees = acos(dot(normalize(Entity.Target.Value.Position - Entity.Position), normalize(Entity.LookDirection))) * 57.2958f;
if (degrees < Threshold)
{
var lerp = 1 - unlerp(0, 90, degrees);
Lock = saturate(Lock + pow(lerp, DirectionImpact) * delta * Speed);
return;
}
}
Lock = saturate(Lock - Decay * delta);
}
}

View file

@ -69,7 +69,9 @@ public class Thruster : IAnalogBehavior
Entity.Velocity -= Entity.Direction.Rotate(Item.EquippableItem.Rotation) * _input * Thrust / Entity.Mass * delta;
Entity.Direction = mul(Entity.Direction, Unity.Mathematics.float2x2.Rotate(_input * Torque * Thrust * Context.GameplaySettings.TorqueMultiplier / Entity.Mass * delta));
Item.AddHeat(_input * Context.Evaluate(_data.Heat, Item.EquippableItem, Entity) * delta);
Entity.VisibilitySources[this] = _input * Context.Evaluate(_data.Visibility, Item.EquippableItem, Entity);
var vis = _input * Context.Evaluate(_data.Visibility, Item.EquippableItem, Entity);
if(!Entity.VisibilitySources.ContainsKey(this) || vis > Entity.VisibilitySources[this])
Entity.VisibilitySources[this] = vis;
return true;
}
}

View file

@ -16,7 +16,7 @@ public class TriggerData : BehaviorData
}
}
public class Trigger : IBehavior
public class Trigger : IBehavior, IActivatedBehavior
{
private TriggerData _data;
@ -28,11 +28,6 @@ public class Trigger : IBehavior
public bool _pulled;
public void Pull()
{
_pulled = true;
}
public Trigger(ItemManager context, TriggerData data, Entity entity, EquippedItem item)
{
_data = data;
@ -55,4 +50,13 @@ public class Trigger : IBehavior
return false;
}
public void Activate()
{
_pulled = true;
}
public void Deactivate()
{
}
}

View file

@ -1,72 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
using static Unity.Mathematics.math;
[MessagePackObject, JsonObject(MemberSerialization.OptIn), RuntimeInspectable]
public class TurningData : BehaviorData
{
[InspectableField, JsonProperty("torque"), Key(1), RuntimeInspectable]
public PerformanceStat Torque = new PerformanceStat();
[InspectableField, JsonProperty("visibility"), Key(2)]
public PerformanceStat Visibility = new PerformanceStat();
[InspectableField, JsonProperty("heat"), Key(3)]
public PerformanceStat Heat = new PerformanceStat();
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
return new Turning(context, this, entity, item);
}
}
public class Turning : IAnalogBehavior
{
public Entity Entity { get; }
public EquippedItem Item { get; }
public ItemManager Context { get; }
public float Torque { get; private set; }
public float Axis
{
get => _input;
set => _input = clamp(value, -1, 1);
}
public BehaviorData Data => _data;
private TurningData _data;
private float _input;
public Turning(ItemManager context, TurningData data, Entity entity, EquippedItem item)
{
Context = context;
_data = data;
Entity = entity;
Item = item;
}
public void Initialize()
{
}
public bool Execute(float delta)
{
Torque = Context.Evaluate(_data.Torque, Item.EquippableItem, Entity);
Entity.Direction = mul(Entity.Direction, Unity.Mathematics.float2x2.Rotate(_input * Torque / Entity.Mass * delta));
Item.AddHeat(abs(_input) * Context.Evaluate(_data.Heat, Item.EquippableItem, Entity) * delta);
Entity.VisibilitySources[this] = abs(_input) * Context.Evaluate(_data.Visibility, Item.EquippableItem, Entity);
return true;
}
public void Remove()
{
}
}

View file

@ -1,3 +0,0 @@
fileFormatVersion: 2
guid: 21343037bc4842669c20b0606b03a622
timeCreated: 1586270198

View file

@ -22,7 +22,7 @@ public class TurretControllerData : BehaviorData
public class TurretController : IBehavior
{
private TurretControllerData _data;
private Dictionary<Trigger, WeaponData> _triggers = new Dictionary<Trigger, WeaponData>();
private List<Weapon> _weapons = new List<Weapon>();
public Entity EquippedEntity { get; }
public EquippedItem Item { get; }
@ -39,31 +39,23 @@ public class TurretController : IBehavior
var weapons = equippedEntity.Equipment.Where(e => e.Behaviors.Any(b => b.Data is WeaponData));
foreach (var weapon in weapons)
{
CheckWeapon(item);
CheckWeapon(weapon);
}
equippedEntity.Equipment.ObserveAdd().Subscribe(add => CheckWeapon(add.Value));
equippedEntity.Equipment.ObserveRemove().Subscribe(remove =>
{
foreach (var bg in remove.Value.BehaviorGroups)
if (_triggers.ContainsKey(bg.Trigger))
_triggers.Remove(bg.Trigger);
foreach (var b in remove.Value.Behaviors)
if (b is Weapon weapon)
_weapons.Remove(weapon);
});
}
private void CheckWeapon(EquippedItem item)
{
foreach (var bg in item.BehaviorGroups)
{
if (bg.Trigger != null)
{
foreach (var b in bg.Behaviors)
{
if(b.Data is WeaponData weaponData)
_triggers.Add(bg.Trigger, weaponData);
}
}
}
foreach (var b in item.Behaviors)
if (b is Weapon weapon)
_weapons.Add(weapon);
}
public bool Execute(float delta)
@ -74,14 +66,18 @@ public class TurretController : IBehavior
EquippedEntity.LookDirection = normalize(diff);
var dist = length(diff);
foreach (var x in _triggers)
foreach (var x in _weapons)
{
if (Context.Evaluate(x.Value.Range, x.Key.Item.EquippableItem, EquippedEntity) > dist &&
dot(EquippedEntity.HardpointTransforms[EquippedEntity.Hardpoints[x.Key.Item.Position.x, x.Key.Item.Position.y]].direction,
EquippedEntity.LookDirection) > .9f)
var data = x.Data as WeaponData;
var fire = dot(
EquippedEntity.HardpointTransforms[EquippedEntity.Hardpoints[x.Item.Position.x, x.Item.Position.y]].direction,
EquippedEntity.LookDirection) > .99f;
if (Context.Evaluate(data.Range, x.Item.EquippableItem, EquippedEntity) > dist && fire)
{
x.Key.Pull();
x.Activate();
}
else if (x.Firing)
x.Deactivate();
}
}
else

View file

@ -54,8 +54,6 @@ public class Visibility : IBehavior, IAlwaysUpdatedBehavior
if(Entity.VisibilitySources.ContainsKey(this))
{
Entity.VisibilitySources[this] *= Context.Evaluate(_data.VisibilityDecay, Item.EquippableItem, Entity);
if (Entity.VisibilitySources[this] < 0.01f) Entity.VisibilitySources.Remove(this);
}
}
}

View file

@ -3,6 +3,8 @@
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
using System;
using System.Collections.Generic;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
@ -28,66 +30,63 @@ public abstract class WeaponData : BehaviorData
[InspectablePrefab, JsonProperty("effect"), Key(6)]
public string EffectPrefab;
[InspectablePrefab, JsonProperty("energy"), Key(7), RuntimeInspectable]
public PerformanceStat Energy = new PerformanceStat();
[InspectablePrefab, JsonProperty("heat"), Key(8), RuntimeInspectable]
public PerformanceStat Heat = new PerformanceStat();
[InspectablePrefab, JsonProperty("visibility"), Key(9), RuntimeInspectable]
public PerformanceStat Visibility = new PerformanceStat();
[InspectableDatabaseLink(typeof(SimpleCommodityData)), JsonProperty("ammo"), Key(10), RuntimeInspectable]
public Guid AmmoType;
[InspectablePrefab, JsonProperty("magSize"), Key(11)]
public int MagazineSize;
[InspectablePrefab, JsonProperty("reloadTime"), Key(12)]
public float ReloadTime = 1;
}
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn), RuntimeInspectable]
public abstract class InstantWeaponData : WeaponData
public abstract class Weapon : IActivatedBehavior
{
[InspectableField, JsonProperty("burstCount"), Key(7), RuntimeInspectable]
public int BurstCount;
[InspectableField, JsonProperty("burstTime"), Key(8)]
public PerformanceStat BurstTime = new PerformanceStat();
}
public class InstantWeapon : IBehavior, IAlwaysUpdatedBehavior
{
private InstantWeaponData _data;
public int _burstCount;
public float _burstTimer;
private Entity Entity { get; }
private EquippedItem Item { get; }
private ItemManager Context { get; }
private WeaponData _data;
public Entity Entity { get; }
public EquippedItem Item { get; }
public ItemManager Context { get; }
public abstract int Ammo { get; }
public WeaponData WeaponData => _data;
public BehaviorData Data => _data;
public event Action OnFire;
protected bool _firing;
private float _burstTime;
public bool Firing
{
get => _firing;
}
public InstantWeapon(ItemManager context, InstantWeaponData c, Entity entity, EquippedItem item)
public Weapon(ItemManager context, WeaponData data, Entity entity, EquippedItem item)
{
Context = context;
_data = c;
Entity = entity;
Item = item;
_data = data;
}
public bool Execute(float delta)
public abstract bool Execute(float delta);
public virtual void Activate()
{
_burstCount = _data.BurstCount;
_burstTime = Context.Evaluate(_data.BurstTime, Item.EquippableItem, Entity) / _burstCount;
_burstTimer = 0;
Fire(delta);
return true;
_firing = true;
}
private void Fire(float delta)
public virtual void Deactivate()
{
_burstTimer -= delta;
while (_burstTimer < 0 && _burstCount > 0)
{
_burstCount--;
_burstTimer += _burstTime;
OnFire?.Invoke();
}
_firing = false;
}
public void Update(float delta)
{
if(_burstCount > 0)
Fire(delta);
}
}
}

View file

@ -54,7 +54,7 @@ public abstract class Entity
new Dictionary<HardpointData, (float3 position, float3 direction)>();
public Dictionary<HardpointData, float> HardpointArmor;
public readonly List<EquippedItem>[] TriggerGroups;
public readonly (List<IActivatedBehavior> behaviors, List<EquippedItem> items)[] TriggerGroups;
public List<IPopulationAssignment> PopulationAssignments = new List<IPopulationAssignment>();
@ -107,9 +107,9 @@ public abstract class Entity
Hull = hull;
Name = hull.Name;
MapEntity();
TriggerGroups = new List<EquippedItem>[itemManager.GameplaySettings.TriggerGroupCount];
TriggerGroups = new (List<IActivatedBehavior> triggers, List<EquippedItem> items)[itemManager.GameplaySettings.TriggerGroupCount];
for(int i=0; i<itemManager.GameplaySettings.TriggerGroupCount; i++)
TriggerGroups[i] = new List<EquippedItem>();
TriggerGroups[i] = (new List<IActivatedBehavior>(), new List<EquippedItem>());
ItemDestroyed = ItemDamage.Where(x => x.item.EquippableItem.Durability < .01f).Select(x=>x.item);
HullArmorDepleted = ArmorDamage.Where(x => Armor[x.pos.x, x.pos.y] < .01f).Select(x => x.pos);
@ -490,29 +490,53 @@ public abstract class Entity
yield return b;
}
public Switch GetSwitch<T>() where T : class, IBehavior
{
foreach (var equippedItem in Equipment)
foreach (var group in equippedItem.BehaviorGroups)
foreach(var behavior in group.Behaviors)
if (behavior is T)
return group.Switch;
return null;
}
public Trigger GetTrigger<T>() where T : class, IBehavior
{
foreach (var equippedItem in Equipment)
foreach (var group in equippedItem.BehaviorGroups)
foreach(var behavior in group.Behaviors)
if (behavior is T)
return group.Trigger;
return null;
}
// public IEnumerable<(T t, Switch s)> GetSwitch<T>() where T : class, IBehavior
// {
// foreach (var equippedItem in Equipment)
// foreach (var group in equippedItem.BehaviorGroups.Values)
// foreach(var behavior in group.Behaviors)
// if (behavior is T t)
// {
// var s = group.GetExposed<Switch>();
// if (s != null) yield return (t, s);
// }
// }
//
// public IEnumerable<(T behavior, Trigger trigger)> GetTrigger<T>() where T : class, IBehavior
// {
// foreach (var equippedItem in Equipment)
// foreach (var group in equippedItem.BehaviorGroups.Values)
// foreach(var behavior in group.Behaviors)
// if (behavior is T t)
// {
// var s = group.GetExposed<Trigger>();
// if (s != null) yield return (t, s);
// }
// }
//
// public IEnumerable<(T behavior, Axis axis)> GetAxis<T>() where T : class, IBehavior
// {
// foreach (var equippedItem in Equipment)
// foreach (var group in equippedItem.BehaviorGroups.Values)
// foreach(var behavior in group.Behaviors)
// if (behavior is T t)
// {
// var s = group.GetExposed<Axis>();
// if (s != null) yield return (t, s);
// }
// }
public virtual void Update(float delta)
{
var hullData = ItemManager.GetData(Hull) as HullData;
foreach (var v in VisibilitySources.Keys.ToArray())
{
VisibilitySources[v] *= max(1 - ItemManager.GameplaySettings.VisibilityDecay * delta, 0);
if (VisibilitySources[v] < 0.01f) VisibilitySources.Remove(v);
}
//float[,] newTemp = new float[hullData.Shape.Width,hullData.Shape.Height];
var radiation = 0f;
foreach (var v in hullData.Shape.Coordinates)
@ -632,7 +656,7 @@ public class EquippedItem
public IBehavior[] Behaviors;
public BehaviorGroup[] BehaviorGroups;
public Dictionary<int, BehaviorGroup> BehaviorGroups;
public float Conductivity { get; }
@ -670,17 +694,16 @@ public class EquippedItem
Behaviors = _data.Behaviors
.Select(bd => bd.CreateInstance(itemManager, entity, this))
.ToArray();
BehaviorGroups = Behaviors
.GroupBy(b => b.Data.Group)
.OrderBy(g=>g.Key)
.Select(g=> new BehaviorGroup {
.OrderBy(g => g.Key)
.ToDictionary(g => g.Key, g => new BehaviorGroup
{
Behaviors = g.ToArray(),
//Axis = (IAnalogBehavior) g.FirstOrDefault(b=>b is IAnalogBehavior),
Switch = (Switch) g.FirstOrDefault(b=>b is Switch),
Trigger = (Trigger) g.FirstOrDefault(b=>b is Trigger)
})
.ToArray();
// Switch = (Switch) g.FirstOrDefault(b => b is Switch),
// Trigger = (Trigger) g.FirstOrDefault(b => b is Trigger)
});
foreach (var behavior in Behaviors)
{
@ -710,7 +733,7 @@ public class EquippedItem
if (Online)
{
foreach (var group in BehaviorGroups)
foreach (var group in BehaviorGroups.Values)
{
foreach (var behavior in group.Behaviors)
{
@ -1016,7 +1039,28 @@ public class EquippedDockingBay : EquippedCargoBay
public class BehaviorGroup
{
public IBehavior[] Behaviors;
public Trigger Trigger;
public Switch Switch;
public T GetBehavior<T>() where T : class, IBehavior
{
foreach (var b in Behaviors)
{
if (!(b is T s)) continue;
return s;
}
return null;
}
public T GetExposed<T>() where T : class, IBehavior, IInteractiveBehavior
{
foreach (var b in Behaviors)
{
if (!(b is T s) || !((IInteractiveBehavior)b).Exposed) continue;
return s;
}
return null;
}
//public IAnalogBehavior Axis;
}

View file

@ -414,12 +414,6 @@ public static class ObjectExtensions
{
return (T)Copy((Object)original);
}
public static bool IntersectsWith(this Rect r1, Rect r2)
{
return (r2.x + r2.width >= r1.x && r2.x <= r1.x + r1.width) &&
(r2.y + r2.height >= r1.y && r2.y <= r1.y + r1.height);
}
}
public class ReferenceEqualityComparer : EqualityComparer<Object>

View file

@ -34,7 +34,8 @@ namespace JsonKnownTypes
if(_typesSettings.DiscriminatorToType.TryGetValue(discriminator, out var typeForObject))
return JsonConvert.DeserializeObject(jo.ToString(), typeForObject, SpecifiedSubclassConversion);
throw new NotImplementedException();
return null;
//throw new NotImplementedException();
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)

View file

@ -58,7 +58,7 @@ namespace RethinkDb.Driver.Net.Clustering
private EpsilonValueCalculator calc;
private float[] weights = null;
private Timer timer;
private System.Threading.Timer timer;
/// <summary>
/// Random value generator.
@ -158,7 +158,7 @@ namespace RethinkDb.Driver.Net.Clustering
public void StartDecayTimer()
{
var durationPerBucket = TimeSpan.FromTicks(decayDuration.Ticks / EpsilonBuckets);
this.timer = new Timer(PerformEpsilonGreedyDecay, null, Timeout.Infinite, Timeout.Infinite);
this.timer = new System.Threading.Timer(PerformEpsilonGreedyDecay, null, Timeout.Infinite, Timeout.Infinite);
//fire now.
this.timer.Change(TimeSpan.Zero, durationPerBucket);

View file

@ -1,4 +1,6 @@
using Unity.Mathematics;
using static Unity.Mathematics.math;
using float2 = Unity.Mathematics.float2;
namespace Unity.Tiny
{
@ -12,23 +14,25 @@ namespace Unity.Tiny
/// </summary>
public static Rect Default { get; } = new Rect()
{
x = 0f,
y = 0f,
width = 1f,
height = 1f
position = float2.zero,
size = float2(1,1)
};
public Rect(float x, float y, float width, float height)
{
this.x = x;
this.y = y;
this.width = width;
this.height = height;
position = float2(x, y);
size = float2(width, height);
}
public Rect(float2 position, float2 size)
{
this.position = position;
this.size = size;
}
public bool IsEmpty()
{
return !(width > 0.0f && height > 0.0f);
return !(size.x > 0.0f && size.y > 0.0f);
}
/// <summary>
@ -41,7 +45,7 @@ namespace Unity.Tiny
/// </remarks>
public bool Contains(float2 pos)
{
return pos.x >= x && pos.y >= y && pos.x < x + width && pos.y < y + height;
return pos.x >= position.x && pos.y >= position.y && pos.x < position.x + size.x && pos.y < position.y + size.y;
}
/// <summary>
@ -51,57 +55,46 @@ namespace Unity.Tiny
{
return new Rect
{
x = x + relative.x * width,
y = y + relative.y * height,
width = width * relative.width,
height = height * relative.height
position = float2(position.x + relative.position.x * size.x,position.y + relative.position.y * size.y) ,
size = float2(size.x * relative.size.x, size.y * relative.size.y)
};
}
public bool IntersectsWith(Rect r2)
{
return r2.position.x + r2.size.x >= position.x && r2.position.x <= position.x + size.x &&
r2.position.y + r2.size.y >= position.y && r2.position.y <= position.y + size.y;
}
public void Clamp(Rect r)
{
float x2 = x + width;
float y2 = y + height;
float rx2 = r.x + r.width;
float ry2 = r.y + r.height;
if (x < r.x) x = r.x;
float x2 = position.x + size.x;
float y2 = position.y + size.y;
float rx2 = r.position.x + r.size.x;
float ry2 = r.position.y + r.size.y;
if (position.x < r.position.x) position.x = r.position.x;
if (x2 > rx2) x2 = rx2;
if (y < r.y) y = r.y;
if (position.y < r.position.y) position.y = r.position.y;
if (y2 > ry2) y2 = ry2;
width = x2 - x;
if (width < 0.0f) width = 0.0f;
height = y2 - y;
if (height < 0.0f) height = 0.0f;
size.x = x2 - position.x;
if (size.x < 0.0f) size.x = 0.0f;
size.y = y2 - position.y;
if (size.y < 0.0f) size.y = 0.0f;
}
public float x;
public float y;
public float width;
public float height;
/// <summary>
/// The width and height of the rectangle.
/// </summary>
public float2 Size
{
get => new float2(width, this.height);
set
{
width = value.x;
height = value.y;
}
}
public float2 position;
public float2 size;
/// <summary>
/// The position of the center of the rectangle.
/// </summary>
public float2 Center
{
get => new float2(x + width / 2f, y + height/ 2f);
get => new float2(position.x + size.x / 2f, position.y + size.y/ 2f);
set
{
x = value.x - width / 2f;
y = value.y - height / 2f;
position.x = value.x - size.x / 2f;
position.y = value.y - size.y / 2f;
}
}

View file

@ -109,4 +109,5 @@ public class GameplaySettings
public ExponentialLerp LockSpinSpeed;
public float TorqueFloor;
public float TorqueMultiplier;
public float VisibilityDecay;
}

View file

@ -199,7 +199,7 @@ public class TradeMenu : MonoBehaviour
data => () => data.Mass.SignificantDigits(3),
data => data.Mass));
columns.Add(("Price", 1,
data => () => data.Price.ToString(),
data => () => data.Price.ToString("N0"),
data => data.Price));
columns.Add(("Size", 1,
data => () => $"{data.Shape.Width}x{data.Shape.Height}",

View file

@ -12,7 +12,7 @@ public class PlaceUIElementWorldspace : MonoBehaviour
{
public float NoiseAmplitude;
public float NoiseFrequency;
public RectTransform CanvasRectTransform;
public Canvas Canvas;
public float BorderPixels = 10;
public Vector3 Target;
@ -20,12 +20,14 @@ public class PlaceUIElementWorldspace : MonoBehaviour
private RectTransform _rectTransform;
private Transform _cameraTransform;
private float _noiseOffset;
private RectTransform _canvasRectTransform;
void Start()
{
// Get the rect transform
_rectTransform = GetComponent<RectTransform>();
_cameraTransform = Camera.main.transform;
_canvasRectTransform = Canvas.GetComponent<RectTransform>();
}
private void OnEnable()
@ -38,15 +40,12 @@ public class PlaceUIElementWorldspace : MonoBehaviour
/// </summary>
void LateUpdate()
{
if (Target == null)
return;
_noiseOffset += Time.deltaTime * NoiseFrequency;
Vector2 screenPoint = RectTransformUtility.WorldToScreenPoint(Camera.main, Target);
screenPoint *= Mathf.Sign(Vector3.Dot(_cameraTransform.forward, Target - _cameraTransform.position));
screenPoint += new Vector2(noise(_noiseOffset), noise(10 + _noiseOffset)) * NoiseAmplitude;
screenPoint = new Vector2(Mathf.Clamp(screenPoint.x, BorderPixels, Screen.width - BorderPixels),Mathf.Clamp(screenPoint.y, BorderPixels, Screen.height - BorderPixels));
_rectTransform.anchoredPosition = screenPoint - CanvasRectTransform.sizeDelta / 2f;
_rectTransform.anchoredPosition = screenPoint / Canvas.scaleFactor - _canvasRectTransform.sizeDelta / 2f;
}
}

View file

@ -1,4 +1,5 @@
using System.Collections;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using TMPro;
@ -83,8 +84,8 @@ public class SchematicDisplay : MonoBehaviour
public SchematicListElement ListElement;
public SchematicTriggerGroupElement TriggerGroupElement;
public IProgressBehavior Cooldown;
public ItemUsage ItemUsage;
public WeaponData WeaponData;
// public ItemUsage ItemUsage;
public Weapon Weapon;
}
public void ShowShip(Entity entity, Entity player = null)
@ -126,8 +127,8 @@ public class SchematicDisplay : MonoBehaviour
ListElement = ListElementPrototype.Instantiate<SchematicListElement>(),
TriggerGroupElement = _enemy ? null : TriggerGroupPrototype.Instantiate<SchematicTriggerGroupElement>(),
Cooldown = _enemy ? null : (IProgressBehavior) x.Behaviors.FirstOrDefault(b=> b is IProgressBehavior),
ItemUsage = _enemy ? null : (ItemUsage) x.Behaviors.FirstOrDefault(b=> b is ItemUsage),
WeaponData = (WeaponData) x.Behaviors.FirstOrDefault(b=>b.Data is WeaponData)?.Data
// ItemUsage = _enemy ? null : (ItemUsage) x.Behaviors.FirstOrDefault(b=> b is ItemUsage),
Weapon = (Weapon) x.Behaviors.FirstOrDefault(b=>b is Weapon)
})
.ToArray();
foreach (var x in _schematicItems)
@ -136,14 +137,14 @@ public class SchematicDisplay : MonoBehaviour
x.ListElement.Label.text = x.Item.EquippableItem.Name;
if (!_enemy)
{
x.ListElement.InfiniteAmmoIcon.gameObject.SetActive(x.ItemUsage == null);
x.ListElement.AmmoLabel.gameObject.SetActive(x.ItemUsage != null);
x.ListElement.InfiniteAmmoIcon.gameObject.SetActive(x.Weapon.WeaponData.AmmoType == Guid.Empty);
x.ListElement.AmmoLabel.gameObject.SetActive(x.Weapon.WeaponData.AmmoType != Guid.Empty);
foreach (var group in x.TriggerGroupElement.GroupBackgrounds)
group.color = TriggerGroupColor;
}
}
if (!_enemy)
UpdateTriggerGroups();
if (!_enemy)
UpdateTriggerGroups();
}
public void UpdateTriggerGroups()
@ -166,7 +167,7 @@ public class SchematicDisplay : MonoBehaviour
backgroundColor.a *= 2;
item.TriggerGroupElement.GroupBackgrounds[groupIndex].color = backgroundColor;
item.TriggerGroupElement.GroupLabel[groupIndex].color =
_entity.TriggerGroups[groupIndex].Contains(item.Item) ? Color.white : Color.gray;
_entity.TriggerGroups[groupIndex].items.Contains(item.Item) ? Color.white : Color.gray;
}
}
}
@ -270,15 +271,18 @@ public class SchematicDisplay : MonoBehaviour
if (x.Cooldown != null)
x.ListElement.CooldownFill.anchorMax = new Vector2(x.Cooldown.Progress, 1);
x.ListElement.DurabilityLabel.text = $"{(int)(x.Item.EquippableItem.Durability / itemData.Durability * 100)}%";
if (x.ItemUsage != null)
if (x.Weapon.WeaponData.AmmoType != Guid.Empty)
{
x.ListElement.AmmoLabel.text = _entity.CountItemsInCargo(((ItemUsageData)x.ItemUsage.Data).Item).ToString();
if(x.Weapon.WeaponData.MagazineSize > 1)
x.ListElement.AmmoLabel.text = x.Weapon.Ammo.ToString();
else
x.ListElement.AmmoLabel.text = _entity.CountItemsInCargo(x.Weapon.WeaponData.AmmoType).ToString();
}
}
if (x.WeaponData != null)
if (x.Weapon.WeaponData != null)
{
x.ListElement.RangeLabel.text = ((int) _entity.ItemManager.Evaluate(x.WeaponData.Range, x.Item.EquippableItem, _entity)).ToString();
x.ListElement.RangeLabel.text = ((int) _entity.ItemManager.Evaluate(x.Weapon.WeaponData.Range, x.Item.EquippableItem, _entity)).ToString();
}
}
}

View file

@ -157,7 +157,6 @@
<Compile Include="Assets\Scripts\ServerShared\MathResolver.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\RethinkDb.Driver\Generated\Ast\Monday.cs" />
<Compile Include="Assets\Scripts\ServerShared\Corporations.cs" />
<Compile Include="Assets\Scripts\ServerShared\Behaviors\Hitscan.cs" />
<Compile Include="Assets\Scripts\ServerShared\ItemInstance.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\RethinkDb.Driver\Generated\Ast\Desc.cs" />
<Compile Include="Assets\Scripts\ServerShared\Behaviors\TurretController.cs" />
@ -284,7 +283,6 @@
<Compile Include="Assets\Scripts\ServerShared\NIH\RethinkDb.Driver.Linq\Attributes\PrimaryIndexAttribute.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\RethinkDb.Driver\Generated\Ast\EpochTime.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\LiteNetLib\NetPacketPool.cs" />
<Compile Include="Assets\Scripts\ServerShared\Behaviors\Turning.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\LiteNetLib\NetSocket.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\RethinkDb.Driver.Linq\WhereClauseParsers\SubQueryVisitor\FirstSubQueryVisitor.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\RethinkDb.Driver\Generated\Ast\Ceil.cs" />
@ -315,7 +313,6 @@
<Compile Include="Assets\Scripts\ServerShared\Behaviors\StatModifier.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\RethinkDb.Driver\Generated\Ast\Friday.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\RethinkDb.Driver\Generated\Ast\Nth.cs" />
<Compile Include="Assets\Scripts\ServerShared\Behaviors\TargetLock.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\RethinkDb.Driver\Net\Clustering\IPoolingStrategy.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\RethinkDb.Driver\Generated\ReqlClientError.cs" />
<Compile Include="Assets\Scripts\ServerShared\Behaviors\EnergyDraw.cs" />
@ -519,6 +516,11 @@
<Compile Include="Assets\Scripts\ServerShared\NIH\LinqFaster\SequenceEqual.cs" />
<Compile Include="Assets\Scripts\ServerShared\NIH\LinqFaster\Skip.cs" />
<Compile Include="Assets\Scripts\ServerShared\ItemManager.cs" />
<Compile Include="Assets\Scripts\ServerShared\Behaviors\ParticleEffect.cs" />
<Compile Include="Assets\Scripts\ServerShared\Behaviors\InstantWeapon.cs" />
<Compile Include="Assets\Scripts\ServerShared\Behaviors\ChargedWeapon.cs" />
<Compile Include="Assets\Scripts\ServerShared\Behaviors\AutoWeapon.cs" />
<Compile Include="Assets\Scripts\ServerShared\Behaviors\LockWeapon.cs" />
<None Include="Assets\Scripts\ServerShared\NIH\LinqFaster\readme.txt" />
<None Include="Assets\Scripts\ServerShared\Economy.Shared.Unity.asmdef" />
<Reference Include="System.Threading.Tasks.Extensions">

View file

@ -0,0 +1,740 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<LangVersion>latest</LangVersion>
<_TargetFrameworkDirectories>non_empty_path_generated_by_unity.rider.package</_TargetFrameworkDirectories>
<_FullFrameworkReferenceAssemblyPaths>non_empty_path_generated_by_unity.rider.package</_FullFrameworkReferenceAssemblyPaths>
<DisableHandlePackageFileConflicts>true</DisableHandlePackageFileConflicts>
<CodeAnalysisRuleSet></CodeAnalysisRuleSet>
</PropertyGroup>
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>10.0.20506</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<RootNamespace></RootNamespace>
<ProjectGuid>{a4e83803-35fe-e54d-5974-2af6595e46a5}</ProjectGuid>
<ProjectTypeGuids>{E097FAD1-6243-4DAD-9C02-E9B9EFC3FFC1};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<AssemblyName>com.alelievr.NodeGraphProcessor.Editor</AssemblyName>
<TargetFrameworkVersion>v4.7.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<BaseDirectory>.</BaseDirectory>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>Temp\Bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE;UNITY_2020_2_1;UNITY_2020_2;UNITY_2020;UNITY_5_3_OR_NEWER;UNITY_5_4_OR_NEWER;UNITY_5_5_OR_NEWER;UNITY_5_6_OR_NEWER;UNITY_2017_1_OR_NEWER;UNITY_2017_2_OR_NEWER;UNITY_2017_3_OR_NEWER;UNITY_2017_4_OR_NEWER;UNITY_2018_1_OR_NEWER;UNITY_2018_2_OR_NEWER;UNITY_2018_3_OR_NEWER;UNITY_2018_4_OR_NEWER;UNITY_2019_1_OR_NEWER;UNITY_2019_2_OR_NEWER;UNITY_2019_3_OR_NEWER;UNITY_2019_4_OR_NEWER;UNITY_2020_1_OR_NEWER;UNITY_2020_2_OR_NEWER;PLATFORM_ARCH_64;UNITY_64;UNITY_INCLUDE_TESTS;USE_SEARCH_ENGINE_API;SCENE_TEMPLATE_MODULE;ENABLE_AR;ENABLE_AUDIO;ENABLE_CACHING;ENABLE_CLOTH;ENABLE_EVENT_QUEUE;ENABLE_MICROPHONE;ENABLE_MULTIPLE_DISPLAYS;ENABLE_PHYSICS;ENABLE_TEXTURE_STREAMING;ENABLE_VIRTUALTEXTURING;ENABLE_UNET;ENABLE_LZMA;ENABLE_UNITYEVENTS;ENABLE_VR;ENABLE_WEBCAM;ENABLE_UNITYWEBREQUEST;ENABLE_WWW;ENABLE_CLOUD_SERVICES;ENABLE_CLOUD_SERVICES_COLLAB;ENABLE_CLOUD_SERVICES_COLLAB_SOFTLOCKS;ENABLE_CLOUD_SERVICES_ADS;ENABLE_CLOUD_SERVICES_USE_WEBREQUEST;ENABLE_CLOUD_SERVICES_CRASH_REPORTING;ENABLE_CLOUD_SERVICES_PURCHASING;ENABLE_CLOUD_SERVICES_ANALYTICS;ENABLE_CLOUD_SERVICES_UNET;ENABLE_CLOUD_SERVICES_BUILD;ENABLE_CLOUD_LICENSE;ENABLE_EDITOR_HUB_LICENSE;ENABLE_WEBSOCKET_CLIENT;ENABLE_DIRECTOR_AUDIO;ENABLE_DIRECTOR_TEXTURE;ENABLE_MANAGED_JOBS;ENABLE_MANAGED_TRANSFORM_JOBS;ENABLE_MANAGED_ANIMATION_JOBS;ENABLE_MANAGED_AUDIO_JOBS;INCLUDE_DYNAMIC_GI;ENABLE_MONO_BDWGC;ENABLE_SCRIPTING_GC_WBARRIERS;PLATFORM_SUPPORTS_MONO;RENDER_SOFTWARE_CURSOR;ENABLE_VIDEO;PLATFORM_STANDALONE;PLATFORM_STANDALONE_WIN;UNITY_STANDALONE_WIN;UNITY_STANDALONE;ENABLE_RUNTIME_GI;ENABLE_MOVIES;ENABLE_NETWORK;ENABLE_CRUNCH_TEXTURE_COMPRESSION;ENABLE_OUT_OF_PROCESS_CRASH_HANDLER;ENABLE_CLUSTER_SYNC;ENABLE_CLUSTERINPUT;PLATFORM_UPDATES_TIME_OUTSIDE_OF_PLAYER_LOOP;GFXDEVICE_WAITFOREVENT_MESSAGEPUMP;ENABLE_WEBSOCKET_HOST;ENABLE_MONO;NET_4_6;ENABLE_PROFILER;UNITY_ASSERTIONS;UNITY_EDITOR;UNITY_EDITOR_64;UNITY_EDITOR_WIN;ENABLE_UNITY_COLLECTIONS_CHECKS;ENABLE_BURST_AOT;UNITY_TEAM_LICENSE;ENABLE_CUSTOM_RENDER_TEXTURE;ENABLE_DIRECTOR;ENABLE_LOCALIZATION;ENABLE_SPRITES;ENABLE_TERRAIN;ENABLE_TILEMAP;ENABLE_TIMELINE;ENABLE_INPUT_SYSTEM;UNITY_POST_PROCESSING_STACK_V2;TEST_MSAGL;REPORTING;PERSISTENCE;SUBSTANCE_PLUGIN_ENABLED;CSHARP_7_OR_LATER;CSHARP_7_3_OR_NEWER</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoWarn></NoWarn>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>Temp\bin\Release\</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoWarn></NoWarn>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup>
<NoConfig>true</NoConfig>
<NoStdLib>true</NoStdLib>
<AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>
<ImplicitlyExpandNETStandardFacades>false</ImplicitlyExpandNETStandardFacades>
<ImplicitlyExpandDesignTimeFacades>false</ImplicitlyExpandDesignTimeFacades>
</PropertyGroup>
<ItemGroup>
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\ToolbarView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\BaseGraphView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\ProcessorView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\NodeInspectorObject.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\NodeBadgeView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\ParameterNodeView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Utils\FieldFactory.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\EdgeView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\BaseStackNodeView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Utils\CopyPasteHelper.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\ExposedParameterFieldView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\MiniMapView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\BaseGraphWindow.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\RelayNodeView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\GraphInspector.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\EditorAttributes.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\BaseNodeView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Utils\StackNodeViewProvider.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\CreateNodeMenuWindow.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\ExposedParameterView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Utils\BaseEdgeConnector.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\GroupView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Utils\NodeProvider.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Callbacks\OnBaseGraphDeleted.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\PinnedElementView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Utils\BaseEdgeDragHelper.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\NodeSettingsView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Logic\EdgeConnectorListener.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\ExposedParameterPropertyView.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Callbacks\NodeGraphProcessorMenuItems.cs" />
<Compile Include="Assets\Scripts\Editor\NodeGraph\Views\PortView.cs" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\GroupView.uss" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorElements\PinnedElement.uxml" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\NodeSettings.uss" />
<None Include="Assets\Scripts\Editor\NodeGraph\com.alelievr.NodeGraphProcessor.Editor.asmdef" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\ExposedParameterView.uss" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\UXML\NodeSettings.uxml" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\BaseGraphView.uss" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\InspectorView.uss" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\EdgeView.uss" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\NodeTemplate.cs.txt" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\BaseNodeView.uss" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\NodeViewTemplate.cs.txt" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\RelayNode.uss" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\BaseStackNodeView.uss" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\PinnedElementView.uss" />
<None Include="Assets\Scripts\Editor\NodeGraph\Resources\GraphProcessorStyles\PortView.uss" />
<Reference Include="UnityEngine">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ARModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ARModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AccessibilityModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AccessibilityModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AndroidJNIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AndroidJNIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AnimationModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AnimationModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AssetBundleModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AssetBundleModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AudioModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AudioModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ClothModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClothModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ClusterInputModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClusterInputModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ClusterRendererModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClusterRendererModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.CoreModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.CoreModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.CrashReportingModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.CrashReportingModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.DSPGraphModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.DSPGraphModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.DirectorModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.DirectorModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.GIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.GIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.GameCenterModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.GameCenterModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.GridModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.GridModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.HotReloadModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.HotReloadModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.IMGUIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.IMGUIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ImageConversionModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ImageConversionModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.InputModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.InputModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.InputLegacyModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.InputLegacyModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.JSONSerializeModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.JSONSerializeModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.LocalizationModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.LocalizationModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ParticleSystemModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ParticleSystemModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.PerformanceReportingModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.PerformanceReportingModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.PhysicsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.PhysicsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.Physics2DModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.Physics2DModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ProfilerModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ProfilerModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ScreenCaptureModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ScreenCaptureModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.SharedInternalsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.SharedInternalsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.SpriteMaskModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.SpriteMaskModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.SpriteShapeModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.SpriteShapeModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.StreamingModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.StreamingModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.SubstanceModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.SubstanceModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.SubsystemsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.SubsystemsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TLSModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TLSModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TerrainModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TerrainModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TerrainPhysicsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TerrainPhysicsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TextCoreModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TextCoreModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TextRenderingModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TextRenderingModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TilemapModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TilemapModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UIElementsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UIElementsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UIElementsNativeModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UIElementsNativeModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UNETModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UNETModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UmbraModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UmbraModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityAnalyticsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityAnalyticsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityConnectModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityConnectModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityCurlModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityCurlModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityTestProtocolModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityTestProtocolModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestAssetBundleModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestAssetBundleModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestAudioModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestAudioModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestTextureModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestTextureModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestWWWModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestWWWModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.VFXModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.VFXModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.VRModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.VRModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.VehiclesModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.VehiclesModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.VideoModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.VideoModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.VirtualTexturingModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.VirtualTexturingModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.WindModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.WindModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.XRModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.XRModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.CoreModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.CoreModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.GraphViewModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.GraphViewModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.PackageManagerUIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.PackageManagerUIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.SceneTemplateModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.SceneTemplateModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UIElementsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.UIElementsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UIElementsSamplesModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.UIElementsSamplesModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UIServiceModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.UIServiceModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UnityConnectModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.UnityConnectModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.Graphs">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEditor.Graphs.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.WindowsStandalone.Extensions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/PlaybackEngines/WindowsStandaloneSupport/UnityEditor.WindowsStandalone.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="Remotion.Linq">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/Remotion.Linq.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System.Memory">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/System.Memory.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Abstractions">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
</Reference>
<Reference Include="nunit.framework">
<HintPath>E:/Projects/Aetheria-Economy/Library/PackageCache/com.unity.ext.nunit@1.0.5/net35/unity-custom/nunit.framework.dll</HintPath>
</Reference>
<Reference Include="Google.Protobuf">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/Google.Protobuf/lib/net45/Google.Protobuf.dll</HintPath>
</Reference>
<Reference Include="System.Buffers">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/System.Buffers.dll</HintPath>
</Reference>
<Reference Include="Unity.Burst.Unsafe">
<HintPath>E:/Projects/Aetheria-Economy/Library/PackageCache/com.unity.burst@1.4.3/Unity.Burst.Unsafe.dll</HintPath>
</Reference>
<Reference Include="QuickGraph">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/QuickGraph.dll</HintPath>
</Reference>
<Reference Include="Substance.Game">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Allegorithmic/Plugins/Substance.Game.dll</HintPath>
</Reference>
<Reference Include="SourceUnityLib">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Allegorithmic/Plugins/Substance/Substance Source/Editor/SourceUnityLib.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="Substance.Editor">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Allegorithmic/Plugins/Substance/Substance Engine/Editor/Substance.Editor.dll</HintPath>
</Reference>
<Reference Include="mscorlib">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/mscorlib.dll</HintPath>
</Reference>
<Reference Include="System">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.dll</HintPath>
</Reference>
<Reference Include="System.Core">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Core.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Runtime.Serialization.dll</HintPath>
</Reference>
<Reference Include="System.Xml">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Xml.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Xml.Linq.dll</HintPath>
</Reference>
<Reference Include="System.Numerics">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Numerics.dll</HintPath>
</Reference>
<Reference Include="System.Numerics.Vectors">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Net.Http.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Microsoft.CSharp.dll</HintPath>
</Reference>
<Reference Include="System.Data">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Data.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Win32.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/Microsoft.Win32.Primitives.dll</HintPath>
</Reference>
<Reference Include="netstandard">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/netstandard.dll</HintPath>
</Reference>
<Reference Include="System.AppContext">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.AppContext.dll</HintPath>
</Reference>
<Reference Include="System.Collections.Concurrent">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Collections.Concurrent.dll</HintPath>
</Reference>
<Reference Include="System.Collections">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Collections.dll</HintPath>
</Reference>
<Reference Include="System.Collections.NonGeneric">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Collections.NonGeneric.dll</HintPath>
</Reference>
<Reference Include="System.Collections.Specialized">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Collections.Specialized.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.Annotations">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ComponentModel.Annotations.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ComponentModel.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.EventBasedAsync">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ComponentModel.EventBasedAsync.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ComponentModel.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.TypeConverter">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ComponentModel.TypeConverter.dll</HintPath>
</Reference>
<Reference Include="System.Console">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Console.dll</HintPath>
</Reference>
<Reference Include="System.Data.Common">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Data.Common.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.Contracts">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.Contracts.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.Debug">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.Debug.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.FileVersionInfo">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.FileVersionInfo.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.Process">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.Process.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.StackTrace">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.StackTrace.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.TextWriterTraceListener">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.TextWriterTraceListener.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.Tools">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.Tools.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.TraceSource">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.TraceSource.dll</HintPath>
</Reference>
<Reference Include="System.Drawing.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Drawing.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.Dynamic.Runtime">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Dynamic.Runtime.dll</HintPath>
</Reference>
<Reference Include="System.Globalization.Calendars">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Globalization.Calendars.dll</HintPath>
</Reference>
<Reference Include="System.Globalization">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Globalization.dll</HintPath>
</Reference>
<Reference Include="System.Globalization.Extensions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Globalization.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.IO.Compression.ZipFile">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.Compression.ZipFile.dll</HintPath>
</Reference>
<Reference Include="System.IO">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.dll</HintPath>
</Reference>
<Reference Include="System.IO.FileSystem">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.FileSystem.dll</HintPath>
</Reference>
<Reference Include="System.IO.FileSystem.DriveInfo">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.FileSystem.DriveInfo.dll</HintPath>
</Reference>
<Reference Include="System.IO.FileSystem.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.FileSystem.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.IO.FileSystem.Watcher">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.FileSystem.Watcher.dll</HintPath>
</Reference>
<Reference Include="System.IO.IsolatedStorage">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.IsolatedStorage.dll</HintPath>
</Reference>
<Reference Include="System.IO.MemoryMappedFiles">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.MemoryMappedFiles.dll</HintPath>
</Reference>
<Reference Include="System.IO.Pipes">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.Pipes.dll</HintPath>
</Reference>
<Reference Include="System.IO.UnmanagedMemoryStream">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.UnmanagedMemoryStream.dll</HintPath>
</Reference>
<Reference Include="System.Linq">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Linq.dll</HintPath>
</Reference>
<Reference Include="System.Linq.Expressions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Linq.Expressions.dll</HintPath>
</Reference>
<Reference Include="System.Linq.Parallel">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Linq.Parallel.dll</HintPath>
</Reference>
<Reference Include="System.Linq.Queryable">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Linq.Queryable.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http.Rtc">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Http.Rtc.dll</HintPath>
</Reference>
<Reference Include="System.Net.NameResolution">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.NameResolution.dll</HintPath>
</Reference>
<Reference Include="System.Net.NetworkInformation">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.NetworkInformation.dll</HintPath>
</Reference>
<Reference Include="System.Net.Ping">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Ping.dll</HintPath>
</Reference>
<Reference Include="System.Net.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.Net.Requests">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Requests.dll</HintPath>
</Reference>
<Reference Include="System.Net.Security">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Security.dll</HintPath>
</Reference>
<Reference Include="System.Net.Sockets">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Sockets.dll</HintPath>
</Reference>
<Reference Include="System.Net.WebHeaderCollection">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.WebHeaderCollection.dll</HintPath>
</Reference>
<Reference Include="System.Net.WebSockets.Client">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.WebSockets.Client.dll</HintPath>
</Reference>
<Reference Include="System.Net.WebSockets">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.WebSockets.dll</HintPath>
</Reference>
<Reference Include="System.ObjectModel">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ObjectModel.dll</HintPath>
</Reference>
<Reference Include="System.Reflection">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.dll</HintPath>
</Reference>
<Reference Include="System.Reflection.Emit">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.Emit.dll</HintPath>
</Reference>
<Reference Include="System.Reflection.Emit.ILGeneration">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.Emit.ILGeneration.dll</HintPath>
</Reference>
<Reference Include="System.Reflection.Emit.Lightweight">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.Emit.Lightweight.dll</HintPath>
</Reference>
<Reference Include="System.Reflection.Extensions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Reflection.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.Resources.Reader">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Resources.Reader.dll</HintPath>
</Reference>
<Reference Include="System.Resources.ResourceManager">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Resources.ResourceManager.dll</HintPath>
</Reference>
<Reference Include="System.Resources.Writer">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Resources.Writer.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.VisualC">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.CompilerServices.VisualC.dll</HintPath>
</Reference>
<Reference Include="System.Runtime">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Extensions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Handles">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Handles.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.InteropServices">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.InteropServices.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.InteropServices.RuntimeInformation">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.InteropServices.RuntimeInformation.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.InteropServices.WindowsRuntime">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.InteropServices.WindowsRuntime.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Numerics">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Numerics.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization.Formatters">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Serialization.Formatters.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization.Json">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Serialization.Json.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Serialization.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization.Xml">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Serialization.Xml.dll</HintPath>
</Reference>
<Reference Include="System.Security.Claims">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Claims.dll</HintPath>
</Reference>
<Reference Include="System.Security.Cryptography.Algorithms">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Cryptography.Algorithms.dll</HintPath>
</Reference>
<Reference Include="System.Security.Cryptography.Csp">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Cryptography.Csp.dll</HintPath>
</Reference>
<Reference Include="System.Security.Cryptography.Encoding">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Cryptography.Encoding.dll</HintPath>
</Reference>
<Reference Include="System.Security.Cryptography.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Cryptography.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.Security.Cryptography.X509Certificates">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Cryptography.X509Certificates.dll</HintPath>
</Reference>
<Reference Include="System.Security.Principal">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Principal.dll</HintPath>
</Reference>
<Reference Include="System.Security.SecureString">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.SecureString.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel.Duplex">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ServiceModel.Duplex.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel.Http">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ServiceModel.Http.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel.NetTcp">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ServiceModel.NetTcp.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ServiceModel.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel.Security">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ServiceModel.Security.dll</HintPath>
</Reference>
<Reference Include="System.Text.Encoding">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Text.Encoding.dll</HintPath>
</Reference>
<Reference Include="System.Text.Encoding.Extensions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Text.Encoding.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Text.RegularExpressions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Text.RegularExpressions.dll</HintPath>
</Reference>
<Reference Include="System.Threading">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Overlapped">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.Overlapped.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.Tasks.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Parallel">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.Tasks.Parallel.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Thread">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.Thread.dll</HintPath>
</Reference>
<Reference Include="System.Threading.ThreadPool">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.ThreadPool.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Timer">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.Timer.dll</HintPath>
</Reference>
<Reference Include="System.ValueTuple">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Xml.ReaderWriter">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.ReaderWriter.dll</HintPath>
</Reference>
<Reference Include="System.Xml.XDocument">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XDocument.dll</HintPath>
</Reference>
<Reference Include="System.Xml.XmlDocument">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XmlDocument.dll</HintPath>
</Reference>
<Reference Include="System.Xml.XmlSerializer">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XmlSerializer.dll</HintPath>
</Reference>
<Reference Include="System.Xml.XPath">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XPath.dll</HintPath>
</Reference>
<Reference Include="System.Xml.XPath.XDocument">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XPath.XDocument.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>E:/Projects/Aetheria-Economy/Library/ScriptAssemblies/UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>E:/Projects/Aetheria-Economy/Library/ScriptAssemblies/UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TestRunner">
<HintPath>E:/Projects/Aetheria-Economy/Library/ScriptAssemblies/UnityEngine.TestRunner.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.TestRunner">
<HintPath>E:/Projects/Aetheria-Economy/Library/ScriptAssemblies/UnityEditor.TestRunner.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View file

@ -0,0 +1,712 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<LangVersion>latest</LangVersion>
<_TargetFrameworkDirectories>non_empty_path_generated_by_unity.rider.package</_TargetFrameworkDirectories>
<_FullFrameworkReferenceAssemblyPaths>non_empty_path_generated_by_unity.rider.package</_FullFrameworkReferenceAssemblyPaths>
<DisableHandlePackageFileConflicts>true</DisableHandlePackageFileConflicts>
<CodeAnalysisRuleSet></CodeAnalysisRuleSet>
</PropertyGroup>
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>10.0.20506</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<RootNamespace></RootNamespace>
<ProjectGuid>{4cc9ece5-0f74-bceb-733d-48f6e84c547b}</ProjectGuid>
<ProjectTypeGuids>{E097FAD1-6243-4DAD-9C02-E9B9EFC3FFC1};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<AssemblyName>com.alelievr.NodeGraphProcessor.Runtime</AssemblyName>
<TargetFrameworkVersion>v4.7.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<BaseDirectory>.</BaseDirectory>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>Temp\Bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE;UNITY_2020_2_1;UNITY_2020_2;UNITY_2020;UNITY_5_3_OR_NEWER;UNITY_5_4_OR_NEWER;UNITY_5_5_OR_NEWER;UNITY_5_6_OR_NEWER;UNITY_2017_1_OR_NEWER;UNITY_2017_2_OR_NEWER;UNITY_2017_3_OR_NEWER;UNITY_2017_4_OR_NEWER;UNITY_2018_1_OR_NEWER;UNITY_2018_2_OR_NEWER;UNITY_2018_3_OR_NEWER;UNITY_2018_4_OR_NEWER;UNITY_2019_1_OR_NEWER;UNITY_2019_2_OR_NEWER;UNITY_2019_3_OR_NEWER;UNITY_2019_4_OR_NEWER;UNITY_2020_1_OR_NEWER;UNITY_2020_2_OR_NEWER;PLATFORM_ARCH_64;UNITY_64;UNITY_INCLUDE_TESTS;USE_SEARCH_ENGINE_API;SCENE_TEMPLATE_MODULE;ENABLE_AR;ENABLE_AUDIO;ENABLE_CACHING;ENABLE_CLOTH;ENABLE_EVENT_QUEUE;ENABLE_MICROPHONE;ENABLE_MULTIPLE_DISPLAYS;ENABLE_PHYSICS;ENABLE_TEXTURE_STREAMING;ENABLE_VIRTUALTEXTURING;ENABLE_UNET;ENABLE_LZMA;ENABLE_UNITYEVENTS;ENABLE_VR;ENABLE_WEBCAM;ENABLE_UNITYWEBREQUEST;ENABLE_WWW;ENABLE_CLOUD_SERVICES;ENABLE_CLOUD_SERVICES_COLLAB;ENABLE_CLOUD_SERVICES_COLLAB_SOFTLOCKS;ENABLE_CLOUD_SERVICES_ADS;ENABLE_CLOUD_SERVICES_USE_WEBREQUEST;ENABLE_CLOUD_SERVICES_CRASH_REPORTING;ENABLE_CLOUD_SERVICES_PURCHASING;ENABLE_CLOUD_SERVICES_ANALYTICS;ENABLE_CLOUD_SERVICES_UNET;ENABLE_CLOUD_SERVICES_BUILD;ENABLE_CLOUD_LICENSE;ENABLE_EDITOR_HUB_LICENSE;ENABLE_WEBSOCKET_CLIENT;ENABLE_DIRECTOR_AUDIO;ENABLE_DIRECTOR_TEXTURE;ENABLE_MANAGED_JOBS;ENABLE_MANAGED_TRANSFORM_JOBS;ENABLE_MANAGED_ANIMATION_JOBS;ENABLE_MANAGED_AUDIO_JOBS;INCLUDE_DYNAMIC_GI;ENABLE_MONO_BDWGC;ENABLE_SCRIPTING_GC_WBARRIERS;PLATFORM_SUPPORTS_MONO;RENDER_SOFTWARE_CURSOR;ENABLE_VIDEO;PLATFORM_STANDALONE;PLATFORM_STANDALONE_WIN;UNITY_STANDALONE_WIN;UNITY_STANDALONE;ENABLE_RUNTIME_GI;ENABLE_MOVIES;ENABLE_NETWORK;ENABLE_CRUNCH_TEXTURE_COMPRESSION;ENABLE_OUT_OF_PROCESS_CRASH_HANDLER;ENABLE_CLUSTER_SYNC;ENABLE_CLUSTERINPUT;PLATFORM_UPDATES_TIME_OUTSIDE_OF_PLAYER_LOOP;GFXDEVICE_WAITFOREVENT_MESSAGEPUMP;ENABLE_WEBSOCKET_HOST;ENABLE_MONO;NET_4_6;ENABLE_PROFILER;UNITY_ASSERTIONS;UNITY_EDITOR;UNITY_EDITOR_64;UNITY_EDITOR_WIN;ENABLE_UNITY_COLLECTIONS_CHECKS;ENABLE_BURST_AOT;UNITY_TEAM_LICENSE;ENABLE_CUSTOM_RENDER_TEXTURE;ENABLE_DIRECTOR;ENABLE_LOCALIZATION;ENABLE_SPRITES;ENABLE_TERRAIN;ENABLE_TILEMAP;ENABLE_TIMELINE;ENABLE_INPUT_SYSTEM;UNITY_POST_PROCESSING_STACK_V2;TEST_MSAGL;REPORTING;PERSISTENCE;SUBSTANCE_PLUGIN_ENABLED;CSHARP_7_OR_LATER;CSHARP_7_3_OR_NEWER</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoWarn></NoWarn>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>Temp\bin\Release\</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoWarn></NoWarn>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup>
<NoConfig>true</NoConfig>
<NoStdLib>true</NoStdLib>
<AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>
<ImplicitlyExpandNETStandardFacades>false</ImplicitlyExpandNETStandardFacades>
<ImplicitlyExpandDesignTimeFacades>false</ImplicitlyExpandDesignTimeFacades>
</PropertyGroup>
<ItemGroup>
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Elements\Group.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Elements\RelayNode.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Utils\SerializableEdge.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Elements\NodePort.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Processing\BaseGraphProcessor.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Elements\BaseStackNode.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Processing\JobGraphProcessor.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Utils\AppDomainExtension.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Utils\TypeExtension.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Graph\BaseGraph.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Utils\SerrializableObject.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Utils\JsonSerializer.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Utils\MessageType.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Processing\ProcessGraphProcessor.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Elements\BaseNode.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Utils\ExceptionToLog.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\PackageInfo.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Graph\Attributes.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Processing\TypeAdapter.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Processing\CustomPortIO.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Elements\PinnedElement.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Utils\SerializableType.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Elements\ParameterNode.cs" />
<Compile Include="Assets\Scripts\ServerShared\NodeGraph\Utils\GraphUtils.cs" />
<None Include="Assets\Scripts\ServerShared\NodeGraph\com.alelievr.NodeGraphProcessor.Runtime.asmdef" />
<Reference Include="UnityEngine">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ARModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ARModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AccessibilityModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AccessibilityModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AndroidJNIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AndroidJNIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AnimationModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AnimationModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AssetBundleModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AssetBundleModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.AudioModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.AudioModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ClothModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClothModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ClusterInputModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClusterInputModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ClusterRendererModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClusterRendererModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.CoreModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.CoreModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.CrashReportingModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.CrashReportingModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.DSPGraphModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.DSPGraphModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.DirectorModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.DirectorModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.GIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.GIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.GameCenterModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.GameCenterModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.GridModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.GridModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.HotReloadModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.HotReloadModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.IMGUIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.IMGUIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ImageConversionModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ImageConversionModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.InputModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.InputModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.InputLegacyModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.InputLegacyModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.JSONSerializeModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.JSONSerializeModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.LocalizationModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.LocalizationModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ParticleSystemModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ParticleSystemModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.PerformanceReportingModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.PerformanceReportingModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.PhysicsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.PhysicsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.Physics2DModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.Physics2DModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ProfilerModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ProfilerModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.ScreenCaptureModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.ScreenCaptureModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.SharedInternalsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.SharedInternalsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.SpriteMaskModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.SpriteMaskModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.SpriteShapeModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.SpriteShapeModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.StreamingModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.StreamingModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.SubstanceModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.SubstanceModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.SubsystemsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.SubsystemsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TLSModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TLSModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TerrainModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TerrainModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TerrainPhysicsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TerrainPhysicsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TextCoreModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TextCoreModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TextRenderingModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TextRenderingModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TilemapModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.TilemapModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UIElementsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UIElementsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UIElementsNativeModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UIElementsNativeModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UNETModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UNETModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UmbraModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UmbraModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityAnalyticsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityAnalyticsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityConnectModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityConnectModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityCurlModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityCurlModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityTestProtocolModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityTestProtocolModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestAssetBundleModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestAssetBundleModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestAudioModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestAudioModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestTextureModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestTextureModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestWWWModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestWWWModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.VFXModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.VFXModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.VRModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.VRModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.VehiclesModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.VehiclesModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.VideoModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.VideoModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.VirtualTexturingModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.VirtualTexturingModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.WindModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.WindModule.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.XRModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEngine.XRModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.CoreModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.CoreModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.GraphViewModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.GraphViewModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.PackageManagerUIModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.PackageManagerUIModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.SceneTemplateModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.SceneTemplateModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UIElementsModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.UIElementsModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UIElementsSamplesModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.UIElementsSamplesModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UIServiceModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.UIServiceModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UnityConnectModule">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEngine/UnityEditor.UnityConnectModule.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.Graphs">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/Managed/UnityEditor.Graphs.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.WindowsStandalone.Extensions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/PlaybackEngines/WindowsStandaloneSupport/UnityEditor.WindowsStandalone.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="Remotion.Linq">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/Remotion.Linq.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System.Memory">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/System.Memory.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Abstractions">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
</Reference>
<Reference Include="nunit.framework">
<HintPath>E:/Projects/Aetheria-Economy/Library/PackageCache/com.unity.ext.nunit@1.0.5/net35/unity-custom/nunit.framework.dll</HintPath>
</Reference>
<Reference Include="Google.Protobuf">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/Google.Protobuf/lib/net45/Google.Protobuf.dll</HintPath>
</Reference>
<Reference Include="System.Buffers">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/System.Buffers.dll</HintPath>
</Reference>
<Reference Include="Unity.Burst.Unsafe">
<HintPath>E:/Projects/Aetheria-Economy/Library/PackageCache/com.unity.burst@1.4.3/Unity.Burst.Unsafe.dll</HintPath>
</Reference>
<Reference Include="QuickGraph">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/QuickGraph.dll</HintPath>
</Reference>
<Reference Include="Substance.Game">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Allegorithmic/Plugins/Substance.Game.dll</HintPath>
</Reference>
<Reference Include="SourceUnityLib">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Allegorithmic/Plugins/Substance/Substance Source/Editor/SourceUnityLib.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Plugins/System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="Substance.Editor">
<HintPath>E:/Projects/Aetheria-Economy/Assets/Allegorithmic/Plugins/Substance/Substance Engine/Editor/Substance.Editor.dll</HintPath>
</Reference>
<Reference Include="mscorlib">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/mscorlib.dll</HintPath>
</Reference>
<Reference Include="System">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.dll</HintPath>
</Reference>
<Reference Include="System.Core">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Core.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Runtime.Serialization.dll</HintPath>
</Reference>
<Reference Include="System.Xml">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Xml.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Xml.Linq.dll</HintPath>
</Reference>
<Reference Include="System.Numerics">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Numerics.dll</HintPath>
</Reference>
<Reference Include="System.Numerics.Vectors">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Net.Http.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Microsoft.CSharp.dll</HintPath>
</Reference>
<Reference Include="System.Data">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.Data.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Win32.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/Microsoft.Win32.Primitives.dll</HintPath>
</Reference>
<Reference Include="netstandard">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/netstandard.dll</HintPath>
</Reference>
<Reference Include="System.AppContext">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.AppContext.dll</HintPath>
</Reference>
<Reference Include="System.Collections.Concurrent">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Collections.Concurrent.dll</HintPath>
</Reference>
<Reference Include="System.Collections">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Collections.dll</HintPath>
</Reference>
<Reference Include="System.Collections.NonGeneric">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Collections.NonGeneric.dll</HintPath>
</Reference>
<Reference Include="System.Collections.Specialized">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Collections.Specialized.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.Annotations">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ComponentModel.Annotations.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ComponentModel.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.EventBasedAsync">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ComponentModel.EventBasedAsync.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ComponentModel.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.TypeConverter">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ComponentModel.TypeConverter.dll</HintPath>
</Reference>
<Reference Include="System.Console">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Console.dll</HintPath>
</Reference>
<Reference Include="System.Data.Common">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Data.Common.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.Contracts">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.Contracts.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.Debug">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.Debug.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.FileVersionInfo">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.FileVersionInfo.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.Process">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.Process.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.StackTrace">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.StackTrace.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.TextWriterTraceListener">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.TextWriterTraceListener.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.Tools">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.Tools.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.TraceSource">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Diagnostics.TraceSource.dll</HintPath>
</Reference>
<Reference Include="System.Drawing.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Drawing.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.Dynamic.Runtime">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Dynamic.Runtime.dll</HintPath>
</Reference>
<Reference Include="System.Globalization.Calendars">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Globalization.Calendars.dll</HintPath>
</Reference>
<Reference Include="System.Globalization">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Globalization.dll</HintPath>
</Reference>
<Reference Include="System.Globalization.Extensions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Globalization.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.IO.Compression.ZipFile">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.Compression.ZipFile.dll</HintPath>
</Reference>
<Reference Include="System.IO">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.dll</HintPath>
</Reference>
<Reference Include="System.IO.FileSystem">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.FileSystem.dll</HintPath>
</Reference>
<Reference Include="System.IO.FileSystem.DriveInfo">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.FileSystem.DriveInfo.dll</HintPath>
</Reference>
<Reference Include="System.IO.FileSystem.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.FileSystem.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.IO.FileSystem.Watcher">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.FileSystem.Watcher.dll</HintPath>
</Reference>
<Reference Include="System.IO.IsolatedStorage">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.IsolatedStorage.dll</HintPath>
</Reference>
<Reference Include="System.IO.MemoryMappedFiles">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.MemoryMappedFiles.dll</HintPath>
</Reference>
<Reference Include="System.IO.Pipes">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.Pipes.dll</HintPath>
</Reference>
<Reference Include="System.IO.UnmanagedMemoryStream">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.IO.UnmanagedMemoryStream.dll</HintPath>
</Reference>
<Reference Include="System.Linq">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Linq.dll</HintPath>
</Reference>
<Reference Include="System.Linq.Expressions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Linq.Expressions.dll</HintPath>
</Reference>
<Reference Include="System.Linq.Parallel">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Linq.Parallel.dll</HintPath>
</Reference>
<Reference Include="System.Linq.Queryable">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Linq.Queryable.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http.Rtc">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Http.Rtc.dll</HintPath>
</Reference>
<Reference Include="System.Net.NameResolution">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.NameResolution.dll</HintPath>
</Reference>
<Reference Include="System.Net.NetworkInformation">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.NetworkInformation.dll</HintPath>
</Reference>
<Reference Include="System.Net.Ping">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Ping.dll</HintPath>
</Reference>
<Reference Include="System.Net.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.Net.Requests">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Requests.dll</HintPath>
</Reference>
<Reference Include="System.Net.Security">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Security.dll</HintPath>
</Reference>
<Reference Include="System.Net.Sockets">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.Sockets.dll</HintPath>
</Reference>
<Reference Include="System.Net.WebHeaderCollection">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.WebHeaderCollection.dll</HintPath>
</Reference>
<Reference Include="System.Net.WebSockets.Client">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.WebSockets.Client.dll</HintPath>
</Reference>
<Reference Include="System.Net.WebSockets">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Net.WebSockets.dll</HintPath>
</Reference>
<Reference Include="System.ObjectModel">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ObjectModel.dll</HintPath>
</Reference>
<Reference Include="System.Reflection">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.dll</HintPath>
</Reference>
<Reference Include="System.Reflection.Emit">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.Emit.dll</HintPath>
</Reference>
<Reference Include="System.Reflection.Emit.ILGeneration">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.Emit.ILGeneration.dll</HintPath>
</Reference>
<Reference Include="System.Reflection.Emit.Lightweight">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.Emit.Lightweight.dll</HintPath>
</Reference>
<Reference Include="System.Reflection.Extensions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Reflection.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Reflection.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.Resources.Reader">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Resources.Reader.dll</HintPath>
</Reference>
<Reference Include="System.Resources.ResourceManager">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Resources.ResourceManager.dll</HintPath>
</Reference>
<Reference Include="System.Resources.Writer">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Resources.Writer.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.VisualC">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.CompilerServices.VisualC.dll</HintPath>
</Reference>
<Reference Include="System.Runtime">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Extensions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Handles">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Handles.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.InteropServices">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.InteropServices.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.InteropServices.RuntimeInformation">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.InteropServices.RuntimeInformation.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.InteropServices.WindowsRuntime">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.InteropServices.WindowsRuntime.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Numerics">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Numerics.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization.Formatters">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Serialization.Formatters.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization.Json">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Serialization.Json.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Serialization.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization.Xml">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Runtime.Serialization.Xml.dll</HintPath>
</Reference>
<Reference Include="System.Security.Claims">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Claims.dll</HintPath>
</Reference>
<Reference Include="System.Security.Cryptography.Algorithms">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Cryptography.Algorithms.dll</HintPath>
</Reference>
<Reference Include="System.Security.Cryptography.Csp">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Cryptography.Csp.dll</HintPath>
</Reference>
<Reference Include="System.Security.Cryptography.Encoding">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Cryptography.Encoding.dll</HintPath>
</Reference>
<Reference Include="System.Security.Cryptography.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Cryptography.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.Security.Cryptography.X509Certificates">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Cryptography.X509Certificates.dll</HintPath>
</Reference>
<Reference Include="System.Security.Principal">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.Principal.dll</HintPath>
</Reference>
<Reference Include="System.Security.SecureString">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Security.SecureString.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel.Duplex">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ServiceModel.Duplex.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel.Http">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ServiceModel.Http.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel.NetTcp">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ServiceModel.NetTcp.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel.Primitives">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ServiceModel.Primitives.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel.Security">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ServiceModel.Security.dll</HintPath>
</Reference>
<Reference Include="System.Text.Encoding">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Text.Encoding.dll</HintPath>
</Reference>
<Reference Include="System.Text.Encoding.Extensions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Text.Encoding.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Text.RegularExpressions">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Text.RegularExpressions.dll</HintPath>
</Reference>
<Reference Include="System.Threading">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Overlapped">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.Overlapped.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.Tasks.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Parallel">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.Tasks.Parallel.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Thread">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.Thread.dll</HintPath>
</Reference>
<Reference Include="System.Threading.ThreadPool">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.ThreadPool.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Timer">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Threading.Timer.dll</HintPath>
</Reference>
<Reference Include="System.ValueTuple">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Xml.ReaderWriter">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.ReaderWriter.dll</HintPath>
</Reference>
<Reference Include="System.Xml.XDocument">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XDocument.dll</HintPath>
</Reference>
<Reference Include="System.Xml.XmlDocument">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XmlDocument.dll</HintPath>
</Reference>
<Reference Include="System.Xml.XmlSerializer">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XmlSerializer.dll</HintPath>
</Reference>
<Reference Include="System.Xml.XPath">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XPath.dll</HintPath>
</Reference>
<Reference Include="System.Xml.XPath.XDocument">
<HintPath>C:/Program Files/Unity/Hub/Editor/2020.2.1f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XPath.XDocument.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>E:/Projects/Aetheria-Economy/Library/ScriptAssemblies/UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>E:/Projects/Aetheria-Economy/Library/ScriptAssemblies/UnityEngine.UI.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>