Database Support
Refactored almost everything, but most importantly we now integrate with RethinkDB for game data.
This commit is contained in:
parent
5ffeb55214
commit
0b46d5ee39
839 changed files with 77349 additions and 112660 deletions
382
.idea/.idea.Aetheria-Economy/.idea/contentModel.xml
generated
382
.idea/.idea.Aetheria-Economy/.idea/contentModel.xml
generated
|
|
@ -6,19 +6,54 @@
|
|||
<e p="C:\Users\rwvens\Documents\GitHub\Aetheria-Economy" t="IncludeRecursive">
|
||||
<e p="Aetheria-Economy.sln" t="IncludeFlat" />
|
||||
<e p="Assembly-CSharp-Editor.csproj" t="IncludeRecursive" />
|
||||
<e p="Assembly-CSharp-firstpass.csproj" t="IncludeRecursive" />
|
||||
<e p="Assembly-CSharp.csproj" t="IncludeRecursive" />
|
||||
<e p="Assets" t="Include">
|
||||
<e p="Scripts" t="Include">
|
||||
<e p="Behaviors.cs" t="Include" />
|
||||
<e p="ChatComponent.cs" t="Include" />
|
||||
<e p="ColorButton.cs" t="Include" />
|
||||
<e p="Database.cs" t="Include" />
|
||||
<e p="DatabaseItems.cs" t="Include" />
|
||||
<e p="Editor" t="Include">
|
||||
<e p="DatabaseEditor.cs" t="Include" />
|
||||
<e p="GalaxyEditor.cs" t="Include" />
|
||||
<e p="Plugins" t="Include">
|
||||
<e p="AsyncAwaitUtil" t="Include">
|
||||
<e p="Source" t="Include">
|
||||
<e p="Awaiters.cs" t="Include" />
|
||||
<e p="AwaitExtensions.cs" t="Include" />
|
||||
<e p="IEnumeratorAwaitExtensions.cs" t="Include" />
|
||||
<e p="Internal" t="Include">
|
||||
<e p="AsyncCoroutineRunner.cs" t="Include" />
|
||||
<e p="SyncContextUtil.cs" t="Include" />
|
||||
</e>
|
||||
<e p="TaskExtensions.cs" t="Include" />
|
||||
<e p="WaitForBackgroundThread.cs" t="Include" />
|
||||
<e p="WaitForUpdate.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Tests" t="Include">
|
||||
<e p="AsyncUtilTests.cs" t="Include" />
|
||||
<e p="Util" t="Include">
|
||||
<e p="TestButtonHandler.cs" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
</e>
|
||||
<e p="Grpc.Core" t="Include">
|
||||
<e p="lib" t="Include">
|
||||
<e p="net45" t="Include">
|
||||
<e p="Grpc.Core.xml" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
</e>
|
||||
<e p="Grpc.Core.Api" t="Include">
|
||||
<e p="lib" t="Include">
|
||||
<e p="net45" t="Include">
|
||||
<e p="Grpc.Core.Api.xml" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
</e>
|
||||
</e>
|
||||
<e p="Scripts" t="Include">
|
||||
<e p="ChatComponent.cs" t="Include" />
|
||||
<e p="Editor" t="Include">
|
||||
<e p="DatabaseInspector.cs" t="Include" />
|
||||
<e p="DatabaseView.cs" t="Include" />
|
||||
<e p="EditorDispatch.cs" t="Include" />
|
||||
<e p="GalaxyEditor.cs" t="Include" />
|
||||
<e p="SerializerTestWindow.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Extensions.cs" t="Include" />
|
||||
<e p="Galaxy.cs" t="Include" />
|
||||
<e p="Generated" t="Include">
|
||||
<e p="MagicOnion.Generated.cs" t="Include" />
|
||||
|
|
@ -26,7 +61,6 @@
|
|||
</e>
|
||||
<e p="Icons.cs" t="Include" />
|
||||
<e p="InitialSettings.cs" t="Include" />
|
||||
<e p="ItemInstance.cs" t="Include" />
|
||||
<e p="MarkovNameGenerator.cs" t="Include" />
|
||||
<e p="NIH" t="Include">
|
||||
<e p="GPU Noise" t="Include">
|
||||
|
|
@ -410,12 +444,9 @@
|
|||
</e>
|
||||
<e p="UniRx" t="Include">
|
||||
<e p="Examples" t="Include">
|
||||
<e p="Sample01_ObservableWWW.cs" t="Include" />
|
||||
<e p="Sample02_ObservableTriggers.cs" t="Include" />
|
||||
<e p="Sample03_GameObjectAsObservable.cs" t="Include" />
|
||||
<e p="Sample04_ConvertFromUnityCallback.cs" t="Include" />
|
||||
<e p="Sample05_ConvertFromCoroutine.cs" t="Include" />
|
||||
<e p="Sample06_ConvertToCoroutine.cs" t="Include" />
|
||||
<e p="Sample07_OrchestratIEnumerator.cs" t="Include" />
|
||||
<e p="Sample08_DetectDoubleClick.cs" t="Include" />
|
||||
<e p="Sample09_EventHandling.cs" t="Include" />
|
||||
|
|
@ -609,7 +640,6 @@
|
|||
<e p="MainThreadScheduler.cs" t="Include" />
|
||||
<e p="Observable.Unity.cs" t="Include" />
|
||||
<e p="ObservableMonoBehaviour.cs" t="Include" />
|
||||
<e p="ObservableWWW.cs" t="Include" />
|
||||
<e p="ObserveExtensions.cs" t="Include" />
|
||||
<e p="Operators" t="Include">
|
||||
<e p="BatchFrame.cs" t="Include" />
|
||||
|
|
@ -688,307 +718,69 @@
|
|||
</e>
|
||||
</e>
|
||||
</e>
|
||||
<e p="unity-ui-extensions" t="Include">
|
||||
<e p="Editor" t="Include">
|
||||
<e p="AccordionElementEditor.cs" t="Include" />
|
||||
<e p="BezierLineRendererEditor.cs" t="Include" />
|
||||
<e p="BoxSliderEditor.cs" t="Include" />
|
||||
<e p="CanvasGroupActivator.cs" t="Include" />
|
||||
<e p="CUIBezierCurveEditor.cs" t="Include" />
|
||||
<e p="CUIGraphicEditor.cs" t="Include" />
|
||||
<e p="CUIImageEditor.cs" t="Include" />
|
||||
<e p="CUITextEditor.cs" t="Include" />
|
||||
<e p="NonDrawingGraphicEditor.cs" t="Include" />
|
||||
<e p="ReadOnlyDrawer.cs" t="Include" />
|
||||
<e p="TextPicEditor.cs" t="Include" />
|
||||
<e p="uGUITools.cs" t="Include" />
|
||||
<e p="UIExtensionsMenuOptions.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Examples" t="Include">
|
||||
<e p="ComboBox" t="Include">
|
||||
<e p="ComboBoxChanged.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Cooldown" t="Include">
|
||||
<e p="CooldownEffect_Image.cs" t="Include" />
|
||||
<e p="CooldownEffect_SAUIM.cs" t="Include" />
|
||||
</e>
|
||||
<e p="FancyScrollView" t="Include">
|
||||
<e p="01_Basic" t="Include">
|
||||
<e p="Example01CellDto.cs" t="Include" />
|
||||
<e p="Example01Scene.cs" t="Include" />
|
||||
<e p="Example01ScrollView.cs" t="Include" />
|
||||
<e p="Example01ScrollViewCell.cs" t="Include" />
|
||||
</e>
|
||||
<e p="02_CellEventHandling" t="Include">
|
||||
<e p="Example02CellDto.cs" t="Include" />
|
||||
<e p="Example02Scene.cs" t="Include" />
|
||||
<e p="Example02ScrollView.cs" t="Include" />
|
||||
<e p="Example02ScrollViewCell.cs" t="Include" />
|
||||
<e p="Example02ScrollViewContext.cs" t="Include" />
|
||||
</e>
|
||||
<e p="03_InfiniteScroll" t="Include">
|
||||
<e p="Example03CellDto.cs" t="Include" />
|
||||
<e p="Example03Scene.cs" t="Include" />
|
||||
<e p="Example03ScrollView.cs" t="Include" />
|
||||
<e p="Example03ScrollViewCell.cs" t="Include" />
|
||||
<e p="Example03ScrollViewContext.cs" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
<e p="HSS-VSS-ScrollSnap" t="Include">
|
||||
<e p="PaginationScript.cs" t="Include" />
|
||||
<e p="UpdateScrollSnap.cs" t="Include" />
|
||||
</e>
|
||||
<e p="MenuExample" t="Include">
|
||||
<e p="Scripts" t="Include">
|
||||
<e p="Menus" t="Include">
|
||||
<e p="AwesomeMenu.cs" t="Include" />
|
||||
<e p="GameMenu.cs" t="Include" />
|
||||
<e p="MainMenu.cs" t="Include" />
|
||||
<e p="OptionsMenu.cs" t="Include" />
|
||||
<e p="PauseMenu.cs" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
</e>
|
||||
<e p="RadialSlider" t="Include">
|
||||
<e p="UpdateRadialValue.cs" t="Include" />
|
||||
</e>
|
||||
<e p="TextEffects" t="Include">
|
||||
<e p="AnimateEffects.cs" t="Include" />
|
||||
<e p="testHref.cs" t="Include" />
|
||||
</e>
|
||||
<e p="UILineRenderer" t="Include">
|
||||
<e p="LineRendererOrbit.cs" t="Include" />
|
||||
<e p="TestAddingPoints.cs" t="Include" />
|
||||
</e>
|
||||
<e p="UIVerticalScrollerDemo" t="Include">
|
||||
<e p="Scripts" t="Include">
|
||||
<e p="ScrollingCalendar.cs" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
</e>
|
||||
<e p="Scripts" t="Include">
|
||||
<e p="Controls" t="Include">
|
||||
<e p="Accordion" t="Include">
|
||||
<e p="Accordion.cs" t="Include" />
|
||||
<e p="AccordionElement.cs" t="Include" />
|
||||
<e p="Tweening" t="Include">
|
||||
<e p="FloatTween.cs" t="Include" />
|
||||
<e p="ITweenValue.cs" t="Include" />
|
||||
<e p="TweenRunner.cs" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
<e p="BoxSlider.cs" t="Include" />
|
||||
<e p="ColorPicker" t="Include">
|
||||
<e p="ColorImage.cs" t="Include" />
|
||||
<e p="ColorLabel.cs" t="Include" />
|
||||
<e p="ColorPickerControl.cs" t="Include" />
|
||||
<e p="ColorPickerPresets.cs" t="Include" />
|
||||
<e p="ColorPickerTester.cs" t="Include" />
|
||||
<e p="ColorSlider.cs" t="Include" />
|
||||
<e p="ColorSliderImage.cs" t="Include" />
|
||||
<e p="ColorValues.cs" t="Include" />
|
||||
<e p="Events" t="Include">
|
||||
<e p="ColorChangedEvent.cs" t="Include" />
|
||||
<e p="HSVChangedEvent.cs" t="Include" />
|
||||
</e>
|
||||
<e p="HexColorField.cs" t="Include" />
|
||||
<e p="HSVUtil.cs" t="Include" />
|
||||
<e p="SVBoxSlider.cs" t="Include" />
|
||||
<e p="TiltWindow.cs" t="Include" />
|
||||
</e>
|
||||
<e p="ComboBox" t="Include">
|
||||
<e p="AutoCompleteComboBox.cs" t="Include" />
|
||||
<e p="ComboBox.cs" t="Include" />
|
||||
<e p="DropDownList.cs" t="Include" />
|
||||
<e p="DropDownListButton.cs" t="Include" />
|
||||
<e p="DropDownListItem.cs" t="Include" />
|
||||
</e>
|
||||
<e p="CooldownButton.cs" t="Include" />
|
||||
<e p="InputFocus.cs" t="Include" />
|
||||
<e p="MultiTouchScrollRect.cs" t="Include" />
|
||||
<e p="RadialSlider.cs" t="Include" />
|
||||
<e p="ReorderableList" t="Include">
|
||||
<e p="ReorderableList.cs" t="Include" />
|
||||
<e p="ReorderableListContent.cs" t="Include" />
|
||||
<e p="ReorderableListDebug.cs" t="Include" />
|
||||
<e p="ReorderableListElement.cs" t="Include" />
|
||||
</e>
|
||||
<e p="RescalingPanels" t="Include">
|
||||
<e p="RescaleDragPanel.cs" t="Include" />
|
||||
<e p="RescalePanel.cs" t="Include" />
|
||||
<e p="ResizePanel.cs" t="Include" />
|
||||
</e>
|
||||
<e p="SegmentedControl.cs" t="Include" />
|
||||
<e p="SelectionBox" t="Include">
|
||||
<e p="ExampleSelectable.cs" t="Include" />
|
||||
<e p="IBoxSelectable.cs" t="Include" />
|
||||
<e p="SelectionBox.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Stepper.cs" t="Include" />
|
||||
<e p="TextPic.cs" t="Include" />
|
||||
<e p="UI_Knob.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Effects" t="Include">
|
||||
<e p="BestFitOutline.cs" t="Include" />
|
||||
<e p="CurlyUI" t="Include">
|
||||
<e p="CUIBezierCurve.cs" t="Include" />
|
||||
<e p="CUIGraphic.cs" t="Include" />
|
||||
<e p="CUIImage.cs" t="Include" />
|
||||
<e p="CUIMisc.cs" t="Include" />
|
||||
<e p="CUIText.cs" t="Include" />
|
||||
</e>
|
||||
<e p="CurvedText.cs" t="Include" />
|
||||
<e p="CylinderText.cs" t="Include" />
|
||||
<e p="Gradient.cs" t="Include" />
|
||||
<e p="Gradient2.cs" t="Include" />
|
||||
<e p="LetterSpacing.cs" t="Include" />
|
||||
<e p="MonoSpacing.cs" t="Include" />
|
||||
<e p="NicerOutline.cs" t="Include" />
|
||||
<e p="RaycastMask.cs" t="Include" />
|
||||
<e p="ShaderEffects" t="Include">
|
||||
<e p="UIAdditiveEffect.cs" t="Include" />
|
||||
<e p="UIImageCrop.cs" t="Include" />
|
||||
<e p="UILinearDodgeEffect.cs" t="Include" />
|
||||
<e p="UIMultiplyEffect.cs" t="Include" />
|
||||
<e p="UIScreenEffect.cs" t="Include" />
|
||||
<e p="UISoftAdditiveEffect.cs" t="Include" />
|
||||
</e>
|
||||
<e p="ShineEffect.cs" t="Include" />
|
||||
<e p="ShineEffector.cs" t="Include" />
|
||||
<e p="SoftMaskScript.cs" t="Include" />
|
||||
<e p="UIFlippable.cs" t="Include" />
|
||||
<e p="UIParticleSystem.cs" t="Include" />
|
||||
</e>
|
||||
<e p="InputModules" t="Include">
|
||||
<e p="AimerInputModule.cs" t="Include" />
|
||||
<e p="GamePadInputModule.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Layout" t="Include">
|
||||
<e p="CurvedLayout.cs" t="Include" />
|
||||
<e p="FancyScrollView.cs" t="Include" />
|
||||
<e p="FancyScrollViewCell.cs" t="Include" />
|
||||
<e p="FlowLayoutGroup.cs" t="Include" />
|
||||
<e p="HorizontalScrollSnap.cs" t="Include" />
|
||||
<e p="IScrollSnap.cs" t="Include" />
|
||||
<e p="RadialLayout.cs" t="Include" />
|
||||
<e p="ScrollPositionController.cs" t="Include" />
|
||||
<e p="ScrollSnap.cs" t="Include" />
|
||||
<e p="ScrollSnapBase.cs" t="Include" />
|
||||
<e p="ScrollSnapScrollbarHelper.cs" t="Include" />
|
||||
<e p="TableLayoutGroup.cs" t="Include" />
|
||||
<e p="TileSizeFitter.cs" t="Include" />
|
||||
<e p="UIVerticalScroller.cs" t="Include" />
|
||||
<e p="VerticalScrollSnap.cs" t="Include" />
|
||||
</e>
|
||||
<e p="MenuSystem" t="Include">
|
||||
<e p="Menu.cs" t="Include" />
|
||||
<e p="MenuManager.cs" t="Include" />
|
||||
<e p="SimpleMenu.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Primitives" t="Include">
|
||||
<e p="DiamondGraph.cs" t="Include" />
|
||||
<e p="UICircle.cs" t="Include" />
|
||||
<e p="UICornerCut.cs" t="Include" />
|
||||
<e p="UIGridRenderer.cs" t="Include" />
|
||||
<e p="UILineRenderer.cs" t="Include" />
|
||||
<e p="UILineTextureRenderer.cs" t="Include" />
|
||||
<e p="UIPolygon.cs" t="Include" />
|
||||
<e p="UIPrimitiveBase.cs" t="Include" />
|
||||
</e>
|
||||
<e p="TabNavigationHelper.cs" t="Include" />
|
||||
<e p="ToolTips" t="Include">
|
||||
<e p="BoundTooltip" t="Include">
|
||||
<e p="BoundTooltipItem.cs" t="Include" />
|
||||
<e p="BoundTooltipTrigger.cs" t="Include" />
|
||||
</e>
|
||||
<e p="HoverTooltip.cs" t="Include" />
|
||||
<e p="ToolTip.cs" t="Include" />
|
||||
</e>
|
||||
<e p="UIWindowBase.cs" t="Include" />
|
||||
<e p="Utilities" t="Include">
|
||||
<e p="BezierPath.cs" t="Include" />
|
||||
<e p="CableCurve.cs" t="Include" />
|
||||
<e p="Circle.cs" t="Include" />
|
||||
<e p="CLZF2.cs" t="Include" />
|
||||
<e p="DragCorrector.cs" t="Include" />
|
||||
<e p="ExtensionsToggle.cs" t="Include" />
|
||||
<e p="ExtensionsToggleGroup.cs" t="Include" />
|
||||
<e p="InputFieldEnterSubmit.cs" t="Include" />
|
||||
<e p="NonDrawingGraphic.cs" t="Include" />
|
||||
<e p="PaginationManager.cs" t="Include" />
|
||||
<e p="PPIViewer.cs" t="Include" />
|
||||
<e p="ReadOnlyAttribute.cs" t="Include" />
|
||||
<e p="ReturnKeyTriggersButton.cs" t="Include" />
|
||||
<e p="ScrollConflictManager.cs" t="Include" />
|
||||
<e p="ScrollRectEx.cs" t="Include" />
|
||||
<e p="ScrollRectExtensions.cs" t="Include" />
|
||||
<e p="ScrollRectLinker.cs" t="Include" />
|
||||
<e p="ScrollRectTweener.cs" t="Include" />
|
||||
<e p="SelectableScaler.cs" t="Include" />
|
||||
<e p="SetPropertyUtility.cs" t="Include" />
|
||||
<e p="switchToRectTransform.cs" t="Include" />
|
||||
<e p="TestCompression.cs" t="Include" />
|
||||
<e p="UI_InfiniteScroll.cs" t="Include" />
|
||||
<e p="UI_ScrollRectOcclusion.cs" t="Include" />
|
||||
<e p="UI_TweenScale.cs" t="Include" />
|
||||
<e p="UIExtensionMethods.cs" t="Include" />
|
||||
<e p="UIHighlightable.cs" t="Include" />
|
||||
<e p="UILineConnector.cs" t="Include" />
|
||||
<e p="UIScrollToSelection.cs" t="Include" />
|
||||
<e p="UIScrollToSelectionXY.cs" t="Include" />
|
||||
<e p="UISelectableExtension.cs" t="Include" />
|
||||
</e>
|
||||
<e p="VR Extensions" t="Include">
|
||||
<e p="VRCursor.cs" t="Include" />
|
||||
<e p="VRInputModule.cs" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
<e p="Shaders" t="Include">
|
||||
<e p="SoftMaskShader.shader" t="Include" />
|
||||
<e p="UI Particle Add.shader" t="Include" />
|
||||
<e p="UI Particle AddMultiply.shader" t="Include" />
|
||||
<e p="UI Particle AddSmooth.shader" t="Include" />
|
||||
<e p="UI Particle Alpha Blend.shader" t="Include" />
|
||||
<e p="UI Particle Blend.shader" t="Include" />
|
||||
<e p="UI Particle Multiply.shader" t="Include" />
|
||||
<e p="UI Particle MultiplyDouble.shader" t="Include" />
|
||||
<e p="UI Particle Premultiply Blend.shader" t="Include" />
|
||||
<e p="UI Particle VertexLit Blended.shader" t="Include" />
|
||||
<e p="UIAdditive.shader" t="Include" />
|
||||
<e p="UIImageCrop.shader" t="Include" />
|
||||
<e p="UILinearDodge.shader" t="Include" />
|
||||
<e p="UIMultiply.shader" t="Include" />
|
||||
<e p="UIParticleHidden.shader" t="Include" />
|
||||
<e p="UIScreen.shader" t="Include" />
|
||||
<e p="UISoftAdditive.shader" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
<e p="XKCDColors.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Orbit.cs" t="Include" />
|
||||
<e p="PoissonDiskSampling" t="Include">
|
||||
<e p="PoissonDiskSampling.cs" t="Include" />
|
||||
<e p="Test.cs" t="Include" />
|
||||
</e>
|
||||
<e p="PropertiesPanel.cs" t="Include" />
|
||||
<e p="Prototype.cs" t="Include" />
|
||||
<e p="ServerShared" t="Include">
|
||||
<e p="Attributes.cs" t="Include" />
|
||||
<e p="DatabaseCache.cs" t="Include" />
|
||||
<e p="DatabaseItems.cs" t="Include" />
|
||||
<e p="Economy.Shared.Unity.asmdef" t="Include" />
|
||||
<e p="Enums.cs" t="Include" />
|
||||
<e p="Extensions.cs" t="Include" />
|
||||
<e p="GameContext.cs" t="Include" />
|
||||
<e p="GlobalData.cs" t="Include" />
|
||||
<e p="Hubs" t="Include">
|
||||
<e p="IChatHub.cs" t="Include" />
|
||||
<e p="IChatHubReceiver.cs" t="Include" />
|
||||
</e>
|
||||
<e p="ItemBehaviors" t="Include">
|
||||
<e p="Afterburner.cs" t="Include" />
|
||||
<e p="Behaviors.cs" t="Include" />
|
||||
<e p="Cannon.cs" t="Include" />
|
||||
<e p="Launcher.cs" t="Include" />
|
||||
<e p="Reactor.cs" t="Include" />
|
||||
<e p="Sensor.cs" t="Include" />
|
||||
</e>
|
||||
<e p="ItemData.cs" t="Include" />
|
||||
<e p="ItemInstance.cs" t="Include" />
|
||||
<e p="MessagePackObjects" t="Include">
|
||||
<e p="Requests.cs" t="Include" />
|
||||
<e p="Responses.cs" t="Include" />
|
||||
</e>
|
||||
<e p="NIH" t="Include">
|
||||
<e p="JsonKnownTypes" t="Include">
|
||||
<e p="AttributesManager.cs" t="Include" />
|
||||
<e p="Exceptions" t="Include">
|
||||
<e p="JsonKnownTypesException.cs" t="Include" />
|
||||
</e>
|
||||
<e p="JsonDiscriminatorAttribute.cs" t="Include" />
|
||||
<e p="JsonDiscriminatorSettings.cs" t="Include" />
|
||||
<e p="JsonKnownThisTypeAttribute.cs" t="Include" />
|
||||
<e p="JsonKnownTypeAttribute.cs" t="Include" />
|
||||
<e p="JsonKnownTypesContractResolver.cs" t="Include" />
|
||||
<e p="JsonKnownTypesConverter.cs" t="Include" />
|
||||
<e p="JsonKnownTypesDictionaryManager.cs" t="Include" />
|
||||
<e p="JsonKnownTypesSettings.cs" t="Include" />
|
||||
<e p="JsonKnownTypesSettingsManager.cs" t="Include" />
|
||||
<e p="Utils" t="Include">
|
||||
<e p="Mapper.cs" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
</e>
|
||||
<e p="OrbitInstance.cs" t="Include" />
|
||||
<e p="Services" t="Include">
|
||||
<e p="IChatService.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Ship.cs" t="Include" />
|
||||
<e p="ZoneData.cs" t="Include" />
|
||||
<e p="ZoneGenerator.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Targetable.cs" t="Include" />
|
||||
<e p="UnityExtensions.cs" t="Include" />
|
||||
<e p="UnityFormatters.cs" t="Include" />
|
||||
<e p="ZoneManager.cs" t="Include" />
|
||||
<e p="ZoneRenderer.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Shaders" t="Include">
|
||||
|
|
|
|||
138
.idea/.idea.Economy/.idea/contentModel.xml
generated
138
.idea/.idea.Economy/.idea/contentModel.xml
generated
|
|
@ -4,11 +4,48 @@
|
|||
<e p="C:\Users\rwvens\.Rider2019.3\system\extResources" t="IncludeRecursive" />
|
||||
<e p="C:\Users\rwvens\.Rider2019.3\system\resharper-host\local\Transient\ReSharperHost\v193\SolutionCaches\_Economy.820823087.00" t="ExcludeRecursive" />
|
||||
<e p="C:\Users\rwvens\Documents\GitHub\Aetheria-Economy" t="IncludeFlat">
|
||||
<e p="Assets\Scripts\ServerShared\Hubs\IChatHub.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\Hubs\IChatHubReceiver.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\MessagePackObjects\Requests.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\MessagePackObjects\Responses.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\Services\IChatService.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\Attributes.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\DatabaseCache.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\DatabaseItems.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\Enums.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\Extensions.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\GameContext.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\GlobalData.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\Hubs" t="Include">
|
||||
<e p="IChatHub.cs" t="Include" />
|
||||
<e p="IChatHubReceiver.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Assets\Scripts\ServerShared\ItemBehaviors\Afterburner.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\ItemBehaviors\Behaviors.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\ItemBehaviors\Cannon.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\ItemBehaviors\Launcher.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\ItemBehaviors\Reactor.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\ItemBehaviors\Sensor.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\ItemData.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\ItemInstance.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\MessagePackObjects" t="Include">
|
||||
<e p="Requests.cs" t="Include" />
|
||||
<e p="Responses.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\AttributesManager.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\Exceptions\JsonKnownTypesException.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\JsonDiscriminatorAttribute.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\JsonDiscriminatorSettings.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\JsonKnownThisTypeAttribute.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\JsonKnownTypeAttribute.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\JsonKnownTypesContractResolver.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\JsonKnownTypesConverter.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\JsonKnownTypesDictionaryManager.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\JsonKnownTypesSettings.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\JsonKnownTypesSettingsManager.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\NIH\JsonKnownTypes\Utils\Mapper.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\OrbitInstance.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\Services" t="Include">
|
||||
<e p="IChatService.cs" t="Include" />
|
||||
</e>
|
||||
<e p="Assets\Scripts\ServerShared\Ship.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\ZoneData.cs" t="Include" />
|
||||
<e p="Assets\Scripts\ServerShared\ZoneGenerator.cs" t="Include" />
|
||||
<e p="Economy.Server" t="IncludeRecursive">
|
||||
<e p="appsettings.json" t="Include" />
|
||||
<e p="bin" t="ExcludeRecursive" />
|
||||
|
|
@ -34,6 +71,97 @@
|
|||
</e>
|
||||
</e>
|
||||
</e>
|
||||
<e p="Unity.Mathematics" t="Include">
|
||||
<e p="bool2.gen.cs" t="Include" />
|
||||
<e p="bool2x2.gen.cs" t="Include" />
|
||||
<e p="bool2x3.gen.cs" t="Include" />
|
||||
<e p="bool2x4.gen.cs" t="Include" />
|
||||
<e p="bool3.gen.cs" t="Include" />
|
||||
<e p="bool3x2.gen.cs" t="Include" />
|
||||
<e p="bool3x3.gen.cs" t="Include" />
|
||||
<e p="bool3x4.gen.cs" t="Include" />
|
||||
<e p="bool4.gen.cs" t="Include" />
|
||||
<e p="bool4x2.gen.cs" t="Include" />
|
||||
<e p="bool4x3.gen.cs" t="Include" />
|
||||
<e p="bool4x4.gen.cs" t="Include" />
|
||||
<e p="double2.gen.cs" t="Include" />
|
||||
<e p="double2x2.gen.cs" t="Include" />
|
||||
<e p="double2x3.gen.cs" t="Include" />
|
||||
<e p="double2x4.gen.cs" t="Include" />
|
||||
<e p="double3.gen.cs" t="Include" />
|
||||
<e p="double3x2.gen.cs" t="Include" />
|
||||
<e p="double3x3.gen.cs" t="Include" />
|
||||
<e p="double3x4.gen.cs" t="Include" />
|
||||
<e p="double4.gen.cs" t="Include" />
|
||||
<e p="double4x2.gen.cs" t="Include" />
|
||||
<e p="double4x3.gen.cs" t="Include" />
|
||||
<e p="double4x4.gen.cs" t="Include" />
|
||||
<e p="float2.gen.cs" t="Include" />
|
||||
<e p="float2x2.gen.cs" t="Include" />
|
||||
<e p="float2x3.gen.cs" t="Include" />
|
||||
<e p="float2x4.gen.cs" t="Include" />
|
||||
<e p="float3.gen.cs" t="Include" />
|
||||
<e p="float3x2.gen.cs" t="Include" />
|
||||
<e p="float3x3.gen.cs" t="Include" />
|
||||
<e p="float3x4.gen.cs" t="Include" />
|
||||
<e p="float4.gen.cs" t="Include" />
|
||||
<e p="float4x2.gen.cs" t="Include" />
|
||||
<e p="float4x3.gen.cs" t="Include" />
|
||||
<e p="float4x4.gen.cs" t="Include" />
|
||||
<e p="half.cs" t="Include" />
|
||||
<e p="half2.gen.cs" t="Include" />
|
||||
<e p="half3.gen.cs" t="Include" />
|
||||
<e p="half4.gen.cs" t="Include" />
|
||||
<e p="int2.gen.cs" t="Include" />
|
||||
<e p="int2x2.gen.cs" t="Include" />
|
||||
<e p="int2x3.gen.cs" t="Include" />
|
||||
<e p="int2x4.gen.cs" t="Include" />
|
||||
<e p="int3.gen.cs" t="Include" />
|
||||
<e p="int3x2.gen.cs" t="Include" />
|
||||
<e p="int3x3.gen.cs" t="Include" />
|
||||
<e p="int3x4.gen.cs" t="Include" />
|
||||
<e p="int4.gen.cs" t="Include" />
|
||||
<e p="int4x2.gen.cs" t="Include" />
|
||||
<e p="int4x3.gen.cs" t="Include" />
|
||||
<e p="int4x4.gen.cs" t="Include" />
|
||||
<e p="math.cs" t="Include" />
|
||||
<e p="matrix.cs" t="Include" />
|
||||
<e p="matrix.gen.cs" t="Include" />
|
||||
<e p="Noise" t="Include">
|
||||
<e p="cellular2D.cs" t="Include" />
|
||||
<e p="cellular2x2.cs" t="Include" />
|
||||
<e p="cellular2x2x2.cs" t="Include" />
|
||||
<e p="cellular3D.cs" t="Include" />
|
||||
<e p="classicnoise2D.cs" t="Include" />
|
||||
<e p="classicnoise3D.cs" t="Include" />
|
||||
<e p="classicnoise4D.cs" t="Include" />
|
||||
<e p="common.cs" t="Include" />
|
||||
<e p="LICENSE" t="Include" />
|
||||
<e p="noise2D.cs" t="Include" />
|
||||
<e p="noise3D.cs" t="Include" />
|
||||
<e p="noise3Dgrad.cs" t="Include" />
|
||||
<e p="noise4D.cs" t="Include" />
|
||||
<e p="psrdnoise2D.cs" t="Include" />
|
||||
<e p="README" t="Include" />
|
||||
</e>
|
||||
<e p="PropertyAttributes.cs" t="Include" />
|
||||
<e p="quaternion.cs" t="Include" />
|
||||
<e p="random.cs" t="Include" />
|
||||
<e p="rigid_transform.cs" t="Include" />
|
||||
<e p="uint2.gen.cs" t="Include" />
|
||||
<e p="uint2x2.gen.cs" t="Include" />
|
||||
<e p="uint2x3.gen.cs" t="Include" />
|
||||
<e p="uint2x4.gen.cs" t="Include" />
|
||||
<e p="uint3.gen.cs" t="Include" />
|
||||
<e p="uint3x2.gen.cs" t="Include" />
|
||||
<e p="uint3x3.gen.cs" t="Include" />
|
||||
<e p="uint3x4.gen.cs" t="Include" />
|
||||
<e p="uint4.gen.cs" t="Include" />
|
||||
<e p="uint4x2.gen.cs" t="Include" />
|
||||
<e p="uint4x3.gen.cs" t="Include" />
|
||||
<e p="uint4x4.gen.cs" t="Include" />
|
||||
<e p="Unity.Mathematics.asmdef" t="Include" />
|
||||
</e>
|
||||
</e>
|
||||
<e p="Economy.sln" t="IncludeFlat" />
|
||||
<e p="packages" t="ExcludeRecursive" />
|
||||
|
|
|
|||
|
|
@ -1,5 +1,9 @@
|
|||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp", "Assembly-CSharp.csproj", "{29B684F0-E616-CD9C-EFF8-10A39DB37A52}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Economy.Shared.Unity", "Economy.Shared.Unity.csproj", "{A62B36C2-E9DE-B992-0779-F5FCF5968986}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MessagePack", "MessagePack.csproj", "{21EF11C5-27DC-3D88-B027-9A4B6F36BAE4}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MagicOnion", "MagicOnion.csproj", "{8646472B-6F4E-DCCA-A987-99E48366FF7F}"
|
||||
|
|
@ -8,9 +12,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MagicOnion.Abstractions", "
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MagicOnion.Unity", "MagicOnion.Unity.csproj", "{B83AC090-25E2-7BA3-4612-A18BBB80B3E6}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp", "Assembly-CSharp.csproj", "{29B684F0-E616-CD9C-EFF8-10A39DB37A52}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Economy.Shared.Unity", "Economy.Shared.Unity.csproj", "{A62B36C2-E9DE-B992-0779-F5FCF5968986}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp-firstpass", "Assembly-CSharp-firstpass.csproj", "{7D8742A4-0DFC-5667-0A98-3CA4312F9253}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp-Editor", "Assembly-CSharp-Editor.csproj", "{E389FCA7-CA14-82FB-7D67-C13788BEE74A}"
|
||||
EndProject
|
||||
|
|
@ -20,6 +22,14 @@ Global
|
|||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{29B684F0-E616-CD9C-EFF8-10A39DB37A52}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{29B684F0-E616-CD9C-EFF8-10A39DB37A52}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{29B684F0-E616-CD9C-EFF8-10A39DB37A52}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{29B684F0-E616-CD9C-EFF8-10A39DB37A52}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A62B36C2-E9DE-B992-0779-F5FCF5968986}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A62B36C2-E9DE-B992-0779-F5FCF5968986}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A62B36C2-E9DE-B992-0779-F5FCF5968986}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A62B36C2-E9DE-B992-0779-F5FCF5968986}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{21EF11C5-27DC-3D88-B027-9A4B6F36BAE4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{21EF11C5-27DC-3D88-B027-9A4B6F36BAE4}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{21EF11C5-27DC-3D88-B027-9A4B6F36BAE4}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
|
|
@ -36,14 +46,10 @@ Global
|
|||
{B83AC090-25E2-7BA3-4612-A18BBB80B3E6}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B83AC090-25E2-7BA3-4612-A18BBB80B3E6}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B83AC090-25E2-7BA3-4612-A18BBB80B3E6}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{29B684F0-E616-CD9C-EFF8-10A39DB37A52}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{29B684F0-E616-CD9C-EFF8-10A39DB37A52}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{29B684F0-E616-CD9C-EFF8-10A39DB37A52}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{29B684F0-E616-CD9C-EFF8-10A39DB37A52}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A62B36C2-E9DE-B992-0779-F5FCF5968986}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A62B36C2-E9DE-B992-0779-F5FCF5968986}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A62B36C2-E9DE-B992-0779-F5FCF5968986}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A62B36C2-E9DE-B992-0779-F5FCF5968986}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{7D8742A4-0DFC-5667-0A98-3CA4312F9253}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{7D8742A4-0DFC-5667-0A98-3CA4312F9253}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7D8742A4-0DFC-5667-0A98-3CA4312F9253}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{7D8742A4-0DFC-5667-0A98-3CA4312F9253}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{E389FCA7-CA14-82FB-7D67-C13788BEE74A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E389FCA7-CA14-82FB-7D67-C13788BEE74A}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E389FCA7-CA14-82FB-7D67-C13788BEE74A}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
|
|
|
|||
2
Aetheria-Economy.sln.DotSettings
Normal file
2
Aetheria-Economy.sln.DotSettings
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=Hardpoint/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>Temp\bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;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_2018_4_17;UNITY_2018_4;UNITY_2018;PLATFORM_ARCH_64;UNITY_64;UNITY_INCLUDE_TESTS;ENABLE_AUDIO;ENABLE_CACHING;ENABLE_CLOTH;ENABLE_DUCK_TYPING;ENABLE_MICROPHONE;ENABLE_MULTIPLE_DISPLAYS;ENABLE_PHYSICS;ENABLE_SPRITES;ENABLE_GRID;ENABLE_TILEMAP;ENABLE_TERRAIN;ENABLE_TEXTURE_STREAMING;ENABLE_DIRECTOR;ENABLE_UNET;ENABLE_LZMA;ENABLE_UNITYEVENTS;ENABLE_WEBCAM;ENABLE_WWW;ENABLE_CLOUD_SERVICES_COLLAB;ENABLE_CLOUD_SERVICES_COLLAB_SOFTLOCKS;ENABLE_CLOUD_SERVICES_ADS;ENABLE_CLOUD_HUB;ENABLE_CLOUD_PROJECT_ID;ENABLE_CLOUD_SERVICES_USE_WEBREQUEST;ENABLE_CLOUD_SERVICES_UNET;ENABLE_CLOUD_SERVICES_BUILD;ENABLE_CLOUD_LICENSE;ENABLE_EDITOR_HUB;ENABLE_EDITOR_HUB_LICENSE;ENABLE_WEBSOCKET_CLIENT;ENABLE_DIRECTOR_AUDIO;ENABLE_DIRECTOR_TEXTURE;ENABLE_TIMELINE;ENABLE_EDITOR_METRICS;ENABLE_EDITOR_METRICS_CACHING;ENABLE_MANAGED_JOBS;ENABLE_MANAGED_TRANSFORM_JOBS;ENABLE_MANAGED_ANIMATION_JOBS;INCLUDE_DYNAMIC_GI;INCLUDE_GI;ENABLE_MONO_BDWGC;PLATFORM_SUPPORTS_MONO;RENDER_SOFTWARE_CURSOR;INCLUDE_PUBNUB;ENABLE_VIDEO;ENABLE_CUSTOM_RENDER_TEXTURE;ENABLE_LOCALIZATION;PLATFORM_STANDALONE_WIN;PLATFORM_STANDALONE;UNITY_STANDALONE_WIN;UNITY_STANDALONE;ENABLE_SUBSTANCE;ENABLE_RUNTIME_GI;ENABLE_MOVIES;ENABLE_NETWORK;ENABLE_CRUNCH_TEXTURE_COMPRESSION;ENABLE_UNITYWEBREQUEST;ENABLE_CLOUD_SERVICES;ENABLE_CLOUD_SERVICES_ANALYTICS;ENABLE_CLOUD_SERVICES_PURCHASING;ENABLE_CLOUD_SERVICES_CRASH_REPORTING;ENABLE_OUT_OF_PROCESS_CRASH_HANDLER;ENABLE_EVENT_QUEUE;ENABLE_CLUSTER_SYNC;ENABLE_CLUSTERINPUT;ENABLE_VR;ENABLE_AR;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;CSHARP_7_OR_LATER;CSHARP_7_3_OR_NEWER</DefineConstants>
|
||||
<DefineConstants>DEBUG;TRACE;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_2018_4_17;UNITY_2018_4;UNITY_2018;PLATFORM_ARCH_64;UNITY_64;UNITY_INCLUDE_TESTS;ENABLE_AUDIO;ENABLE_CACHING;ENABLE_CLOTH;ENABLE_DUCK_TYPING;ENABLE_MICROPHONE;ENABLE_MULTIPLE_DISPLAYS;ENABLE_PHYSICS;ENABLE_SPRITES;ENABLE_GRID;ENABLE_TILEMAP;ENABLE_TERRAIN;ENABLE_TEXTURE_STREAMING;ENABLE_DIRECTOR;ENABLE_UNET;ENABLE_LZMA;ENABLE_UNITYEVENTS;ENABLE_WEBCAM;ENABLE_WWW;ENABLE_CLOUD_SERVICES_COLLAB;ENABLE_CLOUD_SERVICES_COLLAB_SOFTLOCKS;ENABLE_CLOUD_SERVICES_ADS;ENABLE_CLOUD_HUB;ENABLE_CLOUD_PROJECT_ID;ENABLE_CLOUD_SERVICES_USE_WEBREQUEST;ENABLE_CLOUD_SERVICES_UNET;ENABLE_CLOUD_SERVICES_BUILD;ENABLE_CLOUD_LICENSE;ENABLE_EDITOR_HUB;ENABLE_EDITOR_HUB_LICENSE;ENABLE_WEBSOCKET_CLIENT;ENABLE_DIRECTOR_AUDIO;ENABLE_DIRECTOR_TEXTURE;ENABLE_TIMELINE;ENABLE_EDITOR_METRICS;ENABLE_EDITOR_METRICS_CACHING;ENABLE_MANAGED_JOBS;ENABLE_MANAGED_TRANSFORM_JOBS;ENABLE_MANAGED_ANIMATION_JOBS;INCLUDE_DYNAMIC_GI;INCLUDE_GI;ENABLE_MONO_BDWGC;PLATFORM_SUPPORTS_MONO;RENDER_SOFTWARE_CURSOR;INCLUDE_PUBNUB;ENABLE_VIDEO;ENABLE_CUSTOM_RENDER_TEXTURE;ENABLE_LOCALIZATION;PLATFORM_STANDALONE_WIN;PLATFORM_STANDALONE;UNITY_STANDALONE_WIN;UNITY_STANDALONE;ENABLE_SUBSTANCE;ENABLE_RUNTIME_GI;ENABLE_MOVIES;ENABLE_NETWORK;ENABLE_CRUNCH_TEXTURE_COMPRESSION;ENABLE_UNITYWEBREQUEST;ENABLE_CLOUD_SERVICES;ENABLE_CLOUD_SERVICES_ANALYTICS;ENABLE_CLOUD_SERVICES_PURCHASING;ENABLE_CLOUD_SERVICES_CRASH_REPORTING;ENABLE_OUT_OF_PROCESS_CRASH_HANDLER;ENABLE_EVENT_QUEUE;ENABLE_CLUSTER_SYNC;ENABLE_CLUSTERINPUT;ENABLE_VR;ENABLE_AR;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;UNITY_PRO_LICENSE;CSHARP_7_OR_LATER;CSHARP_7_3_OR_NEWER</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoWarn>0169</NoWarn>
|
||||
|
|
@ -60,8 +60,11 @@
|
|||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Assets\Scripts\Editor\DatabaseEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\Editor\DatabaseInspector.cs" />
|
||||
<Compile Include="Assets\Scripts\Editor\DatabaseView.cs" />
|
||||
<Compile Include="Assets\Scripts\Editor\EditorDispatch.cs" />
|
||||
<Compile Include="Assets\Scripts\Editor\GalaxyEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\Editor\SerializerTestWindow.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Editor\Attributes\BaseAttribute.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Editor\Attributes\FieldDrawerAttribute.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Editor\Attributes\IAttribute.cs" />
|
||||
|
|
@ -114,19 +117,6 @@
|
|||
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Editor\Utility\EditorDrawUtility.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Editor\Utility\IOUtility.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Editor\Utility\PropertyUtility.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\AccordionElementEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\BezierLineRendererEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\BoxSliderEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\CanvasGroupActivator.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\CUIBezierCurveEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\CUIGraphicEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\CUIImageEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\CUITextEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\NonDrawingGraphicEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\ReadOnlyDrawer.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\TextPicEditor.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\uGUITools.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Editor\UIExtensionsMenuOptions.cs" />
|
||||
<None Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Editor\CodeGeneration\Templates\FieldDrawerDatabaseTemplate.txt" />
|
||||
<None Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Editor\CodeGeneration\Templates\MethodDrawerDatabaseTemplate.txt" />
|
||||
<None Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Editor\CodeGeneration\Templates\PropertyValidatorDatabaseTemplate.txt" />
|
||||
|
|
@ -141,15 +131,15 @@
|
|||
<Reference Include="Unity.PackageManagerUI.Editor">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.PackageManagerUI.Editor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.TextMeshPro">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.TextMeshPro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Mathematics">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.Mathematics.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Mathematics.Editor">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.Mathematics.Editor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.TextMeshPro">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.TextMeshPro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AIModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.AIModule.dll</HintPath>
|
||||
</Reference>
|
||||
|
|
@ -384,6 +374,9 @@
|
|||
<Reference Include="UnityEditor.WindowsStandalone.Extensions">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/PlaybackEngines/windowsstandalonesupport/UnityEditor.WindowsStandalone.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.SqlServer.Types">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Microsoft.SqlServer.Types.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Buffers">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
|
|
@ -396,20 +389,32 @@
|
|||
<Reference Include="System.Threading.Tasks.Extensions">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="JetBrains.Rider.Unity.Editor.Plugin.Repacked">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Editor/JetBrains/JetBrains.Rider.Unity.Editor.Plugin.Repacked.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Google.Protobuf">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Google.Protobuf/lib/net45/Google.Protobuf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Grpc.Core">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Grpc.Core/lib/net45/Grpc.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Grpc.Core.Api">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Grpc.Core.Api/lib/net45/Grpc.Core.Api.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Google.Protobuf">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Google.Protobuf/lib/net45/Google.Protobuf.dll</HintPath>
|
||||
<Reference Include="RethinkDb.Driver">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/RethinkDb.Driver.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="JetBrains.Rider.Unity.Editor.Plugin.Repacked">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Editor/JetBrains/JetBrains.Rider.Unity.Editor.Plugin.Repacked.dll</HintPath>
|
||||
<Reference Include="RethinkDb.Driver.Linq">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/RethinkDb.Driver.Linq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.SqlServer.Types">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Microsoft.SqlServer.Types.dll</HintPath>
|
||||
<Reference Include="Newtonsoft.Json">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Extensions.Logging.Abstractions">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Remotion.Linq">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Remotion.Linq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="mscorlib">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/mscorlib.dll</HintPath>
|
||||
|
|
@ -767,6 +772,10 @@
|
|||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="Assembly-CSharp-firstpass.csproj">
|
||||
<Project>{7D8742A4-0DFC-5667-0A98-3CA4312F9253}</Project>
|
||||
<Name>Assembly-CSharp-firstpass</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="Assembly-CSharp.csproj">
|
||||
<Project>{29B684F0-E616-CD9C-EFF8-10A39DB37A52}</Project>
|
||||
<Name>Assembly-CSharp</Name>
|
||||
|
|
|
|||
715
Assembly-CSharp-firstpass.csproj
Normal file
715
Assembly-CSharp-firstpass.csproj
Normal file
|
|
@ -0,0 +1,715 @@
|
|||
<?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>
|
||||
<ProjectTypeGuids>{E097FAD1-6243-4DAD-9C02-E9B9EFC3FFC1};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<_TargetFrameworkDirectories>non_empty_path_generated_by_rider_editor_plugin</_TargetFrameworkDirectories>
|
||||
<_FullFrameworkReferenceAssemblyPaths>non_empty_path_generated_by_rider_editor_plugin</_FullFrameworkReferenceAssemblyPaths>
|
||||
<DisableHandlePackageFileConflicts>true</DisableHandlePackageFileConflicts>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>10.0.20506</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<RootNamespace></RootNamespace>
|
||||
<ProjectGuid>{7D8742A4-0DFC-5667-0A98-3CA4312F9253}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<AssemblyName>Assembly-CSharp-firstpass</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_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_2018_4_17;UNITY_2018_4;UNITY_2018;PLATFORM_ARCH_64;UNITY_64;UNITY_INCLUDE_TESTS;ENABLE_AUDIO;ENABLE_CACHING;ENABLE_CLOTH;ENABLE_DUCK_TYPING;ENABLE_MICROPHONE;ENABLE_MULTIPLE_DISPLAYS;ENABLE_PHYSICS;ENABLE_SPRITES;ENABLE_GRID;ENABLE_TILEMAP;ENABLE_TERRAIN;ENABLE_TEXTURE_STREAMING;ENABLE_DIRECTOR;ENABLE_UNET;ENABLE_LZMA;ENABLE_UNITYEVENTS;ENABLE_WEBCAM;ENABLE_WWW;ENABLE_CLOUD_SERVICES_COLLAB;ENABLE_CLOUD_SERVICES_COLLAB_SOFTLOCKS;ENABLE_CLOUD_SERVICES_ADS;ENABLE_CLOUD_HUB;ENABLE_CLOUD_PROJECT_ID;ENABLE_CLOUD_SERVICES_USE_WEBREQUEST;ENABLE_CLOUD_SERVICES_UNET;ENABLE_CLOUD_SERVICES_BUILD;ENABLE_CLOUD_LICENSE;ENABLE_EDITOR_HUB;ENABLE_EDITOR_HUB_LICENSE;ENABLE_WEBSOCKET_CLIENT;ENABLE_DIRECTOR_AUDIO;ENABLE_DIRECTOR_TEXTURE;ENABLE_TIMELINE;ENABLE_EDITOR_METRICS;ENABLE_EDITOR_METRICS_CACHING;ENABLE_MANAGED_JOBS;ENABLE_MANAGED_TRANSFORM_JOBS;ENABLE_MANAGED_ANIMATION_JOBS;INCLUDE_DYNAMIC_GI;INCLUDE_GI;ENABLE_MONO_BDWGC;PLATFORM_SUPPORTS_MONO;RENDER_SOFTWARE_CURSOR;INCLUDE_PUBNUB;ENABLE_VIDEO;ENABLE_CUSTOM_RENDER_TEXTURE;ENABLE_LOCALIZATION;PLATFORM_STANDALONE_WIN;PLATFORM_STANDALONE;UNITY_STANDALONE_WIN;UNITY_STANDALONE;ENABLE_SUBSTANCE;ENABLE_RUNTIME_GI;ENABLE_MOVIES;ENABLE_NETWORK;ENABLE_CRUNCH_TEXTURE_COMPRESSION;ENABLE_UNITYWEBREQUEST;ENABLE_CLOUD_SERVICES;ENABLE_CLOUD_SERVICES_ANALYTICS;ENABLE_CLOUD_SERVICES_PURCHASING;ENABLE_CLOUD_SERVICES_CRASH_REPORTING;ENABLE_OUT_OF_PROCESS_CRASH_HANDLER;ENABLE_EVENT_QUEUE;ENABLE_CLUSTER_SYNC;ENABLE_CLUSTERINPUT;ENABLE_VR;ENABLE_AR;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;UNITY_PRO_LICENSE;CSHARP_7_OR_LATER;CSHARP_7_3_OR_NEWER</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoWarn>0169</NoWarn>
|
||||
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
|
||||
</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>0169</NoWarn>
|
||||
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<NoConfig>true</NoConfig>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>
|
||||
<ImplicitlyExpandNETStandardFacades>false</ImplicitlyExpandNETStandardFacades>
|
||||
<ImplicitlyExpandDesignTimeFacades>false</ImplicitlyExpandDesignTimeFacades>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="UnityEngine">
|
||||
<HintPath>C:\Program Files\Unity\Hub\Editor\2018.4.17f1\Editor\Data\Managed/UnityEngine/UnityEngine.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEditor">
|
||||
<HintPath>C:\Program Files\Unity\Hub\Editor\2018.4.17f1\Editor\Data\Managed/UnityEditor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp">
|
||||
<HintPath>C:\Program Files\Unity\Hub\Editor\2018.4.17f1\Editor\Data\MonoBleedingEdge\lib\mono\4.7.1-api\Microsoft.CSharp.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Assets\Plugins\AsyncAwaitUtil\Source\Awaiters.cs" />
|
||||
<Compile Include="Assets\Plugins\AsyncAwaitUtil\Source\AwaitExtensions.cs" />
|
||||
<Compile Include="Assets\Plugins\AsyncAwaitUtil\Source\IEnumeratorAwaitExtensions.cs" />
|
||||
<Compile Include="Assets\Plugins\AsyncAwaitUtil\Source\Internal\AsyncCoroutineRunner.cs" />
|
||||
<Compile Include="Assets\Plugins\AsyncAwaitUtil\Source\Internal\SyncContextUtil.cs" />
|
||||
<Compile Include="Assets\Plugins\AsyncAwaitUtil\Source\TaskExtensions.cs" />
|
||||
<Compile Include="Assets\Plugins\AsyncAwaitUtil\Source\WaitForBackgroundThread.cs" />
|
||||
<Compile Include="Assets\Plugins\AsyncAwaitUtil\Source\WaitForUpdate.cs" />
|
||||
<Compile Include="Assets\Plugins\AsyncAwaitUtil\Tests\AsyncUtilTests.cs" />
|
||||
<Compile Include="Assets\Plugins\AsyncAwaitUtil\Tests\Util\TestButtonHandler.cs" />
|
||||
<None Include="Assets\Plugins\Grpc.Core\lib\net45\Grpc.Core.xml" />
|
||||
<None Include="Assets\Plugins\Grpc.Core.Api\lib\net45\Grpc.Core.Api.xml" />
|
||||
<Reference Include="Unity.TextMeshPro.Editor">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.TextMeshPro.Editor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.PackageManagerUI.Editor">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.PackageManagerUI.Editor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Mathematics">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.Mathematics.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Mathematics.Editor">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.Mathematics.Editor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.TextMeshPro">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.TextMeshPro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AIModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.AIModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ARModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.ARModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AccessibilityModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.AccessibilityModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AnimationModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.AnimationModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AssetBundleModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.AssetBundleModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AudioModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.AudioModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.BaselibModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.BaselibModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ClothModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClothModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ClusterInputModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClusterInputModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ClusterRendererModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClusterRendererModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.CoreModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.CoreModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.CrashReportingModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.CrashReportingModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.DirectorModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.DirectorModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.FileSystemHttpModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.FileSystemHttpModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.GameCenterModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.GameCenterModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.GridModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.GridModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.HotReloadModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.HotReloadModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.IMGUIModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.IMGUIModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ImageConversionModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.ImageConversionModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.InputModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.InputModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.JSONSerializeModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.JSONSerializeModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.LocalizationModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.LocalizationModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ParticleSystemModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.ParticleSystemModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.PerformanceReportingModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.PerformanceReportingModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.PhysicsModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.PhysicsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.Physics2DModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.Physics2DModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ProfilerModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.ProfilerModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ScreenCaptureModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.ScreenCaptureModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.SharedInternalsModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.SharedInternalsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.SpriteMaskModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.SpriteMaskModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.SpriteShapeModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.SpriteShapeModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.StreamingModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.StreamingModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.StyleSheetsModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.StyleSheetsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.SubstanceModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.SubstanceModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TLSModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.TLSModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TerrainModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.TerrainModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TerrainPhysicsModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.TerrainPhysicsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TextCoreModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.TextCoreModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TextRenderingModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.TextRenderingModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TilemapModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.TilemapModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TimelineModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.TimelineModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UIModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UIModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UIElementsModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UIElementsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UNETModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UNETModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UmbraModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UmbraModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityAnalyticsModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityAnalyticsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityConnectModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityConnectModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityTestProtocolModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityTestProtocolModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityWebRequestModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityWebRequestAssetBundleModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestAssetBundleModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityWebRequestAudioModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestAudioModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityWebRequestTextureModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestTextureModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityWebRequestWWWModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestWWWModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.VFXModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.VFXModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.VRModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.VRModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.VehiclesModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.VehiclesModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.VideoModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.VideoModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.WindModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.WindModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.XRModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.XRModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Locator">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/Unity.Locator.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UI">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/UnityExtensions/Unity/GUISystem/UnityEngine.UI.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TestRunner">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/UnityExtensions/Unity/TestRunner/UnityEngine.TestRunner.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="nunit.framework">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/UnityExtensions/Unity/TestRunner/net35/unity-custom/nunit.framework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.Timeline">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/UnityExtensions/Unity/Timeline/RuntimeEditor/UnityEngine.Timeline.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.Networking">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/UnityExtensions/Unity/Networking/UnityEngine.Networking.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.GoogleAudioSpatializer">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/UnityExtensions/Unity/UnityGoogleAudioSpatializer/RuntimeEditor/UnityEngine.GoogleAudioSpatializer.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.SpatialTracking">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/UnityExtensions/Unity/UnitySpatialTracking/RuntimeEditor/UnityEngine.SpatialTracking.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.SqlServer.Types">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Microsoft.SqlServer.Types.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Buffers">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Memory">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Google.Protobuf">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Google.Protobuf/lib/net45/Google.Protobuf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Grpc.Core">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Grpc.Core/lib/net45/Grpc.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Grpc.Core.Api">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Grpc.Core.Api/lib/net45/Grpc.Core.Api.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="RethinkDb.Driver">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/RethinkDb.Driver.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="RethinkDb.Driver.Linq">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/RethinkDb.Driver.Linq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Extensions.Logging.Abstractions">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Remotion.Linq">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Remotion.Linq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="mscorlib">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/mscorlib.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/System.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Core">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/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/2018.4.17f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/Facades/System.Xml.XPath.XDocument.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityScript">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/MonoBleedingEdge/lib/mono/unityscript/UnityScript.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityScript.Lang">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/MonoBleedingEdge/lib/mono/unityscript/UnityScript.Lang.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Boo.Lang">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/MonoBleedingEdge/lib/mono/unityscript/Boo.Lang.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="Economy.Shared.Unity.csproj">
|
||||
<Project>{A62B36C2-E9DE-B992-0779-F5FCF5968986}</Project>
|
||||
<Name>Economy.Shared.Unity</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="MagicOnion.csproj">
|
||||
<Project>{8646472B-6F4E-DCCA-A987-99E48366FF7F}</Project>
|
||||
<Name>MagicOnion</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="MagicOnion.Unity.csproj">
|
||||
<Project>{B83AC090-25E2-7BA3-4612-A18BBB80B3E6}</Project>
|
||||
<Name>MagicOnion.Unity</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="MagicOnion.Abstractions.csproj">
|
||||
<Project>{7A90811F-E771-FAB4-C8B5-EA6DF36C4D19}</Project>
|
||||
<Name>MagicOnion.Abstractions</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="MessagePack.csproj">
|
||||
<Project>{21EF11C5-27DC-3D88-B027-9A4B6F36BAE4}</Project>
|
||||
<Name>MessagePack</Name>
|
||||
</ProjectReference>
|
||||
</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>
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>Temp\bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;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_2018_4_17;UNITY_2018_4;UNITY_2018;PLATFORM_ARCH_64;UNITY_64;UNITY_INCLUDE_TESTS;ENABLE_AUDIO;ENABLE_CACHING;ENABLE_CLOTH;ENABLE_DUCK_TYPING;ENABLE_MICROPHONE;ENABLE_MULTIPLE_DISPLAYS;ENABLE_PHYSICS;ENABLE_SPRITES;ENABLE_GRID;ENABLE_TILEMAP;ENABLE_TERRAIN;ENABLE_TEXTURE_STREAMING;ENABLE_DIRECTOR;ENABLE_UNET;ENABLE_LZMA;ENABLE_UNITYEVENTS;ENABLE_WEBCAM;ENABLE_WWW;ENABLE_CLOUD_SERVICES_COLLAB;ENABLE_CLOUD_SERVICES_COLLAB_SOFTLOCKS;ENABLE_CLOUD_SERVICES_ADS;ENABLE_CLOUD_HUB;ENABLE_CLOUD_PROJECT_ID;ENABLE_CLOUD_SERVICES_USE_WEBREQUEST;ENABLE_CLOUD_SERVICES_UNET;ENABLE_CLOUD_SERVICES_BUILD;ENABLE_CLOUD_LICENSE;ENABLE_EDITOR_HUB;ENABLE_EDITOR_HUB_LICENSE;ENABLE_WEBSOCKET_CLIENT;ENABLE_DIRECTOR_AUDIO;ENABLE_DIRECTOR_TEXTURE;ENABLE_TIMELINE;ENABLE_EDITOR_METRICS;ENABLE_EDITOR_METRICS_CACHING;ENABLE_MANAGED_JOBS;ENABLE_MANAGED_TRANSFORM_JOBS;ENABLE_MANAGED_ANIMATION_JOBS;INCLUDE_DYNAMIC_GI;INCLUDE_GI;ENABLE_MONO_BDWGC;PLATFORM_SUPPORTS_MONO;RENDER_SOFTWARE_CURSOR;INCLUDE_PUBNUB;ENABLE_VIDEO;ENABLE_CUSTOM_RENDER_TEXTURE;ENABLE_LOCALIZATION;PLATFORM_STANDALONE_WIN;PLATFORM_STANDALONE;UNITY_STANDALONE_WIN;UNITY_STANDALONE;ENABLE_SUBSTANCE;ENABLE_RUNTIME_GI;ENABLE_MOVIES;ENABLE_NETWORK;ENABLE_CRUNCH_TEXTURE_COMPRESSION;ENABLE_UNITYWEBREQUEST;ENABLE_CLOUD_SERVICES;ENABLE_CLOUD_SERVICES_ANALYTICS;ENABLE_CLOUD_SERVICES_PURCHASING;ENABLE_CLOUD_SERVICES_CRASH_REPORTING;ENABLE_OUT_OF_PROCESS_CRASH_HANDLER;ENABLE_EVENT_QUEUE;ENABLE_CLUSTER_SYNC;ENABLE_CLUSTERINPUT;ENABLE_VR;ENABLE_AR;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;CSHARP_7_OR_LATER;CSHARP_7_3_OR_NEWER</DefineConstants>
|
||||
<DefineConstants>DEBUG;TRACE;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_2018_4_17;UNITY_2018_4;UNITY_2018;PLATFORM_ARCH_64;UNITY_64;UNITY_INCLUDE_TESTS;ENABLE_AUDIO;ENABLE_CACHING;ENABLE_CLOTH;ENABLE_DUCK_TYPING;ENABLE_MICROPHONE;ENABLE_MULTIPLE_DISPLAYS;ENABLE_PHYSICS;ENABLE_SPRITES;ENABLE_GRID;ENABLE_TILEMAP;ENABLE_TERRAIN;ENABLE_TEXTURE_STREAMING;ENABLE_DIRECTOR;ENABLE_UNET;ENABLE_LZMA;ENABLE_UNITYEVENTS;ENABLE_WEBCAM;ENABLE_WWW;ENABLE_CLOUD_SERVICES_COLLAB;ENABLE_CLOUD_SERVICES_COLLAB_SOFTLOCKS;ENABLE_CLOUD_SERVICES_ADS;ENABLE_CLOUD_HUB;ENABLE_CLOUD_PROJECT_ID;ENABLE_CLOUD_SERVICES_USE_WEBREQUEST;ENABLE_CLOUD_SERVICES_UNET;ENABLE_CLOUD_SERVICES_BUILD;ENABLE_CLOUD_LICENSE;ENABLE_EDITOR_HUB;ENABLE_EDITOR_HUB_LICENSE;ENABLE_WEBSOCKET_CLIENT;ENABLE_DIRECTOR_AUDIO;ENABLE_DIRECTOR_TEXTURE;ENABLE_TIMELINE;ENABLE_EDITOR_METRICS;ENABLE_EDITOR_METRICS_CACHING;ENABLE_MANAGED_JOBS;ENABLE_MANAGED_TRANSFORM_JOBS;ENABLE_MANAGED_ANIMATION_JOBS;INCLUDE_DYNAMIC_GI;INCLUDE_GI;ENABLE_MONO_BDWGC;PLATFORM_SUPPORTS_MONO;RENDER_SOFTWARE_CURSOR;INCLUDE_PUBNUB;ENABLE_VIDEO;ENABLE_CUSTOM_RENDER_TEXTURE;ENABLE_LOCALIZATION;PLATFORM_STANDALONE_WIN;PLATFORM_STANDALONE;UNITY_STANDALONE_WIN;UNITY_STANDALONE;ENABLE_SUBSTANCE;ENABLE_RUNTIME_GI;ENABLE_MOVIES;ENABLE_NETWORK;ENABLE_CRUNCH_TEXTURE_COMPRESSION;ENABLE_UNITYWEBREQUEST;ENABLE_CLOUD_SERVICES;ENABLE_CLOUD_SERVICES_ANALYTICS;ENABLE_CLOUD_SERVICES_PURCHASING;ENABLE_CLOUD_SERVICES_CRASH_REPORTING;ENABLE_OUT_OF_PROCESS_CRASH_HANDLER;ENABLE_EVENT_QUEUE;ENABLE_CLUSTER_SYNC;ENABLE_CLUSTERINPUT;ENABLE_VR;ENABLE_AR;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;UNITY_PRO_LICENSE;CSHARP_7_OR_LATER;CSHARP_7_3_OR_NEWER</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoWarn>0169</NoWarn>
|
||||
|
|
@ -60,18 +60,12 @@
|
|||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Assets\Scripts\Behaviors.cs" />
|
||||
<Compile Include="Assets\Scripts\ChatComponent.cs" />
|
||||
<Compile Include="Assets\Scripts\ColorButton.cs" />
|
||||
<Compile Include="Assets\Scripts\Database.cs" />
|
||||
<Compile Include="Assets\Scripts\DatabaseItems.cs" />
|
||||
<Compile Include="Assets\Scripts\Extensions.cs" />
|
||||
<Compile Include="Assets\Scripts\Galaxy.cs" />
|
||||
<Compile Include="Assets\Scripts\Generated\MagicOnion.Generated.cs" />
|
||||
<Compile Include="Assets\Scripts\Generated\MessagePack.Generated.cs" />
|
||||
<Compile Include="Assets\Scripts\Icons.cs" />
|
||||
<Compile Include="Assets\Scripts\InitialSettings.cs" />
|
||||
<Compile Include="Assets\Scripts\ItemInstance.cs" />
|
||||
<Compile Include="Assets\Scripts\MarkovNameGenerator.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\LinqFaster\Aggregate.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\LinqFaster\AnyAll.cs" />
|
||||
|
|
@ -151,12 +145,9 @@
|
|||
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Core\ValidatorAttributes\RequiredAttribute.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Core\ValidatorAttributes\ValidateInputAttribute.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\NaughtyAttributes\Scripts\Core\ValidatorAttributes\ValidatorAttribute.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Examples\Sample01_ObservableWWW.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Examples\Sample02_ObservableTriggers.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Examples\Sample03_GameObjectAsObservable.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Examples\Sample04_ConvertFromUnityCallback.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Examples\Sample05_ConvertFromCoroutine.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Examples\Sample06_ConvertToCoroutine.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Examples\Sample07_OrchestratIEnumerator.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Examples\Sample08_DetectDoubleClick.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Examples\Sample09_EventHandling.cs" />
|
||||
|
|
@ -326,7 +317,6 @@
|
|||
<Compile Include="Assets\Scripts\NIH\UniRx\Scripts\UnityEngineBridge\MainThreadScheduler.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Scripts\UnityEngineBridge\Observable.Unity.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Scripts\UnityEngineBridge\ObservableMonoBehaviour.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Scripts\UnityEngineBridge\ObservableWWW.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Scripts\UnityEngineBridge\ObserveExtensions.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Scripts\UnityEngineBridge\Operators\BatchFrame.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Scripts\UnityEngineBridge\Operators\DelayFrame.cs" />
|
||||
|
|
@ -394,224 +384,42 @@
|
|||
<Compile Include="Assets\Scripts\NIH\UniRx\Scripts\UnityEngineBridge\YieldInstructionCache.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Scripts\UnityWinRTBridge\Thread.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\UniRx\Scripts\UnityWinRTBridge\ThreadPoolScheduler_UnityWinRT.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\ComboBox\ComboBoxChanged.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\Cooldown\CooldownEffect_Image.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\Cooldown\CooldownEffect_SAUIM.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\01_Basic\Example01CellDto.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\01_Basic\Example01Scene.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\01_Basic\Example01ScrollView.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\01_Basic\Example01ScrollViewCell.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\02_CellEventHandling\Example02CellDto.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\02_CellEventHandling\Example02Scene.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\02_CellEventHandling\Example02ScrollView.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\02_CellEventHandling\Example02ScrollViewCell.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\02_CellEventHandling\Example02ScrollViewContext.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\03_InfiniteScroll\Example03CellDto.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\03_InfiniteScroll\Example03Scene.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\03_InfiniteScroll\Example03ScrollView.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\03_InfiniteScroll\Example03ScrollViewCell.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\FancyScrollView\03_InfiniteScroll\Example03ScrollViewContext.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\HSS-VSS-ScrollSnap\PaginationScript.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\HSS-VSS-ScrollSnap\UpdateScrollSnap.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\MenuExample\Scripts\Menus\AwesomeMenu.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\MenuExample\Scripts\Menus\GameMenu.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\MenuExample\Scripts\Menus\MainMenu.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\MenuExample\Scripts\Menus\OptionsMenu.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\MenuExample\Scripts\Menus\PauseMenu.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\RadialSlider\UpdateRadialValue.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\TextEffects\AnimateEffects.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\TextEffects\testHref.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\UILineRenderer\LineRendererOrbit.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\UILineRenderer\TestAddingPoints.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Examples\UIVerticalScrollerDemo\Scripts\ScrollingCalendar.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\Accordion\Accordion.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\Accordion\AccordionElement.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\Accordion\Tweening\FloatTween.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\Accordion\Tweening\ITweenValue.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\Accordion\Tweening\TweenRunner.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\BoxSlider.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\ColorImage.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\ColorLabel.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\ColorPickerControl.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\ColorPickerPresets.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\ColorPickerTester.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\ColorSlider.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\ColorSliderImage.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\ColorValues.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\Events\ColorChangedEvent.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\Events\HSVChangedEvent.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\HexColorField.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\HSVUtil.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\SVBoxSlider.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ColorPicker\TiltWindow.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ComboBox\AutoCompleteComboBox.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ComboBox\ComboBox.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ComboBox\DropDownList.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ComboBox\DropDownListButton.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ComboBox\DropDownListItem.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\CooldownButton.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\InputFocus.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\MultiTouchScrollRect.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\RadialSlider.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ReorderableList\ReorderableList.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ReorderableList\ReorderableListContent.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ReorderableList\ReorderableListDebug.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\ReorderableList\ReorderableListElement.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\RescalingPanels\RescaleDragPanel.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\RescalingPanels\RescalePanel.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\RescalingPanels\ResizePanel.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\SegmentedControl.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\SelectionBox\ExampleSelectable.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\SelectionBox\IBoxSelectable.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\SelectionBox\SelectionBox.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\Stepper.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\TextPic.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Controls\UI_Knob.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\BestFitOutline.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\CurlyUI\CUIBezierCurve.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\CurlyUI\CUIGraphic.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\CurlyUI\CUIImage.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\CurlyUI\CUIMisc.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\CurlyUI\CUIText.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\CurvedText.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\CylinderText.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\Gradient.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\Gradient2.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\LetterSpacing.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\MonoSpacing.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\NicerOutline.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\RaycastMask.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\ShaderEffects\UIAdditiveEffect.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\ShaderEffects\UIImageCrop.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\ShaderEffects\UILinearDodgeEffect.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\ShaderEffects\UIMultiplyEffect.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\ShaderEffects\UIScreenEffect.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\ShaderEffects\UISoftAdditiveEffect.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\ShineEffect.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\ShineEffector.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\SoftMaskScript.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\UIFlippable.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Effects\UIParticleSystem.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\InputModules\AimerInputModule.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\InputModules\GamePadInputModule.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\CurvedLayout.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\FancyScrollView.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\FancyScrollViewCell.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\FlowLayoutGroup.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\HorizontalScrollSnap.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\IScrollSnap.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\RadialLayout.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\ScrollPositionController.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\ScrollSnap.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\ScrollSnapBase.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\ScrollSnapScrollbarHelper.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\TableLayoutGroup.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\TileSizeFitter.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\UIVerticalScroller.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Layout\VerticalScrollSnap.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\MenuSystem\Menu.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\MenuSystem\MenuManager.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\MenuSystem\SimpleMenu.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Primitives\DiamondGraph.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Primitives\UICircle.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Primitives\UICornerCut.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Primitives\UIGridRenderer.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Primitives\UILineRenderer.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Primitives\UILineTextureRenderer.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Primitives\UIPolygon.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Primitives\UIPrimitiveBase.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\TabNavigationHelper.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\ToolTips\BoundTooltip\BoundTooltipItem.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\ToolTips\BoundTooltip\BoundTooltipTrigger.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\ToolTips\HoverTooltip.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\ToolTips\ToolTip.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\UIWindowBase.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\BezierPath.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\CableCurve.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\Circle.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\CLZF2.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\DragCorrector.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\ExtensionsToggle.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\ExtensionsToggleGroup.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\InputFieldEnterSubmit.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\NonDrawingGraphic.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\PaginationManager.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\PPIViewer.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\ReadOnlyAttribute.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\ReturnKeyTriggersButton.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\ScrollConflictManager.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\ScrollRectEx.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\ScrollRectExtensions.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\ScrollRectLinker.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\ScrollRectTweener.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\SelectableScaler.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\SetPropertyUtility.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\switchToRectTransform.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\TestCompression.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\UI_InfiniteScroll.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\UI_ScrollRectOcclusion.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\UI_TweenScale.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\UIExtensionMethods.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\UIHighlightable.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\UILineConnector.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\UIScrollToSelection.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\UIScrollToSelectionXY.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\Utilities\UISelectableExtension.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\VR Extensions\VRCursor.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\unity-ui-extensions\Scripts\VR Extensions\VRInputModule.cs" />
|
||||
<Compile Include="Assets\Scripts\NIH\XKCDColors.cs" />
|
||||
<Compile Include="Assets\Scripts\Orbit.cs" />
|
||||
<Compile Include="Assets\Scripts\PropertiesPanel.cs" />
|
||||
<Compile Include="Assets\Scripts\Prototype.cs" />
|
||||
<Compile Include="Assets\Scripts\Targetable.cs" />
|
||||
<Compile Include="Assets\Scripts\UnityExtensions.cs" />
|
||||
<Compile Include="Assets\Scripts\UnityFormatters.cs" />
|
||||
<Compile Include="Assets\Scripts\ZoneManager.cs" />
|
||||
<Compile Include="Assets\Scripts\ZoneRenderer.cs" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UIAdditive.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UI Particle AddSmooth.shader" />
|
||||
<None Include="Assets\Scripts\NIH\GPU Noise\ClassicNoise3D.cginc" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UI Particle Premultiply Blend.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UISoftAdditive.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UIParticleHidden.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\SoftMaskShader.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UI Particle Add.shader" />
|
||||
<None Include="Assets\Shaders\SimplexBrush.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UI Particle Multiply.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UI Particle Alpha Blend.shader" />
|
||||
<None Include="Assets\Shaders\CubicPulseBrush.shader" />
|
||||
<None Include="Assets\Shaders\PowerBrush.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UIImageCrop.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UILinearDodge.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UI Particle VertexLit Blended.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UI Particle AddMultiply.shader" />
|
||||
<None Include="Assets\Shaders\GalaxyMap.shader" />
|
||||
<None Include="Assets\Scripts\NIH\GPU Noise\SimplexNoiseGrad2D.cginc" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UI Particle Blend.shader" />
|
||||
<None Include="Assets\Scripts\NIH\UniRx\ReadMe.txt" />
|
||||
<None Include="Assets\Scripts\NIH\GPU Noise\SimplexNoise2D.cginc" />
|
||||
<None Include="Assets\Shaders\Isolines.shader" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UIMultiply.shader" />
|
||||
<None Include="Assets\Scripts\NIH\GPU Noise\ClassicNoise2D.cginc" />
|
||||
<None Include="Assets\Scripts\NIH\LinqFaster\readme.txt" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UIScreen.shader" />
|
||||
<None Include="Assets\Scripts\NIH\GPU Noise\SimplexNoise3D.cginc" />
|
||||
<None Include="Assets\Scripts\NIH\GPU Noise\SimplexNoiseGrad3D.cginc" />
|
||||
<None Include="Assets\Scripts\NIH\unity-ui-extensions\Shaders\UI Particle MultiplyDouble.shader" />
|
||||
<Reference Include="Unity.TextMeshPro.Editor">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.TextMeshPro.Editor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.PackageManagerUI.Editor">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.PackageManagerUI.Editor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.TextMeshPro">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.TextMeshPro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Mathematics">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.Mathematics.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Mathematics.Editor">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.Mathematics.Editor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.TextMeshPro">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Library/ScriptAssemblies/Unity.TextMeshPro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AIModule">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/Managed/UnityEngine/UnityEngine.AIModule.dll</HintPath>
|
||||
</Reference>
|
||||
|
|
@ -813,6 +621,9 @@
|
|||
<Reference Include="UnityEngine.SpatialTracking">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/UnityExtensions/Unity/UnitySpatialTracking/RuntimeEditor/UnityEngine.SpatialTracking.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.SqlServer.Types">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Microsoft.SqlServer.Types.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Buffers">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
|
|
@ -825,17 +636,29 @@
|
|||
<Reference Include="System.Threading.Tasks.Extensions">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Google.Protobuf">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Google.Protobuf/lib/net45/Google.Protobuf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Grpc.Core">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Grpc.Core/lib/net45/Grpc.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Grpc.Core.Api">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Grpc.Core.Api/lib/net45/Grpc.Core.Api.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Google.Protobuf">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Google.Protobuf/lib/net45/Google.Protobuf.dll</HintPath>
|
||||
<Reference Include="RethinkDb.Driver">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/RethinkDb.Driver.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.SqlServer.Types">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Microsoft.SqlServer.Types.dll</HintPath>
|
||||
<Reference Include="RethinkDb.Driver.Linq">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/RethinkDb.Driver.Linq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Extensions.Logging.Abstractions">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Remotion.Linq">
|
||||
<HintPath>C:/Users/rwvens/Documents/GitHub/Aetheria-Economy/Assets/Plugins/Remotion.Linq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="mscorlib">
|
||||
<HintPath>C:/Program Files/Unity/Hub/Editor/2018.4.17f1/Editor/Data/MonoBleedingEdge/lib/mono/4.7.1-api/mscorlib.dll</HintPath>
|
||||
|
|
@ -1193,6 +1016,10 @@
|
|||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="Assembly-CSharp-firstpass.csproj">
|
||||
<Project>{7D8742A4-0DFC-5667-0A98-3CA4312F9253}</Project>
|
||||
<Name>Assembly-CSharp-firstpass</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="Economy.Shared.Unity.csproj">
|
||||
<Project>{A62B36C2-E9DE-B992-0779-F5FCF5968986}</Project>
|
||||
<Name>Economy.Shared.Unity</Name>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 05be5754bcbeaa5458fe78bb55825ba4
|
||||
guid: 52b67ccc32714c74d947bcf1423e2ca5
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
9
Assets/Plugins/AsyncAwaitUtil/Documentation.meta
Normal file
9
Assets/Plugins/AsyncAwaitUtil/Documentation.meta
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 46d891d9b63592344ae73ff9c4cedbf1
|
||||
folderAsset: yes
|
||||
timeCreated: 1506242025
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
469
Assets/Plugins/AsyncAwaitUtil/Documentation/ReadMe.html
Normal file
469
Assets/Plugins/AsyncAwaitUtil/Documentation/ReadMe.html
Normal file
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 20766c9394fe27140b3389473dccd660
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
TextScriptImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: bc264b4d34aebb045b2fb00cce833d49
|
||||
folderAsset: yes
|
||||
timeCreated: 1506166710
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 837 B |
|
|
@ -1,7 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: c2b77282ad285f34dacea481a4ec44c4
|
||||
timeCreated: 1494955300
|
||||
licenseType: Free
|
||||
guid: 8f2198707218a564da2a9827a697cc2a
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 911 B |
|
|
@ -1,7 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3dc06f5aa2fbb624fbec6c044cbcaa03
|
||||
timeCreated: 1498408627
|
||||
licenseType: Free
|
||||
guid: 850f19a5487609c4dbed7ca6131d9879
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
|
|
@ -0,0 +1,186 @@
|
|||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0070)chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/cmdline_frame.html -->
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/cmdline_frame.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/cvimrc_parser.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/session.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/utils.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/dom.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/hints.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/bookmarks.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/keys.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/clipboard.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/complete.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/mappings.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/find.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/cursor.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/status.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/hud.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/visual.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/command.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/scroll.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/search.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/frames.js"></script>
|
||||
<script src="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/messenger.js"></script>
|
||||
<link rel="stylesheet" href="chrome-extension://ihlenndgcmojhcghmfjfneahoeklbjjh/content_scripts/main.css">
|
||||
<style>#cVim-command-bar, #cVim-command-bar-mode, #cVim-command-bar-input, #cVim-command-bar-search-results,
|
||||
.cVim-completion-item, .cVim-completion-item .cVim-full, .cVim-completion-item .cVim-left,
|
||||
.cVim-completion-item .cVim-right {
|
||||
font-family: Helvetica, Helvetica Neue, Neue, sans-serif, monospace, Arial;
|
||||
font-size: 10pt !important;
|
||||
-webkit-font-smoothing: antialiased !important;
|
||||
}
|
||||
|
||||
#cVim-command-bar {
|
||||
position: fixed;
|
||||
z-index: 2147483646;
|
||||
background-color: #1b1d1e;
|
||||
color: #bbb;
|
||||
display: none;
|
||||
box-sizing: content-box;
|
||||
box-shadow: 0 3px 3px rgba(0,0,0,0.4);
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
#cVim-command-bar-mode {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
box-sizing: border-box;
|
||||
padding-left: 2px;
|
||||
height: 100%;
|
||||
width: 10px;
|
||||
padding-top: 2px;
|
||||
color: #888;
|
||||
}
|
||||
|
||||
#cVim-command-bar-input {
|
||||
background-color: #1b1d1e;
|
||||
color: #bbb;
|
||||
height: 100%;
|
||||
right: 0;
|
||||
top: 0;
|
||||
width: calc(100% - 10px);
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
#cVim-command-bar-search-results {
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
z-index: 2147483647;
|
||||
left: 0;
|
||||
box-shadow: 0 3px 3px rgba(0,0,0,0.4);
|
||||
background-color: #1c1c1c;
|
||||
}
|
||||
|
||||
.cVim-completion-item, .cVim-completion-item .cVim-full, .cVim-completion-item .cVim-left, .cVim-completion-item .cVim-right {
|
||||
text-overflow: ellipsis;
|
||||
padding: 1px;
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
vertical-align: middle;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.cVim-completion-item:nth-child(even) {
|
||||
background-color: #1f1f1f;
|
||||
}
|
||||
|
||||
.cVim-completion-item {
|
||||
width: 100%; left: 0;
|
||||
color: #bcbcbc;
|
||||
}
|
||||
|
||||
.cVim-completion-item[active] {
|
||||
width: 100%; left: 0;
|
||||
color: #1b1d1e;
|
||||
background-color: #f1f1f1;
|
||||
}
|
||||
|
||||
.cVim-completion-item[active] span {
|
||||
color: #1b1d1e;
|
||||
}
|
||||
|
||||
.cVim-completion-item .cVim-left {
|
||||
color: #fff;
|
||||
width: 37%;
|
||||
}
|
||||
|
||||
.cVim-completion-item .cVim-right {
|
||||
font-style: italic;
|
||||
color: #888;
|
||||
width: 57%;
|
||||
}
|
||||
|
||||
|
||||
#cVim-link-container, .cVim-link-hint,
|
||||
#cVim-hud, #cVim-status-bar {
|
||||
font-family: Helvetica, Helvetica Neue, Neue, sans-serif, monospace, Arial;
|
||||
font-size: 10pt !important;
|
||||
-webkit-font-smoothing: antialiased !important;
|
||||
}
|
||||
|
||||
#cVim-link-container {
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
width: 100%; left: 0;
|
||||
height: 100%; top: 0;
|
||||
z-index: 2147483647;
|
||||
}
|
||||
|
||||
.cVim-link-hint {
|
||||
position: absolute;
|
||||
color: #302505 !important;
|
||||
background-color: #ffd76e !important;
|
||||
border-radius: 2px !important;
|
||||
padding: 2px !important;
|
||||
font-size: 8pt !important;
|
||||
font-weight: 500 !important;
|
||||
text-transform: uppercase !important;
|
||||
border: 1px solid #ad810c;
|
||||
display: inline-block !important;
|
||||
vertical-align: middle !important;
|
||||
text-align: center !important;
|
||||
box-shadow: 2px 2px 1px rgba(0,0,0,0.25) !important;
|
||||
}
|
||||
|
||||
.cVim-link-hint_match {
|
||||
color: #777;
|
||||
text-transform: uppercase !important;
|
||||
}
|
||||
|
||||
|
||||
#cVim-hud {
|
||||
background-color: rgba(28,28,28,0.9);
|
||||
position: fixed !important;
|
||||
transition: right 0.2s ease-out;
|
||||
z-index: 24724289;
|
||||
}
|
||||
|
||||
#cVim-hud span {
|
||||
padding: 2px;
|
||||
padding-left: 4px;
|
||||
padding-right: 4px;
|
||||
color: #8f8f8f;
|
||||
font-size: 10pt;
|
||||
}
|
||||
|
||||
#cVim-frames-outline {
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
left: 0;
|
||||
top: 0;
|
||||
right: 0;
|
||||
z-index: 9999999999;
|
||||
box-sizing: border-box;
|
||||
border: 3px solid yellow;
|
||||
}
|
||||
</style></head>
|
||||
<body>
|
||||
|
||||
|
||||
</body><div id="cVim-status-bar" style="bottom: 0px;"></div><div id="cVim-command-bar" spellcheck="false" style="bottom: 0px;"><span id="cVim-command-bar-mode"></span><input type="text" id="cVim-command-bar-input"></div><div id="cVim-command-bar-search-results" style="bottom: 20px;"></div></html>
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 49ce8a667f92d7345b797e0c8bf12689
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
TextScriptImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1 @@
|
|||
var addComment={moveForm:function(a,b,c,d){var e,f,g,h,i=this,j=i.I(a),k=i.I(c),l=i.I("cancel-comment-reply-link"),m=i.I("comment_parent"),n=i.I("comment_post_ID"),o=k.getElementsByTagName("form")[0];if(j&&k&&l&&m&&o){i.respondId=c,d=d||!1,i.I("wp-temp-form-div")||(e=document.createElement("div"),e.id="wp-temp-form-div",e.style.display="none",k.parentNode.insertBefore(e,k)),j.parentNode.insertBefore(k,j.nextSibling),n&&d&&(n.value=d),m.value=b,l.style.display="",l.onclick=function(){var a=addComment,b=a.I("wp-temp-form-div"),c=a.I(a.respondId);if(b&&c)return a.I("comment_parent").value="0",b.parentNode.insertBefore(c,b),b.parentNode.removeChild(b),this.style.display="none",this.onclick=null,!1};try{for(var p=0;p<o.elements.length;p++)if(f=o.elements[p],h=!1,"getComputedStyle"in window?g=window.getComputedStyle(f):document.documentElement.currentStyle&&(g=f.currentStyle),(f.offsetWidth<=0&&f.offsetHeight<=0||"hidden"===g.visibility)&&(h=!0),"hidden"!==f.type&&!f.disabled&&!h){f.focus();break}}catch(q){}return!1}},I:function(a){return document.getElementById(a)}};
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 15092c2a8d531934783c3262751ecde4
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
1
Assets/Plugins/AsyncAwaitUtil/Documentation/ReadMe_files/default.min.css
vendored
Normal file
1
Assets/Plugins/AsyncAwaitUtil/Documentation/ReadMe_files/default.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a36d3fd7af8651e469d6b5a4bba54ad4
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,403 @@
|
|||
@font-face{font-family:'FontAwesome';src:url('../font/fontawesome-webfont.eot?v=3.2.1');src:url('../font/fontawesome-webfont.eot?#iefix&v=3.2.1') format('embedded-opentype'),url('../font/fontawesome-webfont.woff?v=3.2.1') format('woff'),url('../font/fontawesome-webfont.ttf?v=3.2.1') format('truetype'),url('../font/fontawesome-webfont.svg#fontawesomeregular?v=3.2.1') format('svg');font-weight:normal;font-style:normal;}[class^="icon-"],[class*=" icon-"]{font-family:FontAwesome;font-weight:normal;font-style:normal;text-decoration:inherit;-webkit-font-smoothing:antialiased;*margin-right:.3em;}
|
||||
[class^="icon-"]:before,[class*=" icon-"]:before{text-decoration:inherit;display:inline-block;speak:none;}
|
||||
.icon-large:before{vertical-align:-10%;font-size:1.3333333333333333em;}
|
||||
a [class^="icon-"],a [class*=" icon-"]{display:inline;}
|
||||
[class^="icon-"].icon-fixed-width,[class*=" icon-"].icon-fixed-width{display:inline-block;width:1.1428571428571428em;text-align:right;padding-right:0.2857142857142857em;}[class^="icon-"].icon-fixed-width.icon-large,[class*=" icon-"].icon-fixed-width.icon-large{width:1.4285714285714286em;}
|
||||
.icons-ul{margin-left:2.142857142857143em;list-style-type:none;}.icons-ul>li{position:relative;}
|
||||
.icons-ul .icon-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;text-align:center;line-height:inherit;}
|
||||
[class^="icon-"].hide,[class*=" icon-"].hide{display:none;}
|
||||
.icon-muted{color:#eeeeee;}
|
||||
.icon-light{color:#ffffff;}
|
||||
.icon-dark{color:#333333;}
|
||||
.icon-border{border:solid 1px #eeeeee;padding:.2em .25em .15em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
|
||||
.icon-2x{font-size:2em;}.icon-2x.icon-border{border-width:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}
|
||||
.icon-3x{font-size:3em;}.icon-3x.icon-border{border-width:3px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;}
|
||||
.icon-4x{font-size:4em;}.icon-4x.icon-border{border-width:4px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;}
|
||||
.icon-5x{font-size:5em;}.icon-5x.icon-border{border-width:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;}
|
||||
.pull-right{float:right;}
|
||||
.pull-left{float:left;}
|
||||
[class^="icon-"].pull-left,[class*=" icon-"].pull-left{margin-right:.3em;}
|
||||
[class^="icon-"].pull-right,[class*=" icon-"].pull-right{margin-left:.3em;}
|
||||
[class^="icon-"],[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:normal;vertical-align:baseline;background-image:none;background-position:0% 0%;background-repeat:repeat;margin-top:0;}
|
||||
.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:none;}
|
||||
.btn [class^="icon-"].icon-large,.nav [class^="icon-"].icon-large,.btn [class*=" icon-"].icon-large,.nav [class*=" icon-"].icon-large{line-height:.9em;}
|
||||
.btn [class^="icon-"].icon-spin,.nav [class^="icon-"].icon-spin,.btn [class*=" icon-"].icon-spin,.nav [class*=" icon-"].icon-spin{display:inline-block;}
|
||||
.nav-tabs [class^="icon-"],.nav-pills [class^="icon-"],.nav-tabs [class*=" icon-"],.nav-pills [class*=" icon-"],.nav-tabs [class^="icon-"].icon-large,.nav-pills [class^="icon-"].icon-large,.nav-tabs [class*=" icon-"].icon-large,.nav-pills [class*=" icon-"].icon-large{line-height:.9em;}
|
||||
.btn [class^="icon-"].pull-left.icon-2x,.btn [class*=" icon-"].pull-left.icon-2x,.btn [class^="icon-"].pull-right.icon-2x,.btn [class*=" icon-"].pull-right.icon-2x{margin-top:.18em;}
|
||||
.btn [class^="icon-"].icon-spin.icon-large,.btn [class*=" icon-"].icon-spin.icon-large{line-height:.8em;}
|
||||
.btn.btn-small [class^="icon-"].pull-left.icon-2x,.btn.btn-small [class*=" icon-"].pull-left.icon-2x,.btn.btn-small [class^="icon-"].pull-right.icon-2x,.btn.btn-small [class*=" icon-"].pull-right.icon-2x{margin-top:.25em;}
|
||||
.btn.btn-large [class^="icon-"],.btn.btn-large [class*=" icon-"]{margin-top:0;}.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x,.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-top:.05em;}
|
||||
.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x{margin-right:.2em;}
|
||||
.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-left:.2em;}
|
||||
.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{line-height:inherit;}
|
||||
.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:-35%;}.icon-stack [class^="icon-"],.icon-stack [class*=" icon-"]{display:block;text-align:center;position:absolute;width:100%;height:100%;font-size:1em;line-height:inherit;*line-height:2em;}
|
||||
.icon-stack .icon-stack-base{font-size:2em;*line-height:1em;}
|
||||
.icon-spin{display:inline-block;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;-webkit-animation:spin 2s infinite linear;animation:spin 2s infinite linear;}
|
||||
a .icon-stack,a .icon-spin{display:inline-block;text-decoration:none;}
|
||||
@-moz-keyframes spin{0%{-moz-transform:rotate(0deg);} 100%{-moz-transform:rotate(359deg);}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);} 100%{-webkit-transform:rotate(359deg);}}@-o-keyframes spin{0%{-o-transform:rotate(0deg);} 100%{-o-transform:rotate(359deg);}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg);} 100%{-ms-transform:rotate(359deg);}}@keyframes spin{0%{transform:rotate(0deg);} 100%{transform:rotate(359deg);}}.icon-rotate-90:before{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);}
|
||||
.icon-rotate-180:before{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);}
|
||||
.icon-rotate-270:before{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);}
|
||||
.icon-flip-horizontal:before{-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1);}
|
||||
.icon-flip-vertical:before{-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1);}
|
||||
a .icon-rotate-90:before,a .icon-rotate-180:before,a .icon-rotate-270:before,a .icon-flip-horizontal:before,a .icon-flip-vertical:before{display:inline-block;}
|
||||
.icon-glass:before{content:"\f000";}
|
||||
.icon-music:before{content:"\f001";}
|
||||
.icon-search:before{content:"\f002";}
|
||||
.icon-envelope-alt:before{content:"\f003";}
|
||||
.icon-heart:before{content:"\f004";}
|
||||
.icon-star:before{content:"\f005";}
|
||||
.icon-star-empty:before{content:"\f006";}
|
||||
.icon-user:before{content:"\f007";}
|
||||
.icon-film:before{content:"\f008";}
|
||||
.icon-th-large:before{content:"\f009";}
|
||||
.icon-th:before{content:"\f00a";}
|
||||
.icon-th-list:before{content:"\f00b";}
|
||||
.icon-ok:before{content:"\f00c";}
|
||||
.icon-remove:before{content:"\f00d";}
|
||||
.icon-zoom-in:before{content:"\f00e";}
|
||||
.icon-zoom-out:before{content:"\f010";}
|
||||
.icon-power-off:before,.icon-off:before{content:"\f011";}
|
||||
.icon-signal:before{content:"\f012";}
|
||||
.icon-gear:before,.icon-cog:before{content:"\f013";}
|
||||
.icon-trash:before{content:"\f014";}
|
||||
.icon-home:before{content:"\f015";}
|
||||
.icon-file-alt:before{content:"\f016";}
|
||||
.icon-time:before{content:"\f017";}
|
||||
.icon-road:before{content:"\f018";}
|
||||
.icon-download-alt:before{content:"\f019";}
|
||||
.icon-download:before{content:"\f01a";}
|
||||
.icon-upload:before{content:"\f01b";}
|
||||
.icon-inbox:before{content:"\f01c";}
|
||||
.icon-play-circle:before{content:"\f01d";}
|
||||
.icon-rotate-right:before,.icon-repeat:before{content:"\f01e";}
|
||||
.icon-refresh:before{content:"\f021";}
|
||||
.icon-list-alt:before{content:"\f022";}
|
||||
.icon-lock:before{content:"\f023";}
|
||||
.icon-flag:before{content:"\f024";}
|
||||
.icon-headphones:before{content:"\f025";}
|
||||
.icon-volume-off:before{content:"\f026";}
|
||||
.icon-volume-down:before{content:"\f027";}
|
||||
.icon-volume-up:before{content:"\f028";}
|
||||
.icon-qrcode:before{content:"\f029";}
|
||||
.icon-barcode:before{content:"\f02a";}
|
||||
.icon-tag:before{content:"\f02b";}
|
||||
.icon-tags:before{content:"\f02c";}
|
||||
.icon-book:before{content:"\f02d";}
|
||||
.icon-bookmark:before{content:"\f02e";}
|
||||
.icon-print:before{content:"\f02f";}
|
||||
.icon-camera:before{content:"\f030";}
|
||||
.icon-font:before{content:"\f031";}
|
||||
.icon-bold:before{content:"\f032";}
|
||||
.icon-italic:before{content:"\f033";}
|
||||
.icon-text-height:before{content:"\f034";}
|
||||
.icon-text-width:before{content:"\f035";}
|
||||
.icon-align-left:before{content:"\f036";}
|
||||
.icon-align-center:before{content:"\f037";}
|
||||
.icon-align-right:before{content:"\f038";}
|
||||
.icon-align-justify:before{content:"\f039";}
|
||||
.icon-list:before{content:"\f03a";}
|
||||
.icon-indent-left:before{content:"\f03b";}
|
||||
.icon-indent-right:before{content:"\f03c";}
|
||||
.icon-facetime-video:before{content:"\f03d";}
|
||||
.icon-picture:before{content:"\f03e";}
|
||||
.icon-pencil:before{content:"\f040";}
|
||||
.icon-map-marker:before{content:"\f041";}
|
||||
.icon-adjust:before{content:"\f042";}
|
||||
.icon-tint:before{content:"\f043";}
|
||||
.icon-edit:before{content:"\f044";}
|
||||
.icon-share:before{content:"\f045";}
|
||||
.icon-check:before{content:"\f046";}
|
||||
.icon-move:before{content:"\f047";}
|
||||
.icon-step-backward:before{content:"\f048";}
|
||||
.icon-fast-backward:before{content:"\f049";}
|
||||
.icon-backward:before{content:"\f04a";}
|
||||
.icon-play:before{content:"\f04b";}
|
||||
.icon-pause:before{content:"\f04c";}
|
||||
.icon-stop:before{content:"\f04d";}
|
||||
.icon-forward:before{content:"\f04e";}
|
||||
.icon-fast-forward:before{content:"\f050";}
|
||||
.icon-step-forward:before{content:"\f051";}
|
||||
.icon-eject:before{content:"\f052";}
|
||||
.icon-chevron-left:before{content:"\f053";}
|
||||
.icon-chevron-right:before{content:"\f054";}
|
||||
.icon-plus-sign:before{content:"\f055";}
|
||||
.icon-minus-sign:before{content:"\f056";}
|
||||
.icon-remove-sign:before{content:"\f057";}
|
||||
.icon-ok-sign:before{content:"\f058";}
|
||||
.icon-question-sign:before{content:"\f059";}
|
||||
.icon-info-sign:before{content:"\f05a";}
|
||||
.icon-screenshot:before{content:"\f05b";}
|
||||
.icon-remove-circle:before{content:"\f05c";}
|
||||
.icon-ok-circle:before{content:"\f05d";}
|
||||
.icon-ban-circle:before{content:"\f05e";}
|
||||
.icon-arrow-left:before{content:"\f060";}
|
||||
.icon-arrow-right:before{content:"\f061";}
|
||||
.icon-arrow-up:before{content:"\f062";}
|
||||
.icon-arrow-down:before{content:"\f063";}
|
||||
.icon-mail-forward:before,.icon-share-alt:before{content:"\f064";}
|
||||
.icon-resize-full:before{content:"\f065";}
|
||||
.icon-resize-small:before{content:"\f066";}
|
||||
.icon-plus:before{content:"\f067";}
|
||||
.icon-minus:before{content:"\f068";}
|
||||
.icon-asterisk:before{content:"\f069";}
|
||||
.icon-exclamation-sign:before{content:"\f06a";}
|
||||
.icon-gift:before{content:"\f06b";}
|
||||
.icon-leaf:before{content:"\f06c";}
|
||||
.icon-fire:before{content:"\f06d";}
|
||||
.icon-eye-open:before{content:"\f06e";}
|
||||
.icon-eye-close:before{content:"\f070";}
|
||||
.icon-warning-sign:before{content:"\f071";}
|
||||
.icon-plane:before{content:"\f072";}
|
||||
.icon-calendar:before{content:"\f073";}
|
||||
.icon-random:before{content:"\f074";}
|
||||
.icon-comment:before{content:"\f075";}
|
||||
.icon-magnet:before{content:"\f076";}
|
||||
.icon-chevron-up:before{content:"\f077";}
|
||||
.icon-chevron-down:before{content:"\f078";}
|
||||
.icon-retweet:before{content:"\f079";}
|
||||
.icon-shopping-cart:before{content:"\f07a";}
|
||||
.icon-folder-close:before{content:"\f07b";}
|
||||
.icon-folder-open:before{content:"\f07c";}
|
||||
.icon-resize-vertical:before{content:"\f07d";}
|
||||
.icon-resize-horizontal:before{content:"\f07e";}
|
||||
.icon-bar-chart:before{content:"\f080";}
|
||||
.icon-twitter-sign:before{content:"\f081";}
|
||||
.icon-facebook-sign:before{content:"\f082";}
|
||||
.icon-camera-retro:before{content:"\f083";}
|
||||
.icon-key:before{content:"\f084";}
|
||||
.icon-gears:before,.icon-cogs:before{content:"\f085";}
|
||||
.icon-comments:before{content:"\f086";}
|
||||
.icon-thumbs-up-alt:before{content:"\f087";}
|
||||
.icon-thumbs-down-alt:before{content:"\f088";}
|
||||
.icon-star-half:before{content:"\f089";}
|
||||
.icon-heart-empty:before{content:"\f08a";}
|
||||
.icon-signout:before{content:"\f08b";}
|
||||
.icon-linkedin-sign:before{content:"\f08c";}
|
||||
.icon-pushpin:before{content:"\f08d";}
|
||||
.icon-external-link:before{content:"\f08e";}
|
||||
.icon-signin:before{content:"\f090";}
|
||||
.icon-trophy:before{content:"\f091";}
|
||||
.icon-github-sign:before{content:"\f092";}
|
||||
.icon-upload-alt:before{content:"\f093";}
|
||||
.icon-lemon:before{content:"\f094";}
|
||||
.icon-phone:before{content:"\f095";}
|
||||
.icon-unchecked:before,.icon-check-empty:before{content:"\f096";}
|
||||
.icon-bookmark-empty:before{content:"\f097";}
|
||||
.icon-phone-sign:before{content:"\f098";}
|
||||
.icon-twitter:before{content:"\f099";}
|
||||
.icon-facebook:before{content:"\f09a";}
|
||||
.icon-github:before{content:"\f09b";}
|
||||
.icon-unlock:before{content:"\f09c";}
|
||||
.icon-credit-card:before{content:"\f09d";}
|
||||
.icon-rss:before{content:"\f09e";}
|
||||
.icon-hdd:before{content:"\f0a0";}
|
||||
.icon-bullhorn:before{content:"\f0a1";}
|
||||
.icon-bell:before{content:"\f0a2";}
|
||||
.icon-certificate:before{content:"\f0a3";}
|
||||
.icon-hand-right:before{content:"\f0a4";}
|
||||
.icon-hand-left:before{content:"\f0a5";}
|
||||
.icon-hand-up:before{content:"\f0a6";}
|
||||
.icon-hand-down:before{content:"\f0a7";}
|
||||
.icon-circle-arrow-left:before{content:"\f0a8";}
|
||||
.icon-circle-arrow-right:before{content:"\f0a9";}
|
||||
.icon-circle-arrow-up:before{content:"\f0aa";}
|
||||
.icon-circle-arrow-down:before{content:"\f0ab";}
|
||||
.icon-globe:before{content:"\f0ac";}
|
||||
.icon-wrench:before{content:"\f0ad";}
|
||||
.icon-tasks:before{content:"\f0ae";}
|
||||
.icon-filter:before{content:"\f0b0";}
|
||||
.icon-briefcase:before{content:"\f0b1";}
|
||||
.icon-fullscreen:before{content:"\f0b2";}
|
||||
.icon-group:before{content:"\f0c0";}
|
||||
.icon-link:before{content:"\f0c1";}
|
||||
.icon-cloud:before{content:"\f0c2";}
|
||||
.icon-beaker:before{content:"\f0c3";}
|
||||
.icon-cut:before{content:"\f0c4";}
|
||||
.icon-copy:before{content:"\f0c5";}
|
||||
.icon-paperclip:before,.icon-paper-clip:before{content:"\f0c6";}
|
||||
.icon-save:before{content:"\f0c7";}
|
||||
.icon-sign-blank:before{content:"\f0c8";}
|
||||
.icon-reorder:before{content:"\f0c9";}
|
||||
.icon-list-ul:before{content:"\f0ca";}
|
||||
.icon-list-ol:before{content:"\f0cb";}
|
||||
.icon-strikethrough:before{content:"\f0cc";}
|
||||
.icon-underline:before{content:"\f0cd";}
|
||||
.icon-table:before{content:"\f0ce";}
|
||||
.icon-magic:before{content:"\f0d0";}
|
||||
.icon-truck:before{content:"\f0d1";}
|
||||
.icon-pinterest:before{content:"\f0d2";}
|
||||
.icon-pinterest-sign:before{content:"\f0d3";}
|
||||
.icon-google-plus-sign:before{content:"\f0d4";}
|
||||
.icon-google-plus:before{content:"\f0d5";}
|
||||
.icon-money:before{content:"\f0d6";}
|
||||
.icon-caret-down:before{content:"\f0d7";}
|
||||
.icon-caret-up:before{content:"\f0d8";}
|
||||
.icon-caret-left:before{content:"\f0d9";}
|
||||
.icon-caret-right:before{content:"\f0da";}
|
||||
.icon-columns:before{content:"\f0db";}
|
||||
.icon-sort:before{content:"\f0dc";}
|
||||
.icon-sort-down:before{content:"\f0dd";}
|
||||
.icon-sort-up:before{content:"\f0de";}
|
||||
.icon-envelope:before{content:"\f0e0";}
|
||||
.icon-linkedin:before{content:"\f0e1";}
|
||||
.icon-rotate-left:before,.icon-undo:before{content:"\f0e2";}
|
||||
.icon-legal:before{content:"\f0e3";}
|
||||
.icon-dashboard:before{content:"\f0e4";}
|
||||
.icon-comment-alt:before{content:"\f0e5";}
|
||||
.icon-comments-alt:before{content:"\f0e6";}
|
||||
.icon-bolt:before{content:"\f0e7";}
|
||||
.icon-sitemap:before{content:"\f0e8";}
|
||||
.icon-umbrella:before{content:"\f0e9";}
|
||||
.icon-paste:before{content:"\f0ea";}
|
||||
.icon-lightbulb:before{content:"\f0eb";}
|
||||
.icon-exchange:before{content:"\f0ec";}
|
||||
.icon-cloud-download:before{content:"\f0ed";}
|
||||
.icon-cloud-upload:before{content:"\f0ee";}
|
||||
.icon-user-md:before{content:"\f0f0";}
|
||||
.icon-stethoscope:before{content:"\f0f1";}
|
||||
.icon-suitcase:before{content:"\f0f2";}
|
||||
.icon-bell-alt:before{content:"\f0f3";}
|
||||
.icon-coffee:before{content:"\f0f4";}
|
||||
.icon-food:before{content:"\f0f5";}
|
||||
.icon-file-text-alt:before{content:"\f0f6";}
|
||||
.icon-building:before{content:"\f0f7";}
|
||||
.icon-hospital:before{content:"\f0f8";}
|
||||
.icon-ambulance:before{content:"\f0f9";}
|
||||
.icon-medkit:before{content:"\f0fa";}
|
||||
.icon-fighter-jet:before{content:"\f0fb";}
|
||||
.icon-beer:before{content:"\f0fc";}
|
||||
.icon-h-sign:before{content:"\f0fd";}
|
||||
.icon-plus-sign-alt:before{content:"\f0fe";}
|
||||
.icon-double-angle-left:before{content:"\f100";}
|
||||
.icon-double-angle-right:before{content:"\f101";}
|
||||
.icon-double-angle-up:before{content:"\f102";}
|
||||
.icon-double-angle-down:before{content:"\f103";}
|
||||
.icon-angle-left:before{content:"\f104";}
|
||||
.icon-angle-right:before{content:"\f105";}
|
||||
.icon-angle-up:before{content:"\f106";}
|
||||
.icon-angle-down:before{content:"\f107";}
|
||||
.icon-desktop:before{content:"\f108";}
|
||||
.icon-laptop:before{content:"\f109";}
|
||||
.icon-tablet:before{content:"\f10a";}
|
||||
.icon-mobile-phone:before{content:"\f10b";}
|
||||
.icon-circle-blank:before{content:"\f10c";}
|
||||
.icon-quote-left:before{content:"\f10d";}
|
||||
.icon-quote-right:before{content:"\f10e";}
|
||||
.icon-spinner:before{content:"\f110";}
|
||||
.icon-circle:before{content:"\f111";}
|
||||
.icon-mail-reply:before,.icon-reply:before{content:"\f112";}
|
||||
.icon-github-alt:before{content:"\f113";}
|
||||
.icon-folder-close-alt:before{content:"\f114";}
|
||||
.icon-folder-open-alt:before{content:"\f115";}
|
||||
.icon-expand-alt:before{content:"\f116";}
|
||||
.icon-collapse-alt:before{content:"\f117";}
|
||||
.icon-smile:before{content:"\f118";}
|
||||
.icon-frown:before{content:"\f119";}
|
||||
.icon-meh:before{content:"\f11a";}
|
||||
.icon-gamepad:before{content:"\f11b";}
|
||||
.icon-keyboard:before{content:"\f11c";}
|
||||
.icon-flag-alt:before{content:"\f11d";}
|
||||
.icon-flag-checkered:before{content:"\f11e";}
|
||||
.icon-terminal:before{content:"\f120";}
|
||||
.icon-code:before{content:"\f121";}
|
||||
.icon-reply-all:before{content:"\f122";}
|
||||
.icon-mail-reply-all:before{content:"\f122";}
|
||||
.icon-star-half-full:before,.icon-star-half-empty:before{content:"\f123";}
|
||||
.icon-location-arrow:before{content:"\f124";}
|
||||
.icon-crop:before{content:"\f125";}
|
||||
.icon-code-fork:before{content:"\f126";}
|
||||
.icon-unlink:before{content:"\f127";}
|
||||
.icon-question:before{content:"\f128";}
|
||||
.icon-info:before{content:"\f129";}
|
||||
.icon-exclamation:before{content:"\f12a";}
|
||||
.icon-superscript:before{content:"\f12b";}
|
||||
.icon-subscript:before{content:"\f12c";}
|
||||
.icon-eraser:before{content:"\f12d";}
|
||||
.icon-puzzle-piece:before{content:"\f12e";}
|
||||
.icon-microphone:before{content:"\f130";}
|
||||
.icon-microphone-off:before{content:"\f131";}
|
||||
.icon-shield:before{content:"\f132";}
|
||||
.icon-calendar-empty:before{content:"\f133";}
|
||||
.icon-fire-extinguisher:before{content:"\f134";}
|
||||
.icon-rocket:before{content:"\f135";}
|
||||
.icon-maxcdn:before{content:"\f136";}
|
||||
.icon-chevron-sign-left:before{content:"\f137";}
|
||||
.icon-chevron-sign-right:before{content:"\f138";}
|
||||
.icon-chevron-sign-up:before{content:"\f139";}
|
||||
.icon-chevron-sign-down:before{content:"\f13a";}
|
||||
.icon-html5:before{content:"\f13b";}
|
||||
.icon-css3:before{content:"\f13c";}
|
||||
.icon-anchor:before{content:"\f13d";}
|
||||
.icon-unlock-alt:before{content:"\f13e";}
|
||||
.icon-bullseye:before{content:"\f140";}
|
||||
.icon-ellipsis-horizontal:before{content:"\f141";}
|
||||
.icon-ellipsis-vertical:before{content:"\f142";}
|
||||
.icon-rss-sign:before{content:"\f143";}
|
||||
.icon-play-sign:before{content:"\f144";}
|
||||
.icon-ticket:before{content:"\f145";}
|
||||
.icon-minus-sign-alt:before{content:"\f146";}
|
||||
.icon-check-minus:before{content:"\f147";}
|
||||
.icon-level-up:before{content:"\f148";}
|
||||
.icon-level-down:before{content:"\f149";}
|
||||
.icon-check-sign:before{content:"\f14a";}
|
||||
.icon-edit-sign:before{content:"\f14b";}
|
||||
.icon-external-link-sign:before{content:"\f14c";}
|
||||
.icon-share-sign:before{content:"\f14d";}
|
||||
.icon-compass:before{content:"\f14e";}
|
||||
.icon-collapse:before{content:"\f150";}
|
||||
.icon-collapse-top:before{content:"\f151";}
|
||||
.icon-expand:before{content:"\f152";}
|
||||
.icon-euro:before,.icon-eur:before{content:"\f153";}
|
||||
.icon-gbp:before{content:"\f154";}
|
||||
.icon-dollar:before,.icon-usd:before{content:"\f155";}
|
||||
.icon-rupee:before,.icon-inr:before{content:"\f156";}
|
||||
.icon-yen:before,.icon-jpy:before{content:"\f157";}
|
||||
.icon-renminbi:before,.icon-cny:before{content:"\f158";}
|
||||
.icon-won:before,.icon-krw:before{content:"\f159";}
|
||||
.icon-bitcoin:before,.icon-btc:before{content:"\f15a";}
|
||||
.icon-file:before{content:"\f15b";}
|
||||
.icon-file-text:before{content:"\f15c";}
|
||||
.icon-sort-by-alphabet:before{content:"\f15d";}
|
||||
.icon-sort-by-alphabet-alt:before{content:"\f15e";}
|
||||
.icon-sort-by-attributes:before{content:"\f160";}
|
||||
.icon-sort-by-attributes-alt:before{content:"\f161";}
|
||||
.icon-sort-by-order:before{content:"\f162";}
|
||||
.icon-sort-by-order-alt:before{content:"\f163";}
|
||||
.icon-thumbs-up:before{content:"\f164";}
|
||||
.icon-thumbs-down:before{content:"\f165";}
|
||||
.icon-youtube-sign:before{content:"\f166";}
|
||||
.icon-youtube:before{content:"\f167";}
|
||||
.icon-xing:before{content:"\f168";}
|
||||
.icon-xing-sign:before{content:"\f169";}
|
||||
.icon-youtube-play:before{content:"\f16a";}
|
||||
.icon-dropbox:before{content:"\f16b";}
|
||||
.icon-stackexchange:before{content:"\f16c";}
|
||||
.icon-instagram:before{content:"\f16d";}
|
||||
.icon-flickr:before{content:"\f16e";}
|
||||
.icon-adn:before{content:"\f170";}
|
||||
.icon-bitbucket:before{content:"\f171";}
|
||||
.icon-bitbucket-sign:before{content:"\f172";}
|
||||
.icon-tumblr:before{content:"\f173";}
|
||||
.icon-tumblr-sign:before{content:"\f174";}
|
||||
.icon-long-arrow-down:before{content:"\f175";}
|
||||
.icon-long-arrow-up:before{content:"\f176";}
|
||||
.icon-long-arrow-left:before{content:"\f177";}
|
||||
.icon-long-arrow-right:before{content:"\f178";}
|
||||
.icon-apple:before{content:"\f179";}
|
||||
.icon-windows:before{content:"\f17a";}
|
||||
.icon-android:before{content:"\f17b";}
|
||||
.icon-linux:before{content:"\f17c";}
|
||||
.icon-dribbble:before{content:"\f17d";}
|
||||
.icon-skype:before{content:"\f17e";}
|
||||
.icon-foursquare:before{content:"\f180";}
|
||||
.icon-trello:before{content:"\f181";}
|
||||
.icon-female:before{content:"\f182";}
|
||||
.icon-male:before{content:"\f183";}
|
||||
.icon-gittip:before{content:"\f184";}
|
||||
.icon-sun:before{content:"\f185";}
|
||||
.icon-moon:before{content:"\f186";}
|
||||
.icon-archive:before{content:"\f187";}
|
||||
.icon-bug:before{content:"\f188";}
|
||||
.icon-vk:before{content:"\f189";}
|
||||
.icon-weibo:before{content:"\f18a";}
|
||||
.icon-renren:before{content:"\f18b";}
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3019c1c6b72e41847899e2ac02471923
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
1
Assets/Plugins/AsyncAwaitUtil/Documentation/ReadMe_files/font-awesome.min.css
vendored
Normal file
1
Assets/Plugins/AsyncAwaitUtil/Documentation/ReadMe_files/font-awesome.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b1985c3a9f17306419ee984450d97ffa
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0f0e2a59e00d25446aa594df76a5dced
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 54d153b1a1ded8242885ba82c00e583c
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (Wed, 16 Apr 2014 03:56:09 GMT)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2013 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
;(function()
|
||||
{
|
||||
// CommonJS
|
||||
SyntaxHighlighter = SyntaxHighlighter || (typeof require !== 'undefined'? require('shCore').SyntaxHighlighter : null);
|
||||
|
||||
function Brush()
|
||||
{
|
||||
var keywords = 'abstract as async await base bool break byte case catch char checked class const ' +
|
||||
'continue decimal default delegate do double else enum event explicit volatile ' +
|
||||
'extern false finally fixed float for foreach get goto if implicit in int ' +
|
||||
'interface internal is lock long namespace new null object operator out ' +
|
||||
'override params private protected public readonly ref return sbyte sealed set ' +
|
||||
'short sizeof stackalloc static string struct switch this throw true try ' +
|
||||
'typeof uint ulong unchecked unsafe ushort using virtual void while var ' +
|
||||
'from group by into select let where orderby join on equals ascending descending';
|
||||
|
||||
function fixComments(match, regexInfo)
|
||||
{
|
||||
var css = (match[0].indexOf("///") == 0)
|
||||
? 'color1'
|
||||
: 'comments'
|
||||
;
|
||||
|
||||
return [new SyntaxHighlighter.Match(match[0], match.index, css)];
|
||||
}
|
||||
|
||||
this.regexList = [
|
||||
{ regex: SyntaxHighlighter.regexLib.singleLineCComments, func : fixComments }, // one line comments
|
||||
{ regex: SyntaxHighlighter.regexLib.multiLineCComments, css: 'comments' }, // multiline comments
|
||||
{ regex: /@"(?:[^"]|"")*"/g, css: 'string' }, // @-quoted strings
|
||||
{ regex: SyntaxHighlighter.regexLib.doubleQuotedString, css: 'string' }, // strings
|
||||
{ regex: SyntaxHighlighter.regexLib.singleQuotedString, css: 'string' }, // strings
|
||||
{ regex: /^\s*#.*/gm, css: 'preprocessor' }, // preprocessor tags like #region and #endregion
|
||||
{ regex: new RegExp(this.getKeywords(keywords), 'gm'), css: 'keyword' }, // c# keyword
|
||||
{ regex: /\bpartial(?=\s+(?:class|interface|struct)\b)/g, css: 'keyword' }, // contextual keyword: 'partial'
|
||||
{ regex: /\byield(?=\s+(?:return|break)\b)/g, css: 'keyword' } // contextual keyword: 'yield'
|
||||
];
|
||||
|
||||
this.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);
|
||||
};
|
||||
|
||||
Brush.prototype = new SyntaxHighlighter.Highlighter();
|
||||
Brush.aliases = ['c#', 'c-sharp', 'csharp'];
|
||||
|
||||
SyntaxHighlighter.brushes.CSharp = Brush;
|
||||
|
||||
// CommonJS
|
||||
typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
|
||||
})();
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3a3eba33a609b9444b5d4cf94850b596
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,237 @@
|
|||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter a,
|
||||
.syntaxhighlighter div,
|
||||
.syntaxhighlighter code,
|
||||
.syntaxhighlighter table,
|
||||
.syntaxhighlighter table td,
|
||||
.syntaxhighlighter table tr,
|
||||
.syntaxhighlighter table tbody,
|
||||
.syntaxhighlighter table thead,
|
||||
.syntaxhighlighter table caption,
|
||||
.syntaxhighlighter textarea {
|
||||
-moz-border-radius: 0 0 0 0 !important;
|
||||
-webkit-border-radius: 0 0 0 0 !important;
|
||||
background: none !important;
|
||||
border: 0 !important;
|
||||
bottom: auto !important;
|
||||
float: none !important;
|
||||
height: auto !important;
|
||||
left: auto !important;
|
||||
line-height: 1.1em !important;
|
||||
margin: 0 !important;
|
||||
outline: 0 !important;
|
||||
overflow: visible !important;
|
||||
padding: 0 !important;
|
||||
position: static !important;
|
||||
right: auto !important;
|
||||
text-align: left !important;
|
||||
top: auto !important;
|
||||
vertical-align: baseline !important;
|
||||
width: auto !important;
|
||||
box-sizing: content-box !important;
|
||||
font-family: Monaco, "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
|
||||
font-weight: normal !important;
|
||||
font-style: normal !important;
|
||||
font-size: 1em !important;
|
||||
/*min-height: inherit !important; */
|
||||
/*min-height: auto !important;*/
|
||||
direction: ltr !important;
|
||||
-webkit-box-shadow: none !important;
|
||||
-moz-box-shadow: none !important;
|
||||
-ms-box-shadow: none !important;
|
||||
-o-box-shadow: none !important;
|
||||
box-shadow: none !important;
|
||||
}
|
||||
|
||||
.syntaxhighlighter {
|
||||
width: 100% !important;
|
||||
margin: 1em 0 1em 0 !important;
|
||||
position: relative !important;
|
||||
overflow: auto !important;
|
||||
overflow-y: hidden !important;
|
||||
font-size: 1em !important;
|
||||
}
|
||||
.syntaxhighlighter code {
|
||||
display: inline !important;
|
||||
}
|
||||
.syntaxhighlighter.source {
|
||||
overflow: hidden !important;
|
||||
}
|
||||
.syntaxhighlighter .bold {
|
||||
font-weight: bold !important;
|
||||
}
|
||||
.syntaxhighlighter .italic {
|
||||
font-style: italic !important;
|
||||
}
|
||||
.syntaxhighlighter .line {
|
||||
white-space: pre !important;
|
||||
}
|
||||
.syntaxhighlighter table {
|
||||
table-layout: auto !important;
|
||||
width: 100% !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
text-align: left !important;
|
||||
padding: .5em 0 0.5em 1em !important;
|
||||
}
|
||||
.syntaxhighlighter table td.code {
|
||||
width: 100% !important;
|
||||
}
|
||||
.syntaxhighlighter table td.code .container {
|
||||
position: relative !important;
|
||||
}
|
||||
.syntaxhighlighter table td.code .container textarea {
|
||||
box-sizing: border-box !important;
|
||||
position: absolute !important;
|
||||
left: 0 !important;
|
||||
top: 0 !important;
|
||||
width: 100% !important;
|
||||
height: 100% !important;
|
||||
border: none !important;
|
||||
background: white !important;
|
||||
padding-left: 1em !important;
|
||||
overflow: hidden !important;
|
||||
white-space: pre !important;
|
||||
}
|
||||
.syntaxhighlighter table td.gutter .line {
|
||||
text-align: right !important;
|
||||
padding: 0 0.5em 0 1em !important;
|
||||
}
|
||||
.syntaxhighlighter table td.code .line {
|
||||
padding: 0 1em !important;
|
||||
}
|
||||
.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
|
||||
padding-left: 0em !important;
|
||||
}
|
||||
.syntaxhighlighter.show {
|
||||
display: block !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed table {
|
||||
display: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
padding: 0.1em 0.8em 0em 0.8em !important;
|
||||
font-size: 1em !important;
|
||||
position: static !important;
|
||||
width: auto !important;
|
||||
height: auto !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar span {
|
||||
display: inline !important;
|
||||
margin-right: 1em !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar span a {
|
||||
padding: 0 !important;
|
||||
display: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar span a.expandSource {
|
||||
display: inline !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
position: absolute !important;
|
||||
right: 1px !important;
|
||||
top: 1px !important;
|
||||
width: 11px !important;
|
||||
height: 11px !important;
|
||||
font-size: 10px !important;
|
||||
z-index: 10 !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar span.title {
|
||||
display: inline !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
display: block !important;
|
||||
text-align: center !important;
|
||||
text-decoration: none !important;
|
||||
padding-top: 1px !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a.expandSource {
|
||||
display: none !important;
|
||||
}
|
||||
.syntaxhighlighter.ie {
|
||||
font-size: .9em !important;
|
||||
padding: 1px 0 1px 0 !important;
|
||||
}
|
||||
.syntaxhighlighter.ie .toolbar {
|
||||
line-height: 8px !important;
|
||||
}
|
||||
.syntaxhighlighter.ie .toolbar a {
|
||||
padding-top: 0px !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line.alt1 .content,
|
||||
.syntaxhighlighter.printing .line.alt2 .content,
|
||||
.syntaxhighlighter.printing .line.highlighted .number,
|
||||
.syntaxhighlighter.printing .line.highlighted.alt1 .content,
|
||||
.syntaxhighlighter.printing .line.highlighted.alt2 .content {
|
||||
background: none !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .number {
|
||||
color: #bbbbbb !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .toolbar {
|
||||
display: none !important;
|
||||
}
|
||||
.syntaxhighlighter.printing a {
|
||||
text-decoration: none !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
|
||||
color: #008200 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
|
||||
color: blue !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .keyword {
|
||||
color: #006699 !important;
|
||||
font-weight: bold !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .preprocessor {
|
||||
color: gray !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .variable {
|
||||
color: #aa7700 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .value {
|
||||
color: #009900 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .functions {
|
||||
color: #ff1493 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .constants {
|
||||
color: #0066cc !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .script {
|
||||
font-weight: bold !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
|
||||
color: gray !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
|
||||
color: #ff1493 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
|
||||
color: red !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
|
||||
color: black !important;
|
||||
}
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 4141587b0e66e4e4dbfff848df4ddee7
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1a997a3755a0b4c48bb3457eec44cf43
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,117 @@
|
|||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter {
|
||||
background-color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt1 {
|
||||
background-color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt2 {
|
||||
background-color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
|
||||
background-color: #e0e0e0 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.number {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter {
|
||||
color: #afafaf !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line {
|
||||
border-right: 3px solid #6ce26c !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line.highlighted {
|
||||
background-color: #6ce26c !important;
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed {
|
||||
overflow: visible !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
color: blue !important;
|
||||
background: white !important;
|
||||
border: 1px solid #6ce26c !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a {
|
||||
color: blue !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a:hover {
|
||||
color: red !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
color: white !important;
|
||||
background: #6ce26c !important;
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a:hover {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
|
||||
color: #008200 !important;
|
||||
}
|
||||
.syntaxhighlighter .string, .syntaxhighlighter .string a {
|
||||
color: blue !important;
|
||||
}
|
||||
.syntaxhighlighter .keyword {
|
||||
color: #006699 !important;
|
||||
}
|
||||
.syntaxhighlighter .preprocessor {
|
||||
color: gray !important;
|
||||
}
|
||||
.syntaxhighlighter .variable {
|
||||
color: #aa7700 !important;
|
||||
}
|
||||
.syntaxhighlighter .value {
|
||||
color: #009900 !important;
|
||||
}
|
||||
.syntaxhighlighter .functions {
|
||||
color: #ff1493 !important;
|
||||
}
|
||||
.syntaxhighlighter .constants {
|
||||
color: #0066cc !important;
|
||||
}
|
||||
.syntaxhighlighter .script {
|
||||
font-weight: bold !important;
|
||||
color: #006699 !important;
|
||||
background-color: none !important;
|
||||
}
|
||||
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
|
||||
color: gray !important;
|
||||
}
|
||||
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
|
||||
color: #ff1493 !important;
|
||||
}
|
||||
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
|
||||
color: red !important;
|
||||
}
|
||||
|
||||
.syntaxhighlighter .keyword {
|
||||
font-weight: bold !important;
|
||||
}
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 77d7d86f0c0780d4bb40705b0ab6fcc6
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
1
Assets/Plugins/AsyncAwaitUtil/Documentation/ReadMe_files/style.min.css
vendored
Normal file
1
Assets/Plugins/AsyncAwaitUtil/Documentation/ReadMe_files/style.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 601023394f5f81c48b6ee8a7f63522cf
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1 @@
|
|||
!function(){function a(){for(var a=this;-1===a.className.indexOf("nav-menu");)"li"===a.tagName.toLowerCase()&&(-1!==a.className.indexOf("focus")?a.className=a.className.replace(" focus",""):a.className+=" focus"),a=a.parentElement}var b,c,d,e,f,g,h;if(b=document.getElementById("site-navigation"),b&&(c=b.getElementsByTagName("button")[0],"undefined"!=typeof c)){if(d=b.getElementsByTagName("ul")[0],"undefined"==typeof d)return void(c.style.display="none");for(d.setAttribute("aria-expanded","false"),-1===d.className.indexOf("nav-menu")&&(d.className+=" nav-menu"),c.onclick=function(){-1!==b.className.indexOf("toggled")?(b.className=b.className.replace(" toggled",""),c.setAttribute("aria-expanded","false"),d.setAttribute("aria-expanded","false")):(b.className+=" toggled",c.setAttribute("aria-expanded","true"),d.setAttribute("aria-expanded","true"))},e=d.getElementsByTagName("a"),f=d.getElementsByTagName("ul"),g=0,h=f.length;g<h;g++)f[g].parentNode.setAttribute("aria-haspopup","true");for(g=0,h=e.length;g<h;g++)e[g].addEventListener("focus",a,!0),e[g].addEventListener("blur",a,!0);!function(a){var b,c,d=a.querySelectorAll(".menu-item-has-children > a, .page_item_has_children > a");if("ontouchstart"in window)for(b=function(a){var b,c=this.parentNode;if(c.classList.contains("focus"))c.classList.remove("focus");else{for(a.preventDefault(),b=0;b<c.parentNode.children.length;++b)c!==c.parentNode.children[b]&&c.parentNode.children[b].classList.remove("focus");c.classList.add("focus")}},c=0;c<d.length;++c)d[c].addEventListener("touchstart",b,!1)}(b)}}(),function(){var a=/(trident|msie)/i.test(navigator.userAgent);a&&document.getElementById&&window.addEventListener&&window.addEventListener("hashchange",function(){var a,b=location.hash.substring(1);/^[A-z0-9_-]+$/.test(b)&&(a=document.getElementById(b),a&&(/^(?:a|select|input|button|textarea)$/i.test(a.tagName)||(a.tabIndex=-1),a.focus()))},!1)}();
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b8e426e734f526a4984d0bd9a58066bc
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1 @@
|
|||
!function(a,b){"use strict";function c(){if(!e){e=!0;var a,c,d,f,g=-1!==navigator.appVersion.indexOf("MSIE 10"),h=!!navigator.userAgent.match(/Trident.*rv:11\./),i=b.querySelectorAll("iframe.wp-embedded-content");for(c=0;c<i.length;c++){if(d=i[c],!d.getAttribute("data-secret"))f=Math.random().toString(36).substr(2,10),d.src+="#?secret="+f,d.setAttribute("data-secret",f);if(g||h)a=d.cloneNode(!0),a.removeAttribute("security"),d.parentNode.replaceChild(a,d)}}}var d=!1,e=!1;if(b.querySelector)if(a.addEventListener)d=!0;if(a.wp=a.wp||{},!a.wp.receiveEmbedMessage)if(a.wp.receiveEmbedMessage=function(c){var d=c.data;if(d.secret||d.message||d.value)if(!/[^a-zA-Z0-9]/.test(d.secret)){var e,f,g,h,i,j=b.querySelectorAll('iframe[data-secret="'+d.secret+'"]'),k=b.querySelectorAll('blockquote[data-secret="'+d.secret+'"]');for(e=0;e<k.length;e++)k[e].style.display="none";for(e=0;e<j.length;e++)if(f=j[e],c.source===f.contentWindow){if(f.removeAttribute("style"),"height"===d.message){if(g=parseInt(d.value,10),g>1e3)g=1e3;else if(~~g<200)g=200;f.height=g}if("link"===d.message)if(h=b.createElement("a"),i=b.createElement("a"),h.href=f.getAttribute("src"),i.href=d.value,i.host===h.host)if(b.activeElement===f)a.top.location.href=d.value}else;}},d)a.addEventListener("message",a.wp.receiveEmbedMessage,!1),b.addEventListener("DOMContentLoaded",c,!1),a.addEventListener("load",c,!1)}(window,document);
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 7bbc9cbef70fefb40826637d3512c035
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2ca82815e5b2f7d4fa4420e527a27526
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 67c5db2a4649c5447ae14158d37e6214
|
||||
timeCreated: 1506503311
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/Plugins/AsyncAwaitUtil/Source.meta
Normal file
9
Assets/Plugins/AsyncAwaitUtil/Source.meta
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1855bfca81559324fa5a5d116a289bc6
|
||||
folderAsset: yes
|
||||
timeCreated: 1506067485
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
32
Assets/Plugins/AsyncAwaitUtil/Source/AwaitExtensions.cs
Normal file
32
Assets/Plugins/AsyncAwaitUtil/Source/AwaitExtensions.cs
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
|
||||
public static class AwaitExtensions
|
||||
{
|
||||
public static TaskAwaiter<int> GetAwaiter(this Process process)
|
||||
{
|
||||
var tcs = new TaskCompletionSource<int>();
|
||||
process.EnableRaisingEvents = true;
|
||||
|
||||
process.Exited += (s, e) => tcs.TrySetResult(process.ExitCode);
|
||||
|
||||
if (process.HasExited)
|
||||
{
|
||||
tcs.TrySetResult(process.ExitCode);
|
||||
}
|
||||
|
||||
return tcs.Task.GetAwaiter();
|
||||
}
|
||||
|
||||
// Any time you call an async method from sync code, you can either use this wrapper
|
||||
// method or you can define your own `async void` method that performs the await
|
||||
// on the given Task
|
||||
public static async void WrapErrors(this Task task)
|
||||
{
|
||||
await task;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
fileFormatVersion: 2
|
||||
guid: bf3770fc51ac89f45987dbde37ae81bd
|
||||
timeCreated: 1455373901
|
||||
guid: 386afd32a400664419ea609f8f1636fb
|
||||
timeCreated: 1505905492
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
45
Assets/Plugins/AsyncAwaitUtil/Source/Awaiters.cs
Normal file
45
Assets/Plugins/AsyncAwaitUtil/Source/Awaiters.cs
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
// TODO: Remove the allocs here, use a static memory pool?
|
||||
public static class Awaiters
|
||||
{
|
||||
readonly static WaitForUpdate _waitForUpdate = new WaitForUpdate();
|
||||
readonly static WaitForFixedUpdate _waitForFixedUpdate = new WaitForFixedUpdate();
|
||||
readonly static WaitForEndOfFrame _waitForEndOfFrame = new WaitForEndOfFrame();
|
||||
|
||||
public static WaitForUpdate NextFrame
|
||||
{
|
||||
get { return _waitForUpdate; }
|
||||
}
|
||||
|
||||
public static WaitForFixedUpdate FixedUpdate
|
||||
{
|
||||
get { return _waitForFixedUpdate; }
|
||||
}
|
||||
|
||||
public static WaitForEndOfFrame EndOfFrame
|
||||
{
|
||||
get { return _waitForEndOfFrame; }
|
||||
}
|
||||
|
||||
public static WaitForSeconds Seconds(float seconds)
|
||||
{
|
||||
return new WaitForSeconds(seconds);
|
||||
}
|
||||
|
||||
public static WaitForSecondsRealtime SecondsRealtime(float seconds)
|
||||
{
|
||||
return new WaitForSecondsRealtime(seconds);
|
||||
}
|
||||
|
||||
public static WaitUntil Until(Func<bool> predicate)
|
||||
{
|
||||
return new WaitUntil(predicate);
|
||||
}
|
||||
|
||||
public static WaitWhile While(Func<bool> predicate)
|
||||
{
|
||||
return new WaitWhile(predicate);
|
||||
}
|
||||
}
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 41f3df73f7da66b4980f6d9a86927796
|
||||
timeCreated: 1455373898
|
||||
guid: 8d760c2bd4c003740956ef7de48cea40
|
||||
timeCreated: 1506576813
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
|
|
@ -0,0 +1,393 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.ExceptionServices;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using UnityEngine;
|
||||
using UnityAsyncAwaitUtil;
|
||||
|
||||
// We could just add a generic GetAwaiter to YieldInstruction and CustomYieldInstruction
|
||||
// but instead we add specific methods to each derived class to allow for return values
|
||||
// that make the most sense for the specific instruction type
|
||||
public static class IEnumeratorAwaitExtensions
|
||||
{
|
||||
public static SimpleCoroutineAwaiter GetAwaiter(this WaitForSeconds instruction)
|
||||
{
|
||||
return GetAwaiterReturnVoid(instruction);
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter GetAwaiter(this WaitForUpdate instruction)
|
||||
{
|
||||
return GetAwaiterReturnVoid(instruction);
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter GetAwaiter(this WaitForEndOfFrame instruction)
|
||||
{
|
||||
return GetAwaiterReturnVoid(instruction);
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter GetAwaiter(this WaitForFixedUpdate instruction)
|
||||
{
|
||||
return GetAwaiterReturnVoid(instruction);
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter GetAwaiter(this WaitForSecondsRealtime instruction)
|
||||
{
|
||||
return GetAwaiterReturnVoid(instruction);
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter GetAwaiter(this WaitUntil instruction)
|
||||
{
|
||||
return GetAwaiterReturnVoid(instruction);
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter GetAwaiter(this WaitWhile instruction)
|
||||
{
|
||||
return GetAwaiterReturnVoid(instruction);
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter<AsyncOperation> GetAwaiter(this AsyncOperation instruction)
|
||||
{
|
||||
return GetAwaiterReturnSelf(instruction);
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter<UnityEngine.Object> GetAwaiter(this ResourceRequest instruction)
|
||||
{
|
||||
var awaiter = new SimpleCoroutineAwaiter<UnityEngine.Object>();
|
||||
RunOnUnityScheduler(() => AsyncCoroutineRunner.Instance.StartCoroutine(
|
||||
InstructionWrappers.ResourceRequest(awaiter, instruction)));
|
||||
return awaiter;
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter<AssetBundle> GetAwaiter(this AssetBundleCreateRequest instruction)
|
||||
{
|
||||
var awaiter = new SimpleCoroutineAwaiter<AssetBundle>();
|
||||
RunOnUnityScheduler(() => AsyncCoroutineRunner.Instance.StartCoroutine(
|
||||
InstructionWrappers.AssetBundleCreateRequest(awaiter, instruction)));
|
||||
return awaiter;
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter<UnityEngine.Object> GetAwaiter(this AssetBundleRequest instruction)
|
||||
{
|
||||
var awaiter = new SimpleCoroutineAwaiter<UnityEngine.Object>();
|
||||
RunOnUnityScheduler(() => AsyncCoroutineRunner.Instance.StartCoroutine(
|
||||
InstructionWrappers.AssetBundleRequest(awaiter, instruction)));
|
||||
return awaiter;
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter<T> GetAwaiter<T>(this IEnumerator<T> coroutine)
|
||||
{
|
||||
var awaiter = new SimpleCoroutineAwaiter<T>();
|
||||
RunOnUnityScheduler(() => AsyncCoroutineRunner.Instance.StartCoroutine(
|
||||
new CoroutineWrapper<T>(coroutine, awaiter).Run()));
|
||||
return awaiter;
|
||||
}
|
||||
|
||||
public static SimpleCoroutineAwaiter<object> GetAwaiter(this IEnumerator coroutine)
|
||||
{
|
||||
var awaiter = new SimpleCoroutineAwaiter<object>();
|
||||
RunOnUnityScheduler(() => AsyncCoroutineRunner.Instance.StartCoroutine(
|
||||
new CoroutineWrapper<object>(coroutine, awaiter).Run()));
|
||||
return awaiter;
|
||||
}
|
||||
|
||||
static SimpleCoroutineAwaiter GetAwaiterReturnVoid(object instruction)
|
||||
{
|
||||
var awaiter = new SimpleCoroutineAwaiter();
|
||||
RunOnUnityScheduler(() => AsyncCoroutineRunner.Instance.StartCoroutine(
|
||||
InstructionWrappers.ReturnVoid(awaiter, instruction)));
|
||||
return awaiter;
|
||||
}
|
||||
|
||||
static SimpleCoroutineAwaiter<T> GetAwaiterReturnSelf<T>(T instruction)
|
||||
{
|
||||
var awaiter = new SimpleCoroutineAwaiter<T>();
|
||||
RunOnUnityScheduler(() => AsyncCoroutineRunner.Instance.StartCoroutine(
|
||||
InstructionWrappers.ReturnSelf(awaiter, instruction)));
|
||||
return awaiter;
|
||||
}
|
||||
|
||||
static void RunOnUnityScheduler(Action action)
|
||||
{
|
||||
if (SynchronizationContext.Current == SyncContextUtil.UnitySynchronizationContext)
|
||||
{
|
||||
action();
|
||||
}
|
||||
else
|
||||
{
|
||||
SyncContextUtil.UnitySynchronizationContext.Post(_ => action(), null);
|
||||
}
|
||||
}
|
||||
|
||||
static void Assert(bool condition)
|
||||
{
|
||||
if (!condition)
|
||||
{
|
||||
throw new Exception("Assert hit in UnityAsyncUtil package!");
|
||||
}
|
||||
}
|
||||
|
||||
public class SimpleCoroutineAwaiter<T> : INotifyCompletion
|
||||
{
|
||||
bool _isDone;
|
||||
Exception _exception;
|
||||
Action _continuation;
|
||||
T _result;
|
||||
|
||||
public bool IsCompleted
|
||||
{
|
||||
get { return _isDone; }
|
||||
}
|
||||
|
||||
public T GetResult()
|
||||
{
|
||||
Assert(_isDone);
|
||||
|
||||
if (_exception != null)
|
||||
{
|
||||
ExceptionDispatchInfo.Capture(_exception).Throw();
|
||||
}
|
||||
|
||||
return _result;
|
||||
}
|
||||
|
||||
public void Complete(T result, Exception e)
|
||||
{
|
||||
Assert(!_isDone);
|
||||
|
||||
_isDone = true;
|
||||
_exception = e;
|
||||
_result = result;
|
||||
|
||||
// Always trigger the continuation on the unity thread when awaiting on unity yield
|
||||
// instructions
|
||||
if (_continuation != null)
|
||||
{
|
||||
RunOnUnityScheduler(_continuation);
|
||||
}
|
||||
}
|
||||
|
||||
void INotifyCompletion.OnCompleted(Action continuation)
|
||||
{
|
||||
Assert(_continuation == null);
|
||||
Assert(!_isDone);
|
||||
|
||||
_continuation = continuation;
|
||||
}
|
||||
}
|
||||
|
||||
public class SimpleCoroutineAwaiter : INotifyCompletion
|
||||
{
|
||||
bool _isDone;
|
||||
Exception _exception;
|
||||
Action _continuation;
|
||||
|
||||
public bool IsCompleted
|
||||
{
|
||||
get { return _isDone; }
|
||||
}
|
||||
|
||||
public void GetResult()
|
||||
{
|
||||
Assert(_isDone);
|
||||
|
||||
if (_exception != null)
|
||||
{
|
||||
ExceptionDispatchInfo.Capture(_exception).Throw();
|
||||
}
|
||||
}
|
||||
|
||||
public void Complete(Exception e)
|
||||
{
|
||||
Assert(!_isDone);
|
||||
|
||||
_isDone = true;
|
||||
_exception = e;
|
||||
|
||||
// Always trigger the continuation on the unity thread when awaiting on unity yield
|
||||
// instructions
|
||||
if (_continuation != null)
|
||||
{
|
||||
RunOnUnityScheduler(_continuation);
|
||||
}
|
||||
}
|
||||
|
||||
void INotifyCompletion.OnCompleted(Action continuation)
|
||||
{
|
||||
Assert(_continuation == null);
|
||||
Assert(!_isDone);
|
||||
|
||||
_continuation = continuation;
|
||||
}
|
||||
}
|
||||
|
||||
class CoroutineWrapper<T>
|
||||
{
|
||||
readonly SimpleCoroutineAwaiter<T> _awaiter;
|
||||
readonly Stack<IEnumerator> _processStack;
|
||||
|
||||
public CoroutineWrapper(
|
||||
IEnumerator coroutine, SimpleCoroutineAwaiter<T> awaiter)
|
||||
{
|
||||
_processStack = new Stack<IEnumerator>();
|
||||
_processStack.Push(coroutine);
|
||||
_awaiter = awaiter;
|
||||
}
|
||||
|
||||
public IEnumerator Run()
|
||||
{
|
||||
while (true)
|
||||
{
|
||||
var topWorker = _processStack.Peek();
|
||||
|
||||
bool isDone;
|
||||
|
||||
try
|
||||
{
|
||||
isDone = !topWorker.MoveNext();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
// The IEnumerators we have in the process stack do not tell us the
|
||||
// actual names of the coroutine methods but it does tell us the objects
|
||||
// that the IEnumerators are associated with, so we can at least try
|
||||
// adding that to the exception output
|
||||
var objectTrace = GenerateObjectTrace(_processStack);
|
||||
|
||||
if (objectTrace.Any())
|
||||
{
|
||||
_awaiter.Complete(
|
||||
default(T), new Exception(
|
||||
GenerateObjectTraceMessage(objectTrace), e));
|
||||
}
|
||||
else
|
||||
{
|
||||
_awaiter.Complete(default(T), e);
|
||||
}
|
||||
|
||||
yield break;
|
||||
}
|
||||
|
||||
if (isDone)
|
||||
{
|
||||
_processStack.Pop();
|
||||
|
||||
if (_processStack.Count == 0)
|
||||
{
|
||||
_awaiter.Complete((T)topWorker.Current, null);
|
||||
yield break;
|
||||
}
|
||||
}
|
||||
|
||||
// We could just yield return nested IEnumerator's here but we choose to do
|
||||
// our own handling here so that we can catch exceptions in nested coroutines
|
||||
// instead of just top level coroutine
|
||||
if (topWorker.Current is IEnumerator)
|
||||
{
|
||||
_processStack.Push((IEnumerator)topWorker.Current);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Return the current value to the unity engine so it can handle things like
|
||||
// WaitForSeconds, WaitToEndOfFrame, etc.
|
||||
yield return topWorker.Current;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
string GenerateObjectTraceMessage(List<Type> objTrace)
|
||||
{
|
||||
var result = new StringBuilder();
|
||||
|
||||
foreach (var objType in objTrace)
|
||||
{
|
||||
if (result.Length != 0)
|
||||
{
|
||||
result.Append(" -> ");
|
||||
}
|
||||
|
||||
result.Append(objType.ToString());
|
||||
}
|
||||
|
||||
result.AppendLine();
|
||||
return "Unity Coroutine Object Trace: " + result.ToString();
|
||||
}
|
||||
|
||||
static List<Type> GenerateObjectTrace(IEnumerable<IEnumerator> enumerators)
|
||||
{
|
||||
var objTrace = new List<Type>();
|
||||
|
||||
foreach (var enumerator in enumerators)
|
||||
{
|
||||
// NOTE: This only works with scripting engine 4.6
|
||||
// And could easily stop working with unity updates
|
||||
var field = enumerator.GetType().GetField("$this", BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance);
|
||||
|
||||
if (field == null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
var obj = field.GetValue(enumerator);
|
||||
|
||||
if (obj == null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
var objType = obj.GetType();
|
||||
|
||||
if (!objTrace.Any() || objType != objTrace.Last())
|
||||
{
|
||||
objTrace.Add(objType);
|
||||
}
|
||||
}
|
||||
|
||||
objTrace.Reverse();
|
||||
return objTrace;
|
||||
}
|
||||
}
|
||||
|
||||
static class InstructionWrappers
|
||||
{
|
||||
public static IEnumerator ReturnVoid(
|
||||
SimpleCoroutineAwaiter awaiter, object instruction)
|
||||
{
|
||||
// For simple instructions we assume that they don't throw exceptions
|
||||
yield return instruction;
|
||||
awaiter.Complete(null);
|
||||
}
|
||||
|
||||
public static IEnumerator AssetBundleCreateRequest(
|
||||
SimpleCoroutineAwaiter<AssetBundle> awaiter, AssetBundleCreateRequest instruction)
|
||||
{
|
||||
yield return instruction;
|
||||
awaiter.Complete(instruction.assetBundle, null);
|
||||
}
|
||||
|
||||
public static IEnumerator ReturnSelf<T>(
|
||||
SimpleCoroutineAwaiter<T> awaiter, T instruction)
|
||||
{
|
||||
yield return instruction;
|
||||
awaiter.Complete(instruction, null);
|
||||
}
|
||||
|
||||
public static IEnumerator AssetBundleRequest(
|
||||
SimpleCoroutineAwaiter<UnityEngine.Object> awaiter, AssetBundleRequest instruction)
|
||||
{
|
||||
yield return instruction;
|
||||
awaiter.Complete(instruction.asset, null);
|
||||
}
|
||||
|
||||
public static IEnumerator ResourceRequest(
|
||||
SimpleCoroutineAwaiter<UnityEngine.Object> awaiter, ResourceRequest instruction)
|
||||
{
|
||||
yield return instruction;
|
||||
awaiter.Complete(instruction.asset, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
fileFormatVersion: 2
|
||||
guid: ba71e5544e233dd4b83d4c5a6c696d05
|
||||
timeCreated: 1455373900
|
||||
guid: e25e4bf7a3b2f5f4e82e2de590d2e12a
|
||||
timeCreated: 1506071089
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
9
Assets/Plugins/AsyncAwaitUtil/Source/Internal.meta
Normal file
9
Assets/Plugins/AsyncAwaitUtil/Source/Internal.meta
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0e49c304a8a375e4fb785571f1b582c2
|
||||
folderAsset: yes
|
||||
timeCreated: 1506153419
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
|
||||
namespace UnityAsyncAwaitUtil
|
||||
{
|
||||
public class AsyncCoroutineRunner : MonoBehaviour
|
||||
{
|
||||
static AsyncCoroutineRunner _instance;
|
||||
|
||||
public static AsyncCoroutineRunner Instance
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_instance == null)
|
||||
{
|
||||
_instance = new GameObject("AsyncCoroutineRunner")
|
||||
.AddComponent<AsyncCoroutineRunner>();
|
||||
}
|
||||
|
||||
return _instance;
|
||||
}
|
||||
}
|
||||
|
||||
void Awake()
|
||||
{
|
||||
// Don't show in scene hierarchy
|
||||
gameObject.hideFlags = HideFlags.HideAndDontSave;
|
||||
|
||||
DontDestroyOnLoad(gameObject);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 5da8247fbc4a4c84e96a727b44903214
|
||||
timeCreated: 1455373899
|
||||
guid: f11ec4617f62c224b99e34972dc917a8
|
||||
timeCreated: 1506153419
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
|
||||
namespace UnityAsyncAwaitUtil
|
||||
{
|
||||
public static class SyncContextUtil
|
||||
{
|
||||
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]
|
||||
static void Install()
|
||||
{
|
||||
UnitySynchronizationContext = SynchronizationContext.Current;
|
||||
UnityThreadId = Thread.CurrentThread.ManagedThreadId;
|
||||
}
|
||||
|
||||
public static int UnityThreadId
|
||||
{
|
||||
get; private set;
|
||||
}
|
||||
|
||||
public static SynchronizationContext UnitySynchronizationContext
|
||||
{
|
||||
get; private set;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a184433eba65a614191b36436c5620cd
|
||||
timeCreated: 1506158938
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
40
Assets/Plugins/AsyncAwaitUtil/Source/TaskExtensions.cs
Normal file
40
Assets/Plugins/AsyncAwaitUtil/Source/TaskExtensions.cs
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.ExceptionServices;
|
||||
using System.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
|
||||
public static class TaskExtensions
|
||||
{
|
||||
public static IEnumerator AsIEnumerator(this Task task)
|
||||
{
|
||||
while (!task.IsCompleted)
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
|
||||
if (task.IsFaulted)
|
||||
{
|
||||
ExceptionDispatchInfo.Capture(task.Exception).Throw();
|
||||
}
|
||||
}
|
||||
|
||||
public static IEnumerator<T> AsIEnumerator<T>(this Task<T> task)
|
||||
where T : class
|
||||
{
|
||||
while (!task.IsCompleted)
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
|
||||
if (task.IsFaulted)
|
||||
{
|
||||
ExceptionDispatchInfo.Capture(task.Exception).Throw();
|
||||
}
|
||||
|
||||
yield return task.Result;
|
||||
}
|
||||
}
|
||||
12
Assets/Plugins/AsyncAwaitUtil/Source/TaskExtensions.cs.meta
Normal file
12
Assets/Plugins/AsyncAwaitUtil/Source/TaskExtensions.cs.meta
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 445df9c15261a3a4e97d1528208902e3
|
||||
timeCreated: 1506110050
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
|
||||
public class WaitForBackgroundThread
|
||||
{
|
||||
public ConfiguredTaskAwaitable.ConfiguredTaskAwaiter GetAwaiter()
|
||||
{
|
||||
return Task.Run(() => {}).ConfigureAwait(false).GetAwaiter();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b49e8af9f6a40874191794f7bae31812
|
||||
timeCreated: 1506162217
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
16
Assets/Plugins/AsyncAwaitUtil/Source/WaitForUpdate.cs
Normal file
16
Assets/Plugins/AsyncAwaitUtil/Source/WaitForUpdate.cs
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
|
||||
// This can be used as a way to return to the main unity thread when using multiple threads
|
||||
// with async methods
|
||||
public class WaitForUpdate : CustomYieldInstruction
|
||||
{
|
||||
public override bool keepWaiting
|
||||
{
|
||||
get { return false; }
|
||||
}
|
||||
}
|
||||
12
Assets/Plugins/AsyncAwaitUtil/Source/WaitForUpdate.cs.meta
Normal file
12
Assets/Plugins/AsyncAwaitUtil/Source/WaitForUpdate.cs.meta
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: df6106e9f5d243e449fcef043d2d247a
|
||||
timeCreated: 1506153732
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/Plugins/AsyncAwaitUtil/Tests.meta
Normal file
9
Assets/Plugins/AsyncAwaitUtil/Tests.meta
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d4308153066836c44a8313e2c20be80d
|
||||
folderAsset: yes
|
||||
timeCreated: 1506067485
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
247
Assets/Plugins/AsyncAwaitUtil/Tests/AsyncTests.unity
Normal file
247
Assets/Plugins/AsyncAwaitUtil/Tests/AsyncTests.unity
Normal file
|
|
@ -0,0 +1,247 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
OcclusionCullingSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: 0.25
|
||||
backfaceThreshold: 100
|
||||
m_SceneGUID: 00000000000000000000000000000000
|
||||
m_OcclusionCullingData: {fileID: 0}
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 8
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: 0.01
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
|
||||
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
|
||||
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: 0.5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
m_IndirectSpecularColor: {r: 0.37311992, g: 0.38074034, b: 0.35872713, a: 1}
|
||||
--- !u!157 &3
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 11
|
||||
m_GIWorkflowMode: 0
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 9
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AO: 0
|
||||
m_AOMaxDistance: 1
|
||||
m_CompAOExponent: 1
|
||||
m_CompAOExponentDirect: 0
|
||||
m_Padding: 2
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_LightmapsBakeMode: 1
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherFiltering: 1
|
||||
m_FinalGatherRayCount: 256
|
||||
m_ReflectionCompression: 2
|
||||
m_MixedBakeMode: 2
|
||||
m_BakeBackend: 0
|
||||
m_PVRSampling: 1
|
||||
m_PVRDirectSampleCount: 32
|
||||
m_PVRSampleCount: 500
|
||||
m_PVRBounces: 2
|
||||
m_PVRFiltering: 0
|
||||
m_PVRFilteringMode: 1
|
||||
m_PVRCulling: 1
|
||||
m_PVRFilteringGaussRadiusDirect: 1
|
||||
m_PVRFilteringGaussRadiusIndirect: 5
|
||||
m_PVRFilteringGaussRadiusAO: 2
|
||||
m_PVRFilteringAtrousColorSigma: 1
|
||||
m_PVRFilteringAtrousNormalSigma: 1
|
||||
m_PVRFilteringAtrousPositionSigma: 1
|
||||
m_LightingDataAsset: {fileID: 0}
|
||||
m_UseShadowmask: 1
|
||||
--- !u!196 &4
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentTypeID: 0
|
||||
agentRadius: 0.5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: 0.4
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
minRegionArea: 2
|
||||
manualCellSize: 0
|
||||
cellSize: 0.16666667
|
||||
manualTileSize: 0
|
||||
tileSize: 256
|
||||
accuratePlacement: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &872110973
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 872110978}
|
||||
- component: {fileID: 872110977}
|
||||
- component: {fileID: 872110976}
|
||||
- component: {fileID: 872110975}
|
||||
- component: {fileID: 872110974}
|
||||
m_Layer: 0
|
||||
m_Name: Camera
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &872110974
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 872110973}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &872110975
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 872110973}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &872110976
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 872110973}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &872110977
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 872110973}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: 0.3
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: 0
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 1
|
||||
m_AllowMSAA: 1
|
||||
m_ForceIntoRT: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: 0.022
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &872110978
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 872110973}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &1790199439
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1790199441}
|
||||
- component: {fileID: 1790199440}
|
||||
m_Layer: 0
|
||||
m_Name: Runner
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1790199440
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1790199439}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: cb4f149e5fdd59e45958e5b591ca42e6, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_buttonSettings:
|
||||
NumPerColumn: 4
|
||||
VerticalMargin: 55.41
|
||||
VerticalSpacing: 62.9
|
||||
HorizontalSpacing: 28.9
|
||||
HorizontalMargin: 50
|
||||
ButtonWidth: 342.4
|
||||
ButtonHeight: 50
|
||||
--- !u!4 &1790199441
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1790199439}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1bd0e101aab2ee24cbc1d7902b692a75
|
||||
timeCreated: 1506067485
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
264
Assets/Plugins/AsyncAwaitUtil/Tests/AsyncUtilTests.cs
Normal file
264
Assets/Plugins/AsyncAwaitUtil/Tests/AsyncUtilTests.cs
Normal file
|
|
@ -0,0 +1,264 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Networking;
|
||||
using Debug = UnityEngine.Debug;
|
||||
|
||||
namespace UnityAsyncAwaitUtil
|
||||
{
|
||||
public class AsyncUtilTests : MonoBehaviour
|
||||
{
|
||||
const string AssetBundleSampleUrl = "http://www.stevevermeulen.com/wp-content/uploads/2017/09/teapot.unity3d";
|
||||
const string AssetBundleSampleAssetName = "Teapot";
|
||||
|
||||
[SerializeField]
|
||||
TestButtonHandler.Settings _buttonSettings = null;
|
||||
|
||||
TestButtonHandler _buttonHandler;
|
||||
|
||||
public void Awake()
|
||||
{
|
||||
_buttonHandler = new TestButtonHandler(_buttonSettings);
|
||||
}
|
||||
|
||||
public void OnGUI()
|
||||
{
|
||||
_buttonHandler.Restart();
|
||||
|
||||
if (_buttonHandler.Display("Test await seconds"))
|
||||
{
|
||||
RunAwaitSecondsTestAsync().WrapErrors();
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test return value"))
|
||||
{
|
||||
RunReturnValueTestAsync().WrapErrors();
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test try-catch exception"))
|
||||
{
|
||||
RunTryCatchExceptionTestAsync().WrapErrors();
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test unhandled exception"))
|
||||
{
|
||||
// Note: Without WrapErrors here this wouldn't log anything
|
||||
RunUnhandledExceptionTestAsync().WrapErrors();
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test IEnumerator"))
|
||||
{
|
||||
RunIEnumeratorTestAsync().WrapErrors();
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test IEnumerator with return value (untyped)"))
|
||||
{
|
||||
RunIEnumeratorUntypedStringTestAsync().WrapErrors();
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test IEnumerator with return value (typed)"))
|
||||
{
|
||||
RunIEnumeratorStringTestAsync().WrapErrors();
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test IEnumerator unhandled exception"))
|
||||
{
|
||||
RunIEnumeratorUnhandledExceptionAsync().WrapErrors();
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test IEnumerator try-catch exception"))
|
||||
{
|
||||
RunIEnumeratorTryCatchExceptionAsync().WrapErrors();
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test opening notepad"))
|
||||
{
|
||||
RunOpenNotepadTestAsync().WrapErrors();
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test Call Async from coroutine"))
|
||||
{
|
||||
StartCoroutine(RunAsyncFromCoroutineTest());
|
||||
}
|
||||
|
||||
if (_buttonHandler.Display("Test multiple threads"))
|
||||
{
|
||||
RunMultipleThreadsTestAsync().WrapErrors();
|
||||
}
|
||||
}
|
||||
|
||||
IEnumerator RunAsyncFromCoroutineTest()
|
||||
{
|
||||
Debug.Log("Waiting 1 second...");
|
||||
yield return new WaitForSeconds(1.0f);
|
||||
Debug.Log("Waiting 1 second again...");
|
||||
yield return RunAsyncFromCoroutineTest2().AsIEnumerator();
|
||||
Debug.Log("Done");
|
||||
}
|
||||
|
||||
async Task RunMultipleThreadsTestAsync()
|
||||
{
|
||||
PrintCurrentThreadContext("Start");
|
||||
await Task.Delay(TimeSpan.FromSeconds(1.0f));
|
||||
PrintCurrentThreadContext("After delay");
|
||||
await new WaitForBackgroundThread();
|
||||
PrintCurrentThreadContext("After WaitForBackgroundThread");
|
||||
Debug.Log("Waiting 1 second...");
|
||||
await Task.Delay(TimeSpan.FromSeconds(1.0f));
|
||||
// We will still running from the threadpool after the delay here
|
||||
PrintCurrentThreadContext("After Waiting");
|
||||
// We can place any unity yield instruction here instead and it will return to the unity thread
|
||||
await new WaitForUpdate();
|
||||
PrintCurrentThreadContext("After WaitForUpdate");
|
||||
}
|
||||
|
||||
async Task RunMultipleThreadsTestAsyncWait()
|
||||
{
|
||||
PrintCurrentThreadContext("RunMultipleThreadsTestAsyncWait1");
|
||||
await new WaitForSeconds(1.0f);
|
||||
PrintCurrentThreadContext("RunMultipleThreadsTestAsyncWait2");
|
||||
}
|
||||
|
||||
void PrintCurrentThreadContext(string prefix = null)
|
||||
{
|
||||
Debug.Log(string.Format("{0}Current Thread: {1}, Scheduler: {2}",
|
||||
prefix == null ? "" : prefix + ": ", Thread.CurrentThread.ManagedThreadId, SynchronizationContext.Current == null ? "null" : SynchronizationContext.Current.GetType().Name));
|
||||
}
|
||||
|
||||
async Task RunAsyncFromCoroutineTest2()
|
||||
{
|
||||
await new WaitForSeconds(1.0f);
|
||||
}
|
||||
|
||||
async Task RunOpenNotepadTestAsync()
|
||||
{
|
||||
Debug.Log("Waiting for user to close notepad...");
|
||||
await Process.Start("notepad.exe");
|
||||
Debug.Log("Closed notepad");
|
||||
}
|
||||
|
||||
async Task RunUnhandledExceptionTestAsync()
|
||||
{
|
||||
// This should be logged when using WrapErrors
|
||||
await WaitThenThrowException();
|
||||
}
|
||||
|
||||
async Task RunTryCatchExceptionTestAsync()
|
||||
{
|
||||
try
|
||||
{
|
||||
await NestedRunAsync();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.Log("Caught exception! " + e.Message);
|
||||
}
|
||||
}
|
||||
|
||||
async Task NestedRunAsync()
|
||||
{
|
||||
await new WaitForSeconds(1);
|
||||
throw new Exception("foo");
|
||||
}
|
||||
|
||||
async Task WaitThenThrowException()
|
||||
{
|
||||
await new WaitForSeconds(1.5f);
|
||||
throw new Exception("asdf");
|
||||
}
|
||||
|
||||
async Task RunIEnumeratorTryCatchExceptionAsync()
|
||||
{
|
||||
try
|
||||
{
|
||||
await WaitThenThrow();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.Log("Caught exception! " + e.Message);
|
||||
}
|
||||
}
|
||||
|
||||
async Task RunIEnumeratorUnhandledExceptionAsync()
|
||||
{
|
||||
await WaitThenThrow();
|
||||
}
|
||||
|
||||
IEnumerator WaitThenThrow()
|
||||
{
|
||||
yield return WaitThenThrowNested();
|
||||
}
|
||||
|
||||
IEnumerator WaitThenThrowNested()
|
||||
{
|
||||
Debug.Log("Waiting 1 second...");
|
||||
yield return new WaitForSeconds(1.0f);
|
||||
throw new Exception("zxcv");
|
||||
}
|
||||
|
||||
async Task RunIEnumeratorStringTestAsync()
|
||||
{
|
||||
Debug.Log("Waiting for ienumerator...");
|
||||
Debug.Log("Done! Result: " + await WaitForString());
|
||||
}
|
||||
|
||||
async Task RunIEnumeratorUntypedStringTestAsync()
|
||||
{
|
||||
Debug.Log("Waiting for ienumerator...");
|
||||
string result = (string)(await WaitForStringUntyped());
|
||||
Debug.Log("Done! Result: " + result);
|
||||
}
|
||||
|
||||
async Task RunIEnumeratorTestAsync()
|
||||
{
|
||||
Debug.Log("Waiting for ienumerator...");
|
||||
await WaitABit();
|
||||
Debug.Log("Done!");
|
||||
}
|
||||
|
||||
IEnumerator<string> WaitForString()
|
||||
{
|
||||
var startTime = Time.realtimeSinceStartup;
|
||||
while (Time.realtimeSinceStartup - startTime < 2)
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
yield return "bsdfgas";
|
||||
}
|
||||
|
||||
IEnumerator WaitForStringUntyped()
|
||||
{
|
||||
yield return WaitABit();
|
||||
yield return "qwer";
|
||||
}
|
||||
|
||||
IEnumerator WaitABit()
|
||||
{
|
||||
yield return new WaitForSeconds(1.5f);
|
||||
}
|
||||
|
||||
async Task RunReturnValueTestAsync()
|
||||
{
|
||||
Debug.Log("Waiting to get value...");
|
||||
var result = await GetValueExampleAsync();
|
||||
Debug.Log("Got value: " + result);
|
||||
}
|
||||
|
||||
async Task<string> GetValueExampleAsync()
|
||||
{
|
||||
await new WaitForSeconds(1.0f);
|
||||
return "asdf";
|
||||
}
|
||||
|
||||
async Task RunAwaitSecondsTestAsync()
|
||||
{
|
||||
Debug.Log("Waiting 1 second...");
|
||||
await new WaitForSeconds(1.0f);
|
||||
Debug.Log("Done!");
|
||||
}
|
||||
}
|
||||
}
|
||||
12
Assets/Plugins/AsyncAwaitUtil/Tests/AsyncUtilTests.cs.meta
Normal file
12
Assets/Plugins/AsyncAwaitUtil/Tests/AsyncUtilTests.cs.meta
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: cb4f149e5fdd59e45958e5b591ca42e6
|
||||
timeCreated: 1503457821
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/Plugins/AsyncAwaitUtil/Tests/Util.meta
Normal file
9
Assets/Plugins/AsyncAwaitUtil/Tests/Util.meta
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 55f153410442a5e448cd22e4abb9756e
|
||||
folderAsset: yes
|
||||
timeCreated: 1506100714
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
|
||||
namespace UnityAsyncAwaitUtil
|
||||
{
|
||||
public class TestButtonHandler
|
||||
{
|
||||
readonly Settings _settings;
|
||||
|
||||
int _buttonVCount;
|
||||
int _buttonHCount;
|
||||
|
||||
public TestButtonHandler(Settings settings)
|
||||
{
|
||||
_settings = settings;
|
||||
}
|
||||
|
||||
public void Restart()
|
||||
{
|
||||
_buttonVCount = 0;
|
||||
_buttonHCount = 0;
|
||||
}
|
||||
|
||||
public bool Display(string text)
|
||||
{
|
||||
if (_buttonVCount > _settings.NumPerColumn)
|
||||
{
|
||||
_buttonHCount++;
|
||||
_buttonVCount = 0;
|
||||
}
|
||||
|
||||
var result = GUI.Button(
|
||||
new Rect(
|
||||
_settings.HorizontalMargin + _buttonHCount * (_settings.ButtonWidth + _settings.HorizontalSpacing),
|
||||
_settings.VerticalMargin + _buttonVCount * (_settings.ButtonHeight + _settings.VerticalSpacing),
|
||||
_settings.ButtonWidth, _settings.ButtonHeight), text);
|
||||
|
||||
_buttonVCount++;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class Settings
|
||||
{
|
||||
public int NumPerColumn = 6;
|
||||
public float VerticalMargin = 50;
|
||||
public float VerticalSpacing = 50;
|
||||
public float HorizontalSpacing = 50;
|
||||
public float HorizontalMargin = 50;
|
||||
public float ButtonWidth = 50;
|
||||
public float ButtonHeight = 50;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 9c53fa9158328e84ea9dad5658b23d52
|
||||
timeCreated: 1506100715
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Plugins/AsyncAwaitUtil/UniRx.zip
Normal file
BIN
Assets/Plugins/AsyncAwaitUtil/UniRx.zip
Normal file
Binary file not shown.
8
Assets/Plugins/AsyncAwaitUtil/UniRx.zip.meta
Normal file
8
Assets/Plugins/AsyncAwaitUtil/UniRx.zip.meta
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0a467472112afef41a04d89bb288500f
|
||||
timeCreated: 1525587959
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Plugins/Microsoft.Extensions.Logging.Abstractions.dll
(Stored with Git LFS)
Normal file
BIN
Assets/Plugins/Microsoft.Extensions.Logging.Abstractions.dll
(Stored with Git LFS)
Normal file
Binary file not shown.
|
|
@ -0,0 +1,33 @@
|
|||
fileFormatVersion: 2
|
||||
guid: dfe5c979bf56f5d47af86c065ba2120b
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Plugins/Newtonsoft.Json.dll
(Stored with Git LFS)
Normal file
BIN
Assets/Plugins/Newtonsoft.Json.dll
(Stored with Git LFS)
Normal file
Binary file not shown.
33
Assets/Plugins/Newtonsoft.Json.dll.meta
Normal file
33
Assets/Plugins/Newtonsoft.Json.dll.meta
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
fileFormatVersion: 2
|
||||
guid: eb30e0065a874324cb38d7ca7f3d1b87
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Plugins/Remotion.Linq.dll
(Stored with Git LFS)
Normal file
BIN
Assets/Plugins/Remotion.Linq.dll
(Stored with Git LFS)
Normal file
Binary file not shown.
33
Assets/Plugins/Remotion.Linq.dll.meta
Normal file
33
Assets/Plugins/Remotion.Linq.dll.meta
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 7d534480cae60a94ba92788043634a76
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Plugins/RethinkDb.Driver.Linq.dll
(Stored with Git LFS)
Normal file
BIN
Assets/Plugins/RethinkDb.Driver.Linq.dll
(Stored with Git LFS)
Normal file
Binary file not shown.
100
Assets/Plugins/RethinkDb.Driver.Linq.dll.meta
Normal file
100
Assets/Plugins/RethinkDb.Driver.Linq.dll.meta
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a4834ab237984c34989bbc2898518295
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 0
|
||||
platformData:
|
||||
- first:
|
||||
'': Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Editor: 0
|
||||
Exclude Linux: 0
|
||||
Exclude Linux64: 0
|
||||
Exclude LinuxUniversal: 0
|
||||
Exclude OSXUniversal: 0
|
||||
Exclude WebGL: 0
|
||||
Exclude Win: 0
|
||||
Exclude Win64: 0
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
- first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: x86_64
|
||||
- first:
|
||||
Standalone: LinuxUniversal
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Plugins/RethinkDb.Driver.dll
(Stored with Git LFS)
Normal file
BIN
Assets/Plugins/RethinkDb.Driver.dll
(Stored with Git LFS)
Normal file
Binary file not shown.
100
Assets/Plugins/RethinkDb.Driver.dll.meta
Normal file
100
Assets/Plugins/RethinkDb.Driver.dll.meta
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 800dfc6b8095d9f48975a03adc1d51fb
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 0
|
||||
platformData:
|
||||
- first:
|
||||
'': Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Editor: 0
|
||||
Exclude Linux: 0
|
||||
Exclude Linux64: 0
|
||||
Exclude LinuxUniversal: 0
|
||||
Exclude OSXUniversal: 0
|
||||
Exclude WebGL: 0
|
||||
Exclude Win: 0
|
||||
Exclude Win64: 0
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
- first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: x86_64
|
||||
- first:
|
||||
Standalone: LinuxUniversal
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -212,6 +212,7 @@ GameObject:
|
|||
- component: {fileID: 519420032}
|
||||
- component: {fileID: 519420031}
|
||||
- component: {fileID: 519420029}
|
||||
- component: {fileID: 519420030}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
|
|
@ -227,6 +228,18 @@ AudioListener:
|
|||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 519420028}
|
||||
m_Enabled: 1
|
||||
--- !u!114 &519420030
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 519420028}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c3cd207057515c4438a31a6a7b548fe7, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!20 &519420031
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
|
|||
|
|
@ -1,494 +0,0 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using MessagePack;
|
||||
using UniRx;
|
||||
using Unity.Mathematics;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Audio;
|
||||
using static Unity.Mathematics.math;
|
||||
using static Unity.Mathematics.noise;
|
||||
using Object = UnityEngine.Object;
|
||||
|
||||
public interface IItemBehavior
|
||||
{
|
||||
void Update(float delta);
|
||||
void FixedUpdate(float delta);
|
||||
Ship Ship { get; }
|
||||
Gear Item { get; }
|
||||
IItemBehaviorData Data { get; }
|
||||
}
|
||||
|
||||
public interface IActivatedItemBehavior : IItemBehavior
|
||||
{
|
||||
void Activate();
|
||||
void Deactivate();
|
||||
}
|
||||
|
||||
[Inspectable]
|
||||
[Union(0, typeof(CannonBehaviorData))]
|
||||
[Union(1, typeof(MissileBehaviorData))]
|
||||
[Union(2, typeof(ReactorBehaviorData))]
|
||||
// [Union(3, typeof(PlusUltraBehaviorData))]
|
||||
[Union(4, typeof(AfterburnerBehaviorData))]
|
||||
[Union(5, typeof(SensorBehaviorData))]
|
||||
public interface IItemBehaviorData
|
||||
{
|
||||
IItemBehavior CreateInstance(Ship ship, Gear item);
|
||||
// PerformanceStat[] DynamicStats { get; }
|
||||
//Type ItemType { get; }
|
||||
}
|
||||
|
||||
[Inspectable]
|
||||
[MessagePackObject]
|
||||
public class SensorBehaviorData : IItemBehaviorData
|
||||
{
|
||||
[Inspectable] [Key("radiance")] public PerformanceStat Radiance;
|
||||
[Inspectable] [Key("masking")] public PerformanceStat RadianceMasking;
|
||||
[Inspectable] [Key("sensitivity")] public PerformanceStat Sensitivity;
|
||||
[Inspectable] [Key("range")] public PerformanceStat Range;
|
||||
|
||||
public IItemBehavior CreateInstance(Ship ship, Gear item)
|
||||
{
|
||||
return new SensorBehavior(this, ship, item);
|
||||
}
|
||||
|
||||
[IgnoreMember] public PerformanceStat[] DynamicStats => new[] {Radiance, Sensitivity};
|
||||
}
|
||||
|
||||
public class SensorBehavior : IItemBehavior
|
||||
{
|
||||
private SensorBehaviorData _data;
|
||||
|
||||
public Ship Ship { get; }
|
||||
public Gear Item { get; }
|
||||
|
||||
public IItemBehaviorData Data => _data;
|
||||
|
||||
public SensorBehavior(SensorBehaviorData data, Ship ship, Gear item)
|
||||
{
|
||||
_data = data;
|
||||
Ship = ship;
|
||||
Item = item;
|
||||
}
|
||||
|
||||
public void Update(float delta)
|
||||
{
|
||||
// var ship = Hardpoint.Ship.Ship.transform;
|
||||
// var contacts =
|
||||
// Physics.OverlapSphere(ship.position, _data.Range.Evaluate(Hardpoint)).Where(c=>c.attachedRigidbody?.GetComponent<Targetable>()!=null).Select(c=>c.attachedRigidbody.GetComponent<Targetable>());
|
||||
// foreach (var contact in contacts)
|
||||
// {
|
||||
// var diff = (contact.transform.position - ship.position).Flatland();
|
||||
// var angle = acos(dot(ship.forward.Flatland().normalized,
|
||||
// diff.normalized)) / (float)PI;
|
||||
// var sens = _data.Sensitivity.Evaluate(Hardpoint) *
|
||||
// Hardpoint.Ship.HullData.VisibilityCurve.Evaluate(saturate(angle));
|
||||
// var vis = contact.Visibility / diff.sqrMagnitude;
|
||||
// if(vis > 1/sens)
|
||||
// Hardpoint.Ship.Contacts[contact] = Time.time;
|
||||
// }
|
||||
//
|
||||
// Hardpoint.Ship.VisibilitySources[this] = _data.Radiance.Evaluate(Hardpoint) / _data.RadianceMasking.Evaluate(Hardpoint);
|
||||
// TODO: Handle Active Detection / Visibility From Reflected Radiance
|
||||
}
|
||||
|
||||
public void FixedUpdate(float delta)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
[Inspectable]
|
||||
[MessagePackObject]
|
||||
public class AfterburnerBehaviorData : IItemBehaviorData
|
||||
{
|
||||
[Inspectable] [Key("thrust")] public PerformanceStat ThrustModifier;
|
||||
[Inspectable] [Key("speed")] public PerformanceStat SpeedModifier;
|
||||
[Inspectable] [Key("torque")] public PerformanceStat TorqueModifier;
|
||||
public IItemBehavior CreateInstance(Ship ship, Gear item)
|
||||
{
|
||||
return new AfterburnerBehavior(this, ship, item);
|
||||
}
|
||||
}
|
||||
|
||||
public class AfterburnerBehavior : IActivatedItemBehavior
|
||||
{
|
||||
private List<Dictionary<IItemBehavior,float>> _modifiers = new List<Dictionary<IItemBehavior, float>>();
|
||||
private AfterburnerBehaviorData _data;
|
||||
|
||||
public Ship Ship { get; }
|
||||
public Gear Item { get; }
|
||||
|
||||
public IItemBehaviorData Data => _data;
|
||||
|
||||
public AfterburnerBehavior(AfterburnerBehaviorData data, Ship ship, Gear item)
|
||||
{
|
||||
_data = data;
|
||||
Ship = ship;
|
||||
Item = item;
|
||||
}
|
||||
|
||||
public void Update(float delta)
|
||||
{
|
||||
}
|
||||
|
||||
public void FixedUpdate(float delta)
|
||||
{
|
||||
}
|
||||
|
||||
public void Activate()
|
||||
{
|
||||
var thrustMod = (Ship.GetEquipped(HardpointType.Thruster).EquippedItemData as Thruster).Thrust.GetScaleModifiers(Ship);
|
||||
_modifiers.Add(thrustMod);
|
||||
thrustMod.Add(this,_data.ThrustModifier.Evaluate(Item, Ship));
|
||||
|
||||
var speedMod = (Ship.Hull.EquippedItemData as Hull).TopSpeed.GetScaleModifiers(Ship);
|
||||
_modifiers.Add(speedMod);
|
||||
speedMod.Add(this,_data.SpeedModifier.Evaluate(Item, Ship));
|
||||
|
||||
var torqueMod = (Ship.GetEquipped(HardpointType.Thruster).EquippedItemData as Thruster).Torque.GetScaleModifiers(Ship);
|
||||
_modifiers.Add(torqueMod);
|
||||
torqueMod.Add(this,_data.TorqueModifier.Evaluate(Item, Ship));
|
||||
|
||||
Ship.ForceThrust = true;
|
||||
}
|
||||
|
||||
public void Deactivate()
|
||||
{
|
||||
Ship.ForceThrust = false;
|
||||
foreach (var mod in _modifiers)
|
||||
{
|
||||
mod.Remove(this);
|
||||
}
|
||||
_modifiers.Clear();
|
||||
}
|
||||
}
|
||||
|
||||
[Inspectable]
|
||||
[MessagePackObject]
|
||||
public class CannonBehaviorData : IItemBehaviorData
|
||||
{
|
||||
[MessagePackFormatter(typeof(UnityGameObjectFormatter))]
|
||||
[Inspectable] [Key("bullet")] public GameObject BulletPrefab;
|
||||
// [MessagePackFormatter(typeof(ClipListFormatter))]
|
||||
// [Inspectable] [Key("sounds")] public List<AudioClip> Sounds;
|
||||
[Inspectable] [Key("damageType")] public ProjectileType DamageType;
|
||||
[Inspectable] [Key("burstCount")] public int BurstCount;
|
||||
[Inspectable] [Key("burstTime")] public PerformanceStat BurstTime;
|
||||
[Inspectable] [Key("bulletRange")] public PerformanceStat Range;
|
||||
[Inspectable] [Key("spread")] public PerformanceStat Spread;
|
||||
[Inspectable] [Key("bulletInherit")] public float Inherit;
|
||||
[Inspectable] [Key("deflection")] public float Deflection;
|
||||
[Inspectable] [Key("visibility")] public PerformanceStat Visibility;
|
||||
[Inspectable] [Key("visibilityDecay")]public PerformanceStat VisibilityDecay;
|
||||
[Inspectable] [Key("bulletVelocity")] public PerformanceStat Velocity;
|
||||
[Inspectable] [Key("cooldown")] public PerformanceStat Cooldown;
|
||||
[Inspectable] [Key("damage")] public PerformanceStat Damage;
|
||||
[Inspectable] [Key("heat")] public PerformanceStat Heat;
|
||||
|
||||
public IItemBehavior CreateInstance(Ship ship, Gear item)
|
||||
{
|
||||
return new CannonBehavior(this, ship, item);
|
||||
}
|
||||
|
||||
[IgnoreMember] public PerformanceStat[] DynamicStats => new[] {BurstTime, Range, Spread, Velocity, Cooldown, Damage};
|
||||
}
|
||||
|
||||
public class CannonBehavior : IActivatedItemBehavior
|
||||
{
|
||||
private bool _firing;
|
||||
private float _cooldown; // normalized
|
||||
private CannonBehaviorData _cannon;
|
||||
public Ship Ship { get; }
|
||||
public Gear Item { get; }
|
||||
private float _firingVisibility;
|
||||
|
||||
public CannonBehavior(CannonBehaviorData c, Ship ship, Gear item)
|
||||
{
|
||||
_cannon = c;
|
||||
Ship = ship;
|
||||
Item = item;
|
||||
}
|
||||
|
||||
public void Activate()
|
||||
{
|
||||
// Debug.Log("Activating Cannon");
|
||||
// _firing = true;
|
||||
// Observable.EveryUpdate().TakeWhile(_ => _firing).Subscribe(_ =>
|
||||
// {
|
||||
// // Debug.Log($"Updating Observable {_cooldown}");
|
||||
// if (_cooldown < 0)
|
||||
// {
|
||||
// _cooldown = 1;
|
||||
// Fire(0);
|
||||
// if(_cannon.BurstCount>1)
|
||||
// Observable.Interval(TimeSpan.FromSeconds(_cannon.BurstTime.Evaluate(Hardpoint) / (_cannon.BurstCount-1))).Take(_cannon.BurstCount-1)
|
||||
// .Subscribe(l => Fire(l+1));
|
||||
// }
|
||||
// });
|
||||
}
|
||||
|
||||
private void Fire(long b)
|
||||
{
|
||||
// _firingVisibility += _cannon.Visibility.Evaluate(Hardpoint);
|
||||
// Hardpoint.Temperature += _cannon.Heat.Evaluate(Hardpoint) / Hardpoint.HeatCapacity;
|
||||
// var inst = GameObject.Instantiate(_cannon.BulletPrefab).transform;
|
||||
// Physics.IgnoreCollision(Hardpoint.Ship.Ship.GetComponent<Collider>(), inst.GetComponent<Collider>());
|
||||
// var bullet = inst.GetComponent<Bullet>();
|
||||
// bullet.Target = Hardpoint.Ship.Ship.Target;
|
||||
// bullet.Source = Hardpoint.Ship.Ship.Hitpoints;
|
||||
// bullet.Lifetime = _cannon.Range.Evaluate(Hardpoint) / _cannon.Velocity.Evaluate(Hardpoint);
|
||||
// bullet.Damage = _cannon.Damage.Evaluate(Hardpoint);
|
||||
// inst.position = Hardpoint.Proxy.position;
|
||||
// inst.rotation = Hardpoint.Proxy.rotation;
|
||||
// inst.GetComponent<Rigidbody>().velocity = _cannon.Velocity.Evaluate(Hardpoint) * Vector3.RotateTowards(-inst.forward, Hardpoint.Ship.Ship.Direction, _cannon.Deflection * Mathf.Deg2Rad, 1);
|
||||
// Hardpoint.Ship.Ship.AudioSource.PlayOneShot(_cannon.Sounds.RandomElement());
|
||||
// Debug.Log($"Firing bullet {b}");
|
||||
}
|
||||
|
||||
public void Deactivate()
|
||||
{
|
||||
_firing = false;
|
||||
}
|
||||
|
||||
public void Update(float delta)
|
||||
{
|
||||
_cooldown -= delta / _cannon.Cooldown.Evaluate(Item, Ship);
|
||||
|
||||
if (_firingVisibility < 0.01f)
|
||||
{
|
||||
Ship.VisibilitySources.Remove(this);
|
||||
}
|
||||
}
|
||||
|
||||
public void FixedUpdate(float delta)
|
||||
{
|
||||
_firingVisibility *= _cannon.VisibilityDecay.Evaluate(Item, Ship);
|
||||
}
|
||||
|
||||
public IItemBehaviorData Data => _cannon;
|
||||
}
|
||||
|
||||
[Inspectable]
|
||||
[MessagePackObject]
|
||||
public class MissileBehaviorData : IItemBehaviorData
|
||||
{
|
||||
// [MessagePackFormatter(typeof(UnityGameObjectFormatter))]
|
||||
// [Inspectable] [Key("missile")] public GameObject MissilePrefab;
|
||||
// [MessagePackFormatter(typeof(ClipListFormatter))]
|
||||
// [Inspectable] [Key("sounds")] public List<AudioClip> Sounds;
|
||||
// [MessagePackFormatter(typeof(UnityAudioClipFormatter))]
|
||||
// [Inspectable] [Key("beepSound")] public AudioClip BeepSound;
|
||||
// [Inspectable] [Key("beepCount")] public int Beeps;
|
||||
[Inspectable] [Key("damageType")] public ProjectileType DamageType;
|
||||
[Inspectable] [Key("burstCount")] public int BurstCount;
|
||||
[Inspectable] [Key("burstTime")] public PerformanceStat BurstTime;
|
||||
[Inspectable] [Key("range")] public PerformanceStat Range;
|
||||
[Inspectable] [Key("guidance")] public AnimationCurve GuidanceCurve;
|
||||
[Inspectable] [Key("thrustCurve")] public AnimationCurve ThrustCurve;
|
||||
[Inspectable] [Key("liftCurve")] public AnimationCurve LiftCurve;
|
||||
[Inspectable] [Key("thrust")] public PerformanceStat Thrust;
|
||||
[Inspectable] [Key("deflection")] public float Deflection;
|
||||
[Inspectable] [Key("lockOnBuffer")] public float LockOnDegrees;
|
||||
[Inspectable] [Key("frequency")] public float DodgeFrequency;
|
||||
[Inspectable] [Key("visibility")] public PerformanceStat Visibility;
|
||||
[Inspectable] [Key("launchSpeed")] public PerformanceStat LaunchSpeed;
|
||||
[Inspectable] [Key("missileSpeed")] public PerformanceStat MissileSpeed;
|
||||
[Inspectable] [Key("cooldown")] public PerformanceStat Cooldown;
|
||||
[Inspectable] [Key("lockOnTime")] public PerformanceStat LockOnTime;
|
||||
[Inspectable] [Key("damage")] public PerformanceStat Damage;
|
||||
[Inspectable] [Key("heat")] public PerformanceStat Heat;
|
||||
|
||||
|
||||
public IItemBehavior CreateInstance(Ship ship, Gear item)
|
||||
{
|
||||
return new MissileBehavior(this, ship, item);
|
||||
}
|
||||
|
||||
[IgnoreMember] public PerformanceStat[] DynamicStats => new[] {BurstTime, Range, Thrust, LaunchSpeed, MissileSpeed, Cooldown, Damage};
|
||||
}
|
||||
|
||||
public class MissileBehavior : IActivatedItemBehavior
|
||||
{
|
||||
private bool _locking;
|
||||
private float _lockingTimer;
|
||||
private float _cooldown; // normalized
|
||||
private bool _locked;
|
||||
|
||||
private MissileBehaviorData _missile;
|
||||
public Ship Ship { get; }
|
||||
public Gear Item { get; }
|
||||
private float _firingVisibility;
|
||||
private AudioSource _audio;
|
||||
|
||||
public MissileBehavior(MissileBehaviorData m, Ship ship, Gear item)
|
||||
{
|
||||
_missile = m;
|
||||
Ship = ship;
|
||||
Item = item;
|
||||
// _audio = hp.Proxy.GetComponent<AudioSource>();
|
||||
// if(_audio==null)
|
||||
// _audio = hp.Proxy.gameObject.AddComponent<AudioSource>();
|
||||
// _audio.clip = _missile.BeepSound;
|
||||
// _audio.loop = true;
|
||||
// _audio.volume = .5f;
|
||||
}
|
||||
|
||||
public void Activate()
|
||||
{
|
||||
_locking = true;
|
||||
_lockingTimer = 1;
|
||||
}
|
||||
|
||||
private void Fire(long b)
|
||||
{
|
||||
|
||||
// _firingVisibility += _missile.Visibility.Evaluate(Hardpoint);
|
||||
// Hardpoint.Temperature += _missile.Heat.Evaluate(Hardpoint) / Hardpoint.HeatCapacity;
|
||||
// var inst = GameObject.Instantiate(_missile.MissilePrefab).transform;
|
||||
// var missile = inst.GetComponent<Bullet>();
|
||||
// missile.Target = Hardpoint.Ship.Ship.Target;
|
||||
// missile.Source = Hardpoint.Ship.Ship.Hitpoints;
|
||||
// missile.Lifetime = _missile.Range.Evaluate(Hardpoint) / _missile.MissileSpeed.Evaluate(Hardpoint);
|
||||
// missile.Damage = _missile.Damage.Evaluate(Hardpoint);
|
||||
// inst.position = Hardpoint.Proxy.position;
|
||||
// inst.rotation = Hardpoint.Proxy.rotation;
|
||||
// inst.GetComponent<Rigidbody>().velocity = _missile.LaunchSpeed.Evaluate(Hardpoint) * Hardpoint.Proxy.forward;
|
||||
// Physics.IgnoreCollision(Hardpoint.Ship.Ship.GetComponent<Collider>(), inst.GetComponent<Collider>());
|
||||
// var proj = inst.gameObject.AddComponent<GuidedProjectile>();
|
||||
// proj.GuidanceCurve = _missile.GuidanceCurve;
|
||||
// proj.ThrustCurve = _missile.ThrustCurve;
|
||||
// proj.LiftCurve = _missile.LiftCurve;
|
||||
// proj.TopSpeed = _missile.MissileSpeed.Evaluate(Hardpoint);
|
||||
// proj.Frequency = _missile.DodgeFrequency;
|
||||
// proj.Target = Hardpoint.Ship.Ship.Target;
|
||||
// proj.Source = Hardpoint.Ship.Ship.Hitpoints;
|
||||
// proj.Thrust = _missile.Thrust.Evaluate(Hardpoint);
|
||||
// _audio.PlayOneShot(_missile.Sounds.RandomElement());
|
||||
// Debug.Log($"Firing bullet {b}");
|
||||
}
|
||||
|
||||
public void Deactivate()
|
||||
{
|
||||
// if (_lockingTimer < 0)
|
||||
// {
|
||||
// Fire(0);
|
||||
// if(_missile.BurstCount>1)
|
||||
// Observable.Interval(TimeSpan.FromSeconds(_missile.BurstTime.Evaluate(Hardpoint) / (_missile.BurstCount-1))).Take(_missile.BurstCount-1)
|
||||
// .Subscribe(l => Fire(l+1));
|
||||
// _lockingTimer = _cooldown = 1;
|
||||
// _locking = _locked = false;
|
||||
// _audio.Stop();
|
||||
// }
|
||||
// _locking = false;
|
||||
// _lockingTimer = 1;
|
||||
}
|
||||
|
||||
public void Update(float delta)
|
||||
{
|
||||
// if (Ship.Target == null)
|
||||
// return;
|
||||
//
|
||||
// if (_locking && _cooldown < 0)
|
||||
// {
|
||||
// //if the crosshair stays under a certain LockOnBuffer distance for a certain amount of time (LockOnTime)
|
||||
// if (acos(Vector2.Dot(Ship.Direction, (Ship.Target.transform.position-Ship.transform.position).normalized)) * Mathf.Rad2Deg < _missile.LockOnDegrees)
|
||||
// {
|
||||
// var d = delta / _missile.LockOnTime.Evaluate(Hardpoint);
|
||||
// _lockingTimer -= d;
|
||||
// if (!_locked && _lockingTimer < 0)
|
||||
// {
|
||||
// _locked = true;
|
||||
// _audio.Play();
|
||||
// } else if(Mathf.Repeat(_lockingTimer,1.0f/(_missile.Beeps+1))-d<0)
|
||||
// GameManager.Instance.InterfaceAudio.PlayOneShot(_missile.BeepSound);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// _lockingTimer = 1;
|
||||
// _audio.Stop();
|
||||
// }
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// _cooldown -= delta / _missile.Cooldown.Evaluate(Hardpoint);
|
||||
// }
|
||||
//
|
||||
//
|
||||
// if (_firingVisibility > 0.01f)
|
||||
// {
|
||||
// Hardpoint.Ship.Visibility += _firingVisibility;
|
||||
// _firingVisibility = 0;
|
||||
// }
|
||||
|
||||
|
||||
}
|
||||
|
||||
public void FixedUpdate(float delta)
|
||||
{
|
||||
}
|
||||
|
||||
public IItemBehaviorData Data => _missile;
|
||||
}
|
||||
|
||||
[MessagePackObject]
|
||||
public class ReactorBehaviorData : IItemBehaviorData
|
||||
{
|
||||
[Inspectable] [Key("charge")] public PerformanceStat Charge;
|
||||
[Inspectable] [Key("capacitance")] public PerformanceStat Capacitance;
|
||||
[Inspectable] [Key("efficiency")] public PerformanceStat Efficiency;
|
||||
[Inspectable] [Key("overload")] public PerformanceStat OverloadEfficiency;
|
||||
[Inspectable] [Key("underload")] public PerformanceStat UnderloadRecovery;
|
||||
|
||||
public IItemBehavior CreateInstance(Ship ship, Gear item)
|
||||
{
|
||||
return new ReactorBehavior(this, ship, item);
|
||||
}
|
||||
|
||||
[IgnoreMember] public PerformanceStat[] DynamicStats => new[] {Charge, Efficiency};
|
||||
}
|
||||
|
||||
public class ReactorBehavior : IItemBehavior
|
||||
{
|
||||
private ReactorBehaviorData _data;
|
||||
|
||||
public Ship Ship { get; }
|
||||
public Gear Item { get; }
|
||||
|
||||
public IItemBehaviorData Data => _data;
|
||||
|
||||
public ReactorBehavior(ReactorBehaviorData data, Ship ship, Gear item)
|
||||
{
|
||||
_data = data;
|
||||
Ship = ship;
|
||||
Item = item;
|
||||
}
|
||||
|
||||
public void FixedUpdate(float delta)
|
||||
{
|
||||
var cap = _data.Capacitance.Evaluate(Item, Ship);
|
||||
var charge = _data.Charge.Evaluate(Item, Ship) * delta;
|
||||
var efficiency = _data.Efficiency.Evaluate(Item, Ship);
|
||||
|
||||
Ship.AddHeat(charge / efficiency);
|
||||
Ship.Charge += charge;
|
||||
|
||||
if (Ship.Charge > cap)
|
||||
{
|
||||
Ship.AddHeat(-(Ship.Charge - cap) / efficiency * (1 - 1 / _data.UnderloadRecovery.Evaluate(Item, Ship)));
|
||||
Ship.Charge = cap;
|
||||
}
|
||||
|
||||
if (Ship.Charge < 0)
|
||||
{
|
||||
Ship.AddHeat( -Ship.Charge / (_data.OverloadEfficiency.Evaluate(Item, Ship)));
|
||||
Ship.Charge = 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void Update(float delta)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using UnityEngine.UI.Extensions.ColorPicker;
|
||||
|
||||
public class ColorButton : MonoBehaviour {
|
||||
public ColorChangedEvent OnColorChanged = new ColorChangedEvent();
|
||||
|
||||
// Use this for initialization
|
||||
void Start () {
|
||||
var colorPicker = transform.root.GetComponentInChildren<ColorPickerControl>(true);
|
||||
var image = GetComponent<Image>();
|
||||
GetComponent<Button>().onClick.AddListener(() =>
|
||||
{
|
||||
colorPicker.gameObject.SetActive(true);
|
||||
colorPicker.CurrentColor = image.color;
|
||||
colorPicker.onValueChanged.AddListener(col =>
|
||||
{
|
||||
image.color = col;
|
||||
OnColorChanged.Invoke(col);
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
@ -1,131 +0,0 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using MessagePack;
|
||||
using UniRx;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
|
||||
|
||||
#if UNITY_EDITOR
|
||||
[InitializeOnLoad]
|
||||
#endif
|
||||
public class Database
|
||||
{
|
||||
public static event Action OnDataUpdate;
|
||||
|
||||
private static Dictionary<Guid, IDatabaseEntry> Entries = new Dictionary<Guid, IDatabaseEntry>();
|
||||
|
||||
private static Dictionary<Type, Dictionary<Guid, IDatabaseEntry>> Types = new Dictionary<Type, Dictionary<Guid, IDatabaseEntry>>();
|
||||
|
||||
private static DirectoryInfo _dir;
|
||||
|
||||
private static IDatabaseEntry Load(string path)
|
||||
{
|
||||
var bytes = File.ReadAllBytes(path);
|
||||
// Debug.Log("Deserializing item: \n" + MessagePackSerializer.ToJson(bytes));
|
||||
try
|
||||
{
|
||||
var entry = MessagePackSerializer.Deserialize<IDatabaseEntry>(bytes);
|
||||
if (entry != null)
|
||||
{
|
||||
Entries[entry.GetId()] = entry;
|
||||
var type = entry.GetType();
|
||||
var types = type.FindInterfaces((_, __) => true, null).Append(type);
|
||||
foreach (var t in types)
|
||||
{
|
||||
if(!Types.ContainsKey(t))
|
||||
Types[t] = new Dictionary<Guid, IDatabaseEntry>();
|
||||
Types[t][entry.GetId()] = entry;
|
||||
}
|
||||
OnDataUpdate?.Invoke();
|
||||
}
|
||||
|
||||
return entry;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.Log($"Encountered exception while reading item {path.Split('\\').Last()}:\n{MessagePackSerializer.SerializeToJson(bytes)}\n{e.StackTrace}");
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static IEnumerable<IDatabaseEntry> AllEntries => Entries.Values;
|
||||
|
||||
public static IDatabaseEntry Get(Guid guid)
|
||||
{
|
||||
IDatabaseEntry entry;
|
||||
Entries.TryGetValue(guid, out entry);
|
||||
return entry;
|
||||
}
|
||||
|
||||
public static T Get<T>(Guid guid) where T : IDatabaseEntry
|
||||
{
|
||||
IDatabaseEntry entry;
|
||||
Types[typeof(T)].TryGetValue(guid, out entry);
|
||||
return (T) entry;
|
||||
}
|
||||
|
||||
public static IEnumerable<T> GetAll<T>()
|
||||
{
|
||||
return Types[typeof(T)].Values.Cast<T>();
|
||||
}
|
||||
|
||||
public static void Save(IDatabaseEntry entry)
|
||||
{
|
||||
// Debug.Log("Serializing item: \n" + item.ToJson());
|
||||
var dir = new DirectoryInfo(Path.Combine(_dir.FullName, entry.GetType().Name));
|
||||
if(!dir.Exists)
|
||||
dir.Create();
|
||||
File.WriteAllBytes(Path.Combine(dir.FullName, entry.GetId().ToString()), entry.Serialize());
|
||||
}
|
||||
|
||||
public static void Duplicate(IDatabaseEntry entry)
|
||||
{
|
||||
var oldID = entry.Entry.ID;
|
||||
entry.Entry.ID = Guid.NewGuid();
|
||||
Save(entry);
|
||||
var dir = new DirectoryInfo(Path.Combine(_dir.FullName, entry.GetType().Name));
|
||||
Load(Path.Combine(dir.FullName, oldID.ToString()));
|
||||
}
|
||||
|
||||
public static void SaveAll()
|
||||
{
|
||||
foreach (var entry in GetAll<IDatabaseEntry>())
|
||||
{
|
||||
Save(entry);
|
||||
}
|
||||
}
|
||||
|
||||
public static void Delete(IDatabaseEntry entry)
|
||||
{
|
||||
var dir = new DirectoryInfo(Path.Combine(_dir.FullName, entry.GetType().Name));
|
||||
File.Delete(Path.Combine(dir.FullName,entry.GetId().ToString()));
|
||||
}
|
||||
|
||||
static Database()
|
||||
{
|
||||
_dir = new DirectoryInfo(Application.dataPath).Parent.CreateSubdirectory("GameData");
|
||||
|
||||
Action<string> update = path => Load(path);
|
||||
|
||||
foreach (var file in Directory.GetFiles(_dir.FullName, "*.*", SearchOption.AllDirectories))
|
||||
update(file);
|
||||
|
||||
var watcher = new FileSystemWatcher(_dir.FullName);
|
||||
watcher.IncludeSubdirectories = true;
|
||||
watcher.NotifyFilter = NotifyFilters.LastWrite | NotifyFilters.FileName;
|
||||
watcher.Changed += (_, args) => MainThreadDispatcher.Post(__ => update(args.FullPath), null);
|
||||
watcher.Created += (_, args) => MainThreadDispatcher.Post(__ => update(args.FullPath), null);
|
||||
watcher.Deleted += (_, args) => MainThreadDispatcher.Post(__ =>
|
||||
{
|
||||
var entryGuid = Guid.Parse(args.Name.Split('\\').Last());
|
||||
foreach (var entries in Types.Values)
|
||||
entries.Remove(entryGuid);
|
||||
Entries.Remove(entryGuid);
|
||||
OnDataUpdate?.Invoke();
|
||||
}, null);
|
||||
watcher.EnableRaisingEvents = true;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,596 +0,0 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using MessagePack;
|
||||
using UnityEngine;
|
||||
using Unity.Mathematics;
|
||||
using UnityEngine.UI.Extensions;
|
||||
// TODO: USE THIS EVERYWHERE
|
||||
using static Unity.Mathematics.math;
|
||||
#if UNITY_EDITOR
|
||||
using UnityEditor;
|
||||
#endif
|
||||
|
||||
public class NameAttribute : Attribute
|
||||
{
|
||||
public string Name;
|
||||
|
||||
public NameAttribute(string name)
|
||||
{
|
||||
Name = name;
|
||||
}
|
||||
}
|
||||
|
||||
public class UpdateOrderAttribute : Attribute
|
||||
{
|
||||
public int Order;
|
||||
|
||||
public UpdateOrderAttribute(int order)
|
||||
{
|
||||
Order = order;
|
||||
}
|
||||
}
|
||||
|
||||
public class GlobalData : IDatabaseEntry
|
||||
{
|
||||
[Inspectable] [Key("entry")] public DatabaseEntry DatabaseEntry = new DatabaseEntry();
|
||||
|
||||
[Inspectable] [Key("targetPersistenceDuration")]
|
||||
public float TargetPersistenceDuration;
|
||||
[Inspectable] [Key("heatRadiationPower")]
|
||||
public float HeatRadiationPower;
|
||||
[Inspectable] [Key("heatRadiationMultiplier")]
|
||||
public float HeatRadiationMultiplier;
|
||||
|
||||
[IgnoreMember] public static GlobalData Instance => Database.GetAll<GlobalData>().FirstOrDefault();
|
||||
[IgnoreMember] public DatabaseEntry Entry => DatabaseEntry;
|
||||
}
|
||||
|
||||
[Union(5, typeof(Hull))]
|
||||
[Union(6, typeof(Shield))]
|
||||
[Union(9, typeof(Thruster))]
|
||||
[Union(12, typeof(EquippableItem))]
|
||||
public interface IEquippable : ICraftable
|
||||
{
|
||||
HardpointType HardpointType { get; }
|
||||
EquippableData Equippable { get; }
|
||||
}
|
||||
|
||||
[Union(5, typeof(Hull))]
|
||||
[Union(6, typeof(Shield))]
|
||||
[Union(9, typeof(Thruster))]
|
||||
[Union(12, typeof(CraftedItem))]
|
||||
[Union(13, typeof(EquippableItem))]
|
||||
public interface ICraftable : IItem
|
||||
{
|
||||
Dictionary<Guid, int> CraftingIngredients { get; }
|
||||
}
|
||||
|
||||
[Union(5, typeof(Hull))]
|
||||
[Union(6, typeof(Shield))]
|
||||
[Union(9, typeof(Thruster))]
|
||||
[Union(12, typeof(ItemData))]
|
||||
[Union(13, typeof(CraftedItem))]
|
||||
[Union(14, typeof(EquippableItem))]
|
||||
public interface IItem : IDatabaseEntry
|
||||
{
|
||||
ItemData Data { get; }
|
||||
}
|
||||
|
||||
[Union(5, typeof(Hull))]
|
||||
[Union(6, typeof(Shield))]
|
||||
[Union(9, typeof(Thruster))]
|
||||
[Union(12, typeof(ItemData))]
|
||||
[Union(13, typeof(CraftedItem))]
|
||||
[Union(14, typeof(LoadoutDefinition))]
|
||||
[Union(15, typeof(ZoneData))]
|
||||
[Union(16, typeof(SimpleCommodity))]
|
||||
[Union(17, typeof(CompoundCommodity))]
|
||||
[Union(18, typeof(Gear))]
|
||||
[Union(19, typeof(EquippableItem))]
|
||||
//[Union(21, typeof(ContractData))]
|
||||
//[Union(22, typeof(Station))]
|
||||
[Union(23, typeof(Corporation))]
|
||||
[Union(24, typeof(Player))]
|
||||
[Union(25, typeof(GlobalData))]
|
||||
public interface IDatabaseEntry
|
||||
{
|
||||
DatabaseEntry Entry { get; }
|
||||
}
|
||||
|
||||
[Union(0, typeof(SimpleCommodity))]
|
||||
[Union(1, typeof(CompoundCommodity))]
|
||||
[Union(2, typeof(Gear))]
|
||||
public interface IItemInstance : IDatabaseEntry
|
||||
{
|
||||
Guid ItemGuid { get; }
|
||||
IItem ItemData { get; }
|
||||
float Mass { get; }
|
||||
}
|
||||
|
||||
[Union(0, typeof(Gear))]
|
||||
[Union(1, typeof(CompoundCommodity))]
|
||||
public interface ICraftedItemInstance : IItemInstance
|
||||
{
|
||||
float CraftedQuality { get; }
|
||||
IEnumerable<IItemInstance> CraftedIngredients { get; }
|
||||
}
|
||||
|
||||
[Inspectable]
|
||||
[MessagePackObject]
|
||||
public class DatabaseEntry
|
||||
{
|
||||
[Key("id")] public Guid ID = Guid.NewGuid();
|
||||
[Inspectable] [Key("name")] public string Name;
|
||||
[Inspectable] [Key("description")] public string Description;
|
||||
}
|
||||
|
||||
[Inspectable]
|
||||
[MessagePackObject]
|
||||
[Name("Simple Commodity")]
|
||||
public class ItemData : IItem
|
||||
{
|
||||
[Inspectable] [Key("entry")] public DatabaseEntry DatabaseEntry = new DatabaseEntry();
|
||||
[Inspectable] [Key("mass")] public float Mass;
|
||||
[Inspectable] [Key("size")] public float Size;
|
||||
|
||||
[RangedIntInspectable(0, 20)] [Key("level")] public int TechLevel;
|
||||
|
||||
[IgnoreMember] public ItemData Data => this;
|
||||
|
||||
[IgnoreMember] public DatabaseEntry Entry => DatabaseEntry;
|
||||
}
|
||||
|
||||
[MessagePackObject]
|
||||
public class EquippableItem : IEquippable
|
||||
{
|
||||
[Inspectable] [Key("hardpointType")] public HardpointType Hardpoint;
|
||||
[Inspectable] [Key("itemData")] public ItemData ItemData = new ItemData();
|
||||
[Inspectable] [Key("equippableData")] public EquippableData EquippableData = new EquippableData();
|
||||
[Inspectable] [Key("ingredients")] public Dictionary<Guid, int> Ingredients = new Dictionary<Guid, int>();
|
||||
|
||||
[IgnoreMember] public HardpointType HardpointType => Hardpoint;
|
||||
[IgnoreMember] public EquippableData Equippable => EquippableData;
|
||||
[IgnoreMember] public ItemData Data => ItemData;
|
||||
[IgnoreMember] public Dictionary<Guid, int> CraftingIngredients => Ingredients;
|
||||
[IgnoreMember] public DatabaseEntry Entry => ItemData.Entry;
|
||||
|
||||
}
|
||||
|
||||
[Inspectable]
|
||||
[MessagePackObject]
|
||||
public class EquippableData
|
||||
{
|
||||
[Inspectable] [Key("draw")] public PerformanceStat EnergyDraw;
|
||||
// [Inspectable] [Key("conductivity")] public float ThermalConductivity;
|
||||
// [Inspectable] [Key("specificHeat")] public float SpecificHeat;
|
||||
[Inspectable] [Key("performance")] public AnimationCurve HeatPerformanceCurve;
|
||||
[TemperatureInspectable] [Key("minTemp")] public float MinimumTemperature;
|
||||
[TemperatureInspectable] [Key("maxTemp")] public float MaximumTemperature;
|
||||
[Inspectable] [Key("ruggedness")] public float Ruggedness;
|
||||
[Inspectable] [Key("durability")] public float Durability;
|
||||
[Inspectable] [Key("durabilityExponent")] public PerformanceStat DurabilityExponent;
|
||||
[Inspectable] [Key("heatExponent")] public PerformanceStat HeatExponent;
|
||||
[Inspectable] [Key("behaviors")] public List<IItemBehaviorData> Behaviors = new List<IItemBehaviorData>();
|
||||
|
||||
[IgnoreMember] private const int STEPS = 64;
|
||||
|
||||
[IgnoreMember] private float? _optimum;
|
||||
[IgnoreMember]
|
||||
public float OptimalTemperature
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_optimum==null)
|
||||
{
|
||||
var samples = Enumerable.Range(0, STEPS).Select(i => (float) i / STEPS).ToArray();
|
||||
float max = 0;
|
||||
_optimum = 0;
|
||||
foreach (var f in samples)
|
||||
{
|
||||
var p = HeatPerformanceCurve?.Evaluate(f)??0;
|
||||
if (p > max)
|
||||
{
|
||||
max = p;
|
||||
_optimum = f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return (float) (MinimumTemperature + _optimum * (MaximumTemperature - MinimumTemperature));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[MessagePackObject]
|
||||
[Name("Compound Commodity")]
|
||||
public class CraftedItem : ICraftable
|
||||
{
|
||||
[Inspectable] [Key("itemData")] public ItemData ItemData = new ItemData();
|
||||
[Inspectable] [Key("ingredients")] public Dictionary<Guid, int> Ingredients = new Dictionary<Guid, int>();
|
||||
|
||||
[IgnoreMember] public ItemData Data => ItemData;
|
||||
[IgnoreMember] public Dictionary<Guid, int> CraftingIngredients => Ingredients;
|
||||
[IgnoreMember] public DatabaseEntry Entry => ItemData.Entry;
|
||||
}
|
||||
|
||||
[MessagePackObject]
|
||||
public class Hull : IEquippable
|
||||
{
|
||||
[Inspectable] [Key("itemData")] public ItemData ItemData = new ItemData();
|
||||
[Inspectable] [Key("equippableData")] public EquippableData EquippableData = new EquippableData();
|
||||
[Inspectable] [Key("ingredients")] public Dictionary<Guid, int> Ingredients = new Dictionary<Guid, int>();
|
||||
[Inspectable] [Key("hullCapacity")] public PerformanceStat Capacity;
|
||||
[Inspectable] [Key("traction")] public PerformanceStat Traction;
|
||||
[Inspectable] [Key("topSpeed")] public PerformanceStat TopSpeed;
|
||||
[Inspectable] [Key("emissivity")] public PerformanceStat Emissivity;
|
||||
[Inspectable] [Key("crossSection")] public PerformanceStat CrossSection;
|
||||
[Key("schemaSprite")] [MessagePackFormatter(typeof(UnitySpriteFormatter))]
|
||||
public Sprite Schematic;
|
||||
[Inspectable] [Key("hardpoints")] public List<HardpointData> Hardpoints = new List<HardpointData>();
|
||||
[Inspectable] [Key("visibility")] public AnimationCurve VisibilityCurve;
|
||||
[MessagePackFormatter(typeof(UnityGameObjectFormatter))]
|
||||
[Inspectable] [Key("prefab")] public GameObject Prefab;
|
||||
|
||||
[IgnoreMember] public HardpointType HardpointType => HardpointType.Hull;
|
||||
[IgnoreMember] public EquippableData Equippable => EquippableData;
|
||||
[IgnoreMember] public ItemData Data => ItemData;
|
||||
[IgnoreMember] public Dictionary<Guid, int> CraftingIngredients => Ingredients;
|
||||
[IgnoreMember] public DatabaseEntry Entry => ItemData.Entry;
|
||||
}
|
||||
|
||||
//[MessagePackObject]
|
||||
//public class Sensor : IEquippable
|
||||
//{
|
||||
// [Key("itemData")] public ItemData ItemData = new ItemData();
|
||||
// [Key("equippableData")] public EquippableData EquippableData = new EquippableData();
|
||||
// [Key("ingredients")] public Dictionary<Guid, int> Ingredients = new Dictionary<Guid, int>();
|
||||
// [Key("radiance")] public PerformanceStat Radiance;
|
||||
// [Key("masking")] public PerformanceStat RadianceMasking;
|
||||
// [Key("sensitivity")] public PerformanceStat Sensitivity;
|
||||
//
|
||||
// [IgnoreMember] public HardpointType HardpointType => HardpointType.Sensors;
|
||||
// [IgnoreMember] public EquippableData Equippable => EquippableData;
|
||||
// [IgnoreMember] public ItemData Data => ItemData;
|
||||
// [IgnoreMember] public Dictionary<Guid, int> CraftingIngredients => Ingredients;
|
||||
// [IgnoreMember] public DatabaseEntry Entry => ItemData.Entry;
|
||||
//}
|
||||
//
|
||||
[MessagePackObject]
|
||||
public class Shield : IEquippable
|
||||
{
|
||||
[Inspectable] [Key("itemData")]
|
||||
public ItemData ItemData = new ItemData();
|
||||
|
||||
[Inspectable] [Key("equippableData")]
|
||||
public EquippableData EquippableData = new EquippableData();
|
||||
|
||||
[Inspectable] [Key("ingredients")]
|
||||
public Dictionary<Guid, int> Ingredients = new Dictionary<Guid, int>();
|
||||
|
||||
[Inspectable] [Key("efficiency")]
|
||||
public PerformanceStat Efficiency;
|
||||
|
||||
[Inspectable] [Key("shielding")]
|
||||
public PerformanceStat Shielding;
|
||||
|
||||
[IgnoreMember] public HardpointType HardpointType => HardpointType.Shield;
|
||||
[IgnoreMember] public EquippableData Equippable => EquippableData;
|
||||
[IgnoreMember] public ItemData Data => ItemData;
|
||||
[IgnoreMember] public Dictionary<Guid, int> CraftingIngredients => Ingredients;
|
||||
[IgnoreMember] public DatabaseEntry Entry => ItemData.Entry;
|
||||
}
|
||||
|
||||
[MessagePackObject]
|
||||
public class Thruster : IEquippable
|
||||
{
|
||||
[Inspectable] [Key("itemData")] public ItemData ItemData = new ItemData();
|
||||
[Inspectable] [Key("equippableData")] public EquippableData EquippableData = new EquippableData();
|
||||
[Inspectable] [Key("ingredients")] public Dictionary<Guid, int> Ingredients = new Dictionary<Guid, int>();
|
||||
[Inspectable] [Key("thrust")] public PerformanceStat Thrust;
|
||||
[Inspectable] [Key("torque")] public PerformanceStat Torque;
|
||||
[Inspectable] [Key("visibility")] public PerformanceStat Visibility;
|
||||
[Inspectable] [Key("thrusterHeat")] public PerformanceStat Heat;
|
||||
// [Inspectable] [Key("minSound")] public GranularEmitterStats MinSound;
|
||||
// [Inspectable] [Key("maxSound")] public GranularEmitterStats MaxSound;
|
||||
// [Inspectable] [Key("time")] public float SoundTransitionTime;
|
||||
// [Inspectable] [Key("perlin")] public bool OscillatorPerlin;
|
||||
// [MessagePackFormatter(typeof(UnityAudioClipFormatter))]
|
||||
// [Inspectable] [Key("clip")] public AudioClip Clip;
|
||||
|
||||
[IgnoreMember] public HardpointType HardpointType => HardpointType.Thruster;
|
||||
[IgnoreMember] public EquippableData Equippable => EquippableData;
|
||||
[IgnoreMember] public ItemData Data => ItemData;
|
||||
[IgnoreMember] public Dictionary<Guid, int> CraftingIngredients => Ingredients;
|
||||
[IgnoreMember] public DatabaseEntry Entry => ItemData.Entry;
|
||||
}
|
||||
|
||||
//[MessagePackObject]
|
||||
//public class Launcher : IEquippable
|
||||
//{
|
||||
// [Key("itemData")] public ItemData ItemData = new ItemData();
|
||||
// [Key("equippableData")] public EquippableData EquippableData = new EquippableData();
|
||||
//// [Key("weaponData")] public WeaponData WeaponData = new WeaponData();
|
||||
// [Key("ingredients")] public Dictionary<Guid, int> Ingredients = new Dictionary<Guid, int>();
|
||||
// [MessagePackFormatter(typeof(UnityGameObjectFormatter))]
|
||||
// [Key("projectile")] public GameObject ProjectilePrefab;
|
||||
// [Key("launcherCaliber")] public LauncherCaliber Caliber;
|
||||
// [Key("salvoDuration")] public PerformanceStat SalvoDuration;
|
||||
// [Key("salvoSize")] public int SalvoSize;
|
||||
//
|
||||
// [IgnoreMember] public HardpointType HardpointType => HardpointType.Launcher;
|
||||
// [IgnoreMember] public EquippableData Equippable => EquippableData;
|
||||
// [IgnoreMember] public ItemData Data => ItemData;
|
||||
// [IgnoreMember] public Dictionary<Guid, int> CraftingIngredients => Ingredients;
|
||||
//// [IgnoreMember] public WeaponData Weapon => WeaponData;
|
||||
// [IgnoreMember] public DatabaseEntry Entry => ItemData.Entry;
|
||||
//}
|
||||
|
||||
//[MessagePackObject]
|
||||
//public class Beam : IEquippable
|
||||
//{
|
||||
// [Key("itemData")] public ItemData ItemData = new ItemData();
|
||||
// [Key("equippableData")] public EquippableData EquippableData = new EquippableData();
|
||||
//// [Key("weaponData")] public WeaponData WeaponData = new WeaponData();
|
||||
// [Key("ingredients")] public Dictionary<Guid, int> Ingredients = new Dictionary<Guid, int>();
|
||||
// [Key("duration")] public PerformanceStat Duration;
|
||||
// [Key("diameter")] public PerformanceStat Diameter;
|
||||
// [Key("amplitude")] public AnimationCurve Amplitude;
|
||||
// [MessagePackFormatter(typeof(UnityMaterialFormatter))]
|
||||
// [Key("material")] public Material BeamMaterial;
|
||||
// [Key("damageType")] public ProjectileType DamageType;
|
||||
//
|
||||
// [IgnoreMember] public HardpointType HardpointType => DamageType==ProjectileType.Physical?HardpointType.Ballistic:HardpointType.Energy;
|
||||
// [IgnoreMember] public EquippableData Equippable => EquippableData;
|
||||
// [IgnoreMember] public ItemData Data => ItemData;
|
||||
// [IgnoreMember] public Dictionary<Guid, int> CraftingIngredients => Ingredients;
|
||||
//// [IgnoreMember] public WeaponData Weapon => WeaponData;
|
||||
// [IgnoreMember] public DatabaseEntry Entry => ItemData.Entry;
|
||||
//}
|
||||
|
||||
[MessagePackObject]
|
||||
public struct PerformanceStat
|
||||
{
|
||||
[Key("min")]
|
||||
public float Min;
|
||||
[Key("max")]
|
||||
public float Max;
|
||||
[Key("durabilityDependent")]
|
||||
public bool DurabilityDependent;
|
||||
[Key("heatDependent")]
|
||||
public bool HeatDependent;
|
||||
[Key("qualityExponent")]
|
||||
public float QualityExponent;
|
||||
[Key("ingredient")]
|
||||
public Guid Ingredient;
|
||||
|
||||
[IgnoreMember] private Dictionary<Ship,Dictionary<IItemBehavior,float>> _scaleModifiers;
|
||||
[IgnoreMember] private Dictionary<Ship,Dictionary<IItemBehavior,float>> _constantModifiers;
|
||||
|
||||
[IgnoreMember]
|
||||
private Dictionary<Ship,Dictionary<IItemBehavior, float>> ScaleModifiers
|
||||
{
|
||||
get { return _scaleModifiers ?? (_scaleModifiers = new Dictionary<Ship,Dictionary<IItemBehavior, float>>()); }
|
||||
}
|
||||
|
||||
[IgnoreMember]
|
||||
private Dictionary<Ship,Dictionary<IItemBehavior, float>> ConstantModifiers
|
||||
{
|
||||
get { return _constantModifiers ?? (_constantModifiers = new Dictionary<Ship,Dictionary<IItemBehavior, float>>()); }
|
||||
}
|
||||
|
||||
public Dictionary<IItemBehavior, float> GetScaleModifiers(Ship ship)
|
||||
{
|
||||
if(!ScaleModifiers.ContainsKey(ship))
|
||||
ScaleModifiers[ship] = new Dictionary<IItemBehavior, float>();
|
||||
|
||||
return ScaleModifiers[ship];
|
||||
}
|
||||
|
||||
public Dictionary<IItemBehavior, float> GetConstantModifiers(Ship ship)
|
||||
{
|
||||
if(!ConstantModifiers.ContainsKey(ship))
|
||||
ConstantModifiers[ship] = new Dictionary<IItemBehavior, float>();
|
||||
|
||||
return ConstantModifiers[ship];
|
||||
}
|
||||
|
||||
// Determine quality of either the item itself or the specific ingredient this stat depends on
|
||||
public float Quality(Gear item)
|
||||
{
|
||||
Guid ingredientID = Ingredient;
|
||||
float quality;
|
||||
if (ingredientID == Guid.Empty)
|
||||
quality = item.CompoundQuality();
|
||||
else
|
||||
{
|
||||
var ingredientInstance =
|
||||
item.CraftedIngredients.FirstOrDefault(i => i.ItemGuid == ingredientID) as ICraftedItemInstance;
|
||||
if (ingredientInstance == null)
|
||||
throw new InvalidOperationException(
|
||||
$"Item {item.Entry.Name} has invalid crafting ingredient set for performance stat.");
|
||||
quality = ingredientInstance.CompoundQuality();
|
||||
}
|
||||
|
||||
return quality;
|
||||
}
|
||||
|
||||
// Returns stat when not equipped
|
||||
public float Evaluate(Gear item)
|
||||
{
|
||||
var quality = pow(Quality(item), QualityExponent);
|
||||
|
||||
var result = lerp(Min, Max, quality);
|
||||
|
||||
if (float.IsNaN(result))
|
||||
return Min;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
// Returns stat using ship temperature and modifiers
|
||||
public float Evaluate(Gear item, Ship ship)
|
||||
{
|
||||
var itemData = item.EquippedItemData;
|
||||
|
||||
var heat = !HeatDependent ? 1 : pow(itemData.Performance(ship.Temperature), itemData.Equippable.HeatExponent.Evaluate(item));
|
||||
var durability = !DurabilityDependent ? 1 : pow(item.Durability / itemData.Equippable.Durability, itemData.Equippable.DurabilityExponent.Evaluate(item));
|
||||
var quality = pow(Quality(item), QualityExponent);
|
||||
|
||||
var scaleModifier = 1.0f;
|
||||
if (_scaleModifiers != null && _scaleModifiers.ContainsKey(ship))
|
||||
{
|
||||
foreach (var mod in _scaleModifiers[ship].Values)
|
||||
{
|
||||
scaleModifier *= mod;
|
||||
}
|
||||
}
|
||||
|
||||
var constantModifier = 0.0f;
|
||||
if (_constantModifiers != null && _constantModifiers.ContainsKey(ship))
|
||||
{
|
||||
foreach (var mod in _constantModifiers[ship].Values)
|
||||
{
|
||||
scaleModifier += mod;
|
||||
}
|
||||
}
|
||||
|
||||
var result = lerp(Min, Max, heat * durability * quality) * scaleModifier + constantModifier;
|
||||
if (float.IsNaN(result))
|
||||
return Min;
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
[MessagePackObject]
|
||||
public class Hardpoint
|
||||
{
|
||||
[Key("item")] public Gear Item;
|
||||
|
||||
// [IgnoreMember] public Ship Ship;
|
||||
[IgnoreMember] public HardpointData HardpointData;
|
||||
|
||||
// [IgnoreMember]
|
||||
// public float HeatCapacity => Item != null
|
||||
// ? Item.EquippedItemData.Data.Mass * Item.EquippedItemData.Equippable.SpecificHeat
|
||||
// : Ship.Hull.EquippedItemData.Data.Mass * Ship.Hull.EquippedItemData.Equippable.SpecificHeat / Ship.HullHardpointCount;
|
||||
}
|
||||
|
||||
|
||||
[Name("Loadout")]
|
||||
[MessagePackObject]
|
||||
public class LoadoutDefinition : IDatabaseEntry
|
||||
{
|
||||
[Inspectable] [Key("entry")] public DatabaseEntry DatabaseEntry = new DatabaseEntry();
|
||||
[InspectableDatabaseLink(typeof(Hull))] [Key("hull")] public Guid Hull;
|
||||
[Key("items")] public List<Guid> Items = new List<Guid>();
|
||||
|
||||
[IgnoreMember] public DatabaseEntry Entry => DatabaseEntry;
|
||||
}
|
||||
|
||||
[MessagePackObject]
|
||||
public class Player : IDatabaseEntry
|
||||
{
|
||||
[Inspectable] [Key("entry")] public DatabaseEntry DatabaseEntry = new DatabaseEntry();
|
||||
[Key("email")] public string Email;
|
||||
[Key("password")] public string Password;
|
||||
|
||||
[IgnoreMember] public DatabaseEntry Entry => DatabaseEntry;
|
||||
}
|
||||
|
||||
|
||||
[MessagePackObject]
|
||||
public class HardpointData
|
||||
{
|
||||
[Key("type")] public HardpointType Type;
|
||||
}
|
||||
|
||||
[MessagePackObject]
|
||||
public class ZoneData : IDatabaseEntry
|
||||
{
|
||||
[Inspectable] [Key("entry")] public DatabaseEntry DatabaseEntry = new DatabaseEntry();
|
||||
[Inspectable] [Key("radius")] public float Radius = 500;
|
||||
[Inspectable] [Key("radiusPower")] public float RadiusPower = 1.75f;
|
||||
[Inspectable] [Key("mass")] public float Mass = 100000;
|
||||
[Inspectable] [Key("massFloor")] public float MassFloor = 1;
|
||||
[Inspectable] [Key("sunMass")] public float SunMass = 10000;
|
||||
[Inspectable] [Key("gasGiantMass")] public float GasGiantMass = 2000;
|
||||
[Inspectable] [Key("stations")] public List<Station> Stations = new List<Station>();
|
||||
|
||||
[InspectableDatabaseLink(typeof(ZoneData))] [Key("wormholes")]
|
||||
public List<Guid> Wormholes = new List<Guid>();
|
||||
|
||||
[IgnoreMember] public DatabaseEntry Entry => DatabaseEntry;
|
||||
}
|
||||
|
||||
[Inspectable]
|
||||
[MessagePackObject]
|
||||
public class Station
|
||||
{
|
||||
[Inspectable] [Key("name")] public string Name;
|
||||
[InspectableDatabaseLink(typeof(Corporation))] [Key("faction")] public Guid Faction;
|
||||
[Inspectable] [Key("dockingDistance")] public float DockingDistance = 10;
|
||||
[Inspectable] [Key("buying")] public Dictionary<Guid, float> BuyPrices = new Dictionary<Guid, float>();
|
||||
[Inspectable] [Key("selling")] public Dictionary<Guid, float> SellPrices = new Dictionary<Guid, float>();
|
||||
[MessagePackFormatter(typeof(UnityGameObjectFormatter))] [Inspectable] [Key("prefab")] public GameObject Prefab;
|
||||
}
|
||||
|
||||
[MessagePackObject]
|
||||
public class Corporation : IDatabaseEntry
|
||||
{
|
||||
[Inspectable] [Key("entry")] public DatabaseEntry DatabaseEntry = new DatabaseEntry();
|
||||
[InspectableDatabaseLink(typeof(Corporation))] [Key("parent")] public Guid ParentCorporation;
|
||||
[Inspectable] [MessagePackFormatter(typeof(UnitySpriteFormatter))] [Key("logo")] public Sprite Logo;
|
||||
[Inspectable] [Key("livery")] public Skin Livery = new Skin();
|
||||
|
||||
[IgnoreMember] public DatabaseEntry Entry => DatabaseEntry;
|
||||
}
|
||||
|
||||
[Inspectable]
|
||||
[MessagePackObject]
|
||||
public class Skin
|
||||
{
|
||||
[Inspectable] [MessagePackFormatter(typeof(UnityMaterialFormatter))] [Key("primary")] public Material Primary;
|
||||
[Inspectable] [MessagePackFormatter(typeof(UnityMaterialFormatter))] [Key("secondary")] public Material Secondary;
|
||||
[Inspectable] [MessagePackFormatter(typeof(UnityMaterialFormatter))] [Key("trim")] public Material Trim;
|
||||
[Inspectable] [MessagePackFormatter(typeof(UnityMaterialFormatter))] [Key("windshield")] public Material Windshield;
|
||||
}
|
||||
|
||||
|
||||
public enum ProjectileType
|
||||
{
|
||||
Physical,
|
||||
Energy
|
||||
}
|
||||
|
||||
public enum LauncherCaliber
|
||||
{
|
||||
Missile,
|
||||
Torpedo,
|
||||
Fighter
|
||||
}
|
||||
|
||||
public enum HardpointType
|
||||
{
|
||||
Hull,
|
||||
Thruster,
|
||||
WarpThruster,
|
||||
Reactor,
|
||||
Radiator,
|
||||
Shield,
|
||||
Cooler,
|
||||
Sensors,
|
||||
Tool,
|
||||
Energy,
|
||||
Ballistic,
|
||||
Launcher
|
||||
}
|
||||
|
||||
public enum DamageType
|
||||
{
|
||||
Kinetic,
|
||||
Energy,
|
||||
Thermal,
|
||||
Optical,
|
||||
Ionizing
|
||||
}
|
||||
|
|
@ -3,308 +3,17 @@ using System.Collections;
|
|||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using UniRx;
|
||||
using Unity.Mathematics;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Serialization;
|
||||
// TODO: USE THIS EVERYWHERE
|
||||
using static Unity.Mathematics.math;
|
||||
using Object = UnityEngine.Object;
|
||||
|
||||
public class DatabaseListView : EditorWindow
|
||||
{
|
||||
// Singleton to avoid multiple instances of window.
|
||||
private static DatabaseListView _instance;
|
||||
public Guid SelectedItem;
|
||||
public GUIStyle SelectedStyle;
|
||||
|
||||
private bool[] _gearFoldouts;
|
||||
private bool _itemsFoldout;
|
||||
private bool _compoundFoldout;
|
||||
private bool _simpleFoldout;
|
||||
private bool _commoditiesFoldout;
|
||||
//private bool _consumablesFoldout;
|
||||
private Type[] _itemTypes;
|
||||
private bool _listItemStyle;
|
||||
private GUIStyle _listStyleOdd;
|
||||
private GUIStyle _listStyleEven;
|
||||
private static DatabaseInspector _inspector;
|
||||
private Type[] _entryTypes;
|
||||
private bool[] _entryFoldouts;
|
||||
private const float LineHeight = 20;
|
||||
|
||||
// Set instance on reloading the window, else it gets lost after script reload (due to PlayMode changes, ...).
|
||||
public DatabaseListView()
|
||||
{
|
||||
_instance = this;
|
||||
}
|
||||
|
||||
public static DatabaseListView ShowWindow()
|
||||
{
|
||||
if (_instance == null)
|
||||
{
|
||||
// "Get existing open window or if none, make a new one:" says documentation.
|
||||
// But if called after script reloads a second instance will be opened! => Custom singleton required.
|
||||
DatabaseListView window = EditorWindow.GetWindow<DatabaseListView>();
|
||||
window.titleContent = new GUIContent("DB List");
|
||||
_instance = window;
|
||||
_instance.InitStyles();
|
||||
window.Show();
|
||||
}
|
||||
else
|
||||
_instance.Focus();
|
||||
|
||||
return _instance;
|
||||
}
|
||||
|
||||
public GUIStyle ListItemStyle =>
|
||||
(_listItemStyle = !_listItemStyle) ? _listStyleEven : _listStyleOdd;
|
||||
|
||||
[MenuItem("Window/Aetheria Database Tools")]
|
||||
static void Init()
|
||||
{
|
||||
ShowWindow();
|
||||
}
|
||||
|
||||
void OnEnable()
|
||||
{
|
||||
_inspector = DatabaseInspector.ShowWindow();
|
||||
_itemTypes = typeof(IItem).GetAllInterfaceClasses();
|
||||
_entryTypes = typeof(IDatabaseEntry).GetAllInterfaceClasses().Where(t => !t.GetInterfaces().Contains(typeof(IItem))&& !t.GetInterfaces().Contains(typeof(IItemInstance))).ToArray();
|
||||
_gearFoldouts = new bool[_itemTypes.Length];
|
||||
_entryFoldouts = new bool[_entryTypes.Length];
|
||||
InitStyles();
|
||||
Database.OnDataUpdate += Repaint;
|
||||
}
|
||||
|
||||
private void InitStyles()
|
||||
{
|
||||
_listStyleOdd = new GUIStyle
|
||||
{
|
||||
normal = {background = XKCDColors.LightGrey.ToTexture()},
|
||||
margin = new RectOffset(0, 0, 0, 0)
|
||||
};
|
||||
_listStyleEven = new GUIStyle
|
||||
{
|
||||
normal = {background = Color.Lerp(XKCDColors.LightGrey,Color.white,.5f).ToTexture()},
|
||||
margin = new RectOffset(0, 0, 0, 0)
|
||||
};
|
||||
SelectedStyle = new GUIStyle
|
||||
{
|
||||
normal = {background = XKCDColors.Greyblue.ToTexture()},
|
||||
margin = new RectOffset(0, 0, 0, 0)
|
||||
};
|
||||
}
|
||||
|
||||
public void OnGUI()
|
||||
{
|
||||
Event currentEvent = Event.current;
|
||||
EventType currentEventType = currentEvent.type;
|
||||
|
||||
if (currentEventType == EventType.DragUpdated)
|
||||
// Indicate that we don't accept drags ourselves
|
||||
DragAndDrop.visualMode = DragAndDropVisualMode.Rejected;
|
||||
|
||||
Action<IDatabaseEntry> select = item =>
|
||||
{
|
||||
SelectedItem = item.GetId();
|
||||
Repaint();
|
||||
_inspector.entry = Database.Get(SelectedItem);
|
||||
_inspector.Repaint();
|
||||
};
|
||||
|
||||
using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
{
|
||||
_itemsFoldout = EditorGUILayout.Foldout(_itemsFoldout, "Items", true);
|
||||
}
|
||||
if (_itemsFoldout)
|
||||
{
|
||||
var items = Database.AllEntries.Where(item => item is IItem).Cast<IItem>().ToArray();
|
||||
for (var i = 0; i < _itemTypes.Length; i++)
|
||||
{
|
||||
using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
{
|
||||
GUILayout.Space(10);
|
||||
_gearFoldouts[i] = EditorGUILayout.Foldout(_gearFoldouts[i],
|
||||
((NameAttribute) _itemTypes[i].GetCustomAttribute(typeof(NameAttribute)))?.Name ?? _itemTypes[i].Name,
|
||||
true);
|
||||
}
|
||||
if (_gearFoldouts[i])
|
||||
{
|
||||
foreach (var item in items.Where(e=>e.GetType()==_itemTypes[i]))
|
||||
{
|
||||
var style = ListItemStyle;
|
||||
var selected = SelectedItem == item.GetId();
|
||||
using (var h = new EditorGUILayout.HorizontalScope(selected?SelectedStyle:style))
|
||||
{
|
||||
if (h.rect.Contains(currentEvent.mousePosition))
|
||||
{
|
||||
if (currentEventType == EventType.MouseDrag)
|
||||
{
|
||||
DragAndDrop.PrepareStartDrag();
|
||||
DragAndDrop.SetGenericData("Item", item.GetId());
|
||||
DragAndDrop.StartDrag("Database Item");
|
||||
}
|
||||
else if (currentEventType == EventType.MouseUp)
|
||||
select(item);
|
||||
}
|
||||
GUILayout.Space(20);
|
||||
GUILayout.Label(item.Entry.Name, selected ? EditorStyles.whiteLabel : GUI.skin.label);
|
||||
}
|
||||
}
|
||||
|
||||
using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
{
|
||||
if(GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
CreateItem(_itemTypes[i]);
|
||||
GUILayout.Space(20);
|
||||
GUILayout.Label("New " + _itemTypes[i].Name);
|
||||
var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
GUI.DrawTexture(rect, Icons.Instance.plus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var entries = Database.AllEntries.Where(item => !(item is IItem)).ToArray();
|
||||
for (var i = 0; i < _entryTypes.Length; i++)
|
||||
{
|
||||
using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
{
|
||||
_entryFoldouts[i] = EditorGUILayout.Foldout(_entryFoldouts[i],
|
||||
((NameAttribute) _entryTypes[i].GetCustomAttribute(typeof(NameAttribute)))?.Name ?? _entryTypes[i].Name,
|
||||
true);
|
||||
}
|
||||
|
||||
if (_entryFoldouts[i])
|
||||
{
|
||||
foreach (var entry in entries.Where(e=>e.GetType()==_entryTypes[i]))
|
||||
{
|
||||
var style = ListItemStyle;
|
||||
var selected = SelectedItem == entry.GetId();
|
||||
using (var h = new EditorGUILayout.HorizontalScope(selected?SelectedStyle:style))
|
||||
{
|
||||
if (h.rect.Contains(currentEvent.mousePosition))
|
||||
{
|
||||
if (currentEventType == EventType.MouseDrag)
|
||||
{
|
||||
DragAndDrop.PrepareStartDrag();
|
||||
DragAndDrop.SetGenericData("Item", entry.GetId());
|
||||
DragAndDrop.StartDrag("Database Item");
|
||||
}
|
||||
else if (currentEventType == EventType.MouseUp)
|
||||
select(entry);
|
||||
}
|
||||
GUILayout.Space(10);
|
||||
GUILayout.Label(entry.Entry.Name, selected ? EditorStyles.whiteLabel : GUI.skin.label);
|
||||
}
|
||||
}
|
||||
|
||||
using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
{
|
||||
if(GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
CreateItem(_entryTypes[i]);
|
||||
GUILayout.Space(10);
|
||||
GUILayout.Label("New " + _entryTypes[i].Name);
|
||||
var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
GUI.DrawTexture(rect, Icons.Instance.plus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// EditorGUILayout.BeginHorizontal(ListItemStyle);
|
||||
// _commoditiesFoldout = EditorGUILayout.Foldout(_commoditiesFoldout, "Commodities", true);
|
||||
// EditorGUILayout.EndHorizontal();
|
||||
// if (_commoditiesFoldout)
|
||||
// {
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
// {
|
||||
// GUILayout.Space(10);
|
||||
// _simpleFoldout = EditorGUILayout.Foldout(_simpleFoldout, "Simple", true);
|
||||
// }
|
||||
// if (_simpleFoldout)
|
||||
// {
|
||||
// foreach (var item in Database.Items.Values.Where(e=>e.GetType()==typeof(ItemData)).Cast<ItemData>())
|
||||
// {
|
||||
// var style = ListItemStyle;
|
||||
// var selected = SelectedItem == item.ID;
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(selected?_selectedStyle:style))
|
||||
// {
|
||||
// if(GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
// select(item);
|
||||
// GUILayout.Space(20);
|
||||
// GUILayout.Label(item.Name, selected ? EditorStyles.whiteLabel : GUI.skin.label);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
// {
|
||||
// if(GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
// CreateItem(typeof(ItemData));
|
||||
// GUILayout.Space(20);
|
||||
// var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
// GUI.DrawTexture(rect, GlobalData.Instance.plus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
// GUILayout.Label("New Simple Commodity");
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
// {
|
||||
// GUILayout.Space(10);
|
||||
// _compoundFoldout = EditorGUILayout.Foldout(_compoundFoldout, "Compound", true);
|
||||
// }
|
||||
// if (_compoundFoldout)
|
||||
// {
|
||||
// foreach (var item in Database.Items.Values.Where(e=>e.GetType()==typeof(CraftedItem)).Cast<CraftedItem>())
|
||||
// {
|
||||
// var style = ListItemStyle;
|
||||
// var selected = SelectedItem == item.GetId();
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(selected?_selectedStyle:style))
|
||||
// {
|
||||
// if (GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
// select(item);
|
||||
// GUILayout.Space(20);
|
||||
// GUILayout.Label(item.Item.Name, selected ? EditorStyles.whiteLabel : GUI.skin.label);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
// {
|
||||
// if(GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
// CreateItem(typeof(CraftedItem));
|
||||
// GUILayout.Space(20);
|
||||
// var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
// GUI.DrawTexture(rect, GlobalData.Instance.plus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
// GUILayout.Label("New Compound Commodity");
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// EditorGUILayout.BeginHorizontal(ListItemStyle);
|
||||
// _consumablesFoldout = EditorGUILayout.Foldout(_consumablesFoldout, "Consumables", true);
|
||||
// EditorGUILayout.EndHorizontal();
|
||||
// if (_consumablesFoldout)
|
||||
// {
|
||||
//
|
||||
// }
|
||||
|
||||
// HACK: This ensures none of the controls in this window can be focused (usually from clicking foldouts)
|
||||
GUI.SetNextControlName("");
|
||||
GUI.FocusControl("");
|
||||
}
|
||||
|
||||
private void CreateItem(Type type)
|
||||
{
|
||||
var newEntry = (IDatabaseEntry) Activator.CreateInstance(type);
|
||||
SelectedItem = newEntry.GetId();
|
||||
newEntry.Entry.Name = $"New {type.Name}";
|
||||
Database.Save(newEntry);
|
||||
}
|
||||
}
|
||||
using static Unity.Mathematics.math;
|
||||
|
||||
public class DatabaseInspector : EditorWindow
|
||||
{
|
||||
public IDatabaseEntry entry;
|
||||
public static DatabaseCache DatabaseCache;
|
||||
public DatabaseEntry entry;
|
||||
|
||||
// Singleton to avoid multiple instances of window.
|
||||
private static DatabaseInspector _instance;
|
||||
|
|
@ -313,7 +22,7 @@ public class DatabaseInspector : EditorWindow
|
|||
private GUIStyle _labelStyle;
|
||||
private Vector2 _view;
|
||||
private const float IconSize = 1.0f / 16;
|
||||
private static HardpointData _hardpoint;
|
||||
// private static HardpointData _hardpoint;
|
||||
private static float2 _dragOffset;
|
||||
private bool _ctrlDown;
|
||||
private string[] _hardpointTypes;
|
||||
|
|
@ -346,23 +55,23 @@ public class DatabaseInspector : EditorWindow
|
|||
void OnEnable()
|
||||
{
|
||||
_list = DatabaseListView.ShowWindow();
|
||||
Database.OnDataUpdate += Repaint;
|
||||
DatabaseCache.OnDataUpdateLocal += _ => Repaint();
|
||||
DatabaseCache.OnDataUpdateRemote += _ => EditorDispatcher.Dispatch(Repaint);
|
||||
wantsMouseMove = true;
|
||||
_hardpoint = null;
|
||||
_hardpointTypes = Enum.GetNames(typeof(HardpointType));
|
||||
}
|
||||
|
||||
public void Inspect(object obj, bool inspectablesOnly = false, ICraftable craftable = null)
|
||||
public void Inspect(object obj, bool inspectablesOnly = false)
|
||||
{
|
||||
foreach (var field in obj.GetType().GetFields())
|
||||
{
|
||||
Inspect(obj, field, inspectablesOnly, craftable);
|
||||
Inspect(obj, field, inspectablesOnly);
|
||||
}
|
||||
}
|
||||
|
||||
public void Inspect(object obj, FieldInfo field, bool inspectablesOnly = false, ICraftable craftable = null)
|
||||
public void Inspect(object obj, FieldInfo field, bool inspectablesOnly = false)
|
||||
{
|
||||
var inspectable = field.GetCustomAttribute<InspectableAttribute>();
|
||||
var inspectable = field.GetCustomAttribute<InspectableFieldAttribute>();
|
||||
if (inspectable == null && inspectablesOnly) return;
|
||||
|
||||
var type = field.FieldType;
|
||||
|
|
@ -381,6 +90,10 @@ public class DatabaseInspector : EditorWindow
|
|||
else
|
||||
field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (float) value));
|
||||
}
|
||||
else if (type == typeof(float4[]) && inspectable is InspectableAnimationCurveAttribute)
|
||||
{
|
||||
field.SetValue(obj, InspectAnimationCurve(field.Name.SplitCamelCase(), (float4[]) value));
|
||||
}
|
||||
else if (type == typeof(int))
|
||||
{
|
||||
if (inspectable is RangedIntInspectableAttribute)
|
||||
|
|
@ -394,10 +107,16 @@ public class DatabaseInspector : EditorWindow
|
|||
else if (type.IsEnum) field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (int) field.GetValue(obj), Enum.GetNames(field.FieldType)));
|
||||
//else if (field.FieldType == typeof(Color)) Inspect(field.Name, () => (Color) field.GetValue(obj), c => field.SetValue(obj, c));
|
||||
else if (type == typeof(bool)) field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (bool) value));
|
||||
else if (type == typeof(string)) field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (string) value, inspectable is InspectableTextAttribute));
|
||||
else if (type == typeof(string))
|
||||
{
|
||||
if(inspectable is InspectablePrefabAttribute)
|
||||
field.SetValue(obj, InspectGameObject(field.Name.SplitCamelCase(), (string) value));
|
||||
else
|
||||
field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (string) value, inspectable is InspectableTextAttribute));
|
||||
}
|
||||
else if (type == typeof(GameObject)) field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (GameObject) value));
|
||||
else if (type == typeof(AnimationCurve)) field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (AnimationCurve) value));
|
||||
else if (type == typeof(PerformanceStat)) field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (PerformanceStat) value, craftable));
|
||||
else if (type == typeof(PerformanceStat)) field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (PerformanceStat) value, obj as CraftedItemData));
|
||||
else if (type == typeof(PerformanceStat[]))
|
||||
{
|
||||
EditorGUILayout.LabelField(field.Name.SplitCamelCase(), EditorStyles.boldLabel);
|
||||
|
|
@ -409,7 +128,7 @@ public class DatabaseInspector : EditorWindow
|
|||
stats = new PerformanceStat[damageTypes.Length];
|
||||
for (var i = 0; i < stats.Length; i++)
|
||||
{
|
||||
stats[i] = Inspect(damageTypes[i].SplitCamelCase(), stats[i], craftable);
|
||||
stats[i] = Inspect(damageTypes[i].SplitCamelCase(), stats[i], obj as CraftedItemData);
|
||||
}
|
||||
field.SetValue(obj, stats);
|
||||
}
|
||||
|
|
@ -431,7 +150,7 @@ public class DatabaseInspector : EditorWindow
|
|||
Inspect(field.Name.SplitCamelCase(), ref list, link.EntryType);
|
||||
}
|
||||
else if (type == typeof(Guid) && link != null) field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (Guid) value, link.EntryType));
|
||||
else if (type.GetCustomAttribute<InspectableAttribute>() != null)
|
||||
else if (type.GetCustomAttribute<InspectableFieldAttribute>() != null)
|
||||
{
|
||||
EditorGUILayout.Space();
|
||||
using (new EditorGUILayout.HorizontalScope())
|
||||
|
|
@ -447,12 +166,12 @@ public class DatabaseInspector : EditorWindow
|
|||
field.SetValue(obj, value = newSelection==0?null:Activator.CreateInstance(subTypes[newSelection-1]));
|
||||
} else if(value == null) field.SetValue(obj, value = Activator.CreateInstance(type));
|
||||
}
|
||||
if(value != null) Inspect(field.GetValue(obj), inspectablesOnly, craftable);
|
||||
if(value != null) Inspect(field.GetValue(obj), inspectablesOnly);
|
||||
}
|
||||
else if (type.IsGenericType && type.GetGenericTypeDefinition() == typeof(List<>))
|
||||
{
|
||||
var listType = field.FieldType.GenericTypeArguments[0];
|
||||
if (listType.GetCustomAttribute<InspectableAttribute>() != null)
|
||||
if (listType.GetCustomAttribute<InspectableFieldAttribute>() != null)
|
||||
{
|
||||
EditorGUILayout.Space();
|
||||
using (new EditorGUILayout.VerticalScope(GUI.skin.box))
|
||||
|
|
@ -484,7 +203,7 @@ public class DatabaseInspector : EditorWindow
|
|||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
Inspect(o, inspectablesOnly, craftable);
|
||||
Inspect(o, inspectablesOnly);
|
||||
}
|
||||
}
|
||||
using (new EditorGUILayout.HorizontalScope(_list.ListItemStyle))
|
||||
|
|
@ -502,7 +221,7 @@ public class DatabaseInspector : EditorWindow
|
|||
menu.AddItem(new GUIContent(behaviorType.Name), false, () =>
|
||||
{
|
||||
list.Add(Activator.CreateInstance(behaviorType));
|
||||
Database.Save(entry);
|
||||
DatabaseCache.Add(entry);
|
||||
});
|
||||
}
|
||||
menu.ShowAsContext();
|
||||
|
|
@ -670,6 +389,15 @@ public class DatabaseInspector : EditorWindow
|
|||
}
|
||||
}
|
||||
|
||||
public string InspectGameObject(string label, string value)
|
||||
{
|
||||
using (var h = new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
GUILayout.Label(label, GUILayout.Width(width));
|
||||
return AssetDatabase.GetAssetPath(EditorGUILayout.ObjectField(AssetDatabase.LoadAssetAtPath<GameObject>(value), typeof(GameObject), false));
|
||||
}
|
||||
}
|
||||
|
||||
public GameObject Inspect(string label, GameObject value)
|
||||
{
|
||||
using (var h = new EditorGUILayout.HorizontalScope())
|
||||
|
|
@ -679,6 +407,20 @@ public class DatabaseInspector : EditorWindow
|
|||
}
|
||||
}
|
||||
|
||||
public float4[] InspectAnimationCurve(string label, float4[] value)
|
||||
{
|
||||
var val = value != null && value.Length > 0
|
||||
? new AnimationCurve(value.Select(v => new Keyframe(v.x, v.y, v.z, v.w)).ToArray())
|
||||
: new AnimationCurve();
|
||||
using (var h = new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
GUILayout.Label(label, GUILayout.Width(width));
|
||||
val = EditorGUILayout.CurveField(val, Color.yellow, new Rect(0, 0, 1, 1));
|
||||
}
|
||||
|
||||
return val.keys.Select(k => float4(k.time, k.value, k.inTangent, k.outTangent)).ToArray();
|
||||
}
|
||||
|
||||
public AnimationCurve Inspect(string label, AnimationCurve value)
|
||||
{
|
||||
using (var h = new EditorGUILayout.HorizontalScope())
|
||||
|
|
@ -695,15 +437,15 @@ public class DatabaseInspector : EditorWindow
|
|||
public Guid Inspect(string label, Guid value, Type entryType)
|
||||
{
|
||||
EditorGUILayout.LabelField(label, EditorStyles.boldLabel);
|
||||
var valueEntry = Database.Get(value);
|
||||
var valueEntry = DatabaseCache.Get(value);
|
||||
using (var h = new EditorGUILayout.HorizontalScope(GUI.skin.box))
|
||||
{
|
||||
GUILayout.Label(valueEntry?.Entry.Name ?? $"Assign a {entryType.Name} by dragging from the list panel.");
|
||||
GUILayout.Label((valueEntry as INamedEntry)?.EntryName ?? valueEntry?.ID.ToString() ?? $"Assign a {entryType.Name} by dragging from the list panel.");
|
||||
|
||||
if (h.rect.Contains(Event.current.mousePosition) && (Event.current.type == EventType.DragUpdated || Event.current.type == EventType.DragPerform))
|
||||
{
|
||||
var guid = (Guid) DragAndDrop.GetGenericData("Item");
|
||||
var dragEntry = Database.Get(guid);
|
||||
var dragEntry = DatabaseCache.Get(guid);
|
||||
if(Event.current.type == EventType.DragUpdated)
|
||||
DragAndDrop.visualMode = dragEntry != null && dragEntry.GetType()==entryType ? DragAndDropVisualMode.Copy : DragAndDropVisualMode.Rejected;
|
||||
else if(Event.current.type == EventType.DragPerform)
|
||||
|
|
@ -739,7 +481,7 @@ public class DatabaseInspector : EditorWindow
|
|||
{
|
||||
using (var h = new EditorGUILayout.HorizontalScope(_list.ListItemStyle))
|
||||
{
|
||||
GUILayout.Label(Database.Get(ingredient.Key).Entry.Name);
|
||||
GUILayout.Label(DatabaseCache.Get<ItemData>(ingredient.Key).Name);
|
||||
value[ingredient.Key] = EditorGUILayout.DelayedIntField(value[ingredient.Key], GUILayout.Width(50));
|
||||
|
||||
var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
|
|
@ -785,7 +527,7 @@ public class DatabaseInspector : EditorWindow
|
|||
{
|
||||
using (var h = new EditorGUILayout.HorizontalScope(_list.ListItemStyle))
|
||||
{
|
||||
GUILayout.Label(Database.Get(ingredient.Key).Entry.Name);
|
||||
GUILayout.Label(DatabaseCache.Get(ingredient.Key).ID.ToString());
|
||||
value[ingredient.Key] = EditorGUILayout.DelayedFloatField(value[ingredient.Key], GUILayout.Width(50));
|
||||
|
||||
var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
|
|
@ -831,7 +573,7 @@ public class DatabaseInspector : EditorWindow
|
|||
{
|
||||
using (var h = new EditorGUILayout.HorizontalScope(_list.ListItemStyle))
|
||||
{
|
||||
GUILayout.Label(Database.Get(ingredient).Entry.Name);
|
||||
GUILayout.Label((DatabaseCache.Get(ingredient) as INamedEntry)?.EntryName ?? DatabaseCache.Get(ingredient).ID.ToString());
|
||||
|
||||
var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
GUI.DrawTexture(rect, Icons.Instance.minus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
|
|
@ -843,7 +585,7 @@ public class DatabaseInspector : EditorWindow
|
|||
if (v.rect.Contains(Event.current.mousePosition))
|
||||
{
|
||||
var guid = DragAndDrop.GetGenericData("Item");
|
||||
var dragObj = DragAndDrop.GetGenericData("Item") is Guid ? ((Guid) guid).Get() : null;
|
||||
var dragObj = DragAndDrop.GetGenericData("Item") is Guid ? DatabaseCache.Get((Guid) guid) : null;
|
||||
if(Event.current.type == EventType.DragUpdated)
|
||||
DragAndDrop.visualMode = entryType.IsInstanceOfType(dragObj) ? DragAndDropVisualMode.Copy : DragAndDropVisualMode.Rejected;
|
||||
else if(Event.current.type == EventType.DragPerform)
|
||||
|
|
@ -859,7 +601,7 @@ public class DatabaseInspector : EditorWindow
|
|||
}
|
||||
}
|
||||
|
||||
public PerformanceStat Inspect(string label, PerformanceStat value, ICraftable craftable)
|
||||
public PerformanceStat Inspect(string label, PerformanceStat value, CraftedItemData crafted)
|
||||
{
|
||||
using (new EditorGUILayout.VerticalScope())
|
||||
{
|
||||
|
|
@ -887,14 +629,14 @@ public class DatabaseInspector : EditorWindow
|
|||
{
|
||||
GUILayout.Label("", GUILayout.Width(width));
|
||||
GUILayout.Label("Ingredient", GUILayout.ExpandWidth(false));
|
||||
var ingredients = craftable.CraftingIngredients.Keys.Select(Database.Get).Where(i => i is CraftedItem).Cast<CraftedItem>().ToList();
|
||||
var ingredient = Database.Get(value.Ingredient) as CraftedItem;
|
||||
var names = ingredients.Select(i => i.Entry.Name).Append("None").ToArray();
|
||||
var selected = value.Ingredient == Guid.Empty || !craftable.CraftingIngredients.ContainsKey(value.Ingredient)
|
||||
var ingredients = crafted.Ingredients.Keys.Select(DatabaseCache.Get).Where(i => i is CraftedItemData).Cast<CraftedItemData>().ToList();
|
||||
var ingredient = value.Ingredient != null ? DatabaseCache.Get(value.Ingredient.Value) as CraftedItemData : null;
|
||||
var names = ingredients.Select(i => i.Name).Append("None").ToArray();
|
||||
var selected = value.Ingredient == null || !crafted.Ingredients.ContainsKey(value.Ingredient.Value)
|
||||
? names.Length - 1
|
||||
: ingredients.IndexOf(ingredient);
|
||||
var selection = EditorGUILayout.Popup(selected, names);
|
||||
value.Ingredient = selection == names.Length - 1 ? Guid.Empty : ingredients[selection].GetId();
|
||||
value.Ingredient = selection == names.Length - 1 ? (Guid?) null : ingredients[selection].ID;
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
|
@ -932,22 +674,22 @@ public class DatabaseInspector : EditorWindow
|
|||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
|
||||
var dataEntry = entry.Entry;
|
||||
var dataEntry = entry;
|
||||
|
||||
using (new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
if(GUILayout.Button("Print JSON"))
|
||||
Debug.Log(entry.ToJson());
|
||||
if (GUILayout.Button("Duplicate"))
|
||||
{
|
||||
Database.Duplicate(entry);
|
||||
}
|
||||
if (GUILayout.Button("Delete Entry"))
|
||||
{
|
||||
Database.Delete(entry);
|
||||
entry = null;
|
||||
return;
|
||||
}
|
||||
// if (GUILayout.Button("Duplicate"))
|
||||
// {
|
||||
// DatabaseCache.Duplicate(entry);
|
||||
// }
|
||||
// if (GUILayout.Button("Delete Entry"))
|
||||
// {
|
||||
// DatabaseCache.Delete(entry);
|
||||
// entry = null;
|
||||
// return;
|
||||
// }
|
||||
}
|
||||
|
||||
using (var h = new EditorGUILayout.HorizontalScope())
|
||||
|
|
@ -956,10 +698,10 @@ public class DatabaseInspector : EditorWindow
|
|||
EditorGUILayout.LabelField(dataEntry.ID.ToString());
|
||||
}
|
||||
|
||||
Inspect(entry, true, entry as ICraftable);
|
||||
Inspect(entry, true);
|
||||
|
||||
#region Hull
|
||||
var hull = entry as Hull;
|
||||
var hull = entry as HullData;
|
||||
if (hull != null)
|
||||
{
|
||||
EditorGUILayout.Space();
|
||||
|
|
@ -969,121 +711,121 @@ public class DatabaseInspector : EditorWindow
|
|||
}
|
||||
#endregion
|
||||
|
||||
#region Loadout
|
||||
var loadout = entry as LoadoutDefinition;
|
||||
if (loadout != null)
|
||||
{
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.LabelField("Loadout Hull", EditorStyles.boldLabel);
|
||||
|
||||
var loadoutHull = Database.Get(loadout.Hull) as Hull;
|
||||
|
||||
if (loadoutHull != null)
|
||||
{
|
||||
// Reserve slots in the loadout for all equippable (non-hull) hardpoints
|
||||
var hardpoints = loadoutHull.Hardpoints.Where(h => h.Type != HardpointType.Hull).ToArray();
|
||||
if (loadout.Items.Count < hardpoints.Length)
|
||||
loadout.Items.AddRange(Enumerable.Repeat(Guid.Empty, hardpoints.Length - loadout.Items.Count));
|
||||
|
||||
EditorGUILayout.Space();
|
||||
using (var h = new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
GUILayout.Label($"Equipped Items: {loadout.Items.Sum(i=>((IItem) Database.Get(i))?.Data.Size ?? 0)}/{loadoutHull.Capacity.Min}", EditorStyles.boldLabel);
|
||||
GUILayout.Label($"Mass: {loadout.Items.Sum(i=>((IItem) Database.Get(i))?.Data.Mass ?? 0)}", EditorStyles.boldLabel, GUILayout.ExpandWidth(false));
|
||||
}
|
||||
|
||||
int itemIndex = 0;
|
||||
using (var v = new EditorGUILayout.VerticalScope(GUI.skin.box))
|
||||
{
|
||||
for (; itemIndex < hardpoints.Length; itemIndex++)
|
||||
{
|
||||
var hp = hardpoints[itemIndex];
|
||||
|
||||
var loadoutItem = Database.Get(loadout.Items[itemIndex]) as IEquippable;
|
||||
|
||||
if (loadoutItem != null && loadoutItem.HardpointType != hp.Type)
|
||||
{
|
||||
loadout.Items[itemIndex] = Guid.Empty;
|
||||
Debug.Log($"Invalid Item \"{loadoutItem.Entry.Name}\" in {Enum.GetName(typeof(HardpointType),hp.Type)} hardpoint for loadout \"{loadout.Entry.Name}\"");
|
||||
Database.Save(entry);
|
||||
}
|
||||
|
||||
using (var h = new EditorGUILayout.HorizontalScope(_list.ListItemStyle))
|
||||
{
|
||||
if (h.rect.Contains(current.mousePosition) &&
|
||||
(currentEventType == EventType.DragUpdated || currentEventType == EventType.DragPerform))
|
||||
{
|
||||
var guid = (Guid) DragAndDrop.GetGenericData("Item");
|
||||
var draggedEquippable = Database.Get(guid) as IEquippable;
|
||||
var good = draggedEquippable != null && draggedEquippable.HardpointType == hp.Type;
|
||||
if (currentEventType == EventType.DragUpdated)
|
||||
DragAndDrop.visualMode = good ? DragAndDropVisualMode.Copy : DragAndDropVisualMode.Rejected;
|
||||
else if (currentEventType == EventType.DragPerform && good)
|
||||
{
|
||||
DragAndDrop.AcceptDrag();
|
||||
loadout.Items[itemIndex] = guid;
|
||||
|
||||
Database.Save(entry);
|
||||
}
|
||||
}
|
||||
|
||||
GUILayout.Label(Enum.GetName(typeof(HardpointType), hp.Type));
|
||||
if (loadoutItem == null || loadoutItem.HardpointType != hp.Type)
|
||||
GUILayout.Label("Empty Hardpoint", GUILayout.ExpandWidth(false));
|
||||
else
|
||||
{
|
||||
GUILayout.Label(loadoutItem.Entry.Name, GUILayout.ExpandWidth(false));
|
||||
var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
GUI.DrawTexture(rect, Icons.Instance.minus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
if (GUI.Button(rect, GUIContent.none, GUIStyle.none))
|
||||
loadout.Items[itemIndex] = Guid.Empty;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.LabelField("Cargo", EditorStyles.boldLabel);
|
||||
|
||||
using (var v = new EditorGUILayout.VerticalScope(GUI.skin.box))
|
||||
{
|
||||
if (v.rect.Contains(current.mousePosition) &&
|
||||
(currentEventType == EventType.DragUpdated || currentEventType == EventType.DragPerform))
|
||||
{
|
||||
var guid = (Guid) DragAndDrop.GetGenericData("Item");
|
||||
var dragItem = Database.Get(guid) as IItem;
|
||||
if (currentEventType == EventType.DragUpdated)
|
||||
DragAndDrop.visualMode = dragItem != null ? DragAndDropVisualMode.Copy : DragAndDropVisualMode.Rejected;
|
||||
else if (currentEventType == EventType.DragPerform && dragItem != null)
|
||||
{
|
||||
DragAndDrop.AcceptDrag();
|
||||
|
||||
loadout.Items.Add(guid);
|
||||
Database.Save(entry);
|
||||
}
|
||||
}
|
||||
if(itemIndex == loadout.Items.Count)
|
||||
GUILayout.Label("Nothing Here!");
|
||||
for (; itemIndex < loadout.Items.Count; itemIndex++)
|
||||
{
|
||||
var loadoutItem = Database.Get(loadout.Items[itemIndex]) as IItem;
|
||||
using (var h = new EditorGUILayout.HorizontalScope(_list.ListItemStyle))
|
||||
{
|
||||
GUILayout.Label(loadoutItem?.Entry.Name ?? "Invalid Item");
|
||||
var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
GUI.DrawTexture(rect, Icons.Instance.minus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
if (GUI.Button(rect, GUIContent.none, GUIStyle.none))
|
||||
loadout.Items.RemoveAt(itemIndex--);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
// #region Loadout
|
||||
// var loadout = entry as LoadoutData;
|
||||
// if (loadout != null)
|
||||
// {
|
||||
// EditorGUILayout.Space();
|
||||
// EditorGUILayout.LabelField("Loadout Hull", EditorStyles.boldLabel);
|
||||
//
|
||||
// var loadoutHull = Database.Get(loadout.Hull) as HullData;
|
||||
//
|
||||
// if (loadoutHull != null)
|
||||
// {
|
||||
// // Reserve slots in the loadout for all equippable (non-hull) hardpoints
|
||||
// var hardpoints = loadoutHull.Hardpoints.Where(h => h.Type != HardpointType.Hull).ToArray();
|
||||
// if (loadout.Items.Count < hardpoints.Length)
|
||||
// loadout.Items.AddRange(Enumerable.Repeat(Guid.Empty, hardpoints.Length - loadout.Items.Count));
|
||||
//
|
||||
// // EditorGUILayout.Space();
|
||||
// // using (var h = new EditorGUILayout.HorizontalScope())
|
||||
// // {
|
||||
// // GUILayout.Label($"Equipped Items: {loadout.Items.Sum(i=>((ItemData) Database.Get(i))?.Data.Size ?? 0)}/{loadoutHull.Capacity.Min}", EditorStyles.boldLabel);
|
||||
// // GUILayout.Label($"Mass: {loadout.Items.Sum(i=>((ItemData) Database.Get(i))?.Data.Mass ?? 0)}", EditorStyles.boldLabel, GUILayout.ExpandWidth(false));
|
||||
// // }
|
||||
//
|
||||
// int itemIndex = 0;
|
||||
// using (var v = new EditorGUILayout.VerticalScope(GUI.skin.box))
|
||||
// {
|
||||
// for (; itemIndex < hardpoints.Length; itemIndex++)
|
||||
// {
|
||||
// var hp = hardpoints[itemIndex];
|
||||
//
|
||||
// var loadoutItem = Database.Get(loadout.Items[itemIndex]) as EquippableItemData;
|
||||
//
|
||||
// if (loadoutItem != null && loadoutItem.HardpointType != hp.Type)
|
||||
// {
|
||||
// loadout.Items[itemIndex] = Guid.Empty;
|
||||
// Debug.Log($"Invalid Item \"{loadoutItem.Name}\" in {Enum.GetName(typeof(HardpointType),hp.Type)} hardpoint for loadout \"{loadout.Name}\"");
|
||||
// Database.Save(entry);
|
||||
// }
|
||||
//
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(_list.ListItemStyle))
|
||||
// {
|
||||
// if (h.rect.Contains(current.mousePosition) &&
|
||||
// (currentEventType == EventType.DragUpdated || currentEventType == EventType.DragPerform))
|
||||
// {
|
||||
// var guid = (Guid) DragAndDrop.GetGenericData("Item");
|
||||
// var draggedEquippable = Database.Get(guid) as EquippableItemData;
|
||||
// var good = draggedEquippable != null && draggedEquippable.HardpointType == hp.Type;
|
||||
// if (currentEventType == EventType.DragUpdated)
|
||||
// DragAndDrop.visualMode = good ? DragAndDropVisualMode.Copy : DragAndDropVisualMode.Rejected;
|
||||
// else if (currentEventType == EventType.DragPerform && good)
|
||||
// {
|
||||
// DragAndDrop.AcceptDrag();
|
||||
// loadout.Items[itemIndex] = guid;
|
||||
//
|
||||
// Database.Save(entry);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// GUILayout.Label(Enum.GetName(typeof(HardpointType), hp.Type));
|
||||
// if (loadoutItem == null || loadoutItem.HardpointType != hp.Type)
|
||||
// GUILayout.Label("Empty Hardpoint", GUILayout.ExpandWidth(false));
|
||||
// else
|
||||
// {
|
||||
// GUILayout.Label(loadoutItem.Name, GUILayout.ExpandWidth(false));
|
||||
// var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
// GUI.DrawTexture(rect, Icons.Instance.minus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
// if (GUI.Button(rect, GUIContent.none, GUIStyle.none))
|
||||
// loadout.Items[itemIndex] = Guid.Empty;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// EditorGUILayout.Space();
|
||||
// EditorGUILayout.LabelField("Cargo", EditorStyles.boldLabel);
|
||||
//
|
||||
// using (var v = new EditorGUILayout.VerticalScope(GUI.skin.box))
|
||||
// {
|
||||
// if (v.rect.Contains(current.mousePosition) &&
|
||||
// (currentEventType == EventType.DragUpdated || currentEventType == EventType.DragPerform))
|
||||
// {
|
||||
// var guid = (Guid) DragAndDrop.GetGenericData("Item");
|
||||
// var dragItem = Database.Get(guid) as ItemData;
|
||||
// if (currentEventType == EventType.DragUpdated)
|
||||
// DragAndDrop.visualMode = dragItem != null ? DragAndDropVisualMode.Copy : DragAndDropVisualMode.Rejected;
|
||||
// else if (currentEventType == EventType.DragPerform && dragItem != null)
|
||||
// {
|
||||
// DragAndDrop.AcceptDrag();
|
||||
//
|
||||
// loadout.Items.Add(guid);
|
||||
// Database.Save(entry);
|
||||
// }
|
||||
// }
|
||||
// if(itemIndex == loadout.Items.Count)
|
||||
// GUILayout.Label("Nothing Here!");
|
||||
// for (; itemIndex < loadout.Items.Count; itemIndex++)
|
||||
// {
|
||||
// var loadoutItem = Database.Get(loadout.Items[itemIndex]) as ItemData;
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(_list.ListItemStyle))
|
||||
// {
|
||||
// GUILayout.Label(loadoutItem?.Name ?? "Invalid Item");
|
||||
// var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
// GUI.DrawTexture(rect, Icons.Instance.minus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
// if (GUI.Button(rect, GUIContent.none, GUIStyle.none))
|
||||
// loadout.Items.RemoveAt(itemIndex--);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// #endregion
|
||||
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
Database.Save(entry);
|
||||
DatabaseCache.Add(entry);
|
||||
}
|
||||
|
||||
EditorGUILayout.EndScrollView();
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 017a6733a6cd4ee4b99d7c53f15d21da
|
||||
guid: 30b612dc279f724418b8a7a5426287c2
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
378
Assets/Scripts/Editor/DatabaseView.cs
Normal file
378
Assets/Scripts/Editor/DatabaseView.cs
Normal file
|
|
@ -0,0 +1,378 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Threading.Tasks;
|
||||
using RethinkDb.Driver;
|
||||
using RethinkDb.Driver.Net;
|
||||
using UniRx;
|
||||
using Unity.Mathematics;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Serialization;
|
||||
// TODO: USE THIS EVERYWHERE
|
||||
using static Unity.Mathematics.math;
|
||||
using Object = UnityEngine.Object;
|
||||
|
||||
public class DatabaseListView : EditorWindow
|
||||
{
|
||||
// Singleton to avoid multiple instances of window.
|
||||
private static DatabaseListView _instance;
|
||||
public Guid SelectedItem;
|
||||
public GUIStyle SelectedStyle;
|
||||
|
||||
public static RethinkDB R = RethinkDB.R;
|
||||
private Connection _connection;
|
||||
|
||||
private DatabaseCache _databaseCache;
|
||||
private bool[] _gearFoldouts;
|
||||
private bool _itemsFoldout;
|
||||
private bool _compoundFoldout;
|
||||
private bool _simpleFoldout;
|
||||
private bool _commoditiesFoldout;
|
||||
//private bool _consumablesFoldout;
|
||||
private Type[] _itemTypes;
|
||||
private bool _listItemStyle;
|
||||
private GUIStyle _listStyleOdd;
|
||||
private GUIStyle _listStyleEven;
|
||||
private static DatabaseInspector _inspector;
|
||||
private Type[] _entryTypes;
|
||||
private bool[] _entryFoldouts;
|
||||
private string _connectionString;
|
||||
private const float LineHeight = 20;
|
||||
|
||||
// Set instance on reloading the window, else it gets lost after script reload (due to PlayMode changes, ...).
|
||||
public DatabaseListView()
|
||||
{
|
||||
_instance = this;
|
||||
}
|
||||
|
||||
public static DatabaseListView ShowWindow()
|
||||
{
|
||||
if (_instance == null)
|
||||
{
|
||||
// "Get existing open window or if none, make a new one:" says documentation.
|
||||
// But if called after script reloads a second instance will be opened! => Custom singleton required.
|
||||
DatabaseListView window = EditorWindow.GetWindow<DatabaseListView>();
|
||||
window.titleContent = new GUIContent("DB List");
|
||||
_instance = window;
|
||||
_instance.InitStyles();
|
||||
window.Show();
|
||||
}
|
||||
else
|
||||
_instance.Focus();
|
||||
|
||||
return _instance;
|
||||
}
|
||||
|
||||
public GUIStyle ListItemStyle =>
|
||||
(_listItemStyle = !_listItemStyle) ? _listStyleEven : _listStyleOdd;
|
||||
|
||||
[MenuItem("Window/Aetheria Database Tools")]
|
||||
static void Init()
|
||||
{
|
||||
ShowWindow();
|
||||
}
|
||||
|
||||
void OnEnable()
|
||||
{
|
||||
// Create database cache
|
||||
_databaseCache = new DatabaseCache();
|
||||
_databaseCache.OnDataUpdateLocal += _ => Repaint();
|
||||
_databaseCache.OnDataUpdateRemote += _ => EditorDispatcher.Dispatch(Repaint);
|
||||
|
||||
DatabaseInspector.DatabaseCache = _databaseCache;
|
||||
_inspector = DatabaseInspector.ShowWindow();
|
||||
|
||||
_itemTypes = typeof(ItemData).GetAllChildClasses()
|
||||
.Where(t => t.GetCustomAttribute<InspectableAttribute>() != null).ToArray();
|
||||
_entryTypes = typeof(DatabaseEntry).GetAllChildClasses()
|
||||
.Where(t => t.GetCustomAttribute<InspectableAttribute>() != null && !typeof(ItemData).IsAssignableFrom(t)).ToArray();
|
||||
|
||||
_gearFoldouts = new bool[_itemTypes.Length];
|
||||
_entryFoldouts = new bool[_entryTypes.Length];
|
||||
|
||||
if (EditorPrefs.HasKey("RethinkDB.URL"))
|
||||
_connectionString = EditorPrefs.GetString("RethinkDB.URL");
|
||||
else
|
||||
_connectionString = "Enter DB URL";
|
||||
|
||||
InitStyles();
|
||||
}
|
||||
|
||||
private void InitStyles()
|
||||
{
|
||||
var isDark = EditorGUIUtility.isProSkin;
|
||||
_listStyleOdd = new GUIStyle
|
||||
{
|
||||
normal = {background = isDark ? XKCDColors.DarkGrey.ToTexture() : XKCDColors.LightGrey.ToTexture()},
|
||||
margin = new RectOffset(0, 0, 0, 0)
|
||||
};
|
||||
_listStyleEven = new GUIStyle
|
||||
{
|
||||
normal = {background = isDark ? Color.Lerp(XKCDColors.DarkGrey,Color.black,.5f).ToTexture() : Color.Lerp(XKCDColors.LightGrey,Color.white,.5f).ToTexture()},
|
||||
margin = new RectOffset(0, 0, 0, 0)
|
||||
};
|
||||
SelectedStyle = new GUIStyle
|
||||
{
|
||||
normal = {background = isDark ? XKCDColors.DarkGreyBlue.ToTexture() : XKCDColors.Greyblue.ToTexture()},
|
||||
margin = new RectOffset(0, 0, 0, 0)
|
||||
};
|
||||
}
|
||||
|
||||
public void OnGUI()
|
||||
{
|
||||
Event currentEvent = Event.current;
|
||||
EventType currentEventType = currentEvent.type;
|
||||
|
||||
if (currentEventType == EventType.DragUpdated)
|
||||
// Indicate that we don't accept drags ourselves
|
||||
DragAndDrop.visualMode = DragAndDropVisualMode.Rejected;
|
||||
|
||||
using (var h = new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
_connectionString = EditorGUILayout.TextField(_connectionString);
|
||||
if (GUILayout.Button("Connect"))
|
||||
{
|
||||
EditorPrefs.SetString("RethinkDB.URL", _connectionString);
|
||||
_connection = R.Connection().Hostname(_connectionString).Port(RethinkDBConstants.DefaultPort).Timeout(60).Connect();
|
||||
Debug.Log("Connected to RethinkDB");
|
||||
|
||||
// When entries are changed locally, push the changes to RethinkDB
|
||||
_databaseCache.OnDataUpdateLocal +=
|
||||
entry =>
|
||||
{
|
||||
Debug.Log($"Uploading entry to RethinkDB: {entry.ID}");
|
||||
R.Db("Aetheria").Table("Items").Replace(entry).RunAsync(_connection);
|
||||
};
|
||||
|
||||
// Get all item data from RethinkDB
|
||||
Task.Run(async () =>
|
||||
{
|
||||
var result = await R.Db("Aetheria").Table("Items").RunCursorAsync<DatabaseEntry>(_connection);
|
||||
while (await result.MoveNextAsync())
|
||||
{
|
||||
var entry = result.Current;
|
||||
Debug.Log($"Received entry from RethinkDB: {entry.ID}");
|
||||
_databaseCache.Add(entry, true);
|
||||
}
|
||||
}).WrapErrors();
|
||||
|
||||
// Subscribe to changes from RethinkDB
|
||||
Task.Run(async () =>
|
||||
{
|
||||
var result = await R.Db("Aetheria").Table("Items").Changes()
|
||||
.RunChangesAsync<DatabaseEntry>(_connection);
|
||||
while (await result.MoveNextAsync())
|
||||
{
|
||||
var change = result.Current;
|
||||
var entry = change.NewValue;
|
||||
Debug.Log($"Received change to entry from RethinkDB: {entry.ID}");
|
||||
_databaseCache.Add(entry, true);
|
||||
}
|
||||
}).WrapErrors();
|
||||
}
|
||||
}
|
||||
GUILayout.Space(5);
|
||||
|
||||
Action<DatabaseEntry> select = item =>
|
||||
{
|
||||
SelectedItem = item.ID;
|
||||
Repaint();
|
||||
_inspector.entry = _databaseCache.Get(SelectedItem);
|
||||
_inspector.Repaint();
|
||||
};
|
||||
|
||||
using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
{
|
||||
_itemsFoldout = EditorGUILayout.Foldout(_itemsFoldout, "Items", true);
|
||||
}
|
||||
if (_itemsFoldout)
|
||||
{
|
||||
var items = _databaseCache.AllEntries.Where(item => item is ItemData).Cast<ItemData>().ToArray();
|
||||
for (var i = 0; i < _itemTypes.Length; i++)
|
||||
{
|
||||
using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
{
|
||||
GUILayout.Space(10);
|
||||
_gearFoldouts[i] = EditorGUILayout.Foldout(_gearFoldouts[i],
|
||||
((NameAttribute) _itemTypes[i].GetCustomAttribute(typeof(NameAttribute)))?.Name ?? _itemTypes[i].Name,
|
||||
true);
|
||||
}
|
||||
if (_gearFoldouts[i])
|
||||
{
|
||||
foreach (var item in items.Where(e=>e.GetType()==_itemTypes[i]))
|
||||
{
|
||||
var style = ListItemStyle;
|
||||
var selected = SelectedItem == item.ID;
|
||||
using (var h = new EditorGUILayout.HorizontalScope(selected?SelectedStyle:style))
|
||||
{
|
||||
if (h.rect.Contains(currentEvent.mousePosition))
|
||||
{
|
||||
if (currentEventType == EventType.MouseDrag)
|
||||
{
|
||||
DragAndDrop.PrepareStartDrag();
|
||||
DragAndDrop.SetGenericData("Item", item.ID);
|
||||
DragAndDrop.StartDrag("Database Item");
|
||||
}
|
||||
else if (currentEventType == EventType.MouseUp)
|
||||
select(item);
|
||||
}
|
||||
|
||||
GUILayout.Space(20);
|
||||
GUILayout.Label(item.Name, selected ? EditorStyles.whiteLabel : GUI.skin.label);
|
||||
}
|
||||
}
|
||||
|
||||
using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
{
|
||||
if(GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
CreateItem(_itemTypes[i]);
|
||||
GUILayout.Space(20);
|
||||
GUILayout.Label("New " + _itemTypes[i].Name);
|
||||
var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
GUI.DrawTexture(rect, Icons.Instance.plus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var entries = _databaseCache.AllEntries.Where(item => !(item is ItemData)).ToArray();
|
||||
for (var i = 0; i < _entryTypes.Length; i++)
|
||||
{
|
||||
using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
{
|
||||
_entryFoldouts[i] = EditorGUILayout.Foldout(_entryFoldouts[i],
|
||||
((NameAttribute) _entryTypes[i].GetCustomAttribute(typeof(NameAttribute)))?.Name ?? _entryTypes[i].Name,
|
||||
true);
|
||||
}
|
||||
|
||||
if (_entryFoldouts[i])
|
||||
{
|
||||
int index = 0;
|
||||
foreach (var entry in entries.Where(e=>e.GetType()==_entryTypes[i]))
|
||||
{
|
||||
index++;
|
||||
var style = ListItemStyle;
|
||||
var selected = SelectedItem == entry.ID;
|
||||
using (var h = new EditorGUILayout.HorizontalScope(selected?SelectedStyle:style))
|
||||
{
|
||||
if (h.rect.Contains(currentEvent.mousePosition))
|
||||
{
|
||||
if (currentEventType == EventType.MouseDrag)
|
||||
{
|
||||
DragAndDrop.PrepareStartDrag();
|
||||
DragAndDrop.SetGenericData("Item", entry.ID);
|
||||
DragAndDrop.StartDrag("Database Item");
|
||||
}
|
||||
else if (currentEventType == EventType.MouseUp)
|
||||
select(entry);
|
||||
}
|
||||
GUILayout.Space(10);
|
||||
GUILayout.Label((entry as INamedEntry)?.EntryName ?? index.ToString(), selected ? EditorStyles.whiteLabel : GUI.skin.label);
|
||||
}
|
||||
}
|
||||
|
||||
using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
{
|
||||
if(GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
CreateItem(_entryTypes[i]);
|
||||
GUILayout.Space(10);
|
||||
GUILayout.Label("New " + _entryTypes[i].Name);
|
||||
var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
GUI.DrawTexture(rect, Icons.Instance.plus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// EditorGUILayout.BeginHorizontal(ListItemStyle);
|
||||
// _commoditiesFoldout = EditorGUILayout.Foldout(_commoditiesFoldout, "Commodities", true);
|
||||
// EditorGUILayout.EndHorizontal();
|
||||
// if (_commoditiesFoldout)
|
||||
// {
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
// {
|
||||
// GUILayout.Space(10);
|
||||
// _simpleFoldout = EditorGUILayout.Foldout(_simpleFoldout, "Simple", true);
|
||||
// }
|
||||
// if (_simpleFoldout)
|
||||
// {
|
||||
// foreach (var item in Database.Items.Values.Where(e=>e.GetType()==typeof(ItemData)).Cast<ItemData>())
|
||||
// {
|
||||
// var style = ListItemStyle;
|
||||
// var selected = SelectedItem == item.ID;
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(selected?_selectedStyle:style))
|
||||
// {
|
||||
// if(GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
// select(item);
|
||||
// GUILayout.Space(20);
|
||||
// GUILayout.Label(item.Name, selected ? EditorStyles.whiteLabel : GUI.skin.label);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
// {
|
||||
// if(GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
// CreateItem(typeof(ItemData));
|
||||
// GUILayout.Space(20);
|
||||
// var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
// GUI.DrawTexture(rect, GlobalData.Instance.plus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
// GUILayout.Label("New Simple Commodity");
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
// {
|
||||
// GUILayout.Space(10);
|
||||
// _compoundFoldout = EditorGUILayout.Foldout(_compoundFoldout, "Compound", true);
|
||||
// }
|
||||
// if (_compoundFoldout)
|
||||
// {
|
||||
// foreach (var item in Database.Items.Values.Where(e=>e.GetType()==typeof(CraftedItem)).Cast<CraftedItem>())
|
||||
// {
|
||||
// var style = ListItemStyle;
|
||||
// var selected = SelectedItem == item.GetId();
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(selected?_selectedStyle:style))
|
||||
// {
|
||||
// if (GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
// select(item);
|
||||
// GUILayout.Space(20);
|
||||
// GUILayout.Label(item.Item.Name, selected ? EditorStyles.whiteLabel : GUI.skin.label);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// using (var h = new EditorGUILayout.HorizontalScope(ListItemStyle))
|
||||
// {
|
||||
// if(GUI.Button(h.rect, GUIContent.none, GUIStyle.none))
|
||||
// CreateItem(typeof(CraftedItem));
|
||||
// GUILayout.Space(20);
|
||||
// var rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(EditorGUIUtility.singleLineHeight));
|
||||
// GUI.DrawTexture(rect, GlobalData.Instance.plus, ScaleMode.StretchToFill, true, 1, Color.black, 0, 0);
|
||||
// GUILayout.Label("New Compound Commodity");
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// EditorGUILayout.BeginHorizontal(ListItemStyle);
|
||||
// _consumablesFoldout = EditorGUILayout.Foldout(_consumablesFoldout, "Consumables", true);
|
||||
// EditorGUILayout.EndHorizontal();
|
||||
// if (_consumablesFoldout)
|
||||
// {
|
||||
//
|
||||
// }
|
||||
|
||||
// HACK: This ensures none of the controls in this window can be focused (usually from clicking foldouts)
|
||||
//GUI.SetNextControlName("");
|
||||
//GUI.FocusControl("");
|
||||
}
|
||||
|
||||
private void CreateItem(Type type)
|
||||
{
|
||||
var newEntry = (DatabaseEntry) Activator.CreateInstance(type);
|
||||
SelectedItem = newEntry.ID;
|
||||
if(newEntry is INamedEntry entry)
|
||||
entry.EntryName = $"New {type.Name}";
|
||||
_databaseCache.Add(newEntry);
|
||||
}
|
||||
}
|
||||
81
Assets/Scripts/Editor/EditorDispatch.cs
Normal file
81
Assets/Scripts/Editor/EditorDispatch.cs
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
|
||||
public static class EditorDispatcher
|
||||
{
|
||||
private static readonly Queue<Action> dispatchQueue = new Queue<Action>();
|
||||
private static double timeSliceLimit = 10.0; // in miliseconds
|
||||
private static Stopwatch timer;
|
||||
|
||||
static EditorDispatcher()
|
||||
{
|
||||
EditorApplication.update += Update;
|
||||
timer = new Stopwatch();
|
||||
}
|
||||
|
||||
private static void Update ()
|
||||
{
|
||||
lock (dispatchQueue)
|
||||
{
|
||||
int dispatchCount = 0;
|
||||
|
||||
timer.Reset();
|
||||
timer.Start();
|
||||
|
||||
while (dispatchQueue.Count > 0 && (timer.Elapsed.TotalMilliseconds <= timeSliceLimit))
|
||||
{
|
||||
dispatchQueue.Dequeue().Invoke();
|
||||
|
||||
dispatchCount++;
|
||||
}
|
||||
|
||||
timer.Stop();
|
||||
|
||||
if (dispatchCount > 0)
|
||||
UnityEngine.Debug.Log(string.Format("[EditorDispatcher] Dispatched {0} calls in {1}ms", dispatchCount, timer.Elapsed.TotalMilliseconds));
|
||||
|
||||
// todo some logic for disconnecting update when the queue is empty
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Send an Action Delegate to be run on the main thread. See EditorDispatchActions for some common usecases.
|
||||
/// </summary>
|
||||
/// <param name="task">An action delegate to run on the main thread</param>
|
||||
/// <returns>An AsyncDispatch that can be used to track if the dispatch has completed.</returns>
|
||||
public static AsyncDispatch Dispatch(Action task)
|
||||
{
|
||||
lock (dispatchQueue)
|
||||
{
|
||||
AsyncDispatch dispatch = new AsyncDispatch();
|
||||
|
||||
// enqueue a new task that runs the supplied task and completes the dispatcher
|
||||
dispatchQueue.Enqueue(() => { task(); dispatch.FinishedDispatch(); });
|
||||
|
||||
return dispatch;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Represents the progress of the dispatched action. Can be yielded to in a coroutine.
|
||||
/// If not using coroutines, look at the IsDone property to find out when its okay to proceed.
|
||||
/// </summary>
|
||||
public class AsyncDispatch : CustomYieldInstruction
|
||||
{
|
||||
public bool IsDone { get; private set; }
|
||||
public override bool keepWaiting { get { return !IsDone; } }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Flags this dispatch as completed.
|
||||
/// </summary>
|
||||
internal void FinishedDispatch()
|
||||
{
|
||||
IsDone = true;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,8 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b7b84624f1ba7bd49b6cfc63b25f4b7c
|
||||
timeCreated: 1485671367
|
||||
licenseType: Pro
|
||||
guid: b7269ba738c469a4ea5b50811ef07f11
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
79
Assets/Scripts/Editor/SerializerTestWindow.cs
Normal file
79
Assets/Scripts/Editor/SerializerTestWindow.cs
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
using System;
|
||||
using MessagePack;
|
||||
using MessagePack.Formatters;
|
||||
using Newtonsoft.Json;
|
||||
using RethinkDb.Driver;
|
||||
using RethinkDb.Driver.Net;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using Object = UnityEngine.Object;
|
||||
|
||||
|
||||
public class SerializerTestWindow : EditorWindow
|
||||
{
|
||||
// Singleton to avoid multiple instances of window.
|
||||
private static SerializerTestWindow _instance;
|
||||
|
||||
private static readonly RethinkDB R = RethinkDB.R;
|
||||
|
||||
private Connection _connection;
|
||||
|
||||
private Object _object;
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
_connection = R.Connection().Hostname("asgard.gamecult.games").Port(RethinkDBConstants.DefaultPort).Timeout(60).Connect();
|
||||
}
|
||||
|
||||
public void OnGUI()
|
||||
{
|
||||
var obj = new ShieldData() {ID = Guid.NewGuid(), Name = "Foo"} as DatabaseEntry;
|
||||
// This button serializes the texture reference and print the JSON representation
|
||||
|
||||
if (GUILayout.Button("Print MsgPack JSON"))
|
||||
Debug.Log(MessagePackSerializer.SerializeToJson(obj));
|
||||
|
||||
if (GUILayout.Button("Print Newtonsoft JSON"))
|
||||
Debug.Log(JsonConvert.SerializeObject(obj));
|
||||
|
||||
if (GUILayout.Button("Create Database"))
|
||||
R.DbCreate("Aetheria").Run(_connection);
|
||||
|
||||
if (GUILayout.Button("Create Table"))
|
||||
R.Db("Aetheria").TableCreate("Items").Run(_connection);
|
||||
|
||||
if (GUILayout.Button("Send to RethinkDB"))
|
||||
R.Db("Aetheria").Table("Items").Insert(obj).Run(_connection);
|
||||
}
|
||||
|
||||
#region EditorWindow Boilerplate
|
||||
|
||||
public SerializerTestWindow()
|
||||
{
|
||||
_instance = this;
|
||||
}
|
||||
|
||||
static SerializerTestWindow ShowWindow()
|
||||
{
|
||||
if (_instance == null)
|
||||
{
|
||||
SerializerTestWindow window = EditorWindow.GetWindow<SerializerTestWindow>();
|
||||
window.titleContent = new GUIContent("Serializer Test");
|
||||
_instance = window;
|
||||
window.Show();
|
||||
}
|
||||
else
|
||||
_instance.Focus();
|
||||
|
||||
return _instance;
|
||||
}
|
||||
|
||||
[MenuItem("Window/Serializer Test Tool")]
|
||||
static void Init()
|
||||
{
|
||||
ShowWindow();
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -1,8 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8445204f2ee16e0408274b8400deef53
|
||||
timeCreated: 1485929052
|
||||
licenseType: Pro
|
||||
guid: c18f225a1e4e8bc42bce3782701c9a6b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
|
|
@ -1,134 +0,0 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text.RegularExpressions;
|
||||
using MessagePack;
|
||||
using Unity.Mathematics;
|
||||
using UnityEngine;
|
||||
using Random = UnityEngine.Random;
|
||||
|
||||
using static Unity.Mathematics.math;
|
||||
|
||||
public static class Extensions
|
||||
{
|
||||
public static void BroadcastMessageExt<T>(this GameObject go, string methodName, object value = null, SendMessageOptions options = SendMessageOptions.RequireReceiver)
|
||||
{
|
||||
var monoList = new List<T>();
|
||||
go.GetComponentsInChildren(true, monoList);
|
||||
foreach (var component in monoList)
|
||||
{
|
||||
try
|
||||
{
|
||||
Type type = component.GetType();
|
||||
|
||||
MethodInfo method = type.GetMethod(methodName, BindingFlags.Instance |
|
||||
BindingFlags.NonPublic |
|
||||
BindingFlags.Public |
|
||||
BindingFlags.Static);
|
||||
|
||||
method.Invoke(component, new[] { value });
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
//Re-create the Error thrown by the original SendMessage function
|
||||
if (options == SendMessageOptions.RequireReceiver)
|
||||
Debug.LogError("SendMessage " + methodName + " has no receiver!");
|
||||
|
||||
//Debug.LogError(e.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static Dictionary<Type,Type[]> InterfaceClasses = new Dictionary<Type, Type[]>();
|
||||
public static Type[] GetAllInterfaceClasses(this Type type)
|
||||
{
|
||||
if (InterfaceClasses.ContainsKey(type))
|
||||
return InterfaceClasses[type];
|
||||
return InterfaceClasses[type] = AppDomain.CurrentDomain.GetAssemblies()
|
||||
.SelectMany(ass => ass.GetTypes()).Where(t => t.IsClass && t.GetInterfaces().Contains(type)).ToArray();
|
||||
}
|
||||
|
||||
public static bool IsDefault<T>(this T value) where T : struct
|
||||
{
|
||||
bool isDefault = value.Equals(default(T));
|
||||
|
||||
return isDefault;
|
||||
}
|
||||
|
||||
public static Texture2D ToTexture(this Color c)
|
||||
{
|
||||
Texture2D result = new Texture2D(1, 1);
|
||||
result.SetPixels(new[]{c});
|
||||
result.Apply();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public static string SplitCamelCase( this string str )
|
||||
{
|
||||
return Regex.Replace(
|
||||
Regex.Replace(
|
||||
str,
|
||||
@"(\P{Ll})(\P{Ll}\p{Ll})",
|
||||
"$1 $2"
|
||||
),
|
||||
@"(\p{Ll})(\P{Ll})",
|
||||
"$1 $2"
|
||||
);
|
||||
}
|
||||
|
||||
public static T RandomElement<T>(this IEnumerable<T> enumerable) => enumerable.ElementAt(Random.Range(0, enumerable.Count()));
|
||||
|
||||
public static float2 ToFloat2(this Vector2 v) => new float2(v.x, v.y);
|
||||
public static float3 ToFloat3(this Vector3 v) => new float3(v.x, v.y, v.z);
|
||||
public static Vector2 ToVector2(this float2 v) => new Vector2(v.x, v.y);
|
||||
public static Vector3 ToVector3(this float3 v) => new Vector3(v.x, v.y, v.z);
|
||||
|
||||
public static IDatabaseEntry Get(this Guid entry) => Database.Get(entry);
|
||||
public static T Get<T>(this Guid entry) where T : class, IDatabaseEntry => Database.Get(entry) as T;
|
||||
public static Guid GetId(this IDatabaseEntry entry) => entry.Entry.ID;
|
||||
public static string ToJson(this IDatabaseEntry entry) => MessagePackSerializer.SerializeToJson(entry);
|
||||
public static byte[] Serialize(this IDatabaseEntry entry) => MessagePackSerializer.Serialize(entry);
|
||||
|
||||
public static bool IsImplementationOf(this Type baseType, Type interfaceType)
|
||||
{
|
||||
return baseType.GetInterfaces().Any(interfaceType.Equals);
|
||||
}
|
||||
|
||||
private static readonly Dictionary<ICraftedItemInstance, float> Quality = new Dictionary<ICraftedItemInstance, float>();
|
||||
public static float CompoundQuality(this ICraftedItemInstance item)
|
||||
{
|
||||
if (Quality.ContainsKey(item)) return Quality[item];
|
||||
|
||||
var quality = item.CraftedQuality;
|
||||
|
||||
var craftedIngredients = item.CraftedIngredients.Where(i => i is ICraftedItemInstance).ToArray();
|
||||
if (craftedIngredients.Length > 0)
|
||||
{
|
||||
quality *= craftedIngredients.Cast<ICraftedItemInstance>().Average(CompoundQuality);
|
||||
}
|
||||
|
||||
Quality[item] = quality;
|
||||
|
||||
return Quality[item];
|
||||
}
|
||||
|
||||
private static readonly Dictionary<ICraftable, int> Tier = new Dictionary<ICraftable, int>();
|
||||
public static int ItemTier(this ICraftable item)
|
||||
{
|
||||
if (Tier.ContainsKey(item)) return Tier[item];
|
||||
|
||||
Tier[item] = item.CraftingIngredients.Keys.Max(ci => (Database.Get<IItem>(ci) as ICraftable)?.ItemTier() ?? 0);
|
||||
|
||||
return Tier[item];
|
||||
}
|
||||
|
||||
public static float Performance(this IEquippable item, float temperature)
|
||||
{
|
||||
return saturate(item.Equippable.HeatPerformanceCurve.Evaluate(saturate(
|
||||
(temperature - item.Equippable.MinimumTemperature) /
|
||||
(item.Equippable.MaximumTemperature - item.Equippable.MinimumTemperature))));
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue