From c42f3a27f7c36f17ecb3f6f7b662cd76a034e681 Mon Sep 17 00:00:00 2001 From: noname Date: Tue, 29 Nov 2022 00:50:16 +0900 Subject: [PATCH 1/5] . --- Assets/Resource/Dice/01_fire.png.meta | 53 +- Assets/Scenes/SampleScene.unity | 838 ++++++++++++-- .../Prefabs/NetworkModule.prefab | 4 +- .../NetworkModule/Scripts/FileHandler.cs | 20 + .../NetworkModule/Scripts/FileHandler.cs.meta | 11 + .../NetworkModule/Scripts/NetworkModule.cs | 62 +- .../NetworkModule/Scripts/RequestBuilder.cs | 97 ++ .../Scripts/RequestBuilder.cs.meta | 11 + .../NetworkModule/Scripts/RequestHandler.cs | 102 +- .../TestObject/NetworkModuleTest.cs | 83 +- .../TestObject/NetworkModuleTest.prefab | 185 ++- .../NetworkModule/TestObject/testFile.png | Bin 0 -> 20594 bytes .../TestObject/testFile.png.meta | 147 +++ UserSettings/Layouts/default-2021.dwlt | 1019 +++++++---------- 14 files changed, 1858 insertions(+), 774 deletions(-) create mode 100644 Assets/Scripts/NetworkModule/Scripts/FileHandler.cs create mode 100644 Assets/Scripts/NetworkModule/Scripts/FileHandler.cs.meta create mode 100644 Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs create mode 100644 Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs.meta create mode 100644 Assets/Scripts/NetworkModule/TestObject/testFile.png create mode 100644 Assets/Scripts/NetworkModule/TestObject/testFile.png.meta diff --git a/Assets/Resource/Dice/01_fire.png.meta b/Assets/Resource/Dice/01_fire.png.meta index 5e3f85b..0ffb0ac 100644 --- a/Assets/Resource/Dice/01_fire.png.meta +++ b/Assets/Resource/Dice/01_fire.png.meta @@ -3,7 +3,7 @@ guid: c5e7a64b6f8f1475683296844cb1ee32 TextureImporter: internalIDToNameTable: [] externalObjects: {} - serializedVersion: 11 + serializedVersion: 12 mipmaps: mipMapMode: 0 enableMipMap: 0 @@ -20,7 +20,7 @@ TextureImporter: externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 - isReadable: 0 + isReadable: 1 streamingMipmaps: 0 streamingMipmapsPriority: 0 vTOnly: 0 @@ -63,6 +63,7 @@ TextureImporter: textureFormatSet: 0 ignorePngGamma: 0 applyGammaDecoding: 0 + cookieLightType: 1 platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform @@ -76,6 +77,54 @@ TextureImporter: overridden: 0 androidETC2FallbackOverride: 0 forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 spriteSheet: serializedVersion: 2 sprites: [] diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index d624916..69615b3 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -602,6 +602,141 @@ MonoBehaviour: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 1 m_DragThreshold: 10 +--- !u!1 &420670441 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 420670442} + - component: {fileID: 420670444} + - component: {fileID: 420670443} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &420670442 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 420670441} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 2079967622} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &420670443 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 420670441} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: up + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 24 + m_fontSizeBase: 24 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &420670444 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 420670441} + m_CullTransparentMesh: 1 --- !u!1 &497353758 GameObject: m_ObjectHideFlags: 0 @@ -1016,6 +1151,7 @@ RectTransform: m_Children: - {fileID: 1466146358} - {fileID: 1912971680} + - {fileID: 916428258} m_Father: {fileID: 1013384290} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -1408,6 +1544,57 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 910201757} m_CullTransparentMesh: 1 +--- !u!1 &916428256 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 916428258} + - component: {fileID: 916428259} + m_Layer: 0 + m_Name: test + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &916428258 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 916428256} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2079967622} + - {fileID: 2042607823} + - {fileID: 1540895735} + m_Father: {fileID: 583945691} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &916428259 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 916428256} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 35cff7cbe2fa4ca08a61d912fad319c4, type: 3} + m_Name: + m_EditorClassIdentifier: + sampleImage: {fileID: 21300000, guid: 084c593aaf77047e3bfa8626260f95ea, type: 3} + btnUploadImage: {fileID: 2079967623} + btnDownloadImage: {fileID: 2042607824} + image: {fileID: 1540895736} --- !u!1 &922189857 GameObject: m_ObjectHideFlags: 0 @@ -1467,7 +1654,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 3432840878910967535, guid: 2e2ced5d8a6c34b2085c71657879cc15, type: 3} propertyPath: m_RootOrder - value: 13 + value: 12 objectReference: {fileID: 0} - target: {fileID: 3432840878910967535, guid: 2e2ced5d8a6c34b2085c71657879cc15, type: 3} propertyPath: m_LocalPosition.x @@ -1509,19 +1696,12 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: 7661625985247302100, guid: 2e2ced5d8a6c34b2085c71657879cc15, type: 3} + propertyPath: requestHandler + value: + objectReference: {fileID: 1206137632} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 2e2ced5d8a6c34b2085c71657879cc15, type: 3} ---- !u!114 &924530221 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 7661625985247302100, guid: 2e2ced5d8a6c34b2085c71657879cc15, type: 3} - m_PrefabInstance: {fileID: 924530220} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7300c990fdf293e498e987897572d45b, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &925759004 GameObject: m_ObjectHideFlags: 0 @@ -2364,6 +2544,74 @@ MonoBehaviour: m_EditorClassIdentifier: slotId: 4 occupied: 0 +--- !u!114 &1206137632 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5632738139156600354, guid: 2e2ced5d8a6c34b2085c71657879cc15, type: 3} + m_PrefabInstance: {fileID: 924530220} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5e14f3acd6cdd774fafd386fc8a0fd54, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &1213074556 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 5316088670829884935, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_Name + value: NetworkModuleTest + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} --- !u!1 &1237742221 GameObject: m_ObjectHideFlags: 0 @@ -2712,7 +2960,7 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1466146357 +--- !u!1 &1445092305 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -2720,53 +2968,188 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1466146358} + - component: {fileID: 1445092306} + - component: {fileID: 1445092308} + - component: {fileID: 1445092307} m_Layer: 5 - m_Name: bottomUI + m_Name: Text (TMP) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &1466146358 +--- !u!224 &1445092306 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1466146357} + m_GameObject: {fileID: 1445092305} 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_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 729618701} - - {fileID: 1237742222} - m_Father: {fileID: 583945691} + m_Children: [] + m_Father: {fileID: 2042607823} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0} - m_AnchorMax: {x: 0.5, y: 0} - m_AnchoredPosition: {x: 0, y: 50} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &1485285760 -GameObject: +--- !u!114 &1445092307 +MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1485285761} - - component: {fileID: 1485285762} - m_Layer: 0 - m_Name: LinePoint3 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 + m_GameObject: {fileID: 1445092305} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: down + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 24 + m_fontSizeBase: 24 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &1445092308 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1445092305} + m_CullTransparentMesh: 1 +--- !u!1 &1466146357 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1466146358} + m_Layer: 5 + m_Name: bottomUI + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1466146358 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1466146357} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 729618701} + - {fileID: 1237742222} + m_Father: {fileID: 583945691} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0} + m_AnchorMax: {x: 0.5, y: 0} + m_AnchoredPosition: {x: 0, y: 50} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &1485285760 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1485285761} + - component: {fileID: 1485285762} + m_Layer: 0 + m_Name: LinePoint3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 --- !u!4 &1485285761 Transform: m_ObjectHideFlags: 0 @@ -2915,6 +3298,82 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1512992333} m_CullTransparentMesh: 1 +--- !u!1 &1540895734 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1540895735} + - component: {fileID: 1540895737} + - component: {fileID: 1540895736} + m_Layer: 0 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1540895735 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1540895734} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 916428258} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 200} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1540895736 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1540895734} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1540895737 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1540895734} + m_CullTransparentMesh: 1 --- !u!1 &1551213701 GameObject: m_ObjectHideFlags: 0 @@ -3518,67 +3977,6 @@ MonoBehaviour: m_EditorClassIdentifier: slotId: 1 occupied: 0 ---- !u!1001 &1870363280 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 5316088670829884935, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_Name - value: NetworkModuleTest - objectReference: {fileID: 0} - - target: {fileID: 5522496125743907318, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: _networkModule - value: - objectReference: {fileID: 924530221} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_RootOrder - value: 12 - objectReference: {fileID: 0} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_LocalPosition.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} --- !u!1 &1886811645 GameObject: m_ObjectHideFlags: 0 @@ -3875,6 +4273,128 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2042607822 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2042607823} + - component: {fileID: 2042607826} + - component: {fileID: 2042607825} + - component: {fileID: 2042607824} + m_Layer: 5 + m_Name: down + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2042607823 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2042607822} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1445092306} + m_Father: {fileID: 916428258} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 100, y: 200} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &2042607824 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2042607822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 2042607825} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &2042607825 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2042607822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &2042607826 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2042607822} + m_CullTransparentMesh: 1 --- !u!1 &2043322306 GameObject: m_ObjectHideFlags: 0 @@ -3921,3 +4441,125 @@ MonoBehaviour: m_EditorClassIdentifier: slotId: 0 occupied: 0 +--- !u!1 &2079967621 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2079967622} + - component: {fileID: 2079967625} + - component: {fileID: 2079967624} + - component: {fileID: 2079967623} + m_Layer: 5 + m_Name: up + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2079967622 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2079967621} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 420670442} + m_Father: {fileID: 916428258} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -100, y: 200} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &2079967623 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2079967621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 2079967624} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &2079967624 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2079967621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &2079967625 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2079967621} + m_CullTransparentMesh: 1 diff --git a/Assets/Scripts/NetworkModule/Prefabs/NetworkModule.prefab b/Assets/Scripts/NetworkModule/Prefabs/NetworkModule.prefab index ae8c3b3..70780fe 100644 --- a/Assets/Scripts/NetworkModule/Prefabs/NetworkModule.prefab +++ b/Assets/Scripts/NetworkModule/Prefabs/NetworkModule.prefab @@ -45,7 +45,9 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7300c990fdf293e498e987897572d45b, type: 3} m_Name: m_EditorClassIdentifier: - _requestHandler: {fileID: 5632738139156600354} + networkCheckTic: 40 + networkTimeout: 3000 + requestHandler: {fileID: 5632738139156600354} --- !u!1001 &2552750793567811987 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs b/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs new file mode 100644 index 0000000..4ec31b0 --- /dev/null +++ b/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs @@ -0,0 +1,20 @@ +using UnityEngine; + +public class FileHandler +{ + public byte[] FileToByteArray(FileSection section, object file) + { + switch (section) + { + case FileSection.Image: + Texture2D source = (Texture2D)file; + Texture2D destination = new Texture2D(source.width, source.height); + Color[] pixels = source.GetPixels(0, 0, source.width, source.height); + destination.SetPixels(pixels); + destination.Apply(); + return destination.EncodeToPNG(); + default: + return null; + } + } +} diff --git a/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs.meta b/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs.meta new file mode 100644 index 0000000..f0eb51f --- /dev/null +++ b/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d6a2161f979ea4650b41f69bf67d4fdc +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs b/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs index 21cf26e..0bfdb59 100644 --- a/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs +++ b/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs @@ -2,17 +2,63 @@ using UnityEngine; using UnityEngine.Events; +public class FileForm +{ + public readonly FileSection Section; + public readonly string FileName; + public readonly object FileData; + + public FileForm(FileSection section, string fileName, object fileData) + { + Section = section; + FileName = fileName; + FileData = fileData; + } +} + +public enum FileSection +{ + None = 0, + Image, +} + public partial class NetworkModule // IO { - public void RequestGet(string uri, UnityAction<(bool, string)> callback = null) - => _requestHandler.RequestGet(uri, callback); - public void RequestPost(string uri, UnityAction<(bool, string)> callback = null, params KeyValuePair[] data) - => _requestHandler.RequestPost(uri, callback, data); - public void RequestPost(string uri, UnityAction<(bool, string)> callback = null, Dictionary data = null) - => _requestHandler.RequestPost(uri, callback, data); + public void RequestGet(string uri, UnityAction<(int, object)> callback = null, FileSection section = FileSection.None, params KeyValuePair[] data) + => requestHandler.RequestGet(uri, callback, section, data); + public void RequestGet(string uri, UnityAction<(int, object)> callback = null, FileSection section = FileSection.None, Dictionary data = null) + => requestHandler.RequestGet(uri, callback, section, data); + public void RequestPost(string uri, UnityAction<(int, object)> callback = null, params KeyValuePair[] data) + => requestHandler.RequestPost(uri, callback, data); + public void RequestPost(string uri, UnityAction<(int, object)> callback = null, Dictionary data = null) + => requestHandler.RequestPost(uri, callback, data); } -public partial class NetworkModule: MonoBehaviour +public partial class NetworkModule // setting values { - [SerializeField] private RequestHandler _requestHandler; + public int networkCheckTic = 10; // almost 24 fps (little over) + public int networkTimeout = 5000; } + +public partial class NetworkModule: MonoBehaviour // SerializeField +{ + [SerializeField] private RequestHandler requestHandler; +} + +public partial class NetworkModule +{ + private void Awake() + { + InitRequestHandler(); + } +} + +public partial class NetworkModule +{ + private void InitRequestHandler() + { + if (!requestHandler) return; + requestHandler.networkCheckTic = networkCheckTic; + requestHandler.networkTimeout = networkTimeout; + } +} \ No newline at end of file diff --git a/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs b/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs new file mode 100644 index 0000000..279fe49 --- /dev/null +++ b/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs @@ -0,0 +1,97 @@ +using System.Collections.Generic; +using System.Linq; +using System.Text; +using UnityEngine.Networking; + +public partial class RequestBuilder // IO +{ + public string QueryBuilder(FileSection fileSection, KeyValuePair[] source) + { + if (source == null || !source.Any()) return null; + BuildQueryData(source); + + return _queryBuilder.ToString(); + } + + public List MultipartFormBuilder(KeyValuePair[] source) + { + if (source == null || !source.Any()) return null; + BuildMultipartFormDataList(source); + BuildMultipartFormFileList(source); + + return _formDataList; + } + + public UnityWebRequest RequestGetType(FileSection section, string uri) + { + switch (section) + { + case FileSection.Image: + return UnityWebRequestTexture.GetTexture(uri); + default: + return UnityWebRequest.Get(uri); + } + } +} + +public partial class RequestBuilder +{ + private readonly List _formDataList = new(); + private readonly StringBuilder _queryBuilder = new(string.Empty); + + private void BuildMultipartFormDataList(IEnumerable> source) + { + foreach (var pair in source) + { + if (pair.Value is not string) continue; + if (0 < _queryBuilder.Length) _queryBuilder.Append("&"); + _queryBuilder.Append($"{pair.Key}={pair.Value}"); + } + + if (0 < _queryBuilder.Length) + { + _formDataList.Add(new MultipartFormDataSection(_queryBuilder.ToString())); + } + } + + private void BuildMultipartFormFileList(IEnumerable> source) + { + foreach (KeyValuePair pair in source) + { + if (pair.Value is not FileForm fileForm) continue; + _formDataList.Add(new MultipartFormFileSection( + fileForm.Section.ToString(), + new FileHandler().FileToByteArray(fileForm.Section, fileForm.FileData), + fileForm.FileName, + "multipart/form-data")); + } + } + + private void BuildQueryData(KeyValuePair[] source) + { + StringBuilder query = new StringBuilder(string.Empty); + + foreach (KeyValuePair pair in source) + { + if (0 < query.Length) + { + query.Append("&"); + } + query.Append(pair.Key); + query.Append("="); + query.Append(pair.Value); + } + + _queryBuilder.Append("?"); + _queryBuilder.Append(query); + } +} + +public partial class RequestBuilder +{ + private List SetMultipartForm() + => _formDataList.Any() ? _formDataList : null; + + private string SetQuery() + => 0 < _queryBuilder.Length ? _queryBuilder.ToString() : null; +} diff --git a/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs.meta b/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs.meta new file mode 100644 index 0000000..781d116 --- /dev/null +++ b/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 36a202a607959431ab4f8b110c168c8f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs b/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs index 5752a23..bae13d2 100644 --- a/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs +++ b/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs @@ -1,5 +1,6 @@ using System.Collections; using System.Collections.Generic; +using System.Linq; using System.Threading.Tasks; using UnityEngine; using UnityEngine.Events; @@ -7,82 +8,99 @@ public partial class RequestHandler { - public void RequestGet(string uri, UnityAction<(bool, string)> callback = null) => _RequestGet(uri, callback); - public void RequestPost(string uri, UnityAction<(bool, string)> callback = null, params KeyValuePair[] data) => _RequestPost(uri, data, callback); - public void RequestPost(string uri, UnityAction<(bool, string)> callback = null, Dictionary data = null) => _RequestPost(uri, data, callback); + public void RequestGet(string uri, UnityAction<(int, object)> callback = null, FileSection section = FileSection.None, params KeyValuePair[] data) + => _RequestGet(uri, data, section, callback); + public void RequestGet(string uri, UnityAction<(int, object)> callback = null, FileSection section = FileSection.None, Dictionary data = null) + => _RequestGet(uri, data?.ToArray(), section, callback); + public void RequestPost(string uri, UnityAction<(int, object)> callback = null, params KeyValuePair[] data) + => _RequestPost(uri, data, callback); + public void RequestPost(string uri, UnityAction<(int, object)> callback = null, Dictionary data = null) + => _RequestPost(uri, data?.ToArray(), callback); + + public int networkCheckTic { get; set; } + public int networkTimeout { get; set; } } public partial class RequestHandler: MonoBehaviour { - private readonly Dictionary _requestResult = new(); + private readonly Dictionary _requestResult = new(); private int _requestId; - private const int Tic = 40; // almost 24 fps (little over) - private const int TimeOut = 3000; - private void _RequestGet(string uri, UnityAction<(bool, string)> callback) + private void _RequestGet(string uri, KeyValuePair[] data, FileSection section, UnityAction<(int, object)> callback) { int requestId = _requestId++; - StartCoroutine(GetRequest(uri, requestId)); + string buildUri = $"{uri}{new RequestBuilder().QueryBuilder(section, data)}"; + StartCoroutine(GetRequest(buildUri, section, requestId)); WaitTaskAndRunCallback(requestId, callback); } - private void _RequestPost(string uri, IEnumerable> data, UnityAction<(bool, string)> callback) + private void _RequestPost(string uri, KeyValuePair[] data, UnityAction<(int, object)> callback) { int requestId = _requestId++; - StartCoroutine(PostRequest(uri, data, requestId)); + StartCoroutine(PostRequest(uri, new RequestBuilder().MultipartFormBuilder(data), requestId)); WaitTaskAndRunCallback(requestId, callback); } - - private async void WaitTaskAndRunCallback(int requestId, UnityAction<(bool, string)> callback) + + private IEnumerator GetRequest(string uri, FileSection section, int requestId) { - while (!_requestResult.ContainsKey(requestId)) - { - await Task.Delay(Tic); - } - - callback?.Invoke(_requestResult[requestId]); - _requestResult.Remove(requestId); - } + using UnityWebRequest webRequest = new RequestBuilder().RequestGetType(section, uri); + webRequest.timeout = networkTimeout; - private IEnumerator GetRequest(string uri, int requestId) - { - using UnityWebRequest webRequest = UnityWebRequest.Get(uri); - webRequest.timeout = TimeOut; yield return webRequest.SendWebRequest(); - DisposeWebRequestResult(webRequest, requestId); + DisposeWebRequestResult(section, webRequest, requestId); } - private IEnumerator PostRequest(string uri, IEnumerable> data, int requestId) + private IEnumerator PostRequest(string uri, List form, int requestId) { - WWWForm form = ConvertToWWWForm(data); using UnityWebRequest webRequest = UnityWebRequest.Post(uri, form); + webRequest.timeout = networkTimeout; yield return webRequest.SendWebRequest(); - DisposeWebRequestResult(webRequest, requestId); + DisposeWebRequestResult(FileSection.None, webRequest, requestId); + } + + private async void WaitTaskAndRunCallback(int requestId, UnityAction<(int, object)> callback) + { + while (!_requestResult.ContainsKey(requestId)) + { + await Task.Delay(networkCheckTic); + } + + callback?.Invoke(_requestResult[requestId]); + _requestResult.Remove(requestId); } - private void DisposeWebRequestResult(UnityWebRequest webRequest, int requestId) + private void DisposeWebRequestResult(FileSection section, UnityWebRequest webRequest, int requestId) { - (bool success, string payload) item = new () + (int statusCode, object payload) item = new () { - success = webRequest.result is UnityWebRequest.Result.Success + statusCode = (int)webRequest.responseCode }; - item.payload = item.success ? webRequest.downloadHandler.text : webRequest.error; + if (item.statusCode < 300) + { + SetPayload(section, webRequest, out item.payload); + } + else + { + item.payload = webRequest.error; + } + _requestResult.Add(requestId, item); } - private static WWWForm ConvertToWWWForm(IEnumerable> source) + private static void SetPayload(FileSection section, UnityWebRequest webRequest, out object payload) { - WWWForm form = new WWWForm(); - - if (source == null) return null; - - foreach (KeyValuePair element in source) + switch (section) { - form.AddField(element.Key, element.Value); + case FileSection.Image: + // sprite를 담아줄까? texture2D를 담아줄까? + // payload = ((DownloadHandlerTexture)webRequest.downloadHandler).texture; + Texture2D texture2D = ((DownloadHandlerTexture)webRequest.downloadHandler).texture; + payload = Sprite.Create(texture2D, new Rect(0, 0, texture2D.width, texture2D.height), Vector2.one * .5f); + break; + default: + payload = webRequest.downloadHandler.text; + break; } - - return form; } } - diff --git a/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs b/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs index b8f29c1..33541de 100644 --- a/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs +++ b/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs @@ -1,15 +1,25 @@ +using System; using System.Collections; using System.Collections.Generic; -using System.Linq; -using UnityEditor; using UnityEngine; +internal struct RequestUrl +{ + public string requestType; + public string requestUrl; +} + + public class NetworkModuleTest : MonoBehaviour { - [SerializeField] private NetworkModule _networkModule; + [SerializeField] private NetworkModule networkModule; + [SerializeField] private Sprite sprite; + [SerializeField] private UnityEngine.UI.Image image; + [SerializeField] private Canvas canvas; private const string Uri0 = "naver0.com"; // wrong private const string Uri1 = "google.com"; // correct private const string Post0 = "https://jsonplaceholder.typicode.com/posts"; + private const string PostUpload = "http://localhost:3000/api/uploadimage"; private IEnumerator Start() { @@ -18,33 +28,82 @@ private IEnumerator Start() yield return null; NetReqGetTest(Uri1); yield return null; + NetReqGetQueryTest(Post0); + yield return null; NetReqPostTest(Post0); + yield return null; + NetReqPostUpload(PostUpload); } private void NetReqGetTest(string uri) { - _networkModule?.RequestGet(uri, PrintResult); + networkModule?.RequestGet(uri, PrintResult); } + private void NetReqGetQueryTest(string uri) + { + KeyValuePair pair = new("userId", "1"); + networkModule?.RequestGet(uri, PrintResult, FileSection.None, pair); + + Dictionary data = new() { { "userId", "1" }, {"id", "1"} }; + networkModule?.RequestGet(uri, PrintResult, FileSection.None, data); + } + + private void NetReqPostTest(string uri) { - if (_networkModule == null) + if (networkModule == null) { return; } - KeyValuePair pair = new("pair test key 0", "pair test value 0"); + KeyValuePair pair = new("pair test key 0", "pair test value 0"); + Dictionary data = new() { { "dic test key 0", "dic test value 0" } }; + } + + private void NetReqPostUpload(string uri) + { + if (networkModule == null) + { + return; + } - Dictionary data = new() { { "dic test key 0", "dic test value 0" } }; + KeyValuePair imgPair = new("image.png", new FileForm(FileSection.Image, "image.png", sprite.texture)); + networkModule.RequestPost(uri, PrintResultAndDownload, imgPair); + } + + private void PrintResultAndDownload((int statusCode, object payload) request) + { + Debug.Log($"statusCode = {request.statusCode}"); + Debug.Log($"payload = {request.payload}"); - _networkModule.RequestPost(uri, PrintResult, pair); - _networkModule.RequestPost(uri, PrintResult, data); - _networkModule.RequestPost(uri, PrintResult); + var req = JsonUtility.FromJson(request.payload.ToString()); + var reqType = req.requestType; + var reqUrl = req.requestUrl; + + networkModule.RequestGet(reqUrl, DrawImage, FileSection.Image); } - private static void PrintResult((bool result, string payload) request) + private void DrawImage((int statusCode, object payload) request) + { + Debug.Log($"request.statusCode in DrawImage: {request.statusCode}"); + + if (request.statusCode >= 300) + { + Debug.LogError($"request.statusCode in DrawImage: {request.statusCode}"); + Debug.LogError($"request.payload in DrawImage: {request.payload}"); + return; + } + + // Texture2D texture2D = (Texture2D)request.payload; + // Sprite toSprite = Sprite.Create(texture2D, new Rect(0, 0, texture2D.width, texture2D.height), Vector2.one * .5f); + // image.sprite = toSprite; + image.sprite = (Sprite)request.payload; + } + + private void PrintResult((int statusCode, object payload) request) { - Debug.Log($"result = {request.result}"); + Debug.Log($"statusCode = {request.statusCode}"); Debug.Log($"payload = {request.payload}"); } } diff --git a/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.prefab b/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.prefab index 1b61fd6..112f59d 100644 --- a/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.prefab +++ b/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.prefab @@ -1,5 +1,81 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1 &3374976550816570891 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2566145865323036429} + - component: {fileID: 1457725136249631811} + - component: {fileID: 8883561202207683947} + m_Layer: 5 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2566145865323036429 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3374976550816570891} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4523746418993939074} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 200} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1457725136249631811 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3374976550816570891} + m_CullTransparentMesh: 1 +--- !u!114 &8883561202207683947 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3374976550816570891} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 --- !u!1 &5316088670829884935 GameObject: m_ObjectHideFlags: 0 @@ -28,7 +104,8 @@ Transform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 4523746418993939074} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -44,4 +121,108 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 0bbbe0d55566749c4ba14d30833efe55, type: 3} m_Name: m_EditorClassIdentifier: - _networkModule: {fileID: 0} + networkModule: {fileID: 0} + sprite: {fileID: 21300000, guid: 084c593aaf77047e3bfa8626260f95ea, type: 3} + image: {fileID: 8883561202207683947} + canvas: {fileID: 1683856704834123808} +--- !u!1 &5856383369109431582 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4523746418993939074} + - component: {fileID: 1683856704834123808} + - component: {fileID: 7679423430626018670} + - component: {fileID: 6623537368709146177} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4523746418993939074 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5856383369109431582} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2566145865323036429} + m_Father: {fileID: 8063823062617214637} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!223 &1683856704834123808 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5856383369109431582} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!114 &7679423430626018670 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5856383369109431582} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!114 &6623537368709146177 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5856383369109431582} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 diff --git a/Assets/Scripts/NetworkModule/TestObject/testFile.png b/Assets/Scripts/NetworkModule/TestObject/testFile.png new file mode 100644 index 0000000000000000000000000000000000000000..a28a4ef76d2fb43522735d83f645de7002671851 GIT binary patch literal 20594 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 literal 0 HcmV?d00001 diff --git a/Assets/Scripts/NetworkModule/TestObject/testFile.png.meta b/Assets/Scripts/NetworkModule/TestObject/testFile.png.meta new file mode 100644 index 0000000..21db2f1 --- /dev/null +++ b/Assets/Scripts/NetworkModule/TestObject/testFile.png.meta @@ -0,0 +1,147 @@ +fileFormatVersion: 2 +guid: 084c593aaf77047e3bfa8626260f95ea +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMasterTextureLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/UserSettings/Layouts/default-2021.dwlt b/UserSettings/Layouts/default-2021.dwlt index aab6570..77111f1 100644 --- a/UserSettings/Layouts/default-2021.dwlt +++ b/UserSettings/Layouts/default-2021.dwlt @@ -8,19 +8,19 @@ MonoBehaviour: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 - m_EditorHideFlags: 0 + m_EditorHideFlags: 1 m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: m_PixelRect: serializedVersion: 2 x: 0 - y: 42.666668 - width: 2560 - height: 1349.3334 + y: 66 + width: 1728 + height: 977 m_ShowMode: 4 - m_Title: Hierarchy - m_RootView: {fileID: 2} + m_Title: Console + m_RootView: {fileID: 8} m_MinSize: {x: 875, y: 300} m_MaxSize: {x: 10000, y: 10000} m_Maximized: 1 @@ -32,26 +32,24 @@ MonoBehaviour: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 - m_EditorHideFlags: 1 - m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} - m_Name: + m_EditorHideFlags: 0 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: ConsoleWindow m_EditorClassIdentifier: - m_Children: - - {fileID: 3} - - {fileID: 5} - - {fileID: 4} + m_Children: [] m_Position: serializedVersion: 2 - x: 0 + x: 414.5 y: 0 - width: 2560 - height: 1349.3334 - m_MinSize: {x: 875, y: 300} - m_MaxSize: {x: 10000, y: 10000} - m_UseTopView: 1 - m_TopViewHeight: 30 - m_UseBottomView: 1 - m_BottomViewHeight: 20 + width: 905 + height: 377.5 + m_MinSize: {x: 102, y: 121} + m_MaxSize: {x: 4002, y: 4021} + m_ActualView: {fileID: 19} + m_Panes: + - {fileID: 19} + m_Selected: 0 + m_LastSelected: 0 --- !u!114 &3 MonoBehaviour: m_ObjectHideFlags: 52 @@ -60,42 +58,24 @@ MonoBehaviour: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 - m_EditorHideFlags: 1 - m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_EditorHideFlags: 0 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: - m_Children: [] + m_Children: + - {fileID: 7} + - {fileID: 2} m_Position: serializedVersion: 2 x: 0 - y: 0 - width: 2560 - height: 30 - m_MinSize: {x: 0, y: 0} - m_MaxSize: {x: 0, y: 0} - m_LastLoadedLayoutName: + y: 549.5 + width: 1319.5 + height: 377.5 + m_MinSize: {x: 200, y: 100} + m_MaxSize: {x: 16192, y: 8096} + vertical: 0 + controlID: 5539 --- !u!114 &4 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 1 - m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} - m_Name: - m_EditorClassIdentifier: - m_Children: [] - m_Position: - serializedVersion: 2 - x: 0 - y: 1329.3334 - width: 2560 - height: 20 - m_MinSize: {x: 0, y: 0} - m_MaxSize: {x: 0, y: 0} ---- !u!114 &5 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -108,19 +88,19 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Children: - - {fileID: 6} - {fileID: 11} + - {fileID: 5} m_Position: serializedVersion: 2 x: 0 y: 30 - width: 2560 - height: 1299.3334 + width: 1728 + height: 927 m_MinSize: {x: 300, y: 200} m_MaxSize: {x: 24288, y: 16192} vertical: 0 - controlID: 71 ---- !u!114 &6 + controlID: 96 +--- !u!114 &5 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -129,23 +109,24 @@ MonoBehaviour: m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 1 - m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: - m_Children: - - {fileID: 7} - - {fileID: 10} + m_Children: [] m_Position: serializedVersion: 2 - x: 0 + x: 1319.5 y: 0 - width: 1006 - height: 1299.3334 - m_MinSize: {x: 100, y: 200} - m_MaxSize: {x: 8096, y: 16192} - vertical: 1 - controlID: 164 ---- !u!114 &7 + width: 408.5 + height: 927 + m_MinSize: {x: 276, y: 71} + m_MaxSize: {x: 4001, y: 4021} + m_ActualView: {fileID: 15} + m_Panes: + - {fileID: 15} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &6 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -154,27 +135,24 @@ MonoBehaviour: m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 1 - m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: - m_Children: - - {fileID: 8} - - {fileID: 9} + m_Children: [] m_Position: serializedVersion: 2 x: 0 y: 0 - width: 1006 - height: 180 - m_MinSize: {x: 201, y: 221} - m_MaxSize: {x: 4001, y: 4021} + width: 325.5 + height: 549.5 + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} m_ActualView: {fileID: 16} m_Panes: - {fileID: 16} - - {fileID: 17} m_Selected: 0 - m_LastSelected: 1 ---- !u!114 &8 + m_LastSelected: 0 +--- !u!114 &7 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -184,23 +162,23 @@ MonoBehaviour: m_Enabled: 1 m_EditorHideFlags: 1 m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} - m_Name: + m_Name: ProjectBrowser m_EditorClassIdentifier: m_Children: [] m_Position: serializedVersion: 2 x: 0 - y: 180 - width: 1006 - height: 1119.3334 - m_MinSize: {x: 200, y: 200} - m_MaxSize: {x: 4000, y: 4000} - m_ActualView: {fileID: 15} + y: 0 + width: 414.5 + height: 377.5 + m_MinSize: {x: 231, y: 271} + m_MaxSize: {x: 10001, y: 10021} + m_ActualView: {fileID: 14} m_Panes: - - {fileID: 13} + - {fileID: 14} m_Selected: 0 m_LastSelected: 0 ---- !u!114 &9 +--- !u!114 &8 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -208,24 +186,27 @@ MonoBehaviour: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_EditorHideFlags: 1 + m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: m_Children: + - {fileID: 9} + - {fileID: 4} - {fileID: 10} - - {fileID: 11} m_Position: serializedVersion: 2 - x: 1006 + x: 0 y: 0 - width: 980 - height: 1299.3334 - m_MinSize: {x: 100, y: 200} - m_MaxSize: {x: 8096, y: 16192} - vertical: 1 - controlID: 72 ---- !u!114 &10 + width: 1728 + height: 977 + m_MinSize: {x: 875, y: 300} + m_MaxSize: {x: 10000, y: 10000} + m_UseTopView: 1 + m_TopViewHeight: 30 + m_UseBottomView: 1 + m_BottomViewHeight: 20 +--- !u!114 &9 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -234,24 +215,19 @@ MonoBehaviour: m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 1 - m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} - m_Name: GameView + m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_Name: m_EditorClassIdentifier: m_Children: [] m_Position: serializedVersion: 2 - x: 272 + x: 0 y: 0 - width: 980 - height: 662 - m_MinSize: {x: 200, y: 200} - m_MaxSize: {x: 4000, y: 4000} - m_ActualView: {fileID: 18} - m_Panes: - - {fileID: 12} - - {fileID: 14} - m_Selected: 1 - m_LastSelected: 0 + width: 1728 + height: 30 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} + m_LastLoadedLayoutName: --- !u!114 &10 MonoBehaviour: m_ObjectHideFlags: 52 @@ -261,25 +237,19 @@ MonoBehaviour: m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 1 - m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} - m_Name: ConsoleWindow + m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} + m_Name: m_EditorClassIdentifier: m_Children: [] m_Position: serializedVersion: 2 x: 0 - y: 662 - width: 980 - height: 637.3334 - m_MinSize: {x: 232, y: 271} - m_MaxSize: {x: 10002, y: 10021} - m_ActualView: {fileID: 19} - m_Panes: - - {fileID: 15} - - {fileID: 16} - m_Selected: 1 - m_LastSelected: 0 ---- !u!114 &12 + y: 957 + width: 1728 + height: 20 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} +--- !u!114 &11 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -287,24 +257,24 @@ MonoBehaviour: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 - m_EditorHideFlags: 0 + m_EditorHideFlags: 1 m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: m_Children: - - {fileID: 13} - - {fileID: 14} + - {fileID: 12} + - {fileID: 3} m_Position: serializedVersion: 2 - x: 1986 + x: 0 y: 0 - width: 574 - height: 1299.3334 - m_MinSize: {x: 100, y: 200} - m_MaxSize: {x: 8096, y: 16192} + width: 1319.5 + height: 927 + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 16192, y: 16192} vertical: 1 - controlID: 100 ---- !u!114 &13 + controlID: 97 +--- !u!114 &12 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -313,25 +283,23 @@ MonoBehaviour: m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 1 - m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: - m_Children: [] + m_Children: + - {fileID: 6} + - {fileID: 13} m_Position: serializedVersion: 2 - x: 1099 + x: 0 y: 0 - width: 574 - height: 718 - m_MinSize: {x: 275, y: 50} - m_MaxSize: {x: 4000, y: 4000} - m_ActualView: {fileID: 20} - m_Panes: - - {fileID: 20} - - {fileID: 21} - m_Selected: 0 - m_LastSelected: 1 ---- !u!114 &14 + width: 1319.5 + height: 549.5 + m_MinSize: {x: 200, y: 100} + m_MaxSize: {x: 16192, y: 8096} + vertical: 0 + controlID: 98 +--- !u!114 &13 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -339,25 +307,26 @@ MonoBehaviour: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 - m_EditorHideFlags: 0 + m_EditorHideFlags: 1 m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} - m_Name: ConsoleWindow + m_Name: SceneView m_EditorClassIdentifier: m_Children: [] m_Position: serializedVersion: 2 - x: 0 - y: 718 - width: 574 - height: 581.3334 - m_MinSize: {x: 100, y: 100} - m_MaxSize: {x: 4000, y: 4000} - m_ActualView: {fileID: 22} + x: 325.5 + y: 0 + width: 994 + height: 549.5 + m_MinSize: {x: 202, y: 221} + m_MaxSize: {x: 4002, y: 4021} + m_ActualView: {fileID: 17} m_Panes: - {fileID: 17} + - {fileID: 18} m_Selected: 0 - m_LastSelected: 0 ---- !u!114 &15 + m_LastSelected: 1 +--- !u!114 &14 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -366,114 +335,260 @@ MonoBehaviour: m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 1 - m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: - m_MinSize: {x: 200, y: 200} - m_MaxSize: {x: 4000, y: 4000} + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} m_TitleContent: - m_Text: Game - m_Image: {fileID: 4621777727084837110, guid: 0000000000000000d000000000000000, type: 0} + m_Text: Project + m_Image: {fileID: -5179483145760003458, guid: 0000000000000000d000000000000000, type: 0} m_Tooltip: m_Pos: serializedVersion: 2 x: 0 - y: 252.66667 - width: 1005 - height: 1098.3334 + y: 645.5 + width: 413.5 + height: 356.5 m_ViewDataDictionary: {fileID: 0} m_OverlayCanvas: m_LastAppliedPresetName: Default m_SaveData: [] - m_SerializedViewNames: [] - m_SerializedViewValues: [] - m_PlayModeViewName: GameView - m_ShowGizmos: 0 - m_TargetDisplay: 0 - m_ClearColor: {r: 0, g: 0, b: 0, a: 0} - m_TargetSize: {x: 1080, y: 1920} - m_TextureFilterMode: 0 - m_TextureHideFlags: 61 - m_RenderIMGUI: 1 - m_EnterPlayModeBehavior: 0 - m_UseMipMap: 0 - m_VSyncEnabled: 0 - m_Gizmos: 0 - m_Stats: 0 - m_SelectedSizes: 07000000000000000000000000000000000000000000000000000000000000000000000000000000 - m_ZoomArea: - m_HRangeLocked: 0 - m_VRangeLocked: 0 - hZoomLockedByDefault: 0 - vZoomLockedByDefault: 0 - m_HBaseRangeMin: -360 - m_HBaseRangeMax: 360 - m_VBaseRangeMin: -640 - m_VBaseRangeMax: 640 - m_HAllowExceedBaseRangeMin: 1 - m_HAllowExceedBaseRangeMax: 1 - m_VAllowExceedBaseRangeMin: 1 - m_VAllowExceedBaseRangeMax: 1 - m_ScaleWithWindow: 0 - m_HSlider: 0 - m_VSlider: 0 - m_IgnoreScrollWheelUntilClicked: 0 - m_EnableMouseInput: 1 - m_EnableSliderZoomHorizontal: 0 - m_EnableSliderZoomVertical: 0 - m_UniformScale: 1 - m_UpDirection: 1 - m_DrawArea: - serializedVersion: 2 - x: 0 - y: 21 - width: 1005 - height: 1077.3334 - m_Scale: {x: 0.8416667, y: 0.8416667} - m_Translation: {x: 502.5, y: 538.6667} - m_MarginLeft: 0 - m_MarginRight: 0 - m_MarginTop: 0 - m_MarginBottom: 0 - m_LastShownAreaInsideMargins: - serializedVersion: 2 - x: -597.02966 - y: -640 - width: 1194.0593 - height: 1280 - m_MinimalGUI: 1 - m_defaultScale: 0.8416667 - m_LastWindowPixelSize: {x: 1507.5, y: 1647.5} - m_ClearInEditMode: 1 - m_NoCameraWarning: 1 - m_LowResolutionForAspectRatios: 00000000000000000000 - m_XRRenderMode: 0 - m_RenderTexture: {fileID: 0} ---- !u!114 &16 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 1 - m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} - m_Name: - m_EditorClassIdentifier: - m_MinSize: {x: 200, y: 200} - m_MaxSize: {x: 4000, y: 4000} - m_TitleContent: - m_Text: Scene - m_Image: {fileID: 8634526014445323508, guid: 0000000000000000d000000000000000, type: 0} - m_Tooltip: - m_Pos: - serializedVersion: 2 - x: 0 - y: 72.66667 - width: 1005 - height: 159 - m_ViewDataDictionary: {fileID: 0} + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_SceneHandles: + m_ShowAllHits: 0 + m_SkipHidden: 0 + m_SearchArea: 1 + m_Folders: + - Assets/Scripts/NetworkModule/Scripts + m_Globs: [] + m_OriginalText: + m_ViewMode: 1 + m_StartGridSize: 16 + m_LastFolders: + - Assets/Scripts/NetworkModule/Scripts + m_LastFoldersGridSize: 16 + m_LastProjectPath: /Users/noname/unity project/RandomDiceDefense42-Client + m_LockTracker: + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 307.5} + m_SelectedIDs: 627b0000 + m_LastClickedID: 31586 + m_ExpandedIDs: 000000003c6400003e6400004064000042640000446400007864000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 000000003c6400003e640000406400004264000044640000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: + m_LastClickedInstanceID: 0 + m_HadKeyboardFocusLastEvent: 0 + m_ExpandedInstanceIDs: c6230000b263000034630000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 7} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 16 + m_SkipHiddenPackages: 0 + m_DirectoriesAreaWidth: 207 +--- !u!114 &15 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -440750813802333266, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1319.5 + y: 96 + width: 407.5 + height: 906 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_ObjectsLockedBeforeSerialization: [] + m_InstanceIDsLockedBeforeSerialization: + m_PreviewResizer: + m_CachedPref: 160 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_LastInspectedObjectInstanceID: -1 + m_LastVerticalScrollValue: 0 + m_GlobalObjectId: + m_InspectorMode: 0 + m_LockTracker: + m_IsLocked: 0 + m_PreviewWindow: {fileID: 0} +--- !u!114 &16 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: -3734745235275155857, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 96 + width: 324.5 + height: 528.5 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_SceneHierarchy: + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: ce220100 + m_LastClickedID: 0 + m_ExpandedIDs: 9e9ae0ffb09ae0ffb69ae0ffac91f7ffc491f7ff2092f7ff3892f7ffb2b1f8ff00fbffff24fbffffd860000026610000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: Image + m_OriginalName: Image + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: -2057562 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 0 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 6} + m_SearchString: + m_ExpandedScenes: [] + m_CurrenRootInstanceID: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentSortingName: TransformSorting + m_WindowGUID: 4c969a2b90040154d917609493e03593 +--- !u!114 &17 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 8634526014445323508, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 325.5 + y: 96 + width: 992 + height: 528.5 + m_ViewDataDictionary: {fileID: 0} m_OverlayCanvas: m_LastAppliedPresetName: Default m_SaveData: @@ -482,8 +597,8 @@ MonoBehaviour: floating: 0 collapsed: 0 displayed: 1 - snapOffset: {x: 0, y: 0} - snapOffsetDelta: {x: -98.66669, y: -26} + snapOffset: {x: -101, y: -26} + snapOffsetDelta: {x: 0, y: 0} snapCorner: 3 id: Tool Settings index: 0 @@ -494,7 +609,7 @@ MonoBehaviour: collapsed: 0 displayed: 1 snapOffset: {x: -141, y: 149} - snapOffsetDelta: {x: 0, y: -16.333328} + snapOffsetDelta: {x: 0, y: 0} snapCorner: 1 id: unity-grid-and-snap-toolbar index: 1 @@ -504,7 +619,7 @@ MonoBehaviour: floating: 0 collapsed: 0 displayed: 1 - snapOffset: {x: 0, y: 0} + snapOffset: {x: 0, y: 25} snapOffsetDelta: {x: 0, y: 0} snapCorner: 0 id: unity-scene-view-toolbar @@ -548,7 +663,7 @@ MonoBehaviour: floating: 0 collapsed: 0 displayed: 1 - snapOffset: {x: 0, y: 0} + snapOffset: {x: 0, y: 25} snapOffsetDelta: {x: 0, y: 0} snapCorner: 0 id: unity-transform-toolbar @@ -696,9 +811,9 @@ MonoBehaviour: m_PlayAudio: 0 m_AudioPlay: 0 m_Position: - m_Target: {x: 0, y: 0, z: 0} + m_Target: {x: 992, y: 507.5, z: 0} speed: 2 - m_Value: {x: 0, y: 0, z: 0} + m_Value: {x: 992, y: 507.5, z: 0} m_RenderMode: 0 m_CameraMode: drawMode: 0 @@ -749,9 +864,9 @@ MonoBehaviour: speed: 2 m_Value: {x: 0, y: 0, z: 0, w: 1} m_Size: - m_Target: 6.3530984 + m_Target: 1114.2802 speed: 2 - m_Value: 6.3530984 + m_Value: 1114.2802 m_Ortho: m_Target: 1 speed: 2 @@ -776,99 +891,7 @@ MonoBehaviour: m_SceneVisActive: 1 m_LastLockedObject: {fileID: 0} m_ViewIsLockedToObject: 0 ---- !u!114 &17 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 687acdc95675db149bf5de5771ecac18, type: 3} - m_Name: SpriteEditorWindow - m_EditorClassIdentifier: - m_MinSize: {x: 360, y: 200} - m_MaxSize: {x: 4000, y: 4000} - m_TitleContent: - m_Text: Sprite Editor - m_Image: {fileID: 0} - m_Tooltip: - m_Pos: - serializedVersion: 2 - x: 0 - y: 83 - width: 755.5 - height: 387 - m_ViewDataDictionary: {fileID: 0} - m_OverlayCanvas: - m_LastAppliedPresetName: Default - m_SaveData: [] - m_ShowAlpha: 0 - m_MipLevel: 0 - m_Zoom: -1 - m_ScrollPosition: {x: 0, y: 0} - m_SelectedObject: {fileID: 11500000, guid: 7300c990fdf293e498e987897572d45b, type: 3} - m_SelectedSpriteRectGUID: 00000000000000000000000000000000 - m_LastUsedModuleTypeName: --- !u!114 &18 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 1 - m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} - m_Name: - m_EditorClassIdentifier: - m_MinSize: {x: 200, y: 200} - m_MaxSize: {x: 4000, y: 4000} - m_TitleContent: - m_Text: Hierarchy - m_Image: {fileID: -3734745235275155857, guid: 0000000000000000d000000000000000, type: 0} - m_Tooltip: - m_Pos: - serializedVersion: 2 - x: 1006 - y: 72.66667 - width: 978 - height: 641 - m_ViewDataDictionary: {fileID: 0} - m_OverlayCanvas: - m_LastAppliedPresetName: Default - m_SaveData: [] - m_SceneHierarchy: - m_TreeViewState: - scrollPos: {x: 0, y: 0} - m_SelectedIDs: - m_LastClickedID: 0 - m_ExpandedIDs: 26faffff - m_RenameOverlay: - m_UserAcceptedRename: 0 - m_Name: - m_OriginalName: - m_EditFieldRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 0 - height: 0 - m_UserData: 0 - m_IsWaitingForDelay: 0 - m_IsRenaming: 0 - m_OriginalEventType: 11 - m_IsRenamingFilename: 0 - m_ClientGUIView: {fileID: 0} - m_SearchString: - m_ExpandedScenes: [] - m_CurrenRootInstanceID: 0 - m_LockTracker: - m_IsLocked: 0 - m_CurrentSortingName: TransformSorting - m_WindowGUID: 4c969a2b90040154d917609493e03593 ---- !u!114 &14 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -888,10 +911,10 @@ MonoBehaviour: m_Tooltip: m_Pos: serializedVersion: 2 - x: 272 - y: 54 - width: 825 - height: 468.5 + x: 325.5 + y: 96 + width: 992 + height: 528.5 m_ViewDataDictionary: {fileID: 0} m_OverlayCanvas: m_LastAppliedPresetName: Default @@ -902,7 +925,7 @@ MonoBehaviour: m_ShowGizmos: 0 m_TargetDisplay: 0 m_ClearColor: {r: 0, g: 0, b: 0, a: 0} - m_TargetSize: {x: 1080, y: 1920} + m_TargetSize: {x: 1984, y: 1015} m_TextureFilterMode: 0 m_TextureHideFlags: 61 m_RenderIMGUI: 1 @@ -911,16 +934,16 @@ MonoBehaviour: m_VSyncEnabled: 0 m_Gizmos: 0 m_Stats: 0 - m_SelectedSizes: 07000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_SelectedSizes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000 m_ZoomArea: m_HRangeLocked: 0 m_VRangeLocked: 0 hZoomLockedByDefault: 0 vZoomLockedByDefault: 0 - m_HBaseRangeMin: -270 - m_HBaseRangeMax: 270 - m_VBaseRangeMin: -480 - m_VBaseRangeMax: 480 + m_HBaseRangeMin: -496 + m_HBaseRangeMax: 496 + m_VBaseRangeMin: -253.75 + m_VBaseRangeMax: 253.75 m_HAllowExceedBaseRangeMin: 1 m_HAllowExceedBaseRangeMax: 1 m_VAllowExceedBaseRangeMin: 1 @@ -929,7 +952,7 @@ MonoBehaviour: m_HSlider: 0 m_VSlider: 0 m_IgnoreScrollWheelUntilClicked: 0 - m_EnableMouseInput: 1 + m_EnableMouseInput: 0 m_EnableSliderZoomHorizontal: 0 m_EnableSliderZoomVertical: 0 m_UniformScale: 1 @@ -938,29 +961,29 @@ MonoBehaviour: serializedVersion: 2 x: 0 y: 21 - width: 825 - height: 447.5 - m_Scale: {x: 0.46614584, y: 0.46614584} - m_Translation: {x: 412.5, y: 223.75} + width: 992 + height: 507.5 + m_Scale: {x: 1, y: 1} + m_Translation: {x: 496, y: 253.75} m_MarginLeft: 0 m_MarginRight: 0 m_MarginTop: 0 m_MarginBottom: 0 m_LastShownAreaInsideMargins: serializedVersion: 2 - x: -884.9162 - y: -480 - width: 1769.8324 - height: 960 + x: -496 + y: -253.75 + width: 992 + height: 507.5 m_MinimalGUI: 1 - m_defaultScale: 0.46614584 - m_LastWindowPixelSize: {x: 1650, y: 937} + m_defaultScale: 1 + m_LastWindowPixelSize: {x: 1984, y: 1057} m_ClearInEditMode: 1 m_NoCameraWarning: 1 m_LowResolutionForAspectRatios: 01000000000000000000 m_XRRenderMode: 0 m_RenderTexture: {fileID: 0} ---- !u!114 &15 +--- !u!114 &19 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -969,188 +992,7 @@ MonoBehaviour: m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 1 - m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} - m_Name: - m_EditorClassIdentifier: - m_MinSize: {x: 230, y: 250} - m_MaxSize: {x: 10000, y: 10000} - m_TitleContent: - m_Text: Project - m_Image: {fileID: -5179483145760003458, guid: 0000000000000000d000000000000000, type: 0} - m_Tooltip: - m_Pos: - serializedVersion: 2 - x: 1006 - y: 734.6667 - width: 978 - height: 616.3334 - m_ViewDataDictionary: {fileID: 0} - m_OverlayCanvas: - m_LastAppliedPresetName: Default - m_SaveData: [] - m_SearchFilter: - m_NameFilter: - m_ClassNames: [] - m_AssetLabels: [] - m_AssetBundleNames: [] - m_VersionControlStates: [] - m_SoftLockControlStates: [] - m_ReferencingInstanceIDs: - m_SceneHandles: - m_ShowAllHits: 0 - m_SkipHidden: 0 - m_SearchArea: 1 - m_Folders: - - Assets/Scripts/NetworkModule - m_Globs: [] - m_OriginalText: - m_ViewMode: 1 - m_StartGridSize: 64 - m_LastFolders: - - Assets/Scripts/NetworkModule - m_LastFoldersGridSize: 16 - m_LastProjectPath: C:\unity project\RandomDiceDefense42-Client - m_LockTracker: - m_IsLocked: 0 - m_FolderTreeState: - scrollPos: {x: 0, y: 0} - m_SelectedIDs: 9e670000 - m_LastClickedID: 26526 - m_ExpandedIDs: 00000000686700007467000000ca9a3b - m_RenameOverlay: - m_UserAcceptedRename: 0 - m_Name: - m_OriginalName: - m_EditFieldRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 0 - height: 0 - m_UserData: 0 - m_IsWaitingForDelay: 0 - m_IsRenaming: 0 - m_OriginalEventType: 11 - m_IsRenamingFilename: 1 - m_ClientGUIView: {fileID: 10} - m_SearchString: - m_CreateAssetUtility: - m_EndAction: {fileID: 0} - m_InstanceID: 0 - m_Path: - m_Icon: {fileID: 0} - m_ResourceFile: - m_AssetTreeState: - scrollPos: {x: 0, y: 0} - m_SelectedIDs: - m_LastClickedID: 0 - m_ExpandedIDs: - m_RenameOverlay: - m_UserAcceptedRename: 0 - m_Name: - m_OriginalName: - m_EditFieldRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 0 - height: 0 - m_UserData: 0 - m_IsWaitingForDelay: 0 - m_IsRenaming: 0 - m_OriginalEventType: 11 - m_IsRenamingFilename: 1 - m_ClientGUIView: {fileID: 0} - m_SearchString: - m_CreateAssetUtility: - m_EndAction: {fileID: 0} - m_InstanceID: 0 - m_Path: - m_Icon: {fileID: 0} - m_ResourceFile: - m_ListAreaState: - m_SelectedInstanceIDs: 24650000 - m_LastClickedInstanceID: 25892 - m_HadKeyboardFocusLastEvent: 0 - m_ExpandedInstanceIDs: c623000002630000 - m_RenameOverlay: - m_UserAcceptedRename: 0 - m_Name: NetworkModule - m_OriginalName: NetworkModule - m_EditFieldRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 0 - height: 0 - m_UserData: 26530 - m_IsWaitingForDelay: 0 - m_IsRenaming: 0 - m_OriginalEventType: 0 - m_IsRenamingFilename: 1 - m_ClientGUIView: {fileID: 0} - m_CreateAssetUtility: - m_EndAction: {fileID: 0} - m_InstanceID: 0 - m_Path: - m_Icon: {fileID: 0} - m_ResourceFile: - m_NewAssetIndexInList: -1 - m_ScrollPosition: {x: 0, y: 0} - m_GridSize: 64 - m_SkipHiddenPackages: 0 - m_DirectoriesAreaWidth: 207 ---- !u!114 &16 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 1 - m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} - m_Name: - m_EditorClassIdentifier: - m_MinSize: {x: 275, y: 50} - m_MaxSize: {x: 4000, y: 4000} - m_TitleContent: - m_Text: Inspector - m_Image: {fileID: -440750813802333266, guid: 0000000000000000d000000000000000, type: 0} - m_Tooltip: - m_Pos: - serializedVersion: 2 - x: 1986 - y: 72.66667 - width: 573 - height: 697 - m_ViewDataDictionary: {fileID: 0} - m_OverlayCanvas: - m_LastAppliedPresetName: Default - m_SaveData: [] - m_ObjectsLockedBeforeSerialization: [] - m_InstanceIDsLockedBeforeSerialization: - m_PreviewResizer: - m_CachedPref: -160 - m_ControlHash: -371814159 - m_PrefName: Preview_InspectorPreview - m_LastInspectedObjectInstanceID: -1 - m_LastVerticalScrollValue: 0 - m_GlobalObjectId: - m_InspectorMode: 0 - m_LockTracker: - m_IsLocked: 0 - m_PreviewWindow: {fileID: 0} ---- !u!114 &21 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 12402, guid: 0000000000000000e000000000000000, type: 0} + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: m_MinSize: {x: 100, y: 100} @@ -1161,52 +1003,11 @@ MonoBehaviour: m_Tooltip: m_Pos: serializedVersion: 2 - x: 0 - y: 543.5 - width: 1098 - height: 315.5 - m_ViewDataDictionary: {fileID: 0} - m_OverlayCanvas: - m_LastAppliedPresetName: Default - m_SaveData: [] ---- !u!114 &17 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 1 - m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} - m_Name: - m_EditorClassIdentifier: - m_MinSize: {x: 275, y: 50} - m_MaxSize: {x: 4000, y: 4000} - m_TitleContent: - m_Text: Inspector - m_Image: {fileID: -440750813802333266, guid: 0000000000000000d000000000000000, type: 0} - m_Tooltip: - m_Pos: - serializedVersion: 2 - x: 1986 - y: 790.6667 - width: 573 - height: 560.3334 + x: 414.5 + y: 645.5 + width: 903 + height: 356.5 m_ViewDataDictionary: {fileID: 0} m_OverlayCanvas: m_LastAppliedPresetName: Default m_SaveData: [] - m_ObjectsLockedBeforeSerialization: [] - m_InstanceIDsLockedBeforeSerialization: - m_PreviewResizer: - m_CachedPref: 160 - m_ControlHash: -371814159 - m_PrefName: Preview_InspectorPreview - m_LastInspectedObjectInstanceID: -1 - m_LastVerticalScrollValue: 0 - m_GlobalObjectId: - m_InspectorMode: 0 - m_LockTracker: - m_IsLocked: 0 - m_PreviewWindow: {fileID: 0} From 79ba8bd418444494663529d7b7edd11b46ba61bb Mon Sep 17 00:00:00 2001 From: noname Date: Tue, 29 Nov 2022 01:24:18 +0900 Subject: [PATCH 2/5] . --- .../NetworkModule/Scripts/FileHandler.cs | 2 +- .../NetworkModule/Scripts/NetworkModule.cs | 22 ++++++++--- .../NetworkModule/Scripts/RequestBuilder.cs | 6 ++- .../NetworkModule/Scripts/RequestHandler.cs | 38 +++++++++---------- .../TestObject/NetworkModuleTest.cs | 31 +++++++-------- 5 files changed, 56 insertions(+), 43 deletions(-) diff --git a/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs b/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs index 4ec31b0..935dea9 100644 --- a/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs +++ b/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs @@ -6,7 +6,7 @@ public byte[] FileToByteArray(FileSection section, object file) { switch (section) { - case FileSection.Image: + case FileSection.Texture: Texture2D source = (Texture2D)file; Texture2D destination = new Texture2D(source.width, source.height); Color[] pixels = source.GetPixels(0, 0, source.width, source.height); diff --git a/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs b/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs index 0bfdb59..0e8262d 100644 --- a/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs +++ b/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs @@ -16,21 +16,33 @@ public FileForm(FileSection section, string fileName, object fileData) } } +public class WebResponse +{ + public readonly int StatusCode; + public object Payload; + + public WebResponse(int statusCode) + { + StatusCode = statusCode; + } +} + public enum FileSection { None = 0, - Image, + Texture, + Sprite, } public partial class NetworkModule // IO { - public void RequestGet(string uri, UnityAction<(int, object)> callback = null, FileSection section = FileSection.None, params KeyValuePair[] data) + public void RequestGet(string uri, UnityAction callback = null, FileSection section = FileSection.None, params KeyValuePair[] data) => requestHandler.RequestGet(uri, callback, section, data); - public void RequestGet(string uri, UnityAction<(int, object)> callback = null, FileSection section = FileSection.None, Dictionary data = null) + public void RequestGet(string uri, UnityAction callback = null, FileSection section = FileSection.None, Dictionary data = null) => requestHandler.RequestGet(uri, callback, section, data); - public void RequestPost(string uri, UnityAction<(int, object)> callback = null, params KeyValuePair[] data) + public void RequestPost(string uri, UnityAction callback = null, params KeyValuePair[] data) => requestHandler.RequestPost(uri, callback, data); - public void RequestPost(string uri, UnityAction<(int, object)> callback = null, Dictionary data = null) + public void RequestPost(string uri, UnityAction callback = null, Dictionary data = null) => requestHandler.RequestPost(uri, callback, data); } diff --git a/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs b/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs index 279fe49..4ba3307 100644 --- a/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs +++ b/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs @@ -5,7 +5,7 @@ public partial class RequestBuilder // IO { - public string QueryBuilder(FileSection fileSection, KeyValuePair[] source) + public string QueryBuilder(KeyValuePair[] source) { if (source == null || !source.Any()) return null; BuildQueryData(source); @@ -26,7 +26,9 @@ public UnityWebRequest RequestGetType(FileSection section, string uri) { switch (section) { - case FileSection.Image: + case FileSection.Texture: + return UnityWebRequestTexture.GetTexture(uri); + case FileSection.Sprite: return UnityWebRequestTexture.GetTexture(uri); default: return UnityWebRequest.Get(uri); diff --git a/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs b/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs index bae13d2..95a0faa 100644 --- a/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs +++ b/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs @@ -8,13 +8,13 @@ public partial class RequestHandler { - public void RequestGet(string uri, UnityAction<(int, object)> callback = null, FileSection section = FileSection.None, params KeyValuePair[] data) + public void RequestGet(string uri, UnityAction callback = null, FileSection section = FileSection.None, params KeyValuePair[] data) => _RequestGet(uri, data, section, callback); - public void RequestGet(string uri, UnityAction<(int, object)> callback = null, FileSection section = FileSection.None, Dictionary data = null) + public void RequestGet(string uri, UnityAction callback = null, FileSection section = FileSection.None, Dictionary data = null) => _RequestGet(uri, data?.ToArray(), section, callback); - public void RequestPost(string uri, UnityAction<(int, object)> callback = null, params KeyValuePair[] data) + public void RequestPost(string uri, UnityAction callback = null, params KeyValuePair[] data) => _RequestPost(uri, data, callback); - public void RequestPost(string uri, UnityAction<(int, object)> callback = null, Dictionary data = null) + public void RequestPost(string uri, UnityAction callback = null, Dictionary data = null) => _RequestPost(uri, data?.ToArray(), callback); public int networkCheckTic { get; set; } @@ -23,18 +23,18 @@ public void RequestPost(string uri, UnityAction<(int, object)> callback = null, public partial class RequestHandler: MonoBehaviour { - private readonly Dictionary _requestResult = new(); + private readonly Dictionary _requestResult = new(); private int _requestId; - private void _RequestGet(string uri, KeyValuePair[] data, FileSection section, UnityAction<(int, object)> callback) + private void _RequestGet(string uri, KeyValuePair[] data, FileSection section, UnityAction callback) { int requestId = _requestId++; - string buildUri = $"{uri}{new RequestBuilder().QueryBuilder(section, data)}"; + string buildUri = $"{uri}{new RequestBuilder().QueryBuilder(data)}"; StartCoroutine(GetRequest(buildUri, section, requestId)); WaitTaskAndRunCallback(requestId, callback); } - private void _RequestPost(string uri, KeyValuePair[] data, UnityAction<(int, object)> callback) + private void _RequestPost(string uri, KeyValuePair[] data, UnityAction callback) { int requestId = _requestId++; StartCoroutine(PostRequest(uri, new RequestBuilder().MultipartFormBuilder(data), requestId)); @@ -58,7 +58,7 @@ private IEnumerator PostRequest(string uri, List form, in DisposeWebRequestResult(FileSection.None, webRequest, requestId); } - private async void WaitTaskAndRunCallback(int requestId, UnityAction<(int, object)> callback) + private async void WaitTaskAndRunCallback(int requestId, UnityAction callback) { while (!_requestResult.ContainsKey(requestId)) { @@ -71,30 +71,28 @@ private async void WaitTaskAndRunCallback(int requestId, UnityAction<(int, objec private void DisposeWebRequestResult(FileSection section, UnityWebRequest webRequest, int requestId) { - (int statusCode, object payload) item = new () - { - statusCode = (int)webRequest.responseCode - }; + WebResponse webResponse = new ((int)webRequest.responseCode); - if (item.statusCode < 300) + if (webResponse.StatusCode < 300) { - SetPayload(section, webRequest, out item.payload); + SetPayload(section, webRequest, out webResponse.Payload); } else { - item.payload = webRequest.error; + webResponse.Payload = webRequest.error; } - _requestResult.Add(requestId, item); + _requestResult.Add(requestId, webResponse); } private static void SetPayload(FileSection section, UnityWebRequest webRequest, out object payload) { switch (section) { - case FileSection.Image: - // sprite를 담아줄까? texture2D를 담아줄까? - // payload = ((DownloadHandlerTexture)webRequest.downloadHandler).texture; + case FileSection.Texture: + payload = ((DownloadHandlerTexture)webRequest.downloadHandler).texture; + break; + case FileSection.Sprite: Texture2D texture2D = ((DownloadHandlerTexture)webRequest.downloadHandler).texture; payload = Sprite.Create(texture2D, new Rect(0, 0, texture2D.width, texture2D.height), Vector2.one * .5f); break; diff --git a/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs b/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs index 33541de..f84ca08 100644 --- a/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs +++ b/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs @@ -68,42 +68,43 @@ private void NetReqPostUpload(string uri) return; } - KeyValuePair imgPair = new("image.png", new FileForm(FileSection.Image, "image.png", sprite.texture)); + KeyValuePair imgPair = new("image.png", new FileForm(FileSection.Texture, "image.png", sprite.texture)); networkModule.RequestPost(uri, PrintResultAndDownload, imgPair); } - private void PrintResultAndDownload((int statusCode, object payload) request) + private void PrintResultAndDownload(WebResponse response) { - Debug.Log($"statusCode = {request.statusCode}"); - Debug.Log($"payload = {request.payload}"); + Debug.Log($"statusCode = {response.StatusCode}"); + Debug.Log($"payload = {response.Payload}"); - var req = JsonUtility.FromJson(request.payload.ToString()); + var req = JsonUtility.FromJson(response.Payload.ToString()); var reqType = req.requestType; var reqUrl = req.requestUrl; - networkModule.RequestGet(reqUrl, DrawImage, FileSection.Image); + // networkModule.RequestGet(reqUrl, DrawImage, FileSection.Sprite); + networkModule.RequestGet(reqUrl, DrawImage, FileSection.Sprite); } - private void DrawImage((int statusCode, object payload) request) + private void DrawImage(WebResponse response) { - Debug.Log($"request.statusCode in DrawImage: {request.statusCode}"); + Debug.Log($"request.statusCode in DrawImage: {response.StatusCode}"); - if (request.statusCode >= 300) + if (response.StatusCode >= 300) { - Debug.LogError($"request.statusCode in DrawImage: {request.statusCode}"); - Debug.LogError($"request.payload in DrawImage: {request.payload}"); + Debug.LogError($"request.statusCode in DrawImage: {response.StatusCode}"); + Debug.LogError($"request.payload in DrawImage: {response.Payload}"); return; } // Texture2D texture2D = (Texture2D)request.payload; // Sprite toSprite = Sprite.Create(texture2D, new Rect(0, 0, texture2D.width, texture2D.height), Vector2.one * .5f); // image.sprite = toSprite; - image.sprite = (Sprite)request.payload; + image.sprite = (Sprite)response.Payload; } - private void PrintResult((int statusCode, object payload) request) + private void PrintResult(WebResponse response) { - Debug.Log($"statusCode = {request.statusCode}"); - Debug.Log($"payload = {request.payload}"); + Debug.Log($"statusCode = {response.StatusCode}"); + Debug.Log($"payload = {response.Payload}"); } } From 529943c2298e11ee7d6cd38eb388173d29d2576a Mon Sep 17 00:00:00 2001 From: noname Date: Tue, 29 Nov 2022 01:39:33 +0900 Subject: [PATCH 3/5] #100 --- Assets/Scenes/SampleScene.unity | 16 ++++++++++ UserSettings/Layouts/default-2021.dwlt | 42 +++++++++++++------------- 2 files changed, 37 insertions(+), 21 deletions(-) diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index 69615b3..940173d 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -1595,6 +1595,7 @@ MonoBehaviour: btnUploadImage: {fileID: 2079967623} btnDownloadImage: {fileID: 2042607824} image: {fileID: 1540895736} + serverPath: http://127.0.0.1:3000 --- !u!1 &922189857 GameObject: m_ObjectHideFlags: 0 @@ -2301,6 +2302,17 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1131538119} m_CullTransparentMesh: 1 +--- !u!114 &1143216757 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 7661625985247302100, guid: 2e2ced5d8a6c34b2085c71657879cc15, type: 3} + m_PrefabInstance: {fileID: 924530220} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7300c990fdf293e498e987897572d45b, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &1166434724 GameObject: m_ObjectHideFlags: 0 @@ -2566,6 +2578,10 @@ PrefabInstance: propertyPath: m_Name value: NetworkModuleTest objectReference: {fileID: 0} + - target: {fileID: 5522496125743907318, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} + propertyPath: networkModule + value: + objectReference: {fileID: 1143216757} - target: {fileID: 8063823062617214637, guid: 9e0532e23d9d741b5b934a1f47c3ec12, type: 3} propertyPath: m_RootOrder value: 13 diff --git a/UserSettings/Layouts/default-2021.dwlt b/UserSettings/Layouts/default-2021.dwlt index 77111f1..cb8f677 100644 --- a/UserSettings/Layouts/default-2021.dwlt +++ b/UserSettings/Layouts/default-2021.dwlt @@ -19,7 +19,7 @@ MonoBehaviour: width: 1728 height: 977 m_ShowMode: 4 - m_Title: Console + m_Title: Game m_RootView: {fileID: 8} m_MinSize: {x: 875, y: 300} m_MaxSize: {x: 10000, y: 10000} @@ -74,7 +74,7 @@ MonoBehaviour: m_MinSize: {x: 200, y: 100} m_MaxSize: {x: 16192, y: 8096} vertical: 0 - controlID: 5539 + controlID: 122 --- !u!114 &4 MonoBehaviour: m_ObjectHideFlags: 52 @@ -99,7 +99,7 @@ MonoBehaviour: m_MinSize: {x: 300, y: 200} m_MaxSize: {x: 24288, y: 16192} vertical: 0 - controlID: 96 + controlID: 20 --- !u!114 &5 MonoBehaviour: m_ObjectHideFlags: 52 @@ -119,8 +119,8 @@ MonoBehaviour: y: 0 width: 408.5 height: 927 - m_MinSize: {x: 276, y: 71} - m_MaxSize: {x: 4001, y: 4021} + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} m_ActualView: {fileID: 15} m_Panes: - {fileID: 15} @@ -273,7 +273,7 @@ MonoBehaviour: m_MinSize: {x: 200, y: 200} m_MaxSize: {x: 16192, y: 16192} vertical: 1 - controlID: 97 + controlID: 21 --- !u!114 &12 MonoBehaviour: m_ObjectHideFlags: 52 @@ -298,7 +298,7 @@ MonoBehaviour: m_MinSize: {x: 200, y: 100} m_MaxSize: {x: 16192, y: 8096} vertical: 0 - controlID: 98 + controlID: 22 --- !u!114 &13 MonoBehaviour: m_ObjectHideFlags: 52 @@ -367,22 +367,22 @@ MonoBehaviour: m_SkipHidden: 0 m_SearchArea: 1 m_Folders: - - Assets/Scripts/NetworkModule/Scripts + - Assets/Scripts/NetworkModule/TestObject m_Globs: [] m_OriginalText: m_ViewMode: 1 m_StartGridSize: 16 m_LastFolders: - - Assets/Scripts/NetworkModule/Scripts + - Assets/Scripts/NetworkModule/TestObject m_LastFoldersGridSize: 16 m_LastProjectPath: /Users/noname/unity project/RandomDiceDefense42-Client m_LockTracker: m_IsLocked: 0 m_FolderTreeState: scrollPos: {x: 0, y: 307.5} - m_SelectedIDs: 627b0000 - m_LastClickedID: 31586 - m_ExpandedIDs: 000000003c6400003e6400004064000042640000446400007864000000ca9a3b + m_SelectedIDs: da640000 + m_LastClickedID: 25818 + m_ExpandedIDs: 0000000096640000986400009a6400009c6400009e640000a064000000ca9a3b m_RenameOverlay: m_UserAcceptedRename: 0 m_Name: @@ -410,7 +410,7 @@ MonoBehaviour: scrollPos: {x: 0, y: 0} m_SelectedIDs: m_LastClickedID: 0 - m_ExpandedIDs: 000000003c6400003e640000406400004264000044640000 + m_ExpandedIDs: 0000000096640000986400009a6400009c6400009e640000a0640000 m_RenameOverlay: m_UserAcceptedRename: 0 m_Name: @@ -437,7 +437,7 @@ MonoBehaviour: m_ListAreaState: m_SelectedInstanceIDs: m_LastClickedInstanceID: 0 - m_HadKeyboardFocusLastEvent: 0 + m_HadKeyboardFocusLastEvent: 1 m_ExpandedInstanceIDs: c6230000b263000034630000 m_RenameOverlay: m_UserAcceptedRename: 0 @@ -538,23 +538,23 @@ MonoBehaviour: m_SceneHierarchy: m_TreeViewState: scrollPos: {x: 0, y: 0} - m_SelectedIDs: ce220100 - m_LastClickedID: 0 - m_ExpandedIDs: 9e9ae0ffb09ae0ffb69ae0ffac91f7ffc491f7ff2092f7ff3892f7ffb2b1f8ff00fbffff24fbffffd860000026610000 + m_SelectedIDs: 22fbffff + m_LastClickedID: -1246 + m_ExpandedIDs: 0afbffff10fbffff22fbffff24fbffffe86000003a610000 m_RenameOverlay: m_UserAcceptedRename: 0 - m_Name: Image - m_OriginalName: Image + m_Name: + m_OriginalName: m_EditFieldRect: serializedVersion: 2 x: 0 y: 0 width: 0 height: 0 - m_UserData: -2057562 + m_UserData: 0 m_IsWaitingForDelay: 0 m_IsRenaming: 0 - m_OriginalEventType: 0 + m_OriginalEventType: 11 m_IsRenamingFilename: 0 m_ClientGUIView: {fileID: 6} m_SearchString: From 188cc75b0bcebd27354d3f8737a93e42bcbc3dae Mon Sep 17 00:00:00 2001 From: noname Date: Tue, 29 Nov 2022 01:54:09 +0900 Subject: [PATCH 4/5] #100 --- Assets/Scripts/NetworkModule/Scripts/FileHandler.cs | 3 +++ Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs | 1 - Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs | 2 -- Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs | 4 ---- Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs | 4 ++-- 5 files changed, 5 insertions(+), 9 deletions(-) diff --git a/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs b/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs index 935dea9..db4fa54 100644 --- a/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs +++ b/Assets/Scripts/NetworkModule/Scripts/FileHandler.cs @@ -17,4 +17,7 @@ public byte[] FileToByteArray(FileSection section, object file) return null; } } + + public Sprite Texture2DToSprite(Texture2D texture2D) + => Sprite.Create(texture2D, new Rect(0, 0, texture2D.width, texture2D.height), Vector2.one * .5f); } diff --git a/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs b/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs index 0e8262d..4785b3d 100644 --- a/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs +++ b/Assets/Scripts/NetworkModule/Scripts/NetworkModule.cs @@ -31,7 +31,6 @@ public enum FileSection { None = 0, Texture, - Sprite, } public partial class NetworkModule // IO diff --git a/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs b/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs index 4ba3307..7fc642a 100644 --- a/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs +++ b/Assets/Scripts/NetworkModule/Scripts/RequestBuilder.cs @@ -28,8 +28,6 @@ public UnityWebRequest RequestGetType(FileSection section, string uri) { case FileSection.Texture: return UnityWebRequestTexture.GetTexture(uri); - case FileSection.Sprite: - return UnityWebRequestTexture.GetTexture(uri); default: return UnityWebRequest.Get(uri); } diff --git a/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs b/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs index 95a0faa..ebb221e 100644 --- a/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs +++ b/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs @@ -92,10 +92,6 @@ private static void SetPayload(FileSection section, UnityWebRequest webRequest, case FileSection.Texture: payload = ((DownloadHandlerTexture)webRequest.downloadHandler).texture; break; - case FileSection.Sprite: - Texture2D texture2D = ((DownloadHandlerTexture)webRequest.downloadHandler).texture; - payload = Sprite.Create(texture2D, new Rect(0, 0, texture2D.width, texture2D.height), Vector2.one * .5f); - break; default: payload = webRequest.downloadHandler.text; break; diff --git a/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs b/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs index f84ca08..5685ea5 100644 --- a/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs +++ b/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs @@ -82,7 +82,7 @@ private void PrintResultAndDownload(WebResponse response) var reqUrl = req.requestUrl; // networkModule.RequestGet(reqUrl, DrawImage, FileSection.Sprite); - networkModule.RequestGet(reqUrl, DrawImage, FileSection.Sprite); + networkModule.RequestGet(reqUrl, DrawImage, FileSection.Texture); } private void DrawImage(WebResponse response) @@ -99,7 +99,7 @@ private void DrawImage(WebResponse response) // Texture2D texture2D = (Texture2D)request.payload; // Sprite toSprite = Sprite.Create(texture2D, new Rect(0, 0, texture2D.width, texture2D.height), Vector2.one * .5f); // image.sprite = toSprite; - image.sprite = (Sprite)response.Payload; + image.sprite = new FileHandler().Texture2DToSprite(response.Payload as Texture2D); } private void PrintResult(WebResponse response) From 5fe43c7c928845b4d0a59e847a83a36b316102ee Mon Sep 17 00:00:00 2001 From: noname Date: Thu, 1 Dec 2022 19:11:20 +0900 Subject: [PATCH 5/5] . --- .../NetworkModule/Scripts/RequestHandler.cs | 2 +- .../TestObject/NetworkModuleTest.cs | 4 - UserSettings/Layouts/default-2021.dwlt | 232 +++++++----------- 3 files changed, 92 insertions(+), 146 deletions(-) diff --git a/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs b/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs index ebb221e..46dc927 100644 --- a/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs +++ b/Assets/Scripts/NetworkModule/Scripts/RequestHandler.cs @@ -45,7 +45,7 @@ private IEnumerator GetRequest(string uri, FileSection section, int requestId) { using UnityWebRequest webRequest = new RequestBuilder().RequestGetType(section, uri); webRequest.timeout = networkTimeout; - + yield return webRequest.SendWebRequest(); DisposeWebRequestResult(section, webRequest, requestId); } diff --git a/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs b/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs index 5685ea5..8287d2e 100644 --- a/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs +++ b/Assets/Scripts/NetworkModule/TestObject/NetworkModuleTest.cs @@ -1,4 +1,3 @@ -using System; using System.Collections; using System.Collections.Generic; using UnityEngine; @@ -96,9 +95,6 @@ private void DrawImage(WebResponse response) return; } - // Texture2D texture2D = (Texture2D)request.payload; - // Sprite toSprite = Sprite.Create(texture2D, new Rect(0, 0, texture2D.width, texture2D.height), Vector2.one * .5f); - // image.sprite = toSprite; image.sprite = new FileHandler().Texture2DToSprite(response.Payload as Texture2D); } diff --git a/UserSettings/Layouts/default-2021.dwlt b/UserSettings/Layouts/default-2021.dwlt index cb8f677..61df1e9 100644 --- a/UserSettings/Layouts/default-2021.dwlt +++ b/UserSettings/Layouts/default-2021.dwlt @@ -20,62 +20,11 @@ MonoBehaviour: height: 977 m_ShowMode: 4 m_Title: Game - m_RootView: {fileID: 8} - m_MinSize: {x: 875, y: 300} + m_RootView: {fileID: 6} + m_MinSize: {x: 875, y: 421} m_MaxSize: {x: 10000, y: 10000} m_Maximized: 1 --- !u!114 &2 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} - m_Name: ConsoleWindow - m_EditorClassIdentifier: - m_Children: [] - m_Position: - serializedVersion: 2 - x: 414.5 - y: 0 - width: 905 - height: 377.5 - m_MinSize: {x: 102, y: 121} - m_MaxSize: {x: 4002, y: 4021} - m_ActualView: {fileID: 19} - m_Panes: - - {fileID: 19} - m_Selected: 0 - m_LastSelected: 0 ---- !u!114 &3 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} - m_Name: - m_EditorClassIdentifier: - m_Children: - - {fileID: 7} - - {fileID: 2} - m_Position: - serializedVersion: 2 - x: 0 - y: 549.5 - width: 1319.5 - height: 377.5 - m_MinSize: {x: 200, y: 100} - m_MaxSize: {x: 16192, y: 8096} - vertical: 0 - controlID: 122 ---- !u!114 &4 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -88,8 +37,8 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Children: - - {fileID: 11} - - {fileID: 5} + - {fileID: 9} + - {fileID: 3} m_Position: serializedVersion: 2 x: 0 @@ -99,8 +48,8 @@ MonoBehaviour: m_MinSize: {x: 300, y: 200} m_MaxSize: {x: 24288, y: 16192} vertical: 0 - controlID: 20 ---- !u!114 &5 + controlID: 55 +--- !u!114 &3 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -110,23 +59,24 @@ MonoBehaviour: m_Enabled: 1 m_EditorHideFlags: 1 m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} - m_Name: + m_Name: ConsoleWindow m_EditorClassIdentifier: m_Children: [] m_Position: serializedVersion: 2 - x: 1319.5 + x: 810 y: 0 - width: 408.5 + width: 918 height: 927 - m_MinSize: {x: 275, y: 50} - m_MaxSize: {x: 4000, y: 4000} - m_ActualView: {fileID: 15} + m_MinSize: {x: 101, y: 121} + m_MaxSize: {x: 4001, y: 4021} + m_ActualView: {fileID: 17} m_Panes: - - {fileID: 15} - m_Selected: 0 + - {fileID: 13} + - {fileID: 17} + m_Selected: 1 m_LastSelected: 0 ---- !u!114 &6 +--- !u!114 &4 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -143,16 +93,16 @@ MonoBehaviour: serializedVersion: 2 x: 0 y: 0 - width: 325.5 + width: 199 height: 549.5 - m_MinSize: {x: 200, y: 200} - m_MaxSize: {x: 4000, y: 4000} - m_ActualView: {fileID: 16} + m_MinSize: {x: 201, y: 221} + m_MaxSize: {x: 4001, y: 4021} + m_ActualView: {fileID: 14} m_Panes: - - {fileID: 16} + - {fileID: 14} m_Selected: 0 m_LastSelected: 0 ---- !u!114 &7 +--- !u!114 &5 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -168,17 +118,17 @@ MonoBehaviour: m_Position: serializedVersion: 2 x: 0 - y: 0 - width: 414.5 + y: 549.5 + width: 810 height: 377.5 m_MinSize: {x: 231, y: 271} m_MaxSize: {x: 10001, y: 10021} - m_ActualView: {fileID: 14} + m_ActualView: {fileID: 12} m_Panes: - - {fileID: 14} + - {fileID: 12} m_Selected: 0 m_LastSelected: 0 ---- !u!114 &8 +--- !u!114 &6 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -191,9 +141,9 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Children: - - {fileID: 9} - - {fileID: 4} - - {fileID: 10} + - {fileID: 7} + - {fileID: 2} + - {fileID: 8} m_Position: serializedVersion: 2 x: 0 @@ -206,7 +156,7 @@ MonoBehaviour: m_TopViewHeight: 30 m_UseBottomView: 1 m_BottomViewHeight: 20 ---- !u!114 &9 +--- !u!114 &7 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -228,7 +178,7 @@ MonoBehaviour: m_MinSize: {x: 0, y: 0} m_MaxSize: {x: 0, y: 0} m_LastLoadedLayoutName: ---- !u!114 &10 +--- !u!114 &8 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -249,7 +199,7 @@ MonoBehaviour: height: 20 m_MinSize: {x: 0, y: 0} m_MaxSize: {x: 0, y: 0} ---- !u!114 &11 +--- !u!114 &9 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -262,19 +212,19 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Children: - - {fileID: 12} - - {fileID: 3} + - {fileID: 10} + - {fileID: 5} m_Position: serializedVersion: 2 x: 0 y: 0 - width: 1319.5 + width: 810 height: 927 m_MinSize: {x: 200, y: 200} m_MaxSize: {x: 16192, y: 16192} vertical: 1 - controlID: 21 ---- !u!114 &12 + controlID: 56 +--- !u!114 &10 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -287,19 +237,19 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Children: - - {fileID: 6} - - {fileID: 13} + - {fileID: 4} + - {fileID: 11} m_Position: serializedVersion: 2 x: 0 y: 0 - width: 1319.5 + width: 810 height: 549.5 m_MinSize: {x: 200, y: 100} m_MaxSize: {x: 16192, y: 8096} vertical: 0 - controlID: 22 ---- !u!114 &13 + controlID: 57 +--- !u!114 &11 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -314,19 +264,19 @@ MonoBehaviour: m_Children: [] m_Position: serializedVersion: 2 - x: 325.5 + x: 199 y: 0 - width: 994 + width: 611 height: 549.5 m_MinSize: {x: 202, y: 221} m_MaxSize: {x: 4002, y: 4021} - m_ActualView: {fileID: 17} + m_ActualView: {fileID: 15} m_Panes: - - {fileID: 17} - - {fileID: 18} + - {fileID: 15} + - {fileID: 16} m_Selected: 0 m_LastSelected: 1 ---- !u!114 &14 +--- !u!114 &12 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -342,13 +292,13 @@ MonoBehaviour: m_MaxSize: {x: 10000, y: 10000} m_TitleContent: m_Text: Project - m_Image: {fileID: -5179483145760003458, guid: 0000000000000000d000000000000000, type: 0} + m_Image: {fileID: -5467254957812901981, guid: 0000000000000000d000000000000000, type: 0} m_Tooltip: m_Pos: serializedVersion: 2 x: 0 y: 645.5 - width: 413.5 + width: 809 height: 356.5 m_ViewDataDictionary: {fileID: 0} m_OverlayCanvas: @@ -380,9 +330,9 @@ MonoBehaviour: m_IsLocked: 0 m_FolderTreeState: scrollPos: {x: 0, y: 307.5} - m_SelectedIDs: da640000 - m_LastClickedID: 25818 - m_ExpandedIDs: 0000000096640000986400009a6400009c6400009e640000a064000000ca9a3b + m_SelectedIDs: ca640000 + m_LastClickedID: 25802 + m_ExpandedIDs: 000000008464000086640000886400008a6400008c6400008e64000000ca9a3b m_RenameOverlay: m_UserAcceptedRename: 0 m_Name: @@ -410,7 +360,7 @@ MonoBehaviour: scrollPos: {x: 0, y: 0} m_SelectedIDs: m_LastClickedID: 0 - m_ExpandedIDs: 0000000096640000986400009a6400009c6400009e640000a0640000 + m_ExpandedIDs: 000000008464000086640000886400008a6400008c6400008e640000 m_RenameOverlay: m_UserAcceptedRename: 0 m_Name: @@ -437,7 +387,7 @@ MonoBehaviour: m_ListAreaState: m_SelectedInstanceIDs: m_LastClickedInstanceID: 0 - m_HadKeyboardFocusLastEvent: 1 + m_HadKeyboardFocusLastEvent: 0 m_ExpandedInstanceIDs: c6230000b263000034630000 m_RenameOverlay: m_UserAcceptedRename: 0 @@ -454,7 +404,7 @@ MonoBehaviour: m_IsRenaming: 0 m_OriginalEventType: 11 m_IsRenamingFilename: 1 - m_ClientGUIView: {fileID: 7} + m_ClientGUIView: {fileID: 5} m_CreateAssetUtility: m_EndAction: {fileID: 0} m_InstanceID: 0 @@ -466,7 +416,7 @@ MonoBehaviour: m_GridSize: 16 m_SkipHiddenPackages: 0 m_DirectoriesAreaWidth: 207 ---- !u!114 &15 +--- !u!114 &13 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -482,12 +432,12 @@ MonoBehaviour: m_MaxSize: {x: 4000, y: 4000} m_TitleContent: m_Text: Inspector - m_Image: {fileID: -440750813802333266, guid: 0000000000000000d000000000000000, type: 0} + m_Image: {fileID: -2667387946076563598, guid: 0000000000000000d000000000000000, type: 0} m_Tooltip: m_Pos: serializedVersion: 2 - x: 1319.5 - y: 96 + x: 1320.5 + y: 19 width: 407.5 height: 906 m_ViewDataDictionary: {fileID: 0} @@ -500,14 +450,14 @@ MonoBehaviour: m_CachedPref: 160 m_ControlHash: -371814159 m_PrefName: Preview_InspectorPreview - m_LastInspectedObjectInstanceID: -1 + m_LastInspectedObjectInstanceID: 5552 m_LastVerticalScrollValue: 0 m_GlobalObjectId: m_InspectorMode: 0 m_LockTracker: m_IsLocked: 0 m_PreviewWindow: {fileID: 0} ---- !u!114 &16 +--- !u!114 &14 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -523,13 +473,13 @@ MonoBehaviour: m_MaxSize: {x: 4000, y: 4000} m_TitleContent: m_Text: Hierarchy - m_Image: {fileID: -3734745235275155857, guid: 0000000000000000d000000000000000, type: 0} + m_Image: {fileID: 7966133145522015247, guid: 0000000000000000d000000000000000, type: 0} m_Tooltip: m_Pos: serializedVersion: 2 x: 0 y: 96 - width: 324.5 + width: 198 height: 528.5 m_ViewDataDictionary: {fileID: 0} m_OverlayCanvas: @@ -538,9 +488,9 @@ MonoBehaviour: m_SceneHierarchy: m_TreeViewState: scrollPos: {x: 0, y: 0} - m_SelectedIDs: 22fbffff - m_LastClickedID: -1246 - m_ExpandedIDs: 0afbffff10fbffff22fbffff24fbffffe86000003a610000 + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 24fbffff m_RenameOverlay: m_UserAcceptedRename: 0 m_Name: @@ -556,7 +506,7 @@ MonoBehaviour: m_IsRenaming: 0 m_OriginalEventType: 11 m_IsRenamingFilename: 0 - m_ClientGUIView: {fileID: 6} + m_ClientGUIView: {fileID: 4} m_SearchString: m_ExpandedScenes: [] m_CurrenRootInstanceID: 0 @@ -564,7 +514,7 @@ MonoBehaviour: m_IsLocked: 0 m_CurrentSortingName: TransformSorting m_WindowGUID: 4c969a2b90040154d917609493e03593 ---- !u!114 &17 +--- !u!114 &15 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -580,13 +530,13 @@ MonoBehaviour: m_MaxSize: {x: 4000, y: 4000} m_TitleContent: m_Text: Scene - m_Image: {fileID: 8634526014445323508, guid: 0000000000000000d000000000000000, type: 0} + m_Image: {fileID: 2593428753322112591, guid: 0000000000000000d000000000000000, type: 0} m_Tooltip: m_Pos: serializedVersion: 2 - x: 325.5 + x: 199 y: 96 - width: 992 + width: 609 height: 528.5 m_ViewDataDictionary: {fileID: 0} m_OverlayCanvas: @@ -891,7 +841,7 @@ MonoBehaviour: m_SceneVisActive: 1 m_LastLockedObject: {fileID: 0} m_ViewIsLockedToObject: 0 ---- !u!114 &18 +--- !u!114 &16 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -907,13 +857,13 @@ MonoBehaviour: m_MaxSize: {x: 4000, y: 4000} m_TitleContent: m_Text: Game - m_Image: {fileID: 4621777727084837110, guid: 0000000000000000d000000000000000, type: 0} + m_Image: {fileID: -6423792434712278376, guid: 0000000000000000d000000000000000, type: 0} m_Tooltip: m_Pos: serializedVersion: 2 - x: 325.5 + x: 199 y: 96 - width: 992 + width: 609 height: 528.5 m_ViewDataDictionary: {fileID: 0} m_OverlayCanvas: @@ -925,7 +875,7 @@ MonoBehaviour: m_ShowGizmos: 0 m_TargetDisplay: 0 m_ClearColor: {r: 0, g: 0, b: 0, a: 0} - m_TargetSize: {x: 1984, y: 1015} + m_TargetSize: {x: 609, y: 507.5} m_TextureFilterMode: 0 m_TextureHideFlags: 61 m_RenderIMGUI: 1 @@ -940,8 +890,8 @@ MonoBehaviour: m_VRangeLocked: 0 hZoomLockedByDefault: 0 vZoomLockedByDefault: 0 - m_HBaseRangeMin: -496 - m_HBaseRangeMax: 496 + m_HBaseRangeMin: -304.5 + m_HBaseRangeMax: 304.5 m_VBaseRangeMin: -253.75 m_VBaseRangeMax: 253.75 m_HAllowExceedBaseRangeMin: 1 @@ -961,29 +911,29 @@ MonoBehaviour: serializedVersion: 2 x: 0 y: 21 - width: 992 + width: 609 height: 507.5 m_Scale: {x: 1, y: 1} - m_Translation: {x: 496, y: 253.75} + m_Translation: {x: 304.5, y: 253.75} m_MarginLeft: 0 m_MarginRight: 0 m_MarginTop: 0 m_MarginBottom: 0 m_LastShownAreaInsideMargins: serializedVersion: 2 - x: -496 + x: -304.5 y: -253.75 - width: 992 + width: 609 height: 507.5 m_MinimalGUI: 1 m_defaultScale: 1 - m_LastWindowPixelSize: {x: 1984, y: 1057} + m_LastWindowPixelSize: {x: 1218, y: 1057} m_ClearInEditMode: 1 m_NoCameraWarning: 1 m_LowResolutionForAspectRatios: 01000000000000000000 m_XRRenderMode: 0 m_RenderTexture: {fileID: 0} ---- !u!114 &19 +--- !u!114 &17 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -999,14 +949,14 @@ MonoBehaviour: m_MaxSize: {x: 4000, y: 4000} m_TitleContent: m_Text: Console - m_Image: {fileID: -4950941429401207979, guid: 0000000000000000d000000000000000, type: 0} + m_Image: {fileID: -4327648978806127646, guid: 0000000000000000d000000000000000, type: 0} m_Tooltip: m_Pos: serializedVersion: 2 - x: 414.5 - y: 645.5 - width: 903 - height: 356.5 + x: 810 + y: 96 + width: 917 + height: 906 m_ViewDataDictionary: {fileID: 0} m_OverlayCanvas: m_LastAppliedPresetName: Default