From a634d92b9c6a51f58d19cd3be24310c656051c71 Mon Sep 17 00:00:00 2001 From: bottlefish <781230111@qq.com> Date: Mon, 3 Nov 2025 18:24:38 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E5=88=9D=E6=AD=A5=E5=B0=9D=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Scripts/MiniGame/HuoShan/NewExpress.meta | 8 + .../HuoShan/NewExpress/BackgroundTextLayer.cs | 195 +++++++++ .../NewExpress/BackgroundTextLayer.cs.meta | 11 + .../HuoShan/NewExpress/CircularViewport.cs | 155 ++++++++ .../NewExpress/CircularViewport.cs.meta | 11 + .../NewExpress/LanguageImaginationSystem.cs | 325 +++++++++++++++ .../LanguageImaginationSystem.cs.meta | 11 + .../LanguageImaginationYarnCommand.cs | 55 +++ .../LanguageImaginationYarnCommand.cs.meta | 11 + .../MiniGame/HuoShan/NewExpress/README.md | 96 +++++ .../HuoShan/NewExpress/README.md.meta | 7 + .../HuoShan/NewExpress/SentenceBuilder.cs | 375 ++++++++++++++++++ .../NewExpress/SentenceBuilder.cs.meta | 11 + .../MiniGame/HuoShan/NewExpress/TextNode.cs | 75 ++++ .../HuoShan/NewExpress/TextNode.cs.meta | 11 + 15 files changed, 1357 insertions(+) create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs create mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs.meta diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress.meta b/Assets/Scripts/MiniGame/HuoShan/NewExpress.meta new file mode 100644 index 000000000..06de43429 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a33a05a3339562c4a808f8f17e7a94b1 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs new file mode 100644 index 000000000..acb371ceb --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs @@ -0,0 +1,195 @@ +using UnityEngine; +using TMPro; +using System.Collections.Generic; +using System.Linq; + +namespace AibisDream.MiniGame.HuoShan +{ + /// + /// 背景文字层 - 生成和管理大量随机变化的文字,文字间寻找关联形成词语连线 + /// + public class BackgroundTextLayer + { + private List _allNodes; + private List _chineseChars; + private float _fieldWidth; + private float _fieldHeight; + private int _nodeCount; + private Transform _parentTransform; + private GameObject _textPrefab; + + // 文字变化参数 + private float _changeInterval = 0.5f; + private float _lastChangeTime; + + // 连线参数 + private float _connectionRadius = 2f; + private float _connectionProbability = 0.3f; + + public BackgroundTextLayer(float fieldWidth, float fieldHeight, int nodeCount, Transform parentTransform) + { + _fieldWidth = fieldWidth; + _fieldHeight = fieldHeight; + _nodeCount = nodeCount; + _parentTransform = parentTransform; + _allNodes = new List(); + + // 初始化中文字符集 + InitializeChineseChars(); + + // 创建文字预制体 + CreateTextPrefab(); + + // 生成初始节点 + GenerateNodes(); + } + + private void InitializeChineseChars() + { + _chineseChars = new List(); + // 常用中文字符(可以扩展) + for (int i = 0x4e00; i <= 0x9fff; i++) + { + _chineseChars.Add(char.ConvertFromUtf32(i)); + } + // 添加一些常用字 + _chineseChars.AddRange(new[] { "的", "是", "在", "了", "和", "有", "就", "不", "人", "都", "一", "一个", "上", "也", "很", "到", "说", "要", "去", "你", "会", "着", "没有", "看", "好", "自己", "这" }); + } + + private void CreateTextPrefab() + { + _textPrefab = new GameObject("TextNodePrefab"); + _textPrefab.hideFlags = HideFlags.HideAndDontSave; + + var textMesh = _textPrefab.AddComponent(); + textMesh.fontSize = 24; + textMesh.alignment = TextAlignmentOptions.Center; + textMesh.color = Color.white; + textMesh.enableWordWrapping = false; + textMesh.overflowMode = TextOverflowModes.Overflow; + + _textPrefab.SetActive(false); + } + + private void GenerateNodes() + { + for (int i = 0; i < _nodeCount; i++) + { + Vector2 randomPos = new Vector2( + Random.Range(-_fieldWidth * 0.5f, _fieldWidth * 0.5f), + Random.Range(-_fieldHeight * 0.5f, _fieldHeight * 0.5f) + ); + + string randomChar = _chineseChars[Random.Range(0, _chineseChars.Count)]; + TextNode node = new TextNode(randomPos, randomChar); + + // 创建GameObject + GameObject nodeObj = Object.Instantiate(_textPrefab, _parentTransform); + nodeObj.SetActive(true); + nodeObj.name = $"TextNode_{i}"; + node.GameObject = nodeObj; + node.TextComponent = nodeObj.GetComponent(); + + node.UpdateVisual(); + _allNodes.Add(node); + } + + // 建立初始连接关系 + UpdateConnections(); + } + + public void Update(float deltaTime) + { + _lastChangeTime += deltaTime; + + if (_lastChangeTime >= _changeInterval) + { + _lastChangeTime = 0f; + + // 随机改变一些文字(排除已选定的和候选的) + foreach (var node in _allNodes) + { + if (node.State == TextNodeState.Random) + { + // 随机改变文字 + if (Random.value < 0.1f) // 10%概率改变 + { + node.Text = _chineseChars[Random.Range(0, _chineseChars.Count)]; + node.UpdateVisual(); + } + + // 随机改变亮度 + node.Brightness = Random.Range(0.3f, 1f); + node.UpdateVisual(); + } + } + + // 更新连接关系 + UpdateConnections(); + } + } + + private void UpdateConnections() + { + // 清除所有连接 + foreach (var node in _allNodes) + { + node.ConnectedNodes.Clear(); + } + + // 重新建立连接(基于距离和概率) + for (int i = 0; i < _allNodes.Count; i++) + { + for (int j = i + 1; j < _allNodes.Count; j++) + { + var nodeA = _allNodes[i]; + var nodeB = _allNodes[j]; + + float distance = Vector2.Distance(nodeA.Position, nodeB.Position); + + if (distance < _connectionRadius && Random.value < _connectionProbability) + { + nodeA.AddConnection(nodeB); + nodeB.AddConnection(nodeA); + } + } + } + } + + public List GetAllNodes() + { + return _allNodes; + } + + public List GetNodesInRange(Vector2 center, float radius) + { + return _allNodes.Where(node => + Vector2.Distance(node.Position, center) <= radius + ).ToList(); + } + + public void SetNodeState(TextNode node, TextNodeState state) + { + node.State = state; + node.UpdateVisual(); + } + + public void Cleanup() + { + foreach (var node in _allNodes) + { + if (node.GameObject != null) + { + Object.Destroy(node.GameObject); + } + } + _allNodes.Clear(); + + if (_textPrefab != null) + { + Object.Destroy(_textPrefab); + } + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs.meta b/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs.meta new file mode 100644 index 000000000..b2b973262 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c5da4de45a1d4c741b06d9c9c0519ff4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs new file mode 100644 index 000000000..831330086 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs @@ -0,0 +1,155 @@ +using UnityEngine; +using Shapes; + +namespace AibisDream.MiniGame.HuoShan +{ + /// + /// 圆形可视区域 - 使用Shapes绘制圆形遮罩,支持鼠标拖拽移动 + /// + public class CircularViewport : ImmediateModeShapeDrawer + { + [Header("圆形区域设置")] + public float viewportRadius = 5f; + public Color viewportBorderColor = Color.white; + public float borderWidth = 0.1f; + + [Header("拖拽设置")] + public bool enableDrag = true; + public float dragSpeed = 1f; + + [Header("Gizmo调试设置")] + public bool showGizmos = true; + public bool showViewportCircle = true; + public bool showCenterPoint = true; + + private Vector2 _viewportCenter; + private bool _isDragging = false; + private Vector2 _lastMousePosition; + private Camera _mainCamera; + + public Vector2 ViewportCenter => _viewportCenter; + public float ViewportRadius => viewportRadius; + + private void Start() + { + _viewportCenter = Vector2.zero; + _mainCamera = Camera.main; + if (_mainCamera == null) + { + _mainCamera = FindObjectOfType(); + } + } + + private void Update() + { + if (!enableDrag) return; + + HandleMouseInput(); + } + + private void HandleMouseInput() + { + if (Input.GetMouseButtonDown(0)) + { + Vector2 mouseWorldPos = GetMouseWorldPosition(); + float distance = Vector2.Distance(mouseWorldPos, _viewportCenter); + + // 如果点击在圆形区域内,开始拖拽 + if (distance <= viewportRadius) + { + _isDragging = true; + _lastMousePosition = mouseWorldPos; + } + } + + if (Input.GetMouseButton(0) && _isDragging) + { + Vector2 currentMousePos = GetMouseWorldPosition(); + Vector2 delta = currentMousePos - _lastMousePosition; + _viewportCenter += delta * dragSpeed; + _lastMousePosition = currentMousePos; + } + + if (Input.GetMouseButtonUp(0)) + { + _isDragging = false; + } + } + + private Vector2 GetMouseWorldPosition() + { + if (_mainCamera == null) return Vector2.zero; + + Vector3 mousePos = Input.mousePosition; + mousePos.z = _mainCamera.nearClipPlane + 1f; + Vector3 worldPos = _mainCamera.ScreenToWorldPoint(mousePos); + return new Vector2(worldPos.x, worldPos.y); + } + + public override void DrawShapes(Camera cam) + { + using (Draw.Command(cam)) + { + Draw.ResetAllDrawStates(); + Draw.LineGeometry = LineGeometry.Volumetric3D; + + // 绘制圆形边框 + Draw.Ring(new Vector3(_viewportCenter.x, _viewportCenter.y, 0), + viewportRadius, borderWidth, viewportBorderColor); + } + } + + public bool IsPositionInViewport(Vector2 position) + { + return Vector2.Distance(position, _viewportCenter) <= viewportRadius; + } + + public void SetViewportCenter(Vector2 center) + { + _viewportCenter = center; + } + + private void OnDrawGizmos() + { + if (!showGizmos) return; + + Vector3 center = new Vector3(_viewportCenter.x, _viewportCenter.y, 0) + transform.position; + + // 绘制圆形视口 + if (showViewportCircle) + { + Gizmos.color = viewportBorderColor; + // 使用多个线段绘制圆形 + int segments = 32; + float angleStep = 360f / segments; + Vector3 prevPoint = center + new Vector3(viewportRadius, 0, 0); + + for (int i = 1; i <= segments; i++) + { + float angle = i * angleStep * Mathf.Deg2Rad; + Vector3 currentPoint = center + new Vector3( + Mathf.Cos(angle) * viewportRadius, + Mathf.Sin(angle) * viewportRadius, + 0 + ); + Gizmos.DrawLine(prevPoint, currentPoint); + prevPoint = currentPoint; + } + } + + // 绘制中心点 + if (showCenterPoint) + { + Gizmos.color = Color.green; + Gizmos.DrawSphere(center, 0.1f); + + // 绘制坐标轴 + Gizmos.color = Color.red; + Gizmos.DrawLine(center, center + Vector3.right * 0.5f); + Gizmos.color = Color.green; + Gizmos.DrawLine(center, center + Vector3.up * 0.5f); + } + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs.meta b/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs.meta new file mode 100644 index 000000000..70d934783 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 68f10137fe541b44485fa63022e29524 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs new file mode 100644 index 000000000..38ab64240 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs @@ -0,0 +1,325 @@ +using UnityEngine; +using System.Collections.Generic; +using Shapes; + +namespace AibisDream.MiniGame.HuoShan +{ + /// + /// 语言想象系统主管理器 - 协调各模块工作 + /// + [RequireComponent(typeof(CircularViewport))] + public class LanguageImaginationSystem : ImmediateModeShapeDrawer + { + [Header("场设置")] + public float fieldWidth = 50f; + public float fieldHeight = 50f; + public int backgroundNodeCount = 200; + + [Header("圆形视口设置")] + public float viewportRadius = 5f; + + [Header("连线设置")] + public float connectionLineWidth = 0.05f; + public Color backgroundConnectionColor = new Color(1f, 1f, 1f, 0.3f); + public Color sentenceConnectionColor = Color.yellow; + public Color candidateConnectionColor = Color.cyan; + + [Header("Gizmo调试设置")] + public bool showGizmos = true; + public bool showFieldBounds = true; + public bool showNodes = true; + public bool showConnections = true; + public bool showSentenceNodes = true; + public float nodeGizmoSize = 0.2f; + + private BackgroundTextLayer _backgroundLayer; + private CircularViewport _viewport; + private SentenceBuilder _sentenceBuilder; + + private void Start() + { + Initialize(); + } + + private void Initialize() + { + // 初始化圆形视口 + _viewport = GetComponent(); + if (_viewport == null) + { + _viewport = gameObject.AddComponent(); + } + _viewport.viewportRadius = viewportRadius; + + // 初始化背景文字层 + _backgroundLayer = new BackgroundTextLayer( + fieldWidth, + fieldHeight, + backgroundNodeCount, + transform + ); + + // 初始化造句系统 + _sentenceBuilder = new SentenceBuilder(_backgroundLayer, _viewport, this); + } + + private void Update() + { + if (_backgroundLayer != null) + { + _backgroundLayer.Update(Time.deltaTime); + } + } + + public override void DrawShapes(Camera cam) + { + using (Draw.Command(cam)) + { + Draw.ResetAllDrawStates(); + Draw.LineGeometry = LineGeometry.Volumetric3D; + Draw.Thickness = connectionLineWidth; + + // 绘制背景文字之间的连线 + if (_backgroundLayer != null) + { + DrawBackgroundConnections(); + } + + // 绘制句子和候选文字的连线 + if (_sentenceBuilder != null) + { + DrawSentenceConnections(); + } + } + } + + private void DrawBackgroundConnections() + { + var allNodes = _backgroundLayer.GetAllNodes(); + foreach (var node in allNodes) + { + // 只绘制在视口内的连线 + if (!_viewport.IsPositionInViewport(node.Position)) + continue; + + foreach (var connectedNode in node.ConnectedNodes) + { + // 只绘制连接的另一端也在视口内的连线 + if (!_viewport.IsPositionInViewport(connectedNode.Position)) + continue; + + // 跳过已经选定的节点之间的连线(由句子连线处理) + if (node.State == TextNodeState.Selected || connectedNode.State == TextNodeState.Selected) + continue; + if (node.State == TextNodeState.Candidate || connectedNode.State == TextNodeState.Candidate) + continue; + + Vector3 posA = new Vector3(node.Position.x, node.Position.y, 0); + Vector3 posB = new Vector3(connectedNode.Position.x, connectedNode.Position.y, 0); + + // 根据节点亮度调整连线颜色 + float avgBrightness = (node.Brightness + connectedNode.Brightness) * 0.5f; + Color lineColor = backgroundConnectionColor * avgBrightness; + + Draw.Line(posA, posB, connectionLineWidth, lineColor); + } + } + } + + private void DrawSentenceConnections() + { + var sentenceNodes = _sentenceBuilder.GetSentenceNodes(); + + // 绘制句子节点之间的连线(稳定清晰) + for (int i = 0; i < sentenceNodes.Count - 1; i++) + { + var nodeA = sentenceNodes[i]; + var nodeB = sentenceNodes[i + 1]; + + Vector3 posA = new Vector3(nodeA.Position.x, nodeA.Position.y, 0); + Vector3 posB = new Vector3(nodeB.Position.x, nodeB.Position.y, 0); + + Draw.Line(posA, posB, connectionLineWidth * 2f, sentenceConnectionColor); + } + + // 绘制候选文字与选定文字的连线 + var allNodes = _backgroundLayer.GetAllNodes(); + foreach (var node in allNodes) + { + if (node.State == TextNodeState.Candidate) + { + foreach (var connectedNode in node.ConnectedNodes) + { + if (connectedNode.State == TextNodeState.Selected) + { + Vector3 posA = new Vector3(node.Position.x, node.Position.y, 0); + Vector3 posB = new Vector3(connectedNode.Position.x, connectedNode.Position.y, 0); + + // 根据概率调整连线颜色和宽度 + float alpha = node.Probability; + Color lineColor = candidateConnectionColor; + lineColor.a = alpha; + + Draw.Line(posA, posB, connectionLineWidth * (0.5f + alpha * 0.5f), lineColor); + } + } + } + } + } + + /// + /// 开始构建句子(由Yarn指令调用) + /// + public void StartSentence(string sentence, int stuckIndex = -1) + { + if (_sentenceBuilder != null) + { + _sentenceBuilder.StartBuildingSentence(sentence, stuckIndex); + } + } + + /// + /// 停止构建句子 + /// + public void StopSentence() + { + if (_sentenceBuilder != null) + { + _sentenceBuilder.StopBuilding(); + } + } + + private void OnDestroy() + { + if (_backgroundLayer != null) + { + _backgroundLayer.Cleanup(); + } + } + + private void OnDrawGizmos() + { + if (!showGizmos) return; + + // 绘制场边界 + if (showFieldBounds) + { + Gizmos.color = new Color(0.5f, 0.5f, 0.5f, 0.3f); + Vector3 center = transform.position; + Vector3 size = new Vector3(fieldWidth, fieldHeight, 0.1f); + Gizmos.DrawWireCube(center, size); + } + + // 绘制节点和连线 + if (_backgroundLayer != null && Application.isPlaying) + { + var allNodes = _backgroundLayer.GetAllNodes(); + + // 绘制节点 + if (showNodes) + { + foreach (var node in allNodes) + { + Vector3 nodePos = new Vector3(node.Position.x, node.Position.y, 0) + transform.position; + + // 根据状态设置颜色 + Color gizmoColor = GetNodeGizmoColor(node.State); + Gizmos.color = gizmoColor * node.Brightness; + + // 根据状态设置大小 + float size = nodeGizmoSize; + if (node.State == TextNodeState.Selected) + size = nodeGizmoSize * 1.5f; + else if (node.State == TextNodeState.Candidate) + size = nodeGizmoSize * 1.2f; + else if (node.State == TextNodeState.Stuck) + size = nodeGizmoSize * 1.3f; + + Gizmos.DrawSphere(nodePos, size); + + // 绘制文字标签 + #if UNITY_EDITOR + UnityEditor.Handles.Label(nodePos + Vector3.up * 0.5f, node.Text); + #endif + } + } + + // 绘制连线 + if (showConnections) + { + foreach (var node in allNodes) + { + Vector3 nodePos = new Vector3(node.Position.x, node.Position.y, 0) + transform.position; + + foreach (var connectedNode in node.ConnectedNodes) + { + Vector3 connectedPos = new Vector3(connectedNode.Position.x, connectedNode.Position.y, 0) + transform.position; + + // 根据节点状态设置连线颜色 + Color lineColor = GetConnectionGizmoColor(node, connectedNode); + Gizmos.color = lineColor; + + Gizmos.DrawLine(nodePos, connectedPos); + } + } + } + + // 绘制句子节点 + if (showSentenceNodes && _sentenceBuilder != null) + { + var sentenceNodes = _sentenceBuilder.GetSentenceNodes(); + for (int i = 0; i < sentenceNodes.Count; i++) + { + var node = sentenceNodes[i]; + Vector3 nodePos = new Vector3(node.Position.x, node.Position.y, 0) + transform.position; + + // 绘制句子节点高亮 + Gizmos.color = Color.yellow; + Gizmos.DrawWireSphere(nodePos, nodeGizmoSize * 2f); + + // 绘制序号 + #if UNITY_EDITOR + UnityEditor.Handles.Label(nodePos + Vector3.up * 1f, $"[{i}]"); + #endif + + // 绘制句子连线 + if (i < sentenceNodes.Count - 1) + { + var nextNode = sentenceNodes[i + 1]; + Vector3 nextPos = new Vector3(nextNode.Position.x, nextNode.Position.y, 0) + transform.position; + Gizmos.color = Color.yellow; + Gizmos.DrawLine(nodePos, nextPos); + } + } + } + } + } + + private Color GetNodeGizmoColor(TextNodeState state) + { + return state switch + { + TextNodeState.Selected => Color.yellow, + TextNodeState.Candidate => Color.cyan, + TextNodeState.Stuck => Color.red, + _ => Color.white + }; + } + + private Color GetConnectionGizmoColor(TextNode nodeA, TextNode nodeB) + { + // 句子连线 + if (nodeA.State == TextNodeState.Selected && nodeB.State == TextNodeState.Selected) + return Color.yellow; + + // 候选连线 + if ((nodeA.State == TextNodeState.Candidate && nodeB.State == TextNodeState.Selected) || + (nodeA.State == TextNodeState.Selected && nodeB.State == TextNodeState.Candidate)) + return Color.cyan; + + // 背景连线 + return new Color(1f, 1f, 1f, 0.3f); + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs.meta b/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs.meta new file mode 100644 index 000000000..0959e71e6 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bc6c154e0dac2e6469211e12b1f05fce +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs new file mode 100644 index 000000000..6fae24ca1 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs @@ -0,0 +1,55 @@ +using System.Collections; +using Yarn.Unity; +using UnityEngine; + +namespace AibisDream.MiniGame.HuoShan +{ + /// + /// 语言想象系统Yarn指令 + /// + public static class LanguageImaginationYarnCommand + { + private static LanguageImaginationSystem GetSystem() + { + // 尝试从场景中查找LanguageImaginationSystem + LanguageImaginationSystem system = Object.FindObjectOfType(); + if (system == null) + { + Debug.LogError("[LanguageImaginationYarnCommand] 未找到LanguageImaginationSystem组件!请在场景中添加该组件。"); + } + return system; + } + + /// + /// 开始构建句子 + /// + /// 要构建的句子 + /// 卡壳位置(从0开始,-1表示不卡壳) + [YarnCommand("language_imagine")] + public static IEnumerator LanguageImagine(string sentence, int stuckIndex = -1) + { + var system = GetSystem(); + if (system != null) + { + system.StartSentence(sentence, stuckIndex); + + // 等待句子构建完成(这里可以添加更复杂的等待逻辑) + yield return new WaitForSeconds(0.1f); + } + } + + /// + /// 停止构建句子 + /// + [YarnCommand("language_imagine_stop")] + public static void LanguageImagineStop() + { + var system = GetSystem(); + if (system != null) + { + system.StopSentence(); + } + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs.meta b/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs.meta new file mode 100644 index 000000000..8dbc7fa7f --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ce8085db413e67d4c9ddd8a3415ae3cf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md b/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md new file mode 100644 index 000000000..fc883a68b --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md @@ -0,0 +1,96 @@ +# 语言想象功能使用说明 + +## 功能概述 + +这是一个语言想象系统,实现了以下功能: + +1. **背景文字层**:大量文字不断变化字符和明暗,文字间寻找关联形成词语连线 +2. **圆形可视区域**:通过鼠标拖拽移动圆形区域查看不同部分 +3. **造句功能**:根据Yarn指令传入的句子,逐步构建句子 +4. **卡壳功能**:可在指定位置卡壳,显示错误文字,需要点击移除 + +## 文件结构 + +- `TextNode.cs` - 文字节点类,管理单个文字的显示、状态和连接关系 +- `BackgroundTextLayer.cs` - 背景文字层系统,生成和管理背景文字 +- `CircularViewport.cs` - 圆形可视区域,使用Shapes绘制圆形遮罩 +- `SentenceBuilder.cs` - 造句系统,处理句子生成流程 +- `LanguageImaginationSystem.cs` - 主管理器,协调各模块工作 +- `LanguageImaginationYarnCommand.cs` - Yarn指令接口 + +## 使用方法 + +### 1. 场景设置 + +1. 在场景中创建一个GameObject +2. 添加 `LanguageImaginationSystem` 组件 +3. 调整参数: + - **场设置**:fieldWidth, fieldHeight, backgroundNodeCount + - **圆形视口设置**:viewportRadius + - **连线设置**:connectionLineWidth, 各种连线颜色 + +### 2. Yarn指令使用 + +#### 开始构建句子 +``` +<> +``` +- 第一个参数:要构建的句子 +- 第二个参数(可选):卡壳位置(从0开始,-1表示不卡壳)。例如3表示在第4个字(索引3)处卡壳 + +#### 停止构建句子 +``` +<> +``` + +### 3. 功能说明 + +#### 背景文字层 +- 自动生成大量随机文字 +- 文字会随机变化字符和亮度 +- 文字之间会根据距离和概率建立连接关系 +- 连接关系会动态更新 + +#### 圆形可视区域 +- 点击并拖拽圆形区域内的任意位置可以移动视口 +- 只有视口内的文字和连线会被显示 + +#### 造句流程 +1. 在当前可视范围内找到或创建第一个字(如"这") +2. 将该字设置为选定状态,放大并高亮显示 +3. 移动到句子位置 +4. 在选定字周围生成候选文字 +5. 候选文字的概率动态变化,直到目标字概率最高 +6. 目标字成为新的选定字,其他候选恢复随机 +7. 重复直到句子完成 + +#### 卡壳功能 +- 当到达指定的卡壳位置时,会显示错误文字("我是个傻逼") +- 错误文字显示为红色,概率100% +- 点击错误文字可以移除 +- 全部移除后继续构建流程 + +### 4. 视觉表现 + +- **背景文字连线**:半透明白色,根据文字亮度调整 +- **句子连线**:黄色,较粗,稳定清晰 +- **候选文字连线**:青色,根据概率调整透明度和宽度 +- **选定文字**:黄色,放大1.5倍 +- **候选文字**:青色,亮度随概率变化 +- **卡壳文字**:红色,放大1.2倍 + +## 注意事项 + +1. 确保场景中有主摄像机 +2. 需要TextMeshPro支持 +3. 需要DOTween支持(用于动画) +4. 需要Shapes库支持(用于绘制) +5. 建议使用正交摄像机以获得更好的2D效果 + +## 扩展建议 + +1. 可以调整候选文字的数量和范围 +2. 可以自定义卡壳时的错误文字 +3. 可以添加更多视觉效果(如粒子效果) +4. 可以优化性能(如对象池、LOD等) + diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md.meta b/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md.meta new file mode 100644 index 000000000..489023e4c --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1500caf0ff27d574cbbc46a5b6954555 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs new file mode 100644 index 000000000..9b19bbc25 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs @@ -0,0 +1,375 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using DG.Tweening; + +namespace AibisDream.MiniGame.HuoShan +{ + /// + /// 造句系统 - 处理句子生成流程:选定文字、候选文字、概率变化、连线 + /// + public class SentenceBuilder + { + private BackgroundTextLayer _backgroundLayer; + private CircularViewport _viewport; + private List _sentenceNodes; + private string _targetSentence; + private int _currentIndex = 0; + private bool _isBuilding = false; + private int _stuckIndex = -1; // 卡壳位置,-1表示不卡壳 + + // 候选文字相关 + private List _candidateNodes; + private float _probabilityChangeSpeed = 0.5f; + private Coroutine _buildingCoroutine; + private MonoBehaviour _coroutineRunner; + + // 句子连线设置 + private float _sentenceLineSpacing = 1.5f; + private Vector2 _sentenceDirection = Vector2.right; + + public SentenceBuilder(BackgroundTextLayer backgroundLayer, CircularViewport viewport, MonoBehaviour coroutineRunner) + { + _backgroundLayer = backgroundLayer; + _viewport = viewport; + _coroutineRunner = coroutineRunner; + _sentenceNodes = new List(); + _candidateNodes = new List(); + } + + /// + /// 开始构建句子 + /// + public void StartBuildingSentence(string sentence, int stuckIndex = -1) + { + if (_isBuilding) + { + StopBuilding(); + } + + _targetSentence = sentence; + _currentIndex = 0; + _stuckIndex = stuckIndex; + _isBuilding = true; + + // 清理之前的句子节点 + ClearSentence(); + + // 开始构建协程 + _buildingCoroutine = _coroutineRunner.StartCoroutine(BuildingCoroutine()); + } + + private IEnumerator BuildingCoroutine() + { + // 等待一帧确保背景层已初始化 + yield return null; + + while (_currentIndex < _targetSentence.Length && _isBuilding) + { + char targetChar = _targetSentence[_currentIndex]; + + // 检查是否到达卡壳位置 + if (_currentIndex == _stuckIndex) + { + yield return _coroutineRunner.StartCoroutine(HandleStuck()); + continue; + } + + // 在当前可视范围内找到或创建目标文字 + TextNode targetNode = FindOrCreateNodeInViewport(targetChar.ToString()); + + if (targetNode != null) + { + // 设置为选定状态 + SetNodeAsSelected(targetNode, _currentIndex); + _sentenceNodes.Add(targetNode); + + // 移动到句子位置 + yield return MoveNodeToSentencePosition(targetNode, _currentIndex); + + // 如果不是最后一个字,准备下一个字的候选 + if (_currentIndex < _targetSentence.Length - 1) + { + yield return _coroutineRunner.StartCoroutine(PrepareNextCandidate()); + } + + _currentIndex++; + } + + yield return new WaitForSeconds(0.5f); + } + + _isBuilding = false; + } + + private TextNode FindOrCreateNodeInViewport(string text) + { + // 首先尝试在可视范围内找到匹配的文字 + var nodesInViewport = _backgroundLayer.GetNodesInRange(_viewport.ViewportCenter, _viewport.ViewportRadius); + var matchingNode = nodesInViewport.FirstOrDefault(n => n.Text == text && n.State == TextNodeState.Random); + + if (matchingNode != null) + { + return matchingNode; + } + + // 如果找不到,在可视范围内随机选择一个节点并改变其文字 + if (nodesInViewport.Count > 0) + { + var randomNode = nodesInViewport[Random.Range(0, nodesInViewport.Count)]; + randomNode.Text = text; + randomNode.UpdateVisual(); + return randomNode; + } + + return null; + } + + private void SetNodeAsSelected(TextNode node, int index) + { + node.State = TextNodeState.Selected; + node.SentenceIndex = index; + node.Scale = 1.5f; + node.Brightness = 1f; + node.Color = Color.yellow; + node.UpdateVisual(); + + // 放大动画 + node.GameObject.transform.DOScale(1.5f, 0.3f).SetEase(Ease.OutBack); + } + + private IEnumerator MoveNodeToSentencePosition(TextNode node, int index) + { + Vector2 targetPos = GetSentencePosition(index); + + // 使用DOTween移动 + yield return node.GameObject.transform.DOMove( + new Vector3(targetPos.x, targetPos.y, 0), + 0.5f + ).SetEase(Ease.OutQuad).WaitForCompletion(); + + node.Position = targetPos; + } + + private Vector2 GetSentencePosition(int index) + { + // 以视口中心为起点,沿方向排列 + Vector2 startPos = _viewport.ViewportCenter; + Vector2 offset = _sentenceDirection * index * _sentenceLineSpacing; + return startPos + offset; + } + + private IEnumerator PrepareNextCandidate() + { + if (_currentIndex >= _targetSentence.Length - 1) yield break; + + char nextChar = _targetSentence[_currentIndex + 1]; + + // 清除之前的候选 + ClearCandidates(); + + // 在当前选定节点周围找到几个节点作为候选 + TextNode selectedNode = _sentenceNodes[_currentIndex]; + var nearbyNodes = _backgroundLayer.GetNodesInRange(selectedNode.Position, 3f) + .Where(n => n.State == TextNodeState.Random) + .Take(5) + .ToList(); + + // 确保目标字符在候选列表中 + bool hasTargetChar = false; + foreach (var node in nearbyNodes) + { + if (node.Text == nextChar.ToString()) + { + hasTargetChar = true; + break; + } + } + + if (!hasTargetChar && nearbyNodes.Count > 0) + { + nearbyNodes[0].Text = nextChar.ToString(); + nearbyNodes[0].UpdateVisual(); + } + + // 设置候选状态 + _candidateNodes.Clear(); + foreach (var node in nearbyNodes) + { + node.State = TextNodeState.Candidate; + node.Color = Color.cyan; + node.Probability = Random.Range(0f, 0.5f); + node.AddConnection(selectedNode); + selectedNode.AddConnection(node); + node.UpdateVisual(); + _candidateNodes.Add(node); + } + + // 概率变化动画 + yield return _coroutineRunner.StartCoroutine(AnimateCandidateProbabilities(nextChar.ToString())); + } + + private IEnumerator AnimateCandidateProbabilities(string targetText) + { + float duration = 2f; + float elapsed = 0f; + + while (elapsed < duration) + { + elapsed += Time.deltaTime; + float t = elapsed / duration; + + foreach (var node in _candidateNodes) + { + if (node.Text == targetText) + { + // 目标字符概率逐渐增加到1 + node.Probability = Mathf.Lerp(node.Probability, 1f, t * 0.1f); + } + else + { + // 其他字符概率逐渐降低 + node.Probability = Mathf.Lerp(node.Probability, 0f, t * 0.1f); + } + + // 根据概率更新亮度 + node.Brightness = 0.5f + node.Probability * 0.5f; + node.UpdateVisual(); + } + + yield return null; + } + + // 找到概率最高的节点(应该是目标字符) + var selectedCandidate = _candidateNodes.OrderByDescending(n => n.Probability).FirstOrDefault(); + if (selectedCandidate != null && selectedCandidate.Text == targetText) + { + // 清除候选状态,恢复随机 + ClearCandidates(); + selectedCandidate.State = TextNodeState.Random; + } + } + + private IEnumerator HandleStuck() + { + // 生成卡壳的错误文字 + string stuckText = "我是个傻逼"; + + // 在当前位置创建卡壳文字 + List stuckNodes = new List(); + Vector2 currentPos = GetSentencePosition(_currentIndex); + + for (int i = 0; i < stuckText.Length; i++) + { + TextNode stuckNode = FindOrCreateNodeInViewport(stuckText[i].ToString()); + if (stuckNode != null) + { + stuckNode.State = TextNodeState.Stuck; + stuckNode.IsStuck = true; + stuckNode.SentenceIndex = _currentIndex + i; + stuckNode.Color = Color.red; + stuckNode.Probability = 1f; + stuckNode.Scale = 1.2f; + stuckNode.Position = currentPos + Vector2.right * i * _sentenceLineSpacing; + stuckNode.UpdateVisual(); + stuckNodes.Add(stuckNode); + } + } + + // 等待玩家点击移除所有卡壳文字 + while (stuckNodes.Count > 0) + { + yield return null; + + // 检查点击 + if (Input.GetMouseButtonDown(0)) + { + Vector2 mousePos = GetMouseWorldPosition(); + for (int i = stuckNodes.Count - 1; i >= 0; i--) + { + var node = stuckNodes[i]; + float distance = Vector2.Distance(mousePos, node.Position); + if (distance < 1f) // 点击范围 + { + // 移除节点 + node.State = TextNodeState.Random; + node.IsStuck = false; + node.Color = Color.white; + node.UpdateVisual(); + stuckNodes.RemoveAt(i); + + // 销毁GameObject + if (node.GameObject != null) + { + Object.Destroy(node.GameObject); + } + } + } + } + } + + // 卡壳处理完成,继续构建 + } + + private Vector2 GetMouseWorldPosition() + { + Camera cam = Camera.main; + if (cam == null) return Vector2.zero; + + Vector3 mousePos = Input.mousePosition; + mousePos.z = cam.nearClipPlane + 1f; + Vector3 worldPos = cam.ScreenToWorldPoint(mousePos); + return new Vector2(worldPos.x, worldPos.y); + } + + private void ClearCandidates() + { + foreach (var node in _candidateNodes) + { + if (node.State == TextNodeState.Candidate) + { + node.State = TextNodeState.Random; + node.Color = Color.white; + node.Probability = 0f; + node.Brightness = 1f; + node.UpdateVisual(); + } + } + _candidateNodes.Clear(); + } + + private void ClearSentence() + { + foreach (var node in _sentenceNodes) + { + if (node.State == TextNodeState.Selected) + { + node.State = TextNodeState.Random; + node.SentenceIndex = -1; + node.Scale = 1f; + node.Color = Color.white; + node.UpdateVisual(); + } + } + _sentenceNodes.Clear(); + } + + public void StopBuilding() + { + _isBuilding = false; + if (_buildingCoroutine != null) + { + _coroutineRunner.StopCoroutine(_buildingCoroutine); + _buildingCoroutine = null; + } + ClearCandidates(); + } + + public List GetSentenceNodes() + { + return _sentenceNodes; + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs.meta b/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs.meta new file mode 100644 index 000000000..cec804d5c --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fcab091b0b0e39142ae616cc9a548074 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs new file mode 100644 index 000000000..c431deb0a --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs @@ -0,0 +1,75 @@ +using UnityEngine; +using TMPro; +using System.Collections.Generic; + +namespace AibisDream.MiniGame.HuoShan +{ + /// + /// 文字节点类 - 管理单个文字的显示、状态和连接关系 + /// + public class TextNode + { + public Vector2 Position { get; set; } + public string Text { get; set; } + public TextNodeState State { get; set; } + public float Brightness { get; set; } = 1f; + public float Scale { get; set; } = 1f; + public Color Color { get; set; } = Color.white; + public float Probability { get; set; } = 0f; // 候选文字的概率 + + // 连接关系 + public List ConnectedNodes { get; private set; } + + // UI组件引用 + public TextMeshPro TextComponent { get; set; } + public GameObject GameObject { get; set; } + + // 句子相关 + public int SentenceIndex { get; set; } = -1; // 在句子中的索引,-1表示不在句子中 + public bool IsStuck { get; set; } = false; // 是否处于卡壳状态 + + public TextNode(Vector2 position, string text) + { + Position = position; + Text = text; + State = TextNodeState.Random; + ConnectedNodes = new List(); + } + + public void AddConnection(TextNode node) + { + if (!ConnectedNodes.Contains(node)) + { + ConnectedNodes.Add(node); + } + } + + public void RemoveConnection(TextNode node) + { + ConnectedNodes.Remove(node); + } + + public void UpdateVisual() + { + if (TextComponent != null) + { + TextComponent.text = Text; + TextComponent.color = Color * Brightness; + TextComponent.transform.localScale = Vector3.one * Scale; + TextComponent.transform.position = new Vector3(Position.x, Position.y, 0); + } + } + } + + /// + /// 文字节点状态 + /// + public enum TextNodeState + { + Random, // 随机变化状态 + Selected, // 已选定的文字(句子中的字) + Candidate, // 候选文字 + Stuck // 卡壳状态 + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs.meta b/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs.meta new file mode 100644 index 000000000..4f69f4ade --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 27e691dacc3b63545924959f964de0bb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: From 8cf629b1c6badded8a87ab04a71a59568cb577eb Mon Sep 17 00:00:00 2001 From: bottlefish <781230111@qq.com> Date: Wed, 12 Nov 2025 19:46:16 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E8=AF=AD=E8=A8=80=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E5=9F=BA=E7=A1=80=E8=BF=AD=E4=BB=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LiberationSans SDF.asset | 4 +- Assets/Render/Renderer2Dtest.asset | 22 +- Assets/Scenes/languageTest.unity | 496 +++++ Assets/Scenes/languageTest.unity.meta | 7 + .../Scripts/Framework/OtherKit/CameraKit.cs | 4 +- .../MiniGame/HuoShan/Emo/Untitled-2.txt | 1020 +++++++++ .../MiniGame/HuoShan/Emo/Untitled-2.txt.meta | 7 + Assets/Scripts/MiniGame/HuoShan/Emo/尝试2.txt | 1871 +++++++++++++++++ .../MiniGame/HuoShan/Emo/尝试2.txt.meta | 7 + Assets/Scripts/MiniGame/HuoShan/Language.meta | 8 + .../HuoShan/Language/CandidateParticle.cs | 203 ++ .../CandidateParticle.cs.meta} | 2 +- .../HuoShan/Language/ConnectionRenderer.cs | 210 ++ .../ConnectionRenderer.cs.meta} | 2 +- .../HuoShan/Language/EffectPropagation.cs | 154 ++ .../EffectPropagation.cs.meta} | 2 +- .../HuoShan/Language/FloatingTextParticle.cs | 42 + .../FloatingTextParticle.cs.meta} | 2 +- .../Language/LanguageParticleManager.cs | 795 +++++++ .../Language/LanguageParticleManager.cs.meta | 11 + .../LanguageParticleSystem_Summary.md | 132 ++ .../LanguageParticleSystem_Summary.md.meta | 7 + .../MiniGame/HuoShan/Language/QuickStart.md | 150 ++ .../HuoShan/Language/QuickStart.md.meta | 7 + .../MiniGame/HuoShan/Language/README.md | 212 ++ .../{NewExpress => Language}/README.md.meta | 2 +- .../MiniGame/HuoShan/Language/TextParticle.cs | 238 +++ .../HuoShan/Language/TextParticle.cs.meta | 11 + .../HuoShan/Language/WaveformPoint.cs | 210 ++ .../HuoShan/Language/WaveformPoint.cs.meta | 11 + .../HuoShan/Language/WaveformRenderer.cs | 266 +++ .../HuoShan/Language/WaveformRenderer.cs.meta | 11 + .../HuoShan/NewExpress/BackgroundTextLayer.cs | 195 -- .../HuoShan/NewExpress/CircularViewport.cs | 155 -- .../NewExpress/LanguageImaginationSystem.cs | 325 --- .../LanguageImaginationYarnCommand.cs | 55 - .../MiniGame/HuoShan/NewExpress/README.md | 96 - .../HuoShan/NewExpress/SentenceBuilder.cs | 375 ---- .../NewExpress/SentenceBuilder.cs.meta | 11 - .../MiniGame/HuoShan/NewExpress/TextNode.cs | 75 - .../HuoShan/NewExpress/TextNode.cs.meta | 11 - 41 files changed, 6105 insertions(+), 1319 deletions(-) create mode 100644 Assets/Scenes/languageTest.unity create mode 100644 Assets/Scenes/languageTest.unity.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/Emo/Untitled-2.txt create mode 100644 Assets/Scripts/MiniGame/HuoShan/Emo/Untitled-2.txt.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/Emo/尝试2.txt create mode 100644 Assets/Scripts/MiniGame/HuoShan/Emo/尝试2.txt.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs rename Assets/Scripts/MiniGame/HuoShan/{NewExpress/LanguageImaginationSystem.cs.meta => Language/CandidateParticle.cs.meta} (83%) create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs rename Assets/Scripts/MiniGame/HuoShan/{NewExpress/BackgroundTextLayer.cs.meta => Language/ConnectionRenderer.cs.meta} (83%) create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs rename Assets/Scripts/MiniGame/HuoShan/{NewExpress/LanguageImaginationYarnCommand.cs.meta => Language/EffectPropagation.cs.meta} (83%) create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs rename Assets/Scripts/MiniGame/HuoShan/{NewExpress/CircularViewport.cs.meta => Language/FloatingTextParticle.cs.meta} (83%) create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/QuickStart.md create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/QuickStart.md.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/README.md rename Assets/Scripts/MiniGame/HuoShan/{NewExpress => Language}/README.md.meta (75%) create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/WaveformPoint.cs create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/WaveformPoint.cs.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs.meta delete mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md delete mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs.meta delete mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs.meta diff --git a/Assets/Plugins/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset b/Assets/Plugins/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset index 40d3e1120..51f09fa9f 100644 --- a/Assets/Plugins/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset +++ b/Assets/Plugins/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c3ff50e3133d989180b187748ffc67903f1fede099a5b85b4fcbd8cb6e8be958 -size 2256862 +oid sha256:8d6c87f520f1c076c6a23d015fbfacbef24af6f0a6312c00b1a7e2ff34f40c27 +size 2264562 diff --git a/Assets/Render/Renderer2Dtest.asset b/Assets/Render/Renderer2Dtest.asset index 197d64d62..fdae0d5da 100644 --- a/Assets/Render/Renderer2Dtest.asset +++ b/Assets/Render/Renderer2Dtest.asset @@ -463,19 +463,15 @@ MonoBehaviour: m_PostInfinity: 2 m_RotationOrder: 4 _filter: - - 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 + - 0.007228916 + - 0.043749984 + - 0.12409639 + - 0.20444278 + - 0.24096388 + - 0.20444278 + - 0.12409639 + - 0.043749984 + - 0.007228916 --- !u!114 &-6086986437317696584 MonoBehaviour: m_ObjectHideFlags: 3 diff --git a/Assets/Scenes/languageTest.unity b/Assets/Scenes/languageTest.unity new file mode 100644 index 000000000..b59dddfd8 --- /dev/null +++ b/Assets/Scenes/languageTest.unity @@ -0,0 +1,496 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &125585505 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 125585506} + - component: {fileID: 125585507} + m_Layer: 0 + m_Name: LanguageParticleSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &125585506 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 125585505} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -2.8477545, y: -5.088608, z: -8.612933} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &125585507 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 125585505} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 79af040068968934c9a7d092267034f6, type: 3} + m_Name: + m_EditorClassIdentifier: + worldCanvas: {fileID: 1665911935} + canvasSize: 10 + chineseFontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + floatingParticlePrefab: {fileID: 0} + candidateParticlePrefab: {fileID: 0} + floatingCount: 100 + candidateCount: 50 + redParticleCount: 8 + connectionDistance: 2 + textMargin: 1 + targetSentence: "\u522B\u8FC7\u6765\u6211\u611F\u89C9\u5BB3\u6015" + waveformAmplitude: 0.3 + interactionRadius: 0.5 +--- !u!1 &786157861 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 786157866} + - component: {fileID: 786157865} + - component: {fileID: 786157864} + - component: {fileID: 786157862} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &786157862 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 786157861} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_Version: 2 + m_TaaSettings: + quality: 3 + frameInfluence: 0.1 + jitterScale: 1 + mipBias: 0 + varianceClampScale: 0.9 + contrastAdaptiveSharpening: 0 +--- !u!81 &786157864 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 786157861} + m_Enabled: 1 +--- !u!20 &786157865 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 786157861} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &786157866 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 786157861} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10.72} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1665911932 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1665911936} + - component: {fileID: 1665911935} + - component: {fileID: 1665911934} + - component: {fileID: 1665911933} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1665911933 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1665911932} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &1665911934 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1665911932} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 1 +--- !u!223 &1665911935 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1665911932} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 2 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &1665911936 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1665911932} + 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: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 10, y: 10} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &1764870496 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1764870499} + - component: {fileID: 1764870498} + - component: {fileID: 1764870497} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1764870497 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1764870496} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1764870498 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1764870496} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1764870499 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1764870496} + serializedVersion: 2 + 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: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 1665911936} + - {fileID: 786157866} + - {fileID: 1764870499} + - {fileID: 125585506} diff --git a/Assets/Scenes/languageTest.unity.meta b/Assets/Scenes/languageTest.unity.meta new file mode 100644 index 000000000..e356c7ee0 --- /dev/null +++ b/Assets/Scenes/languageTest.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a10c0994c14362743ab6f65c6382410d +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Framework/OtherKit/CameraKit.cs b/Assets/Scripts/Framework/OtherKit/CameraKit.cs index b3f2635a1..c5b500772 100644 --- a/Assets/Scripts/Framework/OtherKit/CameraKit.cs +++ b/Assets/Scripts/Framework/OtherKit/CameraKit.cs @@ -419,6 +419,8 @@ namespace AibisDream.Framework BreakCamera, DreamCamera, Subway, - SubwayTV + SubwayTV, + Language, + LanguageDeep } } \ No newline at end of file diff --git a/Assets/Scripts/MiniGame/HuoShan/Emo/Untitled-2.txt b/Assets/Scripts/MiniGame/HuoShan/Emo/Untitled-2.txt new file mode 100644 index 000000000..a9b058f6a --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Emo/Untitled-2.txt @@ -0,0 +1,1020 @@ +// 粒子类 +class Particle { + constructor(x, y, targetX, targetY) { + this.x = x; + this.y = y; + this.targetX = targetX; + this.targetY = targetY; + this.life = 1.0; + this.speed = random(0.02, 0.05); + this.size = random(2, 4); + this.alpha = random(150, 255); + } + + update() { + this.x = lerp(this.x, this.targetX, this.speed); + this.y = lerp(this.y, this.targetY, this.speed); + + let dist = distance(this.x, this.y, this.targetX, this.targetY); + if (dist < 5) { + this.life -= 0.05; + } + } + + display() { + push(); + noStroke(); + fill(100, 200, 255, this.alpha * this.life); + circle(this.x, this.y, this.size); + pop(); + } + + isDead() { + return this.life <= 0; + } +} + +function distance(x1, y1, x2, y2) { + return sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1)); +} + +// 文字对象类 +class FloatingText { + constructor(x, y, radius) { + this.centerX = x; + this.centerY = y; + this.maxRadius = radius; + + let angle = random(TWO_PI); + let r = random(this.maxRadius * 0.9); + this.x = this.centerX + cos(angle) * r; + this.y = this.centerY + sin(angle) * r; + + this.targetX = this.x; + this.targetY = this.y; + + this.speedX = random(-0.3, 0.3); + this.speedY = random(-0.3, 0.3); + + this.noiseOffsetX = random(1000); + this.noiseOffsetY = random(1000); + + this.updateText(); + + this.baseSize = random(20, 32); + this.size = this.baseSize; + this.targetSize = this.baseSize; + + this.baseAlpha = random(50, 150); + this.alpha = this.baseAlpha; + this.targetAlpha = this.baseAlpha; + + this.changeTimer = random(1, 2); + this.changeCounter = 0; + + // 造句相关 + this.isCandidate = false; + this.isSelected = false; + this.isFinal = false; + this.isEliminated = false; + + // 概率相关 + this.probability = 0; + this.targetProbability = 0; + + // 候选字变化 + this.candidateChars = []; + this.candidateIndex = 0; + this.candidateChangeTimer = 0; + + // 抖动效果 + this.shakeAmount = 0; + } + + updateText() { + const chars = [ + '梦', '想', '希', '望', '光', '影', '星', '月', '云', '风', + '诗', '歌', '舞', '画', '音', '色', '情', '爱', '心', '灵', + '天', '地', '人', '和', '美', '真', '善', '雅', '韵', '意', + 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', + '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', + ]; + + let numChars = random() > 0.6 ? 2 : 1; + this.text = ''; + for (let i = 0; i < numChars; i++) { + this.text += random(chars); + } + } + + setCandidate(candidateChars, initialProbability) { + this.isCandidate = true; + this.candidateChars = candidateChars; + this.candidateIndex = 0; + this.text = candidateChars[0]; + this.candidateChangeTimer = 0; + this.probability = initialProbability; + this.targetProbability = initialProbability; + + // 根据初始概率设置大小 + this.updateSizeByProbability(); + this.shakeAmount = 3; // 不确定时抖动 + } + + updateSizeByProbability() { + // 概率越高,字越大 + let sizeMultiplier = map(this.targetProbability, 0, 100, 1.2, 2.0); + this.targetSize = this.baseSize * sizeMultiplier; + this.targetAlpha = map(this.targetProbability, 0, 100, 150, 255); + } + + setProbability(prob) { + this.targetProbability = prob; + this.updateSizeByProbability(); + + // 概率高的时候抖动减少 + this.shakeAmount = map(prob, 0, 100, 5, 0); + } + + eliminate() { + this.isEliminated = true; + this.targetAlpha = 0; + this.targetSize = this.baseSize * 0.5; + } + + setSelected(targetX, targetY, isFirst) { + this.isCandidate = false; + this.isSelected = true; + this.shakeAmount = 0; + + let dx = targetX - this.x; + let dy = targetY - this.y; + let maxMove = 40; + + if (abs(dx) > maxMove || abs(dy) > maxMove) { + let angle = atan2(dy, dx); + this.targetX = this.x + cos(angle) * maxMove; + this.targetY = this.y + sin(angle) * maxMove; + } else { + this.targetX = targetX; + this.targetY = targetY; + } + + if (isFirst) { + this.targetSize = 55; + this.targetAlpha = 255; + } else { + this.targetSize = 42; + this.targetAlpha = 255; + } + } + + cancelCandidate() { + this.isCandidate = false; + this.isEliminated = false; + this.probability = 0; + this.targetProbability = 0; + this.targetSize = this.baseSize; + this.targetAlpha = this.baseAlpha; + this.candidateChars = []; + this.shakeAmount = 0; + this.updateText(); + } + + finalize() { + this.isFinal = true; + this.shakeAmount = 0; + } + + reset() { + this.isCandidate = false; + this.isSelected = false; + this.isFinal = false; + this.isEliminated = false; + this.probability = 0; + this.targetProbability = 0; + this.targetSize = this.baseSize; + this.targetAlpha = this.baseAlpha; + this.size = this.baseSize; + this.alpha = this.baseAlpha; + this.candidateChars = []; + this.shakeAmount = 0; + this.updateText(); + } + + update() { + // 候选字缓慢变化 + if (this.isCandidate && this.candidateChars.length > 1 && !this.isEliminated) { + this.candidateChangeTimer++; + if (this.candidateChangeTimer >= 12) { + this.candidateIndex = (this.candidateIndex + 1) % this.candidateChars.length; + this.text = this.candidateChars[this.candidateIndex]; + this.candidateChangeTimer = 0; + } + } + + // 概率平滑过渡 + this.probability = lerp(this.probability, this.targetProbability, 0.1); + + if (this.isSelected || this.isCandidate) { + this.x = lerp(this.x, this.targetX, 0.08); + this.y = lerp(this.y, this.targetY, 0.08); + this.size = lerp(this.size, this.targetSize, 0.1); + this.alpha = lerp(this.alpha, this.targetAlpha, 0.1); + } else { + let noiseX = noise(this.noiseOffsetX) * 2 - 1; + let noiseY = noise(this.noiseOffsetY) * 2 - 1; + + this.x += noiseX * 0.5 + this.speedX; + this.y += noiseY * 0.5 + this.speedY; + + this.noiseOffsetX += 0.01; + this.noiseOffsetY += 0.01; + + let dx = this.x - this.centerX; + let dy = this.y - this.centerY; + let dist = sqrt(dx * dx + dy * dy); + + if (dist > this.maxRadius) { + let angle = atan2(dy, dx); + this.x = this.centerX + cos(angle) * this.maxRadius; + this.y = this.centerY + sin(angle) * this.maxRadius; + this.speedX *= -0.8; + this.speedY *= -0.8; + } + + this.changeCounter++; + if (this.changeCounter >= this.changeTimer) { + this.updateText(); + this.changeCounter = 0; + this.changeTimer = random(5, 10); + } + } + } + + display() { + push(); + + // 计算抖动偏移 + let shakeX = random(-this.shakeAmount, this.shakeAmount); + let shakeY = random(-this.shakeAmount, this.shakeAmount); + + // 根据概率显示彩色光晕 + if (this.isCandidate && !this.isEliminated) { + let hue = map(this.probability, 0, 100, 200, 0); // 蓝色到红色 + let glowSize = map(this.probability, 0, 100, 20, 50); + + noStroke(); + fill(hue, 200, 255, 30); + circle(this.x + shakeX, this.y + shakeY, this.size + glowSize); + + // 边框 + stroke(hue, 200, 255, this.alpha * 0.5); + strokeWeight(2); + noFill(); + circle(this.x + shakeX, this.y + shakeY, this.size + 15); + } + + // 显示文字 + fill(255, this.alpha); + noStroke(); + textAlign(CENTER, CENTER); + textSize(this.size); + text(this.text, this.x + shakeX, this.y + shakeY); + + // 显示概率 + if (this.isCandidate && !this.isEliminated && this.probability > 0) { + textSize(12); + fill(255, 200); + text(int(this.probability) + '%', this.x + shakeX, this.y + shakeY + this.size * 0.6); + } + + pop(); + } +} + +let floatingTexts = []; +let numTexts = 60; +let circleRadius = 280; + +// 造句相关 +let targetSentence = "我想要被看到"; +let sentenceProgress = 0; +let selectedTexts = []; +let candidateTexts = []; +let sentenceStarted = false; +let sentenceComplete = false; + +// 粒子系统 +let particles = []; + +// 预测状态机 +let predictionState = 'idle'; // idle, round1, round2, round3, confirming +let stateTimer = 0; + +function setup() { + createCanvas(windowWidth, windowHeight); + + // 自动创建词云 + for (let i = 0; i < numTexts; i++) { + floatingTexts.push(new FloatingText(width / 2, height / 2, circleRadius)); + } +} + +function draw() { + background(0); + + // 更新和显示所有文字 + for (let text of floatingTexts) { + text.update(); + text.display(); + } + + // 更新和显示粒子 + for (let i = particles.length - 1; i >= 0; i--) { + particles[i].update(); + particles[i].display(); + if (particles[i].isDead()) { + particles.splice(i, 1); + } + } + + // 绘制已确定字符的连线 + if (selectedTexts.length > 1) { + stroke(255, 180); + strokeWeight(2); + for (let i = 0; i < selectedTexts.length - 1; i++) { + let current = selectedTexts[i]; + let next = selectedTexts[i + 1]; + if (next.isFinal) { + line(current.x, current.y, next.x, next.y); + } + } + } + + // 发射粒子(在预测阶段) + if ((predictionState === 'round1' || predictionState === 'round2' || predictionState === 'round3') + && selectedTexts.length > 0 && frameCount % 3 === 0) { + let lastSelected = selectedTexts[selectedTexts.length - 1]; + + for (let candidate of candidateTexts) { + if (!candidate.text.isEliminated) { + // 粒子密度根据概率 + let particleCount = map(candidate.text.probability, 0, 100, 0.5, 3); + if (random() < particleCount / 3) { + particles.push(new Particle( + lastSelected.x, + lastSelected.y, + candidate.text.x, + candidate.text.y + )); + } + } + } + } + + // 显示状态提示 + if (sentenceStarted && !sentenceComplete) { + displayStateHint(); + } + + // 预测过程 + if (sentenceStarted && sentenceProgress < targetSentence.length) { + handlePrediction(); + } +} + +function displayStateHint() { + push(); + textAlign(LEFT, TOP); + textSize(14); + fill(150, 200, 255, 200); + noStroke(); + + let hint = ''; + switch(predictionState) { + case 'round1': + hint = '正在分析可能性...'; + break; + case 'round2': + hint = '匹配语法结构...'; + break; + case 'round3': + hint = '计算最终概率...'; + break; + case 'confirming': + hint = '确认结果中...'; + break; + } + + if (hint) { + text(hint, 30, 30); + } + pop(); +} + +function handlePrediction() { + stateTimer++; + + switch(predictionState) { + case 'idle': + startPrediction(); + break; + + case 'round1': + // 第一轮:6-7个候选,概率20-40%(持续0.8秒) + if (stateTimer >= 48) { + eliminateRound1(); + predictionState = 'round2'; + stateTimer = 0; + } + break; + + case 'round2': + // 第二轮:3-4个候选,概率40-60%(持续0.7秒) + if (stateTimer >= 42) { + eliminateRound2(); + predictionState = 'round3'; + stateTimer = 0; + } + break; + + case 'round3': + // 第三轮:2个候选竞争,概率60-80%(持续1秒) + if (stateTimer >= 60) { + predictionState = 'confirming'; + stateTimer = 0; + confirmPrediction(); + } + break; + + case 'confirming': + // 确认阶段:正确答案概率飙升到95%+(持续0.5秒) + if (stateTimer >= 30) { + finalizePrediction(); + predictionState = 'idle'; + stateTimer = 0; + sentenceProgress++; + + if (sentenceProgress >= targetSentence.length) { + sentenceComplete = true; + setTimeout(() => { + resetSentence(); + }, 1500); + } + } + break; + } +} + +function startPrediction() { + let correctChar = targetSentence[sentenceProgress]; + + // 如果是第一个字,直接显示 + if (sentenceProgress === 0) { + let availableTexts = floatingTexts.filter(t => !t.isSelected); + let selectedText = random(availableTexts); + + let startX = width / 2 - (targetSentence.length * 45) / 2; + selectedText.text = correctChar; + selectedText.setSelected(startX, height / 2, true); + selectedText.finalize(); + selectedTexts.push(selectedText); + + sentenceProgress++; + predictionState = 'idle'; + stateTimer = 0; + return; + } + + // 生成候选字(6-7个) + let candidates = [correctChar]; + const possibleChars = ['要', '爱', '见', '到', '你', '他', '她', '们', '的', '了', '吗', '呢', '想', '看', '被', '着', '给', '和', '在']; + + let numCandidates = int(random(6, 8)); + while (candidates.length < numCandidates) { + let distractor = random(possibleChars); + if (!candidates.includes(distractor)) { + candidates.push(distractor); + } + } + + // 找到可用的文字对象 + candidateTexts = []; + let availableTexts = floatingTexts.filter(t => !t.isSelected && !t.isCandidate); + + for (let i = 0; i < candidates.length && i < availableTexts.length; i++) { + let text = availableTexts[i]; + let charVariations = [candidates[i]]; + + // 添加变化字符 + for (let j = 0; j < 2; j++) { + let variation = random(possibleChars); + if (!charVariations.includes(variation)) { + charVariations.push(variation); + } + } + charVariations.push(candidates[i]); + + // 初始概率随机分配 + let initialProb = random(15, 35); + text.setCandidate(charVariations, initialProb); + + candidateTexts.push({ + text: text, + correctChar: candidates[i], + isCorrect: candidates[i] === correctChar + }); + } + + predictionState = 'round1'; + stateTimer = 0; +} + +function eliminateRound1() { + // 淘汰概率最低的3个 + candidateTexts.sort((a, b) => { + if (a.isCorrect) return 1; // 确保正确答案不被淘汰 + if (b.isCorrect) return -1; + return a.text.probability - b.text.probability; + }); + + let toEliminate = min(3, candidateTexts.length - 3); + for (let i = 0; i < toEliminate; i++) { + candidateTexts[i].text.eliminate(); + } + + // 剩余候选概率上升到40-60% + for (let i = toEliminate; i < candidateTexts.length; i++) { + let newProb = random(40, 60); + if (candidateTexts[i].isCorrect) { + newProb = random(50, 65); // 正确答案稍高 + } + candidateTexts[i].text.setProbability(newProb); + } +} + +function eliminateRound2() { + // 移除已淘汰的 + candidateTexts = candidateTexts.filter(c => !c.text.isEliminated); + + // 再淘汰1-2个 + candidateTexts.sort((a, b) => { + if (a.isCorrect) return 1; + if (b.isCorrect) return -1; + return a.text.probability - b.text.probability; + }); + + let toEliminate = min(candidateTexts.length - 2, 2); + for (let i = 0; i < toEliminate; i++) { + candidateTexts[i].text.eliminate(); + } + + // 剩余2个候选概率上升到60-80% + for (let i = toEliminate; i < candidateTexts.length; i++) { + let newProb = random(60, 75); + if (candidateTexts[i].isCorrect) { + newProb = random(70, 82); // 正确答案更高 + } + candidateTexts[i].text.setProbability(newProb); + } +} + +function confirmPrediction() { + candidateTexts = candidateTexts.filter(c => !c.text.isEliminated); + + // 正确答案概率飙升到95%+ + for (let candidate of candidateTexts) { + if (candidate.isCorrect) { + candidate.text.setProbability(random(95, 99)); + } else { + candidate.text.setProbability(random(5, 15)); + candidate.text.eliminate(); + } + } +} + +function finalizePrediction() { + let correctText = null; + + for (let candidate of candidateTexts) { + if (candidate.isCorrect) { + correctText = candidate.text; + } else { + candidate.text.cancelCandidate(); + } + } + + if (correctText) { + let startX = width / 2 - (targetSentence.length * 45) / 2; + let targetX = startX + sentenceProgress * 45; + let targetY = height / 2; + + correctText.setSelected(targetX, targetY, false); + + setTimeout(() => { + correctText.finalize(); + }, 300); + + selectedTexts.push(correctText); + } + + candidateTexts = []; +} + +function resetSentence() { + sentenceStarted = false; + sentenceComplete = false; + sentenceProgress = 0; + predictionState = 'idle'; + stateTimer = 0; + particles = []; + + for (let text of selectedTexts) { + text.reset(); + } + selectedTexts = []; + candidateTexts = []; +} + +function windowResized() { + resizeCanvas(windowWidth, windowHeight); + for (let text of floatingTexts) { + text.centerX = width / 2; + text.centerY = height / 2; + } +} + +function mousePressed() { + if (!sentenceStarted && !sentenceComplete) { + sentenceStarted = true; + predictionState = 'idle'; + stateTimer = 0; + } +} +能把这个的背景变成 +// 文字粒子类 +class TextParticle { + constructor(x, y) { + this.x = x; + this.y = y; + this.vx = random(-0.5, 0.5); + this.vy = random(-0.5, 0.5); + this.char = this.randomChar(); + this.alpha = random(40, 180); + this.baseAlpha = this.alpha; + this.size = random(25, 35); + this.changeTimer = random(10, 30); + this.connections = []; + this.connectionTimer = 0; + this.isConnected = false; + this.attractionTimer = 0; + } + + randomChar() { + const chars = '的一是在不了有和人这中大为上个国我以要他时来用们生到作地于出就分对成会可主发年动同工也能下过子说产种面而方后多定行学法所民得经十三之进着等部度家电力里如水化高自二理起小物现实加量都两体制机当使点从业本去把性好应开它合还因由其些然前外天政四日那社义事平形相全表间样与关各重新线内数正心反你明看原又么利比或但质气第向道命此变条只没结解问意建月公无系军很情者最立代想已通并提直题党程展五果料象员革位入常文总次品式活设及管特件长求老头基资边流路级少图山统接知较将组见计别她手角期根论运农指几九区强放决西被干做必战先回则任取据处队南给色光门即保治北造百规热领七海口东导器压志世金增争济阶油思术极交受联什认六共权收证改清己美再采转更单风切打白教速花带安场身车例真务具万每目至达走积示议声报斗完类八离华名确才科张信马节话米整空元况今集温传土许步群广石记需段研界拉林律叫且究观越织装影算低持音众书布复容儿须际商非验连断深难近矿千周委素技备半办青省列习响约支般史感劳便团往酸历市克何除消构府称太准精值号率族维划选标写存候毛亲快效斯院查江型眼王按格养易置派层片始却专状育厂京识适属圆包火住调满县局照参红细引听该铁价严'; + return chars[floor(random(chars.length))]; + } + + update(offsetX, offsetY) { + this.x += this.vx; + this.y += this.vy; + + // 轻微漂浮 + this.vx += random(-0.1, 0.1); + this.vy += random(-0.1, 0.1); + + // 限制速度 + this.vx = constrain(this.vx, -1, 1); + this.vy = constrain(this.vy, -1, 1); + + // 边界处理 + const boundary = 800; + if (this.x < -boundary) this.x = -boundary; + if (this.x > boundary) this.x = boundary; + if (this.y < -boundary) this.y = -boundary; + if (this.y > boundary) this.y = boundary; + + // 只有在没有连接时才变换文字 + if (!this.isConnected) { + this.changeTimer--; + if (this.changeTimer <= 0) { + this.char = this.randomChar(); + this.changeTimer = random(2, 4); + } + } + + // 更新吸引计时器 + if (this.attractionTimer > 0) { + this.attractionTimer--; + } + } + + display(offsetX, offsetY) { + push(); + + // 如果有连接,显示更明显:放大 + let displaySize = this.size; + if (this.isConnected) { + displaySize = this.size * 1.3; + } + + // 绘制文字 + fill(255, this.alpha); + noStroke(); + textSize(displaySize); + textAlign(CENTER, CENTER); + text(this.char, this.x + offsetX, this.y + offsetY); + pop(); + } + + // 计算到其他粒子的距离 + distTo(other) { + return dist(this.x, this.y, other.x, other.y); + } + + // 检查粒子是否在遮罩范围内(考虑offset) + isInMask(offsetX, offsetY, centerX, centerY, radius) { + let screenX = this.x + offsetX; + let screenY = this.y + offsetY; + let d = dist(screenX, screenY, centerX, centerY); + return d < radius; + } +} + +// ========== 文字密度调节区域 ========== +const PARTICLE_COUNT = 250; +// ===================================== + +// ========== 连线粗细调节区域 ========== +const LINE_THICKNESS = 2.5; +// ===================================== + +// 全局变量 +let particles = []; +let offsetX = 0, offsetY = 0; +let lastMouseX = 0, lastMouseY = 0; +let isDragging = false; +let maskRadius = 250; +let phraseGroups = []; + +// 有意义的词组和短句(2-4字,像潜意识的想法) +const meaningfulPhrases = [ + '我想', '可以', '不行', '为什么', + '去哪', '做梦', '忘记', '记得', + '爱你', '讨厌', '喜欢', '害怕', + '自由', '困住', '离开', '回来', + '明天', '昨天', '现在', '以后', + '真的', '假的', '也许', '一定', + '孤独', '热闹', '安静', '吵闹', + '快乐', '悲伤', '愤怒', '平静', + '梦想', '现实', '理想', '幻想', + '逃避', '面对', '接受', '拒绝', + '开始', '结束', '继续', '放弃', + '找到', '失去', '得到', '放下', + '相信', '怀疑', '确定', '迷茫', + '成长', '退缩', '前进', '后退', + '温暖', '冷漠', '善良', '残忍', + '希望', '绝望', '勇气', '懦弱', + '坚持', '动摇', '改变', '守护', + '理解', '误解', '清楚', '混乱', + '简单', '复杂', '容易', '困难', + '靠近', '远离', '拥抱', '推开', + '说谎', '诚实', '隐藏', '坦白', + '醒来', '睡去', '清醒', '迷糊', + '选择', '犹豫', '决定', '后悔', + '珍惜', '浪费', '把握', '错过', + '等待', '追逐', '寻找', '遇见', + '重要', '无聊', '有趣', '平凡', + '特别', '普通', '独特', '相同', + '永远', '瞬间', '长久', '短暂', + '完整', '破碎', '圆满', '遗憾', + '美好', '糟糕', '幸福', '痛苦', + '想起', '遗忘', '回忆', '未来', + '过去', '此刻', '那时', '现在', + '或许', '肯定', '否定', '承认', + '否认', '相遇', '别离', '重逢', + '陌生', '熟悉', '新鲜', '厌倦', + '期待', '失望', '满足', '渴望', + '需要', '多余', '必须', '随意', + '认真', '敷衍', '真心', '假意', + '明白', '糊涂', '聪明', '愚蠢', + '清醒', '沉醉', '冷静', '疯狂' +]; + +function setup() { + createCanvas(800, 600); + textFont('Arial'); + + // 创建粒子 + for (let i = 0; i < PARTICLE_COUNT; i++) { + particles.push(new TextParticle( + random(-600, 600), + random(-600, 600) + )); + } +} + +function draw() { + background(20, 25, 30); + + // 更新粒子 + for (let p of particles) { + p.update(offsetX, offsetY); + } + + // 建立和断开连接 + updateConnections(); + + // 应用轻微的吸引力 + applyConnectionForces(); + + // 开始圆形遮罩 + push(); + drawingContext.save(); + drawingContext.beginPath(); + drawingContext.arc(width / 2, height / 2, maskRadius, 0, TWO_PI); + drawingContext.clip(); + + // 绘制连接线 + stroke(120, 180, 255, 180); + strokeWeight(LINE_THICKNESS); + for (let group of phraseGroups) { + for (let i = 0; i < group.particles.length - 1; i++) { + let p1 = group.particles[i]; + let p2 = group.particles[i + 1]; + line( + p1.x + offsetX, p1.y + offsetY, + p2.x + offsetX, p2.y + offsetY + ); + } + } + + // 绘制粒子 + for (let p of particles) { + p.display(offsetX, offsetY); + } + + drawingContext.restore(); + pop(); + + // 绘制圆形边界 + push(); + noFill(); + stroke(100, 150, 255, 150); + strokeWeight(2); + circle(width / 2, height / 2, maskRadius * 2); + pop(); + + // 绘制提示信息 + fill(255, 100); + noStroke(); + textSize(14); + textAlign(LEFT); + text('拖拽鼠标查看不同区域', 10, 20); + text('当前文字数量: ' + PARTICLE_COUNT, 10, 40); +} + +// 更新连接关系 +function updateConnections() { + // 更新现有短语组的计时器 + for (let i = phraseGroups.length - 1; i >= 0; i--) { + let group = phraseGroups[i]; + group.timer--; + + if (group.timer <= 0) { + // 时间到,解除连接 + for (let p of group.particles) { + p.isConnected = false; + p.connections = []; + p.alpha = p.baseAlpha; + } + phraseGroups.splice(i, 1); + } + } + + // 提高连接频率:随机建立新的短语连接 + if (random() < 0.08) { + // 选择一个随机短语 + let phrase = random(meaningfulPhrases); + let phraseLength = phrase.length; + + // 筛选在遮罩范围内且未连接的粒子 + let centerX = width / 2; + let centerY = height / 2; + let availableParticles = particles.filter(p => + !p.isConnected && p.isInMask(offsetX, offsetY, centerX, centerY, maskRadius - 50) + ); + + // 如果遮罩内粒子不够,放宽范围 + if (availableParticles.length < phraseLength) { + availableParticles = particles.filter(p => + !p.isConnected && p.isInMask(offsetX, offsetY, centerX, centerY, maskRadius + 100) + ); + } + + if (availableParticles.length < phraseLength) return; + + // 选择一个起始粒子 + let startParticle = random(availableParticles); + let selectedParticles = [startParticle]; + + // 移除已选择的粒子 + availableParticles = availableParticles.filter(p => p !== startParticle); + + // 选择附近的其他粒子 + for (let i = 1; i < phraseLength; i++) { + if (availableParticles.length === 0) break; + + // 找到距离最后选择的粒子较近的粒子 + let lastSelected = selectedParticles[selectedParticles.length - 1]; + let nearbyParticles = availableParticles.filter(p => + lastSelected.distTo(p) < 200 + ); + + if (nearbyParticles.length > 0) { + let nextParticle = random(nearbyParticles); + selectedParticles.push(nextParticle); + availableParticles = availableParticles.filter(p => p !== nextParticle); + } else { + // 如果没有附近的,就随机选择 + let nextParticle = random(availableParticles); + selectedParticles.push(nextParticle); + availableParticles = availableParticles.filter(p => p !== nextParticle); + } + } + + if (selectedParticles.length === phraseLength) { + // 设置每个粒子的文字为短语中的字,并提高透明度 + for (let i = 0; i < phraseLength; i++) { + selectedParticles[i].char = phrase[i]; + selectedParticles[i].isConnected = true; + selectedParticles[i].attractionTimer = 20; + selectedParticles[i].alpha = random(190, 210); + } + + // 创建连接 + for (let i = 0; i < phraseLength - 1; i++) { + selectedParticles[i].connections = [selectedParticles[i + 1]]; + } + + // 添加到短语组 + phraseGroups.push({ + particles: selectedParticles, + timer: random(60, 120) + }); + } + } +} + +// 应用轻微的吸引力 +function applyConnectionForces() { + for (let group of phraseGroups) { + for (let i = 0; i < group.particles.length - 1; i++) { + let p1 = group.particles[i]; + let p2 = group.particles[i + 1]; + + // 只在吸引计时器大于0时应用力 + if (p1.attractionTimer > 0 || p2.attractionTimer > 0) { + let dx = p2.x - p1.x; + let dy = p2.y - p1.y; + let d = sqrt(dx * dx + dy * dy); + + if (d > 0 && d > 60) { + let force = 0.15; + p1.vx += (dx / d) * force; + p1.vy += (dy / d) * force; + p2.vx -= (dx / d) * force; + p2.vy -= (dy / d) * force; + } + } + } + } +} + +// 鼠标按下 +function mousePressed() { + let d = dist(mouseX, mouseY, width / 2, height / 2); + if (d < maskRadius) { + isDragging = true; + lastMouseX = mouseX; + lastMouseY = mouseY; + } +} + +// 鼠标拖拽 +function mouseDragged() { + if (isDragging) { + let dx = mouseX - lastMouseX; + let dy = mouseY - lastMouseY; + offsetX += dx; + offsetY += dy; + lastMouseX = mouseX; + lastMouseY = mouseY; + } +} + +// 鼠标释放 +function mouseReleased() { + isDragging = false; +}这样的么 \ No newline at end of file diff --git a/Assets/Scripts/MiniGame/HuoShan/Emo/Untitled-2.txt.meta b/Assets/Scripts/MiniGame/HuoShan/Emo/Untitled-2.txt.meta new file mode 100644 index 000000000..f260afc06 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Emo/Untitled-2.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: c7cbe6739626ae5458cf9c27e963b310 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/Emo/尝试2.txt b/Assets/Scripts/MiniGame/HuoShan/Emo/尝试2.txt new file mode 100644 index 000000000..eb95947b7 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Emo/尝试2.txt @@ -0,0 +1,1871 @@ +// ==================== 全局变量 ==================== +// 粒子数组 +let floatingTextParticles = []; // 背景浮动文字粒子数组 +let candidateParticles = []; // 候选粒子数组(可交互的粒子) +let rippleEffects = []; // 涟漪效果数组 +let repelBursts = []; // 排斥爆发效果数组 + +// 游戏参数 +let fontSize = 28; // 字体大小 +let floatingCount = 100; // 背景浮动文字数量 +let candidateCount = 50; // 候选粒子数量 +let redParticleCount = 8; // 红色粒子(目标粒子)数量 +let connectionDistance = 200; // 连接距离阈值(像素) + +// 游戏状态 +let isCompleted = false; // 游戏是否完成 +let completionPhase = 'none'; // 完成阶段:'none'(未完成), 'arranging'(排列中), 'revealing'(揭示中), 'completed'(已完成) +let completionTimer = 0; // 完成动画计时器 +let fadeOutAlpha = 255; // 淡出透明度(0-255) +let orderedRedParticles = []; // 按顺序排列的红色粒子数组 +let targetPositions = []; // 目标位置数组(用于完成动画) +let targetSentence = "别过来我感觉害怕"; // 目标句子 + +// 波形交互状态 +let calmProgress = 0; // 平静进度(0-1,影响文字的抖动和颜色) +let waveformPoints = []; // 波形点数组(用于绘制波形) +let waveformLength = 200; // 波形长度(点数) +let waveformAmplitude = 30; // 波形振幅(像素) +let waveformBaseY = 0; // 波形基准Y坐标 +let mouseInteractionActive = false; // 鼠标交互是否激活 +let interactionRadius = 50; // 交互影响半径 +let waveformParticles = []; // 波形粒子效果数组 +let waveformResistance = 0.15; // 波形抵抗力(0-1,越高越难抚平) +let lastMouseX = 0; // 上一帧鼠标X位置(用于检测拖动速度) +let lastMouseY = 0; // 上一帧鼠标Y位置 +let mouseDragSpeed = 0; // 鼠标拖动速度 + +// 文字区域 +let textAreaMargin = 100; // 文字区域边距 +let textAreaX = 0; // 文字区域X坐标 +let textAreaY = 0; // 文字区域Y坐标 +let textAreaWidth = 0; // 文字区域宽度 +let textAreaHeight = 0; // 文字区域高度 + +// 字符集 +let chineseChars = '的一是在不了有和人这中大为上个国我以要他时来用们生到作地于出就分对成会可主发年动同工也能下过子说产种面而方后多定行学法所民得经十三之进着等部度家电力里如水化高自二理起小物现实加量都两体制机当使点从业本去把性好应开它合还因由其些然前外天政四日那社义事平形相全表间样与关各重新线内数正心反你明看原又么利比或但质气第向道命此变条只没结解问意建月公无系军很情者最立代想已通并提直题党程展五果料象员革位入常文总次品式活设及管特件长求老头基资边流路级少图山统接知较将组见计别她手角期根论运农指几九区强放决西被干做必战先回则任取据处队南给色光门即保治北造百规热领七海口东导器压志世金增争济阶油思术极交受联什认六共权收证改清己美再采转更单风切打白教速花带安场身车例真务具万每目至达走积示议声报斗完类八离华名确才科张信马节话米整空元况今集温传土许步群广石记需段研界拉林律叫且究观越织装影算低持音众书布复容儿须际商非验连断深难近矿千周委素技备半办青省列习响约支般史感劳便团往酸历市克何除消构府称太准精值号率族维划选标写存候毛亲快效斯院查江型眼王按格养易置派层片始却专状育厂京识适属圆包火住调满县局照参红细引听该铁价严龙飞'; +let chineseWords = ['不安', '紧张', '焦虑', '担忧', '烦躁', '恐慌', '恐惧', '绝望', '痛苦', '悲伤', '愤怒', '孤独', '无助', '迷茫', '困惑', '压抑', '沉重', '疲惫', '空虚', '失落']; + +// 连接状态跟踪 +let previousConnections = new Map(); // 上一帧的连接状态映射(用于检测连接变化) +let effectDisplays = []; // 效果显示对象数组(用于传递效果) +let initializationComplete = false; // 初始化是否完成 +let initializationFrames = 0; // 初始化帧数计数 + +// 词组模式 +let phraseMode = true; // 是否启用词组模式 +let phraseGroups = []; // 词组分组数组 + +// ==================== 初始化 ==================== +function setup() { + createCanvas(windowWidth, windowHeight); + textAlign(CENTER, CENTER); + + textAreaX = textAreaMargin; + textAreaY = textAreaMargin; + textAreaWidth = width - textAreaMargin * 2; + textAreaHeight = height - textAreaMargin * 2; + + for (let i = 0; i < floatingCount; i++) { + floatingTextParticles.push(new FloatingText( + random(textAreaX, textAreaX + textAreaWidth), + random(textAreaY, textAreaY + textAreaHeight) + )); + } + for (let i = 0; i < candidateCount; i++) { + candidateParticles.push(new CandidateParticle( + random(textAreaX, textAreaX + textAreaWidth), + random(textAreaY, textAreaY + textAreaHeight) + )); + } + + selectRedParticles(); +} + +// ==================== 主循环 ==================== +/** + * 主绘制循环:更新和渲染所有游戏元素 + */ +function draw() { + background(20, 25, 35); + + // 初始化检查:等待一定帧数后再开始检测连接变化 + if (!initializationComplete) { + initializationFrames++; + if (initializationFrames >= 30) { + initializationComplete = true; + } + } + + // 更新词组分组 + updatePhraseGroups(); + + // 检测连接变化(只在初始化完成后进行) + if (initializationComplete) { + detectConnectionChanges(); + } else { + // 初始化阶段:建立初始连接状态(不触发效果) + if (initializationFrames >= 20) { + let currentConnections = new Map(); + for (let i = 0; i < candidateParticles.length; i++) { + for (let j = i + 1; j < candidateParticles.length; j++) { + let distance = dist(candidateParticles[i].x, candidateParticles[i].y, + candidateParticles[j].x, candidateParticles[j].y); + if (distance < connectionDistance) { + let connectionKey = `${min(i, j)}-${max(i, j)}`; + currentConnections.set(connectionKey, { + p1: candidateParticles[i], + p2: candidateParticles[j], + d: distance + }); + } + } + } + previousConnections = currentConnections; + } + } + + // 更新和显示背景浮动文字粒子 + for (let particle of floatingTextParticles) { + particle.update(); + particle.display(); + } + + // 更新和显示候选粒子 + for (let particle of candidateParticles) { + // 如果游戏完成且不是红色粒子,停止移动 + if (isCompleted && !particle.isRed && completionPhase !== 'none') { + particle.vx = 0; + particle.vy = 0; + } else { + particle.update(); + // 在正常游戏阶段应用涟漪和排斥效果 + if (completionPhase === 'none') { + particle.applyRippleAndRepel(); + } + } + particle.display(); + } + + // 更新和显示涟漪效果 + for (let i = rippleEffects.length - 1; i >= 0; i--) { + rippleEffects[i].update(); + rippleEffects[i].display(); + if (rippleEffects[i].alpha <= 0) rippleEffects.splice(i, 1); + } + + // 更新和显示排斥爆发效果 + for (let i = repelBursts.length - 1; i >= 0; i--) { + repelBursts[i].update(); + repelBursts[i].display(); + if (repelBursts[i].alpha <= 0) repelBursts.splice(i, 1); + } + + // 更新和显示效果传递(只在未完成或排列阶段) + if (completionPhase === 'none' || completionPhase === 'arranging') { + for (let i = effectDisplays.length - 1; i >= 0; i--) { + if (!effectDisplays[i].update()) { + // 效果结束,清理并移除 + effectDisplays[i].cleanup(); + effectDisplays.splice(i, 1); + } else { + // 效果仍在进行,显示效果 + effectDisplays[i].display(); + } + } + } else { + // 完成阶段:清理所有效果 + for (let i = effectDisplays.length - 1; i >= 0; i--) { + effectDisplays[i].cleanup(); + effectDisplays.splice(i, 1); + } + } + + // 绘制连接线 + drawConnections(); + + // 检测完成状态:所有红色粒子是否连接且与蓝色粒子分离 + let newCompleted = checkRedParticlesConnected(); + if (newCompleted && !isCompleted) { + isCompleted = true; + startCompletionSequence(); + } + + // 更新完成动画 + if (isCompleted) { + updateCompletionAnimation(); + } + + // 绘制波形(在完成阶段) + if (completionPhase === 'revealing' || completionPhase === 'completed') { + drawWaveform(); + } + + // 显示波形交互提示和UI + if (completionPhase === 'completed') { + displayWaveformInteraction(); + } +} + +// ==================== 连接检测 ==================== +/** + * 检测粒子之间的连接变化,并在红色粒子和蓝色粒子新建立连接时触发效果传递 + * 此函数会更新每个粒子的connections数组,记录真正连接的粒子 + */ +function detectConnectionChanges() { + let currentConnections = new Map(); + + // 遍历所有候选粒子对,检测连接关系 + for (let i = 0; i < candidateParticles.length; i++) { + let particle1 = candidateParticles[i]; + particle1.connections = []; // 重置连接数组 + + for (let j = i + 1; j < candidateParticles.length; j++) { + let particle2 = candidateParticles[j]; + let distance = dist(particle1.x, particle1.y, particle2.x, particle2.y); + + // 如果距离小于连接阈值,则建立连接 + if (distance < connectionDistance) { + let connectionKey = `${min(i, j)}-${max(i, j)}`; + currentConnections.set(connectionKey, { + p1: particle1, + p2: particle2, + d: distance + }); + + // 在双方的connections数组中记录连接关系 + particle1.connections.push(particle2); + particle2.connections.push(particle1); + } + } + } + + // 检测新建立的连接(红色粒子与蓝色粒子之间的连接) + if (initializationComplete && previousConnections.size > 0) { + for (let [connectionKey, connection] of currentConnections) { + // 如果这是一个新建立的连接 + if (!previousConnections.has(connectionKey)) { + let particle1 = connection.p1; + let particle2 = connection.p2; + + // 检查是否是红色粒子与蓝色粒子的新连接 + // 条件:一个是红色粒子(原始红色),另一个是蓝色粒子 + let isRedToBlueConnection = + (particle1.isRed && !particle2.isRed && !particle2.isOrange && + !particle1.isStatic && !particle1.hasEffect && particle1.originalIsRed === true) || + (!particle1.isRed && !particle1.isOrange && particle2.isRed && + !particle2.isStatic && !particle2.hasEffect && particle2.originalIsRed === true); + + if (isRedToBlueConnection) { + let redParticle = particle1.isRed ? particle1 : particle2; + let blueParticle = particle1.isRed ? particle2 : particle1; + + // 确保蓝色粒子可以接收效果 + if (!blueParticle.isStatic && !blueParticle.hasEffect && !blueParticle.isOrange) { + triggerEffectPropagation(redParticle, blueParticle); + } + } + } + } + } + + // 更新上一帧的连接状态 + previousConnections = currentConnections; +} + +/** + * 触发效果传递(从红色粒子传递到蓝色粒子) + * @param {CandidateParticle} redParticle - 红色粒子(效果源) + * @param {CandidateParticle} blueParticle - 蓝色粒子(效果目标) + */ +function triggerEffectPropagation(redParticle, blueParticle) { + if (blueParticle) { + effectDisplays.push(new EffectDisplay(redParticle, blueParticle)); + } +} + +// ==================== 绘制连接线 ==================== +function drawConnections() { + // 蓝色粒子之间的连线 + if (completionPhase === 'none' || completionPhase === 'arranging') { + strokeWeight(1.2); + for (let i = 0; i < candidateParticles.length; i++) { + for (let j = i + 1; j < candidateParticles.length; j++) { + if (candidateParticles[i].isRed && candidateParticles[j].isRed) continue; + + let d = dist(candidateParticles[i].x, candidateParticles[i].y, candidateParticles[j].x, candidateParticles[j].y); + if (d < connectionDistance) { + let alpha = map(d, 0, connectionDistance, 180, 0) * (fadeOutAlpha / 255); + stroke(100, 200, 255, alpha); + line(candidateParticles[i].x, candidateParticles[i].y, candidateParticles[j].x, candidateParticles[j].y); + } + } + } + } + + // 红色粒子之间的连线 + if (completionPhase === 'none' || completionPhase === 'arranging') { + let redParticles = candidateParticles.filter(p => p.isRed); + strokeWeight(2.5); + for (let i = 0; i < redParticles.length; i++) { + for (let j = i + 1; j < redParticles.length; j++) { + let d = dist(redParticles[i].x, redParticles[i].y, redParticles[j].x, redParticles[j].y); + if (d < connectionDistance) { + let alpha = map(d, 0, connectionDistance, 255, 100); + stroke(255, 100, 100, alpha); + line(redParticles[i].x, redParticles[i].y, redParticles[j].x, redParticles[j].y); + } + } + } + } +} + +// ==================== 完成序列 ==================== +function startCompletionSequence() { + completionPhase = 'arranging'; + completionTimer = 0; + fadeOutAlpha = 255; + + // 重置波形和平静进度 + calmProgress = 0; + waveformPoints = []; + + orderedRedParticles = getOrderedRedParticles(); + let displayLength = min(orderedRedParticles.length, targetSentence.length); + + let totalWidth = displayLength * (fontSize + 20); + let startX = (width - totalWidth) / 2 + fontSize / 2; + let centerY = height / 2; + + targetPositions = []; + for (let i = 0; i < displayLength; i++) { + targetPositions.push({ + x: startX + i * (fontSize + 20), + y: centerY + }); + } + + if (orderedRedParticles.length > displayLength) { + orderedRedParticles = orderedRedParticles.slice(0, displayLength); + } + + effectDisplays = []; + + for (let p of candidateParticles) { + if (!p.isRed) { + p.vx = 0; + p.vy = 0; + if (p.isOrange) { + p.hasEffect = false; + p.changeSpeedMultiplier = 1; + p.vibrationOffsetX = 0; + p.vibrationOffsetY = 0; + } + } + } +} + +function getOrderedRedParticles() { + let redParticles = candidateParticles.filter(p => p.isRed); + if (redParticles.length === 0) return []; + if (redParticles.length === 1) return redParticles; + + let startIdx = 0; + let minX = redParticles[0].x; + for (let i = 1; i < redParticles.length; i++) { + if (redParticles[i].x < minX) { + minX = redParticles[i].x; + startIdx = i; + } + } + + let ordered = []; + let visited = new Set(); + let stack = [startIdx]; + visited.add(startIdx); + + while (stack.length > 0) { + let currentIdx = stack.pop(); + ordered.push(redParticles[currentIdx]); + + for (let i = 0; i < redParticles.length; i++) { + if (!visited.has(i)) { + let d = dist(redParticles[currentIdx].x, redParticles[currentIdx].y, + redParticles[i].x, redParticles[i].y); + if (d < connectionDistance) { + visited.add(i); + stack.push(i); + } + } + } + } + + return ordered; +} + +/** + * 更新完成动画:包括文字揭示、抖动效果和波形交互 + */ +function updateCompletionAnimation() { + completionTimer++; + + // 更新波形交互 + if (completionPhase === 'revealing' || completionPhase === 'completed') { + updateWaveform(); + } + + if (completionPhase === 'arranging') { + let allArrived = true; + for (let i = 0; i < orderedRedParticles.length; i++) { + let p = orderedRedParticles[i]; + let target = targetPositions[i]; + + p.x = lerp(p.x, target.x, 0.1); + p.y = lerp(p.y, target.y, 0.1); + + if (dist(p.x, p.y, target.x, target.y) > 1) { + allArrived = false; + } + } + + fadeOutAlpha = max(0, fadeOutAlpha - 5); + + if (allArrived && completionTimer > 30) { + completionPhase = 'revealing'; + completionTimer = 0; + + // 初始化波形(如果还没有初始化) + if (waveformPoints.length === 0) { + initializeWaveform(); + } + + // 初始化抖动和漂浮效果 + for (let p of orderedRedParticles) { + p.changeTimer = 5; + p.changeSpeedMultiplier = 10; + p.isStatic = false; + // 初始化抖动参数 + p.anxietyShakePhase = random(TWO_PI); + p.anxietyShakeIntensity = random(2, 4); + p.anxietyFloatPhase = random(TWO_PI); + p.anxietyFloatSpeed = random(0.02, 0.04); + } + } + } else if (completionPhase === 'revealing') { + let revealDelay = 15; + let currentIndex = floor(completionTimer / revealDelay); + + for (let i = 0; i < orderedRedParticles.length; i++) { + let p = orderedRedParticles[i]; + + if (i < currentIndex) { + if (i < targetSentence.length) { + p.char = targetSentence.charAt(i); + } + p.isStatic = false; // 允许抖动 + p.changeSpeedMultiplier = 1; + p.phraseGroup = null; + // 更新抖动和漂浮 + updateAnxietyEffect(p); + } else if (i === currentIndex) { + p.changeTimer = max(0, p.changeTimer - 1); + p.changeSpeedMultiplier = 20; + p.isStatic = false; + p.phraseGroup = null; + + if (completionTimer % revealDelay >= revealDelay - 5) { + if (i < targetSentence.length) { + p.char = targetSentence.charAt(i); + } + // 初始化抖动参数 + if (p.anxietyShakePhase === undefined) { + p.anxietyShakePhase = random(TWO_PI); + p.anxietyShakeIntensity = random(2, 4); + p.anxietyFloatPhase = random(TWO_PI); + p.anxietyFloatSpeed = random(0.02, 0.04); + } + } else { + if (p.changeTimer <= 0) { + p.char = chineseChars.charAt(floor(random(chineseChars.length))); + p.changeTimer = 2; + } + } + } else { + p.changeTimer = max(0, p.changeTimer - 1); + p.changeSpeedMultiplier = 20; + p.isStatic = false; + p.phraseGroup = null; + + if (p.changeTimer <= 0) { + p.char = chineseChars.charAt(floor(random(chineseChars.length))); + p.changeTimer = 2; + } + } + } + + if (currentIndex >= orderedRedParticles.length) { + completionPhase = 'completed'; + for (let i = 0; i < orderedRedParticles.length && i < targetSentence.length; i++) { + orderedRedParticles[i].char = targetSentence.charAt(i); + orderedRedParticles[i].isStatic = false; // 允许抖动 + orderedRedParticles[i].changeSpeedMultiplier = 1; + orderedRedParticles[i].phraseGroup = null; + // 确保有抖动参数 + if (orderedRedParticles[i].anxietyShakePhase === undefined) { + orderedRedParticles[i].anxietyShakePhase = random(TWO_PI); + orderedRedParticles[i].anxietyShakeIntensity = random(2, 4); + orderedRedParticles[i].anxietyFloatPhase = random(TWO_PI); + orderedRedParticles[i].anxietyFloatSpeed = random(0.02, 0.04); + } + } + } + } else if (completionPhase === 'completed') { + // 在完成阶段,更新所有文字的抖动和漂浮效果 + for (let p of orderedRedParticles) { + updateAnxietyEffect(p); + } + + // 检查所有文字是否都已消散完成 + let allDissolved = true; + for (let p of orderedRedParticles) { + let dissolveProgress = p.dissolveProgress !== undefined ? p.dissolveProgress : 0; + if (dissolveProgress < 1) { + allDissolved = false; + break; + } + } + + // 如果所有文字都已消散,触发游戏结束 + if (allDissolved && orderedRedParticles.length > 0) { + // 可以在这里添加结束动画或回调 + // 例如:延迟一段时间后重置游戏或显示结束画面 + if (completionTimer > 60) { // 等待1秒(假设60fps)后重置 + resetGame(); + } + } + } +} + +/** + * 更新焦虑效果(抖动和漂浮)- 根据对应波形点的抚平程度 + * @param {CandidateParticle} particle - 要更新的粒子 + */ +function updateAnxietyEffect(particle) { + if (particle.anxietyShakePhase === undefined) { + particle.anxietyShakePhase = random(TWO_PI); + particle.anxietyShakeIntensity = random(2, 4); + particle.anxietyFloatPhase = random(TWO_PI); + particle.anxietyFloatSpeed = random(0.02, 0.04); + } + + // 获取对应波形点的抚平程度(如果没有关联,使用整体平静进度) + let localCalmProgress = particle.calmProgress !== undefined ? particle.calmProgress : calmProgress; + + // 根据对应波形点的抚平程度减少抖动强度(0 = 完全抖动,1 = 完全平静) + let shakeIntensity = particle.anxietyShakeIntensity * (1 - localCalmProgress); + let floatAmplitude = 3 * (1 - localCalmProgress); + + // 如果抚平程度高,停止抖动更新 + if (localCalmProgress < 0.9) { + // 更新抖动相位 + particle.anxietyShakePhase += 0.3; + particle.anxietyFloatPhase += particle.anxietyFloatSpeed; + } + + // 计算抖动偏移(随机方向的小幅度抖动) + particle.anxietyShakeX = cos(particle.anxietyShakePhase) * shakeIntensity + + sin(particle.anxietyShakePhase * 1.7) * shakeIntensity * 0.5; + particle.anxietyShakeY = sin(particle.anxietyShakePhase * 1.3) * shakeIntensity + + cos(particle.anxietyShakePhase * 0.9) * shakeIntensity * 0.5; + + // 计算漂浮偏移(缓慢的上下浮动) + particle.anxietyFloatY = sin(particle.anxietyFloatPhase) * floatAmplitude; +} + +/** + * 初始化波形数据(与文字位置对应) + */ +function initializeWaveform() { + waveformPoints = []; + waveformParticles = []; + + // 确保orderedRedParticles已经初始化 + if (orderedRedParticles.length === 0) return; + + // 波形显示在文字位置(与文字重叠) + waveformBaseY = height / 2; // 与文字中心对齐 + + // 为每个文字粒子创建一个对应的波形点 + for (let i = 0; i < orderedRedParticles.length; i++) { + let particle = orderedRedParticles[i]; + let x = particle.x; + + // 异常波形:使用Perlin噪声生成真实的噪波效果 + // 使用多个频率的噪声叠加,产生更自然的噪波 + let noiseScale1 = 0.05; // 低频噪声(大范围变化) + let noiseScale2 = 0.15; // 中频噪声 + let noiseScale3 = 0.4; // 高频噪声(细节变化) + + // 使用p5.js的noise函数生成平滑的噪声值 + let noiseValue1 = noise(x * noiseScale1, frameCount * 0.01); + let noiseValue2 = noise(x * noiseScale2, frameCount * 0.02 + 100); + let noiseValue3 = noise(x * noiseScale3, frameCount * 0.03 + 200); + + // 将噪声值从[0,1]映射到[-1,1],并叠加多层 + noiseValue1 = map(noiseValue1, 0, 1, -1, 1); + noiseValue2 = map(noiseValue2, 0, 1, -1, 1) * 0.6; + noiseValue3 = map(noiseValue3, 0, 1, -1, 1) * 0.3; + + // 叠加多层噪声,产生更复杂的噪波 + let combinedNoise = noiseValue1 + noiseValue2 + noiseValue3; + combinedNoise = constrain(combinedNoise, -1.5, 1.5); + + // 添加一些随机性,使每个点的噪波特征不同 + let noiseAmplitude = random(0.7, 1.0); + let noiseOffset = random(-0.2, 0.2); + let initialY = waveformBaseY + (combinedNoise + noiseOffset) * noiseAmplitude * waveformAmplitude; + + // 抚平后的目标位置:规律的波形(正弦波) + let targetWavePhase = i * 0.3; // 波形相位 + let targetWaveAmplitude = waveformAmplitude * 0.3; // 规律波形的振幅(较小) + let targetY = waveformBaseY + sin(targetWavePhase) * targetWaveAmplitude; + + // 计算每个点的异常程度(距离规律波形的距离) + let anomalyAmount = abs(initialY - targetY) / waveformAmplitude; + + waveformPoints.push({ + x: x, + y: initialY, // 初始Y坐标(噪波) + targetY: targetY, // 目标位置(规律的波形) + smoothedY: initialY, // 平滑后的Y坐标 + noiseOffset: noiseOffset, // 噪声偏移(用于动态噪波) + noiseScale1: noiseScale1, // 噪声缩放1 + noiseScale2: noiseScale2, // 噪声缩放2 + noiseScale3: noiseScale3, // 噪声缩放3 + noiseAmplitude: noiseAmplitude, // 噪声振幅 + noiseTime: random(0, 1000), // 噪声时间偏移(使每个点有不同的时间相位) + resistance: 0.1 + anomalyAmount * 0.25, // 抵抗力(异常程度越高,抵抗力越强) + calmAmount: 0, // 当前被抚平的程度(0-1) + isBeingCalmed: false, // 是否正在被抚平 + calmTimer: 0, // 抚平计时器 + particle: particle, // 关联的文字粒子 + particleIndex: i // 粒子索引 + }); + + // 在文字粒子上添加波形关联 + particle.waveformPoint = waveformPoints[waveformPoints.length - 1]; + particle.calmProgress = 0; // 文字粒子的平静进度 + particle.dissolveProgress = 0; // 文字粒子的消散进度 + particle.isCalmed = false; // 是否已被抚平 + } + + // 初始化鼠标位置 + lastMouseX = mouseX; + lastMouseY = mouseY; +} + +/** + * 更新波形:根据平静进度平滑波形,并处理鼠标交互(带抵抗力和愈合机制) + */ +function updateWaveform() { + if (waveformPoints.length === 0) { + initializeWaveform(); + } + + // 计算鼠标拖动速度 + mouseDragSpeed = dist(mouseX, mouseY, lastMouseX, lastMouseY); + lastMouseX = mouseX; + lastMouseY = mouseY; + + // 更新粒子效果 + for (let i = waveformParticles.length - 1; i >= 0; i--) { + let p = waveformParticles[i]; + p.x += p.vx; + p.y += p.vy; + p.vy += 0.1; // 重力 + p.alpha -= 3; + p.size *= 0.98; + + if (p.alpha <= 0 || p.size < 0.5) { + waveformParticles.splice(i, 1); + } + } + + // 更新每个波形点 + for (let point of waveformPoints) { + // 同步更新波形点的X位置(跟随文字位置) + if (point.particle) { + point.x = point.particle.x; + // 更新规律波形的目标位置(跟随文字位置) + let targetWavePhase = point.particleIndex * 0.3; + let targetWaveAmplitude = waveformAmplitude * 0.3; + point.targetY = waveformBaseY + sin(targetWavePhase) * targetWaveAmplitude; + } + + // 重置状态 + point.isBeingCalmed = false; + + // 如果未抚平,添加动态噪波效果(表现异常波形的"生命力") + if (point.calmAmount < 0.9) { + // 使用Perlin噪声生成动态噪波 + let currentTime = frameCount * 0.01 + point.noiseTime * 0.001; + + // 生成多层噪声 + let noiseValue1 = noise(point.x * point.noiseScale1, currentTime); + let noiseValue2 = noise(point.x * point.noiseScale2, currentTime * 1.5 + 100); + let noiseValue3 = noise(point.x * point.noiseScale3, currentTime * 2 + 200); + + // 映射并叠加 + noiseValue1 = map(noiseValue1, 0, 1, -1, 1); + noiseValue2 = map(noiseValue2, 0, 1, -1, 1) * 0.6; + noiseValue3 = map(noiseValue3, 0, 1, -1, 1) * 0.3; + + let dynamicNoise = noiseValue1 + noiseValue2 + noiseValue3 + point.noiseOffset; + dynamicNoise = constrain(dynamicNoise, -1.5, 1.5); + + // 根据抚平程度减少噪波强度(抚平程度越高,噪波越弱) + let noiseIntensity = (1 - point.calmAmount) * waveformAmplitude * point.noiseAmplitude; + point.smoothedY = point.y + dynamicNoise * noiseIntensity; + } + + // 处理鼠标交互:如果鼠标在附近,尝试抚平该区域的波形 + if (mouseIsPressed && mouseButton === LEFT) { + let distToMouse = dist(mouseX, mouseY, point.x, point.smoothedY); + if (distToMouse < interactionRadius) { + // 计算影响强度(距离越近影响越大,拖动速度越快影响越大) + let distanceInfluence = map(distToMouse, 0, interactionRadius, 1, 0); + let speedBonus = min(1, mouseDragSpeed / 5); // 拖动速度加成 + let influence = distanceInfluence * (0.5 + speedBonus * 0.5); + + // 标记为正在被抚平 + point.isBeingCalmed = true; + point.calmTimer++; + + // 需要持续按住才能抚平(抵抗机制) + // 抵抗力越高,需要按住的时间越长 + let requiredTime = 30 + point.resistance * 60; // 需要按住30-90帧 + let calmProgressLocal = min(1, point.calmTimer / requiredTime); + + // 应用抚平效果(考虑抵抗力) + let calmStrength = influence * (1 - point.resistance) * 0.15; + + // 计算目标位置(从噪波位置向规律波形位置过渡) + let targetY = lerp(point.y, point.targetY, calmProgressLocal); + point.smoothedY = lerp(point.smoothedY, targetY, calmStrength); + + // 更新抚平程度(一旦抚平,就不会恢复) + if (calmProgressLocal > point.calmAmount) { + point.calmAmount = calmProgressLocal; + } + + // 如果完全抚平,标记为已抚平 + if (point.calmAmount >= 0.95) { + point.calmAmount = 1; + point.smoothedY = point.targetY; // 强制设置为目标位置 + } + + // 如果成功抚平了一点,生成粒子效果 + if (calmProgressLocal > 0.3 && random() > 0.7) { + for (let j = 0; j < 2; j++) { + waveformParticles.push({ + x: point.x, + y: point.smoothedY, + vx: random(-1, 1), + vy: random(-2, -0.5), + alpha: 200, + size: random(2, 4), + color: [150, 200, 255] + }); + } + } + + // 增加整体平静进度(需要持续交互) + if (calmProgressLocal > 0.5) { + calmProgress = min(1, calmProgress + influence * 0.0005); + } + } else { + // 不在交互范围内,保持当前状态(不重置) + } + } + + // 关键:如果calmAmount接近1,强制让波形显示为规律波形 + if (point.calmAmount > 0.8) { + // 高度抚平的点,强制向目标位置(规律波形)靠拢 + let forceStrength = map(point.calmAmount, 0.8, 1, 0.1, 0.5); + point.smoothedY = lerp(point.smoothedY, point.targetY, forceStrength); + } + + // 如果完全抚平,直接设置为目标位置(规律波形) + if (point.calmAmount >= 1) { + point.smoothedY = point.targetY; + } + + // 限制波形点不会完全超出范围(抚平的点限制更严格) + let maxDeviation = waveformAmplitude * (1 - calmProgress * 0.5) * (1 - point.calmAmount * 0.8); + point.smoothedY = constrain(point.smoothedY, + waveformBaseY - maxDeviation, + waveformBaseY + maxDeviation); + + // 同步更新对应文字粒子的平静进度 + if (point.particle) { + let oldCalmProgress = point.particle.calmProgress || 0; + point.particle.calmProgress = point.calmAmount; + + // 如果完全抚平(calmAmount >= 0.95),标记为已稳定 + if (point.calmAmount >= 0.95 && !point.particle.isCalmed) { + point.particle.isCalmed = true; + // 停止字符变化和抖动 + point.particle.isStatic = true; + point.particle.changeSpeedMultiplier = 0; + // 初始化消散进度(从0开始,等待波形完全稳定) + point.particle.dissolveProgress = 0; + point.particle.stableTimer = 0; // 稳定计时器 + } + + // 如果已抚平,检查波形是否完全稳定(接近目标位置) + if (point.particle.isCalmed) { + // 检查波形是否稳定(距离目标位置很近) + let distanceToTarget = abs(point.smoothedY - point.targetY); + let stabilityThreshold = waveformAmplitude * 0.05; // 稳定阈值 + + if (distanceToTarget < stabilityThreshold) { + // 波形已稳定,开始增加稳定计时器 + if (point.particle.stableTimer === undefined) { + point.particle.stableTimer = 0; + } + point.particle.stableTimer++; + + // 稳定一段时间后(例如30帧),开始消散 + if (point.particle.stableTimer > 30 && point.particle.dissolveProgress < 1) { + // 消散速度:根据波形稳定程度决定 + let dissolveSpeed = 0.02 + (point.calmAmount - 0.95) * 0.15; // 0.02到0.07之间 + point.particle.dissolveProgress = min(1, point.particle.dissolveProgress + dissolveSpeed); + } + } else { + // 波形还未完全稳定,重置稳定计时器 + point.particle.stableTimer = 0; + } + } + } + } + + // 如果平静进度达到1,波形完全平滑 + if (calmProgress >= 1) { + for (let point of waveformPoints) { + point.smoothedY = lerp(point.smoothedY, point.targetY, 0.05); + point.calmAmount = 1; + } + } +} + +/** + * 绘制波形(带粒子效果和动态颜色) + */ +function drawWaveform() { + if (waveformPoints.length === 0) return; + + // 绘制粒子效果 + for (let p of waveformParticles) { + fill(p.color[0], p.color[1], p.color[2], p.alpha); + noStroke(); + ellipse(p.x, p.y, p.size); + + // 添加光晕效果 + fill(p.color[0], p.color[1], p.color[2], p.alpha * 0.3); + ellipse(p.x, p.y, p.size * 2); + } + + // 绘制波形线(根据抚平程度改变颜色:红色=异常,蓝色=正常) + noFill(); + strokeWeight(2.5); + + beginShape(); + for (let i = 0; i < waveformPoints.length; i++) { + let point = waveformPoints[i]; + + // 同步更新波形点的X位置(跟随文字位置) + if (point.particle) { + point.x = point.particle.x; + } + + // 获取对应文字的消散进度 + let particleDissolve = point.particle && point.particle.dissolveProgress !== undefined ? + point.particle.dissolveProgress : 0; + + // 根据抚平程度混合颜色:红色(255,100,100) -> 蓝色(150,200,255) + let redValue = lerp(255, 150, point.calmAmount); + let greenValue = lerp(100, 200, point.calmAmount); + let blueValue = lerp(100, 255, point.calmAmount); + let alphaValue = 200 * (1 - calmProgress * 0.3) * (1 - particleDissolve); + + // 如果文字完全消散,不绘制该点 + if (particleDissolve < 1) { + stroke(redValue, greenValue, blueValue, alphaValue); + vertex(point.x, point.smoothedY); + } + } + endShape(); + + // 绘制波形点(显示抵抗力和抚平进度) + for (let i = 0; i < waveformPoints.length; i += 3) { + let point = waveformPoints[i]; + + // 获取对应文字的消散进度 + let particleDissolve = point.particle && point.particle.dissolveProgress !== undefined ? + point.particle.dissolveProgress : 0; + + // 如果文字完全消散,不绘制 + if (particleDissolve >= 1) continue; + + // 如果正在被抚平,显示进度 + if (point.isBeingCalmed && point.calmTimer > 0) { + let requiredTime = 30 + point.resistance * 60; + let progress = min(1, point.calmTimer / requiredTime); + + // 绘制进度环 + push(); + translate(point.x, point.smoothedY); + noFill(); + stroke(150, 200, 255, 150 * (1 - particleDissolve)); + strokeWeight(1); + arc(0, 0, 8, 8, -HALF_PI, -HALF_PI + TWO_PI * progress); + pop(); + } + + // 绘制波形点(根据抚平程度和消散进度) + let pointAlpha = 150 * (1 - point.calmAmount) * (1 - calmProgress * 0.5) * (1 - particleDissolve); + if (pointAlpha > 10) { + let redValue = lerp(255, 150, point.calmAmount); + let greenValue = lerp(100, 200, point.calmAmount); + let blueValue = lerp(100, 255, point.calmAmount); + fill(redValue, greenValue, blueValue, pointAlpha); + noStroke(); + ellipse(point.x, point.smoothedY, 3); + } + } + + // 绘制交互反馈(如果鼠标按下) + if (mouseIsPressed && mouseButton === LEFT) { + // 内圈(交互范围) + fill(150, 200, 255, 30); + noStroke(); + ellipse(mouseX, mouseY, interactionRadius * 2); + + // 外圈(视觉反馈) + stroke(150, 200, 255, 150); + strokeWeight(2); + noFill(); + ellipse(mouseX, mouseY, interactionRadius * 2); + + // 根据拖动速度显示额外反馈 + if (mouseDragSpeed > 2) { + stroke(150, 200, 255, 100); + strokeWeight(1); + noFill(); + ellipse(mouseX, mouseY, interactionRadius * 2.5); + } + } + + // 绘制基准线(目标线) + if (calmProgress < 0.9) { + stroke(150, 200, 255, 50 * (1 - calmProgress)); + strokeWeight(1); + line(width * 0.2, waveformBaseY, width * 0.8, waveformBaseY); + } +} + +// ==================== 游戏逻辑 ==================== +function updatePhraseGroups() { + phraseGroups = []; + let visited = new Set(); + + for (let i = 0; i < candidateParticles.length; i++) { + if (visited.has(i)) continue; + + let group = []; + let stack = [i]; + visited.add(i); + + while (stack.length > 0) { + let currentIdx = stack.pop(); + let current = candidateParticles[currentIdx]; + group.push(current); + + for (let j = 0; j < candidateParticles.length; j++) { + if (j === currentIdx || visited.has(j)) continue; + let d = dist(current.x, current.y, candidateParticles[j].x, candidateParticles[j].y); + if (d < connectionDistance) { + visited.add(j); + stack.push(j); + } + } + } + + if (group.length >= 2) { + phraseGroups.push(group); + for (let p of group) { + p.phraseGroup = group; + p.phraseIndex = group.indexOf(p); + } + } + } +} + +function selectRedParticles() { + let selected = []; + let minDistance = min(textAreaWidth, textAreaHeight) / (redParticleCount * 0.8); + + let shuffled = [...candidateParticles]; + for (let i = shuffled.length - 1; i > 0; i--) { + let j = floor(random(i + 1)); + [shuffled[i], shuffled[j]] = [shuffled[j], shuffled[i]]; + } + + for (let particle of shuffled) { + if (selected.length >= redParticleCount) break; + + let tooClose = false; + for (let selectedP of selected) { + if (dist(particle.x, particle.y, selectedP.x, selectedP.y) < minDistance) { + tooClose = true; + break; + } + } + + if (!tooClose || selected.length === 0) { + particle.isRed = true; + particle.originalIsRed = true; + selected.push(particle); + } + } + + let remaining = redParticleCount - selected.length; + for (let i = 0; i < remaining && i < shuffled.length; i++) { + if (!shuffled[i].isRed) { + shuffled[i].isRed = true; + shuffled[i].originalIsRed = true; + selected.push(shuffled[i]); + } + } +} + +function checkRedParticlesConnected() { + let redParticles = candidateParticles.filter(p => p.isRed); + if (redParticles.length === 0) return false; + if (redParticles.length === 1) return true; + + let visited = new Set(); + let stack = [0]; + visited.add(0); + + while (stack.length > 0) { + let current = stack.pop(); + for (let i = 0; i < redParticles.length; i++) { + if (!visited.has(i)) { + let d = dist(redParticles[current].x, redParticles[current].y, + redParticles[i].x, redParticles[i].y); + if (d < connectionDistance) { + visited.add(i); + stack.push(i); + } + } + } + } + + let allRedConnected = visited.size === redParticles.length; + if (!allRedConnected) return false; + + for (let redP of redParticles) { + for (let p of candidateParticles) { + if (p.isRed) continue; + + let d = dist(redP.x, redP.y, p.x, p.y); + if (d < connectionDistance) { + return false; + } + } + } + + return true; +} + +function resetGame() { + isCompleted = false; + completionPhase = 'none'; + completionTimer = 0; + fadeOutAlpha = 255; + orderedRedParticles = []; + targetPositions = []; + effectDisplays = []; + previousConnections = new Map(); + initializationComplete = false; + initializationFrames = 0; + + // 重置波形交互状态 + calmProgress = 0; + waveformPoints = []; + waveformParticles = []; + mouseInteractionActive = false; + lastMouseX = 0; + lastMouseY = 0; + mouseDragSpeed = 0; + + for (let p of candidateParticles) { + p.isRed = false; + p.isOrange = false; + p.hasEffect = false; + p.isStatic = false; + p.originalIsRed = false; + p.changeSpeedMultiplier = 1; + p.vibrationOffsetX = 0; + p.vibrationOffsetY = 0; + p.vx = random(-0.5, 0.5); + p.vy = random(-0.5, 0.5); + p.x = random(textAreaX, textAreaX + textAreaWidth); + p.y = random(textAreaY, textAreaY + textAreaHeight); + p.alpha = p.baseAlpha + p.prob * 105; + p.phraseGroup = null; + p.phraseIndex = 0; + + // 重置波形相关状态 + p.calmProgress = undefined; + p.dissolveProgress = undefined; + p.isCalmed = false; + p.waveformPoint = undefined; + p.stableTimer = undefined; + + // 重置抖动和漂浮参数 + p.anxietyShakePhase = undefined; + p.anxietyShakeIntensity = undefined; + p.anxietyFloatPhase = undefined; + p.anxietyFloatSpeed = undefined; + p.anxietyShakeX = undefined; + p.anxietyShakeY = undefined; + p.anxietyFloatY = undefined; + } + + selectRedParticles(); + rippleEffects = []; + repelBursts = []; +} + +// ==================== UI ==================== +/** + * 显示波形交互提示和UI + */ +function displayWaveformInteraction() { + // 显示提示文字 + let hintY = height / 2 + 180; + fill(200, 220, 255, 180); + textSize(16); + textAlign(CENTER, CENTER); + + // 检查是否有文字正在消散 + let hasDissolving = false; + for (let p of orderedRedParticles) { + if (p.dissolveProgress !== undefined && p.dissolveProgress > 0 && p.dissolveProgress < 1) { + hasDissolving = true; + break; + } + } + + // 检查是否所有文字都已消散 + let allDissolved = true; + for (let p of orderedRedParticles) { + if (p.dissolveProgress === undefined || p.dissolveProgress < 1) { + allDissolved = false; + break; + } + } + + if (allDissolved) { + fill(150, 255, 150, 200); + text("所有文字已消散,情绪已完全平静", width / 2, hintY); + } else if (hasDissolving) { + fill(150, 220, 255, 200); + text("波形已稳定,文字正在消散...", width / 2, hintY); + } else if (calmProgress < 1) { + if (mouseIsPressed && mouseButton === LEFT) { + text("持续按住并拖动,抚平波形(波形稳定后文字会消散)", width / 2, hintY); + } else { + text("按住鼠标左键持续拖动,抚平异常波形(波形稳定后文字会消散)", width / 2, hintY); + } + + // 显示平静进度条 + let progressBarX = width / 2; + let progressBarY = hintY + 25; + let progressBarWidth = 200; + let progressBarHeight = 8; + + // 背景 + fill(50, 50, 70, 150); + rectMode(CENTER); + rect(progressBarX, progressBarY, progressBarWidth, progressBarHeight, 4); + + // 进度 + fill(150, 200, 255, 200); + rectMode(CORNER); + rect(progressBarX - progressBarWidth / 2, progressBarY - progressBarHeight / 2, + progressBarWidth * calmProgress, progressBarHeight, 4); + } else { + fill(150, 255, 150, 200); + text("异常波形已抚平,等待文字消散...", width / 2, hintY); + } +} + +function displayNextButton() { + // 不再显示下一步按钮,游戏会在所有文字消散后自动重置 + // 保留函数以防其他地方调用 +} + +// ==================== 事件处理 ==================== +/** + * 鼠标按下事件 + */ +function mousePressed() { + if (completionPhase === 'completed') { + // 在完成阶段,鼠标交互用于抚平波形(在updateWaveform中处理) + // 游戏会在所有文字消散后自动重置,不需要手动点击按钮 + } + + if (isCompleted && completionPhase !== 'completed') { + return; + } + + // 正常游戏阶段的交互 + if (mouseButton === LEFT) { + repelBursts.push(new RepelBurst(mouseX, mouseY)); + } else if (mouseButton === RIGHT) { + rippleEffects.push(new Ripple(mouseX, mouseY)); + } +} + +/** + * 键盘按下事件 + */ +function keyPressed() { + // 切换词组模式 + if (key === 'p' || key === 'P') { + phraseMode = !phraseMode; + for (let p of candidateParticles) { + p.phraseGroup = null; + p.phraseIndex = 0; + } + } +} + +// ==================== 类定义 ==================== +/** + * 效果显示类:管理从红色粒子到蓝色粒子的效果传递和显示 + * 效果会沿着连接线传播,形成连锁反应 + */ +class EffectDisplay { + /** + * 构造函数:初始化效果传递 + * @param {CandidateParticle} redParticle - 红色粒子(效果源) + * @param {CandidateParticle} startBlueParticle - 起始蓝色粒子(第一个接收效果的粒子) + */ + constructor(redParticle, startBlueParticle) { + this.redParticle = redParticle; // 红色粒子(效果源) + this.startBlueParticle = startBlueParticle; // 起始蓝色粒子 + this.lifeTimer = 20; // 效果持续时间(帧数) + + this.propagatedParticles = []; // 已传播的粒子数组(包含传播信息) + this.propagationQueue = []; // 传播队列(待传播的粒子) + this.propagationDelay = 3; // 传播延迟(帧数) + this.propagationCounter = 0; // 传播计数器 + this.maxPropagationSteps = 8; // 最大传播步数 + this.currentPropagationStep = 0; // 当前传播步数 + + // 从红色粒子开始,找到第一个连接的蓝色粒子并应用效果 + let connectedBlueParticles = this.findConnectedBlues(this.redParticle); + if (connectedBlueParticles.length > 0 && this.currentPropagationStep < this.maxPropagationSteps) { + // 随机选择一个连接的蓝色粒子 + let targetParticle = connectedBlueParticles[floor(random(connectedBlueParticles.length))]; + this.applyEffectToParticle(targetParticle); + + // 记录传播信息 + this.propagatedParticles.push({ + particle: targetParticle, + source: this.redParticle, + step: 1, + pulseProgress: 0 // 脉冲动画进度(0-1) + }); + + // 加入传播队列,用于下一步传播 + this.propagationQueue.push(targetParticle); + this.currentPropagationStep = 1; + } + } + + /** + * 对粒子应用效果(将其变为橙色并添加动画效果) + * @param {CandidateParticle} particle - 要应用效果的粒子 + */ + applyEffectToParticle(particle) { + // 如果粒子已经有效果,则跳过 + if (particle.hasEffect) return; + // 如果是原始红色粒子,则跳过 + if (particle.isRed && particle.originalIsRed === true) return; + + // 标记粒子已有效果 + particle.hasEffect = true; + + // 保存原始状态 + if (particle.originalIsRed === undefined) { + particle.originalIsRed = particle.isRed; + } + particle.originalChangeTimer = particle.changeTimer; + particle.originalX = particle.x; + particle.originalY = particle.y; + + // 设置效果属性 + particle.effectTimer = this.lifeTimer; + particle.isOrange = true; // 变为橙色 + particle.isRed = false; // 不再是红色 + particle.changeSpeedMultiplier = 3; // 字符变化速度加快 + particle.vibrationOffsetX = 0; // 振动偏移X + particle.vibrationOffsetY = 0; // 振动偏移Y + particle.vibrationPhase = random(TWO_PI); // 振动相位(随机) + } + + /** + * 查找与指定粒子真正连接的蓝色粒子(通过连接线连接) + * @param {CandidateParticle} particle - 源粒子 + * @returns {Array} 连接的蓝色粒子数组 + */ + findConnectedBlues(particle) { + let connected = []; + let usedParticles = new Set(); + + // 记录已使用的粒子(红色粒子和已传播的粒子) + usedParticles.add(this.redParticle); + for (let prop of this.propagatedParticles) { + usedParticles.add(prop.particle); + } + + // 只检查粒子connections数组中真正连接的粒子 + // 这样可以确保只在有连接线的粒子之间传递效果 + for (let connectedParticle of particle.connections) { + // 检查条件: + // 1. 粒子还没有效果 + // 2. 粒子不在已使用列表中 + // 3. 粒子不是红色 + // 4. 粒子不是橙色(已受影响的粒子) + if (!connectedParticle.hasEffect && + !usedParticles.has(connectedParticle) && + !connectedParticle.isRed && + !connectedParticle.isOrange) { + connected.push(connectedParticle); + } + } + + return connected; + } + + /** + * 更新效果传播和动画 + * @returns {boolean} 效果是否仍然有效 + */ + update() { + this.lifeTimer--; + this.propagationCounter++; + + // 每隔一定帧数进行一次传播 + if (this.propagationCounter >= this.propagationDelay && + this.currentPropagationStep < this.maxPropagationSteps) { + this.propagationCounter = 0; + + let nextPropagationQueue = []; + + // 从当前传播队列中的每个粒子继续传播 + for (let sourceParticle of this.propagationQueue) { + if (this.currentPropagationStep >= this.maxPropagationSteps) break; + + // 找到与源粒子连接的蓝色粒子(只查找真正有连接线的粒子) + let connectedBlueParticles = this.findConnectedBlues(sourceParticle); + + if (connectedBlueParticles.length > 0) { + // 随机选择一个连接的蓝色粒子 + let targetParticle = connectedBlueParticles[floor(random(connectedBlueParticles.length))]; + this.applyEffectToParticle(targetParticle); + + // 更新传播步数 + this.currentPropagationStep++; + + // 记录传播信息 + this.propagatedParticles.push({ + particle: targetParticle, + source: sourceParticle, + step: this.currentPropagationStep, + pulseProgress: 0 + }); + + // 如果还有传播步数,加入下一轮传播队列 + if (this.currentPropagationStep < this.maxPropagationSteps) { + nextPropagationQueue.push(targetParticle); + } + } + } + + // 更新传播队列 + this.propagationQueue = nextPropagationQueue.length > 0 ? nextPropagationQueue : []; + } + + // 更新所有已传播粒子的效果动画 + for (let propagationInfo of this.propagatedParticles) { + this.updateParticleEffectAnimation(propagationInfo.particle); + // 更新脉冲动画进度 + propagationInfo.pulseProgress += 0.15; + if (propagationInfo.pulseProgress > 1) { + propagationInfo.pulseProgress = 1; + } + } + + // 返回效果是否仍然有效 + return this.lifeTimer > 0; + } + + /** + * 更新粒子的效果动画(振动、透明度、缩放、发光) + * @param {CandidateParticle} particle - 要更新动画的粒子 + */ + updateParticleEffectAnimation(particle) { + if (!particle.hasEffect) return; + + particle.effectTimer--; + + // 振动效果:粒子位置轻微振动 + let vibrationIntensity = 2; + particle.vibrationPhase += 0.4; + particle.vibrationOffsetX = cos(particle.vibrationPhase) * vibrationIntensity; + particle.vibrationOffsetY = sin(particle.vibrationPhase * 1.3) * vibrationIntensity; + + // 透明度动画:周期性变化 + let alphaPhase = (frameCount * 0.1 + particle.vibrationPhase) % (TWO_PI); + particle.effectAlpha = map(sin(alphaPhase), -1, 1, 150, 255); + + // 缩放动画:周期性缩放 + let scalePhase = (frameCount * 0.15 + particle.vibrationPhase) % (TWO_PI); + particle.effectScale = map(sin(scalePhase), -1, 1, 0.95, 1.05); + + // 发光效果:根据透明度计算发光强度 + particle.effectGlow = map(particle.effectAlpha, 150, 255, 15, 25); + } + + /** + * 显示效果传播的视觉效果(连接线、脉冲、箭头) + */ + display() { + strokeWeight(2); + + // 遍历所有已传播的粒子,绘制传播效果 + for (let propagationInfo of this.propagatedParticles) { + if (propagationInfo.source) { + // 计算透明度:根据传播步数和剩余时间 + let stepAlpha = map(propagationInfo.step, 1, this.maxPropagationSteps, 255, 100); + let timeAlpha = map(this.lifeTimer, 0, 20, 0, 255); + let alpha = min(stepAlpha, timeAlpha); + + // 绘制连接线(从源粒子到目标粒子) + stroke(255, 150, 50, alpha * 0.3); + line(propagationInfo.source.x, propagationInfo.source.y, + propagationInfo.particle.x, propagationInfo.particle.y); + + // 绘制脉冲动画(沿着连接线移动的光点) + if (propagationInfo.pulseProgress < 1) { + let pulseX = lerp(propagationInfo.source.x, propagationInfo.particle.x, + propagationInfo.pulseProgress); + let pulseY = lerp(propagationInfo.source.y, propagationInfo.particle.y, + propagationInfo.pulseProgress); + + let pulseSize = map(propagationInfo.pulseProgress, 0, 1, 3, 8); + let pulseAlpha = map(propagationInfo.pulseProgress, 0, 1, 255, 0); + + // 绘制脉冲光点 + noStroke(); + fill(255, 200, 100, pulseAlpha); + ellipse(pulseX, pulseY, pulseSize); + + // 绘制脉冲光晕 + fill(255, 180, 80, pulseAlpha * 0.5); + ellipse(pulseX, pulseY, pulseSize * 2); + } + + // 绘制箭头(在连接线中间,表示传播方向) + if (propagationInfo.pulseProgress > 0.5 && propagationInfo.pulseProgress < 1) { + let arrowX = lerp(propagationInfo.source.x, propagationInfo.particle.x, 0.5); + let arrowY = lerp(propagationInfo.source.y, propagationInfo.particle.y, 0.5); + let angle = atan2(propagationInfo.particle.y - propagationInfo.source.y, + propagationInfo.particle.x - propagationInfo.source.x); + + push(); + translate(arrowX, arrowY); + rotate(angle); + stroke(255, 200, 100, alpha * 0.8); + strokeWeight(1.5); + fill(255, 200, 100, alpha * 0.8); + triangle(0, 0, -8, -4, -8, 4); + pop(); + } + } + } + } + + /** + * 清理效果:移除所有粒子的效果 + */ + cleanup() { + for (let propagationInfo of this.propagatedParticles) { + this.removeEffectFromParticle(propagationInfo.particle); + } + } + + /** + * 从粒子移除效果,恢复原始状态 + * @param {CandidateParticle} particle - 要移除效果的粒子 + */ + removeEffectFromParticle(particle) { + if (!particle.hasEffect) return; + + // 移除效果标记 + particle.hasEffect = false; + + // 恢复颜色状态 + if (particle.isOrange) { + particle.isOrange = false; + particle.isRed = false; + } + + // 恢复属性 + particle.changeSpeedMultiplier = 1; + particle.vibrationOffsetX = 0; + particle.vibrationOffsetY = 0; + + // 恢复原始计时器 + if (particle.originalChangeTimer !== undefined) { + particle.changeTimer = particle.originalChangeTimer; + } + } +} + +class FloatingText { + constructor(x, y) { + this.x = x; + this.y = y; + this.vx = random(-0.3, 0.3); + this.vy = random(-0.3, 0.3); + this.char = this.randomChar(); + this.alpha = random(10, 80); + this.size = random(fontSize - 10, fontSize + 2); + this.changeTimer = int(random(30, 80)); + } + + randomChar() { + return chineseChars.charAt(floor(random(chineseChars.length))); + } + + update() { + this.x += this.vx; + this.y += this.vy; + + if (this.x < textAreaX || this.x > textAreaX + textAreaWidth) { + this.vx *= -1; + this.x = constrain(this.x, textAreaX, textAreaX + textAreaWidth); + } + if (this.y < textAreaY || this.y > textAreaY + textAreaHeight) { + this.vy *= -1; + this.y = constrain(this.y, textAreaY, textAreaY + textAreaHeight); + } + + this.changeTimer--; + if (this.changeTimer <= 0) { + this.char = this.randomChar(); + this.changeTimer = int(random(30, 80)); + } + } + + display() { + let displayAlpha = this.alpha; + if (isCompleted && completionPhase !== 'none') { + displayAlpha = this.alpha * (fadeOutAlpha / 255); + } + + noStroke(); + fill(180, 200, 255, displayAlpha); + textSize(this.size); + text(this.char, this.x, this.y); + } +} + +class CandidateParticle { + constructor(x, y) { + this.x = x; + this.y = y; + this.vx = random(-0.5, 0.5); + this.vy = random(-0.5, 0.5); + this.char = this.randomChar(); + this.baseAlpha = 150; + this.size = fontSize; + this.prob = random(0.1, 1.0); + this.isRed = false; + this.isOrange = false; + this.changeTimer = int(random(30, 80)); + this.phraseGroup = null; + this.phraseIndex = 0; + this.isTemporaryRed = false; + this.tempRedTimer = 0; + this.connections = []; + this.isStatic = false; + this.originalIsRed = false; + this.hasEffect = false; + this.changeSpeedMultiplier = 1; + this.vibrationOffsetX = 0; + this.vibrationOffsetY = 0; + this.vibrationPhase = 0; + } + + randomChar() { + return chineseChars.charAt(floor(random(chineseChars.length))); + } + + randomWord() { + return chineseWords[floor(random(chineseWords.length))]; + } + + update() { + this.x += this.vx; + this.y += this.vy; + + if (this.x < textAreaX || this.x > textAreaX + textAreaWidth) { + this.vx *= -1; + this.x = constrain(this.x, textAreaX, textAreaX + textAreaWidth); + } + if (this.y < textAreaY || this.y > textAreaY + textAreaHeight) { + this.vy *= -1; + this.y = constrain(this.y, textAreaY, textAreaY + textAreaHeight); + } + + this.alpha = this.baseAlpha + this.prob * 105; + this.displaySize = this.size * (0.5 + this.prob); + + this.vx *= 0.95; + this.vy *= 0.95; + + if (!this.isStatic && !this.isCalmed) { + // 获取对应波形点的抚平程度(如果没有关联,使用整体平静进度) + let localCalmProgress = this.calmProgress !== undefined ? this.calmProgress : calmProgress; + + // 如果抚平程度高,停止字符变化 + if (localCalmProgress < 0.7) { + let changeSpeed = this.changeSpeedMultiplier || 1; + // 根据抚平程度减慢变化速度 + changeSpeed *= (1 - localCalmProgress); + this.changeTimer -= changeSpeed; + + if (this.changeTimer <= 0) { + if (phraseMode && this.phraseGroup) { + let word = this.randomWord(); + for (let i = 0; i < this.phraseGroup.length; i++) { + if (!this.phraseGroup[i].isStatic && !this.phraseGroup[i].isCalmed) { + let groupCalmProgress = this.phraseGroup[i].calmProgress !== undefined ? + this.phraseGroup[i].calmProgress : calmProgress; + if (groupCalmProgress < 0.7) { + if (i < word.length) { + this.phraseGroup[i].char = word.charAt(i); + } else { + this.phraseGroup[i].char = this.phraseGroup[i].randomChar(); + } + this.phraseGroup[i].changeTimer = int(random(30, 80)); + } + } + } + } else { + this.char = this.randomChar(); + this.changeTimer = int(random(30, 80)); + } + } + } + } + + if (this.hasEffect) { + if (this.changeSpeedMultiplier === undefined) { + this.changeSpeedMultiplier = 1; + } + if (this.vibrationOffsetX === undefined) { + this.vibrationOffsetX = 0; + this.vibrationOffsetY = 0; + this.vibrationPhase = random(TWO_PI); + } + } + + if (this.isTemporaryRed) { + this.tempRedTimer--; + if (this.tempRedTimer <= 0) { + this.isTemporaryRed = false; + } + } + } + + applyRippleAndRepel() { + for (let other of candidateParticles) { + if (other === this) continue; + let d = dist(this.x, this.y, other.x, other.y); + let minDist = (this.displaySize + other.displaySize) * 0.4; + if (d < minDist && d > 0) { + let angle = atan2(this.y - other.y, this.x - other.x); + let force = map(d, 0, minDist, 1.5, 0); + this.vx += cos(angle) * force * 0.1; + this.vy += sin(angle) * force * 0.1; + } + } + + for (let ripple of rippleEffects) { + let rd = dist(ripple.x, ripple.y, this.x, this.y); + if (rd < ripple.r + 60) { + let angle = atan2(ripple.y - this.y, ripple.x - this.x); + let force = map(ripple.r + 60 - rd, 0, ripple.r + 60, 0, 0.3); + this.vx += cos(angle) * force; + this.vy += sin(angle) * force; + } + } + + for (let repel of repelBursts) { + let d = dist(repel.x, repel.y, this.x, this.y); + if (d < repel.r) { + let angle = atan2(this.y - repel.y, this.x - repel.x); + let force = map(repel.r - d, 0, repel.r, 0, 1.2); + this.vx += cos(angle) * force; + this.vy += sin(angle) * force; + } + } + } + + display() { + noStroke(); + + // 计算显示位置:基础位置 + 效果振动 + 焦虑抖动 + 焦虑漂浮 + let displayX = this.x + (this.vibrationOffsetX || 0); + let displayY = this.y + (this.vibrationOffsetY || 0); + + // 获取对应波形点的抚平程度(如果没有关联,使用整体平静进度) + let localCalmProgress = this.calmProgress !== undefined ? this.calmProgress : calmProgress; + let dissolveProgress = this.dissolveProgress !== undefined ? this.dissolveProgress : 0; + + // 如果是红色粒子且在完成阶段,应用抖动和漂浮效果(根据抚平程度减少) + if (this.isRed && (completionPhase === 'revealing' || completionPhase === 'completed')) { + if (this.anxietyShakeX !== undefined && this.anxietyShakeY !== undefined) { + // 根据抚平程度减少抖动 + displayX += (this.anxietyShakeX || 0) * (1 - localCalmProgress); + displayY += ((this.anxietyShakeY || 0) + (this.anxietyFloatY || 0)) * (1 - localCalmProgress); + } + } + + let displaySize = this.displaySize; + if (this.hasEffect && this.effectScale !== undefined) { + displaySize = this.displaySize * this.effectScale; + } + + let glowBlur = 12 * this.prob; + if (this.hasEffect && this.effectGlow !== undefined) { + glowBlur = this.effectGlow; + } + drawingContext.shadowBlur = glowBlur; + + let displayAlpha = this.alpha; + if (this.hasEffect && this.effectAlpha !== undefined) { + displayAlpha = this.effectAlpha; + } + + // 根据消散进度减少透明度 + displayAlpha *= (1 - dissolveProgress); + + // 根据平静进度调整红色粒子的颜色(逐渐变淡) + if (this.isRed) { + if (completionPhase === 'revealing' || completionPhase === 'completed') { + // 在完成阶段,根据对应波形点的抚平程度调整颜色 + let redValue = map(localCalmProgress, 0, 1, 255, 200); + let greenValue = map(localCalmProgress, 0, 1, 100, 150); + let blueValue = map(localCalmProgress, 0, 1, 100, 150); + drawingContext.shadowColor = `rgba(${redValue},${greenValue},${blueValue},${this.prob * (1 - localCalmProgress * 0.5) * (1 - dissolveProgress)})`; + fill(redValue, greenValue, blueValue, displayAlpha); + } else { + // 正常游戏阶段,显示正常的红色 + drawingContext.shadowColor = `rgba(255,100,100,${this.prob})`; + fill(255, 100, 100, displayAlpha); + } + } else if (this.isOrange) { + if (isCompleted && completionPhase !== 'none') { + displayAlpha = displayAlpha * (fadeOutAlpha / 255); + } + drawingContext.shadowColor = `rgba(255,150,50,${this.prob * (fadeOutAlpha / 255)})`; + fill(255, 150, 50, displayAlpha); + } else if (this.isTemporaryRed) { + drawingContext.shadowColor = `rgba(255,150,150,${this.prob})`; + fill(255, 150, 150, displayAlpha); + } else { + if (isCompleted && completionPhase !== 'none') { + displayAlpha = displayAlpha * (fadeOutAlpha / 255); + } + drawingContext.shadowColor = `rgba(50,200,255,${this.prob * (fadeOutAlpha / 255)})`; + fill(50, 200, 255, displayAlpha); + } + + if (this.hasEffect && this.changeTimer !== undefined && this.changeTimer > 0 && this.changeTimer < 5) { + let highlightAlpha = map(this.changeTimer, 0, 5, 255, displayAlpha); + if (this.isOrange) { + fill(255, 180, 80, highlightAlpha); + } else if (this.isRed) { + fill(255, 150, 150, highlightAlpha); + } else { + fill(50, 200, 255, highlightAlpha); + } + } + + textSize(displaySize); + text(this.char, displayX, displayY); + drawingContext.shadowBlur = 0; + } +} + +class Ripple { + constructor(x, y) { + this.x = x; + this.y = y; + this.r = 10; + this.alpha = 200; + } + + update() { + this.r += 3; + this.alpha -= 4; + } + + display() { + noFill(); + stroke(100, 200, 255, this.alpha); + strokeWeight(2); + ellipse(this.x, this.y, this.r * 2); + } +} + +class RepelBurst { + constructor(x, y) { + this.x = x; + this.y = y; + this.r = 10; + this.alpha = 180; + } + + update() { + this.r += 6; + this.alpha -= 5; + } + + display() { + noFill(); + stroke(255, 150, 100, this.alpha); + strokeWeight(2); + ellipse(this.x, this.y, this.r * 2); + } +} diff --git a/Assets/Scripts/MiniGame/HuoShan/Emo/尝试2.txt.meta b/Assets/Scripts/MiniGame/HuoShan/Emo/尝试2.txt.meta new file mode 100644 index 000000000..46d227e23 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Emo/尝试2.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 632d2ea6fbd2c684e90cbd7f7e77036a +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/Language.meta b/Assets/Scripts/MiniGame/HuoShan/Language.meta new file mode 100644 index 000000000..7569e51dd --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a1958c693a891564ca52d09de765d438 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs b/Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs new file mode 100644 index 000000000..323a8022a --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs @@ -0,0 +1,203 @@ +using UnityEngine; +using System.Collections.Generic; + +namespace AibisDream.MiniGame.Language +{ + /// + /// 候选粒子(可交互的主要粒子) + /// + public class CandidateParticle : TextParticle + { + [Header("粒子状态")] + public bool isRed = false; // 是否是红色目标粒子 + public bool isOrange = false; // 是否受到效果影响(橙色) + public bool originalIsRed = false; // 原始是否为红色 + public bool hasEffect = false; // 是否有效果 + public bool isTemporaryRed = false; // 临时红色状态 + + [Header("连接")] + public List connections = new List(); + + [Header("效果")] + public float changeSpeedMultiplier = 1f; + public Vector2 vibrationOffset; + public float vibrationPhase; + public float effectTimer; + public float effectAlpha; + public float effectScale = 1f; + public float effectGlow; + + [Header("焦虑效果")] + public float anxietyShakePhase; + public float anxietyShakeIntensity; + public float anxietyFloatPhase; + public float anxietyFloatSpeed; + public Vector2 anxietyShakeOffset; + public float anxietyFloatY; + + [Header("波形关联")] + public float calmProgress = 0f; // 平静进度(0-1) + public float dissolveProgress = 0f; // 消散进度(0-1) + public WaveformPoint waveformPoint; // 关联的波形点 + + protected override void Awake() + { + base.Awake(); + + baseAlpha = 0.6f; // 0-1 范围的透明度 + probability = Random.Range(0.1f, 1f); + alpha = baseAlpha + probability * 0.4f; // 最大 1.0 + size = 3f; + velocity = new Vector2(Random.Range(-0.5f, 0.5f), Random.Range(-0.5f, 0.5f)); + changeInterval = Random.Range(1f, 2.5f); + + if (textMesh != null) + { + textMesh.fontSize = size; + } + } + + protected override void Update() + { + base.Update(); + + // 更新效果动画 + if (hasEffect) + { + UpdateEffectAnimation(); + } + + // 更新焦虑效果 + if (isRed && (anxietyShakeIntensity > 0)) + { + UpdateAnxietyEffect(); + } + } + + private void UpdateEffectAnimation() + { + if (effectTimer > 0) + { + effectTimer -= Time.deltaTime; + + // 振动效果 + vibrationPhase += Time.deltaTime * 15f; + float vibrationIntensity = 0.02f; + vibrationOffset = new Vector2( + Mathf.Cos(vibrationPhase) * vibrationIntensity, + Mathf.Sin(vibrationPhase * 1.3f) * vibrationIntensity + ); + + // 透明度动画(0-1 范围) + effectAlpha = Mathf.Lerp(0.6f, 1f, (Mathf.Sin(Time.time * 3f) + 1f) / 2f); + + // 缩放动画 + effectScale = Mathf.Lerp(0.95f, 1.05f, (Mathf.Sin(Time.time * 4.5f) + 1f) / 2f); + + // 发光强度 + effectGlow = Mathf.Lerp(0.06f, 0.1f, (effectAlpha - 0.6f) / 0.4f); + } + } + + private void UpdateAnxietyEffect() + { + // 根据平静进度减少抖动强度 + float shakeIntensity = anxietyShakeIntensity * (1 - calmProgress) * 0.01f; + float floatAmplitude = 0.03f * (1 - calmProgress); + + if (calmProgress < 0.9f) + { + anxietyShakePhase += Time.deltaTime * 10f; + anxietyFloatPhase += anxietyFloatSpeed; + } + + // 计算抖动偏移 + anxietyShakeOffset = new Vector2( + Mathf.Cos(anxietyShakePhase) * shakeIntensity + Mathf.Sin(anxietyShakePhase * 1.7f) * shakeIntensity * 0.5f, + Mathf.Sin(anxietyShakePhase * 1.3f) * shakeIntensity + Mathf.Cos(anxietyShakePhase * 0.9f) * shakeIntensity * 0.5f + ); + + // 计算漂浮偏移 + anxietyFloatY = Mathf.Sin(anxietyFloatPhase) * floatAmplitude; + } + + protected override void UpdateVisuals() + { + if (textMesh == null) return; + + // 计算显示位置 + Vector3 displayOffset = (Vector3)(vibrationOffset + anxietyShakeOffset) + Vector3.up * anxietyFloatY; + textMesh.transform.localPosition = displayOffset; + + // 计算颜色和透明度 + Color color = Color.white; + float displayAlpha = alpha; + + if (hasEffect && effectTimer > 0) + { + displayAlpha = effectAlpha; + textMesh.transform.localScale = Vector3.one * effectScale; + } + + // 根据消散进度减少透明度 + displayAlpha *= (1 - dissolveProgress); + + if (isRed) + { + // 红色粒子:根据平静进度调整颜色 + float r = Mathf.Lerp(1f, 0.78f, calmProgress); + float g = Mathf.Lerp(0.39f, 0.59f, calmProgress); + float b = Mathf.Lerp(0.39f, 0.59f, calmProgress); + color = new Color(r, g, b, displayAlpha); // displayAlpha 已经是 0-1 范围 + } + else if (isOrange) + { + color = new Color(1f, 0.59f, 0.2f, displayAlpha); + } + else + { + color = new Color(0.2f, 0.78f, 1f, displayAlpha); + } + + textMesh.color = color; + + // 更新光晕 + if (glowSprite != null) + { + glowSprite.color = new Color(color.r, color.g, color.b, color.a * 0.5f); + float glowScale = probability * 0.5f; + if (hasEffect) + glowScale += effectGlow; + glowSprite.transform.localScale = Vector3.one * glowScale; + } + } + + public void InitializeAnxietyEffect() + { + anxietyShakePhase = Random.Range(0f, Mathf.PI * 2f); + anxietyShakeIntensity = Random.Range(2f, 4f); + anxietyFloatPhase = Random.Range(0f, Mathf.PI * 2f); + anxietyFloatSpeed = Random.Range(0.02f, 0.04f); + } + + public void ApplyEffect(float duration = 1f) + { + hasEffect = true; + effectTimer = duration; + isOrange = true; + isRed = false; + changeSpeedMultiplier = 3f; + vibrationPhase = Random.Range(0f, Mathf.PI * 2f); + } + + public void RemoveEffect() + { + hasEffect = false; + isOrange = false; + isRed = false; + changeSpeedMultiplier = 1f; + vibrationOffset = Vector2.zero; + effectTimer = 0; + } + } +} diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs.meta b/Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs.meta similarity index 83% rename from Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs.meta rename to Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs.meta index 0959e71e6..b69762fce 100644 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs.meta +++ b/Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: bc6c154e0dac2e6469211e12b1f05fce +guid: fe9b66f677d7a024c8f232d03839b2ff MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs b/Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs new file mode 100644 index 000000000..48b50169d --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs @@ -0,0 +1,210 @@ +using UnityEngine; +using System.Collections.Generic; +using Shapes; + +namespace AibisDream.MiniGame.Language +{ + /// + /// 连接线渲染器:使用Shapes绘制粒子间的连接线 + /// + [ExecuteAlways] + public class ConnectionRenderer : ImmediateModeShapeDrawer + { + [Header("引用")] + public LanguageParticleManager manager; + + [Header("连接线设置")] + public float connectionDistance = 2f; + public Color blueConnectionColor = new Color(0.39f, 0.78f, 1f, 0.7f); + public Color redConnectionColor = new Color(1f, 0.39f, 0.39f, 1f); + public float blueLineThickness = 0.02f; + public float redLineThickness = 0.04f; + + [Header("效果传播设置")] + public Color propagationColor = new Color(1f, 0.59f, 0.2f, 1f); + public float propagationLineThickness = 0.03f; + + private List candidateParticles; + private List effectPropagations; + private CompletionPhase completionPhase; + private float fadeOutAlpha; + + public void SetData( + List candidates, + List propagations, + CompletionPhase phase, + float fadeAlpha) + { + candidateParticles = candidates; + effectPropagations = propagations; + completionPhase = phase; + fadeOutAlpha = fadeAlpha; + } + + public override void DrawShapes(Camera cam) + { + if (candidateParticles == null || candidateParticles.Count == 0) + return; + + using (Draw.Command(cam)) + { + Draw.BlendMode = ShapesBlendMode.Transparent; + Draw.ZTest = UnityEngine.Rendering.CompareFunction.Always; + + // 绘制蓝色粒子间的连线 + if (completionPhase == CompletionPhase.None || completionPhase == CompletionPhase.Arranging) + { + DrawBlueConnections(); + } + + // 绘制红色粒子间的连线 + if (completionPhase == CompletionPhase.None || completionPhase == CompletionPhase.Arranging) + { + DrawRedConnections(); + } + + // 绘制效果传播线 + if (effectPropagations != null && effectPropagations.Count > 0) + { + DrawPropagationEffects(); + } + } + } + + private void DrawBlueConnections() + { + Draw.LineGeometry = LineGeometry.Flat2D; + Draw.Thickness = blueLineThickness; + + for (int i = 0; i < candidateParticles.Count; i++) + { + for (int j = i + 1; j < candidateParticles.Count; j++) + { + var p1 = candidateParticles[i]; + var p2 = candidateParticles[j]; + + // 跳过红色粒子 + if (p1.isRed && p2.isRed) continue; + + float distance = Vector3.Distance(p1.transform.position, p2.transform.position); + if (distance < connectionDistance) + { + float alpha = Mathf.Lerp(0.7f, 0f, distance / connectionDistance) * fadeOutAlpha; + Color lineColor = blueConnectionColor; + lineColor.a = alpha; + + Draw.Line(p1.transform.position, p2.transform.position, lineColor); + } + } + } + } + + private void DrawRedConnections() + { + Draw.LineGeometry = LineGeometry.Flat2D; + Draw.Thickness = redLineThickness; + + var redParticles = new List(); + foreach (var p in candidateParticles) + { + if (p.isRed) + redParticles.Add(p); + } + + for (int i = 0; i < redParticles.Count; i++) + { + for (int j = i + 1; j < redParticles.Count; j++) + { + float distance = Vector3.Distance( + redParticles[i].transform.position, + redParticles[j].transform.position + ); + + if (distance < connectionDistance) + { + float alpha = Mathf.Lerp(1f, 0.4f, distance / connectionDistance); + Color lineColor = redConnectionColor; + lineColor.a = alpha; + + Draw.Line(redParticles[i].transform.position, redParticles[j].transform.position, lineColor); + } + } + } + } + + private void DrawPropagationEffects() + { + Draw.LineGeometry = LineGeometry.Flat2D; + Draw.Thickness = propagationLineThickness; + + foreach (var propagation in effectPropagations) + { + if (propagation.PropagatedParticles == null) continue; + + foreach (var info in propagation.PropagatedParticles) + { + if (info.source == null || info.particle == null) continue; + + // 绘制连接线 + Color lineColor = propagationColor; + lineColor.a = 0.3f; + Draw.Line(info.source.transform.position, info.particle.transform.position, lineColor); + + // 绘制脉冲光点 + if (info.pulseProgress < 1f) + { + Vector3 pulsePos = Vector3.Lerp( + info.source.transform.position, + info.particle.transform.position, + info.pulseProgress + ); + + float pulseSize = Mathf.Lerp(0.03f, 0.08f, info.pulseProgress); + float pulseAlpha = Mathf.Lerp(1f, 0f, info.pulseProgress); + + Color pulseColor = new Color(1f, 0.78f, 0.39f, pulseAlpha); + Draw.Ring(pulsePos, pulseSize, pulseSize * 0.5f, pulseColor); + + // 光晕 + pulseColor.a = pulseAlpha * 0.5f; + Draw.Disc(pulsePos, pulseSize * 1.5f, pulseColor); + } + + // 绘制箭头 + if (info.pulseProgress > 0.5f && info.pulseProgress < 1f) + { + Vector3 arrowPos = Vector3.Lerp( + info.source.transform.position, + info.particle.transform.position, + 0.5f + ); + + Vector3 direction = (info.particle.transform.position - info.source.transform.position).normalized; + float angle = Mathf.Atan2(direction.y, direction.x); + + Color arrowColor = new Color(1f, 0.78f, 0.39f, 0.8f); + DrawArrow(arrowPos, angle, 0.1f, arrowColor); + } + } + } + } + + private void DrawArrow(Vector3 position, float angle, float size, Color color) + { + Vector3 tip = position + new Vector3(Mathf.Cos(angle), Mathf.Sin(angle), 0) * size; + Vector3 left = position + new Vector3( + Mathf.Cos(angle + 2.5f), + Mathf.Sin(angle + 2.5f), + 0 + ) * size * 0.5f; + Vector3 right = position + new Vector3( + Mathf.Cos(angle - 2.5f), + Mathf.Sin(angle - 2.5f), + 0 + ) * size * 0.5f; + + Draw.Triangle(tip, left, right, color); + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs.meta b/Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs.meta similarity index 83% rename from Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs.meta rename to Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs.meta index b2b973262..5c9a8c9e1 100644 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs.meta +++ b/Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: c5da4de45a1d4c741b06d9c9c0519ff4 +guid: d7feb80748ec75e4eb986d0d676dfa04 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs b/Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs new file mode 100644 index 000000000..66ff537f9 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs @@ -0,0 +1,154 @@ +using UnityEngine; +using System.Collections.Generic; + +namespace AibisDream.MiniGame.Language +{ + /// + /// 效果传播信息 + /// + public class PropagationInfo + { + public CandidateParticle particle; + public CandidateParticle source; + public int step; + public float pulseProgress; + + public PropagationInfo(CandidateParticle particle, CandidateParticle source, int step) + { + this.particle = particle; + this.source = source; + this.step = step; + this.pulseProgress = 0f; + } + } + + /// + /// 效果传播系统:管理从红色粒子到蓝色粒子的效果传递 + /// + public class EffectPropagation + { + private CandidateParticle redParticle; + private List propagatedParticles = new List(); + private List propagationQueue = new List(); + + private float lifeTimer; + private float propagationDelay = 0.05f; + private float propagationCounter = 0f; + private int maxPropagationSteps = 8; + private int currentPropagationStep = 0; + + public bool IsActive => lifeTimer > 0; + public List PropagatedParticles => propagatedParticles; + + public EffectPropagation(CandidateParticle redParticle, float duration = 1f) + { + this.redParticle = redParticle; + this.lifeTimer = duration; + + // 从红色粒子开始传播 + var connectedBlues = FindConnectedBlues(redParticle); + if (connectedBlues.Count > 0 && currentPropagationStep < maxPropagationSteps) + { + // 随机选择一个连接的蓝色粒子 + var targetParticle = connectedBlues[Random.Range(0, connectedBlues.Count)]; + ApplyEffectToParticle(targetParticle); + + // 记录传播信息 + propagatedParticles.Add(new PropagationInfo(targetParticle, redParticle, 1)); + + // 加入传播队列 + propagationQueue.Add(targetParticle); + currentPropagationStep = 1; + } + } + + public void Update(float deltaTime) + { + lifeTimer -= deltaTime; + propagationCounter += deltaTime; + + // 定期传播 + if (propagationCounter >= propagationDelay && currentPropagationStep < maxPropagationSteps) + { + propagationCounter = 0f; + + List nextQueue = new List(); + + foreach (var sourceParticle in propagationQueue) + { + if (currentPropagationStep >= maxPropagationSteps) break; + + var connectedBlues = FindConnectedBlues(sourceParticle); + if (connectedBlues.Count > 0) + { + var targetParticle = connectedBlues[Random.Range(0, connectedBlues.Count)]; + ApplyEffectToParticle(targetParticle); + + currentPropagationStep++; + + propagatedParticles.Add(new PropagationInfo(targetParticle, sourceParticle, currentPropagationStep)); + + if (currentPropagationStep < maxPropagationSteps) + { + nextQueue.Add(targetParticle); + } + } + } + + propagationQueue = nextQueue; + } + + // 更新所有传播粒子的脉冲动画 + foreach (var info in propagatedParticles) + { + info.pulseProgress += deltaTime * 5f; + if (info.pulseProgress > 1f) + info.pulseProgress = 1f; + } + } + + private List FindConnectedBlues(CandidateParticle particle) + { + List connected = new List(); + HashSet usedParticles = new HashSet(); + + // 记录已使用的粒子 + usedParticles.Add(redParticle); + foreach (var prop in propagatedParticles) + { + usedParticles.Add(prop.particle); + } + + // 只检查真正连接的粒子 + foreach (var connectedParticle in particle.connections) + { + if (!connectedParticle.hasEffect && + !usedParticles.Contains(connectedParticle) && + !connectedParticle.isRed && + !connectedParticle.isOrange) + { + connected.Add(connectedParticle); + } + } + + return connected; + } + + private void ApplyEffectToParticle(CandidateParticle particle) + { + if (particle.hasEffect) return; + if (particle.isRed && particle.originalIsRed) return; + + particle.ApplyEffect(lifeTimer); + } + + public void Cleanup() + { + foreach (var info in propagatedParticles) + { + info.particle.RemoveEffect(); + } + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs.meta b/Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs.meta similarity index 83% rename from Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs.meta rename to Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs.meta index 8dbc7fa7f..b2fcf2d61 100644 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs.meta +++ b/Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: ce8085db413e67d4c9ddd8a3415ae3cf +guid: 13d2bba97b998f049bb52f097b0f597c MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs b/Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs new file mode 100644 index 000000000..a43b3fd9b --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs @@ -0,0 +1,42 @@ +using UnityEngine; + +namespace AibisDream.MiniGame.Language +{ + /// + /// 背景浮动文字粒子 + /// + public class FloatingTextParticle : TextParticle + { + protected override void Awake() + { + base.Awake(); + + // 背景文字特性 + baseAlpha = Random.Range(0.04f, 0.1f); // 0-1 范围的透明度 + alpha = baseAlpha; + size = Random.Range(1.5f, 2.5f); + velocity = new Vector2(Random.Range(-0.3f, 0.3f), Random.Range(-0.3f, 0.3f)); + changeInterval = Random.Range(0.5f, 0.7f); + + if (textMesh != null) + { + textMesh.fontSize = size; + textMesh.color = new Color(0.7f, 0.78f, 1f, alpha); + } + } + + protected override void UpdateVisuals() + { + if (textMesh != null) + { + Color color = new Color(0.7f, 0.78f, 1f, alpha); + textMesh.color = color; + } + + if (glowSprite != null) + { + glowSprite.color = new Color(0.7f, 0.78f, 1f, alpha * 0.3f); + } + } + } +} diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs.meta b/Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs.meta similarity index 83% rename from Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs.meta rename to Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs.meta index 70d934783..93cfa4990 100644 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs.meta +++ b/Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 68f10137fe541b44485fa63022e29524 +guid: f7f33e95ffe9c50418758691861b6ebd MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs new file mode 100644 index 000000000..b86560dd2 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs @@ -0,0 +1,795 @@ +using UnityEngine; +using System.Collections.Generic; +using System.Linq; +using DG.Tweening; +using Shapes; +using TMPro; + +namespace AibisDream.MiniGame.Language +{ + /// + /// 游戏完成阶段 + /// + public enum CompletionPhase + { + None, // 未完成 + Arranging, // 排列中 + Revealing, // 揭示中 + Completed // 已完成 + } + + /// + /// 语言粒子系统主管理器 + /// + public class LanguageParticleManager : MonoBehaviour + { + [Header("Canvas设置")] + [SerializeField] private Canvas worldCanvas; + [SerializeField] private float canvasSize = 10f; + + [Header("字体设置")] + [SerializeField] private TMP_FontAsset chineseFontAsset; + + [Header("粒子预制体")] + [SerializeField] private GameObject floatingParticlePrefab; + [SerializeField] private GameObject candidateParticlePrefab; + + [Header("粒子数量")] + [SerializeField] private int floatingCount = 100; + [SerializeField] private int candidateCount = 50; + [SerializeField] private int redParticleCount = 8; + + [Header("游戏参数")] + [SerializeField] private float connectionDistance = 2f; // Unity单位 + [SerializeField] private float textMargin = 1f; + + [Header("目标句子")] + [SerializeField] private string targetSentence = "别过来我感觉害怕"; + + [Header("波形参数")] + [SerializeField] private float waveformAmplitude = 0.3f; + [SerializeField] private float interactionRadius = 0.5f; + + [Header("鼠标交互参数")] + [SerializeField] private float mouseInteractionRadius = 1.5f; + [SerializeField] private float repulsionForce = 2f; + [SerializeField] private float attractionForce = 1.5f; + + // 粒子列表 + private List floatingParticles = new List(); + private List candidateParticles = new List(); + private List redParticles = new List(); + + // 效果系统 + private List effectPropagations = new List(); + private Dictionary previousConnections = new Dictionary(); + private bool initializationComplete = false; + private int initializationFrames = 0; + + // 游戏状态 + private bool isCompleted = false; + private CompletionPhase completionPhase = CompletionPhase.None; + private float completionTimer = 0f; + private float fadeOutAlpha = 1f; + private List orderedRedParticles = new List(); + private List targetPositions = new List(); + + // 波形系统 + private List waveformPoints = new List(); + private float calmProgress = 0f; + private Vector2 lastMousePos; + private float mouseDragSpeed; + + // 边界 + private Bounds movementBounds; + + // 连接渲染(使用Shapes) + private ConnectionRenderer connectionRenderer; + private WaveformRenderer waveformRenderer; + + private void Start() + { + InitializeCanvas(); + InitializeParticles(); + InitializeRenderers(); + } + + private void InitializeCanvas() + { + // 如果没有指定canvas,创建一个 + if (worldCanvas == null) + { + GameObject canvasObj = new GameObject("Language Canvas"); + canvasObj.transform.SetParent(transform); + canvasObj.transform.localPosition = Vector3.zero; + worldCanvas = canvasObj.AddComponent(); + worldCanvas.renderMode = RenderMode.WorldSpace; + + RectTransform rectTransform = canvasObj.GetComponent(); + rectTransform.sizeDelta = new Vector2(canvasSize, canvasSize); + } + + // 确保 Canvas 配置正确 + if (worldCanvas != null) + { + // 设置 WorldSpace Canvas 的相机 + if (worldCanvas.worldCamera == null) + { + worldCanvas.worldCamera = Camera.main; + } + } + + // 设置运动边界 + float halfSize = canvasSize / 2f - textMargin; + movementBounds = new Bounds( + worldCanvas.transform.position, + new Vector3(halfSize * 2f, halfSize * 2f, 0f) + ); + } + + private void InitializeParticles() + { + // 创建背景浮动文字 + for (int i = 0; i < floatingCount; i++) + { + Vector3 pos = GetRandomPositionInBounds(); + GameObject obj = CreateParticleObject(pos, $"FloatingParticle_{i}"); + FloatingTextParticle particle = obj.AddComponent(); + particle.SetFont(chineseFontAsset); + particle.SetMovementBounds(movementBounds); + floatingParticles.Add(particle); + } + + // 创建候选粒子 + for (int i = 0; i < candidateCount; i++) + { + Vector3 pos = GetRandomPositionInBounds(); + GameObject obj = CreateParticleObject(pos, $"CandidateParticle_{i}"); + CandidateParticle particle = obj.AddComponent(); + particle.SetFont(chineseFontAsset); + particle.SetMovementBounds(movementBounds); + candidateParticles.Add(particle); + } + + // 选择红色粒子 + SelectRedParticles(); + } + + private GameObject CreateParticleObject(Vector3 position, string name) + { + GameObject obj = new GameObject(name); + + // 添加 RectTransform(在 Canvas 下必需) + RectTransform rectTransform = obj.AddComponent(); + rectTransform.SetParent(worldCanvas.transform, false); + rectTransform.position = position; + rectTransform.localScale = Vector3.one; + rectTransform.sizeDelta = Vector2.zero; // 父对象不需要大小 + + return obj; + } + + private Vector3 GetRandomPositionInBounds() + { + float x = Random.Range(movementBounds.min.x, movementBounds.max.x); + float y = Random.Range(movementBounds.min.y, movementBounds.max.y); + return new Vector3(x, y, 0f); + } + + private void InitializeRenderers() + { + // 连接线渲染器 + GameObject connObj = new GameObject("ConnectionRenderer"); + connObj.transform.SetParent(transform); + connObj.transform.localPosition = Vector3.zero; + connectionRenderer = connObj.AddComponent(); + connectionRenderer.manager = this; + connectionRenderer.connectionDistance = connectionDistance; + + // 波形渲染器 + GameObject waveObj = new GameObject("WaveformRenderer"); + waveObj.transform.SetParent(transform); + waveObj.transform.localPosition = Vector3.zero; + waveformRenderer = waveObj.AddComponent(); + waveformRenderer.interactionRadius = interactionRadius; + } + + private void SelectRedParticles() + { + redParticles.Clear(); + List shuffled = candidateParticles.OrderBy(x => Random.value).ToList(); + float minDistance = Mathf.Min(movementBounds.size.x, movementBounds.size.y) / (redParticleCount * 0.8f); + + foreach (var particle in shuffled) + { + if (redParticles.Count >= redParticleCount) break; + + bool tooClose = false; + foreach (var selected in redParticles) + { + if (Vector3.Distance(particle.transform.position, selected.transform.position) < minDistance) + { + tooClose = true; + break; + } + } + + if (!tooClose || redParticles.Count == 0) + { + particle.isRed = true; + particle.originalIsRed = true; + redParticles.Add(particle); + } + } + + // 如果不够,强制添加 + int remaining = redParticleCount - redParticles.Count; + for (int i = 0; i < remaining && i < shuffled.Count; i++) + { + if (!shuffled[i].isRed) + { + shuffled[i].isRed = true; + shuffled[i].originalIsRed = true; + redParticles.Add(shuffled[i]); + } + } + } + + private void Update() + { + // 初始化检查 + if (!initializationComplete) + { + initializationFrames++; + if (initializationFrames >= 30) + { + initializationComplete = true; + } + else if (initializationFrames >= 20) + { + // 建立初始连接状态 + BuildConnectionMap(); + } + } + + // 更新连接 + UpdateConnections(); + + // 检测连接变化(触发效果传播) + if (initializationComplete && completionPhase == CompletionPhase.None) + { + DetectConnectionChanges(); + } + + // 更新效果传播 + UpdateEffectPropagations(); + + // 检测完成状态 + if (!isCompleted && completionPhase == CompletionPhase.None) + { + if (CheckRedParticlesConnected()) + { + isCompleted = true; + StartCompletionSequence(); + } + } + + // 更新完成动画 + if (isCompleted) + { + UpdateCompletionAnimation(); + } + + // 更新波形 + if (completionPhase == CompletionPhase.Revealing || completionPhase == CompletionPhase.Completed) + { + UpdateWaveform(); + } + + // 更新输入 + UpdateInput(); + + // 更新渲染器数据 + UpdateRenderers(); + } + + private void UpdateRenderers() + { + // 更新连接线渲染器 + if (connectionRenderer != null) + { + connectionRenderer.SetData( + candidateParticles, + effectPropagations, + completionPhase, + fadeOutAlpha + ); + } + + // 更新波形渲染器 + if (waveformRenderer != null) + { + Vector2 mousePos = GetMouseWorldPosition(); + bool mouseDown = Input.GetMouseButton(0); + waveformRenderer.SetData( + waveformPoints, + completionPhase, + calmProgress, + mousePos, + mouseDown, + mouseDragSpeed + ); + } + } + + private void UpdateConnections() + { + // 重置所有连接 + foreach (var particle in candidateParticles) + { + particle.connections.Clear(); + } + + // 检测连接 + for (int i = 0; i < candidateParticles.Count; i++) + { + for (int j = i + 1; j < candidateParticles.Count; j++) + { + float distance = Vector3.Distance( + candidateParticles[i].transform.position, + candidateParticles[j].transform.position + ); + + if (distance < connectionDistance) + { + candidateParticles[i].connections.Add(candidateParticles[j]); + candidateParticles[j].connections.Add(candidateParticles[i]); + } + } + } + } + + private void BuildConnectionMap() + { + previousConnections.Clear(); + for (int i = 0; i < candidateParticles.Count; i++) + { + for (int j = i + 1; j < candidateParticles.Count; j++) + { + float distance = Vector3.Distance( + candidateParticles[i].transform.position, + candidateParticles[j].transform.position + ); + + if (distance < connectionDistance) + { + string key = $"{Mathf.Min(i, j)}-{Mathf.Max(i, j)}"; + previousConnections[key] = true; + } + } + } + } + + private void DetectConnectionChanges() + { + Dictionary currentConnections = new Dictionary(); + + for (int i = 0; i < candidateParticles.Count; i++) + { + for (int j = i + 1; j < candidateParticles.Count; j++) + { + float distance = Vector3.Distance( + candidateParticles[i].transform.position, + candidateParticles[j].transform.position + ); + + if (distance < connectionDistance) + { + string key = $"{Mathf.Min(i, j)}-{Mathf.Max(i, j)}"; + currentConnections[key] = true; + + // 检测新连接 + if (!previousConnections.ContainsKey(key)) + { + var p1 = candidateParticles[i]; + var p2 = candidateParticles[j]; + + // 检查是否是红色粒子与蓝色粒子的新连接 + bool isRedToBlue = (p1.isRed && !p2.isRed && !p2.isOrange && p1.originalIsRed) || + (!p1.isRed && !p1.isOrange && p2.isRed && p2.originalIsRed); + + if (isRedToBlue) + { + var redParticle = p1.isRed ? p1 : p2; + var blueParticle = p1.isRed ? p2 : p1; + + if (!blueParticle.isStatic && !blueParticle.hasEffect) + { + TriggerEffectPropagation(redParticle, blueParticle); + } + } + } + } + } + } + + previousConnections = currentConnections; + } + + private void TriggerEffectPropagation(CandidateParticle redParticle, CandidateParticle blueParticle) + { + effectPropagations.Add(new EffectPropagation(redParticle, 1f)); + } + + private void UpdateEffectPropagations() + { + for (int i = effectPropagations.Count - 1; i >= 0; i--) + { + effectPropagations[i].Update(Time.deltaTime); + + if (!effectPropagations[i].IsActive) + { + effectPropagations[i].Cleanup(); + effectPropagations.RemoveAt(i); + } + } + } + + private bool CheckRedParticlesConnected() + { + if (redParticles.Count == 0) return false; + if (redParticles.Count == 1) return true; + + // 检查所有红色粒子是否连通 + HashSet visited = new HashSet(); + Queue queue = new Queue(); + queue.Enqueue(redParticles[0]); + visited.Add(redParticles[0]); + + while (queue.Count > 0) + { + var current = queue.Dequeue(); + foreach (var connected in current.connections) + { + if (connected.isRed && !visited.Contains(connected)) + { + visited.Add(connected); + queue.Enqueue(connected); + } + } + } + + if (visited.Count != redParticles.Count) + return false; + + // 检查红色粒子是否与蓝色粒子分离 + foreach (var red in redParticles) + { + foreach (var other in candidateParticles) + { + if (other.isRed) continue; + + float dist = Vector3.Distance(red.transform.position, other.transform.position); + if (dist < connectionDistance) + return false; + } + } + + return true; + } + + private void StartCompletionSequence() + { + completionPhase = CompletionPhase.Arranging; + completionTimer = 0f; + fadeOutAlpha = 1f; + + // 重置波形 + calmProgress = 0f; + waveformPoints.Clear(); + + // 获取排序的红色粒子 + orderedRedParticles = GetOrderedRedParticles(); + int displayLength = Mathf.Min(orderedRedParticles.Count, targetSentence.Length); + + // 计算目标位置 + float spacing = 0.8f; + float totalWidth = displayLength * spacing; + float startX = -totalWidth / 2f + spacing / 2f; + float centerY = 0f; + + targetPositions.Clear(); + for (int i = 0; i < displayLength; i++) + { + targetPositions.Add(new Vector3(startX + i * spacing, centerY, 0f)); + } + + if (orderedRedParticles.Count > displayLength) + { + orderedRedParticles = orderedRedParticles.Take(displayLength).ToList(); + } + + // 清理效果 + effectPropagations.Clear(); + + // 停止非红色粒子 + foreach (var p in candidateParticles) + { + if (!p.isRed) + { + p.velocity = Vector2.zero; + if (p.isOrange) + { + p.RemoveEffect(); + } + } + } + } + + private List GetOrderedRedParticles() + { + if (redParticles.Count == 0) return new List(); + if (redParticles.Count == 1) return new List(redParticles); + + // 从最左边的粒子开始 + var ordered = new List(); + var startParticle = redParticles.OrderBy(p => p.transform.position.x).First(); + + HashSet visited = new HashSet(); + Stack stack = new Stack(); + stack.Push(startParticle); + visited.Add(startParticle); + + while (stack.Count > 0) + { + var current = stack.Pop(); + ordered.Add(current); + + foreach (var connected in current.connections) + { + if (connected.isRed && !visited.Contains(connected)) + { + visited.Add(connected); + stack.Push(connected); + } + } + } + + return ordered; + } + + private void UpdateCompletionAnimation() + { + completionTimer += Time.deltaTime; + + if (completionPhase == CompletionPhase.Arranging) + { + bool allArrived = true; + for (int i = 0; i < orderedRedParticles.Count; i++) + { + var particle = orderedRedParticles[i]; + var target = targetPositions[i]; + + particle.transform.position = Vector3.Lerp( + particle.transform.position, + target, + Time.deltaTime * 5f + ); + + if (Vector3.Distance(particle.transform.position, target) > 0.01f) + { + allArrived = false; + } + } + + fadeOutAlpha = Mathf.Max(0f, fadeOutAlpha - Time.deltaTime * 2f); + + if (allArrived && completionTimer > 0.5f) + { + completionPhase = CompletionPhase.Revealing; + completionTimer = 0f; + InitializeWaveform(); + + // 初始化抖动效果 + foreach (var p in orderedRedParticles) + { + p.InitializeAnxietyEffect(); + } + } + } + else if (completionPhase == CompletionPhase.Revealing) + { + float revealDelay = 0.25f; + int currentIndex = Mathf.FloorToInt(completionTimer / revealDelay); + + for (int i = 0; i < orderedRedParticles.Count; i++) + { + var p = orderedRedParticles[i]; + + if (i < currentIndex) + { + // 已显示 + if (i < targetSentence.Length) + { + p.currentChar = targetSentence[i].ToString(); + p.isStatic = false; + } + } + else if (i == currentIndex) + { + // 正在显示(闪烁) + p.changeSpeedMultiplier = 20f; + if (completionTimer % revealDelay >= revealDelay - 0.1f) + { + if (i < targetSentence.Length) + { + p.currentChar = targetSentence[i].ToString(); + } + } + } + } + + if (currentIndex >= orderedRedParticles.Count) + { + completionPhase = CompletionPhase.Completed; + for (int i = 0; i < orderedRedParticles.Count && i < targetSentence.Length; i++) + { + orderedRedParticles[i].currentChar = targetSentence[i].ToString(); + orderedRedParticles[i].isStatic = false; + orderedRedParticles[i].changeSpeedMultiplier = 1f; + } + } + } + else if (completionPhase == CompletionPhase.Completed) + { + // 检查是否所有文字都已消散 + bool allDissolved = orderedRedParticles.All(p => p.dissolveProgress >= 1f); + if (allDissolved && completionTimer > 1f) + { + ResetGame(); + } + } + } + + private void InitializeWaveform() + { + waveformPoints.Clear(); + + if (orderedRedParticles.Count == 0) return; + + float baseY = 0f; + + for (int i = 0; i < orderedRedParticles.Count; i++) + { + var particle = orderedRedParticles[i]; + var point = new WaveformPoint( + particle.transform.position.x, + baseY, + waveformAmplitude, + i, + particle + ); + waveformPoints.Add(point); + particle.waveformPoint = point; + } + + lastMousePos = GetMouseWorldPosition(); + } + + private void UpdateWaveform() + { + if (waveformPoints.Count == 0) + { + InitializeWaveform(); + return; + } + + Vector2 mousePos = GetMouseWorldPosition(); + mouseDragSpeed = Vector2.Distance(mousePos, lastMousePos) / Time.deltaTime; + lastMousePos = mousePos; + + bool mousePressed = Input.GetMouseButton(0); + + foreach (var point in waveformPoints) + { + point.Update(0f, waveformAmplitude, mousePos, mousePressed, mouseDragSpeed, interactionRadius); + } + + // 更新整体平静进度 + if (waveformPoints.Count > 0) + { + calmProgress = waveformPoints.Average(p => p.calmAmount); + } + } + + private void UpdateInput() + { + // 只在第一阶段(未完成)时处理鼠标输入 + if (completionPhase != CompletionPhase.None) return; + + Vector2 mouseWorldPos = GetMouseWorldPosition(); + + // 左键点击:排斥附近粒子 + if (Input.GetMouseButton(0)) + { + ApplyForceToNearbyParticles(mouseWorldPos, mouseInteractionRadius, repulsionForce); + } + + // 右键点击:吸引附近粒子 + if (Input.GetMouseButton(1)) + { + ApplyForceToNearbyParticles(mouseWorldPos, mouseInteractionRadius, -attractionForce); + } + } + + private void ApplyForceToNearbyParticles(Vector2 center, float repulsionRadius, float repulsionForce) + { + foreach (var particle in candidateParticles) + { + Vector2 particlePos = particle.transform.position; + float distance = Vector2.Distance(center, particlePos); + + if (distance < repulsionRadius && distance > 0.01f) + { + // 计算方向和力度 + Vector2 direction = (particlePos - center).normalized; + float forceMagnitude = repulsionForce * (1f - distance / repulsionRadius); + + // 应用力 + particle.ApplyForce(direction * forceMagnitude); + } + } + } + + private Vector2 GetMouseWorldPosition() + { + Vector3 mousePos = Input.mousePosition; + Camera cam = Camera.main; + if (cam != null) + { + // 对于正交相机,需要使用正确的Z距离 + float zDistance = cam.transform.position.z - worldCanvas.transform.position.z; + Vector3 worldPos = cam.ScreenToWorldPoint(new Vector3(mousePos.x, mousePos.y, Mathf.Abs(zDistance))); + return new Vector2(worldPos.x, worldPos.y); + } + return Vector2.zero; + } + + private void ResetGame() + { + isCompleted = false; + completionPhase = CompletionPhase.None; + completionTimer = 0f; + fadeOutAlpha = 1f; + orderedRedParticles.Clear(); + targetPositions.Clear(); + effectPropagations.Clear(); + previousConnections.Clear(); + initializationComplete = false; + initializationFrames = 0; + calmProgress = 0f; + waveformPoints.Clear(); + + // 重置所有粒子 + foreach (var p in candidateParticles) + { + p.isRed = false; + p.isOrange = false; + p.hasEffect = false; + p.isStatic = false; + p.originalIsRed = false; + p.changeSpeedMultiplier = 1f; + p.vibrationOffset = Vector2.zero; + p.velocity = new Vector2(Random.Range(-0.5f, 0.5f), Random.Range(-0.5f, 0.5f)); + p.transform.position = GetRandomPositionInBounds(); + p.calmProgress = 0f; + p.dissolveProgress = 0f; + p.isCalmed = false; + p.waveformPoint = null; + } + + SelectRedParticles(); + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs.meta b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs.meta new file mode 100644 index 000000000..33ab1f0a7 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 79af040068968934c9a7d092267034f6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md new file mode 100644 index 000000000..498976d24 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md @@ -0,0 +1,132 @@ +# 语言粒子系统效果总结 + +## 核心功能 + +### 1. 粒子系统 +- **背景浮动文字**(100个):半透明、缓慢移动、定期随机变换字符 +- **可交互候选粒子**(50个): + - 蓝色粒子:普通粒子 + - 红色粒子:目标粒子(8个,需要连接) + - 橙色粒子:被红色粒子"感染"的蓝色粒子 + +### 2. 粒子行为 +- 边界反弹 +- 相互排斥(避免重叠) +- 字符定期随机变化(中文字符集) +- 可选词组模式(相邻粒子组成词组) + +### 3. 连接系统 +- 距离小于200像素的粒子之间绘制连线 +- 蓝色粒子间:细蓝线 +- 红色粒子间:粗红线 + +### 4. 交互效果 +- **涟漪效果**(右键):吸引附近粒子 +- **排斥爆发**(左键):推开附近粒子 +- 粒子受力后产生速度变化 + +### 5. 效果传播系统 +- 当红色粒子与蓝色粒子新建立连接时: + - 蓝色粒子变橙色 + - 橙色粒子字符变化加速(3倍速) + - 橙色粒子产生振动效果 + - 橙色粒子有光晕和缩放动画 +- 效果可以链式传播(橙色粒子连接新的蓝色粒子) +- 最多传播8步 +- 传播时绘制连接线、脉冲光点、箭头 + +### 6. 游戏目标与完成序列 +**目标**:让所有红色粒子连接成一个整体,且与蓝色粒子分离 + +**完成序列**: +1. **arranging阶段**: + - 红色粒子排列成水平一行(屏幕中央) + - 蓝色/橙色粒子停止移动 + - 非红色粒子淡出 + +2. **revealing阶段**: + - 红色粒子逐个显示目标文字:"别过来我感觉害怕" + - 显示前快速闪烁随机字符 + - 文字开始剧烈抖动(焦虑效果) + +3. **completed阶段**: + - 进入波形交互阶段 + +### 7. 波形交互系统(核心创新) +**初始状态**: +- 每个文字下方有一个对应的波形点 +- 波形使用Perlin噪声生成(多层噪声叠加) +- 波形呈现异常、混乱的抖动 +- 文字随波形剧烈抖动+上下漂浮(表现焦虑情绪) + +**交互机制**: +- 玩家按住鼠标左键并拖动,抚平附近的波形 +- 波形有"抵抗力"机制: + - 异常程度越高,抵抗力越强 + - 需要持续按住30-90帧才能完全抚平 + - 拖动速度越快,抚平效果越强 +- 抚平区域有交互半径(50像素) +- 显示进度环反馈 + +**抚平效果**: +- 波形从异常噪波逐渐变为规律的正弦波 +- 波形颜色从红色渐变为蓝色 +- 对应文字的抖动和漂浮逐渐减弱 +- 波形完全抚平后: + - 文字停止变化和抖动 + - 文字开始消散(透明度降低) + - 波形点也随之消散 + +**视觉反馈**: +- 抚平时产生蓝色粒子效果 +- 鼠标周围显示交互范围圈 +- 波形点显示抚平进度环 +- 底部显示整体平静进度条 + +**情感隐喻**: +- 异常波形 = 焦虑、不安的情绪 +- 文字抖动 = 情绪的外在表现 +- 抚平波形 = 安抚、平复情绪的过程 +- 文字消散 = 负面情绪的消解 + +### 8. 重置机制 +- 所有文字消散后,游戏自动重置 +- 粒子重新随机分布 +- 重新选择8个红色目标粒子 + +## Unity实现要点 + +### 技术选型 +1. **文字渲染**:TextMeshPro(支持中文) +2. **线条绘制**:Shapes插件 +3. **动画**:DOTween +4. **画布**:10x10 World Space Canvas +5. **输入**:Unity Input System或传统Input + +### 核心挑战 +1. Perlin噪声波形生成与平滑 +2. 粒子间连接检测与效果传播 +3. 波形交互的抵抗力机制 +4. 文字抖动与消散效果 +5. 性能优化(大量粒子+连线) + +### 建议架构 +``` +LanguageParticleManager(主管理器) +├── FloatingTextParticle(背景文字) +├── CandidateParticle(候选粒子) +├── ConnectionRenderer(连线渲染) +├── EffectPropagationSystem(效果传播) +├── WaveformSystem(波形系统) +│ ├── WaveformPoint(波形点) +│ └── WaveformRenderer(波形渲染) +└── InteractionHandler(交互处理) +``` + +### 性能优化建议 +1. 使用对象池管理粒子和效果 +2. 连接检测使用空间分区(如Grid) +3. 波形点数量与文字数量一致(8个) +4. 粒子效果使用Instancing +5. 线条使用批量绘制 + diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md.meta b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md.meta new file mode 100644 index 000000000..a43faea28 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 82c45afa1fdda6d45af591a380e1f4ec +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/QuickStart.md b/Assets/Scripts/MiniGame/HuoShan/Language/QuickStart.md new file mode 100644 index 000000000..74c63f1fe --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/QuickStart.md @@ -0,0 +1,150 @@ +# 快速开始指南 + +## 5分钟快速设置 + +### 步骤1:创建场景对象 + +1. 在Hierarchy中右键 → Create Empty +2. 命名为 "LanguageParticleSystem" +3. 添加组件:`LanguageParticleManager` + +### 步骤2:检查依赖 + +确保项目已安装: +- ✅ TextMeshPro(Unity内置) +- ✅ DOTween(Asset Store) +- ✅ Shapes(Asset Store) + +如果缺少DOTween,在Manager中会有命名空间错误。 + +### 步骤3:配置参数(可选) + +在Inspector中调整默认值: +``` +Canvas Size: 10 +Floating Count: 100 +Candidate Count: 50 +Red Particle Count: 8 +Connection Distance: 2 +Target Sentence: "别过来我感觉害怕" +Waveform Amplitude: 0.3 +Interaction Radius: 0.5 +``` + +### 步骤4:设置相机 + +1. 选择Main Camera +2. 设置Position: (0, 0, -10) +3. 设置Size (Orthographic): 5-6 + +### 步骤5:运行 + +点击Play,系统会自动: +- 创建10x10的World Space Canvas +- 生成100个背景浮动文字 +- 生成50个候选粒子(其中8个红色) + +## 游戏操作 + +### 第一阶段:连接粒子 +- **左键点击**:排斥粒子(推开) +- **右键点击**:吸引粒子(涟漪) +- **目标**:让所有红色粒子连成一体,且远离蓝色粒子 + +### 第二阶段:观看揭示 +- 红色粒子自动排列 +- 逐个显示文字 +- 文字开始剧烈抖动 + +### 第三阶段:抚平波形 +- **按住左键并拖动**:抚平异常波形 +- **目标**:让所有波形变平,文字停止抖动并消散 + +## 常见问题快速解决 + +### 文字显示为方块? +**原因**:字体不支持中文 +**解决**: +1. Window → TextMeshPro → Font Asset Creator +2. 选择支持中文的字体(如:思源黑体、微软雅黑) +3. Character Set: Custom Characters +4. 粘贴`TextParticle.cs`中的`chineseChars`字符串 +5. Generate Font Atlas + +### 看不到粒子? +**原因**:相机位置或Canvas设置问题 +**解决**: +- 相机Z坐标应为负值(如-10) +- Canvas Render Mode应为World Space +- 检查粒子的Z坐标是否为0 + +### Shapes相关错误? +**原因**:未安装Shapes插件 +**解决**: +1. 从Asset Store安装Shapes +2. 或者临时注释掉渲染器相关代码: + - ConnectionRenderer.cs + - WaveformRenderer.cs + - LanguageParticleManager.cs中的渲染器初始化 + +### DOTween错误? +**原因**:未安装DOTween +**解决**: +1. 从Asset Store安装DOTween (免费) +2. 或者移除相关using和功能(本系统中DOTween可选) + +## 性能调优 + +### 低配置设备 +``` +Floating Count: 50 +Candidate Count: 30 +Red Particle Count: 6 +``` + +### 中配置设备(推荐) +``` +Floating Count: 100 +Candidate Count: 50 +Red Particle Count: 8 +``` + +### 高配置设备 +``` +Floating Count: 200 +Candidate Count: 80 +Red Particle Count: 10 +``` + +## 视觉调优 + +### 增强视觉效果 +- 增加`Waveform Amplitude`(0.5-0.8) +- 增加`Interaction Radius`(0.8-1.0) +- 调整渲染器颜色(在Renderer组件中) + +### 减少视觉混乱 +- 减少`Floating Count` +- 减少`Connection Distance` +- 降低背景文字透明度(修改FloatingTextParticle.cs) + +## 下一步 + +- 阅读`README.md`了解完整功能 +- 查看`LanguageParticleSystem_Summary.md`了解技术细节 +- 自定义字符集和目标句子 +- 添加音效和粒子特效 + +## 技术支持 + +遇到问题?检查: +1. Console是否有错误 +2. 所有依赖是否已安装 +3. 相机设置是否正确 +4. 粒子是否在相机视野内 + +调试技巧: +- 在Scene视图中观察粒子位置 +- 使用Gizmos显示连接关系 +- 在Inspector中监控粒子状态 + diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/QuickStart.md.meta b/Assets/Scripts/MiniGame/HuoShan/Language/QuickStart.md.meta new file mode 100644 index 000000000..e4685bd87 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/QuickStart.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7db05522201123d409abb24ec2f7f845 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/README.md b/Assets/Scripts/MiniGame/HuoShan/Language/README.md new file mode 100644 index 000000000..7692eaf64 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/README.md @@ -0,0 +1,212 @@ +# 语言粒子系统 - Unity实现 + +## 概述 + +这是一个基于P5.js原型的语言粒子互动系统,在Unity中复现。系统通过文字粒子的连接和交互,表现情绪的传播与平复过程。 + +## 文件结构 + +``` +Language/ +├── LanguageParticleSystem_Summary.md # 效果总结文档 +├── README.md # 使用说明(本文件) +├── TextParticle.cs # 文字粒子基类 +├── FloatingTextParticle.cs # 背景浮动文字粒子 +├── CandidateParticle.cs # 可交互候选粒子 +├── WaveformPoint.cs # 波形点数据 +├── EffectPropagation.cs # 效果传播系统 +├── ConnectionRenderer.cs # 连接线渲染器 +├── WaveformRenderer.cs # 波形渲染器 +└── LanguageParticleManager.cs # 主管理器 +``` + +## 使用步骤 + +### 1. 场景设置 + +1. 创建一个空GameObject,命名为"LanguageParticleSystem" +2. 添加`LanguageParticleManager`组件 + +### 2. Canvas设置 + +系统会自动创建一个10x10的World Space Canvas,也可以手动配置: + +1. 创建Canvas(Render Mode: World Space) +2. 设置Canvas尺寸为10x10 +3. 将Canvas拖到Manager的`worldCanvas`字段 + +### 3. 参数配置 + +在Inspector中调整以下参数: + +#### Canvas设置 +- **Canvas Size**: Canvas大小(默认10) +- **Text Margin**: 文字区域边距(默认1) + +#### 粒子数量 +- **Floating Count**: 背景浮动文字数量(默认100) +- **Candidate Count**: 候选粒子数量(默认50) +- **Red Particle Count**: 红色目标粒子数量(默认8) + +#### 游戏参数 +- **Connection Distance**: 连接距离阈值(默认2,Unity单位) +- **Target Sentence**: 目标句子(默认"别过来我感觉害怕") + +#### 波形参数 +- **Waveform Amplitude**: 波形振幅(默认0.3) +- **Interaction Radius**: 交互半径(默认0.5) + +### 4. 依赖项 + +确保项目中已安装以下插件: + +- **TextMeshPro**: Unity内置,用于中文文字渲染 +- **DOTween**: 用于动画效果 +- **Shapes**: 用于绘制连接线和波形 + +### 5. 运行 + +点击Play即可运行。系统会自动: +1. 生成背景浮动文字 +2. 生成候选粒子 +3. 随机选择8个红色目标粒子 + +## 游戏玩法 + +### 第一阶段:连接红色粒子 + +**目标**:让所有红色粒子连接成一个整体,且与蓝色粒子分离 + +**交互**: +- 左键点击:产生排斥波,推开附近粒子 +- 右键点击:产生涟漪,吸引附近粒子 + +**机制**: +- 红色粒子与蓝色粒子接触时,效果会传播(蓝色→橙色) +- 效果可以链式传播(最多8步) +- 橙色粒子字符变化加速,带有振动和光晕效果 + +### 第二阶段:文字揭示 + +完成第一阶段后: +1. 红色粒子自动排列成水平一行 +2. 蓝色粒子淡出 +3. 红色粒子逐个揭示目标文字:"别过来我感觉害怕" +4. 文字出现剧烈抖动(焦虑效果) + +### 第三阶段:波形交互 + +文字显示完成后: +1. 文字下方出现异常波形(基于Perlin噪声) +2. 文字随波形剧烈抖动和漂浮 +3. **目标**:通过鼠标抚平波形,平复文字的焦虑 + +**交互**: +- 按住鼠标左键并拖动,抚平附近的波形 +- 波形有"抵抗力",需要持续按住(0.5-1.5秒) +- 拖动速度越快,抚平效果越强 + +**效果**: +- 波形从红色异常噪波→蓝色规律正弦波 +- 文字抖动和漂浮逐渐减弱 +- 波形完全稳定后,文字开始消散 +- 所有文字消散后,游戏自动重置 + +## 技术要点 + +### 1. 粒子系统 + +- 使用TextMeshPro渲染中文字符 +- 粒子具有速度、边界检测、相互排斥 +- 字符定期随机变化 + +### 2. 连接检测 + +- 使用空间距离判断粒子间连接 +- 连接关系存储在`connections`列表中 +- 用于效果传播和完成条件判断 + +### 3. 效果传播 + +- 红色粒子与蓝色粒子建立新连接时触发 +- 使用队列实现链式传播 +- 脉冲动画沿连接线移动 + +### 4. 波形系统 + +- 使用Perlin噪声生成异常波形(多层噪声叠加) +- 每个波形点关联一个文字粒子 +- 波形点有独立的抚平进度和抵抗力 +- 抚平后波形变为规律正弦波 + +### 5. 渲染系统 + +- 使用Shapes的ImmediateModeShapeDrawer +- 连接线:实时绘制粒子间连线 +- 波形:使用Polyline绘制平滑曲线 +- 效果:脉冲光点、箭头、进度环 + +## 性能优化建议 + +1. **对象池**:粒子频繁创建销毁时使用对象池 +2. **空间分区**:粒子数量超过100时考虑Grid分区 +3. **LOD**:远距离粒子降低更新频率 +4. **批量绘制**:Shapes已支持批量绘制 +5. **异步处理**:连接检测可使用Job System + +## 自定义扩展 + +### 添加新的文字内容 + +修改`CandidateParticle.cs`中的字符集: +```csharp +protected static string chineseChars = "你的字符集..."; +protected static string[] chineseWords = { "词组1", "词组2", ... }; +``` + +### 修改目标句子 + +在Manager的Inspector中修改`Target Sentence`字段 + +### 调整波形特性 + +修改`WaveformPoint.cs`中的噪声参数: +```csharp +noiseScale1 = 0.05f; // 低频噪声 +noiseScale2 = 0.15f; // 中频噪声 +noiseScale3 = 0.4f; // 高频噪声 +``` + +### 添加音效 + +在以下关键事件添加音效: +- `TriggerEffectPropagation()`: 效果传播时 +- `StartCompletionSequence()`: 完成第一阶段时 +- `WaveformPoint.Update()`: 波形抚平时(`calmAmount >= 0.95f`) +- `ResetGame()`: 游戏重置时 + +## 调试技巧 + +1. **显示连接关系**:在Scene视图中观察连接线 +2. **波形可视化**:查看波形点的`calmAmount`值 +3. **粒子状态**:在Inspector中实时查看粒子的`isRed`、`isOrange`等状态 +4. **帧率监控**:粒子数量过多时注意帧率 + +## 常见问题 + +### Q: 文字显示为方块? +A: 确保使用支持中文的字体,并在TextMeshPro Font Asset中生成中文字符 + +### Q: 连接线不显示? +A: 检查Shapes插件是否正确安装,Camera是否正确配置 + +### Q: 波形交互没反应? +A: 检查鼠标世界坐标转换是否正确,确保Camera能看到粒子 + +### Q: 性能问题? +A: 减少粒子数量,或启用对象池和空间分区优化 + +## 许可 + +本项目基于P5.js原型复现,供学习和研究使用。 + diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md.meta b/Assets/Scripts/MiniGame/HuoShan/Language/README.md.meta similarity index 75% rename from Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md.meta rename to Assets/Scripts/MiniGame/HuoShan/Language/README.md.meta index 489023e4c..2e4a7ed20 100644 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md.meta +++ b/Assets/Scripts/MiniGame/HuoShan/Language/README.md.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 1500caf0ff27d574cbbc46a5b6954555 +guid: 816db8f21057c5c4892f64913a92dccf TextScriptImporter: externalObjects: {} userData: diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs b/Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs new file mode 100644 index 000000000..2466c0246 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs @@ -0,0 +1,238 @@ +using UnityEngine; +using TMPro; +using DG.Tweening; +using System.Collections.Generic; + +namespace AibisDream.MiniGame.Language +{ + /// + /// 文字粒子基类 + /// + public class TextParticle : MonoBehaviour + { + [Header("组件")] + public TextMeshPro textMesh; + public SpriteRenderer glowSprite; + + [Header("属性")] + public Vector2 velocity; + public float alpha; + public float baseAlpha = 1f; + public float size = 3f; + public float probability = 1f; + public string currentChar; + + [Header("状态")] + public bool isStatic = false; + public bool isCalmed = false; + + protected float changeTimer; + protected float changeInterval = 1f; + protected Bounds movementBounds; + protected TMP_FontAsset customFont; + + // 字符集 + protected static string chineseChars = "的一是在不了有和人这中大为上个国我以要他时来用们生到作地于出就分对成会可主发年动同工也能下过子说产种面而方后多定行学法所民得经十三之进着等部度家电力里如水化高自二理起小物现实加量都两体制机当使点从业本去把性好应开它合还因由其些然前外天政四日那社义事平形相全表间样与关各重新线内数正心反你明看原又么利比或但质气第向道命此变条只没结解问意建月公无系军很情者最立代想已通并提直题党程展五果料象员革位入常文总次品式活设及管特件长求老头基资边流路级少图山统接知较将组见计别她手角期根论运农指几九区强放决西被干做必战先回则任取据处队南给色光门即保治北造百规热领七海口东导器压志世金增争济阶油思术极交受联什认六共权收证改清己美再采转更单风切打白教速花带安场身车例真务具万每目至达走积示议声报斗完类八离华名确才科张信马节话米整空元况今集温传土许步群广石记需段研界拉林律叫且究观越织装影算低持音众书布复容儿须际商非验连断深难近矿千周委素技备半办青省列习响约支般史感劳便团往酸历市克何除消构府称太准精值号率族维划选标写存候毛亲快效斯院查江型眼王按格养易置派层片始却专状育厂京识适属圆包火住调满县局照参红细引听该铁价严龙飞"; + protected static string[] chineseWords = { "不安", "紧张", "焦虑", "担忧", "烦躁", "恐慌", "恐惧", "绝望", "痛苦", "悲伤", "愤怒", "孤独", "无助", "迷茫", "困惑", "压抑", "沉重", "疲惫", "空虚", "失落" }; + + protected virtual void Awake() + { + if (textMesh == null) + textMesh = GetComponentInChildren(); + + if (textMesh == null) + { + var textObj = new GameObject("Text"); + textObj.transform.SetParent(transform, false); + + // 添加 RectTransform(在 Canvas 下必需) + RectTransform rectTransform = textObj.AddComponent(); + rectTransform.localPosition = Vector3.zero; + rectTransform.localScale = Vector3.one; + rectTransform.sizeDelta = new Vector2(10, 10); // 设置足够大的尺寸 + rectTransform.anchorMin = new Vector2(0.5f, 0.5f); + rectTransform.anchorMax = new Vector2(0.5f, 0.5f); + rectTransform.pivot = new Vector2(0.5f, 0.5f); + + // 添加 TextMeshPro 组件 + textMesh = textObj.AddComponent(); + textMesh.alignment = TextAlignmentOptions.Center; + textMesh.fontSize = size; + textMesh.enableAutoSizing = false; + textMesh.overflowMode = TextOverflowModes.Overflow; // 允许溢出,不裁剪 + + // 设置字体(优先使用自定义字体) + SetupFont(); + + // 设置渲染层级,确保文字显示在正确的层 + textMesh.sortingOrder = 10; + } + else + { + // 如果已存在 textMesh,也要确保设置字体 + SetupFont(); + } + + // 创建光晕 + if (glowSprite == null) + { + var glowObj = new GameObject("Glow"); + glowObj.transform.SetParent(transform); + glowObj.transform.localPosition = Vector3.zero; + glowObj.transform.localScale = Vector3.one * 0.5f; + glowSprite = glowObj.AddComponent(); + glowSprite.sprite = CreateCircleSprite(); + glowSprite.color = new Color(1, 1, 1, 0.2f); + } + + changeTimer = Random.Range(0.5f, 1.5f); + currentChar = GetRandomChar(); + UpdateText(); + } + + protected virtual void Update() + { + if (!isStatic && !isCalmed) + { + // 更新位置 + transform.position += (Vector3)velocity * Time.deltaTime; + + // 边界检测 + CheckBounds(); + + // 字符变化 + changeTimer -= Time.deltaTime; + if (changeTimer <= 0) + { + currentChar = GetRandomChar(); + UpdateText(); + changeTimer = changeInterval; + } + + // 速度衰减 + velocity *= 0.95f; + } + + // 更新视觉效果 + UpdateVisuals(); + } + + public void SetMovementBounds(Bounds bounds) + { + movementBounds = bounds; + } + + protected void CheckBounds() + { + Vector3 pos = transform.position; + bool bounced = false; + + if (pos.x < movementBounds.min.x || pos.x > movementBounds.max.x) + { + velocity.x *= -1; + pos.x = Mathf.Clamp(pos.x, movementBounds.min.x, movementBounds.max.x); + bounced = true; + } + + if (pos.y < movementBounds.min.y || pos.y > movementBounds.max.y) + { + velocity.y *= -1; + pos.y = Mathf.Clamp(pos.y, movementBounds.min.y, movementBounds.max.y); + bounced = true; + } + + if (bounced) + transform.position = pos; + } + + protected string GetRandomChar() + { + return chineseChars[Random.Range(0, chineseChars.Length)].ToString(); + } + + protected string GetRandomWord() + { + return chineseWords[Random.Range(0, chineseWords.Length)]; + } + + protected void UpdateText() + { + if (textMesh != null) + textMesh.text = currentChar; + } + + protected virtual void UpdateVisuals() + { + if (textMesh != null) + { + Color color = textMesh.color; + color.a = alpha; // alpha 已经是 0-1 范围 + textMesh.color = color; + } + } + + public void ApplyForce(Vector2 force) + { + velocity += force; + } + + /// + /// 设置字体资源 + /// + public void SetFont(TMP_FontAsset fontAsset) + { + customFont = fontAsset; + SetupFont(); + } + + /// + /// 内部方法:设置字体 + /// + private void SetupFont() + { + if (textMesh == null) return; + + // 优先级:自定义字体 > 默认字体 > 警告 + if (customFont != null) + { + textMesh.font = customFont; + } + else if (TMP_Settings.defaultFontAsset != null) + { + textMesh.font = TMP_Settings.defaultFontAsset; + } + else + { + Debug.LogWarning("[TextParticle] TextMeshPro 字体未设置!请在 LanguageParticleManager 中指定中文字体资源,或在 Project Settings > TextMesh Pro > Settings 中设置默认字体。"); + } + } + + // 创建简单的圆形Sprite用于光晕 + private Sprite CreateCircleSprite() + { + int resolution = 32; + Texture2D texture = new Texture2D(resolution, resolution); + Color[] pixels = new Color[resolution * resolution]; + + Vector2 center = new Vector2(resolution / 2f, resolution / 2f); + float radius = resolution / 2f; + + for (int y = 0; y < resolution; y++) + { + for (int x = 0; x < resolution; x++) + { + float dist = Vector2.Distance(new Vector2(x, y), center); + float alpha = 1f - Mathf.Clamp01(dist / radius); + alpha = Mathf.Pow(alpha, 2); // 平滑衰减 + pixels[y * resolution + x] = new Color(1, 1, 1, alpha); + } + } + + texture.SetPixels(pixels); + texture.Apply(); + + return Sprite.Create(texture, new Rect(0, 0, resolution, resolution), new Vector2(0.5f, 0.5f)); + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs.meta b/Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs.meta new file mode 100644 index 000000000..82b863276 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6da7d4539a3ba0044bbdfda3959c396b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/WaveformPoint.cs b/Assets/Scripts/MiniGame/HuoShan/Language/WaveformPoint.cs new file mode 100644 index 000000000..93b6d1350 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/WaveformPoint.cs @@ -0,0 +1,210 @@ +using UnityEngine; + +namespace AibisDream.MiniGame.Language +{ + /// + /// 波形点:管理单个波形点的状态和动画 + /// + public class WaveformPoint + { + // 位置 + public float x; // X坐标(跟随文字) + public float y; // 当前Y坐标 + public float targetY; // 目标Y坐标(规律波形) + public float smoothedY; // 平滑后的Y坐标 + + // 噪声参数 + public float noiseOffset; // 噪声偏移 + public float noiseScale1; // 噪声缩放1(低频) + public float noiseScale2; // 噪声缩放2(中频) + public float noiseScale3; // 噪声缩放3(高频) + public float noiseAmplitude; // 噪声振幅 + public float noiseTime; // 噪声时间偏移 + + // 抚平状态 + public float resistance; // 抵抗力(0-1,越高越难抚平) + public float calmAmount; // 当前被抚平的程度(0-1) + public bool isBeingCalmed; // 是否正在被抚平 + public float calmTimer; // 抚平计时器 + + // 关联 + public CandidateParticle particle; // 关联的文字粒子 + public int particleIndex; // 粒子索引 + + // 脉冲动画 + public float pulseProgress; // 脉冲进度(0-1) + + public WaveformPoint(float x, float baseY, float amplitude, int index, CandidateParticle particle) + { + this.x = x; + this.particle = particle; + this.particleIndex = index; + + // 初始化噪声参数 + noiseScale1 = 0.05f; + noiseScale2 = 0.15f; + noiseScale3 = 0.4f; + noiseAmplitude = Random.Range(0.7f, 1f); + noiseOffset = Random.Range(-0.2f, 0.2f); + noiseTime = Random.Range(0f, 1000f); + + // 计算初始Y(噪波) + float combinedNoise = GenerateNoise(Time.time); + y = baseY + combinedNoise * amplitude; + smoothedY = y; + + // 计算目标Y(规律波形) + float targetWavePhase = index * 0.3f; + float targetWaveAmplitude = amplitude * 0.3f; + targetY = baseY + Mathf.Sin(targetWavePhase) * targetWaveAmplitude; + + // 计算异常程度和抵抗力 + float anomalyAmount = Mathf.Abs(y - targetY) / amplitude; + resistance = 0.1f + anomalyAmount * 0.25f; + + calmAmount = 0f; + isBeingCalmed = false; + calmTimer = 0f; + pulseProgress = 0f; + } + + /// + /// 生成多层Perlin噪声 + /// + private float GenerateNoise(float time) + { + // 使用多层噪声叠加 + float noiseValue1 = Mathf.PerlinNoise(x * noiseScale1, time * 0.01f); + float noiseValue2 = Mathf.PerlinNoise(x * noiseScale2, time * 0.02f + 100f); + float noiseValue3 = Mathf.PerlinNoise(x * noiseScale3, time * 0.03f + 200f); + + // 映射到[-1, 1]范围 + noiseValue1 = (noiseValue1 - 0.5f) * 2f; + noiseValue2 = (noiseValue2 - 0.5f) * 2f * 0.6f; + noiseValue3 = (noiseValue3 - 0.5f) * 2f * 0.3f; + + // 叠加 + float combinedNoise = noiseValue1 + noiseValue2 + noiseValue3 + noiseOffset; + return Mathf.Clamp(combinedNoise * noiseAmplitude, -1.5f, 1.5f); + } + + /// + /// 更新波形点(动态噪波、交互、抚平) + /// + public void Update(float baseY, float amplitude, Vector2 mousePos, bool mousePressed, float mouseDragSpeed, float interactionRadius) + { + // 同步X位置(跟随文字) + if (particle != null) + { + x = particle.transform.position.x; + + // 更新目标位置 + float targetWavePhase = particleIndex * 0.3f; + float targetWaveAmplitude = amplitude * 0.3f; + targetY = baseY + Mathf.Sin(targetWavePhase) * targetWaveAmplitude; + } + + // 重置状态 + isBeingCalmed = false; + + // 如果未抚平,添加动态噪波 + if (calmAmount < 0.9f) + { + float currentTime = Time.time + noiseTime * 0.001f; + float dynamicNoise = GenerateNoise(currentTime); + + // 根据抚平程度减少噪波强度 + float noiseIntensity = (1 - calmAmount) * amplitude; + smoothedY = y + dynamicNoise * noiseIntensity; + } + + // 处理鼠标交互 + if (mousePressed) + { + float distToMouse = Vector2.Distance(mousePos, new Vector2(x, smoothedY)); + if (distToMouse < interactionRadius) + { + // 计算影响强度 + float distanceInfluence = Mathf.Lerp(1f, 0f, distToMouse / interactionRadius); + float speedBonus = Mathf.Min(1f, mouseDragSpeed / 0.25f); // 拖动速度加成 + float influence = distanceInfluence * (0.5f + speedBonus * 0.5f); + + // 标记为正在被抚平 + isBeingCalmed = true; + calmTimer += Time.deltaTime; + + // 需要持续按住才能抚平(抵抗机制) + float requiredTime = 0.5f + resistance * 1f; // 需要0.5-1.5秒 + float calmProgressLocal = Mathf.Min(1f, calmTimer / requiredTime); + + // 应用抚平效果(考虑抵抗力) + float calmStrength = influence * (1 - resistance) * 0.15f; + + // 计算目标位置(从噪波位置向规律波形位置过渡) + float targetYLerp = Mathf.Lerp(y, targetY, calmProgressLocal); + smoothedY = Mathf.Lerp(smoothedY, targetYLerp, calmStrength); + + // 更新抚平程度(一旦抚平,就不会恢复) + if (calmProgressLocal > calmAmount) + { + calmAmount = calmProgressLocal; + } + + // 如果完全抚平 + if (calmAmount >= 0.95f) + { + calmAmount = 1f; + smoothedY = targetY; + } + } + } + + // 如果calmAmount接近1,强制向目标位置靠拢 + if (calmAmount > 0.8f) + { + float forceStrength = Mathf.Lerp(0.1f, 0.5f, (calmAmount - 0.8f) / 0.2f); + smoothedY = Mathf.Lerp(smoothedY, targetY, forceStrength); + } + + // 如果完全抚平,直接设置为目标位置 + if (calmAmount >= 1f) + { + smoothedY = targetY; + } + + // 限制波形点不会完全超出范围 + float maxDeviation = amplitude * (1 - calmAmount * 0.8f); + smoothedY = Mathf.Clamp(smoothedY, baseY - maxDeviation, baseY + maxDeviation); + + // 同步更新对应文字粒子的平静进度 + if (particle != null) + { + particle.calmProgress = calmAmount; + + // 如果完全抚平,标记为已稳定 + if (calmAmount >= 0.95f && !particle.isCalmed) + { + particle.isCalmed = true; + particle.isStatic = true; + particle.changeSpeedMultiplier = 0; + particle.dissolveProgress = 0; + } + + // 如果已抚平,检查波形是否完全稳定 + if (particle.isCalmed) + { + float distanceToTarget = Mathf.Abs(smoothedY - targetY); + float stabilityThreshold = amplitude * 0.05f; + + if (distanceToTarget < stabilityThreshold) + { + // 波形已稳定,开始消散 + float dissolveSpeed = 0.02f + (calmAmount - 0.95f) * 0.15f; + particle.dissolveProgress = Mathf.Min(1f, particle.dissolveProgress + dissolveSpeed * Time.deltaTime * 50f); + } + } + } + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/WaveformPoint.cs.meta b/Assets/Scripts/MiniGame/HuoShan/Language/WaveformPoint.cs.meta new file mode 100644 index 000000000..0896904d7 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/WaveformPoint.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d995549b26518a4419234f98d89ec699 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs b/Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs new file mode 100644 index 000000000..89e84035c --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs @@ -0,0 +1,266 @@ +using UnityEngine; +using System.Collections.Generic; +using Shapes; + +namespace AibisDream.MiniGame.Language +{ + /// + /// 波形渲染器:使用Shapes绘制波形和交互效果 + /// + [ExecuteAlways] + public class WaveformRenderer : ImmediateModeShapeDrawer + { + [Header("波形设置")] + public Color normalWaveColor = new Color(0.59f, 0.78f, 1f, 0.8f); + public Color anxiousWaveColor = new Color(1f, 0.39f, 0.39f, 0.8f); + public float waveLineThickness = 0.04f; + public float baseY = 0f; + + [Header("交互设置")] + public Color interactionColor = new Color(0.59f, 0.78f, 1f, 0.3f); + public Color interactionRingColor = new Color(0.59f, 0.78f, 1f, 0.6f); + public float interactionRadius = 0.5f; + + [Header("粒子效果")] + public Color particleColor = new Color(0.59f, 0.78f, 1f, 0.8f); + + private List waveformPoints; + private CompletionPhase completionPhase; + private float calmProgress; + private Vector2 mouseWorldPos; + private bool mousePressed; + private float mouseDragSpeed; + private List waveParticles = new List(); + + public void SetData( + List points, + CompletionPhase phase, + float calm, + Vector2 mousePos, + bool mouseDown, + float dragSpeed) + { + waveformPoints = points; + completionPhase = phase; + calmProgress = calm; + mouseWorldPos = mousePos; + mousePressed = mouseDown; + mouseDragSpeed = dragSpeed; + } + + private void Update() + { + // 更新粒子效果 + for (int i = waveParticles.Count - 1; i >= 0; i--) + { + waveParticles[i].Update(Time.deltaTime); + if (waveParticles[i].alpha <= 0 || waveParticles[i].size < 0.01f) + { + waveParticles.RemoveAt(i); + } + } + + // 生成新粒子(如果正在交互) + if (mousePressed && waveformPoints != null && Random.value > 0.7f) + { + foreach (var point in waveformPoints) + { + if (point.isBeingCalmed && Random.value > 0.5f) + { + waveParticles.Add(new WaveformParticleEffect( + new Vector3(point.x, point.smoothedY, 0), + Random.Range(-0.1f, 0.1f), + Random.Range(-0.2f, -0.05f), + Random.Range(0.02f, 0.04f) + )); + } + } + } + } + + public override void DrawShapes(Camera cam) + { + if (waveformPoints == null || waveformPoints.Count == 0) + return; + + if (completionPhase != CompletionPhase.Revealing && completionPhase != CompletionPhase.Completed) + return; + + using (Draw.Command(cam)) + { + Draw.BlendMode = ShapesBlendMode.Transparent; + Draw.ZTest = UnityEngine.Rendering.CompareFunction.Always; + + // 绘制粒子效果 + DrawWaveformParticles(); + + // 绘制波形线 + DrawWaveformLine(); + + // 绘制波形点 + DrawWaveformPoints(); + + // 绘制交互反馈 + if (mousePressed) + { + DrawInteractionFeedback(); + } + + // 绘制基准线 + if (calmProgress < 0.9f) + { + DrawBaseline(); + } + } + } + + private void DrawWaveformParticles() + { + foreach (var particle in waveParticles) + { + Color color = particleColor; + color.a = particle.alpha; + Draw.Disc(particle.position, particle.size, color); + + // 光晕 + color.a = particle.alpha * 0.3f; + Draw.Disc(particle.position, particle.size * 2f, color); + } + } + + private void DrawWaveformLine() + { + Draw.LineGeometry = LineGeometry.Flat2D; + Draw.Thickness = waveLineThickness; + + // 使用Polyline绘制波形 + var points = new List(); + var colors = new List(); + + foreach (var point in waveformPoints) + { + // 跳过完全消散的点 + float dissolveProgress = point.particle != null ? point.particle.dissolveProgress : 0f; + if (dissolveProgress >= 1f) continue; + + points.Add(new Vector3(point.x, point.smoothedY, 0)); + + // 根据抚平程度混合颜色 + Color waveColor = Color.Lerp(anxiousWaveColor, normalWaveColor, point.calmAmount); + waveColor.a *= (1 - dissolveProgress); + colors.Add(waveColor); + } + + if (points.Count >= 2) + { + for (int i = 0; i < points.Count - 1; i++) + { + Draw.Line(points[i], points[i + 1], colors[i], colors[i + 1]); + } + } + } + + private void DrawWaveformPoints() + { + for (int i = 0; i < waveformPoints.Count; i += 3) + { + var point = waveformPoints[i]; + + // 跳过完全消散的点 + float dissolveProgress = point.particle != null ? point.particle.dissolveProgress : 0f; + if (dissolveProgress >= 1f) continue; + + Vector3 pos = new Vector3(point.x, point.smoothedY, 0); + + // 如果正在被抚平,显示进度环 + if (point.isBeingCalmed && point.calmTimer > 0) + { + float requiredTime = 0.5f + point.resistance * 1f; + float progress = Mathf.Min(1f, point.calmTimer / requiredTime); + + Color ringColor = interactionRingColor; + ringColor.a *= (1 - dissolveProgress); + + Draw.Ring(pos, 0.08f, 0.06f, ringColor); + Draw.Arc(pos, 0.08f, 0.02f, -Mathf.PI / 2f, progress * Mathf.PI * 2f, ringColor); + } + + // 绘制波形点 + float pointAlpha = (1 - point.calmAmount) * (1 - calmProgress * 0.5f) * (1 - dissolveProgress) * 0.6f; + if (pointAlpha > 0.05f) + { + Color pointColor = Color.Lerp(anxiousWaveColor, normalWaveColor, point.calmAmount); + pointColor.a = pointAlpha; + Draw.Disc(pos, 0.03f, pointColor); + } + } + } + + private void DrawInteractionFeedback() + { + Vector3 mousePos3D = new Vector3(mouseWorldPos.x, mouseWorldPos.y, 0); + + // 内圈(交互范围) + Color innerColor = interactionColor; + Draw.Disc(mousePos3D, interactionRadius, innerColor); + + // 外圈(视觉反馈) + Color outerColor = interactionRingColor; + Draw.Ring(mousePos3D, interactionRadius, interactionRadius * 0.95f, outerColor); + + // 根据拖动速度显示额外反馈 + if (mouseDragSpeed > 0.1f) + { + Color speedColor = interactionRingColor; + speedColor.a = 0.4f; + Draw.Ring(mousePos3D, interactionRadius * 1.25f, interactionRadius * 1.2f, speedColor); + } + } + + private void DrawBaseline() + { + float alpha = 0.2f * (1 - calmProgress); + Color baselineColor = normalWaveColor; + baselineColor.a = alpha; + + Draw.LineGeometry = LineGeometry.Flat2D; + Draw.Thickness = 0.015f; + + // 计算波形范围 + if (waveformPoints.Count > 0) + { + float minX = waveformPoints[0].x; + float maxX = waveformPoints[waveformPoints.Count - 1].x; + Draw.Line(new Vector3(minX - 0.5f, baseY, 0), new Vector3(maxX + 0.5f, baseY, 0), baselineColor); + } + } + + private class WaveformParticleEffect + { + public Vector3 position; + public float vx; + public float vy; + public float alpha; + public float size; + + public WaveformParticleEffect(Vector3 pos, float velocityX, float velocityY, float initialSize) + { + position = pos; + vx = velocityX; + vy = velocityY; + alpha = 0.8f; + size = initialSize; + } + + public void Update(float deltaTime) + { + position.x += vx * deltaTime; + position.y += vy * deltaTime; + vy += 0.1f * deltaTime; // 重力 + alpha -= 0.015f; + size *= 0.98f; + } + } + } +} + diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs.meta b/Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs.meta new file mode 100644 index 000000000..0bc738d58 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fc80f1f8eacb59c4ea4cf18ff3a109c4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs deleted file mode 100644 index acb371ceb..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/BackgroundTextLayer.cs +++ /dev/null @@ -1,195 +0,0 @@ -using UnityEngine; -using TMPro; -using System.Collections.Generic; -using System.Linq; - -namespace AibisDream.MiniGame.HuoShan -{ - /// - /// 背景文字层 - 生成和管理大量随机变化的文字,文字间寻找关联形成词语连线 - /// - public class BackgroundTextLayer - { - private List _allNodes; - private List _chineseChars; - private float _fieldWidth; - private float _fieldHeight; - private int _nodeCount; - private Transform _parentTransform; - private GameObject _textPrefab; - - // 文字变化参数 - private float _changeInterval = 0.5f; - private float _lastChangeTime; - - // 连线参数 - private float _connectionRadius = 2f; - private float _connectionProbability = 0.3f; - - public BackgroundTextLayer(float fieldWidth, float fieldHeight, int nodeCount, Transform parentTransform) - { - _fieldWidth = fieldWidth; - _fieldHeight = fieldHeight; - _nodeCount = nodeCount; - _parentTransform = parentTransform; - _allNodes = new List(); - - // 初始化中文字符集 - InitializeChineseChars(); - - // 创建文字预制体 - CreateTextPrefab(); - - // 生成初始节点 - GenerateNodes(); - } - - private void InitializeChineseChars() - { - _chineseChars = new List(); - // 常用中文字符(可以扩展) - for (int i = 0x4e00; i <= 0x9fff; i++) - { - _chineseChars.Add(char.ConvertFromUtf32(i)); - } - // 添加一些常用字 - _chineseChars.AddRange(new[] { "的", "是", "在", "了", "和", "有", "就", "不", "人", "都", "一", "一个", "上", "也", "很", "到", "说", "要", "去", "你", "会", "着", "没有", "看", "好", "自己", "这" }); - } - - private void CreateTextPrefab() - { - _textPrefab = new GameObject("TextNodePrefab"); - _textPrefab.hideFlags = HideFlags.HideAndDontSave; - - var textMesh = _textPrefab.AddComponent(); - textMesh.fontSize = 24; - textMesh.alignment = TextAlignmentOptions.Center; - textMesh.color = Color.white; - textMesh.enableWordWrapping = false; - textMesh.overflowMode = TextOverflowModes.Overflow; - - _textPrefab.SetActive(false); - } - - private void GenerateNodes() - { - for (int i = 0; i < _nodeCount; i++) - { - Vector2 randomPos = new Vector2( - Random.Range(-_fieldWidth * 0.5f, _fieldWidth * 0.5f), - Random.Range(-_fieldHeight * 0.5f, _fieldHeight * 0.5f) - ); - - string randomChar = _chineseChars[Random.Range(0, _chineseChars.Count)]; - TextNode node = new TextNode(randomPos, randomChar); - - // 创建GameObject - GameObject nodeObj = Object.Instantiate(_textPrefab, _parentTransform); - nodeObj.SetActive(true); - nodeObj.name = $"TextNode_{i}"; - node.GameObject = nodeObj; - node.TextComponent = nodeObj.GetComponent(); - - node.UpdateVisual(); - _allNodes.Add(node); - } - - // 建立初始连接关系 - UpdateConnections(); - } - - public void Update(float deltaTime) - { - _lastChangeTime += deltaTime; - - if (_lastChangeTime >= _changeInterval) - { - _lastChangeTime = 0f; - - // 随机改变一些文字(排除已选定的和候选的) - foreach (var node in _allNodes) - { - if (node.State == TextNodeState.Random) - { - // 随机改变文字 - if (Random.value < 0.1f) // 10%概率改变 - { - node.Text = _chineseChars[Random.Range(0, _chineseChars.Count)]; - node.UpdateVisual(); - } - - // 随机改变亮度 - node.Brightness = Random.Range(0.3f, 1f); - node.UpdateVisual(); - } - } - - // 更新连接关系 - UpdateConnections(); - } - } - - private void UpdateConnections() - { - // 清除所有连接 - foreach (var node in _allNodes) - { - node.ConnectedNodes.Clear(); - } - - // 重新建立连接(基于距离和概率) - for (int i = 0; i < _allNodes.Count; i++) - { - for (int j = i + 1; j < _allNodes.Count; j++) - { - var nodeA = _allNodes[i]; - var nodeB = _allNodes[j]; - - float distance = Vector2.Distance(nodeA.Position, nodeB.Position); - - if (distance < _connectionRadius && Random.value < _connectionProbability) - { - nodeA.AddConnection(nodeB); - nodeB.AddConnection(nodeA); - } - } - } - } - - public List GetAllNodes() - { - return _allNodes; - } - - public List GetNodesInRange(Vector2 center, float radius) - { - return _allNodes.Where(node => - Vector2.Distance(node.Position, center) <= radius - ).ToList(); - } - - public void SetNodeState(TextNode node, TextNodeState state) - { - node.State = state; - node.UpdateVisual(); - } - - public void Cleanup() - { - foreach (var node in _allNodes) - { - if (node.GameObject != null) - { - Object.Destroy(node.GameObject); - } - } - _allNodes.Clear(); - - if (_textPrefab != null) - { - Object.Destroy(_textPrefab); - } - } - } -} - diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs deleted file mode 100644 index 831330086..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/CircularViewport.cs +++ /dev/null @@ -1,155 +0,0 @@ -using UnityEngine; -using Shapes; - -namespace AibisDream.MiniGame.HuoShan -{ - /// - /// 圆形可视区域 - 使用Shapes绘制圆形遮罩,支持鼠标拖拽移动 - /// - public class CircularViewport : ImmediateModeShapeDrawer - { - [Header("圆形区域设置")] - public float viewportRadius = 5f; - public Color viewportBorderColor = Color.white; - public float borderWidth = 0.1f; - - [Header("拖拽设置")] - public bool enableDrag = true; - public float dragSpeed = 1f; - - [Header("Gizmo调试设置")] - public bool showGizmos = true; - public bool showViewportCircle = true; - public bool showCenterPoint = true; - - private Vector2 _viewportCenter; - private bool _isDragging = false; - private Vector2 _lastMousePosition; - private Camera _mainCamera; - - public Vector2 ViewportCenter => _viewportCenter; - public float ViewportRadius => viewportRadius; - - private void Start() - { - _viewportCenter = Vector2.zero; - _mainCamera = Camera.main; - if (_mainCamera == null) - { - _mainCamera = FindObjectOfType(); - } - } - - private void Update() - { - if (!enableDrag) return; - - HandleMouseInput(); - } - - private void HandleMouseInput() - { - if (Input.GetMouseButtonDown(0)) - { - Vector2 mouseWorldPos = GetMouseWorldPosition(); - float distance = Vector2.Distance(mouseWorldPos, _viewportCenter); - - // 如果点击在圆形区域内,开始拖拽 - if (distance <= viewportRadius) - { - _isDragging = true; - _lastMousePosition = mouseWorldPos; - } - } - - if (Input.GetMouseButton(0) && _isDragging) - { - Vector2 currentMousePos = GetMouseWorldPosition(); - Vector2 delta = currentMousePos - _lastMousePosition; - _viewportCenter += delta * dragSpeed; - _lastMousePosition = currentMousePos; - } - - if (Input.GetMouseButtonUp(0)) - { - _isDragging = false; - } - } - - private Vector2 GetMouseWorldPosition() - { - if (_mainCamera == null) return Vector2.zero; - - Vector3 mousePos = Input.mousePosition; - mousePos.z = _mainCamera.nearClipPlane + 1f; - Vector3 worldPos = _mainCamera.ScreenToWorldPoint(mousePos); - return new Vector2(worldPos.x, worldPos.y); - } - - public override void DrawShapes(Camera cam) - { - using (Draw.Command(cam)) - { - Draw.ResetAllDrawStates(); - Draw.LineGeometry = LineGeometry.Volumetric3D; - - // 绘制圆形边框 - Draw.Ring(new Vector3(_viewportCenter.x, _viewportCenter.y, 0), - viewportRadius, borderWidth, viewportBorderColor); - } - } - - public bool IsPositionInViewport(Vector2 position) - { - return Vector2.Distance(position, _viewportCenter) <= viewportRadius; - } - - public void SetViewportCenter(Vector2 center) - { - _viewportCenter = center; - } - - private void OnDrawGizmos() - { - if (!showGizmos) return; - - Vector3 center = new Vector3(_viewportCenter.x, _viewportCenter.y, 0) + transform.position; - - // 绘制圆形视口 - if (showViewportCircle) - { - Gizmos.color = viewportBorderColor; - // 使用多个线段绘制圆形 - int segments = 32; - float angleStep = 360f / segments; - Vector3 prevPoint = center + new Vector3(viewportRadius, 0, 0); - - for (int i = 1; i <= segments; i++) - { - float angle = i * angleStep * Mathf.Deg2Rad; - Vector3 currentPoint = center + new Vector3( - Mathf.Cos(angle) * viewportRadius, - Mathf.Sin(angle) * viewportRadius, - 0 - ); - Gizmos.DrawLine(prevPoint, currentPoint); - prevPoint = currentPoint; - } - } - - // 绘制中心点 - if (showCenterPoint) - { - Gizmos.color = Color.green; - Gizmos.DrawSphere(center, 0.1f); - - // 绘制坐标轴 - Gizmos.color = Color.red; - Gizmos.DrawLine(center, center + Vector3.right * 0.5f); - Gizmos.color = Color.green; - Gizmos.DrawLine(center, center + Vector3.up * 0.5f); - } - } - } -} - diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs deleted file mode 100644 index 38ab64240..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationSystem.cs +++ /dev/null @@ -1,325 +0,0 @@ -using UnityEngine; -using System.Collections.Generic; -using Shapes; - -namespace AibisDream.MiniGame.HuoShan -{ - /// - /// 语言想象系统主管理器 - 协调各模块工作 - /// - [RequireComponent(typeof(CircularViewport))] - public class LanguageImaginationSystem : ImmediateModeShapeDrawer - { - [Header("场设置")] - public float fieldWidth = 50f; - public float fieldHeight = 50f; - public int backgroundNodeCount = 200; - - [Header("圆形视口设置")] - public float viewportRadius = 5f; - - [Header("连线设置")] - public float connectionLineWidth = 0.05f; - public Color backgroundConnectionColor = new Color(1f, 1f, 1f, 0.3f); - public Color sentenceConnectionColor = Color.yellow; - public Color candidateConnectionColor = Color.cyan; - - [Header("Gizmo调试设置")] - public bool showGizmos = true; - public bool showFieldBounds = true; - public bool showNodes = true; - public bool showConnections = true; - public bool showSentenceNodes = true; - public float nodeGizmoSize = 0.2f; - - private BackgroundTextLayer _backgroundLayer; - private CircularViewport _viewport; - private SentenceBuilder _sentenceBuilder; - - private void Start() - { - Initialize(); - } - - private void Initialize() - { - // 初始化圆形视口 - _viewport = GetComponent(); - if (_viewport == null) - { - _viewport = gameObject.AddComponent(); - } - _viewport.viewportRadius = viewportRadius; - - // 初始化背景文字层 - _backgroundLayer = new BackgroundTextLayer( - fieldWidth, - fieldHeight, - backgroundNodeCount, - transform - ); - - // 初始化造句系统 - _sentenceBuilder = new SentenceBuilder(_backgroundLayer, _viewport, this); - } - - private void Update() - { - if (_backgroundLayer != null) - { - _backgroundLayer.Update(Time.deltaTime); - } - } - - public override void DrawShapes(Camera cam) - { - using (Draw.Command(cam)) - { - Draw.ResetAllDrawStates(); - Draw.LineGeometry = LineGeometry.Volumetric3D; - Draw.Thickness = connectionLineWidth; - - // 绘制背景文字之间的连线 - if (_backgroundLayer != null) - { - DrawBackgroundConnections(); - } - - // 绘制句子和候选文字的连线 - if (_sentenceBuilder != null) - { - DrawSentenceConnections(); - } - } - } - - private void DrawBackgroundConnections() - { - var allNodes = _backgroundLayer.GetAllNodes(); - foreach (var node in allNodes) - { - // 只绘制在视口内的连线 - if (!_viewport.IsPositionInViewport(node.Position)) - continue; - - foreach (var connectedNode in node.ConnectedNodes) - { - // 只绘制连接的另一端也在视口内的连线 - if (!_viewport.IsPositionInViewport(connectedNode.Position)) - continue; - - // 跳过已经选定的节点之间的连线(由句子连线处理) - if (node.State == TextNodeState.Selected || connectedNode.State == TextNodeState.Selected) - continue; - if (node.State == TextNodeState.Candidate || connectedNode.State == TextNodeState.Candidate) - continue; - - Vector3 posA = new Vector3(node.Position.x, node.Position.y, 0); - Vector3 posB = new Vector3(connectedNode.Position.x, connectedNode.Position.y, 0); - - // 根据节点亮度调整连线颜色 - float avgBrightness = (node.Brightness + connectedNode.Brightness) * 0.5f; - Color lineColor = backgroundConnectionColor * avgBrightness; - - Draw.Line(posA, posB, connectionLineWidth, lineColor); - } - } - } - - private void DrawSentenceConnections() - { - var sentenceNodes = _sentenceBuilder.GetSentenceNodes(); - - // 绘制句子节点之间的连线(稳定清晰) - for (int i = 0; i < sentenceNodes.Count - 1; i++) - { - var nodeA = sentenceNodes[i]; - var nodeB = sentenceNodes[i + 1]; - - Vector3 posA = new Vector3(nodeA.Position.x, nodeA.Position.y, 0); - Vector3 posB = new Vector3(nodeB.Position.x, nodeB.Position.y, 0); - - Draw.Line(posA, posB, connectionLineWidth * 2f, sentenceConnectionColor); - } - - // 绘制候选文字与选定文字的连线 - var allNodes = _backgroundLayer.GetAllNodes(); - foreach (var node in allNodes) - { - if (node.State == TextNodeState.Candidate) - { - foreach (var connectedNode in node.ConnectedNodes) - { - if (connectedNode.State == TextNodeState.Selected) - { - Vector3 posA = new Vector3(node.Position.x, node.Position.y, 0); - Vector3 posB = new Vector3(connectedNode.Position.x, connectedNode.Position.y, 0); - - // 根据概率调整连线颜色和宽度 - float alpha = node.Probability; - Color lineColor = candidateConnectionColor; - lineColor.a = alpha; - - Draw.Line(posA, posB, connectionLineWidth * (0.5f + alpha * 0.5f), lineColor); - } - } - } - } - } - - /// - /// 开始构建句子(由Yarn指令调用) - /// - public void StartSentence(string sentence, int stuckIndex = -1) - { - if (_sentenceBuilder != null) - { - _sentenceBuilder.StartBuildingSentence(sentence, stuckIndex); - } - } - - /// - /// 停止构建句子 - /// - public void StopSentence() - { - if (_sentenceBuilder != null) - { - _sentenceBuilder.StopBuilding(); - } - } - - private void OnDestroy() - { - if (_backgroundLayer != null) - { - _backgroundLayer.Cleanup(); - } - } - - private void OnDrawGizmos() - { - if (!showGizmos) return; - - // 绘制场边界 - if (showFieldBounds) - { - Gizmos.color = new Color(0.5f, 0.5f, 0.5f, 0.3f); - Vector3 center = transform.position; - Vector3 size = new Vector3(fieldWidth, fieldHeight, 0.1f); - Gizmos.DrawWireCube(center, size); - } - - // 绘制节点和连线 - if (_backgroundLayer != null && Application.isPlaying) - { - var allNodes = _backgroundLayer.GetAllNodes(); - - // 绘制节点 - if (showNodes) - { - foreach (var node in allNodes) - { - Vector3 nodePos = new Vector3(node.Position.x, node.Position.y, 0) + transform.position; - - // 根据状态设置颜色 - Color gizmoColor = GetNodeGizmoColor(node.State); - Gizmos.color = gizmoColor * node.Brightness; - - // 根据状态设置大小 - float size = nodeGizmoSize; - if (node.State == TextNodeState.Selected) - size = nodeGizmoSize * 1.5f; - else if (node.State == TextNodeState.Candidate) - size = nodeGizmoSize * 1.2f; - else if (node.State == TextNodeState.Stuck) - size = nodeGizmoSize * 1.3f; - - Gizmos.DrawSphere(nodePos, size); - - // 绘制文字标签 - #if UNITY_EDITOR - UnityEditor.Handles.Label(nodePos + Vector3.up * 0.5f, node.Text); - #endif - } - } - - // 绘制连线 - if (showConnections) - { - foreach (var node in allNodes) - { - Vector3 nodePos = new Vector3(node.Position.x, node.Position.y, 0) + transform.position; - - foreach (var connectedNode in node.ConnectedNodes) - { - Vector3 connectedPos = new Vector3(connectedNode.Position.x, connectedNode.Position.y, 0) + transform.position; - - // 根据节点状态设置连线颜色 - Color lineColor = GetConnectionGizmoColor(node, connectedNode); - Gizmos.color = lineColor; - - Gizmos.DrawLine(nodePos, connectedPos); - } - } - } - - // 绘制句子节点 - if (showSentenceNodes && _sentenceBuilder != null) - { - var sentenceNodes = _sentenceBuilder.GetSentenceNodes(); - for (int i = 0; i < sentenceNodes.Count; i++) - { - var node = sentenceNodes[i]; - Vector3 nodePos = new Vector3(node.Position.x, node.Position.y, 0) + transform.position; - - // 绘制句子节点高亮 - Gizmos.color = Color.yellow; - Gizmos.DrawWireSphere(nodePos, nodeGizmoSize * 2f); - - // 绘制序号 - #if UNITY_EDITOR - UnityEditor.Handles.Label(nodePos + Vector3.up * 1f, $"[{i}]"); - #endif - - // 绘制句子连线 - if (i < sentenceNodes.Count - 1) - { - var nextNode = sentenceNodes[i + 1]; - Vector3 nextPos = new Vector3(nextNode.Position.x, nextNode.Position.y, 0) + transform.position; - Gizmos.color = Color.yellow; - Gizmos.DrawLine(nodePos, nextPos); - } - } - } - } - } - - private Color GetNodeGizmoColor(TextNodeState state) - { - return state switch - { - TextNodeState.Selected => Color.yellow, - TextNodeState.Candidate => Color.cyan, - TextNodeState.Stuck => Color.red, - _ => Color.white - }; - } - - private Color GetConnectionGizmoColor(TextNode nodeA, TextNode nodeB) - { - // 句子连线 - if (nodeA.State == TextNodeState.Selected && nodeB.State == TextNodeState.Selected) - return Color.yellow; - - // 候选连线 - if ((nodeA.State == TextNodeState.Candidate && nodeB.State == TextNodeState.Selected) || - (nodeA.State == TextNodeState.Selected && nodeB.State == TextNodeState.Candidate)) - return Color.cyan; - - // 背景连线 - return new Color(1f, 1f, 1f, 0.3f); - } - } -} - diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs deleted file mode 100644 index 6fae24ca1..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/LanguageImaginationYarnCommand.cs +++ /dev/null @@ -1,55 +0,0 @@ -using System.Collections; -using Yarn.Unity; -using UnityEngine; - -namespace AibisDream.MiniGame.HuoShan -{ - /// - /// 语言想象系统Yarn指令 - /// - public static class LanguageImaginationYarnCommand - { - private static LanguageImaginationSystem GetSystem() - { - // 尝试从场景中查找LanguageImaginationSystem - LanguageImaginationSystem system = Object.FindObjectOfType(); - if (system == null) - { - Debug.LogError("[LanguageImaginationYarnCommand] 未找到LanguageImaginationSystem组件!请在场景中添加该组件。"); - } - return system; - } - - /// - /// 开始构建句子 - /// - /// 要构建的句子 - /// 卡壳位置(从0开始,-1表示不卡壳) - [YarnCommand("language_imagine")] - public static IEnumerator LanguageImagine(string sentence, int stuckIndex = -1) - { - var system = GetSystem(); - if (system != null) - { - system.StartSentence(sentence, stuckIndex); - - // 等待句子构建完成(这里可以添加更复杂的等待逻辑) - yield return new WaitForSeconds(0.1f); - } - } - - /// - /// 停止构建句子 - /// - [YarnCommand("language_imagine_stop")] - public static void LanguageImagineStop() - { - var system = GetSystem(); - if (system != null) - { - system.StopSentence(); - } - } - } -} - diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md b/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md deleted file mode 100644 index fc883a68b..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/README.md +++ /dev/null @@ -1,96 +0,0 @@ -# 语言想象功能使用说明 - -## 功能概述 - -这是一个语言想象系统,实现了以下功能: - -1. **背景文字层**:大量文字不断变化字符和明暗,文字间寻找关联形成词语连线 -2. **圆形可视区域**:通过鼠标拖拽移动圆形区域查看不同部分 -3. **造句功能**:根据Yarn指令传入的句子,逐步构建句子 -4. **卡壳功能**:可在指定位置卡壳,显示错误文字,需要点击移除 - -## 文件结构 - -- `TextNode.cs` - 文字节点类,管理单个文字的显示、状态和连接关系 -- `BackgroundTextLayer.cs` - 背景文字层系统,生成和管理背景文字 -- `CircularViewport.cs` - 圆形可视区域,使用Shapes绘制圆形遮罩 -- `SentenceBuilder.cs` - 造句系统,处理句子生成流程 -- `LanguageImaginationSystem.cs` - 主管理器,协调各模块工作 -- `LanguageImaginationYarnCommand.cs` - Yarn指令接口 - -## 使用方法 - -### 1. 场景设置 - -1. 在场景中创建一个GameObject -2. 添加 `LanguageImaginationSystem` 组件 -3. 调整参数: - - **场设置**:fieldWidth, fieldHeight, backgroundNodeCount - - **圆形视口设置**:viewportRadius - - **连线设置**:connectionLineWidth, 各种连线颜色 - -### 2. Yarn指令使用 - -#### 开始构建句子 -``` -<> -``` -- 第一个参数:要构建的句子 -- 第二个参数(可选):卡壳位置(从0开始,-1表示不卡壳)。例如3表示在第4个字(索引3)处卡壳 - -#### 停止构建句子 -``` -<> -``` - -### 3. 功能说明 - -#### 背景文字层 -- 自动生成大量随机文字 -- 文字会随机变化字符和亮度 -- 文字之间会根据距离和概率建立连接关系 -- 连接关系会动态更新 - -#### 圆形可视区域 -- 点击并拖拽圆形区域内的任意位置可以移动视口 -- 只有视口内的文字和连线会被显示 - -#### 造句流程 -1. 在当前可视范围内找到或创建第一个字(如"这") -2. 将该字设置为选定状态,放大并高亮显示 -3. 移动到句子位置 -4. 在选定字周围生成候选文字 -5. 候选文字的概率动态变化,直到目标字概率最高 -6. 目标字成为新的选定字,其他候选恢复随机 -7. 重复直到句子完成 - -#### 卡壳功能 -- 当到达指定的卡壳位置时,会显示错误文字("我是个傻逼") -- 错误文字显示为红色,概率100% -- 点击错误文字可以移除 -- 全部移除后继续构建流程 - -### 4. 视觉表现 - -- **背景文字连线**:半透明白色,根据文字亮度调整 -- **句子连线**:黄色,较粗,稳定清晰 -- **候选文字连线**:青色,根据概率调整透明度和宽度 -- **选定文字**:黄色,放大1.5倍 -- **候选文字**:青色,亮度随概率变化 -- **卡壳文字**:红色,放大1.2倍 - -## 注意事项 - -1. 确保场景中有主摄像机 -2. 需要TextMeshPro支持 -3. 需要DOTween支持(用于动画) -4. 需要Shapes库支持(用于绘制) -5. 建议使用正交摄像机以获得更好的2D效果 - -## 扩展建议 - -1. 可以调整候选文字的数量和范围 -2. 可以自定义卡壳时的错误文字 -3. 可以添加更多视觉效果(如粒子效果) -4. 可以优化性能(如对象池、LOD等) - diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs deleted file mode 100644 index 9b19bbc25..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs +++ /dev/null @@ -1,375 +0,0 @@ -using UnityEngine; -using System.Collections; -using System.Collections.Generic; -using System.Linq; -using DG.Tweening; - -namespace AibisDream.MiniGame.HuoShan -{ - /// - /// 造句系统 - 处理句子生成流程:选定文字、候选文字、概率变化、连线 - /// - public class SentenceBuilder - { - private BackgroundTextLayer _backgroundLayer; - private CircularViewport _viewport; - private List _sentenceNodes; - private string _targetSentence; - private int _currentIndex = 0; - private bool _isBuilding = false; - private int _stuckIndex = -1; // 卡壳位置,-1表示不卡壳 - - // 候选文字相关 - private List _candidateNodes; - private float _probabilityChangeSpeed = 0.5f; - private Coroutine _buildingCoroutine; - private MonoBehaviour _coroutineRunner; - - // 句子连线设置 - private float _sentenceLineSpacing = 1.5f; - private Vector2 _sentenceDirection = Vector2.right; - - public SentenceBuilder(BackgroundTextLayer backgroundLayer, CircularViewport viewport, MonoBehaviour coroutineRunner) - { - _backgroundLayer = backgroundLayer; - _viewport = viewport; - _coroutineRunner = coroutineRunner; - _sentenceNodes = new List(); - _candidateNodes = new List(); - } - - /// - /// 开始构建句子 - /// - public void StartBuildingSentence(string sentence, int stuckIndex = -1) - { - if (_isBuilding) - { - StopBuilding(); - } - - _targetSentence = sentence; - _currentIndex = 0; - _stuckIndex = stuckIndex; - _isBuilding = true; - - // 清理之前的句子节点 - ClearSentence(); - - // 开始构建协程 - _buildingCoroutine = _coroutineRunner.StartCoroutine(BuildingCoroutine()); - } - - private IEnumerator BuildingCoroutine() - { - // 等待一帧确保背景层已初始化 - yield return null; - - while (_currentIndex < _targetSentence.Length && _isBuilding) - { - char targetChar = _targetSentence[_currentIndex]; - - // 检查是否到达卡壳位置 - if (_currentIndex == _stuckIndex) - { - yield return _coroutineRunner.StartCoroutine(HandleStuck()); - continue; - } - - // 在当前可视范围内找到或创建目标文字 - TextNode targetNode = FindOrCreateNodeInViewport(targetChar.ToString()); - - if (targetNode != null) - { - // 设置为选定状态 - SetNodeAsSelected(targetNode, _currentIndex); - _sentenceNodes.Add(targetNode); - - // 移动到句子位置 - yield return MoveNodeToSentencePosition(targetNode, _currentIndex); - - // 如果不是最后一个字,准备下一个字的候选 - if (_currentIndex < _targetSentence.Length - 1) - { - yield return _coroutineRunner.StartCoroutine(PrepareNextCandidate()); - } - - _currentIndex++; - } - - yield return new WaitForSeconds(0.5f); - } - - _isBuilding = false; - } - - private TextNode FindOrCreateNodeInViewport(string text) - { - // 首先尝试在可视范围内找到匹配的文字 - var nodesInViewport = _backgroundLayer.GetNodesInRange(_viewport.ViewportCenter, _viewport.ViewportRadius); - var matchingNode = nodesInViewport.FirstOrDefault(n => n.Text == text && n.State == TextNodeState.Random); - - if (matchingNode != null) - { - return matchingNode; - } - - // 如果找不到,在可视范围内随机选择一个节点并改变其文字 - if (nodesInViewport.Count > 0) - { - var randomNode = nodesInViewport[Random.Range(0, nodesInViewport.Count)]; - randomNode.Text = text; - randomNode.UpdateVisual(); - return randomNode; - } - - return null; - } - - private void SetNodeAsSelected(TextNode node, int index) - { - node.State = TextNodeState.Selected; - node.SentenceIndex = index; - node.Scale = 1.5f; - node.Brightness = 1f; - node.Color = Color.yellow; - node.UpdateVisual(); - - // 放大动画 - node.GameObject.transform.DOScale(1.5f, 0.3f).SetEase(Ease.OutBack); - } - - private IEnumerator MoveNodeToSentencePosition(TextNode node, int index) - { - Vector2 targetPos = GetSentencePosition(index); - - // 使用DOTween移动 - yield return node.GameObject.transform.DOMove( - new Vector3(targetPos.x, targetPos.y, 0), - 0.5f - ).SetEase(Ease.OutQuad).WaitForCompletion(); - - node.Position = targetPos; - } - - private Vector2 GetSentencePosition(int index) - { - // 以视口中心为起点,沿方向排列 - Vector2 startPos = _viewport.ViewportCenter; - Vector2 offset = _sentenceDirection * index * _sentenceLineSpacing; - return startPos + offset; - } - - private IEnumerator PrepareNextCandidate() - { - if (_currentIndex >= _targetSentence.Length - 1) yield break; - - char nextChar = _targetSentence[_currentIndex + 1]; - - // 清除之前的候选 - ClearCandidates(); - - // 在当前选定节点周围找到几个节点作为候选 - TextNode selectedNode = _sentenceNodes[_currentIndex]; - var nearbyNodes = _backgroundLayer.GetNodesInRange(selectedNode.Position, 3f) - .Where(n => n.State == TextNodeState.Random) - .Take(5) - .ToList(); - - // 确保目标字符在候选列表中 - bool hasTargetChar = false; - foreach (var node in nearbyNodes) - { - if (node.Text == nextChar.ToString()) - { - hasTargetChar = true; - break; - } - } - - if (!hasTargetChar && nearbyNodes.Count > 0) - { - nearbyNodes[0].Text = nextChar.ToString(); - nearbyNodes[0].UpdateVisual(); - } - - // 设置候选状态 - _candidateNodes.Clear(); - foreach (var node in nearbyNodes) - { - node.State = TextNodeState.Candidate; - node.Color = Color.cyan; - node.Probability = Random.Range(0f, 0.5f); - node.AddConnection(selectedNode); - selectedNode.AddConnection(node); - node.UpdateVisual(); - _candidateNodes.Add(node); - } - - // 概率变化动画 - yield return _coroutineRunner.StartCoroutine(AnimateCandidateProbabilities(nextChar.ToString())); - } - - private IEnumerator AnimateCandidateProbabilities(string targetText) - { - float duration = 2f; - float elapsed = 0f; - - while (elapsed < duration) - { - elapsed += Time.deltaTime; - float t = elapsed / duration; - - foreach (var node in _candidateNodes) - { - if (node.Text == targetText) - { - // 目标字符概率逐渐增加到1 - node.Probability = Mathf.Lerp(node.Probability, 1f, t * 0.1f); - } - else - { - // 其他字符概率逐渐降低 - node.Probability = Mathf.Lerp(node.Probability, 0f, t * 0.1f); - } - - // 根据概率更新亮度 - node.Brightness = 0.5f + node.Probability * 0.5f; - node.UpdateVisual(); - } - - yield return null; - } - - // 找到概率最高的节点(应该是目标字符) - var selectedCandidate = _candidateNodes.OrderByDescending(n => n.Probability).FirstOrDefault(); - if (selectedCandidate != null && selectedCandidate.Text == targetText) - { - // 清除候选状态,恢复随机 - ClearCandidates(); - selectedCandidate.State = TextNodeState.Random; - } - } - - private IEnumerator HandleStuck() - { - // 生成卡壳的错误文字 - string stuckText = "我是个傻逼"; - - // 在当前位置创建卡壳文字 - List stuckNodes = new List(); - Vector2 currentPos = GetSentencePosition(_currentIndex); - - for (int i = 0; i < stuckText.Length; i++) - { - TextNode stuckNode = FindOrCreateNodeInViewport(stuckText[i].ToString()); - if (stuckNode != null) - { - stuckNode.State = TextNodeState.Stuck; - stuckNode.IsStuck = true; - stuckNode.SentenceIndex = _currentIndex + i; - stuckNode.Color = Color.red; - stuckNode.Probability = 1f; - stuckNode.Scale = 1.2f; - stuckNode.Position = currentPos + Vector2.right * i * _sentenceLineSpacing; - stuckNode.UpdateVisual(); - stuckNodes.Add(stuckNode); - } - } - - // 等待玩家点击移除所有卡壳文字 - while (stuckNodes.Count > 0) - { - yield return null; - - // 检查点击 - if (Input.GetMouseButtonDown(0)) - { - Vector2 mousePos = GetMouseWorldPosition(); - for (int i = stuckNodes.Count - 1; i >= 0; i--) - { - var node = stuckNodes[i]; - float distance = Vector2.Distance(mousePos, node.Position); - if (distance < 1f) // 点击范围 - { - // 移除节点 - node.State = TextNodeState.Random; - node.IsStuck = false; - node.Color = Color.white; - node.UpdateVisual(); - stuckNodes.RemoveAt(i); - - // 销毁GameObject - if (node.GameObject != null) - { - Object.Destroy(node.GameObject); - } - } - } - } - } - - // 卡壳处理完成,继续构建 - } - - private Vector2 GetMouseWorldPosition() - { - Camera cam = Camera.main; - if (cam == null) return Vector2.zero; - - Vector3 mousePos = Input.mousePosition; - mousePos.z = cam.nearClipPlane + 1f; - Vector3 worldPos = cam.ScreenToWorldPoint(mousePos); - return new Vector2(worldPos.x, worldPos.y); - } - - private void ClearCandidates() - { - foreach (var node in _candidateNodes) - { - if (node.State == TextNodeState.Candidate) - { - node.State = TextNodeState.Random; - node.Color = Color.white; - node.Probability = 0f; - node.Brightness = 1f; - node.UpdateVisual(); - } - } - _candidateNodes.Clear(); - } - - private void ClearSentence() - { - foreach (var node in _sentenceNodes) - { - if (node.State == TextNodeState.Selected) - { - node.State = TextNodeState.Random; - node.SentenceIndex = -1; - node.Scale = 1f; - node.Color = Color.white; - node.UpdateVisual(); - } - } - _sentenceNodes.Clear(); - } - - public void StopBuilding() - { - _isBuilding = false; - if (_buildingCoroutine != null) - { - _coroutineRunner.StopCoroutine(_buildingCoroutine); - _buildingCoroutine = null; - } - ClearCandidates(); - } - - public List GetSentenceNodes() - { - return _sentenceNodes; - } - } -} - diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs.meta b/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs.meta deleted file mode 100644 index cec804d5c..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/SentenceBuilder.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fcab091b0b0e39142ae616cc9a548074 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs b/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs deleted file mode 100644 index c431deb0a..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs +++ /dev/null @@ -1,75 +0,0 @@ -using UnityEngine; -using TMPro; -using System.Collections.Generic; - -namespace AibisDream.MiniGame.HuoShan -{ - /// - /// 文字节点类 - 管理单个文字的显示、状态和连接关系 - /// - public class TextNode - { - public Vector2 Position { get; set; } - public string Text { get; set; } - public TextNodeState State { get; set; } - public float Brightness { get; set; } = 1f; - public float Scale { get; set; } = 1f; - public Color Color { get; set; } = Color.white; - public float Probability { get; set; } = 0f; // 候选文字的概率 - - // 连接关系 - public List ConnectedNodes { get; private set; } - - // UI组件引用 - public TextMeshPro TextComponent { get; set; } - public GameObject GameObject { get; set; } - - // 句子相关 - public int SentenceIndex { get; set; } = -1; // 在句子中的索引,-1表示不在句子中 - public bool IsStuck { get; set; } = false; // 是否处于卡壳状态 - - public TextNode(Vector2 position, string text) - { - Position = position; - Text = text; - State = TextNodeState.Random; - ConnectedNodes = new List(); - } - - public void AddConnection(TextNode node) - { - if (!ConnectedNodes.Contains(node)) - { - ConnectedNodes.Add(node); - } - } - - public void RemoveConnection(TextNode node) - { - ConnectedNodes.Remove(node); - } - - public void UpdateVisual() - { - if (TextComponent != null) - { - TextComponent.text = Text; - TextComponent.color = Color * Brightness; - TextComponent.transform.localScale = Vector3.one * Scale; - TextComponent.transform.position = new Vector3(Position.x, Position.y, 0); - } - } - } - - /// - /// 文字节点状态 - /// - public enum TextNodeState - { - Random, // 随机变化状态 - Selected, // 已选定的文字(句子中的字) - Candidate, // 候选文字 - Stuck // 卡壳状态 - } -} - diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs.meta b/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs.meta deleted file mode 100644 index 4f69f4ade..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress/TextNode.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 27e691dacc3b63545924959f964de0bb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: From c2d2c87fbe3398a613299c39714d2e00e73f9124 Mon Sep 17 00:00:00 2001 From: bottlefish <781230111@qq.com> Date: Thu, 13 Nov 2025 20:30:13 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E6=96=B0=E7=9A=84?= =?UTF-8?q?=E6=95=88=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Scenes/languageTest.unity | 572 +++++++++++- .../HuoShan/Language/CandidateParticle.cs | 82 +- .../HuoShan/Language/ConnectionRenderer.cs | 65 +- .../HuoShan/Language/EffectPropagation.cs | 76 +- .../HuoShan/Language/FloatingTextParticle.cs | 36 +- .../Language/LanguageParticleManager.cs | 858 +++++++++++++----- .../LanguageParticleSystem_Summary.md | 55 -- .../Language/NeuralPropagationConfig.asset | 32 + .../NeuralPropagationConfig.asset.meta | 8 + .../MiniGame/HuoShan/Language/TextParticle.cs | 26 + .../HuoShan/Language/WaveformRenderer.cs | 4 +- 11 files changed, 1455 insertions(+), 359 deletions(-) create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/NeuralPropagationConfig.asset create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/NeuralPropagationConfig.asset.meta diff --git a/Assets/Scenes/languageTest.unity b/Assets/Scenes/languageTest.unity index b59dddfd8..6a0699da3 100644 --- a/Assets/Scenes/languageTest.unity +++ b/Assets/Scenes/languageTest.unity @@ -180,6 +180,299 @@ MonoBehaviour: targetSentence: "\u522B\u8FC7\u6765\u6211\u611F\u89C9\u5BB3\u6015" waveformAmplitude: 0.3 interactionRadius: 0.5 + mouseInteractionRadius: 1.5 + repulsionForce: 2 + attractionForce: 1.5 + enableAutoPropagation: 1 + autoPropagationInterval: 2 + autoPropagationCount: 1 + propagationDuration: 1 + propagationDelay: 0.08 + maxPropagationNodes: 8 + targetParticleColor: {r: 0.2, g: 0.78039217, b: 1, a: 1} + nonTargetParticleColor: {r: 1, g: 0.40870008, b: 0.38823533, a: 0.69803923} + propagationColor: {r: 0.6621573, g: 0.8664762, b: 0.9433962, a: 1} + floatingTextColor: {r: 1, g: 1, b: 1, a: 1} + targetCalmColor: {r: 0.78, g: 0.59, b: 0.59, a: 1} + targetParticleFontSize: 3.5 + nonTargetParticleFontSize: 2.5 + floatingTextFontSize: 2 + targetParticleBold: 1 + nonTargetParticleBold: 0 + targetConnectionColor: {r: 0.3882353, g: 0.78039217, b: 1, a: 0.6666667} + nonTargetConnectionColor: {r: 1, g: 0.41911593, b: 0.38823533, a: 0.7} + propagationLineColor: {r: 0.6627451, g: 0.8666667, b: 0.94509804, a: 1} + targetConnectionThickness: 0.04 + nonTargetConnectionThickness: 0.02 + propagationLineThickness: 0.03 + integrationProgressText: {fileID: 1294290436} + interferenceCountText: {fileID: 528708888} + focusSequenceButton: {fileID: 153766885} + focusZoomScale: 1.6 + focusMoveDuration: 1.2 + focusFadeDuration: 1 + probabilityDuration: 3.5 + predictionSequenceGap: 0.4 + spreadDistance: 0.35 + enableSeparation: 1 + minParticleSpacing: 0.6 + separationForce: 2.5 + lineAlphaMultiplier: 0.65 +--- !u!1 &153766884 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 153766888} + - component: {fileID: 153766887} + - component: {fileID: 153766886} + - component: {fileID: 153766885} + m_Layer: 5 + m_Name: Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &153766885 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 153766884} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 153766886} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &153766886 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 153766884} + 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: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + 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!222 &153766887 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 153766884} + m_CullTransparentMesh: 1 +--- !u!224 &153766888 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 153766884} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.012000492, y: 0.012000492, z: 0.012000492} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1137525304} + m_Father: {fileID: 1665911936} + 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: 6.26, y: 2.12} + m_SizeDelta: {x: 160, y: 80} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &528708887 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 528708890} + - component: {fileID: 528708889} + - component: {fileID: 528708888} + m_Layer: 5 + m_Name: Text (TMP) (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &528708888 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 528708887} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: New Text + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4284643057 + m_fontColor: {r: 0.9433962, g: 0.4632709, b: 0.38625845, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 0.3 + m_fontSizeBase: 0.3 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0.41540456, z: -2.6862788, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &528708889 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 528708887} + m_CullTransparentMesh: 1 +--- !u!224 &528708890 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 528708887} + 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: 1665911936} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 10.839999, y: -1.5600002} + m_SizeDelta: {x: 1, y: 1} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &786157861 GameObject: m_ObjectHideFlags: 0 @@ -260,8 +553,8 @@ Camera: m_GameObject: {fileID: 786157861} m_Enabled: 1 serializedVersion: 2 - m_ClearFlags: 1 - m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 @@ -317,6 +610,274 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1137525303 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1137525304} + - component: {fileID: 1137525306} + - component: {fileID: 1137525305} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1137525304 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1137525303} + 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: 153766888} + 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 &1137525305 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1137525303} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: "\u8F93\u51FA" + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 24 + m_fontSizeBase: 24 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &1137525306 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1137525303} + m_CullTransparentMesh: 1 +--- !u!1 &1294290433 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1294290434} + - component: {fileID: 1294290435} + - component: {fileID: 1294290436} + m_Layer: 5 + m_Name: Text (TMP) (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1294290434 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1294290433} + 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: 1665911936} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 10.83, y: -0.71} + m_SizeDelta: {x: 1, y: 1} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1294290435 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1294290433} + m_CullTransparentMesh: 1 +--- !u!114 &1294290436 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1294290433} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: New Text + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294040693 + m_fontColor: {r: 0.45745817, g: 0.86362934, b: 0.9433962, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 0.3 + m_fontSizeBase: 0.3 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0.41540456, z: -2.6862788, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} --- !u!1 &1665911932 GameObject: m_ObjectHideFlags: 0 @@ -410,12 +971,15 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 1294290434} + - {fileID: 528708890} + - {fileID: 153766888} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} + m_AnchoredPosition: {x: -2.54, y: 0} m_SizeDelta: {x: 10, y: 10} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1764870496 diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs b/Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs index 323a8022a..749fd182d 100644 --- a/Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs +++ b/Assets/Scripts/MiniGame/HuoShan/Language/CandidateParticle.cs @@ -40,6 +40,18 @@ namespace AibisDream.MiniGame.Language public float dissolveProgress = 0f; // 消散进度(0-1) public WaveformPoint waveformPoint; // 关联的波形点 + // 颜色配置(由Manager设置) + private Color targetColor = new Color(1f, 0.39f, 0.39f, 1f); // 目标粒子颜色 + private Color nonTargetColor = new Color(0.2f, 0.78f, 1f, 1f); // 非目标粒子颜色 + private Color propagationColor = new Color(1f, 0.59f, 0.2f, 1f); // 传播颜色 + private Color calmColor = new Color(0.78f, 0.59f, 0.59f, 1f); // 平静后颜色 + + // 字体样式配置(由Manager设置) + private float targetFontSize = 3.5f; + private float nonTargetFontSize = 2.5f; + private bool targetBold = true; + private bool nonTargetBold = false; + protected override void Awake() { base.Awake(); @@ -47,13 +59,14 @@ namespace AibisDream.MiniGame.Language baseAlpha = 0.6f; // 0-1 范围的透明度 probability = Random.Range(0.1f, 1f); alpha = baseAlpha + probability * 0.4f; // 最大 1.0 - size = 3f; + size = nonTargetFontSize; // 默认使用非目标粒子大小 velocity = new Vector2(Random.Range(-0.5f, 0.5f), Random.Range(-0.5f, 0.5f)); changeInterval = Random.Range(1f, 2.5f); if (textMesh != null) { textMesh.fontSize = size; + UpdateFontStyle(); } } @@ -125,6 +138,9 @@ namespace AibisDream.MiniGame.Language { if (textMesh == null) return; + // 更新字体样式(大小和加粗) + UpdateFontStyle(); + // 计算显示位置 Vector3 displayOffset = (Vector3)(vibrationOffset + anxietyShakeOffset) + Vector3.up * anxietyFloatY; textMesh.transform.localPosition = displayOffset; @@ -144,19 +160,21 @@ namespace AibisDream.MiniGame.Language if (isRed) { - // 红色粒子:根据平静进度调整颜色 - float r = Mathf.Lerp(1f, 0.78f, calmProgress); - float g = Mathf.Lerp(0.39f, 0.59f, calmProgress); - float b = Mathf.Lerp(0.39f, 0.59f, calmProgress); - color = new Color(r, g, b, displayAlpha); // displayAlpha 已经是 0-1 范围 + // 目标粒子:根据平静进度从目标颜色过渡到平静颜色 + float r = Mathf.Lerp(targetColor.r, calmColor.r, calmProgress); + float g = Mathf.Lerp(targetColor.g, calmColor.g, calmProgress); + float b = Mathf.Lerp(targetColor.b, calmColor.b, calmProgress); + color = new Color(r, g, b, displayAlpha); } else if (isOrange) { - color = new Color(1f, 0.59f, 0.2f, displayAlpha); + // 传播效果颜色 + color = new Color(propagationColor.r, propagationColor.g, propagationColor.b, displayAlpha); } else { - color = new Color(0.2f, 0.78f, 1f, displayAlpha); + // 非目标粒子颜色 + color = new Color(nonTargetColor.r, nonTargetColor.g, nonTargetColor.b, displayAlpha); } textMesh.color = color; @@ -199,5 +217,53 @@ namespace AibisDream.MiniGame.Language vibrationOffset = Vector2.zero; effectTimer = 0; } + + /// + /// 设置粒子颜色配置 + /// + public void SetColors(Color target, Color nonTarget, Color propagation, Color calm) + { + targetColor = target; + nonTargetColor = nonTarget; + propagationColor = propagation; + calmColor = calm; + } + + /// + /// 设置字体样式配置 + /// + public void SetFontStyles(float targetSize, float nonTargetSize, bool targetIsBold, bool nonTargetIsBold) + { + targetFontSize = targetSize; + nonTargetFontSize = nonTargetSize; + targetBold = targetIsBold; + nonTargetBold = nonTargetIsBold; + + // 立即应用 + if (textMesh != null) + { + UpdateFontStyle(); + } + } + + /// + /// 更新字体样式(根据粒子状态) + /// + private void UpdateFontStyle() + { + if (textMesh == null) return; + + // 根据是否为目标粒子设置大小和加粗 + if (isRed) + { + textMesh.fontSize = targetFontSize; + textMesh.fontStyle = targetBold ? TMPro.FontStyles.Bold : TMPro.FontStyles.Normal; + } + else + { + textMesh.fontSize = nonTargetFontSize; + textMesh.fontStyle = nonTargetBold ? TMPro.FontStyles.Bold : TMPro.FontStyles.Normal; + } + } } } diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs b/Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs index 48b50169d..fc0d7461d 100644 --- a/Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs +++ b/Assets/Scripts/MiniGame/HuoShan/Language/ConnectionRenderer.cs @@ -6,6 +6,7 @@ namespace AibisDream.MiniGame.Language { /// /// 连接线渲染器:使用Shapes绘制粒子间的连接线 + /// 注意:sortingOrder 设置为 0,确保低于文字(文字 sortingOrder = 10) /// [ExecuteAlways] public class ConnectionRenderer : ImmediateModeShapeDrawer @@ -15,19 +16,33 @@ namespace AibisDream.MiniGame.Language [Header("连接线设置")] public float connectionDistance = 2f; - public Color blueConnectionColor = new Color(0.39f, 0.78f, 1f, 0.7f); - public Color redConnectionColor = new Color(1f, 0.39f, 0.39f, 1f); - public float blueLineThickness = 0.02f; - public float redLineThickness = 0.04f; + private Color nonTargetConnectionColor = new Color(0.39f, 0.78f, 1f, 0.7f); // 非目标粒子连线颜色 + private Color targetConnectionColor = new Color(1f, 0.39f, 0.39f, 1f); // 目标粒子连线颜色 + private float nonTargetLineThickness = 0.02f; + private float targetLineThickness = 0.04f; [Header("效果传播设置")] - public Color propagationColor = new Color(1f, 0.59f, 0.2f, 1f); - public float propagationLineThickness = 0.03f; + private Color propagationColor = new Color(1f, 0.59f, 0.2f, 1f); + private float propagationLineThickness = 0.03f; private List candidateParticles; private List effectPropagations; private CompletionPhase completionPhase; private float fadeOutAlpha; + private float nonTargetAlphaScale = 1f; + private float targetAlphaScale = 1f; + + public float NonTargetAlphaScale + { + get => nonTargetAlphaScale; + set => nonTargetAlphaScale = Mathf.Clamp01(value); + } + + public float TargetAlphaScale + { + get => targetAlphaScale; + set => targetAlphaScale = Mathf.Clamp(value, 0f, 1.5f); + } public void SetData( List candidates, @@ -50,15 +65,18 @@ namespace AibisDream.MiniGame.Language { Draw.BlendMode = ShapesBlendMode.Transparent; Draw.ZTest = UnityEngine.Rendering.CompareFunction.Always; + // 注意:连接线默认在底层,文字的 sortingOrder = 10 会显示在上层 // 绘制蓝色粒子间的连线 - if (completionPhase == CompletionPhase.None || completionPhase == CompletionPhase.Arranging) + if (completionPhase == CompletionPhase.None || completionPhase == CompletionPhase.Completed) { DrawBlueConnections(); } // 绘制红色粒子间的连线 - if (completionPhase == CompletionPhase.None || completionPhase == CompletionPhase.Arranging) + if (completionPhase == CompletionPhase.None || + completionPhase == CompletionPhase.Completed || + completionPhase == CompletionPhase.Focusing) { DrawRedConnections(); } @@ -74,7 +92,7 @@ namespace AibisDream.MiniGame.Language private void DrawBlueConnections() { Draw.LineGeometry = LineGeometry.Flat2D; - Draw.Thickness = blueLineThickness; + Draw.Thickness = nonTargetLineThickness; for (int i = 0; i < candidateParticles.Count; i++) { @@ -90,8 +108,8 @@ namespace AibisDream.MiniGame.Language if (distance < connectionDistance) { float alpha = Mathf.Lerp(0.7f, 0f, distance / connectionDistance) * fadeOutAlpha; - Color lineColor = blueConnectionColor; - lineColor.a = alpha; + Color lineColor = nonTargetConnectionColor; + lineColor.a = alpha * nonTargetAlphaScale; Draw.Line(p1.transform.position, p2.transform.position, lineColor); } @@ -102,7 +120,7 @@ namespace AibisDream.MiniGame.Language private void DrawRedConnections() { Draw.LineGeometry = LineGeometry.Flat2D; - Draw.Thickness = redLineThickness; + Draw.Thickness = targetLineThickness; var redParticles = new List(); foreach (var p in candidateParticles) @@ -123,8 +141,8 @@ namespace AibisDream.MiniGame.Language if (distance < connectionDistance) { float alpha = Mathf.Lerp(1f, 0.4f, distance / connectionDistance); - Color lineColor = redConnectionColor; - lineColor.a = alpha; + Color lineColor = targetConnectionColor; + lineColor.a = alpha * targetAlphaScale; Draw.Line(redParticles[i].transform.position, redParticles[j].transform.position, lineColor); } @@ -205,6 +223,25 @@ namespace AibisDream.MiniGame.Language Draw.Triangle(tip, left, right, color); } + + /// + /// 设置连接线样式 + /// + public void SetConnectionStyles( + Color targetColor, + Color nonTargetColor, + Color propColor, + float targetThickness, + float nonTargetThickness, + float propThickness) + { + targetConnectionColor = targetColor; + nonTargetConnectionColor = nonTargetColor; + propagationColor = propColor; + targetLineThickness = targetThickness; + nonTargetLineThickness = nonTargetThickness; + propagationLineThickness = propThickness; + } } } diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs b/Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs index 66ff537f9..52a0c2d3e 100644 --- a/Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs +++ b/Assets/Scripts/MiniGame/HuoShan/Language/EffectPropagation.cs @@ -23,42 +23,46 @@ namespace AibisDream.MiniGame.Language } /// - /// 效果传播系统:管理从红色粒子到蓝色粒子的效果传递 + /// 效果传播系统:管理从红色粒子到蓝色粒子的效果传递(使用BFS算法) /// public class EffectPropagation { private CandidateParticle redParticle; private List propagatedParticles = new List(); - private List propagationQueue = new List(); + private Queue propagationQueue = new Queue(); private float lifeTimer; - private float propagationDelay = 0.05f; + private float propagationDelay; private float propagationCounter = 0f; - private int maxPropagationSteps = 8; - private int currentPropagationStep = 0; + private int maxPropagationNodes; + private int currentNodeCount = 0; + private int currentStep = 0; public bool IsActive => lifeTimer > 0; public List PropagatedParticles => propagatedParticles; - public EffectPropagation(CandidateParticle redParticle, float duration = 1f) + public EffectPropagation(CandidateParticle redParticle, float duration, float delay, int maxNodes) { this.redParticle = redParticle; this.lifeTimer = duration; + this.propagationDelay = delay; + this.maxPropagationNodes = maxNodes; - // 从红色粒子开始传播 + // 从红色粒子开始传播(第0步) var connectedBlues = FindConnectedBlues(redParticle); - if (connectedBlues.Count > 0 && currentPropagationStep < maxPropagationSteps) + if (connectedBlues.Count > 0 && currentNodeCount < maxPropagationNodes) { - // 随机选择一个连接的蓝色粒子 - var targetParticle = connectedBlues[Random.Range(0, connectedBlues.Count)]; - ApplyEffectToParticle(targetParticle); + // 第一步:处理所有直接连接的蓝色粒子(BFS第一层) + foreach (var targetParticle in connectedBlues) + { + if (currentNodeCount >= maxPropagationNodes) break; - // 记录传播信息 - propagatedParticles.Add(new PropagationInfo(targetParticle, redParticle, 1)); - - // 加入传播队列 - propagationQueue.Add(targetParticle); - currentPropagationStep = 1; + ApplyEffectToParticle(targetParticle); + propagatedParticles.Add(new PropagationInfo(targetParticle, redParticle, 1)); + propagationQueue.Enqueue(targetParticle); + currentNodeCount++; + } + currentStep = 1; } } @@ -67,35 +71,33 @@ namespace AibisDream.MiniGame.Language lifeTimer -= deltaTime; propagationCounter += deltaTime; - // 定期传播 - if (propagationCounter >= propagationDelay && currentPropagationStep < maxPropagationSteps) + // BFS逐层传播 + if (propagationCounter >= propagationDelay && propagationQueue.Count > 0 && currentNodeCount < maxPropagationNodes) { propagationCounter = 0f; + currentStep++; - List nextQueue = new List(); - - foreach (var sourceParticle in propagationQueue) + // 处理当前层的所有节点 + int currentLevelSize = propagationQueue.Count; + + for (int i = 0; i < currentLevelSize; i++) { - if (currentPropagationStep >= maxPropagationSteps) break; - + if (currentNodeCount >= maxPropagationNodes) break; + + var sourceParticle = propagationQueue.Dequeue(); var connectedBlues = FindConnectedBlues(sourceParticle); - if (connectedBlues.Count > 0) + + // 将所有连接的蓝色粒子加入下一层 + foreach (var targetParticle in connectedBlues) { - var targetParticle = connectedBlues[Random.Range(0, connectedBlues.Count)]; + if (currentNodeCount >= maxPropagationNodes) break; + ApplyEffectToParticle(targetParticle); - - currentPropagationStep++; - - propagatedParticles.Add(new PropagationInfo(targetParticle, sourceParticle, currentPropagationStep)); - - if (currentPropagationStep < maxPropagationSteps) - { - nextQueue.Add(targetParticle); - } + propagatedParticles.Add(new PropagationInfo(targetParticle, sourceParticle, currentStep + 1)); + propagationQueue.Enqueue(targetParticle); + currentNodeCount++; } } - - propagationQueue = nextQueue; } // 更新所有传播粒子的脉冲动画 diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs b/Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs index a43b3fd9b..603395358 100644 --- a/Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs +++ b/Assets/Scripts/MiniGame/HuoShan/Language/FloatingTextParticle.cs @@ -7,6 +7,8 @@ namespace AibisDream.MiniGame.Language /// public class FloatingTextParticle : TextParticle { + private Color baseColor = new Color(0.7f, 0.78f, 1f, 1f); // 默认颜色 + protected override void Awake() { base.Awake(); @@ -15,13 +17,37 @@ namespace AibisDream.MiniGame.Language baseAlpha = Random.Range(0.04f, 0.1f); // 0-1 范围的透明度 alpha = baseAlpha; size = Random.Range(1.5f, 2.5f); - velocity = new Vector2(Random.Range(-0.3f, 0.3f), Random.Range(-0.3f, 0.3f)); - changeInterval = Random.Range(0.5f, 0.7f); + velocity = new Vector2(Random.Range(-1.2f, 1.2f), Random.Range(-1.2f, 1.2f)); + changeInterval = Random.Range(0.2f, 0.3f); if (textMesh != null) { textMesh.fontSize = size; - textMesh.color = new Color(0.7f, 0.78f, 1f, alpha); + textMesh.color = new Color(baseColor.r, baseColor.g, baseColor.b, alpha); + } + } + + /// + /// 设置粒子颜色 + /// + public void SetColor(Color color) + { + baseColor = color; + if (textMesh != null) + { + textMesh.color = new Color(baseColor.r, baseColor.g, baseColor.b, alpha); + } + } + + /// + /// 设置字体大小 + /// + public void SetFontSize(float fontSize) + { + size = fontSize; + if (textMesh != null) + { + textMesh.fontSize = size; } } @@ -29,13 +55,13 @@ namespace AibisDream.MiniGame.Language { if (textMesh != null) { - Color color = new Color(0.7f, 0.78f, 1f, alpha); + Color color = new Color(baseColor.r, baseColor.g, baseColor.b, alpha); textMesh.color = color; } if (glowSprite != null) { - glowSprite.color = new Color(0.7f, 0.78f, 1f, alpha * 0.3f); + glowSprite.color = new Color(baseColor.r, baseColor.g, baseColor.b, alpha * 0.3f); } } } diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs index b86560dd2..3d2b1f892 100644 --- a/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs +++ b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs @@ -1,9 +1,11 @@ using UnityEngine; +using System.Collections; using System.Collections.Generic; using System.Linq; using DG.Tweening; using Shapes; using TMPro; +using UnityEngine.UI; namespace AibisDream.MiniGame.Language { @@ -13,9 +15,9 @@ namespace AibisDream.MiniGame.Language public enum CompletionPhase { None, // 未完成 - Arranging, // 排列中 - Revealing, // 揭示中 - Completed // 已完成 + Completed, // 已完成但尚未进入聚焦流程 + Focusing, // 正在聚焦放大并收敛 + Finished // 全流程完成 } /// @@ -44,7 +46,7 @@ namespace AibisDream.MiniGame.Language [SerializeField] private float textMargin = 1f; [Header("目标句子")] - [SerializeField] private string targetSentence = "别过来我感觉害怕"; + [SerializeField] private string targetSentence = "这是一个测试示例"; [Header("波形参数")] [SerializeField] private float waveformAmplitude = 0.3f; @@ -55,10 +57,61 @@ namespace AibisDream.MiniGame.Language [SerializeField] private float repulsionForce = 2f; [SerializeField] private float attractionForce = 1.5f; + [Header("自动传播效果")] + [SerializeField] private bool enableAutoPropagation = true; // 是否启用自动传播 + [SerializeField] private float autoPropagationInterval = 2f; // 自动传播间隔(秒) + [SerializeField] private int autoPropagationCount = 1; // 每次自动触发的传播数量 + + [Header("传播效果参数")] + [SerializeField] private float propagationDuration = 1f; // 传播效果持续时间 + [SerializeField] private float propagationDelay = 0.08f; // 传播延迟(每层之间的间隔) + [SerializeField] private int maxPropagationNodes = 15; // 最大传播节点数量 + + [Header("颜色配置")] + [SerializeField] private Color targetParticleColor = new Color(1f, 0.39f, 0.39f, 1f); // 目标粒子颜色(原红色) + [SerializeField] private Color nonTargetParticleColor = new Color(0.2f, 0.78f, 1f, 1f); // 非目标粒子颜色(原蓝色) + [SerializeField] private Color propagationColor = new Color(1f, 0.59f, 0.2f, 1f); // 传播效果颜色(橙色) + [SerializeField] private Color floatingTextColor = new Color(0.7f, 0.78f, 1f, 1f); // 背景浮动文字颜色 + [SerializeField] private Color targetCalmColor = new Color(0.78f, 0.59f, 0.59f, 1f); // 目标粒子平静后颜色 + + [Header("文字样式配置")] + [SerializeField] private float targetParticleFontSize = 3.5f; // 目标粒子字体大小 + [SerializeField] private float nonTargetParticleFontSize = 2.5f; // 非目标粒子字体大小 + [SerializeField] private float floatingTextFontSize = 2f; // 背景浮动文字大小 + [SerializeField] private bool targetParticleBold = true; // 目标粒子是否加粗 + [SerializeField] private bool nonTargetParticleBold = false; // 非目标粒子是否加粗 + + [Header("连接线配置")] + [SerializeField] private Color targetConnectionColor = new Color(1f, 0.39f, 0.39f, 1f); // 目标粒子连线颜色 + [SerializeField] private Color nonTargetConnectionColor = new Color(0.39f, 0.78f, 1f, 0.7f);// 非目标粒子连线颜色 + [SerializeField] private Color propagationLineColor = new Color(1f, 0.59f, 0.2f, 1f); // 传播线颜色 + [SerializeField] private float targetConnectionThickness = 0.04f; // 目标粒子连线粗细 + [SerializeField] private float nonTargetConnectionThickness = 0.02f; // 非目标粒子连线粗细 + [SerializeField] private float propagationLineThickness = 0.03f; // 传播线粗细 + + [Header("目标 UI")] + [SerializeField] private TMP_Text integrationProgressText; + [SerializeField] private TMP_Text interferenceCountText; + + [Header("完成阶段 UI")] + [SerializeField] private Button focusSequenceButton; + [SerializeField] private float focusZoomScale = 1.6f; + [SerializeField] private float focusMoveDuration = 1.2f; + [SerializeField] private float focusFadeDuration = 1f; + [SerializeField] private float probabilityDuration = 3.5f; + [SerializeField] private float predictionSequenceGap = 0.4f; + [SerializeField] private float spreadDistance = 0.35f; + + [Header("布局优化")] + [SerializeField] private bool enableSeparation = true; // 是否启用粒子分离力 + [SerializeField] private float minParticleSpacing = 0.6f; // 粒子最小间距 + [SerializeField] private float separationForce = 2.5f; // 分离力度 + [SerializeField] private float lineAlphaMultiplier = 0.65f; // 连接线透明度缩放 + // 粒子列表 private List floatingParticles = new List(); private List candidateParticles = new List(); - private List redParticles = new List(); + private List targetParticles = new List(); // 目标粒子列表(原 redParticles) // 效果系统 private List effectPropagations = new List(); @@ -72,26 +125,52 @@ namespace AibisDream.MiniGame.Language private float completionTimer = 0f; private float fadeOutAlpha = 1f; private List orderedRedParticles = new List(); - private List targetPositions = new List(); + private bool allowInput = true; + private float focusTimer = 0f; + private Dictionary focusVisuals = new Dictionary(); + private Vector3 focusCentroid; + private List finalTargetCharacters = new List(); + private List finalTargetPositions = new List(); - // 波形系统 - private List waveformPoints = new List(); - private float calmProgress = 0f; - private Vector2 lastMousePos; - private float mouseDragSpeed; + private class TargetFocusVisual + { + public CandidateParticle particle; + public GameObject ringObject; + public Disc ringDisc; + public TMP_Text probabilityLabel; + public float probability = 90f; + public float targetProbability = 100f; + public float startShakeIntensity; + public string finalChar; + public bool stabilized; + public Vector3 focusPosition; + public Vector3 finalPosition; + public int orderIndex; + } + + // 自动传播计时器 + private float autoPropagationTimer = 0f; + private bool focusTweensCompleted = false; // 边界 private Bounds movementBounds; // 连接渲染(使用Shapes) private ConnectionRenderer connectionRenderer; - private WaveformRenderer waveformRenderer; private void Start() { InitializeCanvas(); InitializeParticles(); InitializeRenderers(); + UpdateStatusUI(); + if (focusSequenceButton != null) + { + focusSequenceButton.interactable = false; + focusSequenceButton.gameObject.SetActive(false); + focusSequenceButton.onClick.RemoveListener(HandleFocusButtonClicked); + focusSequenceButton.onClick.AddListener(HandleFocusButtonClicked); + } } private void InitializeCanvas() @@ -136,6 +215,8 @@ namespace AibisDream.MiniGame.Language GameObject obj = CreateParticleObject(pos, $"FloatingParticle_{i}"); FloatingTextParticle particle = obj.AddComponent(); particle.SetFont(chineseFontAsset); + particle.SetColor(floatingTextColor); + particle.SetFontSize(floatingTextFontSize); particle.SetMovementBounds(movementBounds); floatingParticles.Add(particle); } @@ -147,6 +228,8 @@ namespace AibisDream.MiniGame.Language GameObject obj = CreateParticleObject(pos, $"CandidateParticle_{i}"); CandidateParticle particle = obj.AddComponent(); particle.SetFont(chineseFontAsset); + particle.SetColors(targetParticleColor, nonTargetParticleColor, propagationColor, targetCalmColor); + particle.SetFontStyles(targetParticleFontSize, nonTargetParticleFontSize, targetParticleBold, nonTargetParticleBold); particle.SetMovementBounds(movementBounds); candidateParticles.Add(particle); } @@ -185,27 +268,30 @@ namespace AibisDream.MiniGame.Language connectionRenderer = connObj.AddComponent(); connectionRenderer.manager = this; connectionRenderer.connectionDistance = connectionDistance; - - // 波形渲染器 - GameObject waveObj = new GameObject("WaveformRenderer"); - waveObj.transform.SetParent(transform); - waveObj.transform.localPosition = Vector3.zero; - waveformRenderer = waveObj.AddComponent(); - waveformRenderer.interactionRadius = interactionRadius; + connectionRenderer.SetConnectionStyles( + targetConnectionColor, + nonTargetConnectionColor, + propagationLineColor, + targetConnectionThickness, + nonTargetConnectionThickness, + propagationLineThickness + ); + connectionRenderer.NonTargetAlphaScale = lineAlphaMultiplier; + connectionRenderer.TargetAlphaScale = 1f; } private void SelectRedParticles() { - redParticles.Clear(); + targetParticles.Clear(); List shuffled = candidateParticles.OrderBy(x => Random.value).ToList(); float minDistance = Mathf.Min(movementBounds.size.x, movementBounds.size.y) / (redParticleCount * 0.8f); foreach (var particle in shuffled) { - if (redParticles.Count >= redParticleCount) break; + if (targetParticles.Count >= redParticleCount) break; bool tooClose = false; - foreach (var selected in redParticles) + foreach (var selected in targetParticles) { if (Vector3.Distance(particle.transform.position, selected.transform.position) < minDistance) { @@ -214,23 +300,23 @@ namespace AibisDream.MiniGame.Language } } - if (!tooClose || redParticles.Count == 0) + if (!tooClose || targetParticles.Count == 0) { particle.isRed = true; particle.originalIsRed = true; - redParticles.Add(particle); + targetParticles.Add(particle); } } // 如果不够,强制添加 - int remaining = redParticleCount - redParticles.Count; + int remaining = redParticleCount - targetParticles.Count; for (int i = 0; i < remaining && i < shuffled.Count; i++) { if (!shuffled[i].isRed) { shuffled[i].isRed = true; shuffled[i].originalIsRed = true; - redParticles.Add(shuffled[i]); + targetParticles.Add(shuffled[i]); } } } @@ -252,44 +338,42 @@ namespace AibisDream.MiniGame.Language } } - // 更新连接 - UpdateConnections(); - - // 检测连接变化(触发效果传播) - if (initializationComplete && completionPhase == CompletionPhase.None) + if (completionPhase == CompletionPhase.None) { - DetectConnectionChanges(); - } + UpdateConnections(); + UpdateStatusUI(); - // 更新效果传播 - UpdateEffectPropagations(); + if (initializationComplete) + { + DetectConnectionChanges(); + UpdateAutoPropagation(); + } - // 检测完成状态 - if (!isCompleted && completionPhase == CompletionPhase.None) - { - if (CheckRedParticlesConnected()) + UpdateEffectPropagations(); + + if (!isCompleted && CheckRedParticlesConnected()) { isCompleted = true; - StartCompletionSequence(); + OnTargetsCompleted(); } - } - // 更新完成动画 - if (isCompleted) + if (allowInput) + { + UpdateInput(); + } + + ApplySeparationForces(); + } + else { - UpdateCompletionAnimation(); + UpdateConnections(); + UpdateStatusUI(); } - // 更新波形 - if (completionPhase == CompletionPhase.Revealing || completionPhase == CompletionPhase.Completed) + if (completionPhase == CompletionPhase.Focusing) { - UpdateWaveform(); + UpdateFocusSequence(); } - - // 更新输入 - UpdateInput(); - - // 更新渲染器数据 UpdateRenderers(); } @@ -305,21 +389,6 @@ namespace AibisDream.MiniGame.Language fadeOutAlpha ); } - - // 更新波形渲染器 - if (waveformRenderer != null) - { - Vector2 mousePos = GetMouseWorldPosition(); - bool mouseDown = Input.GetMouseButton(0); - waveformRenderer.SetData( - waveformPoints, - completionPhase, - calmProgress, - mousePos, - mouseDown, - mouseDragSpeed - ); - } } private void UpdateConnections() @@ -418,7 +487,12 @@ namespace AibisDream.MiniGame.Language private void TriggerEffectPropagation(CandidateParticle redParticle, CandidateParticle blueParticle) { - effectPropagations.Add(new EffectPropagation(redParticle, 1f)); + effectPropagations.Add(new EffectPropagation( + redParticle, + propagationDuration, + propagationDelay, + maxPropagationNodes + )); } private void UpdateEffectPropagations() @@ -435,16 +509,39 @@ namespace AibisDream.MiniGame.Language } } + private void UpdateAutoPropagation() + { + if (!enableAutoPropagation) return; + if (targetParticles.Count == 0) return; + + autoPropagationTimer += Time.deltaTime; + + if (autoPropagationTimer >= autoPropagationInterval) + { + autoPropagationTimer = 0f; + + // 随机选择目标粒子触发传播效果 + int triggerCount = Mathf.Min(autoPropagationCount, targetParticles.Count); + var shuffledTargets = targetParticles.OrderBy(x => Random.value).Take(triggerCount).ToList(); + + foreach (var targetParticle in shuffledTargets) + { + // 触发传播效果(即使没有建立新连接) + TriggerEffectPropagation(targetParticle, null); + } + } + } + private bool CheckRedParticlesConnected() { - if (redParticles.Count == 0) return false; - if (redParticles.Count == 1) return true; + if (targetParticles.Count == 0) return false; + if (targetParticles.Count == 1) return true; - // 检查所有红色粒子是否连通 + // 检查所有目标粒子是否连通 HashSet visited = new HashSet(); Queue queue = new Queue(); - queue.Enqueue(redParticles[0]); - visited.Add(redParticles[0]); + queue.Enqueue(targetParticles[0]); + visited.Add(targetParticles[0]); while (queue.Count > 0) { @@ -459,11 +556,11 @@ namespace AibisDream.MiniGame.Language } } - if (visited.Count != redParticles.Count) + if (visited.Count != targetParticles.Count) return false; - // 检查红色粒子是否与蓝色粒子分离 - foreach (var red in redParticles) + // 检查目标粒子是否与非目标粒子分离 + foreach (var red in targetParticles) { foreach (var other in candidateParticles) { @@ -478,62 +575,77 @@ namespace AibisDream.MiniGame.Language return true; } - private void StartCompletionSequence() + private void OnTargetsCompleted() { - completionPhase = CompletionPhase.Arranging; + completionPhase = CompletionPhase.Completed; completionTimer = 0f; + focusTimer = 0f; fadeOutAlpha = 1f; + allowInput = false; + effectPropagations.Clear(); + autoPropagationTimer = 0f; + focusVisuals.Clear(); + finalTargetCharacters.Clear(); + finalTargetPositions.Clear(); + focusTweensCompleted = false; - // 重置波形 - calmProgress = 0f; - waveformPoints.Clear(); - - // 获取排序的红色粒子 orderedRedParticles = GetOrderedRedParticles(); int displayLength = Mathf.Min(orderedRedParticles.Count, targetSentence.Length); - // 计算目标位置 - float spacing = 0.8f; - float totalWidth = displayLength * spacing; - float startX = -totalWidth / 2f + spacing / 2f; - float centerY = 0f; - - targetPositions.Clear(); - for (int i = 0; i < displayLength; i++) - { - targetPositions.Add(new Vector3(startX + i * spacing, centerY, 0f)); - } - - if (orderedRedParticles.Count > displayLength) + if (displayLength < orderedRedParticles.Count) { orderedRedParticles = orderedRedParticles.Take(displayLength).ToList(); } - // 清理效果 - effectPropagations.Clear(); - - // 停止非红色粒子 - foreach (var p in candidateParticles) + for (int i = 0; i < displayLength; i++) { - if (!p.isRed) + finalTargetCharacters.Add(targetSentence[i].ToString()); + } + + Vector3 displayCenter = worldCanvas != null ? worldCanvas.transform.position : Vector3.zero; + if (finalTargetCharacters.Count > 0) + { + float spacing = 0.9f; + float totalWidth = spacing * Mathf.Max(0, finalTargetCharacters.Count - 1); + float startX = -totalWidth / 2f; + finalTargetPositions.Clear(); + for (int i = 0; i < finalTargetCharacters.Count; i++) { - p.velocity = Vector2.zero; - if (p.isOrange) - { - p.RemoveEffect(); - } + finalTargetPositions.Add(displayCenter + new Vector3(startX + i * spacing, 0f, 0f)); } } + + if (focusSequenceButton != null) + { + focusSequenceButton.gameObject.SetActive(true); + focusSequenceButton.interactable = true; + } + + foreach (var particle in candidateParticles) + { + if (!particle.isRed) + { + particle.isCalmed = true; + particle.hasEffect = false; + particle.isOrange = false; + particle.changeSpeedMultiplier = 1f; + } + } + + foreach (var particle in floatingParticles) + { + particle.isCalmed = true; + } } private List GetOrderedRedParticles() { - if (redParticles.Count == 0) return new List(); - if (redParticles.Count == 1) return new List(redParticles); + if (targetParticles.Count == 0) return new List(); + if (targetParticles.Count == 1) return new List(targetParticles); // 从最左边的粒子开始 var ordered = new List(); - var startParticle = redParticles.OrderBy(p => p.transform.position.x).First(); + var startParticle = targetParticles.OrderBy(p => p.transform.position.x).First(); HashSet visited = new HashSet(); Stack stack = new Stack(); @@ -558,154 +670,272 @@ namespace AibisDream.MiniGame.Language return ordered; } - private void UpdateCompletionAnimation() + private void HandleFocusButtonClicked() { - completionTimer += Time.deltaTime; + if (completionPhase != CompletionPhase.Completed) + return; - if (completionPhase == CompletionPhase.Arranging) - { - bool allArrived = true; - for (int i = 0; i < orderedRedParticles.Count; i++) - { - var particle = orderedRedParticles[i]; - var target = targetPositions[i]; - - particle.transform.position = Vector3.Lerp( - particle.transform.position, - target, - Time.deltaTime * 5f - ); - - if (Vector3.Distance(particle.transform.position, target) > 0.01f) - { - allArrived = false; - } - } - - fadeOutAlpha = Mathf.Max(0f, fadeOutAlpha - Time.deltaTime * 2f); - - if (allArrived && completionTimer > 0.5f) - { - completionPhase = CompletionPhase.Revealing; - completionTimer = 0f; - InitializeWaveform(); - - // 初始化抖动效果 - foreach (var p in orderedRedParticles) - { - p.InitializeAnxietyEffect(); - } - } - } - else if (completionPhase == CompletionPhase.Revealing) - { - float revealDelay = 0.25f; - int currentIndex = Mathf.FloorToInt(completionTimer / revealDelay); - - for (int i = 0; i < orderedRedParticles.Count; i++) - { - var p = orderedRedParticles[i]; - - if (i < currentIndex) - { - // 已显示 - if (i < targetSentence.Length) - { - p.currentChar = targetSentence[i].ToString(); - p.isStatic = false; - } - } - else if (i == currentIndex) - { - // 正在显示(闪烁) - p.changeSpeedMultiplier = 20f; - if (completionTimer % revealDelay >= revealDelay - 0.1f) - { - if (i < targetSentence.Length) - { - p.currentChar = targetSentence[i].ToString(); - } - } - } - } - - if (currentIndex >= orderedRedParticles.Count) - { - completionPhase = CompletionPhase.Completed; - for (int i = 0; i < orderedRedParticles.Count && i < targetSentence.Length; i++) - { - orderedRedParticles[i].currentChar = targetSentence[i].ToString(); - orderedRedParticles[i].isStatic = false; - orderedRedParticles[i].changeSpeedMultiplier = 1f; - } - } - } - else if (completionPhase == CompletionPhase.Completed) - { - // 检查是否所有文字都已消散 - bool allDissolved = orderedRedParticles.All(p => p.dissolveProgress >= 1f); - if (allDissolved && completionTimer > 1f) - { - ResetGame(); - } - } + BeginFocusSequence(); } - private void InitializeWaveform() + private void BeginFocusSequence() { - waveformPoints.Clear(); + if (focusSequenceButton != null) + { + focusSequenceButton.interactable = false; + } - if (orderedRedParticles.Count == 0) return; + completionPhase = CompletionPhase.Focusing; + focusTimer = 0f; + focusTweensCompleted = false; - float baseY = 0f; + if (connectionRenderer != null) + { + connectionRenderer.NonTargetAlphaScale = 0f; + connectionRenderer.TargetAlphaScale = 1.2f; + } + + foreach (var particle in floatingParticles) + { + particle.isCalmed = true; + particle.velocity = Vector2.zero; + FadeOutTextParticle(particle, focusFadeDuration); + } + + foreach (var particle in candidateParticles) + { + if (!particle.isRed) + { + particle.isCalmed = true; + particle.velocity = Vector2.zero; + FadeOutTextParticle(particle, focusFadeDuration); + } + else + { + particle.isStatic = false; + particle.isCalmed = false; + particle.InitializeAnxietyEffect(); + particle.changeSpeedMultiplier = 6f; + particle.anxietyShakeIntensity = Mathf.Max(particle.anxietyShakeIntensity, 4f); + particle.SetChangeInterval(0.05f); + particle.ResetChangeTimer(0.05f); + } + } + + focusCentroid = ComputeCentroid(orderedRedParticles); + Vector3 focusTargetCenter = worldCanvas != null ? worldCanvas.transform.position : Vector3.zero; + + focusVisuals.Clear(); + int tweenTargetCount = orderedRedParticles.Count; + int completedTweens = 0; for (int i = 0; i < orderedRedParticles.Count; i++) { var particle = orderedRedParticles[i]; - var point = new WaveformPoint( - particle.transform.position.x, - baseY, - waveformAmplitude, - i, - particle - ); - waveformPoints.Add(point); - particle.waveformPoint = point; + Vector3 offset = particle.transform.position - focusCentroid; + float indexCenter = (orderedRedParticles.Count - 1) * 0.5f; + Vector3 spreadOffset = new Vector3((i - indexCenter) * spreadDistance, Mathf.Sin(i * 1.4f) * spreadDistance * 0.6f, 0f); + Vector3 focusPosition = focusTargetCenter + offset * focusZoomScale + spreadOffset; + Vector3 finalPosition = finalTargetPositions.Count > i ? finalTargetPositions[i] : focusTargetCenter; + + particle.transform.DOKill(); + particle.transform.DOMove(focusPosition, focusMoveDuration) + .SetEase(Ease.InOutQuad) + .OnComplete(() => + { + completedTweens++; + if (completedTweens >= tweenTargetCount) + { + focusTweensCompleted = true; + focusTimer = 0f; + } + }); + particle.transform.DOScale(Vector3.one * focusZoomScale, focusMoveDuration).SetEase(Ease.InOutQuad); + + string finalChar = i < finalTargetCharacters.Count ? finalTargetCharacters[i] : particle.currentChar; + TargetFocusVisual visual = CreateFocusVisual(particle, finalChar); + visual.focusPosition = focusPosition; + visual.finalPosition = finalPosition; + visual.orderIndex = i; + focusVisuals[particle] = visual; } - lastMousePos = GetMouseWorldPosition(); + if (tweenTargetCount == 0) + { + focusTweensCompleted = true; + focusTimer = 0f; + } } - private void UpdateWaveform() + private TargetFocusVisual CreateFocusVisual(CandidateParticle particle, string finalChar) { - if (waveformPoints.Count == 0) + TargetFocusVisual visual = new TargetFocusVisual { - InitializeWaveform(); + particle = particle, + finalChar = finalChar, + startShakeIntensity = Mathf.Max(particle.anxietyShakeIntensity, 4f) + }; + + GameObject ringObj = new GameObject("FocusRing"); + ringObj.transform.SetParent(particle.transform, false); + visual.ringObject = ringObj; + + float estimatedRadius = 0.55f; + if (particle != null && particle.textMesh != null) + { + estimatedRadius = Mathf.Clamp(particle.textMesh.fontSize * 0.05f, 0.35f, 0.75f); + } + + var disc = ringObj.AddComponent(); + disc.Type = DiscType.Ring; + disc.Radius = estimatedRadius; + disc.Thickness = Mathf.Clamp(estimatedRadius * 0.25f, 0.06f, 0.15f); + disc.Color = new Color(1f, 0.78f, 0.39f, 0.8f); + visual.ringDisc = disc; + + GameObject labelObj = new GameObject("ProbabilityLabel"); + labelObj.transform.SetParent(particle.transform, false); + RectTransform rectTransform = labelObj.AddComponent(); + rectTransform.localPosition = new Vector3(0f, estimatedRadius + 0.55f, 0f); + rectTransform.localScale = Vector3.one; + rectTransform.sizeDelta = new Vector2(2f, 0.6f); + + var label = labelObj.AddComponent(); + if (chineseFontAsset != null) + { + label.font = chineseFontAsset; + } + label.fontSize = 2f; + label.alignment = TextAlignmentOptions.Center; + label.text = $"{Mathf.RoundToInt(visual.probability)}%"; + visual.probabilityLabel = label; + + return visual; + } + + private void UpdateFocusSequence() + { + if (!focusTweensCompleted) return; - } - Vector2 mousePos = GetMouseWorldPosition(); - mouseDragSpeed = Vector2.Distance(mousePos, lastMousePos) / Time.deltaTime; - lastMousePos = mousePos; + focusTimer += Time.deltaTime; + float baseInterval = Mathf.Max(0.2f, probabilityDuration); + float arrangementDuration = Mathf.Max(0.2f, probabilityDuration * 0.6f); - bool mousePressed = Input.GetMouseButton(0); - - foreach (var point in waveformPoints) + foreach (var visual in focusVisuals.Values) { - point.Update(0f, waveformAmplitude, mousePos, mousePressed, mouseDragSpeed, interactionRadius); + if (visual == null || visual.particle == null) + continue; + + float localTime = focusTimer - visual.orderIndex * predictionSequenceGap; + float probabilityProgress = Mathf.Clamp01(localTime / baseInterval); + float arrangementProgress = Mathf.Clamp01(localTime / arrangementDuration); + + float probability = Mathf.Lerp(visual.probability, visual.targetProbability, probabilityProgress); + if (visual.probabilityLabel != null) + { + visual.probabilityLabel.text = $"{Mathf.RoundToInt(probability)}%"; + } + + float interval = Mathf.Lerp(0.05f, 0.8f, probabilityProgress); + visual.particle.SetChangeInterval(interval); + visual.particle.changeSpeedMultiplier = Mathf.Lerp(6f, 1f, probabilityProgress); + visual.particle.anxietyShakeIntensity = Mathf.Lerp(visual.startShakeIntensity, 0f, probabilityProgress); + + Vector3 targetPosition = Vector3.Lerp(visual.focusPosition, visual.finalPosition, Mathf.SmoothStep(0f, 1f, arrangementProgress)); + visual.particle.transform.position = targetPosition; + + if (!visual.stabilized && probabilityProgress >= 1f) + { + visual.particle.ForceSetCharacter(visual.finalChar); + visual.particle.SetChangeInterval(1.5f); + visual.particle.ResetChangeTimer(visual.particle.changeSpeedMultiplier); + visual.particle.isStatic = true; + visual.stabilized = true; + if (visual.probabilityLabel != null) + { + visual.probabilityLabel.text = "100%"; + } + } } - // 更新整体平静进度 - if (waveformPoints.Count > 0) + bool allStable = focusVisuals.Values.All(v => v.stabilized); + if (allStable) { - calmProgress = waveformPoints.Average(p => p.calmAmount); + CompleteFocusSequence(); } } + private void CompleteFocusSequence() + { + foreach (var visual in focusVisuals.Values) + { + if (visual.ringObject != null) + { + Destroy(visual.ringObject); + } + + if (visual.probabilityLabel != null) + { + Destroy(visual.probabilityLabel.gameObject); + } + + if (visual.particle != null) + { + visual.particle.transform.DOScale(Vector3.one * focusZoomScale, 0.3f).SetEase(Ease.OutQuad); + visual.particle.isStatic = true; + visual.particle.changeSpeedMultiplier = 1f; + } + } + + focusVisuals.Clear(); + + if (connectionRenderer != null) + { + connectionRenderer.TargetAlphaScale = 0f; + } + + completionPhase = CompletionPhase.Finished; + + if (focusSequenceButton != null) + { + focusSequenceButton.gameObject.SetActive(false); + } + } + + private void FadeOutTextParticle(TextParticle particle, float duration) + { + if (particle == null) return; + + DOTween.To(() => particle.alpha, value => particle.alpha = value, 0f, duration) + .SetEase(Ease.OutQuad); + + if (particle.glowSprite != null) + { + particle.glowSprite.DOFade(0f, duration); + } + } + + private Vector3 ComputeCentroid(List particles) + { + if (particles == null || particles.Count == 0) + { + return worldCanvas != null ? worldCanvas.transform.position : Vector3.zero; + } + + Vector3 sum = Vector3.zero; + foreach (var particle in particles) + { + sum += particle.transform.position; + } + + return sum / particles.Count; + } + private void UpdateInput() { - // 只在第一阶段(未完成)时处理鼠标输入 - if (completionPhase != CompletionPhase.None) return; + // 只在允许输入时处理鼠标逻辑 + if (!allowInput || completionPhase != CompletionPhase.None) return; Vector2 mouseWorldPos = GetMouseWorldPosition(); @@ -760,15 +990,33 @@ namespace AibisDream.MiniGame.Language isCompleted = false; completionPhase = CompletionPhase.None; completionTimer = 0f; + focusTimer = 0f; fadeOutAlpha = 1f; + allowInput = true; orderedRedParticles.Clear(); - targetPositions.Clear(); + focusVisuals.Clear(); + finalTargetCharacters.Clear(); + finalTargetPositions.Clear(); effectPropagations.Clear(); previousConnections.Clear(); initializationComplete = false; initializationFrames = 0; - calmProgress = 0f; - waveformPoints.Clear(); + autoPropagationTimer = 0f; + focusTweensCompleted = false; + + if (focusSequenceButton != null) + { + focusSequenceButton.onClick.RemoveListener(HandleFocusButtonClicked); + focusSequenceButton.onClick.AddListener(HandleFocusButtonClicked); + focusSequenceButton.interactable = false; + focusSequenceButton.gameObject.SetActive(false); + } + + if (connectionRenderer != null) + { + connectionRenderer.NonTargetAlphaScale = lineAlphaMultiplier; + connectionRenderer.TargetAlphaScale = 1f; + } // 重置所有粒子 foreach (var p in candidateParticles) @@ -782,13 +1030,153 @@ namespace AibisDream.MiniGame.Language p.vibrationOffset = Vector2.zero; p.velocity = new Vector2(Random.Range(-0.5f, 0.5f), Random.Range(-0.5f, 0.5f)); p.transform.position = GetRandomPositionInBounds(); - p.calmProgress = 0f; - p.dissolveProgress = 0f; p.isCalmed = false; - p.waveformPoint = null; + p.alpha = p.baseAlpha; + p.transform.localScale = Vector3.one; + p.transform.DOKill(); + + if (p.glowSprite != null) + { + Color glowColor = p.glowSprite.color; + glowColor.a = 0.2f; + p.glowSprite.color = glowColor; + } + } + + foreach (var floating in floatingParticles) + { + floating.isCalmed = false; + floating.alpha = floating.baseAlpha; + floating.transform.DOKill(); } SelectRedParticles(); + UpdateStatusUI(); + } + + private void ApplySeparationForces() + { + if (!enableSeparation || candidateParticles.Count <= 1) + return; + + float minSpacingSqr = minParticleSpacing * minParticleSpacing; + + for (int i = 0; i < candidateParticles.Count - 1; i++) + { + var particleA = candidateParticles[i]; + if (particleA.isStatic) + continue; + + Vector2 posA = particleA.transform.position; + + for (int j = i + 1; j < candidateParticles.Count; j++) + { + var particleB = candidateParticles[j]; + if (particleB.isStatic) + continue; + + Vector2 posB = particleB.transform.position; + Vector2 diff = posA - posB; + float distSqr = diff.sqrMagnitude; + + if (distSqr < minSpacingSqr && distSqr > 0.0001f) + { + float distance = Mathf.Sqrt(distSqr); + float pushStrength = 1f - (distance / minParticleSpacing); + Vector2 direction = diff / distance; + Vector2 push = direction * (pushStrength * separationForce); + + particleA.ApplyForce(push * Time.deltaTime); + particleB.ApplyForce(-push * Time.deltaTime); + } + } + } + } + + private void UpdateStatusUI() + { + if (integrationProgressText != null) + { + float ratio = CalculateIntegrationRatio(); + int percent = Mathf.RoundToInt(ratio * 100f); + integrationProgressText.text = $"{percent}% 语言整合完成度"; + } + + if (interferenceCountText != null) + { + int interferenceCount = CountInterferenceNodes(); + interferenceCountText.text = $"{interferenceCount} 处异常思绪仍在干扰表达"; + } + } + + private float CalculateIntegrationRatio() + { + if (targetParticles.Count == 0) + return 0f; + + HashSet visited = new HashSet(); + int largestCluster = 0; + + foreach (var red in targetParticles) + { + if (visited.Contains(red)) + continue; + + int clusterSize = 0; + Queue queue = new Queue(); + queue.Enqueue(red); + visited.Add(red); + + while (queue.Count > 0) + { + var current = queue.Dequeue(); + clusterSize++; + + foreach (var connected in current.connections) + { + if (connected == null || !connected.isRed) + continue; + + if (!visited.Contains(connected)) + { + visited.Add(connected); + queue.Enqueue(connected); + } + } + } + + if (clusterSize > largestCluster) + { + largestCluster = clusterSize; + } + } + + largestCluster = Mathf.Clamp(largestCluster, 0, targetParticles.Count); + return largestCluster / Mathf.Max(1f, targetParticles.Count); + } + + private int CountInterferenceNodes() + { + if (targetParticles.Count == 0) + return 0; + + HashSet interferingParticles = new HashSet(); + + foreach (var red in targetParticles) + { + foreach (var connected in red.connections) + { + if (connected == null) + continue; + + if (!connected.isRed) + { + interferingParticles.Add(connected); + } + } + } + + return interferingParticles.Count; } } } diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md index 498976d24..cbe30d54d 100644 --- a/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md +++ b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleSystem_Summary.md @@ -38,61 +38,6 @@ ### 6. 游戏目标与完成序列 **目标**:让所有红色粒子连接成一个整体,且与蓝色粒子分离 -**完成序列**: -1. **arranging阶段**: - - 红色粒子排列成水平一行(屏幕中央) - - 蓝色/橙色粒子停止移动 - - 非红色粒子淡出 - -2. **revealing阶段**: - - 红色粒子逐个显示目标文字:"别过来我感觉害怕" - - 显示前快速闪烁随机字符 - - 文字开始剧烈抖动(焦虑效果) - -3. **completed阶段**: - - 进入波形交互阶段 - -### 7. 波形交互系统(核心创新) -**初始状态**: -- 每个文字下方有一个对应的波形点 -- 波形使用Perlin噪声生成(多层噪声叠加) -- 波形呈现异常、混乱的抖动 -- 文字随波形剧烈抖动+上下漂浮(表现焦虑情绪) - -**交互机制**: -- 玩家按住鼠标左键并拖动,抚平附近的波形 -- 波形有"抵抗力"机制: - - 异常程度越高,抵抗力越强 - - 需要持续按住30-90帧才能完全抚平 - - 拖动速度越快,抚平效果越强 -- 抚平区域有交互半径(50像素) -- 显示进度环反馈 - -**抚平效果**: -- 波形从异常噪波逐渐变为规律的正弦波 -- 波形颜色从红色渐变为蓝色 -- 对应文字的抖动和漂浮逐渐减弱 -- 波形完全抚平后: - - 文字停止变化和抖动 - - 文字开始消散(透明度降低) - - 波形点也随之消散 - -**视觉反馈**: -- 抚平时产生蓝色粒子效果 -- 鼠标周围显示交互范围圈 -- 波形点显示抚平进度环 -- 底部显示整体平静进度条 - -**情感隐喻**: -- 异常波形 = 焦虑、不安的情绪 -- 文字抖动 = 情绪的外在表现 -- 抚平波形 = 安抚、平复情绪的过程 -- 文字消散 = 负面情绪的消解 - -### 8. 重置机制 -- 所有文字消散后,游戏自动重置 -- 粒子重新随机分布 -- 重新选择8个红色目标粒子 ## Unity实现要点 diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/NeuralPropagationConfig.asset b/Assets/Scripts/MiniGame/HuoShan/Language/NeuralPropagationConfig.asset new file mode 100644 index 000000000..fb9de5da5 --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/NeuralPropagationConfig.asset @@ -0,0 +1,32 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + 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: aff5f43b9eb5c4242842ca3cc33afd99, type: 3} + m_Name: NeuralPropagationConfig + m_EditorClassIdentifier: + bluePropagations: + - startChar: "\u6628" + content: "\u6628\u5929\u6211\u78B0" + - startChar: "\u6211" + content: "\u544A\u8BC9\u6211" + anxietyWords: + - "\u5BB3\u6015" + - "\u600E\u4E48\u529E" + - "\u56DE\u907F" + - "\u7D27\u5F20" + - "\u7126\u8651" + - "\u62C5\u5FC3" + - "\u6050\u60E7" + - "\u4E0D\u5B89" + hiddenInfo: "\u82F1\u91CC" + bluePropagationSpeed: 1 + redOverrideInterval: 2 + propagationDistance: 2 diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/NeuralPropagationConfig.asset.meta b/Assets/Scripts/MiniGame/HuoShan/Language/NeuralPropagationConfig.asset.meta new file mode 100644 index 000000000..2912f490c --- /dev/null +++ b/Assets/Scripts/MiniGame/HuoShan/Language/NeuralPropagationConfig.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3896a6c1f7dac79448309febc22689de +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs b/Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs index 2466c0246..f0a8f515a 100644 --- a/Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs +++ b/Assets/Scripts/MiniGame/HuoShan/Language/TextParticle.cs @@ -161,6 +161,32 @@ namespace AibisDream.MiniGame.Language textMesh.text = currentChar; } + public void ForceSetCharacter(string character) + { + currentChar = character; + UpdateText(); + } + + public void SetStaticState(bool value) + { + isStatic = value; + } + + public void SetCalmedState(bool value) + { + isCalmed = value; + } + + public void SetChangeInterval(float interval) + { + changeInterval = Mathf.Max(0.02f, interval); + } + + public void ResetChangeTimer(float timer) + { + changeTimer = timer; + } + protected virtual void UpdateVisuals() { if (textMesh != null) diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs b/Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs index 89e84035c..0fd239ad2 100644 --- a/Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs +++ b/Assets/Scripts/MiniGame/HuoShan/Language/WaveformRenderer.cs @@ -6,6 +6,7 @@ namespace AibisDream.MiniGame.Language { /// /// 波形渲染器:使用Shapes绘制波形和交互效果 + /// 注意:渲染在底层,确保低于文字(文字 sortingOrder = 10) /// [ExecuteAlways] public class WaveformRenderer : ImmediateModeShapeDrawer @@ -83,13 +84,14 @@ namespace AibisDream.MiniGame.Language if (waveformPoints == null || waveformPoints.Count == 0) return; - if (completionPhase != CompletionPhase.Revealing && completionPhase != CompletionPhase.Completed) + if (completionPhase != CompletionPhase.Focusing) return; using (Draw.Command(cam)) { Draw.BlendMode = ShapesBlendMode.Transparent; Draw.ZTest = UnityEngine.Rendering.CompareFunction.Always; + // 注意:波形默认在底层,文字的 sortingOrder = 10 会显示在上层 // 绘制粒子效果 DrawWaveformParticles(); From 6bbd0612c238660d000745fe245260f976ceac48 Mon Sep 17 00:00:00 2001 From: bottlefish <781230111@qq.com> Date: Fri, 14 Nov 2025 18:19:00 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=95=88=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Language/LanguageParticleManager.cs | 381 +++++++++++++++++- 1 file changed, 365 insertions(+), 16 deletions(-) diff --git a/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs index 3d2b1f892..d660de194 100644 --- a/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs +++ b/Assets/Scripts/MiniGame/HuoShan/Language/LanguageParticleManager.cs @@ -102,6 +102,33 @@ namespace AibisDream.MiniGame.Language [SerializeField] private float predictionSequenceGap = 0.4f; [SerializeField] private float spreadDistance = 0.35f; + [Header("聚焦表现")] + [SerializeField] private Color focusRingColor = Color.white; + [SerializeField, Range(0.01f, 0.3f)] private float focusRingThickness = 0.08f; + [SerializeField, Range(0.05f, 1f)] private float focusRingAlpha = 0.85f; + [SerializeField] private float statusFadeOutDuration = 0.45f; + [SerializeField] private float shuffleDistance = 0.35f; + [SerializeField] private float shuffleFrequency = 3.5f; + [SerializeField] private float shuffleVerticalScale = 0.6f; + + [Header("开场表现")] + [SerializeField] private float entranceDelay = 0.45f; + [SerializeField] private int entranceCoreCount = 8; + [SerializeField] private float entranceCoreRadius = 0.55f; + [SerializeField] private float entranceInitialScale = 0.25f; + [SerializeField] private float entranceCoreBurstDuration = 1f; + [SerializeField] private float entranceCoreStagger = 0.08f; + [SerializeField] private float entranceCascadeDuration = 0.8f; + [SerializeField] private float entranceCascadeStagger = 0.03f; + [SerializeField] private float entranceSearchRadius = 2f; + + [Header("调试/测试")] + [SerializeField] private bool enableDebugShortcuts = true; + [SerializeField] private KeyCode debugCompleteKey = KeyCode.F5; + [SerializeField] private KeyCode debugResetKey = KeyCode.F9; + [SerializeField] private KeyCode debugFullTestKey = KeyCode.F10; + [SerializeField] private bool autoRunDebugTestOnStart = false; + [Header("布局优化")] [SerializeField] private bool enableSeparation = true; // 是否启用粒子分离力 [SerializeField] private float minParticleSpacing = 0.6f; // 粒子最小间距 @@ -131,6 +158,13 @@ namespace AibisDream.MiniGame.Language private Vector3 focusCentroid; private List finalTargetCharacters = new List(); private List finalTargetPositions = new List(); + private bool interferenceLogicSuspended = false; + private bool statusUIHidden = false; + private float integrationTextBaseAlpha = 1f; + private float interferenceTextBaseAlpha = 1f; + private Coroutine entranceRoutine; + private Coroutine debugTestRoutine; + private readonly Dictionary entranceTargets = new Dictionary(); private class TargetFocusVisual { @@ -164,6 +198,15 @@ namespace AibisDream.MiniGame.Language InitializeParticles(); InitializeRenderers(); UpdateStatusUI(); + if (integrationProgressText != null) + { + integrationTextBaseAlpha = integrationProgressText.color.a; + } + if (interferenceCountText != null) + { + interferenceTextBaseAlpha = interferenceCountText.color.a; + } + SetStatusUIVisibility(true, 0f); if (focusSequenceButton != null) { focusSequenceButton.interactable = false; @@ -171,6 +214,11 @@ namespace AibisDream.MiniGame.Language focusSequenceButton.onClick.RemoveListener(HandleFocusButtonClicked); focusSequenceButton.onClick.AddListener(HandleFocusButtonClicked); } + PlayEntranceSequence(); + if (autoRunDebugTestOnStart) + { + QueueDebugFullFlow(); + } } private void InitializeCanvas() @@ -337,19 +385,25 @@ namespace AibisDream.MiniGame.Language BuildConnectionMap(); } } + HandleDebugShortcuts(); + UpdateConnections(); + if (!statusUIHidden) + { + UpdateStatusUI(); + } if (completionPhase == CompletionPhase.None) { - UpdateConnections(); - UpdateStatusUI(); - - if (initializationComplete) + if (initializationComplete && !interferenceLogicSuspended) { DetectConnectionChanges(); UpdateAutoPropagation(); } - UpdateEffectPropagations(); + if (!interferenceLogicSuspended) + { + UpdateEffectPropagations(); + } if (!isCompleted && CheckRedParticlesConnected()) { @@ -357,17 +411,19 @@ namespace AibisDream.MiniGame.Language OnTargetsCompleted(); } - if (allowInput) + if (allowInput && !interferenceLogicSuspended) { UpdateInput(); } - ApplySeparationForces(); + if (!interferenceLogicSuspended) + { + ApplySeparationForces(); + } } - else + else if (!interferenceLogicSuspended) { - UpdateConnections(); - UpdateStatusUI(); + UpdateEffectPropagations(); } if (completionPhase == CompletionPhase.Focusing) @@ -588,6 +644,8 @@ namespace AibisDream.MiniGame.Language finalTargetCharacters.Clear(); finalTargetPositions.Clear(); focusTweensCompleted = false; + interferenceLogicSuspended = false; + SetStatusUIVisibility(true, 0f); orderedRedParticles = GetOrderedRedParticles(); int displayLength = Mathf.Min(orderedRedParticles.Count, targetSentence.Length); @@ -688,6 +746,8 @@ namespace AibisDream.MiniGame.Language completionPhase = CompletionPhase.Focusing; focusTimer = 0f; focusTweensCompleted = false; + interferenceLogicSuspended = true; + SetStatusUIVisibility(false, statusFadeOutDuration); if (connectionRenderer != null) { @@ -789,8 +849,10 @@ namespace AibisDream.MiniGame.Language var disc = ringObj.AddComponent(); disc.Type = DiscType.Ring; disc.Radius = estimatedRadius; - disc.Thickness = Mathf.Clamp(estimatedRadius * 0.25f, 0.06f, 0.15f); - disc.Color = new Color(1f, 0.78f, 0.39f, 0.8f); + disc.Thickness = Mathf.Clamp(focusRingThickness, 0.01f, 0.3f); + Color ringColor = focusRingColor; + ringColor.a = focusRingAlpha; + disc.Color = ringColor; visual.ringDisc = disc; GameObject labelObj = new GameObject("ProbabilityLabel"); @@ -842,8 +904,10 @@ namespace AibisDream.MiniGame.Language visual.particle.changeSpeedMultiplier = Mathf.Lerp(6f, 1f, probabilityProgress); visual.particle.anxietyShakeIntensity = Mathf.Lerp(visual.startShakeIntensity, 0f, probabilityProgress); - Vector3 targetPosition = Vector3.Lerp(visual.focusPosition, visual.finalPosition, Mathf.SmoothStep(0f, 1f, arrangementProgress)); - visual.particle.transform.position = targetPosition; + Vector3 dynamicTarget = GetDynamicArrangementTarget(visual, arrangementProgress, localTime); + Vector3 targetPosition = Vector3.Lerp(visual.focusPosition, dynamicTarget, Mathf.SmoothStep(0f, 1f, arrangementProgress)); + Vector3 shuffleOffset = CalculateShuffleOffset(visual, arrangementProgress, localTime); + visual.particle.transform.position = targetPosition + shuffleOffset; if (!visual.stabilized && probabilityProgress >= 1f) { @@ -903,6 +967,46 @@ namespace AibisDream.MiniGame.Language } } + private Vector3 GetDynamicArrangementTarget(TargetFocusVisual visual, float arrangementProgress, float localTime) + { + if (visual == null) + { + return Vector3.zero; + } + + Vector3 target = visual.finalPosition; + if (!visual.stabilized && finalTargetPositions.Count > 1) + { + int swapIndex = (visual.orderIndex + 1) % finalTargetPositions.Count; + swapIndex = Mathf.Clamp(swapIndex, 0, finalTargetPositions.Count - 1); + Vector3 neighbor = finalTargetPositions[swapIndex]; + float swapStrength = Mathf.Clamp01(Mathf.Sin(Mathf.Max(0f, localTime) * shuffleFrequency * 0.25f)); + float blend = (1f - arrangementProgress) * swapStrength * 0.5f; + target = Vector3.Lerp(target, neighbor, blend); + } + + return target; + } + + private Vector3 CalculateShuffleOffset(TargetFocusVisual visual, float arrangementProgress, float localTime) + { + if (visual == null || shuffleDistance <= 0f || visual.stabilized) + { + return Vector3.zero; + } + + float shuffleAmount = Mathf.Clamp01(1f - arrangementProgress); + if (shuffleAmount <= 0f) + { + return Vector3.zero; + } + + float timeSeed = (focusTimer + localTime * 0.35f) * shuffleFrequency + visual.orderIndex * 0.75f; + float x = Mathf.Sin(timeSeed) * shuffleDistance * shuffleAmount; + float y = Mathf.Cos(timeSeed * 0.8f) * shuffleDistance * shuffleVerticalScale * shuffleAmount; + return new Vector3(x, y, 0f); + } + private void FadeOutTextParticle(TextParticle particle, float duration) { if (particle == null) return; @@ -985,14 +1089,14 @@ namespace AibisDream.MiniGame.Language return Vector2.zero; } - private void ResetGame() + public void ResetGame(bool playEntranceEffect = true) { isCompleted = false; completionPhase = CompletionPhase.None; completionTimer = 0f; focusTimer = 0f; fadeOutAlpha = 1f; - allowInput = true; + allowInput = !playEntranceEffect; orderedRedParticles.Clear(); focusVisuals.Clear(); finalTargetCharacters.Clear(); @@ -1003,6 +1107,13 @@ namespace AibisDream.MiniGame.Language initializationFrames = 0; autoPropagationTimer = 0f; focusTweensCompleted = false; + interferenceLogicSuspended = false; + SetStatusUIVisibility(true, 0f); + if (entranceRoutine != null) + { + StopCoroutine(entranceRoutine); + entranceRoutine = null; + } if (focusSequenceButton != null) { @@ -1052,6 +1163,213 @@ namespace AibisDream.MiniGame.Language SelectRedParticles(); UpdateStatusUI(); + if (playEntranceEffect) + { + PlayEntranceSequence(); + } + } + + private void HandleDebugShortcuts() + { + if (!enableDebugShortcuts || !Application.isPlaying) + return; + + if (Input.GetKeyDown(debugCompleteKey)) + { + DebugCompleteTargets(); + } + + if (Input.GetKeyDown(debugResetKey)) + { + ResetGame(); + } + + if (Input.GetKeyDown(debugFullTestKey)) + { + QueueDebugFullFlow(); + } + } + + [ContextMenu("Debug/一键完成目标")] + public void DebugCompleteTargets() + { + if (!isCompleted) + { + isCompleted = true; + OnTargetsCompleted(); + } + + if (completionPhase == CompletionPhase.Completed) + { + BeginFocusSequence(); + } + } + + [ContextMenu("Debug/重置场景")] + public void DebugResetScene() + { + ResetGame(); + } + + [ContextMenu("Debug/完整流程测试")] + public void DebugPlayFullFlow() + { + QueueDebugFullFlow(); + } + + private void QueueDebugFullFlow() + { + if (!gameObject.activeInHierarchy) + return; + + if (debugTestRoutine != null) + { + StopCoroutine(debugTestRoutine); + } + + debugTestRoutine = StartCoroutine(DebugFullFlowRoutine()); + } + + private IEnumerator DebugFullFlowRoutine() + { + DebugCompleteTargets(); + if (completionPhase == CompletionPhase.Completed) + { + BeginFocusSequence(); + } + + while (completionPhase != CompletionPhase.Finished) + { + yield return null; + } + + yield return new WaitForSeconds(0.5f); + ResetGame(); + debugTestRoutine = null; + } + + private void PlayEntranceSequence() + { + if (!gameObject.activeInHierarchy || candidateParticles.Count == 0) + return; + + if (entranceRoutine != null) + { + StopCoroutine(entranceRoutine); + } + + entranceRoutine = StartCoroutine(EntranceSequenceRoutine()); + } + + private IEnumerator EntranceSequenceRoutine() + { + allowInput = false; + entranceTargets.Clear(); + + Vector3 burstOrigin = worldCanvas != null ? worldCanvas.transform.position : transform.position; + List particles = candidateParticles.Where(p => p != null).ToList(); + if (particles.Count == 0) + { + allowInput = true; + entranceRoutine = null; + yield break; + } + + float initialScale = Mathf.Max(0.05f, entranceInitialScale); + + foreach (var candidate in particles) + { + entranceTargets[candidate] = candidate.transform.position; + candidate.transform.DOKill(); + candidate.velocity = Vector2.zero; + candidate.transform.position = burstOrigin; + candidate.transform.localScale = Vector3.one * initialScale; + candidate.alpha = 0f; + if (candidate.glowSprite != null) + { + Color glowColor = candidate.glowSprite.color; + glowColor.a = 0f; + candidate.glowSprite.color = glowColor; + } + } + + yield return new WaitForSeconds(Mathf.Max(0f, entranceDelay)); + + int coreCount = Mathf.Clamp(entranceCoreCount, 1, particles.Count); + var shuffled = particles.OrderBy(_ => Random.value).ToList(); + var coreCandidates = shuffled.Take(coreCount).ToList(); + var remainingCandidates = shuffled.Skip(coreCount).ToList(); + float radius = Mathf.Max(0.1f, entranceCoreRadius); + float maxCoreTime = 0f; + + for (int i = 0; i < coreCandidates.Count; i++) + { + var candidate = coreCandidates[i]; + float angle = (Mathf.PI * 2f / Mathf.Max(1, coreCandidates.Count)) * i; + Vector3 startPos = burstOrigin + new Vector3(Mathf.Cos(angle), Mathf.Sin(angle), 0f) * radius; + candidate.transform.position = startPos; + + float delay = i * Mathf.Max(0f, entranceCoreStagger); + Sequence seq = DOTween.Sequence(); + seq.SetDelay(delay); + seq.Append(candidate.transform.DOMove(entranceTargets[candidate], entranceCoreBurstDuration).SetEase(Ease.OutCubic)); + seq.Join(candidate.transform.DOScale(Vector3.one, entranceCoreBurstDuration).SetEase(Ease.OutBack)); + seq.Join(DOTween.To(() => candidate.alpha, value => candidate.alpha = value, candidate.baseAlpha, entranceCoreBurstDuration).SetEase(Ease.OutQuad)); + if (candidate.glowSprite != null) + { + seq.Join(candidate.glowSprite.DOFade(0.2f, entranceCoreBurstDuration)); + } + seq.OnComplete(() => + { + candidate.velocity = new Vector2(Random.Range(-0.5f, 0.5f), Random.Range(-0.5f, 0.5f)); + }); + maxCoreTime = Mathf.Max(maxCoreTime, delay + entranceCoreBurstDuration); + } + + if (coreCandidates.Count > 0) + { + yield return new WaitForSeconds(maxCoreTime * 0.6f); + } + + float cascadeDuration = 0f; + for (int i = 0; i < remainingCandidates.Count; i++) + { + var candidate = remainingCandidates[i]; + Vector2 offset = Random.insideUnitCircle * entranceSearchRadius; + candidate.transform.position = burstOrigin + new Vector3(offset.x, offset.y, 0f); + float delay = i * Mathf.Max(0f, entranceCascadeStagger); + Sequence seq = DOTween.Sequence(); + seq.SetDelay(delay); + seq.Append(candidate.transform.DOMove(entranceTargets[candidate], entranceCascadeDuration).SetEase(Ease.OutQuad)); + seq.Join(candidate.transform.DOScale(Vector3.one, entranceCascadeDuration * 0.8f).SetEase(Ease.OutBack)); + seq.Join(DOTween.To(() => candidate.alpha, value => candidate.alpha = value, candidate.baseAlpha, entranceCascadeDuration).SetEase(Ease.OutSine)); + if (candidate.glowSprite != null) + { + seq.Join(candidate.glowSprite.DOFade(0.2f, entranceCascadeDuration)); + } + seq.OnComplete(() => + { + candidate.velocity = new Vector2(Random.Range(-0.5f, 0.5f), Random.Range(-0.5f, 0.5f)); + }); + cascadeDuration = Mathf.Max(cascadeDuration, delay + entranceCascadeDuration); + } + + float waitTime = Mathf.Max(maxCoreTime, cascadeDuration); + if (waitTime > 0f) + { + yield return new WaitForSeconds(waitTime + 0.2f); + } + + foreach (var candidate in particles) + { + if (candidate == null) continue; + candidate.alpha = candidate.baseAlpha; + candidate.transform.localScale = Vector3.one; + } + + entranceTargets.Clear(); + entranceRoutine = null; + allowInput = true; } private void ApplySeparationForces() @@ -1095,6 +1413,9 @@ namespace AibisDream.MiniGame.Language private void UpdateStatusUI() { + if (statusUIHidden) + return; + if (integrationProgressText != null) { float ratio = CalculateIntegrationRatio(); @@ -1178,6 +1499,34 @@ namespace AibisDream.MiniGame.Language return interferingParticles.Count; } + + private void SetStatusUIVisibility(bool visible, float duration = 0f) + { + statusUIHidden = !visible; + float integrationAlpha = visible ? integrationTextBaseAlpha : 0f; + float interferenceAlpha = visible ? interferenceTextBaseAlpha : 0f; + + AnimateStatusText(integrationProgressText, integrationAlpha, duration); + AnimateStatusText(interferenceCountText, interferenceAlpha, duration); + } + + private void AnimateStatusText(TMP_Text text, float targetAlpha, float duration) + { + if (text == null) + return; + + DOTween.Kill(text); + if (duration > 0f) + { + text.DOFade(targetAlpha, duration); + } + else + { + Color color = text.color; + color.a = targetAlpha; + text.color = color; + } + } } } From 392fe80ebd2bfdb94c983f812060d553439d7ea6 Mon Sep 17 00:00:00 2001 From: bottlefish <781230111@qq.com> Date: Sat, 15 Nov 2025 22:10:36 +0800 Subject: [PATCH 5/6] Update languageTest.unity MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 效果更新 --- Assets/Scenes/languageTest.unity | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/Assets/Scenes/languageTest.unity b/Assets/Scenes/languageTest.unity index 6a0699da3..cb491cb58 100644 --- a/Assets/Scenes/languageTest.unity +++ b/Assets/Scenes/languageTest.unity @@ -214,6 +214,27 @@ MonoBehaviour: probabilityDuration: 3.5 predictionSequenceGap: 0.4 spreadDistance: 0.35 + focusRingColor: {r: 1, g: 1, b: 1, a: 1} + focusRingThickness: 0.025 + focusRingAlpha: 0.752 + statusFadeOutDuration: 0.45 + shuffleDistance: 0.35 + shuffleFrequency: 3.5 + shuffleVerticalScale: 0.6 + entranceDelay: 0.45 + entranceCoreCount: 20 + entranceCoreRadius: 0.55 + entranceInitialScale: 0.25 + entranceCoreBurstDuration: 1.5 + entranceCoreStagger: 0.08 + entranceCascadeDuration: 0.8 + entranceCascadeStagger: 0.03 + entranceSearchRadius: 2 + enableDebugShortcuts: 1 + debugCompleteKey: 286 + debugResetKey: 290 + debugFullTestKey: 291 + autoRunDebugTestOnStart: 0 enableSeparation: 1 minParticleSpacing: 0.6 separationForce: 2.5 From 65463b8f64da68dc4407613ff1e04f8393bd60b0 Mon Sep 17 00:00:00 2001 From: bottlefish <781230111@qq.com> Date: Mon, 17 Nov 2025 21:07:58 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E8=A1=A8=E8=BE=BE=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E6=8E=A5=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 去除旧的火山表达模块玩法,接入新的表达模块玩法 --- .../Test_Huoshan Shared Data.asset | 244 +- .../Test_Huoshan/Test_Huoshan_zh-Hans.asset | 90 +- Assets/Prefabs/LanguageCanvas.prefab | 629 + .../LanguageCanvas.prefab.meta} | 5 +- Assets/Prefabs/LanguageParticleSystem.prefab | 461 + .../LanguageParticleSystem.prefab.meta | 7 + Assets/Render/Renderer2Dtest.asset | 22 +- .../Resources/Yarn/Test_Huoshan/Center.yarn | 29 +- Assets/Scenes/HuoShanFixScene.unity | 10900 ++++------------ Assets/Scenes/Persistence.unity | 4 +- Assets/Scenes/languageTest.unity | 803 +- .../Scripts/FixSystemNew/FixStateMachine.cs | 16 +- .../MiniGame/HuoShan/DriverDatabase.cs | 62 - .../MiniGame/HuoShan/DriverDatabase.cs.meta | 11 - .../Scripts/MiniGame/HuoShan/DriverProfile.cs | 26 - .../MiniGame/HuoShan/DriverProfile.cs.meta | 11 - .../MiniGame/HuoShan/ExpressionCable.cs | 115 - .../MiniGame/HuoShan/ExpressionCableSystem.cs | 83 - .../HuoShan/ExpressionCableSystem.cs.meta | 11 - .../MiniGame/HuoShan/ExpressionManager.cs | 149 - .../MiniGame/HuoShan/ExpressionPlug.cs | 163 - .../MiniGame/HuoShan/ExpressionPlug.cs.meta | 11 - .../MiniGame/HuoShan/ExpressionPowerSource.cs | 45 - .../HuoShan/ExpressionPowerSource.cs.meta | 11 - .../MiniGame/HuoShan/ExpressionSocket.cs | 48 - .../MiniGame/HuoShan/ExpressionSocket.cs.meta | 11 - .../MiniGame/HuoShan/ExpressionSubSystem.cs | 47 - .../HuoShan/ExpressionSubSystem.cs.meta | 11 - .../HuoShan/Language/ExpressionManager.cs | 137 + .../{ => Language}/ExpressionManager.cs.meta | 0 .../Language/LanguageParticleManager.cs | 127 +- .../HuoShan/Language/LanguageYarnCommand.cs | 137 + .../LanguageYarnCommand.cs.meta} | 2 +- .../Language/README_语言系统使用说明.md | 291 + .../Language/README_语言系统使用说明.md.meta | 7 + .../MiniGame/HuoShan/Language/TextParticle.cs | 16 + 36 files changed, 4726 insertions(+), 10016 deletions(-) create mode 100644 Assets/Prefabs/LanguageCanvas.prefab rename Assets/{Scripts/MiniGame/HuoShan/NewExpress.meta => Prefabs/LanguageCanvas.prefab.meta} (57%) create mode 100644 Assets/Prefabs/LanguageParticleSystem.prefab create mode 100644 Assets/Prefabs/LanguageParticleSystem.prefab.meta delete mode 100644 Assets/Scripts/MiniGame/HuoShan/DriverDatabase.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/DriverDatabase.cs.meta delete mode 100644 Assets/Scripts/MiniGame/HuoShan/DriverProfile.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/DriverProfile.cs.meta delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionCable.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionCableSystem.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionCableSystem.cs.meta delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionManager.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionPlug.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionPlug.cs.meta delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionPowerSource.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionPowerSource.cs.meta delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionSocket.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionSocket.cs.meta delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionSubSystem.cs delete mode 100644 Assets/Scripts/MiniGame/HuoShan/ExpressionSubSystem.cs.meta create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/ExpressionManager.cs rename Assets/Scripts/MiniGame/HuoShan/{ => Language}/ExpressionManager.cs.meta (100%) create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/LanguageYarnCommand.cs rename Assets/Scripts/MiniGame/HuoShan/{ExpressionCable.cs.meta => Language/LanguageYarnCommand.cs.meta} (83%) create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/README_语言系统使用说明.md create mode 100644 Assets/Scripts/MiniGame/HuoShan/Language/README_语言系统使用说明.md.meta diff --git a/Assets/Language/Dialog/Test_Huoshan/Test_Huoshan Shared Data.asset b/Assets/Language/Dialog/Test_Huoshan/Test_Huoshan Shared Data.asset index 8eaa62f32..e4c4d33ce 100644 --- a/Assets/Language/Dialog/Test_Huoshan/Test_Huoshan Shared Data.asset +++ b/Assets/Language/Dialog/Test_Huoshan/Test_Huoshan Shared Data.asset @@ -19,32 +19,32 @@ MonoBehaviour: m_Key: line:0ef7bff m_Metadata: m_Items: - - rid: 6203036897972322888 + - rid: 2532585790100471825 - m_Id: 180190609408 m_Key: line:088b598 m_Metadata: m_Items: - - rid: 6203036897972322889 + - rid: 2532585790100471826 - m_Id: 180190609409 m_Key: line:0dac12c m_Metadata: m_Items: - - rid: 6203036897972322890 + - rid: 2532585790100471827 - m_Id: 180190609410 m_Key: line:0ad2190 m_Metadata: m_Items: - - rid: 6203036897972322891 + - rid: 2532585790100471828 - m_Id: 180194803712 m_Key: line:0466fea m_Metadata: m_Items: - - rid: 6203036897972322892 + - rid: 2532585790100471829 - m_Id: 385815380393984 m_Key: line:3adc1a6b m_Metadata: m_Items: - - rid: 6203036897972322893 + - rid: 2532585790100471830 - m_Id: 385815418142720 m_Key: line:88de144d m_Metadata: @@ -130,6 +130,116 @@ MonoBehaviour: m_Metadata: m_Items: - rid: 7942689805606060914 + - m_Id: 68217195702943744 + m_Key: line:808d13f2 + m_Metadata: + m_Items: + - rid: 2532585790100471816 + - m_Id: 68217195749081088 + m_Key: line:2b4b70d3 + m_Metadata: + m_Items: + - rid: 2532585790100471817 + - m_Id: 68217195749081089 + m_Key: line:f809de3b + m_Metadata: + m_Items: + - rid: 2532585790100471818 + - m_Id: 68217195749081090 + m_Key: line:aaf42299 + m_Metadata: + m_Items: + - rid: 2532585790100471819 + - m_Id: 68217195753275392 + m_Key: line:2dea6d3a + m_Metadata: + m_Items: + - rid: 2532585790100471820 + - m_Id: 68217195753275393 + m_Key: line:8eb038a3 + m_Metadata: + m_Items: + - rid: 2532585790100471821 + - m_Id: 68217195753275394 + m_Key: line:93b4dd62 + m_Metadata: + m_Items: + - rid: 2532585790100471822 + - m_Id: 68217195753275395 + m_Key: line:17af58b2 + m_Metadata: + m_Items: + - rid: 2532585790100471823 + - m_Id: 68217195753275396 + m_Key: line:66815c63 + m_Metadata: + m_Items: + - rid: 2532585790100471824 + - m_Id: 68218473690595328 + m_Key: line:eb1476e1 + m_Metadata: + m_Items: + - rid: 2532585790100471831 + - m_Id: 68218473694789632 + m_Key: line:4881127f + m_Metadata: + m_Items: + - rid: 2532585790100471832 + - m_Id: 68218473694789633 + m_Key: line:deb11508 + m_Metadata: + m_Items: + - rid: 2532585790100471833 + - m_Id: 68218473694789634 + m_Key: line:64e01c91 + m_Metadata: + m_Items: + - rid: 2532585790100471834 + - m_Id: 68218473694789635 + m_Key: line:27369d44 + m_Metadata: + m_Items: + - rid: 2532585790100471835 + - m_Id: 68218473694789636 + m_Key: line:0007c6da + m_Metadata: + m_Items: + - rid: 2532585790100471836 + - m_Id: 68218473694789637 + m_Key: line:d3456832 + m_Metadata: + m_Items: + - rid: 2532585790100471837 + - m_Id: 68218473694789638 + m_Key: line:e421008d + m_Metadata: + m_Items: + - rid: 2532585790100471838 + - m_Id: 68218473694789639 + m_Key: line:ae796390 + m_Metadata: + m_Items: + - rid: 2532585790100471839 + - m_Id: 68218473694789640 + m_Key: line:977455a4 + m_Metadata: + m_Items: + - rid: 2532585790100471840 + - m_Id: 68218473694789641 + m_Key: line:8a70b065 + m_Metadata: + m_Items: + - rid: 2532585790100471841 + - m_Id: 68218473694789642 + m_Key: line:0e6b35b5 + m_Metadata: + m_Items: + - rid: 2532585790100471842 + - m_Id: 68218473694789643 + m_Key: line:4dcdea6a + m_Metadata: + m_Items: + - rid: 2532585790100471843 m_Metadata: m_Items: [] m_KeyGenerator: @@ -137,36 +247,146 @@ MonoBehaviour: references: version: 2 RefIds: - - rid: 6203036897972322888 + - rid: 2532585790100471816 type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} data: nodeName: Start tags: [] - - rid: 6203036897972322889 + - rid: 2532585790100471817 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u60C5\u7EEA\u63A2\u7D22\u5B8C\u6210" + tags: [] + - rid: 2532585790100471818 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u81EA\u5351\u627E\u5230\u4E86" + tags: [] + - rid: 2532585790100471819 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u7F9E\u803B\u627E\u5230\u4E86" + tags: [] + - rid: 2532585790100471820 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u6050\u60E7\u627E\u5230\u4E86" + tags: [] + - rid: 2532585790100471821 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u7ED3\u675F\u60C5\u7EEA\u6A21\u5757\u63A2\u7D22" + tags: [] + - rid: 2532585790100471822 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u627E\u5230\u7F9E\u803B\u5BF9\u8BDD" + tags: [] + - rid: 2532585790100471823 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u627E\u5230\u6050\u60E7\u5BF9\u8BDD" + tags: [] + - rid: 2532585790100471824 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u627E\u5230\u81EA\u5351\u5BF9\u8BDD" + tags: [] + - rid: 2532585790100471825 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: Start + tags: [] + - rid: 2532585790100471826 type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} data: nodeName: Center tags: [] - - rid: 6203036897972322890 + - rid: 2532585790100471827 type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} data: nodeName: "UserA_\u5708\u5C42\u8C61\u5F81\u8005" tags: [] - - rid: 6203036897972322891 + - rid: 2532585790100471828 type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} data: nodeName: "UserA_\u5708\u5C42\u8C61\u5F81\u8005" tags: [] - - rid: 6203036897972322892 + - rid: 2532585790100471829 type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} data: nodeName: "UserA_\u5708\u5C42\u8C61\u5F81\u8005" tags: [] - - rid: 6203036897972322893 + - rid: 2532585790100471830 type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} data: nodeName: Start tags: [] + - rid: 2532585790100471831 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: Complete + tags: [] + - rid: 2532585790100471832 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: Complete + tags: [] + - rid: 2532585790100471833 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: Complete + tags: [] + - rid: 2532585790100471834 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: Complete + tags: [] + - rid: 2532585790100471835 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: Complete2 + tags: [] + - rid: 2532585790100471836 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u60C5\u7EEA\u63A2\u7D22\u5B8C\u6210" + tags: [] + - rid: 2532585790100471837 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u81EA\u5351\u627E\u5230\u4E86" + tags: [] + - rid: 2532585790100471838 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u7F9E\u803B\u627E\u5230\u4E86" + tags: [] + - rid: 2532585790100471839 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u6050\u60E7\u627E\u5230\u4E86" + tags: [] + - rid: 2532585790100471840 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u7ED3\u675F\u60C5\u7EEA\u6A21\u5757\u63A2\u7D22" + tags: [] + - rid: 2532585790100471841 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u627E\u5230\u7F9E\u803B\u5BF9\u8BDD" + tags: [] + - rid: 2532585790100471842 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u627E\u5230\u6050\u60E7\u5BF9\u8BDD" + tags: [] + - rid: 2532585790100471843 + type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} + data: + nodeName: "\u627E\u5230\u81EA\u5351\u5BF9\u8BDD" + tags: [] - rid: 6203036897972322894 type: {class: LineMetadata, ns: Yarn.Unity.UnityLocalization, asm: YarnSpinner.Unity} data: diff --git a/Assets/Language/Dialog/Test_Huoshan/Test_Huoshan_zh-Hans.asset b/Assets/Language/Dialog/Test_Huoshan/Test_Huoshan_zh-Hans.asset index f2f3ef9c5..075c6d53f 100644 --- a/Assets/Language/Dialog/Test_Huoshan/Test_Huoshan_zh-Hans.asset +++ b/Assets/Language/Dialog/Test_Huoshan/Test_Huoshan_zh-Hans.asset @@ -39,7 +39,7 @@ MonoBehaviour: m_Metadata: m_Items: [] - m_Id: 385815380393984 - m_Localized: "\u6DF1\u5165\u60C5\u7EEA\u6A21\u5757" + m_Localized: "\u542F\u52A8\u7CFB\u7EDF" m_Metadata: m_Items: [] - m_Id: 385815418142720 @@ -74,6 +74,94 @@ MonoBehaviour: m_Localized: "\u81EA\u5351" m_Metadata: m_Items: [] + - m_Id: 68217195702943744 + m_Localized: "\u6DF1\u5165\u60C5\u7EEA\u6A21\u5757" + m_Metadata: + m_Items: [] + - m_Id: 68217195749081088 + m_Localized: "\u60C5\u7EEA\u63A2\u7D22\u5B8C\u6210\u4E86" + m_Metadata: + m_Items: [] + - m_Id: 68217195749081089 + m_Localized: "\u81EA\u5351\u627E\u5230\u4E86" + m_Metadata: + m_Items: [] + - m_Id: 68217195749081090 + m_Localized: "\u7F9E\u803B\u627E\u5230\u4E86" + m_Metadata: + m_Items: [] + - m_Id: 68217195753275392 + m_Localized: "\u6050\u60E7\u627E\u5230\u4E86" + m_Metadata: + m_Items: [] + - m_Id: 68217195753275393 + m_Localized: "\u5360\u4F4D" + m_Metadata: + m_Items: [] + - m_Id: 68217195753275394 + m_Localized: "\u7F9E\u803B" + m_Metadata: + m_Items: [] + - m_Id: 68217195753275395 + m_Localized: "\u6050\u60E7" + m_Metadata: + m_Items: [] + - m_Id: 68217195753275396 + m_Localized: "\u81EA\u5351" + m_Metadata: + m_Items: [] + - m_Id: 68218473690595328 + m_Localized: "me: \u597D\u4E86\uFF0C\u706B\u5C71\u4F60\u7EE7\u7EED" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789632 + m_Localized: "hs: \u55EF\uFF0Cbalabalabala\u2026" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789633 + m_Localized: "hs: \u6211\u6211\u6211\u6211\u6211\u6211\u6211" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789634 + m_Localized: "me: \u53C8\u51FA\u95EE\u9898\u4E86\uFF0C\u7EE7\u7EED\u4FEE\u590D" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789635 + m_Localized: "me: \u597D\u4E86\uFF0C\u706B\u5C71\u4F60\u7EE7\u7EED" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789636 + m_Localized: "\u60C5\u7EEA\u63A2\u7D22\u5B8C\u6210\u4E86" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789637 + m_Localized: "\u81EA\u5351\u627E\u5230\u4E86" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789638 + m_Localized: "\u7F9E\u803B\u627E\u5230\u4E86" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789639 + m_Localized: "\u6050\u60E7\u627E\u5230\u4E86" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789640 + m_Localized: "\u5360\u4F4D" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789641 + m_Localized: "\u7F9E\u803B" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789642 + m_Localized: "\u6050\u60E7" + m_Metadata: + m_Items: [] + - m_Id: 68218473694789643 + m_Localized: "\u81EA\u5351" + m_Metadata: + m_Items: [] references: version: 2 RefIds: [] diff --git a/Assets/Prefabs/LanguageCanvas.prefab b/Assets/Prefabs/LanguageCanvas.prefab new file mode 100644 index 000000000..01daab07d --- /dev/null +++ b/Assets/Prefabs/LanguageCanvas.prefab @@ -0,0 +1,629 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4444102619471002673 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8243975430985872554} + - component: {fileID: 431899344005454992} + - component: {fileID: 8335407129172028132} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8243975430985872554 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4444102619471002673} + 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: 1786368703775013463} + 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!222 &431899344005454992 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4444102619471002673} + m_CullTransparentMesh: 1 +--- !u!114 &8335407129172028132 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4444102619471002673} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: "\u8F93\u51FA" + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 24 + m_fontSizeBase: 24 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &5051257384991036728 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5886754304752220700} + - component: {fileID: 4975825697508962007} + - component: {fileID: 160196354225289981} + m_Layer: 5 + m_Name: Text (TMP) (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5886754304752220700 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5051257384991036728} + 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: 5610800771145019008} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 10.83, y: -0.71} + m_SizeDelta: {x: 1, y: 1} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &4975825697508962007 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5051257384991036728} + m_CullTransparentMesh: 1 +--- !u!114 &160196354225289981 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5051257384991036728} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: New Text + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294040693 + m_fontColor: {r: 0.45745817, g: 0.86362934, b: 0.9433962, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 0.3 + m_fontSizeBase: 0.3 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0.41540456, z: -2.6862788, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &5215551811631242417 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1786368703775013463} + - component: {fileID: 6351281720201056243} + - component: {fileID: 4189457613456053329} + - component: {fileID: 5263643540917244588} + m_Layer: 5 + m_Name: Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1786368703775013463 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5215551811631242417} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.012000492, y: 0.012000492, z: 0.012000492} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 8243975430985872554} + m_Father: {fileID: 5610800771145019008} + 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: 6.26, y: 2.12} + m_SizeDelta: {x: 160, y: 80} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &6351281720201056243 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5215551811631242417} + m_CullTransparentMesh: 1 +--- !u!114 &4189457613456053329 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5215551811631242417} + 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: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + 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!114 &5263643540917244588 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5215551811631242417} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 4189457613456053329} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &7760881852165363163 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4424925604929635814} + - component: {fileID: 9053907269826513811} + - component: {fileID: 5274779781254289206} + m_Layer: 5 + m_Name: Text (TMP) (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4424925604929635814 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7760881852165363163} + 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: 5610800771145019008} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 10.839999, y: -1.5600002} + m_SizeDelta: {x: 1, y: 1} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &9053907269826513811 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7760881852165363163} + m_CullTransparentMesh: 1 +--- !u!114 &5274779781254289206 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7760881852165363163} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: New Text + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4284643057 + m_fontColor: {r: 0.9433962, g: 0.4632709, b: 0.38625845, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 0.3 + m_fontSizeBase: 0.3 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0.41540456, z: -2.6862788, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &8130917770620783004 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5610800771145019008} + - component: {fileID: 3716509086175559957} + - component: {fileID: 1112886391283849478} + - component: {fileID: 7340929030885672079} + m_Layer: 5 + m_Name: LanguageCanvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5610800771145019008 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8130917770620783004} + 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: + - {fileID: 5886754304752220700} + - {fileID: 4424925604929635814} + - {fileID: 1786368703775013463} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: -2.54, y: 0} + m_SizeDelta: {x: 10, y: 10} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!223 &3716509086175559957 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8130917770620783004} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 2 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!114 &1112886391283849478 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8130917770620783004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 1 +--- !u!114 &7340929030885672079 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8130917770620783004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 diff --git a/Assets/Scripts/MiniGame/HuoShan/NewExpress.meta b/Assets/Prefabs/LanguageCanvas.prefab.meta similarity index 57% rename from Assets/Scripts/MiniGame/HuoShan/NewExpress.meta rename to Assets/Prefabs/LanguageCanvas.prefab.meta index 06de43429..5e7441054 100644 --- a/Assets/Scripts/MiniGame/HuoShan/NewExpress.meta +++ b/Assets/Prefabs/LanguageCanvas.prefab.meta @@ -1,7 +1,6 @@ fileFormatVersion: 2 -guid: a33a05a3339562c4a808f8f17e7a94b1 -folderAsset: yes -DefaultImporter: +guid: 2ce3d18051ef90d4cb2f34f6eb70932c +PrefabImporter: externalObjects: {} userData: assetBundleName: diff --git a/Assets/Prefabs/LanguageParticleSystem.prefab b/Assets/Prefabs/LanguageParticleSystem.prefab new file mode 100644 index 000000000..9c3b3b763 --- /dev/null +++ b/Assets/Prefabs/LanguageParticleSystem.prefab @@ -0,0 +1,461 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1806761601118139948 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6107873478921429282} + - component: {fileID: 8824879904371284977} + m_Layer: 0 + m_Name: background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6107873478921429282 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1806761601118139948} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0.7099991, y: -3.5, z: -0.77730703} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6512012992686266196} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &8824879904371284977 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1806761601118139948} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 1 + m_Sprite: {fileID: 8789638399658599085, guid: 2338fddc038248b4b934bef72357cd13, type: 3} + m_Color: {r: 0, g: 0, b: 0, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 17.860466, y: 10.046512} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &2736402171718450553 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6512012992686266196} + m_Layer: 0 + m_Name: ExpressView + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6512012992686266196 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2736402171718450553} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 2.55, y: 8.59, z: 8.612933} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2550786093261714656} + - {fileID: 6107873478921429282} + - {fileID: 7999662572598421647} + m_Father: {fileID: 5583140471695735899} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &8624585168408867612 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5583140471695735899} + - component: {fileID: 5814606722141011736} + m_Layer: 0 + m_Name: LanguageParticleSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5583140471695735899 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8624585168408867612} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -2.8477545, y: -5.088608, z: -8.612933} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 6512012992686266196} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &5814606722141011736 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8624585168408867612} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 79af040068968934c9a7d092267034f6, type: 3} + m_Name: + m_EditorClassIdentifier: + worldCanvas: {fileID: 1245986889930950426} + canvasSize: 10 + chineseFontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} + floatingParticlePrefab: {fileID: 0} + candidateParticlePrefab: {fileID: 0} + floatingCount: 100 + candidateCount: 50 + redParticleCount: 8 + connectionDistance: 2 + textMargin: 1 + anxietyPhrases: [] + targetSentence: "\u522B\u8FC7\u6765\u6211\u611F\u89C9\u5BB3\u6015" + completionDialogNode: + waveformAmplitude: 0.3 + interactionRadius: 0.5 + mouseInteractionRadius: 1.5 + repulsionForce: 2 + attractionForce: 1.5 + enableAutoPropagation: 1 + autoPropagationInterval: 2 + autoPropagationCount: 1 + propagationDuration: 1 + propagationDelay: 0.08 + maxPropagationNodes: 8 + targetParticleColor: {r: 0.2, g: 0.78039217, b: 1, a: 1} + nonTargetParticleColor: {r: 1, g: 0.40870008, b: 0.38823533, a: 0.69803923} + propagationColor: {r: 0.6621573, g: 0.8664762, b: 0.9433962, a: 1} + floatingTextColor: {r: 1, g: 1, b: 1, a: 1} + targetCalmColor: {r: 0.78, g: 0.59, b: 0.59, a: 1} + targetParticleFontSize: 3.5 + nonTargetParticleFontSize: 2.5 + floatingTextFontSize: 2 + targetParticleBold: 1 + nonTargetParticleBold: 0 + targetConnectionColor: {r: 0.3882353, g: 0.78039217, b: 1, a: 0.6666667} + nonTargetConnectionColor: {r: 1, g: 0.41911593, b: 0.38823533, a: 0.7} + propagationLineColor: {r: 0.6627451, g: 0.8666667, b: 0.94509804, a: 1} + targetConnectionThickness: 0.04 + nonTargetConnectionThickness: 0.02 + propagationLineThickness: 0.03 + integrationProgressText: {fileID: 2368949030211845362} + interferenceCountText: {fileID: 7776268949103202617} + focusSequenceButton: {fileID: 7770157150550594723} + focusZoomScale: 1.6 + focusMoveDuration: 1.2 + focusFadeDuration: 1 + probabilityDuration: 3.5 + predictionSequenceGap: 0.4 + spreadDistance: 0.35 + focusRingColor: {r: 1, g: 1, b: 1, a: 1} + focusRingThickness: 0.025 + focusRingAlpha: 0.752 + statusFadeOutDuration: 0.45 + shuffleDistance: 0.35 + shuffleFrequency: 3.5 + shuffleVerticalScale: 0.6 + entranceDelay: 0.45 + entranceCoreCount: 20 + entranceCoreRadius: 0.55 + entranceInitialScale: 0.25 + entranceCoreBurstDuration: 1.5 + entranceCoreStagger: 0.08 + entranceCascadeDuration: 0.8 + entranceCascadeStagger: 0.03 + entranceSearchRadius: 2 + enableDebugShortcuts: 1 + debugCompleteKey: 286 + debugResetKey: 290 + debugFullTestKey: 291 + autoRunDebugTestOnStart: 0 + enableSeparation: 1 + minParticleSpacing: 0.6 + separationForce: 2.5 + lineAlphaMultiplier: 0.65 +--- !u!1 &8782109143467238028 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2550786093261714656} + - component: {fileID: 1281333152133243457} + m_Layer: 0 + m_Name: Light 2D + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2550786093261714656 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8782109143467238028} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0.5600004, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6512012992686266196} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1281333152133243457 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8782109143467238028} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 073797afb82c5a1438f328866b10b3f0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ComponentVersion: 1 + m_LightType: 1 + m_BlendStyleIndex: 0 + m_FalloffIntensity: 0.5 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1 + m_LightVolumeIntensity: 1 + m_LightVolumeIntensityEnabled: 0 + m_ApplyToSortingLayers: f3a9fe5c00000000bbbb5032670b9971b7e66ab5d3878c191da0cc5f7740d514351d35393d533d9a7dc3a93dad9d9e43a55d9d3c8db9e11bb33d1a38cd4376e253b7f3d03394c91221d98fe1c7af7730011a6676 + m_LightCookieSprite: {fileID: 0} + m_DeprecatedPointLightCookieSprite: {fileID: 0} + m_LightOrder: 0 + m_AlphaBlendOnOverlap: 0 + m_OverlapOperation: 0 + m_NormalMapDistance: 3 + m_NormalMapQuality: 2 + m_UseNormalMap: 0 + m_ShadowIntensityEnabled: 0 + m_ShadowIntensity: 0.75 + m_ShadowVolumeIntensityEnabled: 0 + m_ShadowVolumeIntensity: 0.75 + m_LocalBounds: + m_Center: {x: 0.7023001, y: -3.8862503, z: 0} + m_Extent: {x: 9.6144, y: 5.7741504, z: 0} + m_PointLightInnerAngle: 360 + m_PointLightOuterAngle: 360 + m_PointLightInnerRadius: 0 + m_PointLightOuterRadius: 1 + m_ShapeLightParametricSides: 5 + m_ShapeLightParametricAngleOffset: 0 + m_ShapeLightParametricRadius: 1 + m_ShapeLightFalloffSize: 0.5 + m_ShapeLightFalloffOffset: {x: 0, y: 0} + m_ShapePath: + - {x: -8.300076, y: -9.136493, z: 0} + - {x: 9.797846, y: -9.155944, z: 0} + - {x: 9.817297, y: 1.3947716, z: 0} + - {x: -8.416782, y: 1.3947716, z: 0} +--- !u!1001 &2511059343699428879 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 6512012992686266196} + m_Modifications: + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_SizeDelta.x + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_SizeDelta.y + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_AnchoredPosition.x + value: -2.2422447 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_AnchoredPosition.y + value: -3.5013924 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8130917770620783004, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + propertyPath: m_Name + value: Canvas + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} +--- !u!223 &1245986889930950426 stripped +Canvas: + m_CorrespondingSourceObject: {fileID: 3716509086175559957, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + m_PrefabInstance: {fileID: 2511059343699428879} + m_PrefabAsset: {fileID: 0} +--- !u!114 &2368949030211845362 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 160196354225289981, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + m_PrefabInstance: {fileID: 2511059343699428879} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &7770157150550594723 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5263643540917244588, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + m_PrefabInstance: {fileID: 2511059343699428879} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &7776268949103202617 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5274779781254289206, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + m_PrefabInstance: {fileID: 2511059343699428879} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!224 &7999662572598421647 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 5610800771145019008, guid: 2ce3d18051ef90d4cb2f34f6eb70932c, type: 3} + m_PrefabInstance: {fileID: 2511059343699428879} + m_PrefabAsset: {fileID: 0} diff --git a/Assets/Prefabs/LanguageParticleSystem.prefab.meta b/Assets/Prefabs/LanguageParticleSystem.prefab.meta new file mode 100644 index 000000000..fba111bac --- /dev/null +++ b/Assets/Prefabs/LanguageParticleSystem.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 27bf60bc51cd2f64d9012728a32b960d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Render/Renderer2Dtest.asset b/Assets/Render/Renderer2Dtest.asset index fdae0d5da..197d64d62 100644 --- a/Assets/Render/Renderer2Dtest.asset +++ b/Assets/Render/Renderer2Dtest.asset @@ -463,15 +463,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 &-6086986437317696584 MonoBehaviour: m_ObjectHideFlags: 3 diff --git a/Assets/Resources/Yarn/Test_Huoshan/Center.yarn b/Assets/Resources/Yarn/Test_Huoshan/Center.yarn index 1e5b64b3f..8f4fd7f71 100644 --- a/Assets/Resources/Yarn/Test_Huoshan/Center.yarn +++ b/Assets/Resources/Yarn/Test_Huoshan/Center.yarn @@ -8,8 +8,10 @@ position: 205,-53 <> ->深入表达模块 #line:0ef7bff <> -->深入情绪模块 - <> + ->启动系统 + <> +// ->深入情绪模块 +// <> // <> // <> === @@ -61,4 +63,27 @@ colorID: 1 <> 占位:流程结束 #line:088b598 <> +=== + +title: Complete +tags: +colorID: 8 +position: 205,-53 +--- +me: 好了,火山你继续 +hs: 嗯,balabalabala… +hs: 我我我我我我我 +me: 又出问题了,继续修复 +<> + +=== + +title: Complete2 +tags: +colorID: 8 +position: 205,-53 +--- +me: 好了,火山你继续 + + === \ No newline at end of file diff --git a/Assets/Scenes/HuoShanFixScene.unity b/Assets/Scenes/HuoShanFixScene.unity index 9b3392984..1846b6c5c 100644 --- a/Assets/Scenes/HuoShanFixScene.unity +++ b/Assets/Scenes/HuoShanFixScene.unity @@ -154,68 +154,6 @@ Transform: m_Children: [] m_Father: {fileID: 2060057609} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1001 &8893231 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 577612223} - m_Modifications: - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.x - value: 4.52 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.y - value: 0.19000053 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7653142955462933678, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_Name - value: PlugCableGroup (7) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} ---- !u!4 &8893232 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - m_PrefabInstance: {fileID: 8893231} - m_PrefabAsset: {fileID: 0} --- !u!1 &33826527 GameObject: m_ObjectHideFlags: 3 @@ -260,237 +198,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!1 &59719928 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 59719929} - - component: {fileID: 59719931} - - component: {fileID: 59719930} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &59719929 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 59719928} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 1.75, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1417389773} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &59719930 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 59719928} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &59719931 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 59719928} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &75578087 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 75578088} - - component: {fileID: 75578090} - - component: {fileID: 75578089} - m_Layer: 5 - m_Name: Text (TMP) (4) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &75578088 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 75578087} - 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: 1479235760} - 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: 605.99817, y: -307.49823} - m_SizeDelta: {x: 200, y: 50} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &75578089 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 75578087} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: "\u6280\u672F" - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4294967295 - m_fontColor: {r: 1, g: 1, b: 1, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 36 - m_fontSizeBase: 36 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 1 - m_VerticalAlignment: 256 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 1 - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0, z: -16.216331, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!222 &75578090 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 75578087} - m_CullTransparentMesh: 1 --- !u!1 &81451795 GameObject: m_ObjectHideFlags: 0 @@ -854,17 +561,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 1 ---- !u!114 &161892290 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 4878292288868714702, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!21 &203595023 Material: serializedVersion: 8 @@ -1108,17 +804,6 @@ Material: - _ShadowColor: {r: 0, g: 0, b: 0, a: 1} - _ShineColor: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] ---- !u!114 &214302938 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 125915619024130493, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &217819119 GameObject: m_ObjectHideFlags: 0 @@ -1868,103 +1553,6 @@ LineRenderer: m_UseWorldSpace: 1 m_Loop: 0 m_ApplyActiveColorSpace: 1 ---- !u!1 &353001835 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 353001836} - - component: {fileID: 353001838} - - component: {fileID: 353001837} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &353001836 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 353001835} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 2.3500004, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2029061333} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &353001837 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 353001835} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &353001838 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 353001835} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1001 &396269651 PrefabInstance: m_ObjectHideFlags: 0 @@ -2616,90 +2204,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!1 &399593679 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 399593680} - - component: {fileID: 399593681} - m_Layer: 0 - m_Name: panel2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &399593680 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 399593679} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.040000916, y: 1.1800003, z: 0} - m_LocalScale: {x: 1.2718394, y: 3.0052488, z: 1.0354} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1543994082} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &399593681 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 399593679} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 1 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &405151774 GameObject: m_ObjectHideFlags: 0 @@ -3242,140 +2746,6 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 475644043} m_CullTransparentMesh: 1 ---- !u!1 &488327739 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 488327740} - - component: {fileID: 488327742} - - component: {fileID: 488327741} - m_Layer: 5 - m_Name: Text (TMP) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &488327740 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 488327739} - 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: 606814937} - 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 &488327741 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 488327739} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: "\u5E94\u7528" - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4278190080 - m_fontColor: {r: 0, g: 0, b: 0, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 40 - m_fontSizeBase: 40 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 2 - m_VerticalAlignment: 512 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 1 - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0, z: 0, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!222 &488327742 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 488327739} - m_CullTransparentMesh: 1 --- !u!1001 &493749722 PrefabInstance: m_ObjectHideFlags: 0 @@ -4962,90 +4332,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &527978088 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 527978089} - - component: {fileID: 527978090} - m_Layer: 0 - m_Name: panel2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &527978089 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 527978088} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.040000916, y: 1.1800003, z: 0} - m_LocalScale: {x: 1.2718394, y: 3.0052488, z: 1.0354} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1161241067} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &527978090 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 527978088} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 1 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &534781474 GameObject: m_ObjectHideFlags: 0 @@ -5171,219 +4457,10 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 485fe5a69106f8146a3ef9ca070f306d, type: 3} m_Name: m_EditorClassIdentifier: + targetSpriteRenderer: {fileID: 0} data: moduleName: Speak available: 1 ---- !u!1 &549427945 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 549427946} - - component: {fileID: 549427947} - m_Layer: 0 - m_Name: CableSystem - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &549427946 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 549427945} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 5.2302017, y: -1.8874626, z: -0.9088148} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 577612223} - - {fileID: 1221726913} - - {fileID: 1161241067} - - {fileID: 1543994082} - - {fileID: 2029061333} - - {fileID: 1417389773} - m_Father: {fileID: 1131749961} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &549427947 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 549427945} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 6b20aec8808a25c4b9607bbe72858b7a, type: 3} - m_Name: - m_EditorClassIdentifier: - powerSource: {fileID: 577612224} ---- !u!1 &567044574 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 567044575} - - component: {fileID: 567044577} - - component: {fileID: 567044576} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &567044575 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 567044574} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 1.1500015, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1543994082} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &567044576 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 567044574} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &567044577 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 567044574} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &577612221 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 577612223} - - component: {fileID: 577612224} - m_Layer: 0 - m_Name: PowerSource - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &577612223 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 577612221} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -4.02, y: 1.01, z: 0.13150793} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1376266114} - - {fileID: 1010466507} - - {fileID: 1156742827} - - {fileID: 2043782261} - - {fileID: 2073961673} - - {fileID: 1262599245} - - {fileID: 8893232} - - {fileID: 1864215054} - - {fileID: 1335885315} - m_Father: {fileID: 549427946} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &577612224 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 577612221} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fda4de3e06bfb5044ac87fd4e5c9f5e0, type: 3} - m_Name: - m_EditorClassIdentifier: - plugGroups: - - {fileID: 1010466507} - - {fileID: 1156742827} - - {fileID: 2043782261} - - {fileID: 2073961673} - - {fileID: 1262599245} - - {fileID: 8893232} - - {fileID: 1864215054} - - {fileID: 1335885315} --- !u!1 &582724552 GameObject: m_ObjectHideFlags: 0 @@ -5636,224 +4713,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &606814936 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 606814937} - - component: {fileID: 606814940} - - component: {fileID: 606814939} - - component: {fileID: 606814938} - m_Layer: 5 - m_Name: ApplyButton - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &606814937 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 606814936} - 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: - - {fileID: 488327740} - m_Father: {fileID: 1479235760} - 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: -567, y: -364} - m_SizeDelta: {x: 200, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &606814938 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 606814936} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 606814939} - m_OnClick: - m_PersistentCalls: - m_Calls: [] ---- !u!114 &606814939 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 606814936} - 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: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - 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!222 &606814940 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 606814936} - m_CullTransparentMesh: 1 ---- !u!1 &651755836 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 651755837} - - component: {fileID: 651755839} - - component: {fileID: 651755838} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &651755837 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 651755836} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 1.1500015, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2029061333} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &651755838 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 651755836} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &651755839 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 651755836} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &651984031 GameObject: m_ObjectHideFlags: 0 @@ -5980,6 +4839,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 485fe5a69106f8146a3ef9ca070f306d, type: 3} m_Name: m_EditorClassIdentifier: + targetSpriteRenderer: {fileID: 0} data: moduleName: Emo available: 1 @@ -6176,108 +5036,6 @@ RectTransform: m_AnchoredPosition: {x: 42.9, y: -400} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &727870747 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 727870748} - - component: {fileID: 727870751} - - component: {fileID: 727870750} - - component: {fileID: 727870749} - m_Layer: 0 - m_Name: Canvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &727870748 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 727870747} - 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: - - {fileID: 1479235760} - m_Father: {fileID: 1131749961} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0.66, y: -3.5} - m_SizeDelta: {x: 18, y: 10} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &727870749 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 727870747} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!114 &727870750 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 727870747} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 0 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 800, y: 600} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 1 ---- !u!223 &727870751 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 727870747} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 2 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_VertexColorAlwaysGammaSpace: 0 - m_AdditionalShaderChannelsFlag: 25 - m_UpdateRectTransformForStandalone: 0 - m_SortingLayerID: 0 - m_SortingOrder: 30 - m_TargetDisplay: 0 --- !u!1 &751535848 GameObject: m_ObjectHideFlags: 0 @@ -6362,121 +5120,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &755677973 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 755677974} - - component: {fileID: 755677975} - m_Layer: 0 - m_Name: panel - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &755677974 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 755677973} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.040000916, y: 1.1800003, z: 0} - m_LocalScale: {x: 1.1426562, y: 2.9025002, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1417389773} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &755677975 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 755677973} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 2 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0.3962264, g: 0.3962264, b: 0.3962264, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &774493235 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 6951262078684050181, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} ---- !u!114 &774493236 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 774493235} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 59f8146938fff824cb5fd77236b75775, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Padding: - m_Left: 31 - m_Right: 0 - m_Top: 32 - m_Bottom: 0 - m_ChildAlignment: 0 - m_Spacing: 0 - m_ChildForceExpandWidth: 1 - m_ChildForceExpandHeight: 1 - m_ChildControlWidth: 0 - m_ChildControlHeight: 0 - m_ChildScaleWidth: 1 - m_ChildScaleHeight: 0 - m_ReverseArrangement: 0 --- !u!1 &778140624 GameObject: m_ObjectHideFlags: 0 @@ -6561,187 +5204,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &785726188 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 785726189} - - component: {fileID: 785726190} - m_Layer: 0 - m_Name: panel - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &785726189 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 785726188} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.040000916, y: 1.1800003, z: 0} - m_LocalScale: {x: 1.1426562, y: 2.9025002, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1161241067} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &785726190 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 785726188} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 2 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0.3962264, g: 0.3962264, b: 0.3962264, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &790470381 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 790470382} - - component: {fileID: 790470384} - - component: {fileID: 790470383} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &790470382 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 790470381} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 1.75, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2029061333} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &790470383 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 790470381} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &790470384 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 790470381} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &811040250 GameObject: m_ObjectHideFlags: 0 @@ -6910,103 +5372,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &853339655 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 853339656} - - component: {fileID: 853339658} - - component: {fileID: 853339657} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &853339656 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 853339655} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 1.1500015, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1417389773} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &853339657 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 853339655} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &853339658 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 853339655} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &870426221 GameObject: m_ObjectHideFlags: 0 @@ -7702,308 +6067,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &918612864 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 918612865} - - component: {fileID: 918612867} - - component: {fileID: 918612866} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &918612865 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 918612864} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 1.1500015, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1161241067} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &918612866 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 918612864} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &918612867 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 918612864} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &927585264 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 927585265} - - component: {fileID: 927585266} - - component: {fileID: 927585267} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &927585265 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 927585264} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 1.75, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1221726913} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &927585266 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 927585264} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!114 &927585267 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 927585264} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1 &940591026 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 940591027} - - component: {fileID: 940591029} - - component: {fileID: 940591028} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &940591027 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 940591026} - serializedVersion: 2 - 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: 2029061333} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &940591028 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 940591026} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &940591029 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 940591026} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!114 &940756018 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 6808037505560407106, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!21 &943283313 Material: serializedVersion: 8 @@ -8128,101 +6191,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!114 &964747120 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 5612942296642593149, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1 &969359382 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 969359383} - - component: {fileID: 969359384} - m_Layer: 0 - m_Name: background - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &969359383 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 969359382} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0.7099991, y: -3.5, z: -0.77730685} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1131749961} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &969359384 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 969359382} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 1 - m_Sprite: {fileID: 8789638399658599085, guid: 2338fddc038248b4b934bef72357cd13, type: 3} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 17.860466, y: 10.046512} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &983979845 GameObject: m_ObjectHideFlags: 3 @@ -8398,177 +6366,6 @@ PrefabInstance: insertIndex: -1 addedObject: {fileID: 0} m_SourcePrefab: {fileID: 100100000, guid: 7c9077b0433a4cf45812d3d82e129d9d, type: 3} ---- !u!1 &1004015540 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1004015541} - - component: {fileID: 1004015542} - m_Layer: 0 - m_Name: panel - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1004015541 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1004015540} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.040000916, y: 1.1800003, z: 0} - m_LocalScale: {x: 1.1426562, y: 2.9025002, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2029061333} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &1004015542 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1004015540} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 2 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0.3962264, g: 0.3962264, b: 0.3962264, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &1005238024 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1005238025} - - component: {fileID: 1005238026} - m_Layer: 0 - m_Name: Light 2D - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1005238025 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1005238024} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0.56, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1131749961} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1005238026 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1005238024} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 073797afb82c5a1438f328866b10b3f0, type: 3} - m_Name: - m_EditorClassIdentifier: - m_ComponentVersion: 1 - m_LightType: 1 - m_BlendStyleIndex: 0 - m_FalloffIntensity: 0.5 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Intensity: 1 - m_LightVolumeIntensity: 1 - m_LightVolumeIntensityEnabled: 0 - m_ApplyToSortingLayers: f3a9fe5c00000000bbbb5032670b9971b7e66ab5d3878c191da0cc5f7740d514351d35393d533d9a7dc3a93dad9d9e43a55d9d3c8db9e11bb33d1a38cd4376e253b7f3d03394c91221d98fe1c7af7730011a6676 - m_LightCookieSprite: {fileID: 0} - m_DeprecatedPointLightCookieSprite: {fileID: 0} - m_LightOrder: 0 - m_AlphaBlendOnOverlap: 0 - m_OverlapOperation: 0 - m_NormalMapDistance: 3 - m_NormalMapQuality: 2 - m_UseNormalMap: 0 - m_ShadowIntensityEnabled: 0 - m_ShadowIntensity: 0.75 - m_ShadowVolumeIntensityEnabled: 0 - m_ShadowVolumeIntensity: 0.75 - m_LocalBounds: - m_Center: {x: 0.69260025, y: -3.8818002, z: 0} - m_Extent: {x: 9.6166, y: 5.7742, z: 0} - m_PointLightInnerAngle: 360 - m_PointLightOuterAngle: 360 - m_PointLightInnerRadius: 0 - m_PointLightOuterRadius: 1 - m_ShapeLightParametricSides: 5 - m_ShapeLightParametricAngleOffset: 0 - m_ShapeLightParametricRadius: 1 - m_ShapeLightFalloffSize: 0.5 - m_ShapeLightFalloffOffset: {x: 0, y: 0} - m_ShapePath: - - {x: -8.300076, y: -9.136493, z: 0} - - {x: 9.797846, y: -9.155944, z: 0} - - {x: 9.817297, y: 1.3947716, z: 0} - - {x: -8.416782, y: 1.3947716, z: 0} ---- !u!4 &1010466507 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - m_PrefabInstance: {fileID: 6160900171297423149} - m_PrefabAsset: {fileID: 0} --- !u!1 &1019648048 GameObject: m_ObjectHideFlags: 0 @@ -8772,103 +6569,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &1052128152 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1052128153} - - component: {fileID: 1052128155} - - component: {fileID: 1052128154} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1052128153 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1052128152} - serializedVersion: 2 - 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: 1543994082} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1052128154 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1052128152} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1052128155 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1052128152} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!21 &1053208878 Material: serializedVersion: 8 @@ -9542,41 +7242,11 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1130794394} m_CullTransparentMesh: 1 ---- !u!1 &1131749960 +--- !u!1 &1131749960 stripped GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 2736402171718450553, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + m_PrefabInstance: {fileID: 7087903030884008428} m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1131749961} - m_Layer: 0 - m_Name: ExpressView - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!4 &1131749961 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1131749960} - serializedVersion: 2 - 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: - - {fileID: 549427946} - - {fileID: 727870748} - - {fileID: 969359383} - - {fileID: 1005238025} - m_Father: {fileID: 2138889539} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1138014218 GameObject: m_ObjectHideFlags: 0 @@ -9649,103 +7319,6 @@ MonoBehaviour: m_Calls: [] m_LegacyBlendHint: 0 m_ComponentOwner: {fileID: 983979846} ---- !u!1 &1146058842 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1146058843} - - component: {fileID: 1146058844} - - component: {fileID: 1146058845} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1146058843 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1146058842} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 2.3500004, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1221726913} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &1146058844 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1146058842} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!114 &1146058845 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1146058842} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &1152811716 GameObject: m_ObjectHideFlags: 3 @@ -9790,68 +7363,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!1001 &1156742826 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 577612223} - m_Modifications: - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.x - value: 8.52 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.y - value: 0.19000053 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7653142955462933678, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_Name - value: PlugCableGroup (4) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} ---- !u!4 &1156742827 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - m_PrefabInstance: {fileID: 1156742826} - m_PrefabAsset: {fileID: 0} --- !u!1 &1158491030 GameObject: m_ObjectHideFlags: 0 @@ -10020,59 +7531,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &1161241066 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1161241067} - - component: {fileID: 1161241068} - m_Layer: 0 - m_Name: AModule (1) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1161241067 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1161241066} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068} - m_LocalPosition: {x: -1.39, y: -3.08, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 785726189} - - {fileID: 527978089} - - {fileID: 1574421821} - - {fileID: 1366773708} - - {fileID: 918612865} - - {fileID: 1766155540} - - {fileID: 1947141238} - m_Father: {fileID: 549427946} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} ---- !u!114 &1161241068 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1161241066} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a589bca4a2e605d4caf6b56c5d86610f, type: 3} - m_Name: - m_EditorClassIdentifier: - expressionName: "\u538B\u529B" - subSystemIndex: 1 --- !u!1 &1167274216 GameObject: m_ObjectHideFlags: 0 @@ -10436,103 +7894,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &1189170729 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1189170730} - - component: {fileID: 1189170731} - - component: {fileID: 1189170732} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1189170730 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1189170729} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0.5600014, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1221726913} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &1189170731 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1189170729} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!114 &1189170732 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1189170729} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &1195838871 GameObject: m_ObjectHideFlags: 0 @@ -10808,59 +8169,6 @@ Transform: - {fileID: 1195838874} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1221726911 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1221726913} - - component: {fileID: 1221726914} - m_Layer: 0 - m_Name: AModule - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1221726913 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1221726911} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068} - m_LocalPosition: {x: 2.35, y: -3.08, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 3225038397584595901} - - {fileID: 9071575356894343541} - - {fileID: 1146058843} - - {fileID: 927585265} - - {fileID: 1867932496} - - {fileID: 1189170730} - - {fileID: 1534398476} - m_Father: {fileID: 549427946} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} ---- !u!114 &1221726914 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1221726911} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a589bca4a2e605d4caf6b56c5d86610f, type: 3} - m_Name: - m_EditorClassIdentifier: - expressionName: "\u5438\u5F15\u529B" - subSystemIndex: 0 --- !u!1 &1225589968 GameObject: m_ObjectHideFlags: 0 @@ -11110,79 +8418,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!114 &1238628084 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 6668991501757487288, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1001 &1262599244 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 577612223} - m_Modifications: - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.x - value: 5.52 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.y - value: 0.19000053 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7653142955462933678, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_Name - value: PlugCableGroup (8) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} ---- !u!4 &1262599245 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - m_PrefabInstance: {fileID: 1262599244} - m_PrefabAsset: {fileID: 0} --- !u!1 &1274839201 GameObject: m_ObjectHideFlags: 0 @@ -11534,68 +8769,6 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1320617930} m_CullTransparentMesh: 1 ---- !u!1001 &1335885314 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 577612223} - m_Modifications: - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.x - value: 2.52 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.y - value: 0.19000053 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7653142955462933678, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_Name - value: PlugCableGroup (6) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} ---- !u!4 &1335885315 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - m_PrefabInstance: {fileID: 1335885314} - m_PrefabAsset: {fileID: 0} --- !u!1 &1361125756 GameObject: m_ObjectHideFlags: 0 @@ -11746,284 +8919,6 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1362197941} m_CullTransparentMesh: 1 ---- !u!1 &1366773707 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1366773708} - - component: {fileID: 1366773710} - - component: {fileID: 1366773709} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1366773708 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1366773707} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 1.75, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1161241067} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1366773709 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1366773707} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1366773710 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1366773707} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &1374359191 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1374359192} - - component: {fileID: 1374359194} - - component: {fileID: 1374359193} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1374359192 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1374359191} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 1.75, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1543994082} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1374359193 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1374359191} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1374359194 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1374359191} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &1376266113 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1376266114} - - component: {fileID: 1376266115} - m_Layer: 0 - m_Name: panel - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1376266114 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1376266113} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: 0.7071068, w: 0.7071068} - m_LocalPosition: {x: 0.2800002, y: 2.2, z: 0} - m_LocalScale: {x: 1.1426562, y: 9.723648, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 577612223} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} ---- !u!212 &1376266115 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1376266113} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 12 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0.3962264, g: 0.3962264, b: 0.3962264, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &1393009639 GameObject: m_ObjectHideFlags: 0 @@ -12096,17 +8991,6 @@ MonoBehaviour: m_Calls: [] m_LegacyBlendHint: 0 m_ComponentOwner: {fileID: 279133012} ---- !u!114 &1395901511 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 425089431722077559, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &1397857618 GameObject: m_ObjectHideFlags: 0 @@ -12201,3203 +9085,3203 @@ PrefabInstance: m_Modifications: - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[0].y - value: -1.229865 + value: -1.2394894 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[1].y - value: -1.2299305 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[2].y - value: -1.2318997 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[3].y - value: -1.2374539 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[4].y - value: -1.2393131 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[5].y - value: -1.2378187 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[6].y - value: -1.2401708 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[7].y - value: -1.2432951 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[8].y - value: -1.2400659 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[9].y - value: -1.2367091 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[10].y - value: -1.2378565 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[11].y - value: -1.2363538 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[12].y - value: -1.2305613 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[13].y - value: -1.2278544 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[14].y - value: -1.2277602 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[15].y - value: -1.2231882 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[16].y - value: -1.2173901 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[17].y - value: -1.2177364 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[18].y - value: -1.2178886 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[19].y - value: -1.2136117 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[20].y - value: -1.2122111 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[21].y - value: -1.2153612 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[22].y - value: -1.2158104 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[23].y - value: -1.2143017 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[24].y - value: -1.218007 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[25].y - value: -1.2235805 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[26].y - value: -1.2236568 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[27].y - value: -1.2247792 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[28].y - value: -1.230863 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[29].y - value: -1.2345945 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[30].y - value: -1.2342272 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[31].y - value: -1.2369013 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[32].y - value: -1.2415243 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[33].y - value: -1.2408755 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[34].y - value: -1.2381558 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[35].y - value: -1.2406304 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[36].y - value: -1.2413931 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[37].y - value: -1.2366619 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[38].y - value: -1.233664 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[39].y - value: -1.2339664 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[40].y - value: -1.2304316 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[41].y - value: -1.224339 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[42].y - value: -1.2230023 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[43].y - value: -1.2231698 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[44].y - value: -1.2177116 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[45].y - value: -1.213869 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[46].y - value: -1.2154914 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[47].y - value: -1.2154014 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[48].y - value: -1.2123798 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[49].y - value: -1.213672 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[50].y - value: -1.2180653 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[51].y - value: -1.2182487 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[52].y - value: -1.2177473 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[53].y - value: -1.2236 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[54].y - value: -1.2284336 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[55].y - value: -1.2285248 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[56].y - value: -1.2309645 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[57].y - value: -1.2366971 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[58].y - value: -1.2383499 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[59].y - value: -1.2370982 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[60].y - value: -1.2401013 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[61].y - value: -1.2434385 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[62].y - value: -1.2401854 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[63].y - value: -1.2374756 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[64].y - value: -1.2388592 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[65].y - value: -1.2371418 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[66].y - value: -1.2315172 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[67].y - value: -1.2292695 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[68].y - value: -1.2291892 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[69].y - value: -1.2241595 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[70].y - value: -1.218436 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[71].y - value: -1.2188265 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[72].y - value: -1.2183789 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[73].y - value: -1.2138466 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[74].y - value: -1.2125906 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[75].y - value: -1.215411 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[76].y - value: -1.2152015 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[77].y - value: -1.2134365 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[78].y - value: -1.2173306 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[79].y - value: -1.2225157 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[80].y - value: -1.2222815 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[81].y - value: -1.223731 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[82].y - value: -1.2298522 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[83].y - value: -1.2332562 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[84].y - value: -1.2330275 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[85].y - value: -1.236274 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[86].y - value: -1.2411665 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[87].y - value: -1.2403247 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[88].y - value: -1.2381971 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[89].y - value: -1.2410738 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[90].y - value: -1.2417275 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[91].y - value: -1.2372092 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[92].y - value: -1.2348258 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[93].y - value: -1.2352792 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[94].y - value: -1.2314557 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[95].y - value: -1.2253654 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[96].y - value: -1.2243949 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[97].y - value: -1.2241197 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[98].y - value: -1.2184603 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[99].y - value: -1.2148374 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[100].y - value: -1.216159 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[101].y - value: -1.215414 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[102].y - value: -1.212107 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[103].y - value: -1.213534 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[104].y - value: -1.217662 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[105].y - value: -1.217203 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[106].y - value: -1.2168988 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[107].y - value: -1.2226236 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[108].y - value: -1.2269529 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[109].y - value: -1.227101 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[110].y - value: -1.2299858 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[111].y - value: -1.2358452 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[112].y - value: -1.2372476 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[113].y - value: -1.2362767 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[114].y - value: -1.2399215 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[115].y - value: -1.243159 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[116].y - value: -1.2161458 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[117].y - value: -1.1996958 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[118].y - value: -1.1836169 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[119].y - value: -1.1765817 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[120].y - value: -1.1770877 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[121].y - value: -1.1775936 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[122].y - value: -1.1729299 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[123].y - value: -1.1568508 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[124].y - value: -1.1407719 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[125].y - value: -1.1259056 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[126].y - value: -1.1266999 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[127].y - value: -1.1272058 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[128].y - value: -1.1277118 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[129].y - value: -1.1140058 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[130].y - value: -1.097556 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[131].y - value: -1.0814769 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[132].y - value: -1.0760238 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[133].y - value: -1.0765297 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[134].y - value: -1.0773242 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[135].y - value: -1.07079 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[136].y - value: -1.054711 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[137].y - value: -1.0386319 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[138].y - value: -1.0253477 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[139].y - value: -1.0261421 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[140].y - value: -1.026648 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[141].y - value: -1.027154 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[142].y - value: -1.011866 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[143].y - value: -0.9954161 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[144].y - value: -0.9793371 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[145].y - value: -0.975466 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[146].y - value: -0.97597194 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[147].y - value: -0.9767662 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[148].y - value: -0.9686501 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[149].y - value: -0.95257103 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[150].y - value: -0.93734396 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[151].y - value: -0.942723 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[152].y - value: -0.9572842 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[153].y - value: -0.9481545 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[154].y - value: -0.9335933 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[155].y - value: -0.9469681 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[156].y - value: -0.95896506 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[157].y - value: -0.94440377 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[158].y - value: -0.9361575 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[159].y - value: -0.9507189 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[160].y - value: -0.95521426 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[161].y - value: -0.940653 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[162].y - value: -0.93990827 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[163].y - value: -0.95446956 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[164].y - value: -0.9514636 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[165].y - value: -0.9369023 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[166].y - value: -0.943659 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[167].y - value: -0.95822024 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[168].y - value: -0.9477128 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[169].y - value: -0.93315154 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[170].y - value: -0.94740975 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[171].y - value: -0.958029 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[172].y - value: -0.94346774 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[173].y - value: -0.9365992 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[174].y - value: -0.9511605 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[175].y - value: -0.95427823 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[176].y - value: -0.93971694 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[177].y - value: -0.94034994 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[178].y - value: -0.95491123 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[179].y - value: -0.95052755 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[180].y - value: -0.93596625 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[181].y - value: -0.9441007 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[182].y - value: -0.9586619 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[183].y - value: -0.94677675 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[184].y - value: -0.9337845 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[185].y - value: -0.9687985 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[186].y - value: -0.9819275 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[187].y - value: -0.99280894 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[188].y - value: -1.0036904 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[189].y - value: -1.0145718 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[190].y - value: -1.0272117 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[191].y - value: -1.044362 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[192].y - value: -1.0615121 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[193].y - value: -1.0786624 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[194].y - value: -1.0954747 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[195].y - value: -1.1078324 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[196].y - value: -1.1187139 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[197].y - value: -1.1295953 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[198].y - value: -1.1409628 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[199].y - value: -1.1538879 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[200].y - value: -1.1710382 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[201].y - value: -1.1881883 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[202].y - value: -1.2050008 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[203].y - value: -1.2221509 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[204].y - value: -1.2337375 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[205].y - value: -1.2446189 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[206].y - value: -1.2555002 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[207].y - value: -1.2668678 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[208].y - value: -1.2805641 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[209].y - value: -1.2977144 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[210].y - value: -1.3148645 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[211].y - value: -1.331677 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[212].y - value: -1.348761 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[213].y - value: -1.3596424 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[214].y - value: -1.3705238 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[215].y - value: -1.3818914 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[216].y - value: -1.3927728 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[217].y - value: -1.4072404 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[218].y - value: -1.4243906 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[219].y - value: -1.44249 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[220].y - value: -1.4422295 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[221].y - value: -1.4349488 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[222].y - value: -1.4373319 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[223].y - value: -1.4446125 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[224].y - value: -1.4403541 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[225].y - value: -1.4330734 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[226].y - value: -1.4392073 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[227].y - value: -1.4455122 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[228].y - value: -1.4384787 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[229].y - value: -1.433802 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[230].y - value: -1.4410826 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[231].y - value: -1.4436368 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[232].y - value: -1.4366033 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[233].y - value: -1.4356773 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[234].y - value: -1.442958 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[235].y - value: -1.4417614 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[236].y - value: -1.434728 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[237].y - value: -1.4375527 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[238].y - value: -1.4448334 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[239].y - value: -1.4398861 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[240].y - value: -1.4326054 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[241].y - value: -1.4394281 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[242].y - value: -1.4452913 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[243].y - value: -1.4380107 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[244].y - value: -1.43427 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[245].y - value: -1.4413035 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[246].y - value: -1.443416 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[247].y - value: -1.4361353 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[248].y - value: -1.4361454 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[249].y - value: -1.4431789 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[250].y - value: -1.4415406 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[251].y - value: -1.4342599 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[252].y - value: -1.4380207 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[253].y - value: -1.4450542 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[254].y - value: -1.2180029 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[255].y - value: -1.2188545 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[256].y - value: -1.2151086 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[257].y - value: -1.2115456 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[258].y - value: -1.2142788 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[259].y - value: -1.2162077 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[260].y - value: -1.2143629 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[261].y - value: -1.2159626 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[262].y - value: -1.2212769 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[263].y - value: -1.2230408 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[264].y - value: -1.2230296 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[265].y - value: -1.2283648 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[266].y - value: -1.2340115 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[267].y - value: -1.2338202 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[268].y - value: -1.234897 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[269].y - value: -1.239858 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[270].y - value: -1.2413657 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[271].y - value: -1.2390141 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[272].y - value: -1.2400165 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[273].y - value: -1.2422706 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[274].y - value: -1.2385364 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[275].y - value: -1.2339945 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[276].y - value: -1.2344979 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[277].y - value: -1.232931 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[278].y - value: -1.2268543 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[279].y - value: -1.2236531 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[280].y - value: -1.2236917 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[281].y - value: -1.2198718 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[282].y - value: -1.2145947 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[283].y - value: -1.2152127 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[284].y - value: -1.2166097 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[285].y - value: -1.2132164 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[286].y - value: -1.2123332 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[287].y - value: -1.2163458 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[288].y - value: -1.218072 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[289].y - value: -1.2172912 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[290].y - value: -1.2211655 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[291].y - value: -1.2271405 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[292].y - value: -1.2278364 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[293].y - value: -1.2285118 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[294].y - value: -1.2344049 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[295].y - value: -1.2380824 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[296].y - value: -1.2371778 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[297].y - value: -1.2386757 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[298].y - value: -1.2424917 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[299].y - value: -1.2413028 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[300].y - value: -1.2377075 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[301].y - value: -1.2388611 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[302].y - value: -1.2392668 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[303].y - value: -1.2338315 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[304].y - value: -1.2299641 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[305].y - value: -1.2298844 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[306].y - value: -1.22667 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[307].y - value: -1.220643 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[308].y - value: -1.2192438 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[309].y - value: -1.2198446 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[310].y - value: -1.21548 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[311].y - value: -1.2120291 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[312].y - value: -1.2145193 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[313].y - value: -1.2157416 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[314].y - value: -1.2136272 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[315].y - value: -1.2153667 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[316].y - value: -1.2205096 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[317].y - value: -1.2217182 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[318].y - value: -1.2216206 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[319].y - value: -1.2273144 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[320].y - value: -1.2325677 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[321].y - value: -1.2324853 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[322].y - value: -1.2341638 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[323].y - value: -1.239339 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[324].y - value: -1.2406716 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[325].y - value: -1.2385999 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[326].y - value: -1.2403126 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[327].y - value: -1.2428468 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[328].y - value: -1.2389919 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[329].y - value: -1.235109 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[330].y - value: -1.2357392 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[331].y - value: -1.2339153 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[332].y - value: -1.2278996 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[333].y - value: -1.2251318 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[334].y - value: -1.2250427 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[335].y - value: -1.2207109 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[336].y - value: -1.2152479 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[337].y - value: -1.216064 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[338].y - value: -1.2167315 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[339].y - value: -1.2130922 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[340].y - value: -1.2123041 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[341].y - value: -1.216077 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[342].y - value: -1.2170898 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[343].y - value: -1.2161514 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[344].y - value: -1.2202482 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[345].y - value: -1.2261243 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[346].y - value: -1.226347 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[347].y - value: -1.2274914 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[348].y - value: -1.2334796 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[349].y - value: -1.2369312 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[350].y - value: -1.2361811 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[351].y - value: -1.2383566 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[352].y - value: -1.2424451 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[353].y - value: -1.241161 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[354].y - value: -1.2378119 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[355].y - value: -1.2396965 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[356].y - value: -1.2399067 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[357].y - value: -1.2346605 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[358].y - value: -1.2313087 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[359].y - value: -1.2313604 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[360].y - value: -1.2277169 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[361].y - value: -1.221633 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[362].y - value: -1.2204945 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[363].y - value: -1.2209718 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[364].y - value: -1.2159506 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[365].y - value: -1.2126222 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[366].y - value: -1.2148331 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[367].y - value: -1.2153454 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[368].y - value: -1.2129964 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[369].y - value: -1.2148625 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[370].y - value: -1.2197884 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[371].y - value: -1.2203921 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[372].y - value: -1.2202404 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[373].y - value: -1.2262646 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[374].y - value: -1.2311554 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[375].y - value: -1.2311555 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[376].y - value: -1.2333857 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[377].y - value: -1.2387294 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[378].y - value: -1.23992 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[379].y - value: -1.2381164 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[380].y - value: -1.2405349 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[381].y - value: -1.2432597 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[382].y - value: -1.2393472 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[383].y - value: -1.2360853 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[384].y - value: -1.2369691 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[385].y - value: -1.2348576 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[386].y - value: -1.2289283 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[387].y - value: -1.2265626 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[388].y - value: -1.2264864 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[389].y - value: -1.221583 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[390].y - value: -1.2161114 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[391].y - value: -1.2169633 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[392].y - value: -1.2169987 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[393].y - value: -1.2130437 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[394].y - value: -1.2123883 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[395].y - value: -1.2158811 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[396].y - value: -1.2162539 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[397].y - value: -1.2150367 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[398].y - value: -1.2193873 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[399].y - value: -1.2249324 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[400].y - value: -1.2249213 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[401].y - value: -1.2264755 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[402].y - value: -1.232509 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[403].y - value: -1.2357117 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[404].y - value: -1.2351478 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[405].y - value: -1.2379681 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[406].y - value: -1.2423234 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[407].y - value: -1.2409048 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[408].y - value: -1.2381257 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[409].y - value: -1.2403797 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[410].y - value: -1.2404262 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[411].y - value: -1.2354201 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[412].y - value: -1.2326063 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[413].y - value: -1.2327571 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[414].y - value: -1.2287437 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[415].y - value: -1.2226534 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[416].y - value: -1.2218 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[417].y - value: -1.2217613 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[418].y - value: -1.2164845 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[419].y - value: -1.2133216 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[420].y - value: -1.21526 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[421].y - value: -1.215107 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[422].y - value: -1.2124292 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[423].y - value: -1.2144897 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[424].y - value: -1.2191485 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[425].y - value: -1.2191827 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[426].y - value: -1.2192761 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[427].y - value: -1.2252512 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[428].y - value: -1.2297281 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[429].y - value: -1.2297852 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[430].y - value: -1.2325153 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[431].y - value: -1.2380648 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[432].y - value: -1.2390691 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[433].y - value: -1.2375233 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[434].y - value: -1.2406014 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[435].y - value: -1.2431934 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[436].y - value: -1.2395977 - objectReference: {fileID: 0} - - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[437].y value: -1.23697 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[438].y - value: -1.2380707 + propertyPath: m_Positions.Array.data[2].y + value: -1.2379124 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[439].y - value: -1.235721 + propertyPath: m_Positions.Array.data[3].y + value: -1.235448 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[440].y - value: -1.2299044 + propertyPath: m_Positions.Array.data[4].y + value: -1.229725 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[441].y - value: -1.2279927 + propertyPath: m_Positions.Array.data[5].y + value: -1.2282805 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[442].y - value: -1.2278987 + propertyPath: m_Positions.Array.data[6].y + value: -1.2280139 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[443].y - value: -1.2225325 + propertyPath: m_Positions.Array.data[7].y + value: -1.2225583 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[444].y - value: -1.2173523 + propertyPath: m_Positions.Array.data[8].y + value: -1.2171329 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[445].y - value: -1.2179532 + propertyPath: m_Positions.Array.data[9].y + value: -1.2184777 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[446].y - value: -1.2173699 + propertyPath: m_Positions.Array.data[10].y + value: -1.2171388 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[447].y - value: -1.2131468 + propertyPath: m_Positions.Array.data[11].y + value: -1.2130007 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[448].y - value: -1.2126286 + propertyPath: m_Positions.Array.data[12].y + value: -1.2126707 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[449].y - value: -1.2157952 + propertyPath: m_Positions.Array.data[13].y + value: -1.2157569 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[450].y - value: -1.2155182 + propertyPath: m_Positions.Array.data[14].y + value: -1.2157093 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[451].y - value: -1.2140604 + propertyPath: m_Positions.Array.data[15].y + value: -1.2137599 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[452].y - value: -1.2186201 + propertyPath: m_Positions.Array.data[16].y + value: -1.2187918 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[453].y - value: -1.2236098 + propertyPath: m_Positions.Array.data[17].y + value: -1.2233863 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[454].y - value: -1.2235123 + propertyPath: m_Positions.Array.data[18].y + value: -1.2234551 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[455].y - value: -1.225425 + propertyPath: m_Positions.Array.data[19].y + value: -1.2253755 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[456].y - value: -1.2315279 + propertyPath: m_Positions.Array.data[20].y + value: -1.2314023 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[457].y - value: -1.2343769 + propertyPath: m_Positions.Array.data[21].y + value: -1.2339286 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[458].y - value: -1.2340343 + propertyPath: m_Positions.Array.data[22].y + value: -1.2337104 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[459].y - value: -1.2374492 + propertyPath: m_Positions.Array.data[23].y + value: -1.2375426 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[460].y + propertyPath: m_Positions.Array.data[24].y value: -1.2420564 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[461].y - value: -1.2404907 + propertyPath: m_Positions.Array.data[25].y + value: -1.2406236 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[462].y - value: -1.2114722 + propertyPath: m_Positions.Array.data[26].y + value: -1.2129141 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[463].y - value: -1.2119781 + propertyPath: m_Positions.Array.data[27].y + value: -1.2096709 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[464].y - value: -1.2062349 + propertyPath: m_Positions.Array.data[28].y + value: -1.2080889 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[465].y - value: -1.1901559 + propertyPath: m_Positions.Array.data[29].y + value: -1.1908975 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[466].y + propertyPath: m_Positions.Array.data[30].y value: -1.173706 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[467].y - value: -1.1602901 + propertyPath: m_Positions.Array.data[31].y + value: -1.1611553 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[468].y - value: -1.160796 + propertyPath: m_Positions.Array.data[32].y + value: -1.1579121 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[469].y - value: -1.161302 + propertyPath: m_Positions.Array.data[33].y + value: -1.1592832 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[470].y - value: -1.1620963 + propertyPath: m_Positions.Array.data[34].y + value: -1.1606543 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[471].y - value: -1.1469401 + propertyPath: m_Positions.Array.data[35].y + value: -1.1476817 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[472].y - value: -1.130861 + propertyPath: m_Positions.Array.data[36].y + value: -1.1304903 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[473].y - value: -1.114782 + propertyPath: m_Positions.Array.data[37].y + value: -1.1132989 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[474].y - value: -1.1101199 + propertyPath: m_Positions.Array.data[38].y + value: -1.1075244 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[475].y - value: -1.1109142 + propertyPath: m_Positions.Array.data[39].y + value: -1.1088955 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[476].y - value: -1.1114202 + propertyPath: m_Positions.Array.data[40].y + value: -1.1102666 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[477].y - value: -1.1040951 + propertyPath: m_Positions.Array.data[41].y + value: -1.1044658 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[478].y - value: -1.088016 + propertyPath: m_Positions.Array.data[42].y + value: -1.0872744 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[479].y - value: -1.0715662 + propertyPath: m_Positions.Array.data[43].y + value: -1.070083 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[480].y - value: -1.0597322 + propertyPath: m_Positions.Array.data[44].y + value: -1.0588243 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[481].y - value: -1.0602381 + propertyPath: m_Positions.Array.data[45].y + value: -1.0585078 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[482].y - value: -1.060744 + propertyPath: m_Positions.Array.data[46].y + value: -1.059879 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[483].y - value: -1.0608792 + propertyPath: m_Positions.Array.data[47].y + value: -1.06125 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[484].y - value: -1.0448002 + propertyPath: m_Positions.Array.data[48].y + value: -1.0440587 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[485].y - value: -1.0287212 + propertyPath: m_Positions.Array.data[49].y + value: -1.0268673 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[486].y - value: -1.0126421 + propertyPath: m_Positions.Array.data[50].y + value: -1.0156084 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[487].y - value: -1.0098505 + propertyPath: m_Positions.Array.data[51].y + value: -1.0081201 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[488].y - value: -1.0103564 + propertyPath: m_Positions.Array.data[52].y + value: -1.0094912 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[489].y + propertyPath: m_Positions.Array.data[53].y value: -1.0108624 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[490].y - value: -1.0019552 + propertyPath: m_Positions.Array.data[54].y + value: -1.0008428 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[491].y - value: -0.98587614 + propertyPath: m_Positions.Array.data[55].y + value: -0.989584 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[492].y - value: -0.9694263 + propertyPath: m_Positions.Array.data[56].y + value: -0.9723926 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[493].y - value: -0.9591744 + propertyPath: m_Positions.Array.data[57].y + value: -0.95773244 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[494].y - value: -0.95968026 + propertyPath: m_Positions.Array.data[58].y + value: -0.95910347 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[495].y - value: -0.9601862 + propertyPath: m_Positions.Array.data[59].y + value: -0.9604746 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[496].y - value: -0.9583192 + propertyPath: m_Positions.Array.data[60].y + value: -0.956836 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[497].y - value: -0.9471196 + propertyPath: m_Positions.Array.data[61].y + value: -0.94217575 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[498].y - value: -0.9334417 + propertyPath: m_Positions.Array.data[62].y + value: -0.9369024 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[499].y - value: -0.948003 + propertyPath: m_Positions.Array.data[63].y + value: -0.9499805 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[500].y - value: -0.9579301 + propertyPath: m_Positions.Array.data[64].y + value: -0.95694137 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[501].y - value: -0.94336885 + propertyPath: m_Positions.Array.data[65].y + value: -0.9438633 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[502].y - value: -0.93719244 + propertyPath: m_Positions.Array.data[66].y + value: -0.9352149 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[503].y - value: -0.95175374 + propertyPath: m_Positions.Array.data[67].y + value: -0.9562032 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[504].y - value: -0.9541794 + propertyPath: m_Positions.Array.data[68].y + value: -0.9507187 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[505].y - value: -0.9396181 + propertyPath: m_Positions.Array.data[69].y + value: -0.93764055 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[506].y - value: -0.9409432 + propertyPath: m_Positions.Array.data[70].y + value: -0.9414376 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[507].y - value: -0.9555044 + propertyPath: m_Positions.Array.data[71].y + value: -0.9545157 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[508].y - value: -0.94993424 + propertyPath: m_Positions.Array.data[72].y + value: -0.95240617 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[509].y - value: -0.93586737 + propertyPath: m_Positions.Array.data[73].y + value: -0.9345821 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[510].y - value: -0.9446939 + propertyPath: m_Positions.Array.data[74].y + value: -0.9476602 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[511].y - value: -0.9592552 + propertyPath: m_Positions.Array.data[75].y + value: -0.95926166 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[512].y + propertyPath: m_Positions.Array.data[76].y value: -0.94618356 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[513].y - value: -0.9338834 + propertyPath: m_Positions.Array.data[77].y + value: -0.9331054 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[514].y - value: -0.94844466 + propertyPath: m_Positions.Array.data[78].y + value: -0.94597274 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[515].y - value: -0.95699406 + propertyPath: m_Positions.Array.data[79].y + value: -0.953039 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[516].y - value: -0.94243276 + propertyPath: m_Positions.Array.data[80].y + value: -0.93996084 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[517].y - value: -0.9376341 + propertyPath: m_Positions.Array.data[81].y + value: -0.9391173 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[518].y + propertyPath: m_Positions.Array.data[82].y value: -0.9521954 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[519].y - value: -0.9532434 + propertyPath: m_Positions.Array.data[83].y + value: -0.9547265 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[520].y - value: -0.9386821 + propertyPath: m_Positions.Array.data[84].y + value: -0.93373823 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[521].y - value: -0.94138485 + propertyPath: m_Positions.Array.data[85].y + value: -0.9453399 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[522].y - value: -0.95594615 + propertyPath: m_Positions.Array.data[86].y + value: -0.9584181 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[523].y - value: -0.9494926 + propertyPath: m_Positions.Array.data[87].y + value: -0.94850385 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[524].y - value: -0.9349313 + propertyPath: m_Positions.Array.data[88].y + value: -0.9354257 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[525].y - value: -0.94562995 + propertyPath: m_Positions.Array.data[89].y + value: -0.94365245 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[526].y - value: -0.9596969 + propertyPath: m_Positions.Array.data[90].y + value: -0.9553593 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[527].y - value: -0.9457419 + propertyPath: m_Positions.Array.data[91].y + value: -0.9422812 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[528].y - value: -0.93481946 + propertyPath: m_Positions.Array.data[92].y + value: -0.936797 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[529].y - value: -0.94938076 + propertyPath: m_Positions.Array.data[93].y + value: -0.9498751 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[530].y - value: -0.9565524 + propertyPath: m_Positions.Array.data[94].y + value: -0.9570468 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[531].y - value: -0.9624061 + propertyPath: m_Positions.Array.data[95].y + value: -0.9610548 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[532].y - value: -0.9792727 + propertyPath: m_Positions.Array.data[96].y + value: -0.9748974 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[533].y - value: -0.9901541 + propertyPath: m_Positions.Array.data[97].y + value: -0.9872372 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[534].y - value: -1.0015216 + propertyPath: m_Positions.Array.data[98].y + value: -0.99957705 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[535].y - value: -1.012403 + propertyPath: m_Positions.Array.data[99].y + value: -1.0119169 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[536].y - value: -1.0232844 + propertyPath: m_Positions.Array.data[100].y + value: -1.0242567 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[537].y - value: -1.0379695 + propertyPath: m_Positions.Array.data[101].y + value: -1.0365965 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[538].y - value: -1.0547819 + propertyPath: m_Positions.Array.data[102].y + value: -1.0578223 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[539].y - value: -1.0719321 + propertyPath: m_Positions.Array.data[103].y + value: -1.0739591 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[540].y - value: -1.0890824 + propertyPath: m_Positions.Array.data[104].y + value: -1.0900958 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[541].y + propertyPath: m_Positions.Array.data[105].y value: -1.1051776 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[542].y - value: -1.1160591 + propertyPath: m_Positions.Array.data[106].y + value: -1.1175175 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[543].y - value: -1.1274266 + propertyPath: m_Positions.Array.data[107].y + value: -1.1298573 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[544].y - value: -1.138308 + propertyPath: m_Positions.Array.data[108].y + value: -1.1344188 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[545].y - value: -1.1491895 + propertyPath: m_Positions.Array.data[109].y + value: -1.1491847 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[546].y - value: -1.1646457 + propertyPath: m_Positions.Array.data[110].y + value: -1.1653214 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[547].y + propertyPath: m_Positions.Array.data[111].y value: -1.1814581 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[548].y - value: -1.1986083 + propertyPath: m_Positions.Array.data[112].y + value: -1.1975948 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[549].y - value: -1.2157586 + propertyPath: m_Positions.Array.data[113].y + value: -1.2153398 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[550].y - value: -1.2310826 + propertyPath: m_Positions.Array.data[114].y + value: -1.2276796 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[551].y - value: -1.2424501 + propertyPath: m_Positions.Array.data[115].y + value: -1.2400194 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[552].y - value: -1.2533315 + propertyPath: m_Positions.Array.data[116].y + value: -1.2523593 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[553].y - value: -1.264213 + propertyPath: m_Positions.Array.data[117].y + value: -1.2646991 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[554].y - value: -1.2750944 + propertyPath: m_Positions.Array.data[118].y + value: -1.2770389 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[555].y - value: -1.2909842 + propertyPath: m_Positions.Array.data[119].y + value: -1.2943624 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[556].y - value: -1.3081343 + propertyPath: m_Positions.Array.data[120].y + value: -1.3104991 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[557].y - value: -1.3252845 + propertyPath: m_Positions.Array.data[121].y + value: -1.3266358 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[558].y - value: -1.3424348 + propertyPath: m_Positions.Array.data[122].y + value: -1.3427726 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[559].y - value: -1.3569876 + propertyPath: m_Positions.Array.data[123].y + value: -1.3579599 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[560].y - value: -1.3683552 + propertyPath: m_Positions.Array.data[124].y + value: -1.3702997 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[561].y - value: -1.3792365 + propertyPath: m_Positions.Array.data[125].y + value: -1.3748612 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[562].y - value: -1.3901179 + propertyPath: m_Positions.Array.data[126].y + value: -1.3872011 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[563].y - value: -1.4009993 + propertyPath: m_Positions.Array.data[127].y + value: -1.4018614 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[564].y - value: -1.4176604 + propertyPath: m_Positions.Array.data[128].y + value: -1.4179982 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[565].y - value: -1.4348105 + propertyPath: m_Positions.Array.data[129].y + value: -1.4341348 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[566].y - value: -1.4378493 + propertyPath: m_Positions.Array.data[130].y + value: -1.4366133 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[567].y - value: -1.44513 + propertyPath: m_Positions.Array.data[131].y + value: -1.4448925 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[568].y - value: -1.4398366 + propertyPath: m_Positions.Array.data[132].y + value: -1.4383534 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[569].y - value: -1.432556 + propertyPath: m_Positions.Array.data[133].y + value: -1.4331857 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[570].y + propertyPath: m_Positions.Array.data[134].y value: -1.4397247 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[571].y - value: -1.4449947 + propertyPath: m_Positions.Array.data[135].y + value: -1.4457363 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[572].y - value: -1.4379612 + propertyPath: m_Positions.Array.data[136].y + value: -1.4352422 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[573].y - value: -1.4343195 + propertyPath: m_Positions.Array.data[137].y + value: -1.4362969 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[574].y - value: -1.4416001 + propertyPath: m_Positions.Array.data[138].y + value: -1.442836 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[575].y - value: -1.4431193 + propertyPath: m_Positions.Array.data[139].y + value: -1.4426249 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[576].y - value: -1.4358387 + propertyPath: m_Positions.Array.data[140].y + value: -1.4360859 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[577].y - value: -1.4361948 + propertyPath: m_Positions.Array.data[141].y + value: -1.4354532 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[578].y - value: -1.4434755 + propertyPath: m_Positions.Array.data[142].y + value: -1.4459474 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[579].y - value: -1.441244 + propertyPath: m_Positions.Array.data[143].y + value: -1.4395137 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[580].y - value: -1.4339633 + propertyPath: m_Positions.Array.data[144].y + value: -1.4329746 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[581].y - value: -1.4380702 + propertyPath: m_Positions.Array.data[145].y + value: -1.4385645 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[582].y - value: -1.4453509 + propertyPath: m_Positions.Array.data[146].y + value: -1.4451036 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[583].y - value: -1.4393686 + propertyPath: m_Positions.Array.data[147].y + value: -1.4403573 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[584].y - value: -1.4329121 + propertyPath: m_Positions.Array.data[148].y + value: -1.4351368 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[585].y - value: -1.4399456 + propertyPath: m_Positions.Array.data[149].y + value: -1.4416759 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[586].y - value: -1.4447739 + propertyPath: m_Positions.Array.data[150].y + value: -1.4437851 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[587].y - value: -1.4374932 + propertyPath: m_Positions.Array.data[151].y + value: -1.4372461 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[588].y - value: -1.4347875 + propertyPath: m_Positions.Array.data[152].y + value: -1.434293 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[589].y - value: -1.4418209 + propertyPath: m_Positions.Array.data[153].y + value: -1.4408321 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[590].y - value: -1.4428985 + propertyPath: m_Positions.Array.data[154].y + value: -1.4406738 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[591].y - value: -1.4356178 + propertyPath: m_Positions.Array.data[155].y + value: -1.4341347 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[592].y - value: -1.4366628 + propertyPath: m_Positions.Array.data[156].y + value: -1.4374044 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[593].y + propertyPath: m_Positions.Array.data[157].y value: -1.4439435 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[594].y - value: -1.4410231 + propertyPath: m_Positions.Array.data[158].y + value: -1.4415175 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[595].y - value: -1.4337425 + propertyPath: m_Positions.Array.data[159].y + value: -1.4349785 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[596].y - value: -1.4385382 + propertyPath: m_Positions.Array.data[160].y + value: -1.4405158 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[597].y - value: -1.4458189 + propertyPath: m_Positions.Array.data[161].y + value: -1.4449452 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[598].y - value: -1.4391477 + propertyPath: m_Positions.Array.data[162].y + value: -1.4384062 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[599].y + propertyPath: m_Positions.Array.data[163].y value: -1.4331329 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[600].y - value: -1.2213168 + propertyPath: m_Positions.Array.data[164].y + value: -1.2211528 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[601].y - value: -1.2178437 + propertyPath: m_Positions.Array.data[165].y + value: -1.217542 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[602].y - value: -1.2130754 + propertyPath: m_Positions.Array.data[166].y + value: -1.2128092 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[603].y - value: -1.214242 + propertyPath: m_Positions.Array.data[167].y + value: -1.2144699 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[604].y - value: -1.2162268 + propertyPath: m_Positions.Array.data[168].y + value: -1.2161456 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[605].y - value: -1.2134627 + propertyPath: m_Positions.Array.data[169].y + value: -1.213507 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[606].y - value: -1.2131826 + propertyPath: m_Positions.Array.data[170].y + value: -1.2130796 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[607].y - value: -1.2178016 + propertyPath: m_Positions.Array.data[171].y + value: -1.2181135 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[608].y - value: -1.2199986 + propertyPath: m_Positions.Array.data[172].y + value: -1.219621 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[609].y - value: -1.2196075 + propertyPath: m_Positions.Array.data[173].y + value: -1.2193835 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[610].y - value: -1.22377 + propertyPath: m_Positions.Array.data[174].y + value: -1.2237952 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[611].y - value: -1.2298493 + propertyPath: m_Positions.Array.data[175].y + value: -1.2298247 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[612].y - value: -1.2305324 + propertyPath: m_Positions.Array.data[176].y + value: -1.2307612 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[613].y - value: -1.23107 + propertyPath: m_Positions.Array.data[177].y + value: -1.2313085 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[614].y - value: -1.2366687 + propertyPath: m_Positions.Array.data[178].y + value: -1.2368402 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[615].y - value: -1.2399616 + propertyPath: m_Positions.Array.data[179].y + value: -1.2397575 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[616].y - value: -1.2384918 + propertyPath: m_Positions.Array.data[180].y + value: -1.2384441 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[617].y - value: -1.2394294 + propertyPath: m_Positions.Array.data[181].y + value: -1.2393526 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[618].y - value: -1.2426242 + propertyPath: m_Positions.Array.data[182].y + value: -1.2424132 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[619].y - value: -1.2408222 + propertyPath: m_Positions.Array.data[183].y + value: -1.2404929 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[620].y - value: -1.2365863 + propertyPath: m_Positions.Array.data[184].y + value: -1.236388 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[621].y - value: -1.2372198 + propertyPath: m_Positions.Array.data[185].y + value: -1.237377 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[622].y + propertyPath: m_Positions.Array.data[186].y value: -1.2371494 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[623].y - value: -1.2313972 + propertyPath: m_Positions.Array.data[187].y + value: -1.2314487 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[624].y - value: -1.2272553 + propertyPath: m_Positions.Array.data[188].y + value: -1.2269676 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[625].y - value: -1.2271613 + propertyPath: m_Positions.Array.data[189].y + value: -1.227622 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[626].y - value: -1.223999 + propertyPath: m_Positions.Array.data[190].y + value: -1.2238709 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[627].y - value: -1.2181867 + propertyPath: m_Positions.Array.data[191].y + value: -1.2181323 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[628].y + propertyPath: m_Positions.Array.data[192].y value: -1.217101 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[629].y - value: -1.2182127 + propertyPath: m_Positions.Array.data[193].y + value: -1.2180637 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[630].y - value: -1.2143697 + propertyPath: m_Positions.Array.data[194].y + value: -1.2140093 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[631].y - value: -1.2115421 + propertyPath: m_Positions.Array.data[195].y + value: -1.2118404 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[632].y - value: -1.2146215 + propertyPath: m_Positions.Array.data[196].y + value: -1.2148154 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[633].y - value: -1.2164851 + propertyPath: m_Positions.Array.data[197].y + value: -1.2163905 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[634].y - value: -1.2149515 + propertyPath: m_Positions.Array.data[198].y + value: -1.2150022 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[635].y - value: -1.217223 + propertyPath: m_Positions.Array.data[199].y + value: -1.2171075 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[636].y - value: -1.2227516 + propertyPath: m_Positions.Array.data[200].y + value: -1.2230191 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[637].y - value: -1.224259 + propertyPath: m_Positions.Array.data[201].y + value: -1.2238595 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[638].y - value: -1.2243183 + propertyPath: m_Positions.Array.data[202].y + value: -1.2240876 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[639].y - value: -1.230047 + propertyPath: m_Positions.Array.data[203].y + value: -1.230072 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[640].y - value: -1.2352039 + propertyPath: m_Positions.Array.data[204].y + value: -1.2352601 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[641].y - value: -1.2348512 + propertyPath: m_Positions.Array.data[205].y + value: -1.2350681 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[642].y - value: -1.2361037 + propertyPath: m_Positions.Array.data[206].y + value: -1.2363803 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[643].y - value: -1.2407846 + propertyPath: m_Positions.Array.data[207].y + value: -1.2409885 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[644].y - value: -1.2415254 + propertyPath: m_Positions.Array.data[208].y + value: -1.241391 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[645].y - value: -1.2388786 + propertyPath: m_Positions.Array.data[209].y + value: -1.2388376 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[646].y - value: -1.2399396 + propertyPath: m_Positions.Array.data[210].y + value: -1.2398492 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[647].y - value: -1.241865 + propertyPath: m_Positions.Array.data[211].y + value: -1.2416213 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[648].y - value: -1.237432 + propertyPath: m_Positions.Array.data[212].y + value: -1.2371873 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[649].y - value: -1.2330424 + propertyPath: m_Positions.Array.data[213].y + value: -1.233369 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[650].y - value: -1.2333585 + propertyPath: m_Positions.Array.data[214].y + value: -1.2335275 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[651].y + propertyPath: m_Positions.Array.data[215].y value: -1.2312733 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[652].y - value: -1.2251575 + propertyPath: m_Positions.Array.data[216].y + value: -1.2252316 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[653].y - value: -1.222399 + propertyPath: m_Positions.Array.data[217].y + value: -1.2221141 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[654].y - value: -1.2225552 + propertyPath: m_Positions.Array.data[218].y + value: -1.2229996 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[655].y - value: -1.2185217 + propertyPath: m_Positions.Array.data[219].y + value: -1.2183762 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[656].y - value: -1.2134943 + propertyPath: m_Positions.Array.data[220].y + value: -1.2134302 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[657].y + propertyPath: m_Positions.Array.data[221].y value: -1.2148131 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[658].y - value: -1.2161373 + propertyPath: m_Positions.Array.data[222].y + value: -1.2162547 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[659].y - value: -1.2130874 + propertyPath: m_Positions.Array.data[223].y + value: -1.2126594 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[660].y - value: -1.2129462 + propertyPath: m_Positions.Array.data[224].y + value: -1.2131971 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[661].y - value: -1.2173105 + propertyPath: m_Positions.Array.data[225].y + value: -1.2174401 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[662].y - value: -1.2188814 + propertyPath: m_Positions.Array.data[226].y + value: -1.2187754 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[663].y - value: -1.218326 + propertyPath: m_Positions.Array.data[227].y + value: -1.2183813 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[664].y - value: -1.2227623 + propertyPath: m_Positions.Array.data[228].y + value: -1.2226603 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[665].y - value: -1.2288234 + propertyPath: m_Positions.Array.data[229].y + value: -1.2284559 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[666].y - value: -1.2291244 + propertyPath: m_Positions.Array.data[230].y + value: -1.228722 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[667].y - value: -1.2301301 + propertyPath: m_Positions.Array.data[231].y + value: -1.2302336 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[668].y - value: -1.2358762 + propertyPath: m_Positions.Array.data[232].y + value: -1.2359039 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[669].y - value: -1.2389374 + propertyPath: m_Positions.Array.data[233].y + value: -1.2390417 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[670].y - value: -1.237761 + propertyPath: m_Positions.Array.data[234].y + value: -1.2379571 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[671].y - value: -1.2393489 + propertyPath: m_Positions.Array.data[235].y + value: -1.2396799 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[672].y - value: -1.2428279 + propertyPath: m_Positions.Array.data[236].y + value: -1.2430713 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[673].y - value: -1.2408928 + propertyPath: m_Positions.Array.data[237].y + value: -1.2407787 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[674].y - value: -1.2369626 + propertyPath: m_Positions.Array.data[238].y + value: -1.2369281 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[675].y - value: -1.2382139 + propertyPath: m_Positions.Array.data[239].y + value: -1.2381114 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[676].y - value: -1.2379583 + propertyPath: m_Positions.Array.data[240].y + value: -1.2381002 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[677].y - value: -1.2323223 + propertyPath: m_Positions.Array.data[241].y + value: -1.2321112 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[678].y - value: -1.2287259 + propertyPath: m_Positions.Array.data[242].y + value: -1.2290123 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[679].y - value: -1.2285911 + propertyPath: m_Positions.Array.data[243].y + value: -1.228764 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[680].y + propertyPath: m_Positions.Array.data[244].y value: -1.2249992 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[681].y - value: -1.2190747 + propertyPath: m_Positions.Array.data[245].y + value: -1.2191544 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[682].y - value: -1.2182525 + propertyPath: m_Positions.Array.data[246].y + value: -1.2187908 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[683].y - value: -1.2190928 + propertyPath: m_Positions.Array.data[247].y + value: -1.2189212 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[684].y - value: -1.2146151 + propertyPath: m_Positions.Array.data[248].y + value: -1.2144418 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[685].y - value: -1.2118905 + propertyPath: m_Positions.Array.data[249].y + value: -1.2119786 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[686].y - value: -1.2147228 + propertyPath: m_Positions.Array.data[250].y + value: -1.2146825 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[687].y - value: -1.2158867 + propertyPath: m_Positions.Array.data[251].y + value: -1.2160245 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[688].y - value: -1.2140958 + propertyPath: m_Positions.Array.data[252].y + value: -1.2136029 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[689].y - value: -1.2165257 + propertyPath: m_Positions.Array.data[253].y + value: -1.2167357 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[690].y - value: -1.221906 + propertyPath: m_Positions.Array.data[254].y + value: -1.222016 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[691].y - value: -1.2228872 + propertyPath: m_Positions.Array.data[255].y + value: -1.2227739 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[692].y - value: -1.2228905 + propertyPath: m_Positions.Array.data[256].y + value: -1.2229481 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[693].y - value: -1.2290094 + propertyPath: m_Positions.Array.data[257].y + value: -1.2289102 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[694].y - value: -1.2338047 + propertyPath: m_Positions.Array.data[258].y + value: -1.2332935 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[695].y - value: -1.2335899 + propertyPath: m_Positions.Array.data[259].y + value: -1.233259 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[696].y - value: -1.2354678 + propertyPath: m_Positions.Array.data[260].y + value: -1.2355864 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[697].y - value: -1.2403828 + propertyPath: m_Positions.Array.data[261].y + value: -1.2404155 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[698].y - value: -1.2410084 + propertyPath: m_Positions.Array.data[262].y + value: -1.2411009 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[699].y - value: -1.2386032 + propertyPath: m_Positions.Array.data[263].y + value: -1.2388157 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[700].y - value: -1.240372 + propertyPath: m_Positions.Array.data[264].y + value: -1.2407641 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[701].y - value: -1.2424943 + propertyPath: m_Positions.Array.data[265].y + value: -1.2422836 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[702].y - value: -1.2380009 + propertyPath: m_Positions.Array.data[266].y + value: -1.2379056 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[703].y + propertyPath: m_Positions.Array.data[267].y value: -1.2342507 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[704].y - value: -1.2346665 + propertyPath: m_Positions.Array.data[268].y + value: -1.2345551 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[705].y - value: -1.2322949 + propertyPath: m_Positions.Array.data[269].y + value: -1.2324214 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[706].y - value: -1.2262088 + propertyPath: m_Positions.Array.data[270].y + value: -1.2260109 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[707].y - value: -1.2238517 + propertyPath: m_Positions.Array.data[271].y + value: -1.2241385 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[708].y - value: -1.2238504 + propertyPath: m_Positions.Array.data[272].y + value: -1.2240189 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[709].y + propertyPath: m_Positions.Array.data[273].y value: -1.2192777 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[710].y - value: -1.2141935 + propertyPath: m_Positions.Array.data[274].y + value: -1.2141339 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[711].y - value: -1.2155395 + propertyPath: m_Positions.Array.data[275].y + value: -1.2160242 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[712].y - value: -1.2161233 + propertyPath: m_Positions.Array.data[276].y + value: -1.2158606 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[713].y - value: -1.2128258 + propertyPath: m_Positions.Array.data[277].y + value: -1.2126191 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[714].y - value: -1.2127832 + propertyPath: m_Positions.Array.data[278].y + value: -1.2128577 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[715].y - value: -1.2168847 + propertyPath: m_Positions.Array.data[279].y + value: -1.216851 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[716].y - value: -1.217792 + propertyPath: m_Positions.Array.data[280].y + value: -1.2179996 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[717].y - value: -1.2171035 + propertyPath: m_Positions.Array.data[281].y + value: -1.2165594 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[718].y - value: -1.2217897 + propertyPath: m_Positions.Array.data[282].y + value: -1.2219723 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[719].y - value: -1.2275528 + propertyPath: m_Positions.Array.data[283].y + value: -1.227323 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[720].y - value: -1.2276417 + propertyPath: m_Positions.Array.data[284].y + value: -1.2275841 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[721].y - value: -1.2291476 + propertyPath: m_Positions.Array.data[285].y + value: -1.2291222 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[722].y - value: -1.2350181 + propertyPath: m_Positions.Array.data[286].y + value: -1.2349105 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[723].y - value: -1.237879 + propertyPath: m_Positions.Array.data[287].y + value: -1.2373992 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[724].y - value: -1.2368796 + propertyPath: m_Positions.Array.data[288].y + value: -1.236577 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[725].y - value: -1.2391583 + propertyPath: m_Positions.Array.data[289].y + value: -1.2392998 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[726].y - value: -1.2429175 + propertyPath: m_Positions.Array.data[290].y + value: -1.2429566 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[727].y - value: -1.2408878 + propertyPath: m_Positions.Array.data[291].y + value: -1.2409667 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[728].y - value: -1.2375054 + propertyPath: m_Positions.Array.data[292].y + value: -1.2373778 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[729].y - value: -1.2391678 + propertyPath: m_Positions.Array.data[293].y + value: -1.2395674 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[730].y - value: -1.2386953 + propertyPath: m_Positions.Array.data[294].y + value: -1.2385185 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[731].y - value: -1.2332237 + propertyPath: m_Positions.Array.data[295].y + value: -1.2331423 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[732].y + propertyPath: m_Positions.Array.data[296].y value: -1.2301139 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[733].y - value: -1.2300798 + propertyPath: m_Positions.Array.data[297].y + value: -1.2299068 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[734].y - value: -1.2260268 + propertyPath: m_Positions.Array.data[298].y + value: -1.2261513 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[735].y - value: -1.2200147 + propertyPath: m_Positions.Array.data[299].y + value: -1.2198077 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[736].y - value: -1.2194253 + propertyPath: m_Positions.Array.data[300].y + value: -1.2196989 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[737].y - value: -1.2197334 + propertyPath: m_Positions.Array.data[301].y + value: -1.2196729 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[738].y + propertyPath: m_Positions.Array.data[302].y value: -1.2149655 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[739].y - value: -1.2123512 + propertyPath: m_Positions.Array.data[303].y + value: -1.2122147 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[740].y - value: -1.2148992 + propertyPath: m_Positions.Array.data[304].y + value: -1.215318 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[741].y - value: -1.2153535 + propertyPath: m_Positions.Array.data[305].y + value: -1.2150432 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[742].y - value: -1.2133393 + propertyPath: m_Positions.Array.data[306].y + value: -1.2130994 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[743].y - value: -1.2159117 + propertyPath: m_Positions.Array.data[307].y + value: -1.2159741 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[744].y - value: -1.221097 + propertyPath: m_Positions.Array.data[308].y + value: -1.2210686 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[745].y - value: -1.2214991 + propertyPath: m_Positions.Array.data[309].y + value: -1.2217233 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[746].y - value: -1.2218807 + propertyPath: m_Positions.Array.data[310].y + value: -1.2221069 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[747].y - value: -1.22796 + propertyPath: m_Positions.Array.data[311].y + value: -1.2281331 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[748].y - value: -1.2324241 + propertyPath: m_Positions.Array.data[312].y + value: -1.2321953 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[749].y - value: -1.2323216 + propertyPath: m_Positions.Array.data[313].y + value: -1.2322658 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[750].y - value: -1.234779 + propertyPath: m_Positions.Array.data[314].y + value: -1.2347218 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[751].y - value: -1.2398831 + propertyPath: m_Positions.Array.data[315].y + value: -1.2397573 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[752].y - value: -1.2403828 + propertyPath: m_Positions.Array.data[316].y + value: -1.2399529 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[753].y - value: -1.238255 + propertyPath: m_Positions.Array.data[317].y + value: -1.2379904 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[754].y - value: -1.2407335 + propertyPath: m_Positions.Array.data[318].y + value: -1.2408599 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[755].y - value: -1.2427124 + propertyPath: m_Positions.Array.data[319].y + value: -1.2426759 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[756].y - value: -1.2384763 + propertyPath: m_Positions.Array.data[320].y + value: -1.2385423 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[757].y - value: -1.2353284 + propertyPath: m_Positions.Array.data[321].y + value: -1.235066 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[758].y - value: -1.2359749 + propertyPath: m_Positions.Array.data[322].y + value: -1.2364137 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[759].y - value: -1.2332866 + propertyPath: m_Positions.Array.data[323].y + value: -1.2331319 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[760].y - value: -1.2272562 + propertyPath: m_Positions.Array.data[324].y + value: -1.2271817 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[761].y + propertyPath: m_Positions.Array.data[325].y value: -1.2252696 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[762].y - value: -1.2252495 + propertyPath: m_Positions.Array.data[326].y + value: -1.2250793 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[763].y - value: -1.2200763 + propertyPath: m_Positions.Array.data[327].y + value: -1.219804 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[764].y - value: -1.2152096 + propertyPath: m_Positions.Array.data[328].y + value: -1.2156317 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[765].y - value: -1.2163216 + propertyPath: m_Positions.Array.data[329].y + value: -1.2165704 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[766].y - value: -1.2162598 + propertyPath: m_Positions.Array.data[330].y + value: -1.2161876 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[767].y - value: -1.2126384 + propertyPath: m_Positions.Array.data[331].y + value: -1.2126782 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[768].y - value: -1.2127311 + propertyPath: m_Positions.Array.data[332].y + value: -1.212615 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[769].y - value: -1.2165606 + propertyPath: m_Positions.Array.data[333].y + value: -1.2169123 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[770].y - value: -1.2168428 + propertyPath: m_Positions.Array.data[334].y + value: -1.2164886 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[771].y - value: -1.2158952 + propertyPath: m_Positions.Array.data[335].y + value: -1.2156813 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[772].y - value: -1.2208622 + propertyPath: m_Positions.Array.data[336].y + value: -1.2209156 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[773].y - value: -1.2261508 + propertyPath: m_Positions.Array.data[337].y + value: -1.2262079 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[774].y - value: -1.22621 + propertyPath: m_Positions.Array.data[338].y + value: -1.2264407 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[775].y - value: -1.2281576 + propertyPath: m_Positions.Array.data[339].y + value: -1.2283828 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[776].y - value: -1.2341034 + propertyPath: m_Positions.Array.data[340].y + value: -1.2342867 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[777].y - value: -1.2367427 + propertyPath: m_Positions.Array.data[341].y + value: -1.2365257 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[778].y - value: -1.2359521 + propertyPath: m_Positions.Array.data[342].y + value: -1.2359006 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[779].y - value: -1.2388947 + propertyPath: m_Positions.Array.data[343].y + value: -1.2388266 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[780].y - value: -1.2429316 + propertyPath: m_Positions.Array.data[344].y + value: -1.2427434 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[781].y - value: -1.2407691 + propertyPath: m_Positions.Array.data[345].y + value: -1.2403992 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[782].y - value: -1.2380487 + propertyPath: m_Positions.Array.data[346].y + value: -1.2383193 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[783].y - value: -1.2399739 + propertyPath: m_Positions.Array.data[347].y + value: -1.2401199 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[784].y + propertyPath: m_Positions.Array.data[348].y value: -1.2393218 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[785].y - value: -1.2340659 + propertyPath: m_Positions.Array.data[349].y + value: -1.2341217 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[786].y - value: -1.2314669 + propertyPath: m_Positions.Array.data[350].y + value: -1.231185 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[787].y - value: -1.2315015 + propertyPath: m_Positions.Array.data[351].y + value: -1.2319608 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[788].y - value: -1.2270468 + propertyPath: m_Positions.Array.data[352].y + value: -1.2269231 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[789].y - value: -1.2209971 + propertyPath: m_Positions.Array.data[353].y + value: -1.2209209 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} - propertyPath: m_Positions.Array.data[790].y + propertyPath: m_Positions.Array.data[354].y value: -1.2206637 objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[355].y + value: -1.2204989 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[356].y + value: -1.2150646 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[357].y + value: -1.2132984 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[358].y + value: -1.2154064 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[359].y + value: -1.2148923 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[360].y + value: -1.2126867 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[361].y + value: -1.2152913 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[362].y + value: -1.2202436 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[363].y + value: -1.2198306 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[364].y + value: -1.220975 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[365].y + value: -1.2269589 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[366].y + value: -1.2310736 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[367].y + value: -1.2312273 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[368].y + value: -1.2342355 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[369].y + value: -1.2395029 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[370].y + value: -1.2394558 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[371].y + value: -1.2377487 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[372].y + value: -1.2062695 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[373].y + value: -1.1958282 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[374].y + value: -1.192585 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[375].y + value: -1.193956 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[376].y + value: -1.1953272 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[377].y + value: -1.1802452 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[378].y + value: -1.1630538 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[379].y + value: -1.1458623 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[380].y + value: -1.1421973 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[381].y + value: -1.1435684 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[382].y + value: -1.1449394 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[383].y + value: -1.1370293 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[384].y + value: -1.1198379 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[385].y + value: -1.1085792 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[386].y + value: -1.0918095 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[387].y + value: -1.0931807 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[388].y + value: -1.0945518 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[389].y + value: -1.0938135 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[390].y + value: -1.0766221 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[391].y + value: -1.0653633 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[392].y + value: -1.0481719 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[393].y + value: -1.0427929 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[394].y + value: -1.0441641 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[395].y + value: -1.0455351 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[396].y + value: -1.0334063 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[397].y + value: -1.0221475 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[398].y + value: -1.0049561 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[399].y + value: -0.99240524 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[400].y + value: -0.9937763 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[401].y + value: -0.99514747 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[402].y + value: -0.9901905 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[403].y + value: -0.97893167 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[404].y + value: -0.96174026 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[405].y + value: -0.94454885 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[406].y + value: -0.94338864 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[407].y + value: -0.9475547 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[408].y + value: -0.951457 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[409].y + value: -0.9383788 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[410].y + value: -0.9406993 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[411].y + value: -0.95377743 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[412].y + value: -0.95314443 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[413].y + value: -0.94006634 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[414].y + value: -0.94692194 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[415].y + value: -0.96000004 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[416].y + value: -0.9469218 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[417].y + value: -0.93384373 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[418].y + value: -0.9452344 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[419].y + value: -0.9583126 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[420].y + value: -0.94069916 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[421].y + value: -0.938379 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[422].y + value: -0.9514571 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[423].y + value: -0.9554648 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[424].y + value: -0.9423866 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[425].y + value: -0.9366915 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[426].y + value: -0.95767975 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[427].y + value: -0.9492421 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[428].y + value: -0.936164 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[429].y + value: -0.9429141 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[430].y + value: -0.9559923 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[431].y + value: -0.95092964 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[432].y + value: -0.93605864 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[433].y + value: -0.9491368 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[434].y + value: -0.95778507 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[435].y + value: -0.9447069 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[436].y + value: -0.9343712 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[437].y + value: -0.95535946 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[438].y + value: -0.9515624 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[439].y + value: -0.9384843 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[440].y + value: -0.94059384 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[441].y + value: -0.95567584 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[442].y + value: -0.9718126 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[443].y + value: -0.98312396 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[444].y + value: -0.9954638 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[445].y + value: -1.0078037 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[446].y + value: -1.0201435 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[447].y + value: -1.0324833 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[448].y + value: -1.0470382 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[449].y + value: -1.0685802 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[450].y + value: -1.0847169 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[451].y + value: -1.1008536 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[452].y + value: -1.1134042 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[453].y + value: -1.1257441 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[454].y + value: -1.1380839 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[455].y + value: -1.1438057 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[456].y + value: -1.1599425 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[457].y + value: -1.1760792 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[458].y + value: -1.1922159 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[459].y + value: -1.2083527 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[460].y + value: -1.2244893 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[461].y + value: -1.2359061 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[462].y + value: -1.248246 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[463].y + value: -1.2605858 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[464].y + value: -1.2729256 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[465].y + value: -1.2852654 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[466].y + value: -1.3051202 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[467].y + value: -1.321257 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[468].y + value: -1.3373936 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[469].y + value: -1.3535304 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[470].y + value: -1.3661864 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[471].y + value: -1.3785262 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[472].y + value: -1.3830878 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[473].y + value: -1.3964826 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[474].y + value: -1.4126192 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[475].y + value: -1.428756 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[476].y + value: -1.4395664 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[477].y + value: -1.4330273 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[478].y + value: -1.4424669 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[479].y + value: -1.4429941 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[480].y + value: -1.436455 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[481].y + value: -1.4350841 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[482].y + value: -1.4416232 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[483].y + value: -1.4438379 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[484].y + value: -1.4333436 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[485].y + value: -1.4381955 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[486].y + value: -1.4447345 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[487].y + value: -1.4407265 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[488].y + value: -1.4341874 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[489].y + value: -1.4373517 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[490].y + value: -1.4441543 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[491].y + value: -1.4376152 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[492].y + value: -1.433924 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[493].y + value: -1.4404631 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[494].y + value: -1.444998 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[495].y + value: -1.4345038 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[496].y + value: -1.4370353 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[497].y + value: -1.4435743 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[498].y + value: -1.4418867 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[499].y + value: -1.4353476 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[500].y + value: -1.4361916 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[501].y + value: -1.4453144 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[502].y + value: -1.4387753 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[503].y + value: -1.4327638 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[504].y + value: -1.4393029 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[505].y + value: -1.4458419 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[506].y + value: -1.4396191 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[507].y + value: -1.4358752 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[508].y + value: -1.4424142 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[509].y + value: -1.4430468 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[510].y + value: -1.4365077 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[511].y + value: -1.2161151 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[512].y + value: -1.2151587 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[513].y + value: -1.2172078 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[514].y + value: -1.2135895 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[515].y + value: -1.2116855 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[516].y + value: -1.2153132 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[517].y + value: -1.2178935 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[518].y + value: -1.2161981 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[519].y + value: -1.2196368 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[520].y + value: -1.2254131 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[521].y + value: -1.22683 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[522].y + value: -1.2270927 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[523].y + value: -1.232568 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[524].y + value: -1.2370075 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[525].y + value: -1.2364585 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[526].y + value: -1.2377478 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[527].y + value: -1.2417692 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[528].y + value: -1.2419218 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[529].y + value: -1.23871 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[530].y + value: -1.239463 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[531].y + value: -1.2404883 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[532].y + value: -1.2353654 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[533].y + value: -1.2307557 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[534].y + value: -1.2306453 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[535].y + value: -1.2286593 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[536].y + value: -1.2222449 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[537].y + value: -1.220216 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[538].y + value: -1.2205034 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[539].y + value: -1.2167102 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[540].y + value: -1.2123059 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[541].y + value: -1.2139122 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[542].y + value: -1.2157173 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[543].y + value: -1.2134026 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[544].y + value: -1.2141767 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[545].y + value: -1.2189819 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[546].y + value: -1.2211746 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[547].y + value: -1.2202197 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[548].y + value: -1.2256204 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[549].y + value: -1.2314668 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[550].y + value: -1.2316481 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[551].y + value: -1.2325355 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[552].y + value: -1.2378352 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[553].y + value: -1.2400845 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[554].y + value: -1.23848 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[555].y + value: -1.2399675 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[556].y + value: -1.2427013 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[557].y + value: -1.240151 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[558].y + value: -1.2356975 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[559].y + value: -1.2368245 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[560].y + value: -1.2355014 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[561].y + value: -1.2296672 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[562].y + value: -1.2260221 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[563].y + value: -1.2257708 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[564].y + value: -1.2225461 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[565].y + value: -1.2165424 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[566].y + value: -1.2166258 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[567].y + value: -1.2176676 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[568].y + value: -1.2137885 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[569].y + value: -1.2115818 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[570].y + value: -1.2149435 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[571].y + value: -1.2165251 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[572].y + value: -1.2154157 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[573].y + value: -1.2186494 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[574].y + value: -1.2243053 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[575].y + value: -1.2256933 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[576].y + value: -1.22588 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[577].y + value: -1.2318752 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[578].y + value: -1.2360506 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[579].y + value: -1.2356747 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[580].y + value: -1.2371492 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[581].y + value: -1.2414192 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[582].y + value: -1.2411821 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[583].y + value: -1.2383026 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[584].y + value: -1.2398893 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[585].y + value: -1.2411829 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[586].y + value: -1.2362598 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[587].y + value: -1.23177 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[588].y + value: -1.2326665 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[589].y + value: -1.2294384 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[590].y + value: -1.2233952 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[591].y + value: -1.2212484 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[592].y + value: -1.221392 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[593].y + value: -1.2174373 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[594].y + value: -1.2130964 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[595].y + value: -1.2148404 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[596].y + value: -1.2157065 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[597].y + value: -1.2131233 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[598].y + value: -1.2136134 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[599].y + value: -1.218691 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[600].y + value: -1.2193733 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[601].y + value: -1.2191657 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[602].y + value: -1.2244602 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[603].y + value: -1.2303264 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[604].y + value: -1.230559 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[605].y + value: -1.231953 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[606].y + value: -1.2374539 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[607].y + value: -1.2394656 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[608].y + value: -1.2381036 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[609].y + value: -1.2398236 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[610].y + value: -1.2428285 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[611].y + value: -1.2399932 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[612].y + value: -1.2366596 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[613].y + value: -1.2376462 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[614].y + value: -1.236518 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[615].y + value: -1.2307924 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[616].y + value: -1.2271634 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[617].y + value: -1.2278178 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[618].y + value: -1.2232139 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[619].y + value: -1.2174996 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[620].y + value: -1.2173685 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[621].y + value: -1.2182175 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[622].y + value: -1.214085 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[623].y + value: -1.2122535 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[624].y + value: -1.2152841 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[625].y + value: -1.216048 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[626].y + value: -1.2147084 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[627].y + value: -1.2177198 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[628].y + value: -1.2236079 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[629].y + value: -1.2236568 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[630].y + value: -1.2247051 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[631].y + value: -1.2307376 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[632].y + value: -1.2350433 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[633].y + value: -1.2348219 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[634].y + value: -1.2369632 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[635].y + value: -1.2415243 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[636].y + value: -1.2410094 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[637].y + value: -1.2384006 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[638].y + value: -1.240222 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[639].y + value: -1.2417946 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[640].y + value: -1.236601 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[641].y + value: -1.2336096 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[642].y + value: -1.2337407 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[643].y + value: -1.2306061 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[644].y + value: -1.2245618 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[645].y + value: -1.2223194 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[646].y + value: -1.2231832 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[647].y + value: -1.2177701 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[648].y + value: -1.2136681 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[649].y + value: -1.2151641 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[650].y + value: -1.215795 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[651].y + value: -1.2129413 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[652].y + value: -1.2137077 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[653].y + value: -1.2180008 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[654].y + value: -1.2185143 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[655].y + value: -1.2181538 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[656].y + value: -1.2233202 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[657].y + value: -1.2282606 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[658].y + value: -1.2285248 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[659].y + value: -1.2308866 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[660].y + value: -1.2365302 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[661].y + value: -1.2387657 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[662].y + value: -1.2376351 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[663].y + value: -1.2401754 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[664].y + value: -1.2434801 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[665].y + value: -1.2402987 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[666].y + value: -1.2371863 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[667].y + value: -1.238396 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[668].y + value: -1.2374806 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[669].y + value: -1.2314646 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[670].y + value: -1.2292123 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[671].y + value: -1.2289585 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[672].y + value: -1.2243363 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[673].y + value: -1.2185115 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[674].y + value: -1.2181836 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[675].y + value: -1.2183473 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[676].y + value: -1.2139163 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[677].y + value: -1.2123713 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[678].y + value: -1.2151308 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[679].y + value: -1.2156628 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[680].y + value: -1.2132881 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[681].y + value: -1.2173306 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[682].y + value: -1.2226257 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[683].y + value: -1.2225649 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[684].y + value: -1.2235324 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[685].y + value: -1.229579 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[686].y + value: -1.2330861 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[687].y + value: -1.2330275 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[688].y + value: -1.2361846 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[689].y + value: -1.2409693 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[690].y + value: -1.2407391 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[691].y + value: -1.2383991 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[692].y + value: -1.2411613 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[693].y + value: -1.2417624 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[694].y + value: -1.2373356 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[695].y + value: -1.234504 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[696].y + value: -1.234777 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[697].y + value: -1.2317584 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[698].y + value: -1.2253407 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[699].y + value: -1.2243376 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[700].y + value: -1.2242248 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[701].y + value: -1.2186583 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[702].y + value: -1.2143235 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[703].y + value: -1.2155817 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[704].y + value: -1.2153763 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[705].y + value: -1.21219 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[706].y + value: -1.2133487 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[707].y + value: -1.217394 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[708].y + value: -1.2177237 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[709].y + value: -1.2169825 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[710].y + value: -1.2226236 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[711].y + value: -1.2271253 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[712].y + value: -1.2273892 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[713].y + value: -1.2297821 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[714].y + value: -1.2355479 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[715].y + value: -1.2371413 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[716].y + value: -1.2362767 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[717].y + value: -1.2398146 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[718].y + value: -1.23 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[719].y + value: -1.2128086 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[720].y + value: -1.1956172 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[721].y + value: -1.1843584 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[722].y + value: -1.1768701 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[723].y + value: -1.1782413 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[724].y + value: -1.1796123 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[725].y + value: -1.1695929 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[726].y + value: -1.1524014 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[727].y + value: -1.1411426 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[728].y + value: -1.1264825 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[729].y + value: -1.1278535 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[730].y + value: -1.1292247 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[731].y + value: -1.126377 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[732].y + value: -1.1091856 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[733].y + value: -1.0979269 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[734].y + value: -1.0807354 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[735].y + value: -1.0774658 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[736].y + value: -1.0788369 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[737].y + value: -1.0802081 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[738].y + value: -1.0719024 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[739].y + value: -1.054711 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[740].y + value: -1.0375196 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[741].y + value: -1.0270782 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[742].y + value: -1.0284492 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[743].y + value: -1.0298203 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[744].y + value: -1.0265771 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[745].y + value: -1.0114951 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[746].y + value: -0.99430376 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[747].y + value: -0.9771123 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[748].y + value: -0.9780615 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[749].y + value: -0.9794326 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[750].y + value: -0.97618943 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[751].y + value: -0.96827936 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[752].y + value: -0.95108795 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[753].y + value: -0.94080466 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[754].y + value: -0.9382735 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[755].y + value: -0.95135164 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[756].y + value: -0.9476601 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[757].y + value: -0.934582 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[758].y + value: -0.94449615 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[759].y + value: -0.95757425 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[760].y + value: -0.9493476 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[761].y + value: -0.93764067 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[762].y + value: -0.9507189 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[763].y + value: -0.9562031 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[764].y + value: -0.94312495 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[765].y + value: -0.9359532 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[766].y + value: -0.94903135 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[767].y + value: -0.9499804 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[768].y + value: -0.9369023 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[769].y + value: -0.94217587 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[770].y + value: -0.95525396 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[771].y + value: -0.9516679 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[772].y + value: -0.9385898 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[773].y + value: -0.9483985 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[774].y + value: -0.9585234 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[775].y + value: -0.94544524 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[776].y + value: -0.93363285 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[777].y + value: -0.94671106 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[778].y + value: -0.95978916 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[779].y + value: -0.9392226 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[780].y + value: -0.9398556 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[781].y + value: -0.95293367 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[782].y + value: -0.9539882 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[783].y + value: -0.9409101 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[784].y + value: -0.93816805 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[785].y + value: -0.95915633 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[786].y + value: -0.9477655 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[787].y + value: -0.9346874 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[788].y + value: -0.96643364 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[789].y + value: -0.9825704 + objectReference: {fileID: 0} + - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} + propertyPath: m_Positions.Array.data[790].y + value: -0.99135053 + objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[791].y - value: -1.2204114 + value: -1.0036904 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[792].y - value: -1.2153841 + value: -1.0160302 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[793].y - value: -1.2129221 + value: -1.02837 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[794].y - value: -1.2151898 + value: -1.0416592 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[795].y - value: -1.2149781 + value: -1.057796 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[796].y - value: -1.21264 + value: -1.079338 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[797].y - value: -1.2154206 + value: -1.0954747 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[798].y - value: -1.22036 + value: -1.109291 objectReference: {fileID: 0} - target: {fileID: 834421866380903855, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Positions.Array.data[799].y - value: -1.2202176 + value: -1.1216308 objectReference: {fileID: 0} - target: {fileID: 5511377784529418688, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: isSystemOn @@ -15445,7 +12329,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7009335405372632175, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_LocalPosition.y - value: 0.0097824335 + value: 0.10836923 objectReference: {fileID: 0} - target: {fileID: 7747964294900162324, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} propertyPath: m_Name @@ -15456,59 +12340,6 @@ PrefabInstance: m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 999f00aa14c1cf74ab1264bd82ab28e2, type: 3} ---- !u!1 &1417389772 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1417389773} - - component: {fileID: 1417389774} - m_Layer: 0 - m_Name: AModule (4) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1417389773 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1417389772} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068} - m_LocalPosition: {x: 1.37, y: -4.81, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 755677974} - - {fileID: 2020855499} - - {fileID: 1889764510} - - {fileID: 59719929} - - {fileID: 853339656} - - {fileID: 1543140432} - - {fileID: 1757639584} - m_Father: {fileID: 549427946} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} ---- !u!114 &1417389774 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1417389772} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a589bca4a2e605d4caf6b56c5d86610f, type: 3} - m_Name: - m_EditorClassIdentifier: - expressionName: "\u6280\u672F" - subSystemIndex: 4 --- !u!1 &1425106432 GameObject: m_ObjectHideFlags: 0 @@ -15568,177 +12399,10 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 485fe5a69106f8146a3ef9ca070f306d, type: 3} m_Name: m_EditorClassIdentifier: + targetSpriteRenderer: {fileID: 0} data: moduleName: UF available: 1 ---- !u!1 &1432757445 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1432757446} - - component: {fileID: 1432757447} - m_Layer: 0 - m_Name: panel2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1432757446 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1432757445} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.040000916, y: 1.1800003, z: 0} - m_LocalScale: {x: 1.2718394, y: 3.0052488, z: 1.0354} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2029061333} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &1432757447 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1432757445} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 1 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &1435588978 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1435588979} - - component: {fileID: 1435588980} - m_Layer: 0 - m_Name: panel - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1435588979 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1435588978} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.040000916, y: 1.1800003, z: 0} - m_LocalScale: {x: 1.1426562, y: 2.9025002, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1543994082} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &1435588980 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1435588978} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 2 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0.3962264, g: 0.3962264, b: 0.3962264, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &1465975039 GameObject: m_ObjectHideFlags: 0 @@ -15924,16 +12588,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &1479235759 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 8872470739059541346, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} ---- !u!224 &1479235760 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} --- !u!1 &1484201077 GameObject: m_ObjectHideFlags: 0 @@ -15994,6 +12648,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 485fe5a69106f8146a3ef9ca070f306d, type: 3} m_Name: m_EditorClassIdentifier: + targetSpriteRenderer: {fileID: 0} data: moduleName: Color available: 1 @@ -16163,350 +12818,6 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1504585057} m_CullTransparentMesh: 1 ---- !u!1 &1511159943 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1511159944} - - component: {fileID: 1511159946} - - component: {fileID: 1511159945} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1511159944 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1511159943} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0.5600014, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1543994082} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1511159945 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1511159943} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1511159946 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1511159943} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &1534398475 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1534398476} - - component: {fileID: 1534398477} - - component: {fileID: 1534398478} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1534398476 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1534398475} - serializedVersion: 2 - 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: 1221726913} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &1534398477 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1534398475} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!114 &1534398478 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1534398475} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1 &1543140431 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1543140432} - - component: {fileID: 1543140434} - - component: {fileID: 1543140433} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1543140432 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1543140431} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0.5600014, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1417389773} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1543140433 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1543140431} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1543140434 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1543140431} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &1543994081 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1543994082} - - component: {fileID: 1543994083} - m_Layer: 0 - m_Name: AModule (2) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1543994082 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1543994081} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068} - m_LocalPosition: {x: -4.76, y: -3.08, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1435588979} - - {fileID: 399593680} - - {fileID: 1582226882} - - {fileID: 1374359192} - - {fileID: 567044575} - - {fileID: 1511159944} - - {fileID: 1052128153} - m_Father: {fileID: 549427946} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} ---- !u!114 &1543994083 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1543994081} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a589bca4a2e605d4caf6b56c5d86610f, type: 3} - m_Name: - m_EditorClassIdentifier: - expressionName: "\u63A8\u7406" - subSystemIndex: 2 --- !u!21 &1546369386 Material: serializedVersion: 8 @@ -16797,6 +13108,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 485fe5a69106f8146a3ef9ca070f306d, type: 3} m_Name: m_EditorClassIdentifier: + targetSpriteRenderer: {fileID: 0} data: moduleName: Memory available: 1 @@ -17127,200 +13439,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1 &1574421820 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1574421821} - - component: {fileID: 1574421823} - - component: {fileID: 1574421822} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1574421821 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1574421820} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 2.3500004, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1161241067} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1574421822 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1574421820} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1574421823 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1574421820} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &1582226881 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1582226882} - - component: {fileID: 1582226884} - - component: {fileID: 1582226883} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1582226882 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1582226881} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 2.3500004, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1543994082} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1582226883 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1582226881} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1582226884 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1582226881} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &1590396503 GameObject: m_ObjectHideFlags: 0 @@ -17407,103 +13525,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 1 ---- !u!1 &1593035748 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1593035749} - - component: {fileID: 1593035751} - - component: {fileID: 1593035750} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1593035749 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1593035748} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0.5600014, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2029061333} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1593035750 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1593035748} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1593035751 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1593035748} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &1593150567 GameObject: m_ObjectHideFlags: 0 @@ -17679,140 +13700,6 @@ LineRenderer: m_UseWorldSpace: 1 m_Loop: 0 m_ApplyActiveColorSpace: 1 ---- !u!1 &1595087722 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1595087723} - - component: {fileID: 1595087725} - - component: {fileID: 1595087724} - m_Layer: 5 - m_Name: Text (TMP) (2) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1595087723 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1595087722} - 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: 1479235760} - 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: -85.00018, y: -105.000206} - m_SizeDelta: {x: 200, y: 50} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1595087724 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1595087722} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: "\u903B\u8F91" - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4294967295 - m_fontColor: {r: 1, g: 1, b: 1, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 36 - m_fontSizeBase: 36 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 1 - m_VerticalAlignment: 256 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 1 - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0, z: -16.216331, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!222 &1595087725 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1595087722} - m_CullTransparentMesh: 1 --- !u!1 &1599295464 GameObject: m_ObjectHideFlags: 0 @@ -17960,140 +13847,6 @@ MonoBehaviour: imageToRotate: {fileID: 0} inPos: {x: -33, y: -2, z: 0} outPos: {x: -24, y: -2, z: 0} ---- !u!1 &1627874304 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1627874305} - - component: {fileID: 1627874307} - - component: {fileID: 1627874306} - m_Layer: 5 - m_Name: Text (TMP) (3) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1627874305 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1627874304} - 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: 1479235760} - 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: 12.006474, y: -305.00137} - m_SizeDelta: {x: 200, y: 50} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1627874306 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1627874304} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: "\u5171\u60C5" - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4294967295 - m_fontColor: {r: 1, g: 1, b: 1, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 36 - m_fontSizeBase: 36 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 1 - m_VerticalAlignment: 256 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 1 - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0, z: -16.216331, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!222 &1627874307 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1627874304} - m_CullTransparentMesh: 1 --- !u!1 &1631866949 GameObject: m_ObjectHideFlags: 0 @@ -18993,6 +14746,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 485fe5a69106f8146a3ef9ca070f306d, type: 3} m_Name: m_EditorClassIdentifier: + targetSpriteRenderer: {fileID: 0} data: moduleName: Logic available: 1 @@ -19152,334 +14906,6 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1726429791} m_CullTransparentMesh: 1 ---- !u!1 &1742463401 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1742463402} - - component: {fileID: 1742463404} - - component: {fileID: 1742463403} - m_Layer: 5 - m_Name: Text (TMP) (1) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1742463402 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1742463401} - 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: 1479235760} - 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: 278.00394, y: -105.000206} - m_SizeDelta: {x: 200, y: 50} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1742463403 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1742463401} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: "\u538B\u529B" - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4294967295 - m_fontColor: {r: 1, g: 1, b: 1, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 36 - m_fontSizeBase: 36 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 1 - m_VerticalAlignment: 256 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 1 - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0, z: -16.216331, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!222 &1742463404 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1742463401} - m_CullTransparentMesh: 1 ---- !u!1 &1757639583 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1757639584} - - component: {fileID: 1757639586} - - component: {fileID: 1757639585} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1757639584 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1757639583} - serializedVersion: 2 - 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: 1417389773} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1757639585 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1757639583} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1757639586 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1757639583} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &1766155539 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1766155540} - - component: {fileID: 1766155542} - - component: {fileID: 1766155541} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1766155540 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1766155539} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0.5600014, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1161241067} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1766155541 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1766155539} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1766155542 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1766155539} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &1766300703 GameObject: m_ObjectHideFlags: 0 @@ -19564,140 +14990,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e519c3520e8cfc546a9b52372bd21274, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!1 &1778428343 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1778428344} - - component: {fileID: 1778428346} - - component: {fileID: 1778428345} - m_Layer: 5 - m_Name: Text (TMP) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1778428344 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1778428343} - 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: 1479235760} - 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: 694.98914, y: -105.000206} - m_SizeDelta: {x: 200, y: 50} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1778428345 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1778428343} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: "\u5438\u5F15\u529B" - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4294967295 - m_fontColor: {r: 1, g: 1, b: 1, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 36 - m_fontSizeBase: 36 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 1 - m_VerticalAlignment: 256 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 1 - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0, z: -16.216331, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!222 &1778428346 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1778428343} - m_CullTransparentMesh: 1 --- !u!1 &1780282770 GameObject: m_ObjectHideFlags: 0 @@ -19813,17 +15105,6 @@ Transform: m_Children: [] m_Father: {fileID: 405151775} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1784130261 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 1759486596184725717, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &1815244736 GameObject: m_ObjectHideFlags: 0 @@ -20958,168 +16239,10 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 485fe5a69106f8146a3ef9ca070f306d, type: 3} m_Name: m_EditorClassIdentifier: + targetSpriteRenderer: {fileID: 0} data: moduleName: Eye available: 1 ---- !u!1001 &1864215053 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 577612223} - m_Modifications: - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.x - value: 3.52 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.y - value: 0.19000053 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7653142955462933678, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_Name - value: PlugCableGroup (3) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} ---- !u!4 &1864215054 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - m_PrefabInstance: {fileID: 1864215053} - m_PrefabAsset: {fileID: 0} ---- !u!1 &1867932495 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1867932496} - - component: {fileID: 1867932497} - - component: {fileID: 1867932498} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1867932496 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1867932495} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 1.1500015, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1221726913} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &1867932497 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1867932495} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!114 &1867932498 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1867932495} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &1878177811 GameObject: m_ObjectHideFlags: 0 @@ -21237,103 +16360,6 @@ Transform: m_Children: [] m_Father: {fileID: 1158491031} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1889764509 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1889764510} - - component: {fileID: 1889764512} - - component: {fileID: 1889764511} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1889764510 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1889764509} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 2.3500004, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1417389773} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1889764511 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1889764509} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1889764512 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1889764509} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &1902809260 GameObject: m_ObjectHideFlags: 0 @@ -21689,114 +16715,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!114 &1939639599 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 8782645862456462509, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1 &1947141237 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1947141238} - - component: {fileID: 1947141240} - - component: {fileID: 1947141239} - m_Layer: 0 - m_Name: socket - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1947141238 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1947141237} - serializedVersion: 2 - 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: 1161241067} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1947141239 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1947141237} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 400d314e97bc045419d11ac25d78f61d, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!212 &1947141240 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1947141237} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: -8905666527859310550, guid: ba9dbce935749324ebe260dd696a3590, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.525, y: 0.52} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &1955441287 GameObject: m_ObjectHideFlags: 0 @@ -21883,17 +16801,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 1 ---- !u!114 &1976520771 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 7349632316672250545, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_PrefabInstance: {fileID: 4196041924476867945} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &1985394076 GameObject: m_ObjectHideFlags: 3 @@ -22221,143 +17128,6 @@ Material: - _ShadowColor: {r: 0, g: 0, b: 0, a: 1} - _ShineColor: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] ---- !u!1 &2020855498 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2020855499} - - component: {fileID: 2020855500} - m_Layer: 0 - m_Name: panel2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &2020855499 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2020855498} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.040000916, y: 1.1800003, z: 0} - m_LocalScale: {x: 1.2718394, y: 3.0052488, z: 1.0354} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1417389773} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &2020855500 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2020855498} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 1 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &2029061332 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2029061333} - - component: {fileID: 2029061334} - m_Layer: 0 - m_Name: AModule (3) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &2029061333 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2029061332} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068} - m_LocalPosition: {x: -3.89, y: -4.81, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1004015541} - - {fileID: 1432757446} - - {fileID: 353001836} - - {fileID: 790470382} - - {fileID: 651755837} - - {fileID: 1593035749} - - {fileID: 940591027} - m_Father: {fileID: 549427946} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} ---- !u!114 &2029061334 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2029061332} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a589bca4a2e605d4caf6b56c5d86610f, type: 3} - m_Name: - m_EditorClassIdentifier: - expressionName: "\u5171\u60C5" - subSystemIndex: 3 --- !u!1 &2035067108 GameObject: m_ObjectHideFlags: 0 @@ -22563,68 +17333,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1001 &2043782260 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 577612223} - m_Modifications: - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.x - value: 7.52 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.y - value: 0.19000053 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7653142955462933678, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_Name - value: PlugCableGroup (2) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} ---- !u!4 &2043782261 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - m_PrefabInstance: {fileID: 2043782260} - m_PrefabAsset: {fileID: 0} --- !u!1 &2060057608 GameObject: m_ObjectHideFlags: 0 @@ -22875,68 +17583,6 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2069936211} m_CullTransparentMesh: 1 ---- !u!1001 &2073961672 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 577612223} - m_Modifications: - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.x - value: 6.52 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.y - value: 0.19000053 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7653142955462933678, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_Name - value: PlugCableGroup (5) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} ---- !u!4 &2073961673 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - m_PrefabInstance: {fileID: 2073961672} - m_PrefabAsset: {fileID: 0} --- !u!1 &2091013944 GameObject: m_ObjectHideFlags: 0 @@ -23327,9 +17973,9 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 7087903030884008429} - {fileID: 1393009640} - {fileID: 118320537} - - {fileID: 1131749961} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &2138889540 @@ -23344,16 +17990,15 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7245d320411db7c449fe8dec4ef86edf, type: 3} m_Name: m_EditorClassIdentifier: - expressView: {fileID: 1131749960} - totalPointsText: {fileID: 1939639599} - totalPoints: 10 - driverSlotText: {fileID: 940756018} - logOutput: {fileID: 1784130261} - matchButton: {fileID: 1395901511} - applyAndTestButton: {fileID: 606814938} - matchResultsPanel: {fileID: 774493235} - driverButtonPrefab: {fileID: 4310732234424748951, guid: f156ac1ece77fe345a95416797701dc1, type: 3} - currentUser: UserA + particleManager: {fileID: 7087903030884008430} + expressionView: {fileID: 1131749960} + defaultAnxietyPhrases: + - "\u6211\u597D\u6015" + - "\u600E\u4E48\u529E" + - "\u4E0D\u884C" + - "\u597D\u96BE" + - "\u505A\u4E0D\u5230" + defaultTargetSentence: "\u8FD9\u662F\u4E00\u4E2A\u6D4B\u8BD5\u793A\u4F8B" --- !u!1001 &451594433767178277 PrefabInstance: m_ObjectHideFlags: 0 @@ -23419,635 +18064,83 @@ PrefabInstance: m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 9f05345d8a673944ca52721d16d8fab1, type: 3} ---- !u!212 &1186621337674563674 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1744098590533158571} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 2 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0.3962264, g: 0.3962264, b: 0.3962264, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &1744098590533158571 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3225038397584595901} - - component: {fileID: 1186621337674563674} - m_Layer: 0 - m_Name: panel - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!1001 &2020307036959479555 +--- !u!1001 &7087903030884008428 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: serializedVersion: 3 - m_TransformParent: {fileID: 0} + m_TransformParent: {fileID: 2138889539} m_Modifications: - - target: {fileID: 79166284512045475, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_Name - value: ExpressManager - objectReference: {fileID: 0} - - target: {fileID: 79166284512045475, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 2736402171718450553, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: logOutput - value: - objectReference: {fileID: 1784130261} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: expressView - value: - objectReference: {fileID: 1479235759} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: matchButton - value: - objectReference: {fileID: 1395901511} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: driverSlotText - value: - objectReference: {fileID: 940756018} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: totalPointsText - value: - objectReference: {fileID: 1939639599} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: matchResultsPanel - value: - objectReference: {fileID: 774493235} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: applyAndTestButton - value: - objectReference: {fileID: 606814938} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: sliders.Array.data[0] - value: - objectReference: {fileID: 161892290} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: sliders.Array.data[1] - value: - objectReference: {fileID: 964747120} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: sliders.Array.data[2] - value: - objectReference: {fileID: 214302938} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: sliders.Array.data[3] - value: - objectReference: {fileID: 1976520771} - - target: {fileID: 2510824233476674207, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: sliders.Array.data[4] - value: - objectReference: {fileID: 1238628084} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_Pivot.x - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_Pivot.y - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_AnchorMax.x - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_AnchorMax.y - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_AnchorMin.x - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_AnchorMin.y - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_SizeDelta.x - value: 2658 - objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_SizeDelta.y - value: 2025 - objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_LocalPosition.x - value: 0 + value: -2.55 objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_LocalPosition.y - value: 0 + value: -8.59 objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_LocalPosition.z - value: 0 + value: -8.612933 objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_LocalRotation.x - value: -0 + value: 0 objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_LocalRotation.y - value: -0 + value: 0 objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_LocalRotation.z - value: -0 + value: 0 objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_AnchoredPosition.x - value: 85.5 - objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} - propertyPath: m_AnchoredPosition.y - value: 429.75 - objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 3083384313782264551, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: 8624585168408867612, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_Name + value: LanguageParticleSystem + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: f70c72a84de39a34d8a274d273f1d065, type: 3} ---- !u!4 &3225038397584595901 + m_SourcePrefab: {fileID: 100100000, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} +--- !u!4 &7087903030884008429 stripped Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + m_PrefabInstance: {fileID: 7087903030884008428} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1744098590533158571} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.040000916, y: 1.1800003, z: 0} - m_LocalScale: {x: 1.1426562, y: 2.9025002, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1221726913} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1001 &4196041924476867945 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 727870748} - m_Modifications: - - target: {fileID: 261582323790094728, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 1076431832404180128, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_IsActive - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1560993311272813708, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_IsActive - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_Pivot.x - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_Pivot.y - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.x - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMin.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMin.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_SizeDelta.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_SizeDelta.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalScale.x - value: 0.008763908 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalScale.y - value: 0.008763908 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalScale.z - value: 0.008763908 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalPosition.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchoredPosition.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchoredPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 1888882004640149801, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2445199316937849508, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 3243924112892186772, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 3390224368825925642, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchoredPosition.x - value: -898 - objectReference: {fileID: 0} - - target: {fileID: 3390224368825925642, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchoredPosition.y - value: 503 - objectReference: {fileID: 0} - - target: {fileID: 4104636584418993360, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4330833423923071780, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4330833423923071780, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 4330833423923071780, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMin.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4330833423923071780, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMin.y - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 4330833423923071780, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_SizeDelta.x - value: 311.02 - objectReference: {fileID: 0} - - target: {fileID: 4330833423923071780, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_SizeDelta.y - value: 707.6 - objectReference: {fileID: 0} - - target: {fileID: 4330833423923071780, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchoredPosition.x - value: -846 - objectReference: {fileID: 0} - - target: {fileID: 4330833423923071780, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchoredPosition.y - value: 82 - objectReference: {fileID: 0} - - target: {fileID: 4747198317435169978, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_IsActive - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4885190601829526006, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_IsActive - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 6374105541626851111, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchoredPosition.x - value: 775 - objectReference: {fileID: 0} - - target: {fileID: 6374105541626851111, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchoredPosition.y - value: 488 - objectReference: {fileID: 0} - - target: {fileID: 6381741402625234432, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 6436634964758889481, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_IsActive - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 6989783374134298152, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7203639276220973110, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_IsActive - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7963066298443972632, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchoredPosition.x - value: -851 - objectReference: {fileID: 0} - - target: {fileID: 7963066298443972632, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchoredPosition.y - value: -377.00018 - objectReference: {fileID: 0} - - target: {fileID: 7963872786159882491, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7966919765743327268, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8400352004660890968, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_AnchorMax.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8872470739059541346, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_Name - value: ExpressView - objectReference: {fileID: 0} - - target: {fileID: 8872470739059541346, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - propertyPath: m_IsActive - value: 1 - objectReference: {fileID: 0} - m_RemovedComponents: - - {fileID: 2611592870857724777, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - m_RemovedGameObjects: [] - m_AddedGameObjects: - - targetCorrespondingSourceObject: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - insertIndex: 0 - addedObject: {fileID: 1778428344} - - targetCorrespondingSourceObject: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - insertIndex: 1 - addedObject: {fileID: 1742463402} - - targetCorrespondingSourceObject: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - insertIndex: 2 - addedObject: {fileID: 1595087723} - - targetCorrespondingSourceObject: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - insertIndex: 3 - addedObject: {fileID: 1627874305} - - targetCorrespondingSourceObject: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - insertIndex: 4 - addedObject: {fileID: 75578088} - - targetCorrespondingSourceObject: {fileID: 1821120933835971019, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - insertIndex: 9 - addedObject: {fileID: 606814937} - m_AddedComponents: - - targetCorrespondingSourceObject: {fileID: 6951262078684050181, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} - insertIndex: -1 - addedObject: {fileID: 774493236} - m_SourcePrefab: {fileID: 100100000, guid: 39a9cd95509412a4c981c0df7a8d6652, type: 3} ---- !u!212 &4707017239048776338 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} +--- !u!114 &7087903030884008430 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5814606722141011736, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + m_PrefabInstance: {fileID: 7087903030884008428} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5265093350908013667} + m_GameObject: {fileID: 0} m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 1 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &5265093350908013667 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 9071575356894343541} - - component: {fileID: 4707017239048776338} - m_Layer: 0 - m_Name: panel2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!1001 &6160900171297423149 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 577612223} - m_Modifications: - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.x - value: 1.5200005 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.y - value: 0.19000053 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7035731615624774062, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7653142955462933678, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} - propertyPath: m_Name - value: PlugCableGroup (1) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 8e4b17cc8fd30b1498ed9d3d8fa5a308, type: 3} ---- !u!4 &9071575356894343541 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5265093350908013667} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.040000916, y: 1.1800003, z: 0} - m_LocalScale: {x: 1.2718394, y: 3.0052488, z: 1.0354} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1221726913} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 79af040068968934c9a7d092267034f6, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1001 &9210352354887959608 PrefabInstance: m_ObjectHideFlags: 0 @@ -24121,6 +18214,5 @@ SceneRoots: - {fileID: 1416308318} - {fileID: 462594834} - {fileID: 1211738976} - - {fileID: 2020307036959479555} - {fileID: 2138889539} - {fileID: 1774281545} diff --git a/Assets/Scenes/Persistence.unity b/Assets/Scenes/Persistence.unity index ae9767e99..b3ce1c48d 100644 --- a/Assets/Scenes/Persistence.unity +++ b/Assets/Scenes/Persistence.unity @@ -11809,9 +11809,9 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: feee73ba51d6e1a4da81ed7f94ab4694, type: 3} m_Name: m_EditorClassIdentifier: - runMode: 0 + runMode: 1 firstTalkSo: {fileID: 11400000, guid: 2f763a2c04ecafb4981379b7363f9791, type: 2} - testTalkSo: {fileID: 11400000, guid: 68a9c1b8c5230454bb9498fd2ab5714b, type: 2} + testTalkSo: {fileID: 11400000, guid: 8ce86974047bb404c9096e70a606355a, type: 2} saveFileName: "20250901_204445_PeipeiDay1_\u8BB0\u5FC6\u68C0\u67E5" --- !u!1 &719273460 GameObject: diff --git a/Assets/Scenes/languageTest.unity b/Assets/Scenes/languageTest.unity index cb491cb58..8f8519608 100644 --- a/Assets/Scenes/languageTest.unity +++ b/Assets/Scenes/languageTest.unity @@ -123,377 +123,6 @@ NavMeshSettings: debug: m_Flags: 0 m_NavMeshData: {fileID: 0} ---- !u!1 &125585505 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 125585506} - - component: {fileID: 125585507} - m_Layer: 0 - m_Name: LanguageParticleSystem - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &125585506 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 125585505} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -2.8477545, y: -5.088608, z: -8.612933} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &125585507 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 125585505} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 79af040068968934c9a7d092267034f6, type: 3} - m_Name: - m_EditorClassIdentifier: - worldCanvas: {fileID: 1665911935} - canvasSize: 10 - chineseFontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - floatingParticlePrefab: {fileID: 0} - candidateParticlePrefab: {fileID: 0} - floatingCount: 100 - candidateCount: 50 - redParticleCount: 8 - connectionDistance: 2 - textMargin: 1 - targetSentence: "\u522B\u8FC7\u6765\u6211\u611F\u89C9\u5BB3\u6015" - waveformAmplitude: 0.3 - interactionRadius: 0.5 - mouseInteractionRadius: 1.5 - repulsionForce: 2 - attractionForce: 1.5 - enableAutoPropagation: 1 - autoPropagationInterval: 2 - autoPropagationCount: 1 - propagationDuration: 1 - propagationDelay: 0.08 - maxPropagationNodes: 8 - targetParticleColor: {r: 0.2, g: 0.78039217, b: 1, a: 1} - nonTargetParticleColor: {r: 1, g: 0.40870008, b: 0.38823533, a: 0.69803923} - propagationColor: {r: 0.6621573, g: 0.8664762, b: 0.9433962, a: 1} - floatingTextColor: {r: 1, g: 1, b: 1, a: 1} - targetCalmColor: {r: 0.78, g: 0.59, b: 0.59, a: 1} - targetParticleFontSize: 3.5 - nonTargetParticleFontSize: 2.5 - floatingTextFontSize: 2 - targetParticleBold: 1 - nonTargetParticleBold: 0 - targetConnectionColor: {r: 0.3882353, g: 0.78039217, b: 1, a: 0.6666667} - nonTargetConnectionColor: {r: 1, g: 0.41911593, b: 0.38823533, a: 0.7} - propagationLineColor: {r: 0.6627451, g: 0.8666667, b: 0.94509804, a: 1} - targetConnectionThickness: 0.04 - nonTargetConnectionThickness: 0.02 - propagationLineThickness: 0.03 - integrationProgressText: {fileID: 1294290436} - interferenceCountText: {fileID: 528708888} - focusSequenceButton: {fileID: 153766885} - focusZoomScale: 1.6 - focusMoveDuration: 1.2 - focusFadeDuration: 1 - probabilityDuration: 3.5 - predictionSequenceGap: 0.4 - spreadDistance: 0.35 - focusRingColor: {r: 1, g: 1, b: 1, a: 1} - focusRingThickness: 0.025 - focusRingAlpha: 0.752 - statusFadeOutDuration: 0.45 - shuffleDistance: 0.35 - shuffleFrequency: 3.5 - shuffleVerticalScale: 0.6 - entranceDelay: 0.45 - entranceCoreCount: 20 - entranceCoreRadius: 0.55 - entranceInitialScale: 0.25 - entranceCoreBurstDuration: 1.5 - entranceCoreStagger: 0.08 - entranceCascadeDuration: 0.8 - entranceCascadeStagger: 0.03 - entranceSearchRadius: 2 - enableDebugShortcuts: 1 - debugCompleteKey: 286 - debugResetKey: 290 - debugFullTestKey: 291 - autoRunDebugTestOnStart: 0 - enableSeparation: 1 - minParticleSpacing: 0.6 - separationForce: 2.5 - lineAlphaMultiplier: 0.65 ---- !u!1 &153766884 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 153766888} - - component: {fileID: 153766887} - - component: {fileID: 153766886} - - component: {fileID: 153766885} - m_Layer: 5 - m_Name: Button - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &153766885 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 153766884} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 153766886} - m_OnClick: - m_PersistentCalls: - m_Calls: [] ---- !u!114 &153766886 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 153766884} - 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: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - 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!222 &153766887 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 153766884} - m_CullTransparentMesh: 1 ---- !u!224 &153766888 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 153766884} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0.012000492, y: 0.012000492, z: 0.012000492} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1137525304} - m_Father: {fileID: 1665911936} - 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: 6.26, y: 2.12} - m_SizeDelta: {x: 160, y: 80} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &528708887 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 528708890} - - component: {fileID: 528708889} - - component: {fileID: 528708888} - m_Layer: 5 - m_Name: Text (TMP) (2) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &528708888 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 528708887} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: New Text - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4284643057 - m_fontColor: {r: 0.9433962, g: 0.4632709, b: 0.38625845, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 0.3 - m_fontSizeBase: 0.3 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 1 - m_VerticalAlignment: 512 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 1 - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0.41540456, z: -2.6862788, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!222 &528708889 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 528708887} - m_CullTransparentMesh: 1 ---- !u!224 &528708890 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 528708887} - 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: 1665911936} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 10.839999, y: -1.5600002} - m_SizeDelta: {x: 1, y: 1} - m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &786157861 GameObject: m_ObjectHideFlags: 0 @@ -631,378 +260,6 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1137525303 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1137525304} - - component: {fileID: 1137525306} - - component: {fileID: 1137525305} - m_Layer: 5 - m_Name: Text (TMP) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1137525304 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1137525303} - 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: 153766888} - 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 &1137525305 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1137525303} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: "\u8F93\u51FA" - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4281479730 - m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 24 - m_fontSizeBase: 24 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 2 - m_VerticalAlignment: 512 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 1 - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0, z: 0, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!222 &1137525306 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1137525303} - m_CullTransparentMesh: 1 ---- !u!1 &1294290433 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1294290434} - - component: {fileID: 1294290435} - - component: {fileID: 1294290436} - m_Layer: 5 - m_Name: Text (TMP) (1) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1294290434 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1294290433} - 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: 1665911936} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 10.83, y: -0.71} - m_SizeDelta: {x: 1, y: 1} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1294290435 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1294290433} - m_CullTransparentMesh: 1 ---- !u!114 &1294290436 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1294290433} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: New Text - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4294040693 - m_fontColor: {r: 0.45745817, g: 0.86362934, b: 0.9433962, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 0.3 - m_fontSizeBase: 0.3 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 1 - m_VerticalAlignment: 512 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 1 - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0.41540456, z: -2.6862788, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!1 &1665911932 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1665911936} - - component: {fileID: 1665911935} - - component: {fileID: 1665911934} - - component: {fileID: 1665911933} - m_Layer: 5 - m_Name: Canvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &1665911933 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1665911932} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!114 &1665911934 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1665911932} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 0 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 800, y: 600} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 1 ---- !u!223 &1665911935 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1665911932} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 2 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_VertexColorAlwaysGammaSpace: 0 - m_AdditionalShaderChannelsFlag: 25 - m_UpdateRectTransformForStandalone: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!224 &1665911936 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1665911932} - 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: - - {fileID: 1294290434} - - {fileID: 528708890} - - {fileID: 153766888} - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: -2.54, y: 0} - m_SizeDelta: {x: 10, y: 10} - m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1764870496 GameObject: m_ObjectHideFlags: 0 @@ -1071,11 +328,67 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &8527354674083275363 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_LocalPosition.x + value: -2.8477545 + objectReference: {fileID: 0} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_LocalPosition.y + value: -5.088608 + objectReference: {fileID: 0} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_LocalPosition.z + value: -8.612933 + objectReference: {fileID: 0} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5583140471695735899, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8624585168408867612, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} + propertyPath: m_Name + value: LanguageParticleSystem + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 27bf60bc51cd2f64d9012728a32b960d, type: 3} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 m_Roots: - - {fileID: 1665911936} - {fileID: 786157866} - {fileID: 1764870499} - - {fileID: 125585506} + - {fileID: 8527354674083275363} diff --git a/Assets/Scripts/FixSystemNew/FixStateMachine.cs b/Assets/Scripts/FixSystemNew/FixStateMachine.cs index de34f7015..e1a4c6f7a 100644 --- a/Assets/Scripts/FixSystemNew/FixStateMachine.cs +++ b/Assets/Scripts/FixSystemNew/FixStateMachine.cs @@ -425,8 +425,10 @@ namespace AibisDream.FixSystem public IEnumerator Enter() { - // 先切BodyModule + // 获取表达系统 var expressionManager = FixSystemCenter.SystemDic.Get(); + + // 先切 BodyModule(如果需要) if (!CameraKit.Instance.EqualToCameraState(CameraEnum.BodyModule)) { var bodyModule = FixSystemCenter.SystemDic.Get(); @@ -434,11 +436,14 @@ namespace AibisDream.FixSystem yield return CameraKit.Instance.SwitchCamera(CameraEnum.BodyModule); } - // 切换相机 + // 开启表达系统视图(无参数版本,使用默认配置) expressionManager.OpenView(); + + // 切换到表达相机 yield return CameraKit.Instance.SwitchCamera(CameraEnum.Expression); yield return UIManager.Instance.GetPanel().FadeInAsync(0.5f); - //expressionManager.OpenView(); + + // 切换到深度表达相机 yield return CameraKit.Instance.SwitchCamera(CameraEnum.ExpressionDeep); yield return UIManager.Instance.GetPanel().FadeOutAsync(0.5f); } @@ -447,8 +452,13 @@ namespace AibisDream.FixSystem { var expressionManager = FixSystemCenter.SystemDic.Get(); var bodyModuleSystem = FixSystemCenter.SystemDic.Get(); + + // 重置身体模块 bodyModuleSystem.ResetPlug(); + + // 关闭表达系统视图 expressionManager.CloseView(); + yield break; } } diff --git a/Assets/Scripts/MiniGame/HuoShan/DriverDatabase.cs b/Assets/Scripts/MiniGame/HuoShan/DriverDatabase.cs deleted file mode 100644 index b8d087b23..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/DriverDatabase.cs +++ /dev/null @@ -1,62 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -using TMPro; -using UnityEngine.UI; -using System.IO; - -namespace AibisDream -{ - public class DriverDatabase - { - public List Drivers = new List(); - - public void LoadFromCSV(string path) - { - // 使用 FileShare.ReadWrite 防止文件被其他进程占用 - using (var stream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) - using (var reader = new StreamReader(stream, System.Text.Encoding.UTF8)) // 全限定名避免编码引用问题 - { - string header = reader.ReadLine(); - while (!reader.EndOfStream) - { - string line = reader.ReadLine().Trim(); - if (string.IsNullOrEmpty(line)) continue; - - // 支持逗号或分号分隔 - char delimiter = line.Contains(';') ? ';' : ','; - string[] fields = line.Split(delimiter); - - // 期望 12 列 - if (fields.Length < 12) - { - Debug.LogWarning($"Skipping invalid CSV line (columns={fields.Length}): {line}"); - continue; - } - - DriverProfile d = new DriverProfile(); - int idx = 0; - d.Name = fields[idx++]; - int.TryParse(fields[idx++], out d.MinA); - int.TryParse(fields[idx++], out d.MaxA); - int.TryParse(fields[idx++], out d.MinP); - int.TryParse(fields[idx++], out d.MaxP); - int.TryParse(fields[idx++], out d.MinR); - int.TryParse(fields[idx++], out d.MaxR); - int.TryParse(fields[idx++], out d.MinE); - int.TryParse(fields[idx++], out d.MaxE); - int.TryParse(fields[idx++], out d.MinT); - int.TryParse(fields[idx++], out d.MaxT); - d.YarnFile = fields[idx++]; - - Drivers.Add(d); - } - } - } - - public List MatchDrivers(int A, int P, int R, int E, int T) - { - return Drivers.FindAll(d => d.Matches(A, P, R, E, T)); - } - } -} diff --git a/Assets/Scripts/MiniGame/HuoShan/DriverDatabase.cs.meta b/Assets/Scripts/MiniGame/HuoShan/DriverDatabase.cs.meta deleted file mode 100644 index 430cf124b..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/DriverDatabase.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 22da87096df02944ab2b2d750825aaca -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/DriverProfile.cs b/Assets/Scripts/MiniGame/HuoShan/DriverProfile.cs deleted file mode 100644 index 31c1cf8e9..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/DriverProfile.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -namespace AibisDream -{ - public class DriverProfile - { - public string Name; - public int MinA, MaxA; - public int MinP, MaxP; - public int MinR, MaxR; - public int MinE, MaxE; - public int MinT, MaxT; - public string YarnFile; - - public bool Matches(int A, int P, int R, int E, int T) - { - return A >= MinA && A <= MaxA && - P >= MinP && P <= MaxP && - R >= MinR && R <= MaxR && - E >= MinE && E <= MaxE && - T >= MinT && T <= MaxT; - } - } -} diff --git a/Assets/Scripts/MiniGame/HuoShan/DriverProfile.cs.meta b/Assets/Scripts/MiniGame/HuoShan/DriverProfile.cs.meta deleted file mode 100644 index 3256e3a97..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/DriverProfile.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0dcb6a63381e46a4686162a05f8897e3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/ExpressionCable.cs b/Assets/Scripts/MiniGame/HuoShan/ExpressionCable.cs deleted file mode 100644 index d9288cd98..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/ExpressionCable.cs +++ /dev/null @@ -1,115 +0,0 @@ -using UnityEngine; -using DG.Tweening; -using System; - -namespace AibisDream -{ - [RequireComponent(typeof(LineRenderer))] - public class ExpressionCable : MonoBehaviour - { - private Transform _start; - private Transform _end; - private LineRenderer _lineRenderer; - private Vector3[] _points; - private ExpressionCableSystem _cableSystem; - - [SerializeField] - private CableConfig config = CableConfig.GeneDefaultConfig(); - - public void Initialize(Transform start, Transform end) - { - _start = start; - _end = end; - _lineRenderer = GetComponent(); - _lineRenderer.positionCount = config.resolution; - InitPoints(); - } - - private void InitPoints() - { - _points = new Vector3[config.resolution]; - for (int i = 0; i < config.resolution; i++) - { - float t = i / (float)(config.resolution - 1); - _points[i] = Vector3.Lerp(_start.position, _end.position, t); - } - } - - private void FixedUpdate() - { - DrawLine(); - } - - void DrawLine() - { - var points = UpdateRope(); - for (int i = 0; i < config.resolution; i++) - { - _lineRenderer.SetPosition(i, points[i] + Vector3.forward * -.3f); - } - } - - Vector3[] UpdateRope() - { - float t = Mathf.InverseLerp(config.dstMin, config.dstMax, (_start.position - _end.position).magnitude); - float F = Mathf.Lerp(config.forceMin, config.forceMax, t); - _points[0] = _start.position; - _points[^1] = _end.position; - for (int ik = 0; ik < config.k; ik++) - { - for (int i = 1; i < _points.Length - 1; i++) - { - Vector3 offsetPrev = _points[i - 1] - _points[i]; - Vector3 offsetNext = _points[i + 1] - _points[i]; - Vector3 velocity = offsetPrev.normalized * (offsetPrev.magnitude * F) + - offsetNext.normalized * (offsetNext.magnitude * F); - _points[i] += velocity * Time.deltaTime / config.k; - } - - for (int i = 1; i < _points.Length - 1; i++) - { - _points[i] += Vector3.down * (9.8f * Time.deltaTime) / config.k; - } - } - - return _points; - } - - public void SetEndPos(Transform endPos) - { - _end = endPos; - } - - public void UpdateEndPosition(Vector3 position) - { - if (_end != null) - { - _end.position = position; - } - } - } - - [Serializable] - public struct CableConfig - { - public int resolution; - public float dstMin; - public float dstMax; - public float forceMin; - public float forceMax; - public int k; - - public static CableConfig GeneDefaultConfig() - { - return new CableConfig - { - resolution = 10, - dstMin = 0.1f, - dstMax = 1.0f, - forceMin = 0.1f, - forceMax = 150f, - k = 10 - }; - } - } -} \ No newline at end of file diff --git a/Assets/Scripts/MiniGame/HuoShan/ExpressionCableSystem.cs b/Assets/Scripts/MiniGame/HuoShan/ExpressionCableSystem.cs deleted file mode 100644 index 5b96e2bf0..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/ExpressionCableSystem.cs +++ /dev/null @@ -1,83 +0,0 @@ -using UnityEngine; -using AibisDream.FixSystem; -using System.Collections.Generic; - -namespace AibisDream -{ - public class ExpressionCableSystem : MonoBehaviour - { - [Header("电源子模块")] - public ExpressionPowerSource powerSource; - - private ExpressionManager _expressionManager; - private ExpressionSubSystem[] _expressionSubSystems; - private const float MAX_DISTANCE = 1f; // 最大检测距离 - - private void Awake() - { - // 自动查找所有子物体中的表达子模块 - _expressionSubSystems = GetComponentsInChildren(); - } - - private void Start() - { - _expressionManager = transform.parent.transform.parent.GetComponent(); - InitializeSystem(); - } - - private void InitializeSystem() - { - // 初始化表达子模块 - foreach (var subSystem in _expressionSubSystems) - { - subSystem.Initialize(this); - } - } - - // 当插头插入插槽时调用 - public void OnPlugInserted(int subSystemIndex, int socketIndex) - { - _expressionManager.AdjustValue(subSystemIndex, 1); - } - - // 当插头拔出插槽时调用 - public void OnPlugRemoved(int subSystemIndex, int socketIndex) - { - _expressionManager.AdjustValue(subSystemIndex, -1); - } - - public void Reset() - { - powerSource.Reset(); - foreach (var subSystem in _expressionSubSystems) - { - subSystem.Reset(); - } - } - - public bool TryFindClosestSocket(Vector3 sourcePos, out ISocket targetSocket) - { - targetSocket = null; - float minDistance = MAX_DISTANCE; - - // 遍历所有子模块 - foreach (var subSystem in _expressionSubSystems) - { - // 遍历子模块中的所有插槽 - foreach (var socket in subSystem.GetSockets()) - { - if (!socket.IsAvailable()) continue; - - float distance = Vector3.Distance(sourcePos, socket.GetSocketPos()); - if (distance < minDistance) - { - minDistance = distance; - targetSocket = socket; - } - } - } - - return targetSocket != null; - } - } -} \ No newline at end of file diff --git a/Assets/Scripts/MiniGame/HuoShan/ExpressionCableSystem.cs.meta b/Assets/Scripts/MiniGame/HuoShan/ExpressionCableSystem.cs.meta deleted file mode 100644 index 0a68fd442..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/ExpressionCableSystem.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6b20aec8808a25c4b9607bbe72858b7a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/MiniGame/HuoShan/ExpressionManager.cs b/Assets/Scripts/MiniGame/HuoShan/ExpressionManager.cs deleted file mode 100644 index f8a30d702..000000000 --- a/Assets/Scripts/MiniGame/HuoShan/ExpressionManager.cs +++ /dev/null @@ -1,149 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -using TMPro; -using UnityEngine.UI; -using System.IO; -using AibisDream.FixSystem; -using Cinemachine; -using AibisDream.Framework; -using Yarn.Unity; - -namespace AibisDream -{ - public class ExpressionManager : MonoBehaviour - { - public GameObject expressView; - public TMP_Text totalPointsText; - public int totalPoints = 10; - - public TMP_Text driverSlotText; - public TMP_Text logOutput; - public Button matchButton; - public Button applyAndTestButton; - - public GameObject matchResultsPanel; - public GameObject driverButtonPrefab; - public string currentUser = "UserA"; - private int[] valuesCurrent = new int[5]; - private DriverProfile currentDriver = null; - private DriverDatabase db = new DriverDatabase(); - private List currentResultButtons = new List(); - - void Start() - { - //CloseView(); - FixSystemCenter.SystemDic.Register(this); - - var virtualCam = transform.Find("Expression Camera").GetComponent(); - var virtualCam2 = transform.Find("Expression Deep Camera").GetComponent(); - CameraKit.Instance.RegisterCamera(CameraEnum.Expression, virtualCam); - CameraKit.Instance.RegisterCamera(CameraEnum.ExpressionDeep, virtualCam2); - - db.LoadFromCSV(Path.Combine(Application.streamingAssetsPath, "drivers.csv")); - - matchButton.onClick.AddListener(MatchDriver); - applyAndTestButton.onClick.AddListener(ApplyAndTestDriver); - - UpdateUI(); - } - - public void OpenView() - { - expressView.SetActive(true); - } - - public void CloseView() - { - expressView.SetActive(false); - } - - public void AdjustValue(int index, int delta) - { - if (delta > 0 && totalPoints <= 0) return; - if (delta < 0 && valuesCurrent[index] <= 0) return; - if (valuesCurrent[index] + delta > 5) return; - - valuesCurrent[index] += delta; - totalPoints -= delta; - CheckDriverStillValid(); - UpdateUI(); - } - - void UpdateUI() - { - totalPointsText.text = $"剩余点数: {totalPoints}"; - } - - void MatchDriver() - { - currentResultButtons.ForEach(btn => Destroy(btn)); - currentResultButtons.Clear(); - - var matches = db.MatchDrivers( - valuesCurrent[0], valuesCurrent[1], - valuesCurrent[2], valuesCurrent[3], - valuesCurrent[4]); - - if (matches.Count > 0) - { - matchResultsPanel.SetActive(true); - foreach (var driver in matches) - { - var btnObj = Instantiate(driverButtonPrefab, matchResultsPanel.transform); - var text = btnObj.GetComponentInChildren(); - if (text) text.text = driver.Name; - var btn = btnObj.GetComponent