Merge pull request #3 from evgen-app/loadingAudio

add dialogs
This commit is contained in:
Ilia vasilenko 2022-01-29 16:05:45 +03:00 committed by GitHub
commit ddb545af92
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
23 changed files with 1067 additions and 51 deletions

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: f4b0a8f2836d299438e963287f02095a
guid: 2e31de0a81a86594c85511f19aa41794
AudioImporter:
externalObjects: {}
serializedVersion: 6

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

@ -0,0 +1,120 @@
fileFormatVersion: 2
guid: dc6659970b4207945ab5a543fcdf0033
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
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: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
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
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: Android
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: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

View File

@ -0,0 +1,120 @@
fileFormatVersion: 2
guid: 57d6ba117edc86a448219c2c49ffd072
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
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: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
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
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: Android
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: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

View File

@ -0,0 +1,120 @@
fileFormatVersion: 2
guid: db16f89f936a28e449b12d24d5fa8310
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
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: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
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
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: Android
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: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@ -0,0 +1,103 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1001 &6356406092452763783
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 3750784060721673617, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_Name
value: captainAvatar
objectReference: {fileID: 0}
- target: {fileID: 6646545994519980302, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_Sprite
value:
objectReference: {fileID: 21300000, guid: dc6659970b4207945ab5a543fcdf0033, type: 3}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_Pivot.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_RootOrder
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_AnchorMax.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_AnchorMin.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_SizeDelta.x
value: 108.4909
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_SizeDelta.y
value: 153.0323
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_AnchoredPosition.x
value: 125
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_AnchoredPosition.y
value: 366.3
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6914633588194135811, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 47c26c516e4ad5f4ab294bbeca7ecbed, type: 3}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: fdc4a3b308b524944aec017148206a92
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3750784060721673617
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6914633588194135811}
- component: {fileID: 2821719155475895382}
- component: {fileID: 6646545994519980302}
m_Layer: 5
m_Name: pilotAvatar
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &6914633588194135811
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3750784060721673617}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 125, y: 373}
m_SizeDelta: {x: 149, y: 149.6399}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2821719155475895382
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3750784060721673617}
m_CullTransparentMesh: 1
--- !u!114 &6646545994519980302
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3750784060721673617}
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: 21300000, guid: 57d6ba117edc86a448219c2c49ffd072, type: 3}
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

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 47c26c516e4ad5f4ab294bbeca7ecbed
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,103 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1001 &288783116824227705
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 291392520832561545, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_Sprite
value:
objectReference: {fileID: 21300000, guid: db16f89f936a28e449b12d24d5fa8310, type: 3}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_Pivot.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_RootOrder
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_AnchorMax.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_AnchorMin.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_SizeDelta.x
value: 100
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_SizeDelta.y
value: 116.1481
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_AnchoredPosition.x
value: 125
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_AnchoredPosition.y
value: 373
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 559514207965239172, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7798839904708177174, guid: fdc4a3b308b524944aec017148206a92, type: 3}
propertyPath: m_Name
value: voiceAssistantAvatar
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: fdc4a3b308b524944aec017148206a92, type: 3}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 360074e5f0b89134dae58f5d8d0c50c6
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -7,9 +7,9 @@ public class AudioPlayer : MonoBehaviour
public delegate void AudioPlayerStopsCommit();
private AudioSource _audioPlayer;
private List<AudioPlayerStopsCommit> _stopsCommits;
private bool _play;
void Awake()
{
Debug.Log("shit");
_audioPlayer = gameObject.GetComponent<AudioSource>();
_stopsCommits = new List<AudioPlayerStopsCommit>();
}
@ -20,15 +20,20 @@ public class AudioPlayer : MonoBehaviour
public void PlayAudio(AudioClip audio) {
_audioPlayer.clip = audio;
_audioPlayer.Play();
_audioPlayer.Play();
_play = true;
}
void Update() {
if (!_audioPlayer.isPlaying) {
if (!_audioPlayer.isPlaying && _play) {
Debug.Log(_stopsCommits.Count.ToString() + "commits");
for (int i = 0; i < _stopsCommits.Count; ++i) {
if (_stopsCommits[i] == null) continue;
_stopsCommits[i]();
_stopsCommits[i] = null;
}
_stopsCommits = new List<AudioPlayerStopsCommit>();
_play = false;
}
}
}

