完成背包功能,制作镜子效果,优化流程。

This commit is contained in:
YangHua 2024-08-16 22:22:59 +08:00
parent 27a2039d30
commit 9b5349a6e4
28 changed files with 2275 additions and 441 deletions

File diff suppressed because one or more lines are too long

View File

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

View File

@ -0,0 +1,101 @@
Shader "Unlit/Mirror"
{
Properties{
_MainTex("Main Tex", 2D) = "white" {}
_BumpMap("Normal Map", 2D) = "bump" {}
_Cubemap("Environment Cubemap", Cube) = "_Skybox" {}
_Distortion("Distortion", Range(0, 100)) = 10
_RefractAmount("Refract Amount", Range(0.0, 1.0)) = 1.0
}
SubShader{
// We must be transparent, so other objects are drawn before this one.
Tags { "Queue" = "Transparent" "RenderType" = "Opaque" }
// This pass grabs the screen behind the object into a texture.
// We can access the result in the next pass as _RefractionTex
GrabPass { "_RefractionTex" }
Pass {
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
sampler2D _MainTex;
float4 _MainTex_ST;
sampler2D _BumpMap;
float4 _BumpMap_ST;
samplerCUBE _Cubemap;
float _Distortion;
fixed _RefractAmount;
sampler2D _RefractionTex;
float4 _RefractionTex_TexelSize;
struct a2v {
float4 vertex : POSITION;
float3 normal : NORMAL;
float4 tangent : TANGENT;
float2 texcoord: TEXCOORD0;
};
struct v2f {
float4 pos : SV_POSITION;
float4 scrPos : TEXCOORD0;
float4 uv : TEXCOORD1;
float4 TtoW0 : TEXCOORD2;
float4 TtoW1 : TEXCOORD3;
float4 TtoW2 : TEXCOORD4;
};
v2f vert(a2v v) {
v2f o;
o.pos = UnityObjectToClipPos(v.vertex);
o.scrPos = ComputeGrabScreenPos(o.pos);
o.uv.xy = TRANSFORM_TEX(v.texcoord, _MainTex);
o.uv.zw = TRANSFORM_TEX(v.texcoord, _BumpMap);
float3 worldPos = mul(unity_ObjectToWorld, v.vertex).xyz;
fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);
fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);
fixed3 worldBinormal = cross(worldNormal, worldTangent) * v.tangent.w;
o.TtoW0 = float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);
o.TtoW1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);
o.TtoW2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);
return o;
}
fixed4 frag(v2f i) : SV_Target {
float3 worldPos = float3(i.TtoW0.w, i.TtoW1.w, i.TtoW2.w);
fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));
// Get the normal in tangent space
fixed3 bump = UnpackNormal(tex2D(_BumpMap, i.uv.zw));
// Compute the offset in tangent space
float2 offset = bump.xy * _Distortion * _RefractionTex_TexelSize.xy;
i.scrPos.xy = offset * i.scrPos.z + i.scrPos.xy;
fixed3 refrCol = tex2D(_RefractionTex, i.scrPos.xy / i.scrPos.w).rgb;
// Convert the normal to world space
bump = normalize(half3(dot(i.TtoW0.xyz, bump), dot(i.TtoW1.xyz, bump), dot(i.TtoW2.xyz, bump)));
fixed3 reflDir = reflect(-worldViewDir, bump);
fixed4 texColor = tex2D(_MainTex, i.uv.xy);
fixed3 reflCol = texCUBE(_Cubemap, reflDir).rgb * texColor.rgb;
fixed3 finalColor = reflCol * (1 - _RefractAmount) + refrCol * _RefractAmount;
return fixed4(finalColor, 1);
}
ENDCG
}
}
FallBack "Diffuse"
}

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 06aebe0023f3c3c4787e8809bc681cc1
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

View File

@ -0,0 +1,159 @@
fileFormatVersion: 2
guid: eb6b790132cb6814299359ccbafbb3db
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 2
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
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 MiB

View File

