This commit is contained in:
2025-06-13 22:43:40 +08:00
parent 1b1ee53954
commit 662000ab91
5 changed files with 2174 additions and 1649 deletions
@@ -92,7 +92,91 @@ ScriptedImporter:
tessellationDetail: 0
uvTransform: {x: 0, y: 0}
spritePosition: {x: 0, y: 0}
mosaicSpriteImportData: []
mosaicSpriteImportData:
- name: "\u5185\u90E8\u6784\u9020"
originalName:
pivot: {x: 0.5, y: 0.5}
alignment: 0
border: {x: 0, y: 0, z: 0, w: 0}
rect:
serializedVersion: 2
x: 4
y: 2172
width: 1352
height: 1470
spriteID: 0bcfc72d0c976464ca718fc9c61ff901
spriteBone: []
spriteOutline: []
vertices: []
spritePhysicsOutline: []
indices:
edges: []
tessellationDetail: 0
uvTransform: {x: 4, y: 2172}
spritePosition: {x: 541, y: 370}
- name: "\u6208\u5854\u4EC0\u5934\u53D1"
originalName:
pivot: {x: 0.5, y: 0.5}
alignment: 0
border: {x: 0, y: 0, z: 0, w: 0}
rect:
serializedVersion: 2
x: 1742
y: 4
width: 1900
height: 869
spriteID: 62a32b477c6cb1d47b7da3e934531ab6
spriteBone: []
spriteOutline: []
vertices: []
spritePhysicsOutline: []
indices:
edges: []
tessellationDetail: 0
uvTransform: {x: 1742, y: 4}
spritePosition: {x: 293, y: 1291}
- name: "\u6208\u5854\u4EC0\u5934\u53D1\u9634\u5F71"
originalName:
pivot: {x: 0.5, y: 0.5}
alignment: 0
border: {x: 0, y: 0, z: 0, w: 0}
rect:
serializedVersion: 2
x: 1742
y: 881
width: 1900
height: 869
spriteID: 28867351161566a419ba0613851d60be
spriteBone: []
spriteOutline: []
vertices: []
spritePhysicsOutline: []
indices:
edges: []
tessellationDetail: 0
uvTransform: {x: 1742, y: 881}
spritePosition: {x: 293, y: 1252}
- name: "\u6208\u5854\u4EC0"
originalName:
pivot: {x: 0.5, y: 0.5}
alignment: 0
border: {x: 0, y: 0, z: 0, w: 0}
rect:
serializedVersion: 2
x: 4
y: 4
width: 1730
height: 2160
spriteID: 5a5329fb4ddb7df428f5fdd3b465a066
spriteBone: []
spriteOutline: []
vertices: []
spritePhysicsOutline: []
indices:
edges: []
tessellationDetail: 0
uvTransform: {x: 4, y: 4}
spritePosition: {x: 354, y: 0}
rigSpriteImportData:
- name: "\u5185\u90E8\u6784\u9020"
originalName:
@@ -255,9 +339,9 @@ ScriptedImporter:
allowsAlphaSplitting: 0
androidETC2FallbackOverride: 0
mosaicLayers: 1
characterMode: 1
characterMode: 0
documentPivot: {x: 0, y: 0}
documentAlignment: 7
documentAlignment: 0
importHiddenLayers: 0
layerMappingOption: 2
generatePhysicsShape: 0
@@ -270,7 +354,47 @@ ScriptedImporter:
categories: []
spritePackingTag:
resliceFromLayer: 0
mosaicPSDLayers: []
mosaicPSDLayers:
- name: "\u5185\u90E8\u6784\u9020"
spriteName: "\u5185\u90E8\u6784\u9020"
isGroup: 0
parentIndex: -1
spriteID: 0bcfc72d0c976464ca718fc9c61ff901
layerID: 4496
mosaicPosition: {x: 4, y: 2172}
flatten: 0
isImported: 1
isVisible: 1
- name: "\u6208\u5854\u4EC0\u5934\u53D1"
spriteName: "\u6208\u5854\u4EC0\u5934\u53D1"
isGroup: 0
parentIndex: -1
spriteID: 62a32b477c6cb1d47b7da3e934531ab6
layerID: 5333
mosaicPosition: {x: 1742, y: 4}
flatten: 0
isImported: 1
isVisible: 1
- name: "\u6208\u5854\u4EC0\u5934\u53D1\u9634\u5F71"
spriteName: "\u6208\u5854\u4EC0\u5934\u53D1\u9634\u5F71"
isGroup: 0
parentIndex: -1
spriteID: 28867351161566a419ba0613851d60be
layerID: 5335
mosaicPosition: {x: 1742, y: 881}
flatten: 0
isImported: 1
isVisible: 1
- name: "\u6208\u5854\u4EC0"
spriteName: "\u6208\u5854\u4EC0"
isGroup: 0
parentIndex: -1
spriteID: 5a5329fb4ddb7df428f5fdd3b465a066
layerID: 5102
mosaicPosition: {x: 4, y: 4}
flatten: 0
isImported: 1
isVisible: 1
rigPSDLayers:
- name: "\u5185\u90E8\u6784\u9020"
spriteName: "\u5185\u90E8\u6784\u9020"
+13 -9
View File
@@ -477,15 +477,19 @@ MonoBehaviour:
m_PostInfinity: 2
m_RotationOrder: 4
_filter:
- 0.007228916
- 0.043749984
- 0.12409639
- 0.20444278
- 0.24096388
- 0.20444278
- 0.12409639
- 0.043749984
- 0.007228916
- 0.0048309183
- 0.016401261
- 0.04532712
- 0.08293076
- 0.12053438
- 0.14946026
- 0.1610306
- 0.14946026
- 0.12053438
- 0.08293076
- 0.04532712
- 0.016401261
- 0.0048309183
--- !u!114 &-6101378415725230565
MonoBehaviour:
m_ObjectHideFlags: 3
File diff suppressed because it is too large Load Diff
@@ -9,6 +9,7 @@ namespace AibisDream
{
public class CuttingManager : MonoBehaviour
{
public BubbleSlotGroup bubbleSlotGroup;
[Header("切割组件")]
public GameObject gearFollowerPrefab;
public GameObject entrancePanelPrefab; // 入场面板预制体
+74 -57
View File
@@ -18,9 +18,9 @@ namespace AibisDream.FixSystem
public FixStateMachine()
{
_stateMachine = new StateMachine<FixState>(CreateState);
_stateMachine.OnStateSwitch += state => EnumEventSystem.Global.Send(EventEnum.FixStateSwitch, state);
_stateMachine.OnStateSwitch += state => EnumEventSystem.Global.Send(EventEnum.FixStateSwitch, state);
}
public IEnumerator Init(FixState initState)
{
yield return _stateMachine.Init(initState);
@@ -161,12 +161,12 @@ namespace AibisDream.FixSystem
bodyModuleSystem.ResetPlug();
yield return CameraKit.Instance.SwitchCamera(CameraEnum.BodyModule);
}
// 加载气泡
var data = FixSystemCenter.SystemDic.Get<ScreenSystem>().BubbleSlotGroup.CollectData();
BubbleGroup.Instance.LoadBubbles(data);
DialogCanvasManager.Instance.SwitchDialogView(DialogViewType.StandardBubble);
// 开启交互
bodyModuleSystem.EnableSystem();
}
@@ -336,7 +336,7 @@ namespace AibisDream.FixSystem
yield return CameraKit.Instance.SwitchCamera(CameraEnum.EyeDeep);
eyeSystem.OnEnter();
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeOutAsync(0.5f);
var data = eyeSystem.bubbleSlotGroup.CollectData();
BubbleGroup.Instance.LoadBubbles(data);
}
@@ -405,6 +405,7 @@ namespace AibisDream.FixSystem
memorySystem.PullMemoryProjector();
}
}
public struct ExpressionState : IState<FixState>
{
public FixState GetState => FixState.Expression;
@@ -424,6 +425,7 @@ namespace AibisDream.FixSystem
bodyModule.SwitchModuleGroup(ModuleState.Head);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.BodyModule);
}
// 切换相机
expressionManager.OpenView();
yield return CameraKit.Instance.SwitchCamera(CameraEnum.Expression);
@@ -431,7 +433,6 @@ namespace AibisDream.FixSystem
//expressionManager.OpenView();
yield return CameraKit.Instance.SwitchCamera(CameraEnum.ExpressionDeep);
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeOutAsync(0.5f);
}
public IEnumerator Exit()
@@ -443,6 +444,7 @@ namespace AibisDream.FixSystem
yield break;
}
}
public struct EmoState : IState<FixState>
{
public FixState GetState => FixState.Emo;
@@ -477,15 +479,16 @@ namespace AibisDream.FixSystem
yield break;
}
}
public struct OpState : IState<FixState>
{
public FixState GetState => FixState.Op;
public void SetArgs(string args)
{
// 无
}
public IEnumerator Enter()
{
if (!CameraKit.Instance.EqualToCameraState(CameraEnum.Op))
@@ -493,48 +496,50 @@ namespace AibisDream.FixSystem
yield return CameraKit.Instance.SwitchCamera(CameraEnum.Op);
}
}
public IEnumerator Exit()
{
// 无
yield break;
}
}
public struct DreamState : IState<FixState>
public struct DreamState : IState<FixState>
{
public FixState GetState => FixState.Dream;
public void SetArgs(string args)
{
// 无
}
public IEnumerator Enter()
{
if (!CameraKit.Instance.EqualToCameraState(CameraEnum.DreamCamera))
{
yield return CameraKit.Instance.SwitchCamera(CameraEnum.DreamCamera);
var openSystem = FixSystemCenter.SystemDic.Get<OpenSystem>();
BubbleGroup.Instance.LoadBubbles(openSystem.bubbleSlotGroup.CollectData());
}
}
public IEnumerator Exit()
{
// 无
yield break;
}
}
public struct EmoCutState : IState<FixState>
public struct EmoCutState : IState<FixState>
{
public FixState GetState => FixState.EmoCut;
public void SetArgs(string args)
{
// 无
}
public IEnumerator Enter()
{
var bodyModuleSystem = FixSystemCenter.SystemDic.Get<BodyModuleSystem>();
@@ -544,40 +549,46 @@ namespace AibisDream.FixSystem
bodyModuleSystem.SwitchModuleGroup(ModuleState.Head);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.BodyModule);
}
// Cut的气泡统一放在BodyModule下
BubbleGroup.Instance.LoadBubbles(cuttingManager.bubbleSlotGroup.CollectData());
bodyModuleSystem.CableSystem.ResetPlug();
var bodyModule=bodyModuleSystem.FindBodyModuleByName("Emo");
if(bodyModule!=null)
var bodyModule = bodyModuleSystem.FindBodyModuleByName("Emo");
if (bodyModule != null)
{
bodyModule.GetCutSpriteRenderer().sortingOrder=100;
bodyModule.GetCutSpriteRenderer().color=new Color(1f,1f,1f,1f);
bodyModule.GetCutSpriteRenderer().GetComponentInChildren<SpriteRenderer>().color=new Color(1f,1f,1f,1f);
bodyModule.GetCutSpriteRenderer().sortingOrder = 100;
bodyModule.GetCutSpriteRenderer().color = new Color(1f, 1f, 1f, 1f);
bodyModule.GetCutSpriteRenderer().GetComponentInChildren<SpriteRenderer>().color =
new Color(1f, 1f, 1f, 1f);
}
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutEmo);
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeInAsync(0.1f);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutEmoDeep);
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeOutAsync(0.1f);
yield return cuttingManager.StartCutting(bodyModule);
}
public IEnumerator Exit()
{
// 无
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeInAsync(0.1f);
var cuttingManager = FixSystemCenter.SystemDic.Get<CuttingManager>();
cuttingManager.ClearCutLine();
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutEmo);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutEmo);
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeOutAsync(0.1f);
}
}
}
public struct MemoryCutState : IState<FixState>
public struct MemoryCutState : IState<FixState>
{
public FixState GetState => FixState.MemoryCut;
public void SetArgs(string args)
{
// 无
}
public IEnumerator Enter()
{
var bodyModuleSystem = FixSystemCenter.SystemDic.Get<BodyModuleSystem>();
@@ -587,42 +598,46 @@ namespace AibisDream.FixSystem
bodyModuleSystem.SwitchModuleGroup(ModuleState.Head);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.BodyModule);
}
// Cut的气泡统一放在BodyModule下
BubbleGroup.Instance.LoadBubbles(cuttingManager.bubbleSlotGroup.CollectData());
bodyModuleSystem.CableSystem.ResetPlug();
var bodyModule=bodyModuleSystem.FindBodyModuleByName("Memory");
if(bodyModule!=null)
var bodyModule = bodyModuleSystem.FindBodyModuleByName("Memory");
if (bodyModule != null)
{
bodyModule.GetCutSpriteRenderer().sortingOrder=100;
bodyModule.GetCutSpriteRenderer().color=new Color(1f,1f,1f,1f);
bodyModule.GetCutSpriteRenderer().GetComponentInChildren<SpriteRenderer>().color=new Color(1f,1f,1f,1f);
bodyModule.GetCutSpriteRenderer().sortingOrder = 100;
bodyModule.GetCutSpriteRenderer().color = new Color(1f, 1f, 1f, 1f);
bodyModule.GetCutSpriteRenderer().GetComponentInChildren<SpriteRenderer>().color =
new Color(1f, 1f, 1f, 1f);
}
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutMemory);
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeInAsync(0.1f);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutMemoryDeep);
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeOutAsync(0.1f);
yield return cuttingManager.StartCutting(bodyModule);
}
public IEnumerator Exit()
{
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeInAsync(0.1f);
var cuttingManager = FixSystemCenter.SystemDic.Get<CuttingManager>();
cuttingManager.ClearCutLine();
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutMemory);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutMemory);
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeOutAsync(0.1f);
}
}
}
public struct LogicCutState : IState<FixState>
public struct LogicCutState : IState<FixState>
{
public FixState GetState => FixState.LogicCut;
public void SetArgs(string args)
{
// 无
}
public IEnumerator Enter()
{
var cuttingManager = FixSystemCenter.SystemDic.Get<CuttingManager>();
@@ -631,31 +646,33 @@ namespace AibisDream.FixSystem
{
bodyModuleSystem.SwitchModuleGroup(ModuleState.Head);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.BodyModule);
} ;
var bodyModule=bodyModuleSystem.FindBodyModuleByName("Logic");
if(bodyModule!=null)
{
bodyModule.GetCutSpriteRenderer().sortingOrder=100;
bodyModule.GetCutSpriteRenderer().color=new Color(1f,1f,1f,1f);
bodyModule.GetCutSpriteRenderer().GetComponentInChildren<SpriteRenderer>().color=new Color(1f,1f,1f,1f);
}
// Cut的气泡统一放在BodyModule下
BubbleGroup.Instance.LoadBubbles(cuttingManager.bubbleSlotGroup.CollectData());
var bodyModule = bodyModuleSystem.FindBodyModuleByName("Logic");
if (bodyModule != null)
{
bodyModule.GetCutSpriteRenderer().sortingOrder = 100;
bodyModule.GetCutSpriteRenderer().color = new Color(1f, 1f, 1f, 1f);
bodyModule.GetCutSpriteRenderer().GetComponentInChildren<SpriteRenderer>().color =
new Color(1f, 1f, 1f, 1f);
}
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutLogic);
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeInAsync(0.1f);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutLogicDeep);
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeOutAsync(0.1f);
yield return cuttingManager.StartCutting(bodyModule);
}
public IEnumerator Exit()
{
{
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeInAsync(0.1f);
var cuttingManager = FixSystemCenter.SystemDic.Get<CuttingManager>();
cuttingManager.ClearCutLine();
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutLogic);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.CutLogic);
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeOutAsync(0.1f);
}
}
}
}
}