Compare commits
2 Commits
a156f5c770
...
01916c83f6
| Author | SHA1 | Date | |
|---|---|---|---|
| 01916c83f6 | |||
| 11576d4097 |
40
Assets/Art/RenderTexture/TouShi2.renderTexture
Normal file
@ -0,0 +1,40 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!84 &8400000
|
||||
RenderTexture:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: TouShi2
|
||||
m_ImageContentsHash:
|
||||
serializedVersion: 2
|
||||
Hash: 00000000000000000000000000000000
|
||||
m_ForcedFallbackFormat: 4
|
||||
m_DownscaleFallback: 0
|
||||
m_IsAlphaChannelOptional: 0
|
||||
serializedVersion: 5
|
||||
m_Width: 2048
|
||||
m_Height: 2048
|
||||
m_AntiAliasing: 1
|
||||
m_MipCount: -1
|
||||
m_DepthStencilFormat: 94
|
||||
m_ColorFormat: 8
|
||||
m_MipMap: 0
|
||||
m_GenerateMips: 1
|
||||
m_SRGB: 0
|
||||
m_UseDynamicScale: 0
|
||||
m_BindMS: 0
|
||||
m_EnableCompatibleFormat: 1
|
||||
m_EnableRandomWrite: 0
|
||||
m_TextureSettings:
|
||||
serializedVersion: 2
|
||||
m_FilterMode: 1
|
||||
m_Aniso: 0
|
||||
m_MipBias: 0
|
||||
m_WrapU: 1
|
||||
m_WrapV: 1
|
||||
m_WrapW: 1
|
||||
m_Dimension: 2
|
||||
m_VolumeDepth: 1
|
||||
m_ShadowSamplingMode: 2
|
||||
8
Assets/Art/RenderTexture/TouShi2.renderTexture.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1a4557ab902d2374e9ccc66e7d32fc03
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 8400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Art/Sprites/习题图片/支气管呼吸音.png
Normal file
|
After Width: | Height: | Size: 659 KiB |
114
Assets/Art/Sprites/习题图片/支气管呼吸音.png.meta
Normal file
@ -0,0 +1,114 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8ebb96269586dbb4791c020e5cd96d6a
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 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: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 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
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Art/Sprites/习题图片/箭头-悬停.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
114
Assets/Art/Sprites/习题图片/箭头-悬停.png.meta
Normal file
@ -0,0 +1,114 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 074ad8c103f2e4a4b8de31bf690f6bea
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 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: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 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
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Art/Sprites/习题图片/箭头-选中.png
Normal file
|
After Width: | Height: | Size: 3.9 KiB |
114
Assets/Art/Sprites/习题图片/箭头-选中.png.meta
Normal file
@ -0,0 +1,114 @@
|
||||
fileFormatVersion: 2
|
||||
guid: aaebcd2c97c3a9a4b9be18ff6bb001c8
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 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: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 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
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Art/Sprites/习题图片/肩胛上区.png
Normal file
|
After Width: | Height: | Size: 1.9 MiB |
114
Assets/Art/Sprites/习题图片/肩胛上区.png.meta
Normal file
@ -0,0 +1,114 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c501fb0556a03f044bbb46fae7ab8190
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 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: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 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
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Art/Sprites/习题图片/肩胛上区2.png
Normal file
|
After Width: | Height: | Size: 67 KiB |
114
Assets/Art/Sprites/习题图片/肩胛上区2.png.meta
Normal file
@ -0,0 +1,114 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 53c1affe1be5a524ea3be37acca687bd
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 1
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 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: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 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
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Art/Sprites/习题图片/肩胛下区.png
Normal file
|
After Width: | Height: | Size: 82 KiB |
114
Assets/Art/Sprites/习题图片/肩胛下区.png.meta
Normal file
@ -0,0 +1,114 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1621282bfdab9394a8c9c57cf55e3d5e
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 1
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 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: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 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
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Art/Sprites/习题图片/肩胛线.png
Normal file
|
After Width: | Height: | Size: 789 KiB |
114
Assets/Art/Sprites/习题图片/肩胛线.png.meta
Normal file
@ -0,0 +1,114 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 617644bce60295b4b833104d8b6f4f4f
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 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: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 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
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Art/Sprites/习题图片/肩胛间区.png
Normal file
|
After Width: | Height: | Size: 56 KiB |
114
Assets/Art/Sprites/习题图片/肩胛间区.png.meta
Normal file
@ -0,0 +1,114 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c596e7926b8718b4d9ed7e02c15ebb0b
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 1
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 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: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 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
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Art/Sprites/习题图片/腋中线.png
Normal file
|
After Width: | Height: | Size: 690 KiB |
114
Assets/Art/Sprites/习题图片/腋中线.png.meta
Normal file
@ -0,0 +1,114 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 46fc86781beae4e48a6f781863140bc7
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 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: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 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
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -82,33 +82,33 @@ MonoBehaviour:
|
||||
m_Textures:
|
||||
blueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3}
|
||||
bayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3}
|
||||
m_PrefilteringModeMainLightShadows: 1
|
||||
m_PrefilteringModeAdditionalLight: 4
|
||||
m_PrefilteringModeAdditionalLightShadows: 1
|
||||
m_PrefilterXRKeywords: 0
|
||||
m_PrefilteringModeForwardPlus: 1
|
||||
m_PrefilteringModeDeferredRendering: 1
|
||||
m_PrefilteringModeScreenSpaceOcclusion: 1
|
||||
m_PrefilterDebugKeywords: 0
|
||||
m_PrefilterWriteRenderingLayers: 0
|
||||
m_PrefilterHDROutput: 0
|
||||
m_PrefilteringModeMainLightShadows: 3
|
||||
m_PrefilteringModeAdditionalLight: 3
|
||||
m_PrefilteringModeAdditionalLightShadows: 0
|
||||
m_PrefilterXRKeywords: 1
|
||||
m_PrefilteringModeForwardPlus: 0
|
||||
m_PrefilteringModeDeferredRendering: 0
|
||||
m_PrefilteringModeScreenSpaceOcclusion: 2
|
||||
m_PrefilterDebugKeywords: 1
|
||||
m_PrefilterWriteRenderingLayers: 1
|
||||
m_PrefilterHDROutput: 1
|
||||
m_PrefilterSSAODepthNormals: 0
|
||||
m_PrefilterSSAOSourceDepthLow: 0
|
||||
m_PrefilterSSAOSourceDepthMedium: 0
|
||||
m_PrefilterSSAOSourceDepthHigh: 0
|
||||
m_PrefilterSSAOInterleaved: 0
|
||||
m_PrefilterSSAOSourceDepthLow: 1
|
||||
m_PrefilterSSAOSourceDepthMedium: 1
|
||||
m_PrefilterSSAOSourceDepthHigh: 1
|
||||
m_PrefilterSSAOInterleaved: 1
|
||||
m_PrefilterSSAOBlueNoise: 0
|
||||
m_PrefilterSSAOSampleCountLow: 0
|
||||
m_PrefilterSSAOSampleCountMedium: 0
|
||||
m_PrefilterSSAOSampleCountLow: 1
|
||||
m_PrefilterSSAOSampleCountMedium: 1
|
||||
m_PrefilterSSAOSampleCountHigh: 0
|
||||
m_PrefilterDBufferMRT1: 0
|
||||
m_PrefilterDBufferMRT2: 0
|
||||
m_PrefilterDBufferMRT3: 0
|
||||
m_PrefilterSoftShadowsQualityLow: 0
|
||||
m_PrefilterSoftShadowsQualityMedium: 0
|
||||
m_PrefilterSoftShadowsQualityHigh: 0
|
||||
m_PrefilterDBufferMRT1: 1
|
||||
m_PrefilterDBufferMRT2: 1
|
||||
m_PrefilterDBufferMRT3: 1
|
||||
m_PrefilterSoftShadowsQualityLow: 1
|
||||
m_PrefilterSoftShadowsQualityMedium: 1
|
||||
m_PrefilterSoftShadowsQualityHigh: 1
|
||||
m_PrefilterSoftShadows: 0
|
||||
m_PrefilterScreenCoord: 0
|
||||
m_PrefilterNativeRenderPass: 0
|
||||
m_PrefilterScreenCoord: 1
|
||||
m_PrefilterNativeRenderPass: 1
|
||||
m_ShaderVariantLogLevel: 0
|
||||
m_ShadowCascades: 0
|
||||
|
||||
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e39ff17ff771aa746a2d4c73d066091d
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 58e3d70ecae579343a7656a246ca3b47
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 70dae7b1602d0f5499910a6fc78a4727
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: abe8d1e1305c3c2458cc3b3c7e2afc04
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b6b298855abd3b8469dc8003c612960a
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -37,7 +37,7 @@ public class ChatUI : MonoBehaviour
|
||||
private float wakeUpCountdownTime = 5f;
|
||||
private float wakeUpCurrentTime;
|
||||
private Coroutine coroutine;
|
||||
public XunFeiWakeup xunFeiWakeup;//语音唤醒
|
||||
public ZXKWakeup xunFeiWakeup;//语音唤醒
|
||||
private bool chatUIOpen;
|
||||
private string speakTxt;
|
||||
public string SpeakTxt
|
||||
@ -329,11 +329,10 @@ public class ChatUI : MonoBehaviour
|
||||
public void ShowDialogueEvent()
|
||||
{
|
||||
chatuiObj.transform.DOMove(p1.position, 0.5f);
|
||||
//audioSource.volume = 1;
|
||||
}
|
||||
void Listener()
|
||||
{
|
||||
if (wakeUpCurrentTime <= 0 && !Thinking && /*!Typing*/ /*&& !audioSource.isPlaying &&*/ !chatUIOpen && !prefab_v_next.activeSelf && !prefab_h_next.activeSelf)
|
||||
if (wakeUpCurrentTime <= 0 && !Thinking && !chatUIOpen && !prefab_v_next.activeSelf && !prefab_h_next.activeSelf)
|
||||
{
|
||||
closed = false;
|
||||
wakeUpCurrentTime = 0;
|
||||
@ -341,42 +340,17 @@ public class ChatUI : MonoBehaviour
|
||||
audioSource.Stop();
|
||||
if (coroutine != null) StopCoroutine(coroutine);
|
||||
GenChatTxt("你好,我在");
|
||||
//Typing = true;
|
||||
audioSource.clip = welcomeAudioCilp;
|
||||
audioSource.Play();
|
||||
coroutine = StartCoroutine(WaitExecute(welcomeAudioCilp.length, () => {
|
||||
wakeUpCurrentTime = wakeUpCountdownTime;
|
||||
//Typing = false;
|
||||
ChatAI.Instance.StartRecording(str => {
|
||||
SpeakTxt = str;
|
||||
});
|
||||
}));
|
||||
}
|
||||
}
|
||||
//void Check(string txt)
|
||||
//{
|
||||
// if (wakeUpCurrentTime <= 0 && Regex.Replace(txt, @"[\p{P}\p{S}]", "").Contains("小智小智") && !Thinking && !Typing && !audioSource.isPlaying && !chatUIOpen)
|
||||
// {
|
||||
// closed = false;
|
||||
// wakeUpCurrentTime = 0;
|
||||
// ChatAI.Instance.StopVoice();
|
||||
// audioSource.Stop();
|
||||
// if (coroutine != null) StopCoroutine(coroutine);
|
||||
// GenChatTxt("你好,我在");
|
||||
// Typing = true;
|
||||
// audioSource.clip = welcomeAudioCilp;
|
||||
// audioSource.Play();
|
||||
// coroutine = StartCoroutine(WaitExecute(welcomeAudioCilp.length + 1.5f, () => {
|
||||
// wakeUpCurrentTime = wakeUpCountdownTime;
|
||||
// Typing = false;
|
||||
// }));
|
||||
// }
|
||||
// if (!audioSource.isPlaying && wakeUpCurrentTime > 0 && !Thinking && !Typing && !closed && !chatUIOpen)
|
||||
// {
|
||||
// Debug.Log("语音正在输入中: " + Regex.Replace(txt, @"[\p{P}\p{S}]", ""));
|
||||
// SpeakTxt = txt;
|
||||
// }
|
||||
//}
|
||||
|
||||
void GenChatTxt(string txt)
|
||||
{
|
||||
int lineCount = Regex.Matches(txt, @"\r\n|\r|\n").Count + 1;
|
||||
@ -418,7 +392,6 @@ public class ChatUI : MonoBehaviour
|
||||
wakeUpCurrentTime = 0;
|
||||
ChatAI.Instance.StopRecording();
|
||||
Thinking = false;
|
||||
//Typing = false;
|
||||
ChatAI.Instance.StopVoice();
|
||||
ChatAI.Instance.StopSend();
|
||||
audioSource.Stop();
|
||||
@ -433,6 +406,7 @@ public class ChatUI : MonoBehaviour
|
||||
{
|
||||
CloseChatTxt();
|
||||
action?.Invoke();
|
||||
action = null;
|
||||
}
|
||||
|
||||
IEnumerator WaitExecute(float t, Action callBack)
|
||||
@ -440,14 +414,4 @@ public class ChatUI : MonoBehaviour
|
||||
yield return new WaitForSeconds(t);
|
||||
callBack?.Invoke();
|
||||
}
|
||||
//IEnumerator TypeText(float totalTime, string fullText, Action<string> callBack, Action action)
|
||||
//{
|
||||
// float timePerCharacter = totalTime / fullText.Length;
|
||||
// for (int i = 0; i <= fullText.Length; i++)
|
||||
// {
|
||||
// callBack?.Invoke(fullText.Substring(0, i));
|
||||
// yield return new WaitForSeconds(timePerCharacter);
|
||||
// }
|
||||
// action?.Invoke();
|
||||
//}
|
||||
}
|
||||
|
||||
@ -2,8 +2,10 @@ using LitJson;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Networking;
|
||||
using UnityEngine.Windows;
|
||||
using YiLiao.Main;
|
||||
|
||||
public class ChatZxkAI : LLM
|
||||
@ -79,7 +81,10 @@ public class ChatZxkAI : LLM
|
||||
Debug.Log(responseBody["choices"][0]["message"]["content"].ToString() + "\nAI-ºÄʱ" + stopwatch.Elapsed.TotalSeconds);
|
||||
assistant = responseBody["choices"][0]["message"]["content"].ToString();
|
||||
//»Øµ÷
|
||||
_callback?.Invoke(responseBody["choices"][0]["message"]["content"].ToString());
|
||||
string pattern = @"\[.*?\]|\(CITE\)";
|
||||
//执行替换,将匹配到的内容替换为空字符串
|
||||
string result = Regex.Replace(assistant, pattern, "");
|
||||
_callback?.Invoke(result);
|
||||
success = true;
|
||||
}
|
||||
else if (coroutineRunning)
|
||||
|
||||
@ -2,21 +2,21 @@ using System.Text.RegularExpressions;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class WeiGuan_Sensor : Sensor
|
||||
public class TZQ_Sensor : Sensor
|
||||
{
|
||||
[SerializeField]
|
||||
Text txt;
|
||||
public int WBDeep = 0;
|
||||
public int positionValue = 0;
|
||||
public override void ReceiveData(string datas)
|
||||
{
|
||||
base.ReceiveData(datas);
|
||||
Regex regex = new Regex(@"#ID:WBJC.*?WBDeep:(\d+)");
|
||||
Regex regex = new Regex(@"Position:(\d+)");
|
||||
Match match = regex.Match(datas);
|
||||
if (match.Success)
|
||||
{
|
||||
if (int.TryParse(match.Groups[1].Value, out WBDeep))
|
||||
if (int.TryParse(match.Groups[1].Value, out positionValue))
|
||||
{
|
||||
txt.text = "WBJC:" + WBDeep;
|
||||
txt.text = "µãλ:" + positionValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,37 +0,0 @@
|
||||
using System.Text.RegularExpressions;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
/// <summary>
|
||||
/// Îü̵»ú
|
||||
/// </summary>
|
||||
public class XiTanJi_SenSor : Sensor
|
||||
{
|
||||
public bool LianJie;
|
||||
public float progressValue;
|
||||
[SerializeField]
|
||||
Text txt;
|
||||
public override void ReceiveData(string datas)
|
||||
{
|
||||
base.ReceiveData(datas);
|
||||
Regex regex = new Regex(@"#ID:([^,]+).*?Press:([\d.]+)");
|
||||
Match match = regex.Match(datas);
|
||||
if (match.Success)
|
||||
{
|
||||
string idName = match.Groups[1].Value;
|
||||
if (idName == "XTJ")
|
||||
{
|
||||
LianJie = true;
|
||||
txt.text = "CONNECTED";
|
||||
}
|
||||
}
|
||||
|
||||
Regex regex3 = new Regex(@"DISCONNECTED");
|
||||
Match match3 = regex3.Match(datas);
|
||||
if (match3.Success)
|
||||
{
|
||||
LianJie = false;
|
||||
txt.text = "DISCONNECTED";
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,11 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0b72659c78c0ea74794a69b42cef4e31
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -1,26 +0,0 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Text.RegularExpressions;
|
||||
using Unity.VisualScripting.Antlr3.Runtime;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class XiTanJianCe_SenSor : Sensor
|
||||
{
|
||||
[SerializeField]
|
||||
Text txt;
|
||||
public int XTDeep = 0;
|
||||
public override void ReceiveData(string datas)
|
||||
{
|
||||
base.ReceiveData(datas);
|
||||
Regex regex = new Regex(@"#ID:WBJC.*?XTDeep:(\d+)");
|
||||
Match match = regex.Match(datas);
|
||||
if (match.Success)
|
||||
{
|
||||
if (int.TryParse(match.Groups[1].Value, out XTDeep))
|
||||
{
|
||||
txt.text = "WBJC:" + XTDeep;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
25
Assets/Third/SensorModule/Scripts/Sensor/ZXKWakeup.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using NAudio.Wave;
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.IO.Ports;
|
||||
using System.Linq;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading;
|
||||
/// <summary>
|
||||
/// 语音工具
|
||||
/// </summary>
|
||||
public class ZXKWakeup : Sensor
|
||||
{
|
||||
//唤醒词:小智小智
|
||||
public Action callBack;//唤醒回调
|
||||
public override void ReceiveData(string datas)
|
||||
{
|
||||
base.ReceiveData(datas);
|
||||
if (datas.TrimEnd('\n', '\r') == "hello")
|
||||
{
|
||||
callBack?.Invoke();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 57b72e9322c57a34c995136f0b6bb88c
|
||||
guid: 480b147f8d3252a4abaf864aefc8672b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
@ -395,7 +395,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
switch (id)
|
||||
{
|
||||
case "1":
|
||||
case "3":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("气管听诊器位置1");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("气管听诊器位置1_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("气管听诊器位置1_taigebo");
|
||||
@ -407,7 +407,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("支气管听诊器位置1_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管听诊器位置1_taigebo_透明");
|
||||
break;
|
||||
case "3":
|
||||
case "1":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置1");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置1_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置1_taigebo");
|
||||
@ -419,49 +419,49 @@ namespace YiLiao.XinFeiTingZhen
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置2_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置2_taigebo_透明");
|
||||
break;
|
||||
case "5":
|
||||
case "8":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置3");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置3_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置3_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置3_taigebo_透明");
|
||||
break;
|
||||
case "6":
|
||||
case "9":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置4");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置4_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置4_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置4_taigebo_透明");
|
||||
break;
|
||||
case "7":
|
||||
case "16":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置1");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置1_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置1_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置1_taigebo_透明");
|
||||
break;
|
||||
case "8":
|
||||
case "28":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置2");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置2_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置2_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置2_taigebo_透明");
|
||||
break;
|
||||
case "9":
|
||||
case "23":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置1");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置1_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置1_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置1_taigebo_透明");
|
||||
break;
|
||||
case "10":
|
||||
case "19":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置2");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置2_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置2_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置2_taigebo_透明");
|
||||
break;
|
||||
case "11":
|
||||
case "15":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("左锁骨中线与第5肋间交点内0.5cm听诊器位置1_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("左锁骨中线与第5肋间交点内0.5cm听诊器位置1_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("左锁骨中线与第5肋间交点内0.5cm听诊器位置1_taigebo_透明");
|
||||
break;
|
||||
case "12":
|
||||
case "11":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("胸骨左缘第3肋间听诊器位置1");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("胸骨左缘第3肋间听诊器位置1_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("胸骨左缘第3肋间听诊器位置1_taigebo");
|
||||
@ -479,13 +479,13 @@ namespace YiLiao.XinFeiTingZhen
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("胸骨左缘第5肋间听诊器位置1_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("胸骨左缘第5肋间听诊器位置1_taigebo_透明");
|
||||
break;
|
||||
case "15":
|
||||
case "12":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("心底部听诊器位置1");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("心底部听诊器位置1_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("心底部听诊器位置1_taigebo");
|
||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("心底部听诊器位置1_taigebo_透明");
|
||||
break;
|
||||
case "16":
|
||||
case "--":
|
||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("心底部听诊器位置2");
|
||||
GameObject.Find("nan_透明")?.GetComponent<TzqController>().SetPos("心底部听诊器位置2_透明");
|
||||
GameObject.Find("nan_taigebo")?.GetComponent<TzqController>().SetPos("心底部听诊器位置2_taigebo");
|
||||
|
||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class CuCaoXingHuXiYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "7", "8" };
|
||||
List<string> success = new() { "16", "28" };
|
||||
string audioName = "35--粗糙性呼吸音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:35,35;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
fsm.Unlight("肺泡听诊器位置2");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class CuShiLuoYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "1";
|
||||
string success = "3";
|
||||
string audioName = "38--大湿罗音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:3;SONG:38;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("气管听诊器位置1");
|
||||
@ -24,7 +31,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -75,12 +81,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("Æø¹ÜÌýÕïÆ÷λÖÃ1");
|
||||
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("气管听诊器位置1");
|
||||
@ -88,7 +99,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && success != PositionValue)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -98,7 +109,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,27 +7,45 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiDiaoGanLuoYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "3", "4", "5", "6" };
|
||||
List<string> success = new() { "8", "9" };
|
||||
Coroutine cor;
|
||||
string audioName = "44--鼾音";
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
bool step2_kh;
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("支气管肺泡听诊器位置1");
|
||||
fsm.Light("支气管肺泡听诊器位置2");
|
||||
fsm.Light("支气管肺泡听诊器位置3");
|
||||
fsm.Light("支气管肺泡听诊器位置4");
|
||||
fsm.ShowArrow("将实物听诊器放置于胸骨两侧第1、2肋间隙处进行听诊。", "支气管肺泡听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:8,9;SONG:44,44;%");
|
||||
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
|
||||
{
|
||||
step2_kh = true;
|
||||
fsm.HideTzq();
|
||||
fsm.ShowTxtImgQuestion("肺部听诊——异常呼吸音——啰音——低调干啰音", 19, 0, 5, () => {
|
||||
fsm.ChangeState("ShiLuoYin");
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ModeType.ShiXun)
|
||||
{
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("支气管肺泡听诊器位置1");
|
||||
fsm.Light("支气管肺泡听诊器位置2");
|
||||
fsm.Light("支气管肺泡听诊器位置3");
|
||||
fsm.Light("支气管肺泡听诊器位置4");
|
||||
fsm.ShowArrow("将实物听诊器放置于胸骨两侧第1、2肋间隙处进行听诊。", "支气管肺泡听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,12 +96,19 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("支气管肺泡听诊器位置1");
|
||||
fsm.Unlight("支气管肺泡听诊器位置2");
|
||||
fsm.Unlight("支气管肺泡听诊器位置3");
|
||||
fsm.Unlight("支气管肺泡听诊器位置4");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("支气管肺泡听诊器位置1");
|
||||
@ -93,17 +118,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
}
|
||||
if (step2_kh)
|
||||
{
|
||||
fsm.ShowTzq(PositionValue);
|
||||
}
|
||||
}
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
step2_kh = false;
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiErXinYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "11";
|
||||
string success = "15";
|
||||
string audioName = "第二心音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && PositionValue != success)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,27 +7,31 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiErXinYinFanChangFenLie : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "15", "16" };
|
||||
List<string> success = new() { "9" };
|
||||
string audioName = "第二心音反常分裂";
|
||||
Coroutine cor;
|
||||
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("心底部听诊器位置1");
|
||||
fsm.Light("心底部听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("心底部听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置2", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("心底部听诊器位置1");
|
||||
fsm.Unlight("心底部听诊器位置2");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("心底部听诊器位置1");
|
||||
@ -91,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -101,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiErXinYinGuDingFenLie : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "15", "16" };
|
||||
List<string> success = new() { "9" };
|
||||
string audioName = "第二心音固定分裂";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("心底部听诊器位置1");
|
||||
fsm.Light("心底部听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("心底部听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置2", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,20 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("心底部听诊器位置2");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("心底部听诊器位置1");
|
||||
fsm.Unlight("心底部听诊器位置2");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -101,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,27 +7,31 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiErXinYinJianRuo : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "15", "16" };
|
||||
List<string> success = new() { "8", "9" };
|
||||
string audioName = "第二心音减弱";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("心底部听诊器位置1");
|
||||
fsm.Light("心底部听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:8,9;SONG:1,1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("心底部听诊器位置1");
|
||||
fsm.Light("心底部听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("心底部听诊器位置1");
|
||||
fsm.Unlight("心底部听诊器位置2");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("心底部听诊器位置1");
|
||||
@ -91,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -101,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiErXinYinTongChangFenLie : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "15", "16" };
|
||||
List<string> success = new() { "9" };
|
||||
string audioName = "第二心音通常分裂";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("心底部听诊器位置1");
|
||||
fsm.Light("心底部听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("心底部听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置2", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,20 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("心底部听诊器位置2");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("心底部听诊器位置1");
|
||||
fsm.Unlight("心底部听诊器位置2");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -101,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,15 +7,22 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiErXinYinZengQiang : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "15", "16" };
|
||||
List<string> success = new() { "8", "9" };
|
||||
string audioName = "59--第二心音增强";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
GameManager.Instance.senSor.SendFunction("#ID:8,9;SONG:59,59;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("心底部听诊器位置1");
|
||||
@ -27,7 +34,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,12 +84,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("心底部听诊器位置1");
|
||||
fsm.Unlight("心底部听诊器位置2");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("心底部听诊器位置1");
|
||||
@ -91,7 +102,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -101,7 +112,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiSanXinYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "11";
|
||||
string success = "15";
|
||||
string audioName = "54--正常第三心音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:54;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && PositionValue != success)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiSiXinYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "11";
|
||||
string success = "15";
|
||||
string audioName = "第四心音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && PositionValue != success)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiYiXinYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "11";
|
||||
string success = "15";
|
||||
string audioName = "第一心音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && PositionValue != success)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiYiXinYinFenLie : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "11"};
|
||||
List<string> success = new() { "15"};
|
||||
string audioName = "61--第一心音分裂";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:61;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -100,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiYiXinYinJianRuo : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "11";
|
||||
string success = "15";
|
||||
string audioName = "57--第一心音减弱";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:57;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && PositionValue != success)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiYiXinYinQiangRuoBuDeng : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "11";
|
||||
string success = "15";
|
||||
string audioName = "第一心音强弱不等";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && PositionValue != success)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DiYiXinYinZengQiang : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "11";
|
||||
string success = "15";
|
||||
string audioName = "56--第一心音增强";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:56;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && PositionValue != success)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class DuanXuXingHuXiYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "7", "8" };
|
||||
List<string> success = new() { "16", "28" };
|
||||
string audioName = "34--断续性呼吸音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:34,34;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
fsm.Unlight("肺泡听诊器位置2");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,24 +6,44 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class ErJianBanQu : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "11";
|
||||
string success = "15";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
bool step2_kh;
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayClip("二尖瓣区");
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:54;%");
|
||||
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
|
||||
{
|
||||
step2_kh = true;
|
||||
fsm.HideTzq();
|
||||
fsm.ShowTxtImgQuestion("心脏听诊——心脏杂音——舒张期杂音——二尖瓣区", 23, 0, 5, () => {
|
||||
fsm.ShowTxtImgQuestion("心脏听诊——心脏杂音——舒张期杂音——二尖瓣区", 24, 0, 5, () => {
|
||||
fsm.ChangeState("ShuZhangZaoQiBenMaLv");
|
||||
});
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ModeType.ShiXun)
|
||||
{
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayClip("二尖瓣区");
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -70,28 +90,35 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && success != PositionValue)
|
||||
{
|
||||
False();
|
||||
}
|
||||
}
|
||||
if (step2_kh)
|
||||
{
|
||||
fsm.ShowTzq(PositionValue);
|
||||
}
|
||||
}
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
step2_kh = false;
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,26 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class ErJianBanQu2 : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "11" };
|
||||
List<string> success = new() { "15" };
|
||||
string audioName = "72--二尖瓣关闭不全";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:72;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -77,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,26 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class ErJianBanQu3 : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "11" };
|
||||
List<string> success = new() { "15" };
|
||||
string audioName = "76--二尖瓣狭窄";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:76;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -77,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,13 +6,20 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class FeiDongMaiBanQu : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "6";
|
||||
string success = "9";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:54;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("支气管肺泡听诊器位置4");
|
||||
@ -22,7 +29,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -69,19 +75,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("Ö§Æø¹Ü·ÎÅÝÌýÕïÆ÷λÖÃ4");
|
||||
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("支气管肺泡听诊器位置4");
|
||||
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && success != PositionValue)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -91,7 +101,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class FeiDongMaiBanQu2 : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "6";
|
||||
string success = "9";
|
||||
string audioName = "74--肺动脉瓣区收缩期杂音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:74;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("支气管肺泡听诊器位置4");
|
||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("Ö§Æø¹Ü·ÎÅÝÌýÕïÆ÷λÖÃ4");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("支气管肺泡听诊器位置4");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && PositionValue != success)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class FeiDongMaiBanQu3 : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "6";
|
||||
string success = "9";
|
||||
string audioName = "肺动脉瓣区";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("支气管肺泡听诊器位置4");
|
||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("Ö§Æø¹Ü·ÎÅÝÌýÕïÆ÷λÖÃ4");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("支气管肺泡听诊器位置4");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && PositionValue != success)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,25 +7,43 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class FeiPaoHuXiYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
bool step2_kh;
|
||||
//成功的标志
|
||||
List<string> success = new() {"7", "8"};
|
||||
List<string> success = new() {"16", "28"};
|
||||
Coroutine cor;
|
||||
string audioName = "30--肺泡呼吸音";
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
fsm.Light("肺泡听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于乳房下部进行听诊。", "肺泡听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:30,30;%");
|
||||
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
|
||||
{
|
||||
step2_kh = true;
|
||||
fsm.HideTzq();
|
||||
fsm.ShowTxtImgQuestion("肺部听诊——正常呼吸音——肺泡呼吸音", 15, 0, 5, () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ModeType.ShiXun)
|
||||
{
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
fsm.Light("肺泡听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于乳房下部进行听诊。", "肺泡听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +94,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
fsm.Unlight("肺泡听诊器位置2");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
@ -89,17 +112,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
}
|
||||
if (step2_kh)
|
||||
{
|
||||
fsm.ShowTzq(PositionValue);
|
||||
}
|
||||
}
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step2_kh = false;
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,25 +7,43 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class FeiPaoHuXiYinJianRuoHuoXiaoShi : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "7", "8" };
|
||||
List<string> success = new() { "16", "28" };
|
||||
Coroutine cor;
|
||||
string audioName = "31--肺泡呼吸音减弱或消失";
|
||||
bool step2_kh;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
fsm.Light("肺泡听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于乳房下部进行听诊。", "肺泡听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:31,31;%");
|
||||
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
|
||||
{
|
||||
step2_kh = true;
|
||||
fsm.HideTzq();
|
||||
fsm.ShowTxtImgQuestion("肺部听诊——异常呼吸音——异常肺泡呼吸音——肺泡呼吸音减弱或消失", 17, 0, 5, () => {
|
||||
fsm.ChangeState("GanLuoYin");
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ModeType.ShiXun)
|
||||
{
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
fsm.Light("肺泡听诊器位置2");
|
||||
fsm.ShowArrow("将实物听诊器放置于乳房下部进行听诊。", "肺泡听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +94,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
fsm.Unlight("肺泡听诊器位置2");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
@ -89,17 +112,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
}
|
||||
if (step2_kh)
|
||||
{
|
||||
fsm.ShowTzq(PositionValue);
|
||||
}
|
||||
}
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step2_kh = false;
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class FeiPaoHuXiYinZengQiang : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "7", "8" };
|
||||
List<string> success = new() { "16", "28" };
|
||||
string audioName = "32--肺泡呼吸音增强";
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
Coroutine cor;
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:32,32;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
fsm.Unlight("肺泡听诊器位置2");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,6 +6,9 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.ShowTxtImgQuestion("ÐØ²¿Ìå±í±êÖ¾¡ª¡ª¸¡Àß", 4, 0, 2, () => {
|
||||
fsm.ChangeState("JianJiaGuJianJiaXiaJiao");
|
||||
});
|
||||
}
|
||||
public override void OnStateStay()
|
||||
{
|
||||
@ -14,6 +17,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.nextState = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -3,17 +3,39 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
public class GanLuoYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step2_kh;
|
||||
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
step2_kh = true;
|
||||
fsm.HideTzq();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:8,9;SONG:43;%");
|
||||
fsm.ShowTxtImgQuestion("·Î²¿ÌýÕ¡ªÒì³£ºôÎüÒô¡ª¡ª†ªÒô¡ª¡ª¸É†ªÒô", 18, 0, 5, () => {
|
||||
fsm.ChangeState("DiDiaoGanLuoYin");
|
||||
});
|
||||
}
|
||||
public override void OnStateStay()
|
||||
{
|
||||
base.OnStateStay();
|
||||
if (step2_kh)
|
||||
{
|
||||
fsm.ShowTzq(PositionValue);
|
||||
}
|
||||
}
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
step2_kh = false;
|
||||
fsm.HideTzq();
|
||||
fsm.nextState = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -3,17 +3,38 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
public class GanLuoYin_ShiLuoYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step2_kh;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
step2_kh = true;
|
||||
fsm.HideTzq();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:8,9,3;SONG:43,43,38;%");
|
||||
fsm.ShowTxtImgQuestion("·Î²¿ÌýÕ¡ªÒì³£ºôÎüÒô¡ª¡ª†ªÒô¡ª¡ª¸É†ªÒô&ʪ†ªÒô", 21, 0, 5, () => {
|
||||
fsm.ChangeState("XiongMoMoCaYin");
|
||||
});
|
||||
}
|
||||
public override void OnStateStay()
|
||||
{
|
||||
base.OnStateStay();
|
||||
if (step2_kh)
|
||||
{
|
||||
fsm.ShowTzq(PositionValue);
|
||||
}
|
||||
}
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
step2_kh = false;
|
||||
fsm.HideTzq();
|
||||
fsm.nextState = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -7,14 +7,22 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class GaoDiaoGanLuoYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "3", "4", "5", "6" };
|
||||
List<string> success = new() { "8", "9" };
|
||||
Coroutine cor;
|
||||
string audioName = "43--高调干啰音(哨笛音)";
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:8,9;SONG:43,43;%");
|
||||
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("支气管肺泡听诊器位置1");
|
||||
@ -27,7 +35,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,12 +85,19 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("支气管肺泡听诊器位置1");
|
||||
fsm.Unlight("支气管肺泡听诊器位置2");
|
||||
fsm.Unlight("支气管肺泡听诊器位置3");
|
||||
fsm.Unlight("支气管肺泡听诊器位置4");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("支气管肺泡听诊器位置1");
|
||||
@ -93,7 +107,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -103,7 +117,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class HuXiYinYanChang : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "7", "8" };
|
||||
List<string> success = new() { "16", "28" };
|
||||
string audioName = "呼吸音延长";
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
Coroutine cor;
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:1,1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
fsm.Unlight("肺泡听诊器位置2");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,14 +6,15 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.ShowTxtQuestion("胸部体表标志——肩胛骨肩胛下角", 1, 0, 2, () => {
|
||||
fsm.ChangeState("QianZhengZhongXian");
|
||||
});
|
||||
}
|
||||
public override void OnStateStay()
|
||||
{
|
||||
base.OnStateStay();
|
||||
}
|
||||
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.nextState = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -6,23 +6,32 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.ShowArrow("点击“两肩胛骨内缘之间的区域”", "两肩胛骨内缘之间的区域", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("两肩胛骨内缘之间的区域");
|
||||
});
|
||||
|
||||
fsm.InteractionDown("两肩胛骨内缘之间的区域", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("两肩胛骨内缘之间的区域", null);
|
||||
fsm.Unlight_DisableInteraction("两肩胛骨内缘之间的区域");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("肩胛间区动画", () => {
|
||||
fsm.nextState = true;
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||
{
|
||||
fsm.ShowTxtImgQuestion("垂直线标志——肩胛间区", 13, 0, 2, () => {
|
||||
fsm.ChangeState("ZhiQiGuanHuXiYin");
|
||||
});
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||
{
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.ShowArrow("点击“两肩胛骨内缘之间的区域”", "两肩胛骨内缘之间的区域", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("两肩胛骨内缘之间的区域");
|
||||
});
|
||||
|
||||
fsm.InteractionDown("两肩胛骨内缘之间的区域", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("两肩胛骨内缘之间的区域", null);
|
||||
fsm.Unlight_DisableInteraction("两肩胛骨内缘之间的区域");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("肩胛间区动画", () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
public override void OnStateStay()
|
||||
{
|
||||
|
||||
@ -6,23 +6,30 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.ShowArrow("点击“肩胛冈以上的区域”", "肩胛冈以上的区域", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("肩胛冈以上的区域");
|
||||
});
|
||||
|
||||
fsm.InteractionDown("肩胛冈以上的区域", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("肩胛冈以上的区域", null);
|
||||
fsm.Unlight_DisableInteraction("肩胛冈以上的区域");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("肩胛上区动画", () => {
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||
{
|
||||
fsm.ShowTxtImgQuestion("垂直线标志——肩胛上区", 11, 0, 1, () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||
{
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.ShowArrow("点击“肩胛冈以上的区域”", "肩胛冈以上的区域", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("肩胛冈以上的区域");
|
||||
});
|
||||
fsm.InteractionDown("肩胛冈以上的区域", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("肩胛冈以上的区域", null);
|
||||
fsm.Unlight_DisableInteraction("肩胛冈以上的区域");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("肩胛上区动画", () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
public override void OnStateStay()
|
||||
{
|
||||
|
||||
@ -6,23 +6,31 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.ShowArrow("点击“两肩胛下角的连线与第12胸椎水平线之间区域”", "两肩胛下角的连线与第12胸椎水平线之间区域", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("两肩胛下角的连线与第12胸椎水平线之间区域");
|
||||
});
|
||||
|
||||
fsm.InteractionDown("两肩胛下角的连线与第12胸椎水平线之间区域", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("两肩胛下角的连线与第12胸椎水平线之间区域", null);
|
||||
fsm.Unlight_DisableInteraction("两肩胛下角的连线与第12胸椎水平线之间区域");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("肩胛下区动画", () => {
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||
{
|
||||
fsm.ShowTxtImgQuestion("垂直线标志——肩胛下区", 12, 0, 1, () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||
{
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.ShowArrow("点击“两肩胛下角的连线与第12胸椎水平线之间区域”", "两肩胛下角的连线与第12胸椎水平线之间区域", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("两肩胛下角的连线与第12胸椎水平线之间区域");
|
||||
});
|
||||
fsm.InteractionDown("两肩胛下角的连线与第12胸椎水平线之间区域", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("两肩胛下角的连线与第12胸椎水平线之间区域", null);
|
||||
fsm.Unlight_DisableInteraction("两肩胛下角的连线与第12胸椎水平线之间区域");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("肩胛下区动画", () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
public override void OnStateStay()
|
||||
{
|
||||
|
||||
@ -6,25 +6,33 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
fsm.PlayClip("肩胛线动画1", () => {
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.ShowArrow("点击“肩胛下角”", "肩胛下角", 0, 999);
|
||||
fsm.Light_EnableInteraction("肩胛下角");
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||
{
|
||||
fsm.ShowTxtImgQuestion("垂直线标志——肩胛线", 10, 0, 2, () => {
|
||||
fsm.ChangeState("JianJiaShangQu");
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
fsm.InteractionDown("肩胛下角", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("肩胛下角", null);
|
||||
fsm.Hide_Unlight_DisableInteraction("肩胛下角");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("肩胛线动画2", () => {
|
||||
fsm.nextState = true;
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||
{
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
fsm.PlayClip("肩胛线动画1", () => {
|
||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||
fsm.ShowArrow("点击“肩胛下角”", "肩胛下角", 0, 999);
|
||||
fsm.Light_EnableInteraction("肩胛下角");
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
fsm.InteractionDown("肩胛下角", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("肩胛下角", null);
|
||||
fsm.Hide_Unlight_DisableInteraction("肩胛下角");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("肩胛线动画2", () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
public override void OnStateStay()
|
||||
{
|
||||
|
||||
@ -9,7 +9,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||
{
|
||||
fsm.ShowTxtImgQuestion("ÐØ²¿Ìå±í±êÖ¾¡ª¡ª½£Í»", 3, 0, 2, () => {
|
||||
fsm.nextState = true;
|
||||
fsm.ChangeState("FuLei");
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||
|
||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class KaiBanYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "11" };
|
||||
List<string> success = new() { "15" };
|
||||
string audioName = "68--开瓣音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:68;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -100,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,27 +7,45 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class LianXuXingZaYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "5" };
|
||||
List<string> success = new() { "8" };
|
||||
string audioName = "80--连续性杂音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
bool step2_kh;
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("支气管肺泡听诊器位置3");
|
||||
fsm.ShowArrow("将实物听诊器放置于胸骨右缘第2肋间处进行听诊。", "支气管肺泡听诊器位置3", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:8;SONG:80;%");
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||
{
|
||||
step2_kh = true;
|
||||
fsm.HideTzq();
|
||||
fsm.ShowTxtImgQuestion("心脏听诊——心脏杂音——连续性杂音", 26, 0, 5, () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||
{
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("支气管肺泡听诊器位置3");
|
||||
fsm.ShowArrow("将实物听诊器放置于胸骨右缘第2肋间处进行听诊。", "支气管肺泡听诊器位置3", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
}
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,29 +96,37 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("支气管肺泡听诊器位置3");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("支气管肺泡听诊器位置3");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
}
|
||||
if (step2_kh)
|
||||
{
|
||||
fsm.ShowTzq(PositionValue);
|
||||
}
|
||||
}
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
step2_kh = false;
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class NianFaYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "7", "8" };
|
||||
List<string> success = new() { "16", "28" };
|
||||
string audioName = "42--湿罗音捻发音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:42,42;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
fsm.Unlight("肺泡听诊器位置2");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -1,21 +1,29 @@
|
||||
using FSM;
|
||||
using System;
|
||||
using UnityEngine;
|
||||
using YiLiao.Main;
|
||||
using ZXKFramework;
|
||||
namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
public class QiGuanHuXiYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
string success = "1";
|
||||
string success = "3";
|
||||
string audioName = "气管呼吸音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
GameManager.Instance.senSor.SendFunction("#ID:3;SONG:1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("气管听诊器位置1");
|
||||
@ -26,7 +34,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -74,23 +81,25 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public override void OnStateStay()
|
||||
{
|
||||
base.OnStateStay();
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success;
|
||||
fsm.ShowTzq(success);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("Æø¹ÜÌýÕïÆ÷λÖÃ1");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (id == success)
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (PositionValue == success)
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("气管听诊器位置1");
|
||||
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if(!string.IsNullOrEmpty(id) && id != success)
|
||||
else if (PositionValue != "0" && success != PositionValue)
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -100,7 +109,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,30 +6,41 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.ShowArrow("点击“胸骨柄上缘的中点”", "胸骨柄上缘的中点", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("胸骨柄上缘的中点");
|
||||
});
|
||||
fsm.InteractionDown("胸骨柄上缘的中点", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("胸骨柄上缘的中点", null);
|
||||
fsm.Hide_Unlight_DisableInteraction("胸骨柄上缘的中点");
|
||||
fsm.PlayClip("前正中线动画1", () => {
|
||||
fsm.ShowArrow("点击“剑突中央”", "剑突中央", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("剑突中央");
|
||||
});
|
||||
});
|
||||
fsm.InteractionDown("剑突中央", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("剑突中央", null);
|
||||
fsm.Hide_Unlight_DisableInteraction("剑突中央");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("前正中线动画2", () => {
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||
{
|
||||
fsm.ShowTxtImgQuestion("垂直线标志——前正中线", 5, 0, 2, () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||
{
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.ShowArrow("点击“胸骨柄上缘的中点”", "胸骨柄上缘的中点", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("胸骨柄上缘的中点");
|
||||
});
|
||||
fsm.InteractionDown("胸骨柄上缘的中点", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("胸骨柄上缘的中点", null);
|
||||
fsm.Hide_Unlight_DisableInteraction("胸骨柄上缘的中点");
|
||||
fsm.PlayClip("前正中线动画1", () => {
|
||||
fsm.ShowArrow("点击“剑突中央”", "剑突中央", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("剑突中央");
|
||||
});
|
||||
});
|
||||
fsm.InteractionDown("剑突中央", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("剑突中央", null);
|
||||
fsm.Hide_Unlight_DisableInteraction("剑突中央");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("前正中线动画2", () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
public override void OnStateExit()
|
||||
{
|
||||
|
||||
@ -7,13 +7,20 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class SanJianBanQu : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "13","14" };
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:13,14;SONG:54,54;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("胸骨左缘第4肋间听诊器位置1");
|
||||
@ -24,7 +31,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -71,19 +77,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
||||
fsm.Unlight("胸骨左缘第5肋间听诊器位置1");
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
||||
fsm.Unlight("胸骨左缘第5肋间听诊器位置1");
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -93,7 +103,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class SanJianBanQu2 : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "13", "14" };
|
||||
string audioName = "75--三尖瓣区收缩期杂音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:13,14;SONG:75,75;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("胸骨左缘第4肋间听诊器位置1");
|
||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
||||
fsm.Unlight("胸骨左缘第5肋间听诊器位置1");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class SanJianBanQu3 : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "13", "14" };
|
||||
string audioName = "79--三尖瓣区舒张期杂音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:13,14;SONG:79,79;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("胸骨左缘第4肋间听诊器位置1");
|
||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
||||
fsm.Unlight("胸骨左缘第5肋间听诊器位置1");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -3,17 +3,38 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
public class ShiLuoYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step2_kh;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
step2_kh = true;
|
||||
fsm.HideTzq();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:3;SONG:38;%");
|
||||
fsm.ShowTxtImgQuestion("·Î²¿ÌýÕ¡ªÒì³£ºôÎüÒô¡ª¡ª†ªÒô¡ª¡ªÊª†ªÒô", 20, 0, 5, () => {
|
||||
fsm.ChangeState("GanLuoYin_ShiLuoYin");
|
||||
});
|
||||
}
|
||||
public override void OnStateStay()
|
||||
{
|
||||
base.OnStateStay();
|
||||
if (step2_kh)
|
||||
{
|
||||
fsm.ShowTzq(PositionValue);
|
||||
}
|
||||
}
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
step2_kh = false;
|
||||
fsm.HideTzq();
|
||||
fsm.nextState = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class ShouSuoZhongWanQiKaLaYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "11" };
|
||||
List<string> success = new() { "15" };
|
||||
string audioName = "71--收缩中、晚期喀喇音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:71;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -100,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class ShuZhangWanQiBenMaLv : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "11" };
|
||||
List<string> success = new() { "15" };
|
||||
string audioName = "66--舒张晚期奔马律";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:66;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -100,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,27 +7,45 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class ShuZhangZaoQiBenMaLv : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "11" };
|
||||
List<string> success = new() { "15" };
|
||||
string audioName = "65--舒张早期奔马律";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
bool step2_kh;
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:65;%");
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||
{
|
||||
step2_kh = true;
|
||||
fsm.HideTzq();
|
||||
fsm.ShowTxtImgQuestion("心脏听诊——额外心音——舒张期额外心音——舒张早期奔马律", 25, 0, 5, () => {
|
||||
fsm.ChangeState("LianXuXingZaYin");
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||
{
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||
Countdown();
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -78,29 +96,37 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||
Success();
|
||||
Audio();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
}
|
||||
if (step2_kh)
|
||||
{
|
||||
fsm.ShowTzq(PositionValue);
|
||||
}
|
||||
}
|
||||
public override void OnStateExit()
|
||||
{
|
||||
base.OnStateExit();
|
||||
step2_kh = false;
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -6,30 +6,39 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.ShowArrow("点击“锁骨的肩峰端”", "锁骨的肩峰端", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("锁骨的肩峰端");
|
||||
});
|
||||
fsm.InteractionDown("锁骨的肩峰端", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("锁骨的肩峰端", null);
|
||||
fsm.Hide_Unlight_DisableInteraction("锁骨的肩峰端");
|
||||
fsm.PlayClip("锁骨中线动画1", () => {
|
||||
fsm.ShowArrow("点击“锁骨的胸骨端”", "锁骨的胸骨端", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("锁骨的胸骨端");
|
||||
});
|
||||
});
|
||||
fsm.InteractionDown("锁骨的胸骨端", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("锁骨的胸骨端", null);
|
||||
fsm.Hide_Unlight_DisableInteraction("锁骨的胸骨端");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("锁骨中线动画2", () => {
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||
{
|
||||
fsm.ShowTxtImgQuestion("垂直线标志——锁骨中线", 6, 0, 2, () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
});
|
||||
}
|
||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||
{
|
||||
fsm.ShowTip(0);
|
||||
fsm.PlayBgm(0);
|
||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||
fsm.ShowArrow("点击“锁骨的肩峰端”", "锁骨的肩峰端", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("锁骨的肩峰端");
|
||||
});
|
||||
fsm.InteractionDown("锁骨的肩峰端", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("锁骨的肩峰端", null);
|
||||
fsm.Hide_Unlight_DisableInteraction("锁骨的肩峰端");
|
||||
fsm.PlayClip("锁骨中线动画1", () => {
|
||||
fsm.ShowArrow("点击“锁骨的胸骨端”", "锁骨的胸骨端", 0, 999);
|
||||
fsm.Show_Light_EnableInteraction("锁骨的胸骨端");
|
||||
});
|
||||
});
|
||||
fsm.InteractionDown("锁骨的胸骨端", obj => {
|
||||
fsm.HideArrow();
|
||||
fsm.InteractionDown("锁骨的胸骨端", null);
|
||||
fsm.Hide_Unlight_DisableInteraction("锁骨的胸骨端");
|
||||
fsm.AddScore(0, 0.5f);
|
||||
fsm.PlayClip("锁骨中线动画2", () => {
|
||||
fsm.nextState = true;
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
public override void OnStateStay()
|
||||
{
|
||||
|
||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class VelcroLuoYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "7", "8" };
|
||||
List<string> success = new() { "16", "28" };
|
||||
string audioName = "Velcro啰音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:1,1;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
fsm.Unlight("肺泡听诊器位置2");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
||||
public class XiShiLuoYin : FsmState<FSMManager>
|
||||
{
|
||||
bool step1;
|
||||
string id;
|
||||
//成功的标志
|
||||
List<string> success = new() { "7", "8" };
|
||||
List<string> success = new() { "16", "28" };
|
||||
string audioName = "40--湿罗音小水泡音";
|
||||
Coroutine cor;
|
||||
string PositionValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||
}
|
||||
}
|
||||
public override void OnStateEnter()
|
||||
{
|
||||
base.OnStateEnter();
|
||||
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:40,40;%");
|
||||
fsm.PlayBgm(0);
|
||||
fsm.ShowTip(0);
|
||||
fsm.Light("肺泡听诊器位置1");
|
||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
void Countdown()
|
||||
{
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
step1 = true;
|
||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||
{
|
||||
id = success[0];
|
||||
fsm.ShowTzq(success[0]);
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
fsm.Unlight("肺泡听诊器位置2");
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
if (step1)
|
||||
{
|
||||
fsm.ShowTzq(id);
|
||||
if (success.Contains(id))
|
||||
fsm.ShowTzq(PositionValue);
|
||||
if (success.Contains(PositionValue))
|
||||
{
|
||||
fsm.HideArrow();
|
||||
fsm.Unlight("肺泡听诊器位置1");
|
||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
||||
Audio();
|
||||
Success();
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
||||
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||
{
|
||||
False();
|
||||
}
|
||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
||||
{
|
||||
base.OnStateExit();
|
||||
fsm.HideTzq();
|
||||
id = "";
|
||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||
fsm.nextState = false;
|
||||
}
|
||||
|
||||