@ -0,0 +1,159 @@
fileFormatVersion: 2
guid: 628aaa4b28db4a848a176f499e58667d
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 2
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
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: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,140 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: MirrorTex
m_Shader: {fileID: 10762, guid: 0000000000000000f000000000000000, type: 0}
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 8400000, guid: 90746777a83033d47b7f37e678b36da1, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Cubemap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 8400000, guid: 90746777a83033d47b7f37e678b36da1, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _Blend: 0
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _ColorMask: 15
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _Distortion: 10
- _DstBlend: 0
- _EnvironmentReflections: 1
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _RefractAmount: 1
- _Smoothness: 0
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _Surface: 0
- _UVSec: 0
- _UseUIAlphaClip: 0
- _WorkflowMode: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 0.9645665, g: 0.9874546, b: 0.9810632, a: 1}
- _Color: {r: 0.9645665, g: 0.9874546, b: 0.9810632, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
--- !u!114 &240534112270796075
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 5

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f26d347f60e042c4694e2bb339207750
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -12,8 +12,9 @@ GameObject:
- component: {fileID: 1776058685440938395}
- component: {fileID: 6773507116056973082}
- component: {fileID: 506215071228445042}
- component: {fileID: -1117560601412896751}
m_Layer: 5
m_Name: ToolAndMaterlItem
m_Name: UI_ToolOrMaterialsOrDeviceItem
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -33,6 +34,7 @@ RectTransform:
m_Children:
- {fileID: 5205643301997949128}
- {fileID: 1803722018923938532}
- {fileID: 1719955248074856253}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -69,7 +71,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: c440f35582c13154db88b809ccce0758, type: 3}
m_Sprite: {fileID: 21300000, guid: eb6b790132cb6814299359ccbafbb3db, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@ -123,6 +125,18 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!114 &-1117560601412896751
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 464744457135127127}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ad9f843a32e8ae64589a09a12c9665b8, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1287235293540347711
GameObject:
m_ObjectHideFlags: 0
@ -159,8 +173,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 51, y: 46}
m_SizeDelta: {x: 14, y: 14}
m_AnchoredPosition: {x: 51.3554, y: 51.2554}
m_SizeDelta: {x: 11.8893, y: 11.8893}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &5444988397143885231
CanvasRenderer:
@ -244,6 +258,82 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!1 &2413592278185539435
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1719955248074856253}
- component: {fileID: 2364628853574207159}
- component: {fileID: 1820065850620537813}
m_Layer: 5
m_Name: icon
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1719955248074856253
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2413592278185539435}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 6574754484931438874}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 89.6648, y: 89.6648}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2364628853574207159
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2413592278185539435}
m_CullTransparentMesh: 1
--- !u!114 &1820065850620537813
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2413592278185539435}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &4407067812886207628
GameObject:
m_ObjectHideFlags: 0

File diff suppressed because it is too large Load Diff

View File

@ -333,7 +333,8 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0, y: 0, z: 0}
m_ConstrainProportionsScale: 0
m_Children: []
m_Children:
- {fileID: 495902561}
m_Father: {fileID: 0}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -342,6 +343,79 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0}
--- !u!1 &495902560
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 495902561}
- component: {fileID: 495902563}
- component: {fileID: 495902562}
m_Layer: 5
m_Name: Image
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!224 &495902561
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 495902560}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 293571873}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &495902562
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 495902560}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 1344c3c82d62a2a41a3576d8abb8e3ea, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 0.4392157}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Texture: {fileID: 2800000, guid: 628aaa4b28db4a848a176f499e58667d, type: 3}
m_UVRect:
serializedVersion: 2
x: 0
y: 0
width: 1
height: 1
--- !u!222 &495902563
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 495902560}
m_CullTransparentMesh: 1
--- !u!1 &678380208
GameObject:
m_ObjectHideFlags: 0

View File