View File

@ -13,31 +13,85 @@ public class AudioVisualizer : MonoBehaviour
_role = role;
}
}
private GameObject _avatar;
[SerializeField]
private GameObject _captainAvatar;
[SerializeField]
private GameObject _pilotAvatar;
[SerializeField]
private GameObject _voiceAssistantAvatar;
private AudioVisualizerData data;
[SerializeField]
private Canvas _canvasOverlay;
private AudioVisualizerData _visualizerData;
void Start() {
if (GameObject.FindGameObjectsWithTag("dialog_canvas").Length == 0) {
Instantiate(_canvasOverlay, Vector3.zero, Quaternion.identity);
}
}
public void changeAudioVisualizerData(AudioVisualizerData visualizerData) {
IEnumerator setText() {
Text content = GameObject.FindGameObjectWithTag("dialog_content").GetComponent<Text>();
content.text = visualizerData._text;
Text name = GameObject.FindGameObjectWithTag("dialog_name").GetComponent<Text>();
switch (visualizerData._role) {
case Roles.CAPTAIN:
name.text = "Капитан";
break;
case Roles.PILOT:
name.text = "Пилот";
break;
case Roles.VOICE_ASSISTANT:
name.text = "Голосовой помощник";
break;
content.text = "";
foreach(char i in _visualizerData._text) {
content.text += i;
yield return new WaitForSeconds(0.05f);
}
}
string RoleToString(Roles role) {
string res = "";
switch (role) {
case Roles.CAPTAIN:
res = "Капитан";
break;
case Roles.PILOT:
res = "Пилот";
break;
case Roles.VOICE_ASSISTANT:
res = "Голосовой помощник";
break;
case Roles.CAPTAIN_IN_IMAGINATION:
res = "Капитан (воспоминание)";
break;
case Roles.VOICE_ASSISTANT_IN_IMAGINATION:
res = "Elizabeth (воспоминание)";
break;
}
return res;
}
IEnumerator setHeader() {
Text name = GameObject.FindGameObjectWithTag("dialog_name").GetComponent<Text>();
name.text = "";
string nameText = RoleToString(_visualizerData._role);
foreach(char i in nameText) {
name.text += i;
yield return new WaitForSeconds(0.05f);
}
}
public void changeAudioVisualizerData(AudioVisualizerData visualizerData) {
Canvas canvas = Object.FindObjectOfType<Canvas>();
Text content = GameObject.FindGameObjectWithTag("dialog_content").GetComponent<Text>();
_visualizerData = visualizerData;
StartCoroutine("setText");
StartCoroutine("setHeader");
Destroy(_avatar);
switch(visualizerData._role) {
case Roles.CAPTAIN:
_avatar = Instantiate(_captainAvatar, _captainAvatar.transform.position, Quaternion.identity);
break;
case Roles.PILOT:
_avatar = Instantiate(_pilotAvatar, _pilotAvatar.transform.position, Quaternion.identity);
break;
case Roles.VOICE_ASSISTANT:
_avatar = Instantiate(_voiceAssistantAvatar, _voiceAssistantAvatar.transform.position, Quaternion.identity);
break;
case Roles.CAPTAIN_IN_IMAGINATION:
_avatar = Instantiate(_captainAvatar, _captainAvatar.transform.position, Quaternion.identity);
break;
case Roles.VOICE_ASSISTANT_IN_IMAGINATION:
_avatar = Instantiate(_voiceAssistantAvatar, _voiceAssistantAvatar.transform.position, Quaternion.identity);
break;
}
_avatar.transform.SetParent(canvas.transform, false);
}
}

View File

@ -0,0 +1,230 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public static class DialogData{
public static DialogDataClass[] FirstScene = {
new DialogDataClass(
"Ваш корабль поврежден, нужен срочный ремонт",
Roles.CAPTAIN,
Resources.Load<AudioClip>("audio/капитан/ваш корабль поврежден")
),
new DialogDataClass(
"Жду подробностей повреждения",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/жду подробностей повреждения")
),
new DialogDataClass(
"Подробности высланы вам на почту, проверьте",
Roles.CAPTAIN,
Resources.Load<AudioClip>("audio/капитан/подробности высланы")
)
};
public static DialogDataClass[] SecondSceneFirstAction = {
new DialogDataClass(
"Файл доставлен, в нем обнаружены повреждения",
Roles.VOICE_ASSISTANT,
Resources.Load<AudioClip>("audio/голосовой помощник/Файл доставлен")
),
new DialogDataClass(
"О черт, опять этот баг, надо будет написать админам чтобы уже наконец исправили проблемы с кодировками. Ладно, давай посмотрим, что тут случилось",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/о черт, опять этот баг")
)
};
public static DialogDataClass[] SecondSceneSecondAction = {
new DialogDataClass(
"В этот раз файл поврежден очень сильно, надо его открыть и посмотреть что в нем сохранилось",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/в этот раз файл порвежден очень сильно")
),
};
public static DialogDataClass[] ThirdSceneAction = {
new DialogDataClass(
"Elizabeth, сделай анализ утечек",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/сделай анализ утечек")
),
new DialogDataClass(
"Утечки в гиперпространстве, чтобы восстановить исходный файл вам надо немного помучаться",
Roles.VOICE_ASSISTANT,
Resources.Load<AudioClip>("чтобы восстановить файл")
),
new DialogDataClass(
"Пилот, мы приготовили тебе последнее твое задание, после которого мы все рискуем умереть и погубить весь экипаж, либо ты станешь настоящим специалистом своего дела и будешь командовать отделом",
Roles.CAPTAIN,
Resources.Load<AudioClip>("audio/капитан/пилот, мы приготовили твое задание")
),
new DialogDataClass(
"Какое задание?",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/какое задание")
),
new DialogDataClass(
"Устрани неисправности на корабле, тогда ты докажешь свой профессионализм",
Roles.CAPTAIN,
Resources.Load<AudioClip>("audio/капитан/устрани неисправности")
),
new DialogDataClass(
"Есть",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/есть")
)
};
public static DialogDataClass[] FourthSceneFirstAction = {
new DialogDataClass(
"Для этого мне нужна карта корабля с нанесенными повреждениями, а она как назло не пришла в чистом виде, да еще это гиперпространство...",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/для этого мне нужна карта корабля")
)
};
public static DialogDataClass[] FourthSceneSecondAction = {
new DialogDataClass(
"Точно, это двигательный отсек, в нем вечно происходят проблемы, но я не помню код от этого щитка",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/Точно это двигательный отсек")
),
new DialogDataClass(
"Ты на правильном пути, ученик мой, разгадай эту загадку тогда ты откроешь щиток",
Roles.CAPTAIN,
Resources.Load<AudioClip>("audio/капитан/ты на правильном пути")
)
};
public static DialogDataClass[] FourthSceneThirdAction = {
new DialogDataClass(
"Молодец, ты открыл щиток",
Roles.CAPTAIN,
Resources.Load<AudioClip>("audio/капитан/молодец, ты открыл щиток")
),
new DialogDataClass(
"Спасибо, кэп",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/спасибо, кэп")
),
new DialogDataClass(
"О, кажется я нашел кусок файла, странно, как он мог затеряться в реальном мире, надо будет сообщить админам",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/О, кажется я нашел кусок файла")
)
};
public static DialogDataClass[] FourthSceneFourthAction = {
new DialogDataClass(
"Отлично, давай посмотрим карту",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/Отлично, давай посмотрим карту")
)
};
public static DialogDataClass[] FourthSceneFiftAction = {
new DialogDataClass(
"Здесь указано, куда идти, надо попробовать",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/Здесь указано куда идти")
)
};
public static DialogDataClass[] FiftSceneAction = {
new DialogDataClass(
"Наконец-то я пришел к двигателю....но кажется есть проблема, тут очень темно, надо вернуться за фонариком",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/наконец-то я пришел к двигателю")
)
};
public static DialogDataClass[] SixthSceneFirstAction = {
new DialogDataClass(
"Тааак, где тут фонарик? я его прятал где-то в ящиках, но их тут просто очень много, как мне их все посмотреть?",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/таак, где тут фонарик")
),
new DialogDataClass(
"Ты умрешь и погубишь весь экипаж",
Roles.CAPTAIN_IN_IMAGINATION,
Resources.Load<AudioClip>("audio/капитан/устрани неисправности")
),
new DialogDataClass(
"Надо срочно действовать, помоги мне найти среди этих ящиков фонарь",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/Надо срочно действовать")
),
};
public static DialogDataClass[] SixthSceneSecondAction = {
new DialogDataClass(
"О, мы нашли фонарь, теперь давай скорее бежать чинить двигатель, хотя..",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/О мы нашли фонарь")
),
new DialogDataClass(
"Утечки в гиперпространстве, чтобы восстановить исходный файл вам придется НеМнОгО ПоМуЧаТьСя",
Roles.VOICE_ASSISTANT_IN_IMAGINATION,
Resources.Load<AudioClip>("audio/голосовой помощник/чтобы восстановить файл")
),
new DialogDataClass(
"Я совсем забыл, я же не знаю где поломка, а без нее я не смогу починить корабль, попробуй найти кусок карты в тех же ящиках что ты искал фонарь, может он затаился там",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/Я совсем забыл, я же не знаю где поломка")
)
};
public static DialogDataClass[] SixthSceneThirdAction = {
new DialogDataClass(
"ООО, вот и кусок карты",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/О, вот и кусок карты")
)
};
public static DialogDataClass[] SixthSceneFourthAction = {
new DialogDataClass(
"Посмотри, теперь мы можем видеть, где поломка у корабля, пойдем скорее к двигателю и починим корабль.",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/Смотри, теперь мы можем видеть, где поломка у корабля")
)
};
public static DialogDataClass[] SeventhSceneFirstAction = {
new DialogDataClass(
"Вот, мы у двигателя, все видно, в карте есть информация по поломке, дело за малым - починить двигатель. Хммм, но тут нужен явно гаечный ключ, надо открутить вот этот щиток.",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/Вот мы у двигателя")
),
new DialogDataClass(
"О нет, у нас совсем мало времени. Надо что-то срочно предпринять.",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/о нет, у нас совсем мало времени")
)
};
public static DialogDataClass[] SeventhSceneSecondAction = {
new DialogDataClass(
"Хмм, что это за ящик, вечно этот штурман забудет что-нибудь убрать. Попробую открыть его, тут какая-то головоломка.",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/мм, что это за ящик")
),
};
public static DialogDataClass[] SeventhSceneThirdAction = {
new DialogDataClass(
"Тут как раз есть ключ, надо его взять",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/тут как раз есть ключ, надо его взять")
),
};
public static DialogDataClass[] EightScene = {
new DialogDataClass(
"Фух, получилось",
Roles.PILOT,
Resources.Load<AudioClip>("audio/пилот/Фух, получилось")
),
new DialogDataClass(
"Поздравляю, ты справился, я напишу приказ чтобы тебя повысили",
Roles.CAPTAIN,
Resources.Load<AudioClip>("audio/капитан/поздравля, ты справился")
)
};
}
public struct DialogDataClass {
public string text;
public Roles role;
public AudioClip audio;
public DialogDataClass(string text, Roles role, AudioClip audio) {
this.text = text;
this.role = role;
this.audio = audio;
}
}

View File

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

View File

@ -10,42 +10,70 @@ public class DialogPlayer : MonoBehaviour
AudioPlayer _audioPlayer;
[SerializeField]
AudioVisualizer _audioVisualizer;
private AudioClip _audio;
DialogDataClass[] _dialogData;
int _idx = 0;
Replica _currentReplica;
void changeDialogData(DialogDataClass[] dialogData){
_dialogData = dialogData;
_idx = 0;
_currentReplica = createReplica();
_currentReplica.Play();
}
void playReplica(int idx) {
if (idx >= DialogData.FirstScene.Length) return;
//Debug.Log(idx.ToString() + DialogData.FirstScene[idx].text);
Replica replica = new Replica(
DialogData.FirstScene[idx].audio,
new AudioVisualizer.AudioVisualizerData(
text: _dialogData[idx].text,
role: _dialogData[idx].role
),
_audioPlayer,
() => {
Debug.Log(idx);
playReplica(idx+1);
},
_audioVisualizer
);
replica.Play();
}
Replica createReplica() {
Replica replica = new Replica(
_dialogData[_idx].audio,
new AudioVisualizer.AudioVisualizerData(
text: _dialogData[_idx].text,
role: _dialogData[_idx].role
),
_audioPlayer,
() => {},
_audioVisualizer
);
return replica;
}
void Start()
{
_audio = Resources.Load<AudioClip>("audio/пилот/есть");
Replica another_rep = new Replica(
_audio,
new AudioVisualizer.AudioVisualizerData(
"asdfsadf",
role: Roles.PILOT
),
_audioPlayer,
() => {
Debug.Log("fuck");
},
_audioVisualizer
);
Replica rep = new Replica(
_audio,
new AudioVisualizer.AudioVisualizerData(
"Есть",
role: Roles.PILOT
),
_audioPlayer,
() => {
another_rep.Play();
},
_audioVisualizer
);
rep.Play();
_dialogData = DialogData.FirstScene;
_audioPlayer = Object.FindObjectOfType<AudioPlayer>();
_audioVisualizer = Object.FindObjectOfType<AudioVisualizer>();
_currentReplica = createReplica();
_currentReplica.Play();
}
// Update is called once per frame
void Update()
{
if (_idx >= _dialogData.Length-1) return;
if (_currentReplica.getIsEnded()) {
_idx++;
_currentReplica = createReplica();
_currentReplica.Play();
}
}
}

