mirror of
https://github.com/evgen-app/steampunk-quest.git
synced 2024-12-04 22:03:45 +03:00
add dialogs
This commit is contained in:
parent
93a6230723
commit
137368f9cb
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f4b0a8f2836d299438e963287f02095a
|
||||
guid: 2e31de0a81a86594c85511f19aa41794
|
||||
AudioImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 6
|
8
Assets/images/avatars.meta
Normal file
8
Assets/images/avatars.meta
Normal file
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: cb764beed74cec044ab9adab35638376
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
Assets/images/avatars/captainIcon.png
Normal file
BIN
Assets/images/avatars/captainIcon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 28 KiB |
120
Assets/images/avatars/captainIcon.png.meta
Normal file
120
Assets/images/avatars/captainIcon.png.meta
Normal 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:
|
BIN
Assets/images/avatars/pilotIcon.png
Normal file
BIN
Assets/images/avatars/pilotIcon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 26 KiB |
120
Assets/images/avatars/pilotIcon.png.meta
Normal file
120
Assets/images/avatars/pilotIcon.png.meta
Normal 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:
|
BIN
Assets/images/avatars/voiceAssistantIcon.png
Normal file
BIN
Assets/images/avatars/voiceAssistantIcon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.9 KiB |
120
Assets/images/avatars/voiceAssistantIcon.png.meta
Normal file
120
Assets/images/avatars/voiceAssistantIcon.png.meta
Normal 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:
|
8
Assets/prefabs/Dialog/avatars.meta
Normal file
8
Assets/prefabs/Dialog/avatars.meta
Normal file
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e35c1f4540c0a184e93f806287212113
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
103
Assets/prefabs/Dialog/avatars/captainAvatar Variant.prefab
Normal file
103
Assets/prefabs/Dialog/avatars/captainAvatar Variant.prefab
Normal 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}
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: fdc4a3b308b524944aec017148206a92
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
77
Assets/prefabs/Dialog/avatars/pilotAvatar.prefab
Normal file
77
Assets/prefabs/Dialog/avatars/pilotAvatar.prefab
Normal 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
|
7
Assets/prefabs/Dialog/avatars/pilotAvatar.prefab.meta
Normal file
7
Assets/prefabs/Dialog/avatars/pilotAvatar.prefab.meta
Normal file
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 47c26c516e4ad5f4ab294bbeca7ecbed
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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}
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 360074e5f0b89134dae58f5d8d0c50c6
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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>();
|
||||
}
|
||||
|
@ -21,14 +21,19 @@ public class AudioPlayer : MonoBehaviour
|
|||
public void PlayAudio(AudioClip audio) {
|
||||
_audioPlayer.clip = audio;
|
||||
_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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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) {
|
||||
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:
|
||||
name.text = "Капитан";
|
||||
res = "Капитан";
|
||||
break;
|
||||
case Roles.PILOT:
|
||||
name.text = "Пилот";
|
||||
res = "Пилот";
|
||||
break;
|
||||
case Roles.VOICE_ASSISTANT:
|
||||
name.text = "Голосовой помощник";
|
||||
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);
|
||||
}
|
||||
}
|
||||
|
|
230
Assets/scripts/dialogSystem/DialogData.cs
Normal file
230
Assets/scripts/dialogSystem/DialogData.cs
Normal 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;
|
||||
}
|
||||
}
|
11
Assets/scripts/dialogSystem/DialogData.cs.meta
Normal file
11
Assets/scripts/dialogSystem/DialogData.cs.meta
Normal file
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f31da9a71ee5064488c04c9bdbb85a78
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,5 +5,7 @@ using UnityEngine;
|
|||
public enum Roles {
|
||||
PILOT,
|
||||
VOICE_ASSISTANT,
|
||||
CAPTAIN
|
||||
CAPTAIN,
|
||||
CAPTAIN_IN_IMAGINATION,
|
||||
VOICE_ASSISTANT_IN_IMAGINATION
|
||||
}
|
Loading…
Reference in New Issue
Block a user