@ -618,6 +618,8 @@ Transform:
- {fileID: 860489969}
- {fileID: 1745229905514037886}
- {fileID: 4762243372118872814}
- {fileID: 1943116162}
- {fileID: 1510720947}
m_Father: {fileID: 0}
m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -649,11 +651,10 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 543450653353674152}
- {fileID: 8051032130050426903}
- {fileID: 1884935861}
m_Father: {fileID: 0}
m_RootOrder: 7
m_RootOrder: 8
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1193996213
GameObject:
@ -876,6 +877,72 @@ Transform:
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
--- !u!1001 &1510720946
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 983777793}
m_Modifications:
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_RootOrder
value: 12
objectReference: {fileID: 0}
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_LocalPosition.x
value: 0.311
objectReference: {fileID: 0}
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_LocalPosition.y
value: -0.81720006
objectReference: {fileID: 0}
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_LocalPosition.z
value: -2.566
objectReference: {fileID: 0}
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2528995886889388087, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_Name
value: "\u5DE5\u4F5C\u670D (1)"
objectReference: {fileID: 0}
- target: {fileID: 2528995886889388087, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
--- !u!4 &1510720947 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 2283832936510184820, guid: c26cb815ef7c52f4790cfe113ed6566f, type: 3}
m_PrefabInstance: {fileID: 1510720946}
m_PrefabAsset: {fileID: 0}
--- !u!64 &1789438301
MeshCollider:
m_ObjectHideFlags: 0
@ -1126,8 +1193,74 @@ Transform:
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 993882620}
m_RootOrder: 2
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 7.822, y: 180, z: 0}
--- !u!1001 &1943116161
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 983777793}
m_Modifications:
- target: {fileID: 8642374616707477856, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_Name
value: "\u56FD\u7F51\u5B89\u5168\u5E3D"
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477856, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_RootOrder
value: 11
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_LocalPosition.x
value: 0.263
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_LocalPosition.y
value: -0.35600007
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_LocalPosition.z
value: -2.517
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
--- !u!4 &1943116162 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 8642374616707477863, guid: 6755528e442f23a418a0c2b4ec3d63d2, type: 3}
m_PrefabInstance: {fileID: 1943116161}
m_PrefabAsset: {fileID: 0}
--- !u!1 &2075661853
GameObject:
m_ObjectHideFlags: 0
@ -1514,14 +1647,14 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 919132149367037714}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 16.109243, y: 0.20133084, z: -2.0650885}
m_LocalPosition: {x: 3.5699997, y: 1.068, z: -2.3}
m_LocalScale: {x: 0.01, y: 1.9790282, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 6132854414382456745}
- {fileID: 2587898902532246539}
m_Father: {fileID: 993882620}
m_RootOrder: 0
m_Father: {fileID: 0}
m_RootOrder: 7
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!4 &546574357435488758
Transform:
@ -1727,7 +1860,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
m_IsActive: 1
--- !u!1 &1180585328177513171
GameObject:
m_ObjectHideFlags: 0
@ -1980,7 +2113,7 @@ MeshRenderer:
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 4124042700422856964, guid: b328f3329c3e8fa42b67040d91fdad15, type: 3}
- {fileID: 2100000, guid: f26d347f60e042c4694e2bb339207750, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
@ -5704,9 +5837,9 @@ Camera:
m_Depth: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_Bits: 1
m_RenderingPath: -1
m_TargetTexture: {fileID: 0}
m_TargetTexture: {fileID: 8400000, guid: 90746777a83033d47b7f37e678b36da1, type: 2}
m_TargetDisplay: 0
m_TargetEye: 3
m_HDR: 1
@ -5992,7 +6125,7 @@ Transform:
- {fileID: 8208828379553555173}
- {fileID: 3845841956543389490}
m_Father: {fileID: 993882620}
m_RootOrder: 1
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &8101419820916546251
MeshFilter:

View File

@ -8,13 +8,13 @@ using UnityEngine;
public class PacksackBagMgr : BaseManager<PacksackBagMgr>
{
//包里用了哪些工器具
private readonly Dictionary<int, List<ItemInfo>> toolAndMaterialDic = new Dictionary<int, List<ItemInfo>>();
private readonly Dictionary<ItemInfo, List<ItemInfo>> toolAndMaterialDic = new Dictionary<ItemInfo, List<ItemInfo>>();
private PacksackBagMgr()
{
}
public Dictionary<int, List<ItemInfo>> GetCurrentBagData()
public Dictionary<ItemInfo, List<ItemInfo>> GetCurrentBagData()
{
return toolAndMaterialDic;
}
@ -26,32 +26,59 @@ public class PacksackBagMgr : BaseManager<PacksackBagMgr>
/// <param name="name"></param>
public void AddOneToolOrMater(ItemInfo itemInfo)
{
if (toolAndMaterialDic.ContainsKey(itemInfo.toolId))
if (toolAndMaterialDic.ContainsKey(itemInfo))
{
toolAndMaterialDic[itemInfo.toolId].Add(itemInfo);
toolAndMaterialDic[itemInfo].Add(itemInfo);
}
else
{
toolAndMaterialDic.Add(itemInfo.toolId, new List<ItemInfo>() { itemInfo });
toolAndMaterialDic.Add(itemInfo, new List<ItemInfo>() { itemInfo });
}
}
public Dictionary<ItemInfo, List<ItemInfo>> GetItemsByE_TMDType(E_ToolOrDeviceOrMaterials tmdTpye)
{
Dictionary<ItemInfo, List<ItemInfo>> temp = new Dictionary<ItemInfo, List<ItemInfo>>();
var dicTemp = GetCurrentBagData();
foreach (var item in dicTemp.Keys)
{
if (item.toolOrDeviceOrMaterial == tmdTpye)
{
if (temp.ContainsKey(item))
{
temp[item].Add(item);
}
else
{
temp.Add(item, new List<ItemInfo>() { item });
}
}
}
return temp;
}
/// <summary>
/// 移除一个工器具或材料
/// </summary>
/// <param name="name"></param>
public void RemoveOneToolOrMater(ItemInfo itemInfo)
public bool RemoveOneToolOrMater(ItemInfo itemInfo,ref int count)
{
if (toolAndMaterialDic.ContainsKey(itemInfo.toolId))
if (toolAndMaterialDic.ContainsKey(itemInfo))
{
if (toolAndMaterialDic[itemInfo.toolId].Count > 1)
if (toolAndMaterialDic[itemInfo].Count > 1)
{
toolAndMaterialDic[itemInfo.toolId].Remove(itemInfo);
toolAndMaterialDic[itemInfo].Remove(itemInfo);
count = toolAndMaterialDic[itemInfo].Count;
return true;
}
else
{
toolAndMaterialDic.Remove(itemInfo.toolId);
toolAndMaterialDic.Remove(itemInfo);
return false;
}
}
return false;
}
}

View File

@ -200,6 +200,11 @@ public class ProcessManager : BaseManager<ProcessManager>
{
if (isRemove)
d_Scheme.CurrentProcess.CurrentSubProcess.CurrentSubProcessStep.triggersId.RemoveAt(0);
if (d_Scheme.CurrentProcess.CurrentSubProcess.CurrentSubProcessStep.triggersId.Count == 0)
{
CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
Debug.Log($"<color=red>triggersId空了</color>");
}
return 0;
}
else

View File

@ -15,6 +15,7 @@ public class ItemInfo
public int triggerID;
public string toolName;
public E_ToolOrDeviceOrMaterials toolOrDeviceOrMaterial;
public GameObject selfObj;
}
/// <summary>
/// 工具或者材料基类,此脚本必须挂在工具或者材料上
@ -39,7 +40,9 @@ public abstract class BaseToolOrDevice : MonoBehaviour
{
itemInfo.toolId = dTMD.id;
itemInfo.triggerID = dTMD.id;
itemInfo.toolName = dTMD.objName;
itemInfo.toolOrDeviceOrMaterial = (E_ToolOrDeviceOrMaterials)dTMD.type;
itemInfo.selfObj = this.gameObject;
gameObject.SetActive(true);
}
else

