fix: 进入记忆界面相关修改

This commit is contained in:
2026-07-19 19:41:13 +08:00
parent c3da27d07c
commit 2999f753f7
5 changed files with 1870 additions and 1610 deletions
@@ -0,0 +1,210 @@
fileFormatVersion: 2
guid: 39e49ee62533df1499223125855b3c34
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
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: 0
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 21.5
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: 512
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: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
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
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
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:
- serializedVersion: 2
name: "\u5DE6\u4FA7\u8FB9\u6846"
rect:
serializedVersion: 2
x: 0
y: 0
width: 31
height: 295
alignment: 9
pivot: {x: 0.5, y: 0.36610168}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: e003d853b0ca86845aafa30181ed0d17
internalID: -359285356
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: "\u7EF4\u4FEE\u754C\u9762"
rect:
serializedVersion: 2
x: 216
y: 0
width: 168
height: 294
alignment: 9
pivot: {x: 0.5, y: 0.36734694}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: c2e027bcd8e709d4e96c9e2fa1c0e6a5
internalID: 1938320413
vertices: []
indices:
edges: []
weights: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable:
"\u5DE6\u4FA7\u8FB9\u6846": -359285356
"\u7EF4\u4FEE\u754C\u9762": 1938320413
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
File diff suppressed because it is too large Load Diff
@@ -28,17 +28,45 @@ namespace AibisDream.FixSystem
_taskItemPrefab = ResourceKit.LoadAssetSync<GameObject>(ConstRef.TaskItemName);
}
public bool IsPanelVisible => Mathf.Approximately(taskRoot.localPosition.x, ShownLocalX);
public void ShowPanel()
{
taskRoot.DOLocalMoveX(ShownLocalX, 1f);
}
/// <summary>动画收起面板(与 ShowPanel 对称)。</summary>
public void HidePanel()
{
taskRoot.DOKill();
taskRoot.DOLocalMoveX(HiddenLocalX, 1f);
}
public void HidePanelImmediate()
{
taskRoot.DOKill();
SetPanelVisibleImmediate(false);
}
private bool _restoreVisibleAfterCollapse;
/// <summary>临时收起面板(如进入 Memory 模式),记录之前是否展开,供 RestoreCollapsedPanel 恢复。</summary>
public void CollapsePanelTemporary(bool immediate = false)
{
_restoreVisibleAfterCollapse = IsPanelVisible;
if (!_restoreVisibleAfterCollapse) return;
if (immediate) HidePanelImmediate();
else HidePanel();
}
/// <summary>按 CollapsePanelTemporary 记录的状态恢复面板(之前未展开则不做任何事)。</summary>
public void RestoreCollapsedPanel()
{
if (!_restoreVisibleAfterCollapse) return;
_restoreVisibleAfterCollapse = false;
ShowPanel();
}
public void CompleteTask(string lineId)
{
if (_taskDict.Remove(lineId, out var taskItem))
@@ -73,7 +101,7 @@ namespace AibisDream.FixSystem
public void CaptureSnapshot(out bool isPanelVisible, List<TaskEntrySnapshotDto> tasks)
{
isPanelVisible = Mathf.Approximately(taskRoot.localPosition.x, ShownLocalX);
isPanelVisible = IsPanelVisible;
tasks.Clear();
foreach (var kv in _taskDict)
@@ -109,6 +109,8 @@ namespace AibisDream.FixSystem
{
float duration = 0.5f;
var memorySystem = FixSystemCenter.SystemDic.Get<MemoryProcess>();
// 进入Memory前收起Task面板
FixPanelSystem.Instance.TaskPanel?.CollapsePanelTemporary();
// 先切BodyModule
if (!CameraKit.Instance.EqualToCameraState(CameraEnum.BodyModule))
{
@@ -130,6 +132,7 @@ namespace AibisDream.FixSystem
{
var memorySystem = FixSystemCenter.SystemDic.Get<MemoryProcess>();
FixPanelSystem.Instance.TaskPanel?.CollapsePanelTemporary(immediate: true);
yield return memorySystem.DropMemoryProjector();
FixPanelSystem.GetRepairPanel<CablePanel>().ResetPlug();
yield return CameraKit.Instance.SwitchCamera(CameraEnum.Memory, true);
@@ -147,6 +150,8 @@ namespace AibisDream.FixSystem
yield return UIManager.Instance.GetPanel<ScreenTransitionPanel>().FadeOutAsync(duration);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.BodyModule);
memorySystem.PullMemoryProjector();
// 退出Memory后恢复Task面板
FixPanelSystem.Instance.TaskPanel?.RestoreCollapsedPanel();
}
}
}