View File

@ -8,11 +8,15 @@ public class Replica {
private AudioPlayer.AudioPlayerStopsCommit _onStop;
private AudioPlayer _audioPlayer;
private AudioVisualizer _audioVisualizer;
private bool isEnded = false;
public bool getIsEnded() {
return isEnded;
}
public Replica(AudioClip clip, AudioVisualizer.AudioVisualizerData visualizerData, AudioPlayer audioPlayer, AudioPlayer.AudioPlayerStopsCommit onStop, AudioVisualizer audioVisualizer) {
_clip = clip;
_audioPlayer = audioPlayer;
_onStop = onStop;
_audioVisualizer = audioVisualizer;
_visualizerData = visualizerData;
}
@ -20,7 +24,9 @@ public class Replica {
public void Play() {
_audioPlayer.PlayAudio(_clip);
_audioPlayer.addStopListener(_onStop);
_audioPlayer.addStopListener(() => {
isEnded = true;
});
_audioVisualizer.changeAudioVisualizerData(_visualizerData);
}
}

View File

@ -5,5 +5,7 @@ using UnityEngine;
public enum Roles {
PILOT,
VOICE_ASSISTANT,
CAPTAIN
CAPTAIN,
CAPTAIN_IN_IMAGINATION,
VOICE_ASSISTANT_IN_IMAGINATION
}