View File

@ -23,6 +23,7 @@ public class Tool_SelectComponent : BaseToolOrDevice
if (GameManager.ProcessMgr.IsRightSubProcessStepsTriggerID(itemInfo.triggerID, true) == 0)
{
GameManager.PacksackBagMgr.AddOneToolOrMater(itemInfo);
_highlight.highlighted = false;
gameObject.SetActive(false);
GameManager.UIMgr.HidePanel<ItemTips>();//ÌáÊ¾Ãæ°å
}

View File

@ -1,11 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class UI_ToolAndMaterialsItem : BaseItem
{
public void Init(int count, string toolName)
{
}
}

View File

@ -0,0 +1,42 @@
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
public class UI_ToolOrMaterialsOrDeviceItem : BaseItem
{
public ItemInfo itemInfo;
public void Init(ItemInfo _itemInfo, int count)
{
GetControl<TextMeshProUGUI>("CountText").text = count.ToString();
itemInfo = _itemInfo;
}
protected override void OnClick(string btnName)
{
base.OnClick(btnName);
switch (btnName)
{
case "ItemCloseBtn":
if (GameManager.RunModelMgr.ModeType != E_ModeType.Study)
{
int count = 0;
if (!GameManager.PacksackBagMgr.RemoveOneToolOrMater(itemInfo, ref count))
{
itemInfo.selfObj.SetActive(true);
Destroy(gameObject);
}
else
{
GetControl<TextMeshProUGUI>("CountText").text = count.ToString();
}
}
break;
case "UI_ToolOrMaterialsOrDeviceItem":
Debug.Log("ICon");
break;
}
}
}

