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:
|
m_Textures:
|
||||||
blueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3}
|
blueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3}
|
||||||
bayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3}
|
bayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3}
|
||||||
m_PrefilteringModeMainLightShadows: 1
|
m_PrefilteringModeMainLightShadows: 3
|
||||||
m_PrefilteringModeAdditionalLight: 4
|
m_PrefilteringModeAdditionalLight: 3
|
||||||
m_PrefilteringModeAdditionalLightShadows: 1
|
m_PrefilteringModeAdditionalLightShadows: 0
|
||||||
m_PrefilterXRKeywords: 0
|
m_PrefilterXRKeywords: 1
|
||||||
m_PrefilteringModeForwardPlus: 1
|
m_PrefilteringModeForwardPlus: 0
|
||||||
m_PrefilteringModeDeferredRendering: 1
|
m_PrefilteringModeDeferredRendering: 0
|
||||||
m_PrefilteringModeScreenSpaceOcclusion: 1
|
m_PrefilteringModeScreenSpaceOcclusion: 2
|
||||||
m_PrefilterDebugKeywords: 0
|
m_PrefilterDebugKeywords: 1
|
||||||
m_PrefilterWriteRenderingLayers: 0
|
m_PrefilterWriteRenderingLayers: 1
|
||||||
m_PrefilterHDROutput: 0
|
m_PrefilterHDROutput: 1
|
||||||
m_PrefilterSSAODepthNormals: 0
|
m_PrefilterSSAODepthNormals: 0
|
||||||
m_PrefilterSSAOSourceDepthLow: 0
|
m_PrefilterSSAOSourceDepthLow: 1
|
||||||
m_PrefilterSSAOSourceDepthMedium: 0
|
m_PrefilterSSAOSourceDepthMedium: 1
|
||||||
m_PrefilterSSAOSourceDepthHigh: 0
|
m_PrefilterSSAOSourceDepthHigh: 1
|
||||||
m_PrefilterSSAOInterleaved: 0
|
m_PrefilterSSAOInterleaved: 1
|
||||||
m_PrefilterSSAOBlueNoise: 0
|
m_PrefilterSSAOBlueNoise: 0
|
||||||
m_PrefilterSSAOSampleCountLow: 0
|
m_PrefilterSSAOSampleCountLow: 1
|
||||||
m_PrefilterSSAOSampleCountMedium: 0
|
m_PrefilterSSAOSampleCountMedium: 1
|
||||||
m_PrefilterSSAOSampleCountHigh: 0
|
m_PrefilterSSAOSampleCountHigh: 0
|
||||||
m_PrefilterDBufferMRT1: 0
|
m_PrefilterDBufferMRT1: 1
|
||||||
m_PrefilterDBufferMRT2: 0
|
m_PrefilterDBufferMRT2: 1
|
||||||
m_PrefilterDBufferMRT3: 0
|
m_PrefilterDBufferMRT3: 1
|
||||||
m_PrefilterSoftShadowsQualityLow: 0
|
m_PrefilterSoftShadowsQualityLow: 1
|
||||||
m_PrefilterSoftShadowsQualityMedium: 0
|
m_PrefilterSoftShadowsQualityMedium: 1
|
||||||
m_PrefilterSoftShadowsQualityHigh: 0
|
m_PrefilterSoftShadowsQualityHigh: 1
|
||||||
m_PrefilterSoftShadows: 0
|
m_PrefilterSoftShadows: 0
|
||||||
m_PrefilterScreenCoord: 0
|
m_PrefilterScreenCoord: 1
|
||||||
m_PrefilterNativeRenderPass: 0
|
m_PrefilterNativeRenderPass: 1
|
||||||
m_ShaderVariantLogLevel: 0
|
m_ShaderVariantLogLevel: 0
|
||||||
m_ShadowCascades: 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 wakeUpCountdownTime = 5f;
|
||||||
private float wakeUpCurrentTime;
|
private float wakeUpCurrentTime;
|
||||||
private Coroutine coroutine;
|
private Coroutine coroutine;
|
||||||
public XunFeiWakeup xunFeiWakeup;//语音唤醒
|
public ZXKWakeup xunFeiWakeup;//语音唤醒
|
||||||
private bool chatUIOpen;
|
private bool chatUIOpen;
|
||||||
private string speakTxt;
|
private string speakTxt;
|
||||||
public string SpeakTxt
|
public string SpeakTxt
|
||||||
@ -329,11 +329,10 @@ public class ChatUI : MonoBehaviour
|
|||||||
public void ShowDialogueEvent()
|
public void ShowDialogueEvent()
|
||||||
{
|
{
|
||||||
chatuiObj.transform.DOMove(p1.position, 0.5f);
|
chatuiObj.transform.DOMove(p1.position, 0.5f);
|
||||||
//audioSource.volume = 1;
|
|
||||||
}
|
}
|
||||||
void Listener()
|
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;
|
closed = false;
|
||||||
wakeUpCurrentTime = 0;
|
wakeUpCurrentTime = 0;
|
||||||
@ -341,42 +340,17 @@ public class ChatUI : MonoBehaviour
|
|||||||
audioSource.Stop();
|
audioSource.Stop();
|
||||||
if (coroutine != null) StopCoroutine(coroutine);
|
if (coroutine != null) StopCoroutine(coroutine);
|
||||||
GenChatTxt("你好,我在");
|
GenChatTxt("你好,我在");
|
||||||
//Typing = true;
|
|
||||||
audioSource.clip = welcomeAudioCilp;
|
audioSource.clip = welcomeAudioCilp;
|
||||||
audioSource.Play();
|
audioSource.Play();
|
||||||
coroutine = StartCoroutine(WaitExecute(welcomeAudioCilp.length, () => {
|
coroutine = StartCoroutine(WaitExecute(welcomeAudioCilp.length, () => {
|
||||||
wakeUpCurrentTime = wakeUpCountdownTime;
|
wakeUpCurrentTime = wakeUpCountdownTime;
|
||||||
//Typing = false;
|
|
||||||
ChatAI.Instance.StartRecording(str => {
|
ChatAI.Instance.StartRecording(str => {
|
||||||
SpeakTxt = 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)
|
void GenChatTxt(string txt)
|
||||||
{
|
{
|
||||||
int lineCount = Regex.Matches(txt, @"\r\n|\r|\n").Count + 1;
|
int lineCount = Regex.Matches(txt, @"\r\n|\r|\n").Count + 1;
|
||||||
@ -418,7 +392,6 @@ public class ChatUI : MonoBehaviour
|
|||||||
wakeUpCurrentTime = 0;
|
wakeUpCurrentTime = 0;
|
||||||
ChatAI.Instance.StopRecording();
|
ChatAI.Instance.StopRecording();
|
||||||
Thinking = false;
|
Thinking = false;
|
||||||
//Typing = false;
|
|
||||||
ChatAI.Instance.StopVoice();
|
ChatAI.Instance.StopVoice();
|
||||||
ChatAI.Instance.StopSend();
|
ChatAI.Instance.StopSend();
|
||||||
audioSource.Stop();
|
audioSource.Stop();
|
||||||
@ -433,6 +406,7 @@ public class ChatUI : MonoBehaviour
|
|||||||
{
|
{
|
||||||
CloseChatTxt();
|
CloseChatTxt();
|
||||||
action?.Invoke();
|
action?.Invoke();
|
||||||
|
action = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
IEnumerator WaitExecute(float t, Action callBack)
|
IEnumerator WaitExecute(float t, Action callBack)
|
||||||
@ -440,14 +414,4 @@ public class ChatUI : MonoBehaviour
|
|||||||
yield return new WaitForSeconds(t);
|
yield return new WaitForSeconds(t);
|
||||||
callBack?.Invoke();
|
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;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
using System.Text.RegularExpressions;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.Networking;
|
using UnityEngine.Networking;
|
||||||
|
using UnityEngine.Windows;
|
||||||
using YiLiao.Main;
|
using YiLiao.Main;
|
||||||
|
|
||||||
public class ChatZxkAI : LLM
|
public class ChatZxkAI : LLM
|
||||||
@ -79,7 +81,10 @@ public class ChatZxkAI : LLM
|
|||||||
Debug.Log(responseBody["choices"][0]["message"]["content"].ToString() + "\nAI-ºÄʱ" + stopwatch.Elapsed.TotalSeconds);
|
Debug.Log(responseBody["choices"][0]["message"]["content"].ToString() + "\nAI-ºÄʱ" + stopwatch.Elapsed.TotalSeconds);
|
||||||
assistant = responseBody["choices"][0]["message"]["content"].ToString();
|
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;
|
success = true;
|
||||||
}
|
}
|
||||||
else if (coroutineRunning)
|
else if (coroutineRunning)
|
||||||
|
|||||||
@ -2,21 +2,21 @@ using System.Text.RegularExpressions;
|
|||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.UI;
|
using UnityEngine.UI;
|
||||||
|
|
||||||
public class WeiGuan_Sensor : Sensor
|
public class TZQ_Sensor : Sensor
|
||||||
{
|
{
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
Text txt;
|
Text txt;
|
||||||
public int WBDeep = 0;
|
public int positionValue = 0;
|
||||||
public override void ReceiveData(string datas)
|
public override void ReceiveData(string datas)
|
||||||
{
|
{
|
||||||
base.ReceiveData(datas);
|
base.ReceiveData(datas);
|
||||||
Regex regex = new Regex(@"#ID:WBJC.*?WBDeep:(\d+)");
|
Regex regex = new Regex(@"Position:(\d+)");
|
||||||
Match match = regex.Match(datas);
|
Match match = regex.Match(datas);
|
||||||
if (match.Success)
|
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
|
fileFormatVersion: 2
|
||||||
guid: 57b72e9322c57a34c995136f0b6bb88c
|
guid: 480b147f8d3252a4abaf864aefc8672b
|
||||||
MonoImporter:
|
MonoImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
@ -395,7 +395,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
switch (id)
|
switch (id)
|
||||||
{
|
{
|
||||||
case "1":
|
case "3":
|
||||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("气管听诊器位置1");
|
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("气管听诊器位置1");
|
||||||
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");
|
||||||
@ -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");
|
||||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管听诊器位置1_taigebo_透明");
|
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管听诊器位置1_taigebo_透明");
|
||||||
break;
|
break;
|
||||||
case "3":
|
case "1":
|
||||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置1");
|
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置1");
|
||||||
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");
|
||||||
@ -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");
|
||||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置2_taigebo_透明");
|
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置2_taigebo_透明");
|
||||||
break;
|
break;
|
||||||
case "5":
|
case "8":
|
||||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置3");
|
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置3");
|
||||||
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");
|
||||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置3_taigebo_透明");
|
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置3_taigebo_透明");
|
||||||
break;
|
break;
|
||||||
case "6":
|
case "9":
|
||||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置4");
|
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置4");
|
||||||
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");
|
||||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置4_taigebo_透明");
|
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("支气管肺泡听诊器位置4_taigebo_透明");
|
||||||
break;
|
break;
|
||||||
case "7":
|
case "16":
|
||||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置1");
|
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置1");
|
||||||
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");
|
||||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置1_taigebo_透明");
|
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置1_taigebo_透明");
|
||||||
break;
|
break;
|
||||||
case "8":
|
case "28":
|
||||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置2");
|
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置2");
|
||||||
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");
|
||||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置2_taigebo_透明");
|
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("肺泡听诊器位置2_taigebo_透明");
|
||||||
break;
|
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_透明")?.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");
|
||||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置1_taigebo_透明");
|
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置1_taigebo_透明");
|
||||||
break;
|
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_透明")?.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");
|
||||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置2_taigebo_透明");
|
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("左右腋中线第5、6肋间听诊器位置2_taigebo_透明");
|
||||||
break;
|
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_透明")?.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");
|
||||||
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;
|
break;
|
||||||
case "12":
|
case "11":
|
||||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("胸骨左缘第3肋间听诊器位置1");
|
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("胸骨左缘第3肋间听诊器位置1");
|
||||||
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");
|
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");
|
||||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("胸骨左缘第5肋间听诊器位置1_taigebo_透明");
|
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("胸骨左缘第5肋间听诊器位置1_taigebo_透明");
|
||||||
break;
|
break;
|
||||||
case "15":
|
case "12":
|
||||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("心底部听诊器位置1");
|
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("心底部听诊器位置1");
|
||||||
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");
|
||||||
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("心底部听诊器位置1_taigebo_透明");
|
GameObject.Find("nan_taigebo_透明")?.GetComponent<TzqController>().SetPos("心底部听诊器位置1_taigebo_透明");
|
||||||
break;
|
break;
|
||||||
case "16":
|
case "--":
|
||||||
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("心底部听诊器位置2");
|
GameObject.Find("nan")?.GetComponent<TzqController>().SetPos("心底部听诊器位置2");
|
||||||
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");
|
||||||
|
|||||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class CuCaoXingHuXiYin : FsmState<FSMManager>
|
public class CuCaoXingHuXiYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "7", "8" };
|
List<string> success = new() { "16", "28" };
|
||||||
string audioName = "35--粗糙性呼吸音";
|
string audioName = "35--粗糙性呼吸音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:35,35;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("肺泡听诊器位置1");
|
fsm.Light("肺泡听诊器位置1");
|
||||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("肺泡听诊器位置1");
|
fsm.Unlight("肺泡听诊器位置1");
|
||||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class CuShiLuoYin : FsmState<FSMManager>
|
public class CuShiLuoYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "1";
|
string success = "3";
|
||||||
string audioName = "38--大湿罗音";
|
string audioName = "38--大湿罗音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:3;SONG:38;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("气管听诊器位置1");
|
fsm.Light("气管听诊器位置1");
|
||||||
@ -24,7 +31,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -75,12 +81,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("Æø¹ÜÌýÕïÆ÷λÖÃ1");
|
||||||
|
|
||||||
|
Audio();
|
||||||
|
Success();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("气管听诊器位置1");
|
fsm.Unlight("气管听诊器位置1");
|
||||||
@ -88,7 +99,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && success != PositionValue)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -98,7 +109,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,27 +7,45 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiDiaoGanLuoYin : FsmState<FSMManager>
|
public class DiDiaoGanLuoYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "3", "4", "5", "6" };
|
List<string> success = new() { "8", "9" };
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
string audioName = "44--鼾音";
|
string audioName = "44--鼾音";
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
bool step2_kh;
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
fsm.PlayBgm(0);
|
GameManager.Instance.senSor.SendFunction("#ID:8,9;SONG:44,44;%");
|
||||||
fsm.ShowTip(0);
|
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
|
||||||
fsm.Light("支气管肺泡听诊器位置1");
|
{
|
||||||
fsm.Light("支气管肺泡听诊器位置2");
|
step2_kh = true;
|
||||||
fsm.Light("支气管肺泡听诊器位置3");
|
fsm.HideTzq();
|
||||||
fsm.Light("支气管肺泡听诊器位置4");
|
fsm.ShowTxtImgQuestion("肺部听诊——异常呼吸音——啰音——低调干啰音", 19, 0, 5, () => {
|
||||||
fsm.ShowArrow("将实物听诊器放置于胸骨两侧第1、2肋间隙处进行听诊。", "支气管肺泡听诊器位置1", 0, 999);
|
fsm.ChangeState("ShiLuoYin");
|
||||||
Countdown();
|
});
|
||||||
|
}
|
||||||
|
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()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,12 +96,19 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("支气管肺泡听诊器位置1");
|
fsm.Unlight("支气管肺泡听诊器位置1");
|
||||||
@ -93,17 +118,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (step2_kh)
|
||||||
|
{
|
||||||
|
fsm.ShowTzq(PositionValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
|
step2_kh = false;
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiErXinYin : FsmState<FSMManager>
|
public class DiErXinYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "11";
|
string success = "15";
|
||||||
string audioName = "第二心音";
|
string audioName = "第二心音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
|
Success();
|
||||||
|
Audio();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && PositionValue != success)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,27 +7,31 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiErXinYinFanChangFenLie : FsmState<FSMManager>
|
public class DiErXinYinFanChangFenLie : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "15", "16" };
|
List<string> success = new() { "9" };
|
||||||
string audioName = "第二心音反常分裂";
|
string audioName = "第二心音反常分裂";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("心底部听诊器位置1");
|
fsm.Light("心底部听诊器位置2");
|
||||||
fsm.Light("心底部听诊器位置2");
|
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置2", 0, 999);
|
||||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置1", 0, 999);
|
Countdown();
|
||||||
Countdown();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("心底部听诊器位置1");
|
fsm.Unlight("心底部听诊器位置1");
|
||||||
@ -91,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -101,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiErXinYinGuDingFenLie : FsmState<FSMManager>
|
public class DiErXinYinGuDingFenLie : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "15", "16" };
|
List<string> success = new() { "9" };
|
||||||
string audioName = "第二心音固定分裂";
|
string audioName = "第二心音固定分裂";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("心底部听诊器位置1");
|
fsm.Light("心底部听诊器位置2");
|
||||||
fsm.Light("心底部听诊器位置2");
|
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置2", 0, 999);
|
||||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置1", 0, 999);
|
Countdown();
|
||||||
Countdown();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,20 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success[0];
|
fsm.ShowTzq(success[0]);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("心底部听诊器位置2");
|
||||||
|
Success();
|
||||||
|
Audio();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("心底部听诊器位置1");
|
|
||||||
fsm.Unlight("心底部听诊器位置2");
|
fsm.Unlight("心底部听诊器位置2");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -101,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,27 +7,31 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiErXinYinJianRuo : FsmState<FSMManager>
|
public class DiErXinYinJianRuo : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "15", "16" };
|
List<string> success = new() { "8", "9" };
|
||||||
string audioName = "第二心音减弱";
|
string audioName = "第二心音减弱";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
GameManager.Instance.senSor.SendFunction("#ID:8,9;SONG:1,1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("心底部听诊器位置1");
|
fsm.Light("心底部听诊器位置1");
|
||||||
fsm.Light("心底部听诊器位置2");
|
fsm.Light("心底部听诊器位置2");
|
||||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置1", 0, 999);
|
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置1", 0, 999);
|
||||||
Countdown();
|
Countdown();
|
||||||
});
|
|
||||||
}
|
}
|
||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("心底部听诊器位置1");
|
fsm.Unlight("心底部听诊器位置1");
|
||||||
@ -91,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -101,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiErXinYinTongChangFenLie : FsmState<FSMManager>
|
public class DiErXinYinTongChangFenLie : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "15", "16" };
|
List<string> success = new() { "9" };
|
||||||
string audioName = "第二心音通常分裂";
|
string audioName = "第二心音通常分裂";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("心底部听诊器位置1");
|
fsm.Light("心底部听诊器位置2");
|
||||||
fsm.Light("心底部听诊器位置2");
|
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置2", 0, 999);
|
||||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "心底部听诊器位置1", 0, 999);
|
Countdown();
|
||||||
Countdown();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,20 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success[0];
|
fsm.ShowTzq(success[0]);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("心底部听诊器位置2");
|
||||||
|
Success();
|
||||||
|
Audio();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("心底部听诊器位置1");
|
|
||||||
fsm.Unlight("心底部听诊器位置2");
|
fsm.Unlight("心底部听诊器位置2");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -101,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,15 +7,22 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiErXinYinZengQiang : FsmState<FSMManager>
|
public class DiErXinYinZengQiang : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "15", "16" };
|
List<string> success = new() { "8", "9" };
|
||||||
string audioName = "59--第二心音增强";
|
string audioName = "59--第二心音增强";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:8,9;SONG:59,59;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("心底部听诊器位置1");
|
fsm.Light("心底部听诊器位置1");
|
||||||
@ -27,7 +34,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,12 +84,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("心底部听诊器位置1");
|
fsm.Unlight("心底部听诊器位置1");
|
||||||
@ -91,7 +102,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -101,7 +112,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiSanXinYin : FsmState<FSMManager>
|
public class DiSanXinYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "11";
|
string success = "15";
|
||||||
string audioName = "54--正常第三心音";
|
string audioName = "54--正常第三心音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:54;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
|
Success();
|
||||||
|
Audio();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && PositionValue != success)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiSiXinYin : FsmState<FSMManager>
|
public class DiSiXinYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "11";
|
string success = "15";
|
||||||
string audioName = "第四心音";
|
string audioName = "第四心音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
|
Success();
|
||||||
|
Audio();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && PositionValue != success)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiYiXinYin : FsmState<FSMManager>
|
public class DiYiXinYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "11";
|
string success = "15";
|
||||||
string audioName = "第一心音";
|
string audioName = "第一心音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
|
Success();
|
||||||
|
Audio();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && PositionValue != success)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiYiXinYinFenLie : FsmState<FSMManager>
|
public class DiYiXinYinFenLie : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "11"};
|
List<string> success = new() { "15"};
|
||||||
string audioName = "61--第一心音分裂";
|
string audioName = "61--第一心音分裂";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:61;%");
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
fsm.PlayBgm(0);
|
||||||
fsm.PlayBgm(0);
|
fsm.ShowTip(0);
|
||||||
fsm.ShowTip(0);
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||||
fsm.ShowArrow("将实物听诊器放置于心底部进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
Countdown();
|
||||||
Countdown();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -100,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiYiXinYinJianRuo : FsmState<FSMManager>
|
public class DiYiXinYinJianRuo : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "11";
|
string success = "15";
|
||||||
string audioName = "57--第一心音减弱";
|
string audioName = "57--第一心音减弱";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:57;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
|
Success();
|
||||||
|
Audio();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && PositionValue != success)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiYiXinYinQiangRuoBuDeng : FsmState<FSMManager>
|
public class DiYiXinYinQiangRuoBuDeng : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "11";
|
string success = "15";
|
||||||
string audioName = "第一心音强弱不等";
|
string audioName = "第一心音强弱不等";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
|
Success();
|
||||||
|
Audio();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && PositionValue != success)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DiYiXinYinZengQiang : FsmState<FSMManager>
|
public class DiYiXinYinZengQiang : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "11";
|
string success = "15";
|
||||||
string audioName = "56--第一心音增强";
|
string audioName = "56--第一心音增强";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:56;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
|
Success();
|
||||||
|
Audio();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && PositionValue != success)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class DuanXuXingHuXiYin : FsmState<FSMManager>
|
public class DuanXuXingHuXiYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "7", "8" };
|
List<string> success = new() { "16", "28" };
|
||||||
string audioName = "34--断续性呼吸音";
|
string audioName = "34--断续性呼吸音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:34,34;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("肺泡听诊器位置1");
|
fsm.Light("肺泡听诊器位置1");
|
||||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("肺泡听诊器位置1");
|
fsm.Unlight("肺泡听诊器位置1");
|
||||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,24 +6,44 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class ErJianBanQu : FsmState<FSMManager>
|
public class ErJianBanQu : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "11";
|
string success = "15";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
bool step2_kh;
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
fsm.PlayBgm(0);
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:54;%");
|
||||||
fsm.ShowTip(0);
|
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
|
||||||
fsm.PlayClip("二尖瓣区");
|
{
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
step2_kh = true;
|
||||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
fsm.HideTzq();
|
||||||
Countdown();
|
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()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -70,28 +90,35 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
|
Success();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && success != PositionValue)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (step2_kh)
|
||||||
|
{
|
||||||
|
fsm.ShowTzq(PositionValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
|
step2_kh = false;
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,26 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class ErJianBanQu2 : FsmState<FSMManager>
|
public class ErJianBanQu2 : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "11" };
|
List<string> success = new() { "15" };
|
||||||
string audioName = "72--二尖瓣关闭不全";
|
string audioName = "72--二尖瓣关闭不全";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:72;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||||
Countdown();
|
Countdown();
|
||||||
});
|
|
||||||
}
|
}
|
||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -77,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,26 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class ErJianBanQu3 : FsmState<FSMManager>
|
public class ErJianBanQu3 : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "11" };
|
List<string> success = new() { "15" };
|
||||||
string audioName = "76--二尖瓣狭窄";
|
string audioName = "76--二尖瓣狭窄";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:76;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||||
Countdown();
|
Countdown();
|
||||||
});
|
|
||||||
}
|
}
|
||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -77,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,13 +6,20 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class FeiDongMaiBanQu : FsmState<FSMManager>
|
public class FeiDongMaiBanQu : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "6";
|
string success = "9";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:54;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("支气管肺泡听诊器位置4");
|
fsm.Light("支气管肺泡听诊器位置4");
|
||||||
@ -22,7 +29,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -69,19 +75,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("Ö§Æø¹Ü·ÎÅÝÌýÕïÆ÷λÖÃ4");
|
||||||
|
|
||||||
|
Success();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("支气管肺泡听诊器位置4");
|
fsm.Unlight("支气管肺泡听诊器位置4");
|
||||||
|
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && success != PositionValue)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -91,7 +101,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class FeiDongMaiBanQu2 : FsmState<FSMManager>
|
public class FeiDongMaiBanQu2 : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "6";
|
string success = "9";
|
||||||
string audioName = "74--肺动脉瓣区收缩期杂音";
|
string audioName = "74--肺动脉瓣区收缩期杂音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:74;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("支气管肺泡听诊器位置4");
|
fsm.Light("支气管肺泡听诊器位置4");
|
||||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("Ö§Æø¹Ü·ÎÅÝÌýÕïÆ÷λÖÃ4");
|
||||||
|
Audio();
|
||||||
|
Success();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("支气管肺泡听诊器位置4");
|
fsm.Unlight("支气管肺泡听诊器位置4");
|
||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && PositionValue != success)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class FeiDongMaiBanQu3 : FsmState<FSMManager>
|
public class FeiDongMaiBanQu3 : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "6";
|
string success = "9";
|
||||||
string audioName = "肺动脉瓣区";
|
string audioName = "肺动脉瓣区";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:9;SONG:1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("支气管肺泡听诊器位置4");
|
fsm.Light("支气管肺泡听诊器位置4");
|
||||||
@ -23,7 +30,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -74,19 +80,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("Ö§Æø¹Ü·ÎÅÝÌýÕïÆ÷λÖÃ4");
|
||||||
|
Audio();
|
||||||
|
Success();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("支气管肺泡听诊器位置4");
|
fsm.Unlight("支气管肺泡听诊器位置4");
|
||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && PositionValue != success)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -96,7 +106,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,25 +7,43 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class FeiPaoHuXiYin : FsmState<FSMManager>
|
public class FeiPaoHuXiYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
bool step2_kh;
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() {"7", "8"};
|
List<string> success = new() {"16", "28"};
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
string audioName = "30--肺泡呼吸音";
|
string audioName = "30--肺泡呼吸音";
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
fsm.PlayBgm(0);
|
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:30,30;%");
|
||||||
fsm.ShowTip(0);
|
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
|
||||||
fsm.Light("肺泡听诊器位置1");
|
{
|
||||||
fsm.Light("肺泡听诊器位置2");
|
step2_kh = true;
|
||||||
fsm.ShowArrow("将实物听诊器放置于乳房下部进行听诊。", "肺泡听诊器位置1", 0, 999);
|
fsm.HideTzq();
|
||||||
Countdown();
|
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()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +94,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("肺泡听诊器位置1");
|
fsm.Unlight("肺泡听诊器位置1");
|
||||||
@ -89,17 +112,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (step2_kh)
|
||||||
|
{
|
||||||
|
fsm.ShowTzq(PositionValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
step2_kh = false;
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,25 +7,43 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class FeiPaoHuXiYinJianRuoHuoXiaoShi : FsmState<FSMManager>
|
public class FeiPaoHuXiYinJianRuoHuoXiaoShi : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "7", "8" };
|
List<string> success = new() { "16", "28" };
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
string audioName = "31--肺泡呼吸音减弱或消失";
|
string audioName = "31--肺泡呼吸音减弱或消失";
|
||||||
|
bool step2_kh;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
fsm.PlayBgm(0);
|
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:31,31;%");
|
||||||
fsm.ShowTip(0);
|
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
|
||||||
fsm.Light("肺泡听诊器位置1");
|
{
|
||||||
fsm.Light("肺泡听诊器位置2");
|
step2_kh = true;
|
||||||
fsm.ShowArrow("将实物听诊器放置于乳房下部进行听诊。", "肺泡听诊器位置1", 0, 999);
|
fsm.HideTzq();
|
||||||
Countdown();
|
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()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +94,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("肺泡听诊器位置1");
|
fsm.Unlight("肺泡听诊器位置1");
|
||||||
@ -89,17 +112,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (step2_kh)
|
||||||
|
{
|
||||||
|
fsm.ShowTzq(PositionValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
step2_kh = false;
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class FeiPaoHuXiYinZengQiang : FsmState<FSMManager>
|
public class FeiPaoHuXiYinZengQiang : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "7", "8" };
|
List<string> success = new() { "16", "28" };
|
||||||
string audioName = "32--肺泡呼吸音增强";
|
string audioName = "32--肺泡呼吸音增强";
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:32,32;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("肺泡听诊器位置1");
|
fsm.Light("肺泡听诊器位置1");
|
||||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("肺泡听诊器位置1");
|
fsm.Unlight("肺泡听诊器位置1");
|
||||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,6 +6,9 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
fsm.ShowTxtImgQuestion("ÐØ²¿Ìå±í±êÖ¾¡ª¡ª¸¡Àß", 4, 0, 2, () => {
|
||||||
|
fsm.ChangeState("JianJiaGuJianJiaXiaJiao");
|
||||||
|
});
|
||||||
}
|
}
|
||||||
public override void OnStateStay()
|
public override void OnStateStay()
|
||||||
{
|
{
|
||||||
@ -14,6 +17,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,17 +3,39 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
public class GanLuoYin : FsmState<FSMManager>
|
public class GanLuoYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
|
bool step2_kh;
|
||||||
|
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.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()
|
public override void OnStateStay()
|
||||||
{
|
{
|
||||||
base.OnStateStay();
|
base.OnStateStay();
|
||||||
|
if (step2_kh)
|
||||||
|
{
|
||||||
|
fsm.ShowTzq(PositionValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
|
step2_kh = false;
|
||||||
|
fsm.HideTzq();
|
||||||
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,17 +3,38 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
public class GanLuoYin_ShiLuoYin : FsmState<FSMManager>
|
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()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.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()
|
public override void OnStateStay()
|
||||||
{
|
{
|
||||||
base.OnStateStay();
|
base.OnStateStay();
|
||||||
|
if (step2_kh)
|
||||||
|
{
|
||||||
|
fsm.ShowTzq(PositionValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
|
step2_kh = false;
|
||||||
|
fsm.HideTzq();
|
||||||
|
fsm.nextState = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,14 +7,22 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class GaoDiaoGanLuoYin : FsmState<FSMManager>
|
public class GaoDiaoGanLuoYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "3", "4", "5", "6" };
|
List<string> success = new() { "8", "9" };
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
string audioName = "43--高调干啰音(哨笛音)";
|
string audioName = "43--高调干啰音(哨笛音)";
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:8,9;SONG:43,43;%");
|
||||||
|
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("支气管肺泡听诊器位置1");
|
fsm.Light("支气管肺泡听诊器位置1");
|
||||||
@ -27,7 +35,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,12 +85,19 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("支气管肺泡听诊器位置1");
|
fsm.Unlight("支气管肺泡听诊器位置1");
|
||||||
@ -93,7 +107,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -103,7 +117,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class HuXiYinYanChang : FsmState<FSMManager>
|
public class HuXiYinYanChang : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "7", "8" };
|
List<string> success = new() { "16", "28" };
|
||||||
string audioName = "呼吸音延长";
|
string audioName = "呼吸音延长";
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:1,1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("肺泡听诊器位置1");
|
fsm.Light("肺泡听诊器位置1");
|
||||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("肺泡听诊器位置1");
|
fsm.Unlight("肺泡听诊器位置1");
|
||||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,15 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
fsm.ShowTxtQuestion("胸部体表标志——肩胛骨肩胛下角", 1, 0, 2, () => {
|
||||||
|
fsm.ChangeState("QianZhengZhongXian");
|
||||||
|
});
|
||||||
}
|
}
|
||||||
public override void OnStateStay()
|
|
||||||
{
|
|
||||||
base.OnStateStay();
|
|
||||||
}
|
|
||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,23 +6,32 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
fsm.ShowTip(0);
|
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||||
fsm.PlayBgm(0);
|
{
|
||||||
|
fsm.ShowTxtImgQuestion("垂直线标志——肩胛间区", 13, 0, 2, () => {
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
fsm.ChangeState("ZhiQiGuanHuXiYin");
|
||||||
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.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()
|
public override void OnStateStay()
|
||||||
{
|
{
|
||||||
|
|||||||
@ -6,23 +6,30 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
fsm.ShowTip(0);
|
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||||
fsm.PlayBgm(0);
|
{
|
||||||
|
fsm.ShowTxtImgQuestion("垂直线标志——肩胛上区", 11, 0, 1, () => {
|
||||||
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;
|
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()
|
public override void OnStateStay()
|
||||||
{
|
{
|
||||||
|
|||||||
@ -6,23 +6,31 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
fsm.ShowTip(0);
|
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||||
fsm.PlayBgm(0);
|
{
|
||||||
|
fsm.ShowTxtImgQuestion("垂直线标志——肩胛下区", 12, 0, 1, () => {
|
||||||
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;
|
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()
|
public override void OnStateStay()
|
||||||
{
|
{
|
||||||
|
|||||||
@ -6,25 +6,33 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
fsm.ShowTip(0);
|
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||||
fsm.PlayBgm(0);
|
{
|
||||||
fsm.PlayClip("肩胛线动画1", () => {
|
fsm.ShowTxtImgQuestion("垂直线标志——肩胛线", 10, 0, 2, () => {
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
fsm.ChangeState("JianJiaShangQu");
|
||||||
fsm.ShowArrow("点击“肩胛下角”", "肩胛下角", 0, 999);
|
|
||||||
fsm.Light_EnableInteraction("肩胛下角");
|
|
||||||
});
|
});
|
||||||
});
|
}
|
||||||
|
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||||
|
{
|
||||||
fsm.InteractionDown("肩胛下角", obj => {
|
fsm.ShowTip(0);
|
||||||
fsm.HideArrow();
|
fsm.PlayBgm(0);
|
||||||
fsm.InteractionDown("肩胛下角", null);
|
fsm.PlayClip("肩胛线动画1", () => {
|
||||||
fsm.Hide_Unlight_DisableInteraction("肩胛下角");
|
GameManager.Instance.multiObjectController.RotateAllTo180(() => {
|
||||||
fsm.AddScore(0, 0.5f);
|
fsm.ShowArrow("点击“肩胛下角”", "肩胛下角", 0, 999);
|
||||||
fsm.PlayClip("肩胛线动画2", () => {
|
fsm.Light_EnableInteraction("肩胛下角");
|
||||||
fsm.nextState = true;
|
});
|
||||||
});
|
});
|
||||||
});
|
|
||||||
|
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()
|
public override void OnStateStay()
|
||||||
{
|
{
|
||||||
|
|||||||
@ -9,7 +9,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||||
{
|
{
|
||||||
fsm.ShowTxtImgQuestion("ÐØ²¿Ìå±í±êÖ¾¡ª¡ª½£Í»", 3, 0, 2, () => {
|
fsm.ShowTxtImgQuestion("ÐØ²¿Ìå±í±êÖ¾¡ª¡ª½£Í»", 3, 0, 2, () => {
|
||||||
fsm.nextState = true;
|
fsm.ChangeState("FuLei");
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.ShiXun)
|
||||||
|
|||||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class KaiBanYin : FsmState<FSMManager>
|
public class KaiBanYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "11" };
|
List<string> success = new() { "15" };
|
||||||
string audioName = "68--开瓣音";
|
string audioName = "68--开瓣音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:68;%");
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
fsm.PlayBgm(0);
|
||||||
fsm.PlayBgm(0);
|
fsm.ShowTip(0);
|
||||||
fsm.ShowTip(0);
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
Countdown();
|
||||||
Countdown();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -100,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,27 +7,45 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class LianXuXingZaYin : FsmState<FSMManager>
|
public class LianXuXingZaYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "5" };
|
List<string> success = new() { "8" };
|
||||||
string audioName = "80--连续性杂音";
|
string audioName = "80--连续性杂音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool step2_kh;
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:8;SONG:80;%");
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||||
fsm.PlayBgm(0);
|
{
|
||||||
fsm.ShowTip(0);
|
step2_kh = true;
|
||||||
fsm.Light("支气管肺泡听诊器位置3");
|
fsm.HideTzq();
|
||||||
fsm.ShowArrow("将实物听诊器放置于胸骨右缘第2肋间处进行听诊。", "支气管肺泡听诊器位置3", 0, 999);
|
fsm.ShowTxtImgQuestion("心脏听诊——心脏杂音——连续性杂音", 26, 0, 5, () => {
|
||||||
Countdown();
|
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()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,29 +96,37 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success[0];
|
fsm.ShowTzq(success[0]);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("支气管肺泡听诊器位置3");
|
||||||
|
Success();
|
||||||
|
Audio();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("支气管肺泡听诊器位置3");
|
fsm.Unlight("支气管肺泡听诊器位置3");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (step2_kh)
|
||||||
|
{
|
||||||
|
fsm.ShowTzq(PositionValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
|
step2_kh = false;
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class NianFaYin : FsmState<FSMManager>
|
public class NianFaYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "7", "8" };
|
List<string> success = new() { "16", "28" };
|
||||||
string audioName = "42--湿罗音捻发音";
|
string audioName = "42--湿罗音捻发音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:42,42;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("肺泡听诊器位置1");
|
fsm.Light("肺泡听诊器位置1");
|
||||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("肺泡听诊器位置1");
|
fsm.Unlight("肺泡听诊器位置1");
|
||||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,21 +1,29 @@
|
|||||||
using FSM;
|
using FSM;
|
||||||
using System;
|
using System;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using YiLiao.Main;
|
||||||
using ZXKFramework;
|
using ZXKFramework;
|
||||||
namespace YiLiao.XinFeiTingZhen
|
namespace YiLiao.XinFeiTingZhen
|
||||||
{
|
{
|
||||||
public class QiGuanHuXiYin : FsmState<FSMManager>
|
public class QiGuanHuXiYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
string success = "1";
|
string success = "3";
|
||||||
string audioName = "气管呼吸音";
|
string audioName = "气管呼吸音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:3;SONG:1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("气管听诊器位置1");
|
fsm.Light("气管听诊器位置1");
|
||||||
@ -26,7 +34,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -74,23 +81,25 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public override void OnStateStay()
|
public override void OnStateStay()
|
||||||
{
|
{
|
||||||
base.OnStateStay();
|
base.OnStateStay();
|
||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
if (Input.GetKeyDown(KeyCode.L) && step1)
|
||||||
{
|
{
|
||||||
id = success;
|
fsm.ShowTzq(success);
|
||||||
|
fsm.HideArrow();
|
||||||
|
fsm.Unlight("Æø¹ÜÌýÕïÆ÷λÖÃ1");
|
||||||
|
Audio();
|
||||||
|
Success();
|
||||||
}
|
}
|
||||||
if (step1)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (id == success)
|
if (PositionValue == success)
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("气管听诊器位置1");
|
fsm.Unlight("气管听诊器位置1");
|
||||||
|
|
||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if(!string.IsNullOrEmpty(id) && id != success)
|
else if (PositionValue != "0" && success != PositionValue)
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -100,7 +109,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,30 +6,41 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
fsm.ShowTip(0);
|
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||||
fsm.PlayBgm(0);
|
{
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
fsm.ShowTxtImgQuestion("垂直线标志——前正中线", 5, 0, 2, () => {
|
||||||
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;
|
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()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
|
|||||||
@ -7,13 +7,20 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class SanJianBanQu : FsmState<FSMManager>
|
public class SanJianBanQu : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "13","14" };
|
List<string> success = new() { "13","14" };
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:13,14;SONG:54,54;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("胸骨左缘第4肋间听诊器位置1");
|
fsm.Light("胸骨左缘第4肋间听诊器位置1");
|
||||||
@ -24,7 +31,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -71,19 +77,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
||||||
fsm.Unlight("胸骨左缘第5肋间听诊器位置1");
|
fsm.Unlight("胸骨左缘第5肋间听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -93,7 +103,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class SanJianBanQu2 : FsmState<FSMManager>
|
public class SanJianBanQu2 : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "13", "14" };
|
List<string> success = new() { "13", "14" };
|
||||||
string audioName = "75--三尖瓣区收缩期杂音";
|
string audioName = "75--三尖瓣区收缩期杂音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:13,14;SONG:75,75;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("胸骨左缘第4肋间听诊器位置1");
|
fsm.Light("胸骨左缘第4肋间听诊器位置1");
|
||||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
||||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class SanJianBanQu3 : FsmState<FSMManager>
|
public class SanJianBanQu3 : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "13", "14" };
|
List<string> success = new() { "13", "14" };
|
||||||
string audioName = "79--三尖瓣区舒张期杂音";
|
string audioName = "79--三尖瓣区舒张期杂音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:13,14;SONG:79,79;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("胸骨左缘第4肋间听诊器位置1");
|
fsm.Light("胸骨左缘第4肋间听诊器位置1");
|
||||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
fsm.Unlight("胸骨左缘第4肋间听诊器位置1");
|
||||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,17 +3,38 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
public class ShiLuoYin : FsmState<FSMManager>
|
public class ShiLuoYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
|
bool step2_kh;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.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()
|
public override void OnStateStay()
|
||||||
{
|
{
|
||||||
base.OnStateStay();
|
base.OnStateStay();
|
||||||
|
if (step2_kh)
|
||||||
|
{
|
||||||
|
fsm.ShowTzq(PositionValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
|
step2_kh = false;
|
||||||
|
fsm.HideTzq();
|
||||||
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class ShouSuoZhongWanQiKaLaYin : FsmState<FSMManager>
|
public class ShouSuoZhongWanQiKaLaYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "11" };
|
List<string> success = new() { "15" };
|
||||||
string audioName = "71--收缩中、晚期喀喇音";
|
string audioName = "71--收缩中、晚期喀喇音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:71;%");
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
fsm.PlayBgm(0);
|
||||||
fsm.PlayBgm(0);
|
fsm.ShowTip(0);
|
||||||
fsm.ShowTip(0);
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
Countdown();
|
||||||
Countdown();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -100,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,27 +7,30 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class ShuZhangWanQiBenMaLv : FsmState<FSMManager>
|
public class ShuZhangWanQiBenMaLv : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "11" };
|
List<string> success = new() { "15" };
|
||||||
string audioName = "66--舒张晚期奔马律";
|
string audioName = "66--舒张晚期奔马律";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:15;SONG:66;%");
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
fsm.PlayBgm(0);
|
||||||
fsm.PlayBgm(0);
|
fsm.ShowTip(0);
|
||||||
fsm.ShowTip(0);
|
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
fsm.Light("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
||||||
fsm.ShowArrow("将实物听诊器放置于左锁骨中线与第5肋间交点内0.5cm处进行听诊。", "左锁骨中线与第5肋间交点内0.5cm听诊器位置1", 0, 999);
|
Countdown();
|
||||||
Countdown();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,19 +81,23 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -100,7 +107,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,27 +7,45 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class ShuZhangZaoQiBenMaLv : FsmState<FSMManager>
|
public class ShuZhangZaoQiBenMaLv : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "11" };
|
List<string> success = new() { "15" };
|
||||||
string audioName = "65--舒张早期奔马律";
|
string audioName = "65--舒张早期奔马律";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
bool step2_kh;
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
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();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
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()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -78,29 +96,37 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
fsm.Unlight("左锁骨中线与第5肋间交点内0.5cm听诊器位置1");
|
||||||
Success();
|
Success();
|
||||||
Audio();
|
Audio();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (step2_kh)
|
||||||
|
{
|
||||||
|
fsm.ShowTzq(PositionValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public override void OnStateExit()
|
public override void OnStateExit()
|
||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
|
step2_kh = false;
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,30 +6,39 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
fsm.ShowTip(0);
|
if (fsm.main_gameModel.modeType == ZXKFramework.ModeType.KaoHe)
|
||||||
fsm.PlayBgm(0);
|
{
|
||||||
GameManager.Instance.multiObjectController.RotateAllTo0(() => {
|
fsm.ShowTxtImgQuestion("垂直线标志——锁骨中线", 6, 0, 2, () => {
|
||||||
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;
|
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()
|
public override void OnStateStay()
|
||||||
{
|
{
|
||||||
|
|||||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class VelcroLuoYin : FsmState<FSMManager>
|
public class VelcroLuoYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "7", "8" };
|
List<string> success = new() { "16", "28" };
|
||||||
string audioName = "Velcro啰音";
|
string audioName = "Velcro啰音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:1,1;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("肺泡听诊器位置1");
|
fsm.Light("肺泡听诊器位置1");
|
||||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("肺泡听诊器位置1");
|
fsm.Unlight("肺泡听诊器位置1");
|
||||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,14 +7,21 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
public class XiShiLuoYin : FsmState<FSMManager>
|
public class XiShiLuoYin : FsmState<FSMManager>
|
||||||
{
|
{
|
||||||
bool step1;
|
bool step1;
|
||||||
string id;
|
|
||||||
//成功的标志
|
//成功的标志
|
||||||
List<string> success = new() { "7", "8" };
|
List<string> success = new() { "16", "28" };
|
||||||
string audioName = "40--湿罗音小水泡音";
|
string audioName = "40--湿罗音小水泡音";
|
||||||
Coroutine cor;
|
Coroutine cor;
|
||||||
|
string PositionValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return GameManager.Instance.senSor.GetSensor<TZQ_Sensor>().positionValue.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
public override void OnStateEnter()
|
public override void OnStateEnter()
|
||||||
{
|
{
|
||||||
base.OnStateEnter();
|
base.OnStateEnter();
|
||||||
|
GameManager.Instance.senSor.SendFunction("#ID:16,28;SONG:40,40;%");
|
||||||
fsm.PlayBgm(0);
|
fsm.PlayBgm(0);
|
||||||
fsm.ShowTip(0);
|
fsm.ShowTip(0);
|
||||||
fsm.Light("肺泡听诊器位置1");
|
fsm.Light("肺泡听诊器位置1");
|
||||||
@ -25,7 +32,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
void Countdown()
|
void Countdown()
|
||||||
{
|
{
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
step1 = true;
|
step1 = true;
|
||||||
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
GameManager.Instance.uiManager.ShowUI<CountdownPanel>();
|
||||||
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
GameManager.Instance.uiManager.GetUI<CountdownPanel>().StartCountdown(() => {
|
||||||
@ -76,12 +82,17 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
|
|
||||||
if (Input.GetKeyDown(KeyCode.L) && step1)
|
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)
|
if (step1)
|
||||||
{
|
{
|
||||||
fsm.ShowTzq(id);
|
fsm.ShowTzq(PositionValue);
|
||||||
if (success.Contains(id))
|
if (success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
fsm.HideArrow();
|
fsm.HideArrow();
|
||||||
fsm.Unlight("肺泡听诊器位置1");
|
fsm.Unlight("肺泡听诊器位置1");
|
||||||
@ -89,7 +100,7 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
Audio();
|
Audio();
|
||||||
Success();
|
Success();
|
||||||
}
|
}
|
||||||
else if (!string.IsNullOrEmpty(id) && !success.Contains(id))
|
else if (PositionValue != "0" && !success.Contains(PositionValue))
|
||||||
{
|
{
|
||||||
False();
|
False();
|
||||||
}
|
}
|
||||||
@ -99,7 +110,6 @@ namespace YiLiao.XinFeiTingZhen
|
|||||||
{
|
{
|
||||||
base.OnStateExit();
|
base.OnStateExit();
|
||||||
fsm.HideTzq();
|
fsm.HideTzq();
|
||||||
id = "";
|
|
||||||
Game.Instance.IEnumeratorManager.Stop(cor);
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
||||||
fsm.nextState = false;
|
fsm.nextState = false;
|
||||||
}
|
}
|
||||||
|
|||||||