View File

@ -41,7 +41,7 @@ public class UI_InstallAndDismantleTicketPanel : BasePanel
Debug.Log(submit);
if (GameManager.ProcessMgr.IsRightSubProcessStepsTriggerID(triggerID, true) == 0)
{
GameManager.ProcessMgr.CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
//GameManager.ProcessMgr.CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
GameManager.UIMgr.HidePanel<UI_InstallAndDismantleTicketPanel>();
}
break;

View File

@ -31,7 +31,7 @@ public class UI_LowTensionWorkTicketPanel : BasePanel
case "ConfirmBtn":
if (GameManager.ProcessMgr.IsRightSubProcessStepsTriggerID(triggerID, true) == 0)
{
GameManager.ProcessMgr.CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
//GameManager.ProcessMgr.CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
UIManager.Instance.HidePanel<UI_LowTensionWorkTicketPanel>();
//GameManager.UIMgr.HidePanel<UI_LowTensionWorkTicketPanel>();
}

View File

@ -64,7 +64,11 @@ public class UI_MenuBar : BasePanel
public void CheckBtnBySceneName(E_SceneType type)
{
Debug.Log(type.ToString());
GetControl<Image>("MenuBar").transform.DOLocalMoveX(1070, 0.5f);
if (GetControl<Image>("MenuBar").transform.localPosition.x == 960)
{
GetControl<Image>("CloseDefaultBtn").sprite = ExpandSprite;
GetControl<Image>("MenuBar").transform.DOLocalMoveX(1070, 0.5f);
}
toolRoomBtn.gameObject.SetActive(type != E_SceneType.ToolRoom);
siteBtn.gameObject.SetActive(type == E_SceneType.ToolRoom);
workOrderBtn.gameObject.SetActive(type == E_SceneType.Office || type == E_SceneType.Site);
@ -150,5 +154,6 @@ public class UI_MenuBar : BasePanel
default:
break;
}
}
}

View File

@ -5,7 +5,7 @@ using UnityEngine.UI;
public class UI_ReceiveTaskPanel : BasePanel
{
public int triggerID;
private int triggerID;
public void Init(int triggerID)
{
this.triggerID = triggerID;
@ -17,7 +17,7 @@ public class UI_ReceiveTaskPanel : BasePanel
case "Button_Accept":
if (GameManager.ProcessMgr.IsRightSubProcessStepsTriggerID(triggerID, true) == 0)
{
GameManager.ProcessMgr.CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
//GameManager.ProcessMgr.CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
GameManager.UIMgr.HidePanel<UI_ReceiveTaskPanel>();
}
break;

View File

@ -33,11 +33,15 @@ public class UI_SelectWorkTicketPanel : BasePanel
if (GetControl<Toggle>("ImageF").isOn)
{
UIManager.Instance.HidePanel<UI_SelectWorkTicketPanel>();
GameManager.UIMgr.ShowPanel<UI_LowTensionWorkTicketPanel>(E_UI_Layer.Mid, (p) =>
if (GameManager.ProcessMgr.IsRightSubProcessStepsTriggerID(triggerID, true) == 0)
{
GameManager.ProcessMgr.CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
});
Debug.Log("选择了正确选项F进行下一个面板");
GameManager.UIMgr.ShowPanel<UI_LowTensionWorkTicketPanel>(E_UI_Layer.Mid);
// , (p) =>
//{
// GameManager.ProcessMgr.CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
//});
Debug.Log("选择了正确选项F进行下一个面板");
}
}
else
{
@ -45,10 +49,14 @@ public class UI_SelectWorkTicketPanel : BasePanel
{
UIManager.Instance.HidePanel<UI_SelectWorkTicketPanel>();
Debug.Log("错误三次了,直接进行下一个面板");
GameManager.UIMgr.ShowPanel<UI_LowTensionWorkTicketPanel>(E_UI_Layer.Mid, (p) =>
if (GameManager.ProcessMgr.IsRightSubProcessStepsTriggerID(triggerID, true) == 0)
{
GameManager.ProcessMgr.CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
});
GameManager.UIMgr.ShowPanel<UI_LowTensionWorkTicketPanel>(E_UI_Layer.Mid);
// , (p) =>
//{
// GameManager.ProcessMgr.CheckSubProcessSteps(GameManager.ProcessMgr.subProcessStepId);
//});
}
}
}
break;

View File

@ -4,6 +4,10 @@ using UnityEngine.UI;
public class UI_ToolAndMaterialPanel : BasePanel
{
private Dictionary<ItemInfo, List<ItemInfo>> bagDatas;
public RectTransform _content;
public UI_ToolOrMaterialsOrDeviceItem ui_TmdItem;
public void Init()
{
@ -12,40 +16,51 @@ public class UI_ToolAndMaterialPanel : BasePanel
public override void ShowMe()
{
CreatItem(0); //默认打开显示工器具
CreatItem(E_ToolOrDeviceOrMaterials.Tool); //默认打开显示工器具
}
public override void HideMe()
{
}
private void CreatItem(int type)
private void CreatItem(E_ToolOrDeviceOrMaterials tmdTpye)
{
Dictionary<int, List<ItemInfo>> bagDatas = GameManager.PacksackBagMgr.GetCurrentBagData();
foreach (var toolAndMaterialData in bagDatas.Values)
if(_content.transform.childCount > 0)
{
foreach (var item in toolAndMaterialData)
for (int i = 0; i < _content.transform.childCount; i++)
{
Destroy(_content.transform.GetChild(i).gameObject);
}
//string iconName = GameManager.ToolAndmaterialMgr.GetIconSpriteName(toolAndMaterialData.objName);
//if (iconName != null)
//{
// var toolAndMaterItem = GameManager.ResourcesMgr.Load<GameObject>(Const.UI_Item +
// "UI_ToolAndMaterialPanel/" +s
// "ToolAndMeterialItem");
}
// toolAndMaterItem.GetComponent<Image>().sprite =
// GameManager.ResourcesMgr.Load<Sprite>(Const.TitleSpritePath + iconName);
// toolAndMaterItem.GetComponentInChildren<Text>().text = toolAndMaterialData.count.ToString();
// toolAndMaterItem.transform.parent = GetControl<ScrollRect>("itemScrollView").content;
//}
bagDatas = GameManager.PacksackBagMgr.GetItemsByE_TMDType(tmdTpye);
foreach (var item in bagDatas.Keys)
{
UI_ToolOrMaterialsOrDeviceItem uiTMDitem = Instantiate(ui_TmdItem, _content);
uiTMDitem.Init(item, bagDatas[item].Count);
}
}
protected override void OnChangeToggle(string toogleName, bool isOn)
{
base.OnChangeToggle(toogleName, isOn);
switch (toogleName)
{
case "toolTog":
CreatItem(E_ToolOrDeviceOrMaterials.Tool);
break;
case "deviceTog":
CreatItem(E_ToolOrDeviceOrMaterials.Device);
break;
case "materialsTog":
CreatItem(E_ToolOrDeviceOrMaterials.Materials);
break;
default:
break;
}
}
protected override void OnClick(string btnName)
{
switch (btnName)
@ -53,12 +68,6 @@ public class UI_ToolAndMaterialPanel : BasePanel
case "closeBtn":
GameManager.UIMgr.HidePanel<UI_ToolAndMaterialPanel>();
break;
case "toolBtn":
CreatItem(0);
break;
case "deviceBtn":
CreatItem(1);
break;
default:
break;
}