Merge branch 'develop' into 7.3春优化
This commit is contained in:
@@ -47,6 +47,11 @@ MonoBehaviour:
|
||||
- Locale-en
|
||||
- Locale-ja-JP
|
||||
FlaggedDuringContentUpdateRestriction: 0
|
||||
- m_GUID: 7ea8c68fdc624de4c86434963c06ec55
|
||||
m_Address: Assets/Language/ChapterInfo/ChapterInfo Shared Data.asset
|
||||
m_ReadOnly: 1
|
||||
m_SerializedLabels: []
|
||||
FlaggedDuringContentUpdateRestriction: 0
|
||||
m_ReadOnly: 1
|
||||
m_Settings: {fileID: 11400000, guid: 77169ce22e430f64fb36c771815a4a7b, type: 2}
|
||||
m_SchemaSet:
|
||||
|
||||
+6
@@ -29,6 +29,12 @@ MonoBehaviour:
|
||||
m_SerializedLabels:
|
||||
- Locale-zh-Hans
|
||||
FlaggedDuringContentUpdateRestriction: 0
|
||||
- m_GUID: bdf8ad79a9f707b45805e23c25ccdadb
|
||||
m_Address: ChapterInfo_zh-Hans
|
||||
m_ReadOnly: 1
|
||||
m_SerializedLabels:
|
||||
- Locale-zh-Hans
|
||||
FlaggedDuringContentUpdateRestriction: 0
|
||||
m_ReadOnly: 1
|
||||
m_Settings: {fileID: 11400000, guid: 77169ce22e430f64fb36c771815a4a7b, type: 2}
|
||||
m_SchemaSet:
|
||||
|
||||
@@ -29,6 +29,12 @@ MonoBehaviour:
|
||||
m_SerializedLabels:
|
||||
- Locale-en
|
||||
FlaggedDuringContentUpdateRestriction: 0
|
||||
- m_GUID: 8906df9235e52fb41b11fe8776a77032
|
||||
m_Address: ChapterInfo_en
|
||||
m_ReadOnly: 1
|
||||
m_SerializedLabels:
|
||||
- Locale-en
|
||||
FlaggedDuringContentUpdateRestriction: 0
|
||||
m_ReadOnly: 1
|
||||
m_Settings: {fileID: 11400000, guid: 77169ce22e430f64fb36c771815a4a7b, type: 2}
|
||||
m_SchemaSet:
|
||||
|
||||
+6
@@ -29,6 +29,12 @@ MonoBehaviour:
|
||||
m_SerializedLabels:
|
||||
- Locale-ja-JP
|
||||
FlaggedDuringContentUpdateRestriction: 0
|
||||
- m_GUID: 9d8accfdeabc8034c986233920a17184
|
||||
m_Address: ChapterInfo_ja-JP
|
||||
m_ReadOnly: 1
|
||||
m_SerializedLabels:
|
||||
- Locale-ja-JP
|
||||
FlaggedDuringContentUpdateRestriction: 0
|
||||
m_ReadOnly: 1
|
||||
m_Settings: {fileID: 11400000, guid: 77169ce22e430f64fb36c771815a4a7b, type: 2}
|
||||
m_SchemaSet:
|
||||
|
||||
@@ -17,6 +17,7 @@ namespace AibisDream.SystemEditor
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.LabelField("显示信息", EditorStyles.boldLabel);
|
||||
EditorGUILayout.PropertyField(serializedObject.FindProperty("title"));
|
||||
EditorGUILayout.PropertyField(serializedObject.FindProperty("titleKey"));
|
||||
EditorGUILayout.PropertyField(serializedObject.FindProperty("description"));
|
||||
EditorGUILayout.PropertyField(serializedObject.FindProperty("coverPic"));
|
||||
EditorGUILayout.PropertyField(serializedObject.FindProperty("chapter"));
|
||||
|
||||
@@ -2,6 +2,7 @@ using System;
|
||||
using UnityEditor;
|
||||
using UnityEditor.Build;
|
||||
using UnityEditor.Build.Reporting;
|
||||
using UnityEngine;
|
||||
|
||||
public class VersionIncrementer : IPreprocessBuildWithReport
|
||||
{
|
||||
@@ -23,5 +24,12 @@ public class VersionIncrementer : IPreprocessBuildWithReport
|
||||
// 更新版本号
|
||||
string date = DateTime.Now.ToString("yyyyMMdd-HHmmss");
|
||||
PlayerSettings.bundleVersion = $"{major}.{minor}.{revision}.{build + 1}-{date}";
|
||||
|
||||
if (report.summary.platform == BuildTarget.Android)
|
||||
{
|
||||
int versionCode = PlayerSettings.Android.bundleVersionCode;
|
||||
PlayerSettings.Android.bundleVersionCode = versionCode + 1;
|
||||
Debug.Log($"[VersionIncrementer] Android versionCode: {versionCode} -> {versionCode + 1}");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -74,8 +74,6 @@ namespace AibisDream.SystemEditor
|
||||
public AsepriteSize size;
|
||||
public string scale;
|
||||
public List<AsepriteFrameTag> frameTags;
|
||||
public List<object> layers;
|
||||
public List<object> slices;
|
||||
}
|
||||
|
||||
// Aseprite JSON的包装类(因为Unity JsonUtility不支持Dictionary)
|
||||
|
||||
@@ -2,6 +2,7 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text.RegularExpressions;
|
||||
using UnityEditor;
|
||||
using UnityEditor.U2D.Sprites;
|
||||
using UnityEngine;
|
||||
@@ -57,8 +58,7 @@ namespace AibisDream.SystemEditor
|
||||
int metaBraceEnd = FindMatchingBrace(jsonContent, metaBraceStart);
|
||||
string metaJson = jsonContent.Substring(metaBraceStart, metaBraceEnd - metaBraceStart + 1);
|
||||
|
||||
// 移除可能的尾随逗号
|
||||
metaJson = metaJson.TrimEnd(',', ' ', '\n', '\r');
|
||||
metaJson = SanitizeJsonForUnity(metaJson);
|
||||
|
||||
AsepriteMeta meta = JsonUtility.FromJson<AsepriteMeta>(metaJson);
|
||||
|
||||
@@ -173,7 +173,7 @@ namespace AibisDream.SystemEditor
|
||||
|
||||
try
|
||||
{
|
||||
AsepriteFrameInfo frameInfo = JsonUtility.FromJson<AsepriteFrameInfo>(frameDataJson);
|
||||
AsepriteFrameInfo frameInfo = JsonUtility.FromJson<AsepriteFrameInfo>(SanitizeJsonForUnity(frameDataJson));
|
||||
if (frameInfo.frame != null)
|
||||
{
|
||||
frames.Add(new FrameData
|
||||
@@ -215,6 +215,14 @@ namespace AibisDream.SystemEditor
|
||||
return int.MaxValue; // 如果无法解析,放在最后
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Unity JsonUtility 不支持尾随逗号,Aseprite 导出时偶尔会带上。
|
||||
/// </summary>
|
||||
private static string SanitizeJsonForUnity(string json)
|
||||
{
|
||||
return Regex.Replace(json, @",(\s*[}\]])", "$1");
|
||||
}
|
||||
|
||||
private static int FindMatchingBrace(string str, int startIndex)
|
||||
{
|
||||
if (startIndex < 0 || startIndex >= str.Length) return -1;
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3fe2278382cb87e4993d86ca5ed00e5f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,101 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace AibisDream.YarnLocalizationValidation.Editor
|
||||
{
|
||||
public enum YarnL10nIssueType
|
||||
{
|
||||
MissingLocalization,
|
||||
OrphanLocalization,
|
||||
SourceTextChanged,
|
||||
CompileError,
|
||||
UntaggedLine,
|
||||
CsvMissing,
|
||||
InvalidProject,
|
||||
NoLocalizationConfigured,
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public sealed class YarnL10nIssue
|
||||
{
|
||||
public YarnL10nIssueType Type;
|
||||
public string Language;
|
||||
public string LineId;
|
||||
public string SourceText;
|
||||
public string LocText;
|
||||
public string YarnFile;
|
||||
public string YarnLineNumber;
|
||||
public string CsvFile;
|
||||
public string ChapterFolder;
|
||||
public string Message;
|
||||
|
||||
public string IssueTypeLabel => GetDisplayType();
|
||||
|
||||
public string GetDisplayType()
|
||||
{
|
||||
return Type switch
|
||||
{
|
||||
YarnL10nIssueType.MissingLocalization => $"缺少本地化-{Language}",
|
||||
YarnL10nIssueType.OrphanLocalization => $"找不到原文-{Language}",
|
||||
YarnL10nIssueType.SourceTextChanged => $"原文已变更-{Language}",
|
||||
YarnL10nIssueType.CompileError => "编译错误",
|
||||
YarnL10nIssueType.UntaggedLine => "未打line标签",
|
||||
YarnL10nIssueType.CsvMissing => $"CSV缺失-{Language}",
|
||||
YarnL10nIssueType.InvalidProject => "项目无效",
|
||||
YarnL10nIssueType.NoLocalizationConfigured => "未配置本地化",
|
||||
_ => Type.ToString(),
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public sealed class YarnL10nChapterSummary
|
||||
{
|
||||
public string ChapterFolder;
|
||||
public string YarnProjectPath;
|
||||
public int SourceLineCount;
|
||||
public Dictionary<string, YarnL10nLocaleSummary> Locales = new();
|
||||
public int IssueCount;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public sealed class YarnL10nLocaleSummary
|
||||
{
|
||||
public string Language;
|
||||
public int MissingCount;
|
||||
public int OrphanCount;
|
||||
public int SourceChangedCount;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public sealed class YarnL10nValidationResult
|
||||
{
|
||||
public List<YarnL10nIssue> Issues = new();
|
||||
public List<YarnL10nChapterSummary> Chapters = new();
|
||||
public int TotalIssueCount;
|
||||
|
||||
public bool HasIssues => TotalIssueCount > 0;
|
||||
|
||||
public bool HasBlockingIssues
|
||||
{
|
||||
get
|
||||
{
|
||||
foreach (var issue in Issues)
|
||||
{
|
||||
switch (issue.Type)
|
||||
{
|
||||
case YarnL10nIssueType.MissingLocalization:
|
||||
case YarnL10nIssueType.OrphanLocalization:
|
||||
case YarnL10nIssueType.SourceTextChanged:
|
||||
case YarnL10nIssueType.CompileError:
|
||||
case YarnL10nIssueType.CsvMissing:
|
||||
case YarnL10nIssueType.InvalidProject:
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 340d8f4fbf1fb8a458b87a164afd827b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,57 @@
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
|
||||
namespace AibisDream.YarnLocalizationValidation.Editor
|
||||
{
|
||||
public static class YarnL10nReportExporter
|
||||
{
|
||||
public static void ExportToCsv(YarnL10nValidationResult result, string outputPath)
|
||||
{
|
||||
var directory = Path.GetDirectoryName(outputPath);
|
||||
if (!string.IsNullOrEmpty(directory))
|
||||
{
|
||||
Directory.CreateDirectory(directory);
|
||||
}
|
||||
|
||||
var builder = new StringBuilder();
|
||||
builder.AppendLine("issueType,language,lineId,sourceText,locText,yarnFile,yarnLineNumber,csvFile,chapterFolder,message");
|
||||
|
||||
foreach (var issue in result.Issues)
|
||||
{
|
||||
builder.AppendLine(string.Join(",",
|
||||
Escape(issue.GetDisplayType()),
|
||||
Escape(issue.Language),
|
||||
Escape(issue.LineId),
|
||||
Escape(issue.SourceText),
|
||||
Escape(issue.LocText),
|
||||
Escape(issue.YarnFile),
|
||||
Escape(issue.YarnLineNumber),
|
||||
Escape(issue.CsvFile),
|
||||
Escape(issue.ChapterFolder),
|
||||
Escape(issue.Message)));
|
||||
}
|
||||
|
||||
File.WriteAllText(outputPath, builder.ToString(), new UTF8Encoding(encoderShouldEmitUTF8Identifier: true));
|
||||
}
|
||||
|
||||
public static string BuildDefaultExportFileName(string chapterFolder)
|
||||
{
|
||||
var chapterName = string.IsNullOrEmpty(chapterFolder)
|
||||
? "yarn_l10n"
|
||||
: Path.GetFileName(chapterFolder.Replace('/', Path.DirectorySeparatorChar));
|
||||
return $"{chapterName}_l10n_report_{System.DateTime.Now:yyyyMMdd_HHmmss}.csv";
|
||||
}
|
||||
|
||||
private static string Escape(string value)
|
||||
{
|
||||
value ??= string.Empty;
|
||||
if (value.Contains('"') || value.Contains(',') || value.Contains('\n') || value.Contains('\r'))
|
||||
{
|
||||
return $"\"{value.Replace("\"", "\"\"")}\"";
|
||||
}
|
||||
|
||||
return value;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7ab3c79927b366e459587175b8325dd6
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,471 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using UnityEditor;
|
||||
using UnityEditorInternal;
|
||||
using UnityEngine;
|
||||
|
||||
namespace AibisDream.YarnLocalizationValidation.Editor
|
||||
{
|
||||
public class YarnL10nValidationWindow : EditorWindow
|
||||
{
|
||||
private const string MenuPath = "AIBIS/Yarn 本地化校验";
|
||||
private const string WindowTitle = "Yarn Localization Validator";
|
||||
private const string FolderPathPrefKey = "AibisDream.YarnL10nValidation.FolderPath";
|
||||
private const string ScanSubdirsPrefKey = "AibisDream.YarnL10nValidation.ScanSubdirs";
|
||||
|
||||
private string _folderPath = "Assets/Yarn/FP/FP_Day1_mid";
|
||||
private DefaultAsset _folderAsset;
|
||||
private bool _scanSubdirectories;
|
||||
private Vector2 _scrollPosition;
|
||||
private YarnL10nValidationResult _lastResult;
|
||||
private string _filterType = "全部";
|
||||
private string _filterLanguage = "全部";
|
||||
private string _searchText = string.Empty;
|
||||
private string[] _typeOptions = { "全部" };
|
||||
private string[] _languageOptions = { "全部" };
|
||||
private int _filterTypeIndex;
|
||||
private int _filterLanguageIndex;
|
||||
|
||||
[MenuItem(MenuPath)]
|
||||
public static void Open()
|
||||
{
|
||||
var window = GetWindow<YarnL10nValidationWindow>(WindowTitle);
|
||||
window.minSize = new Vector2(640, 480);
|
||||
}
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
_folderPath = EditorPrefs.GetString(FolderPathPrefKey, _folderPath);
|
||||
_scanSubdirectories = EditorPrefs.GetBool(ScanSubdirsPrefKey, false);
|
||||
SyncFolderAssetFromPath();
|
||||
}
|
||||
|
||||
private void OnGUI()
|
||||
{
|
||||
EditorGUILayout.LabelField("Yarn 本地化校验", EditorStyles.boldLabel);
|
||||
EditorGUILayout.Space(4);
|
||||
|
||||
DrawFolderSelector();
|
||||
EditorGUILayout.Space(4);
|
||||
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
if (GUILayout.Button("校验", GUILayout.Height(28)))
|
||||
{
|
||||
RunValidation();
|
||||
}
|
||||
|
||||
using (new EditorGUI.DisabledScope(_lastResult == null || _lastResult.Issues.Count == 0))
|
||||
{
|
||||
if (GUILayout.Button("导出 CSV", GUILayout.Height(28)))
|
||||
{
|
||||
ExportReport();
|
||||
}
|
||||
}
|
||||
|
||||
if (GUILayout.Button("定位文件夹", GUILayout.Height(28)))
|
||||
{
|
||||
PingFolder();
|
||||
}
|
||||
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
_scanSubdirectories = EditorGUILayout.ToggleLeft("扫描子目录(批量)", _scanSubdirectories);
|
||||
if (GUI.changed)
|
||||
{
|
||||
EditorPrefs.SetBool(ScanSubdirsPrefKey, _scanSubdirectories);
|
||||
}
|
||||
EditorGUILayout.Space(6);
|
||||
|
||||
DrawSummary();
|
||||
DrawFilters();
|
||||
DrawIssueList();
|
||||
}
|
||||
|
||||
private void DrawFolderSelector()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField("章节文件夹", GUILayout.Width(80));
|
||||
|
||||
var newAsset = (DefaultAsset)EditorGUILayout.ObjectField(_folderAsset, typeof(DefaultAsset), false);
|
||||
if (newAsset != _folderAsset)
|
||||
{
|
||||
_folderAsset = newAsset;
|
||||
if (_folderAsset != null)
|
||||
{
|
||||
_folderPath = AssetDatabase.GetAssetPath(_folderAsset);
|
||||
SaveFolderPreferences();
|
||||
}
|
||||
}
|
||||
|
||||
var newPath = EditorGUILayout.TextField(_folderPath);
|
||||
if (!string.Equals(newPath, _folderPath, StringComparison.Ordinal))
|
||||
{
|
||||
_folderPath = newPath;
|
||||
SyncFolderAssetFromPath();
|
||||
SaveFolderPreferences();
|
||||
}
|
||||
|
||||
if (GUILayout.Button("浏览", GUILayout.Width(60)))
|
||||
{
|
||||
var startDirectory = GetBrowseStartDirectory();
|
||||
var selected = EditorUtility.OpenFolderPanel("选择 Yarn 章节文件夹", startDirectory, string.Empty);
|
||||
if (!string.IsNullOrEmpty(selected))
|
||||
{
|
||||
_folderPath = YarnL10nValidator.NormalizeProjectRelativePath(selected);
|
||||
SyncFolderAssetFromPath();
|
||||
SaveFolderPreferences();
|
||||
}
|
||||
}
|
||||
|
||||
EditorGUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
private void SaveFolderPreferences()
|
||||
{
|
||||
EditorPrefs.SetString(FolderPathPrefKey, _folderPath);
|
||||
}
|
||||
|
||||
private string GetBrowseStartDirectory()
|
||||
{
|
||||
var absolutePath = YarnL10nValidator.ToAbsolutePath(_folderPath);
|
||||
if (!string.IsNullOrEmpty(absolutePath) && !IsFilesystemRoot(absolutePath))
|
||||
{
|
||||
var parent = Directory.GetParent(absolutePath);
|
||||
if (parent != null)
|
||||
{
|
||||
return parent.FullName;
|
||||
}
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(absolutePath) && Directory.Exists(absolutePath))
|
||||
{
|
||||
return absolutePath;
|
||||
}
|
||||
|
||||
var assetsPath = Application.dataPath;
|
||||
return Directory.Exists(assetsPath) ? assetsPath : Environment.CurrentDirectory;
|
||||
}
|
||||
|
||||
private static bool IsFilesystemRoot(string absolutePath)
|
||||
{
|
||||
var normalized = Path.GetFullPath(absolutePath)
|
||||
.TrimEnd(Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar);
|
||||
var root = Path.GetPathRoot(normalized)?
|
||||
.TrimEnd(Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar);
|
||||
return !string.IsNullOrEmpty(root) &&
|
||||
string.Equals(normalized, root, StringComparison.OrdinalIgnoreCase);
|
||||
}
|
||||
|
||||
private void SyncFolderAssetFromPath()
|
||||
{
|
||||
_folderAsset = AssetDatabase.LoadAssetAtPath<DefaultAsset>(_folderPath);
|
||||
}
|
||||
|
||||
private void RunValidation()
|
||||
{
|
||||
SaveFolderPreferences();
|
||||
_lastResult = _scanSubdirectories
|
||||
? YarnL10nValidator.ValidateScanAll(_folderPath)
|
||||
: YarnL10nValidator.ValidateFolder(_folderPath);
|
||||
RefreshFilterOptions();
|
||||
Repaint();
|
||||
}
|
||||
|
||||
private void RefreshFilterOptions()
|
||||
{
|
||||
if (_lastResult == null || _lastResult.Issues.Count == 0)
|
||||
{
|
||||
_typeOptions = new[] { "全部" };
|
||||
_languageOptions = new[] { "全部" };
|
||||
}
|
||||
else
|
||||
{
|
||||
var types = _lastResult.Issues
|
||||
.Select(issue => issue.IssueTypeLabel)
|
||||
.Where(label => !string.IsNullOrEmpty(label))
|
||||
.Distinct(StringComparer.OrdinalIgnoreCase)
|
||||
.OrderBy(label => label, StringComparer.OrdinalIgnoreCase)
|
||||
.ToList();
|
||||
types.Insert(0, "全部");
|
||||
_typeOptions = types.ToArray();
|
||||
|
||||
var languages = _lastResult.Issues
|
||||
.Select(issue => issue.Language)
|
||||
.Where(language => !string.IsNullOrEmpty(language))
|
||||
.Distinct(StringComparer.OrdinalIgnoreCase)
|
||||
.OrderBy(language => language, StringComparer.OrdinalIgnoreCase)
|
||||
.ToList();
|
||||
languages.Insert(0, "全部");
|
||||
_languageOptions = languages.ToArray();
|
||||
}
|
||||
|
||||
_filterTypeIndex = ClampFilterIndex(_filterType, _typeOptions, ref _filterType);
|
||||
_filterLanguageIndex = ClampFilterIndex(_filterLanguage, _languageOptions, ref _filterLanguage);
|
||||
}
|
||||
|
||||
private static int ClampFilterIndex(string currentValue, string[] options, ref string selectedValue)
|
||||
{
|
||||
if (options.Length == 0)
|
||||
{
|
||||
selectedValue = "全部";
|
||||
return 0;
|
||||
}
|
||||
|
||||
for (var i = 0; i < options.Length; i++)
|
||||
{
|
||||
if (string.Equals(options[i], currentValue, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
selectedValue = options[i];
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
selectedValue = options[0];
|
||||
return 0;
|
||||
}
|
||||
|
||||
private void ExportReport()
|
||||
{
|
||||
var defaultName = YarnL10nReportExporter.BuildDefaultExportFileName(_folderPath);
|
||||
var savePath = EditorUtility.SaveFilePanel("导出校验报告", Application.dataPath, defaultName, "csv");
|
||||
if (string.IsNullOrEmpty(savePath))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
YarnL10nReportExporter.ExportToCsv(_lastResult, savePath);
|
||||
EditorUtility.RevealInFinder(savePath);
|
||||
}
|
||||
|
||||
private void PingFolder()
|
||||
{
|
||||
SyncFolderAssetFromPath();
|
||||
if (_folderAsset == null)
|
||||
{
|
||||
EditorUtility.DisplayDialog("Yarn 本地化校验", "无法定位文件夹,请检查路径。", "确定");
|
||||
return;
|
||||
}
|
||||
|
||||
EditorGUIUtility.PingObject(_folderAsset);
|
||||
Selection.activeObject = _folderAsset;
|
||||
}
|
||||
|
||||
private void DrawSummary()
|
||||
{
|
||||
EditorGUILayout.LabelField("摘要", EditorStyles.boldLabel);
|
||||
using (new EditorGUILayout.VerticalScope(EditorStyles.helpBox))
|
||||
{
|
||||
if (_lastResult == null)
|
||||
{
|
||||
EditorGUILayout.LabelField("尚未执行校验。");
|
||||
return;
|
||||
}
|
||||
|
||||
EditorGUILayout.LabelField($"Issue 总数: {_lastResult.TotalIssueCount}");
|
||||
EditorGUILayout.LabelField($"章节数: {_lastResult.Chapters.Count}");
|
||||
|
||||
foreach (var chapter in _lastResult.Chapters)
|
||||
{
|
||||
var localeParts = chapter.Locales.Values
|
||||
.Select(locale => $"{locale.Language}: 缺 {locale.MissingCount} / 多余 {locale.OrphanCount} / 变更 {locale.SourceChangedCount}")
|
||||
.ToArray();
|
||||
var localeSummary = localeParts.Length > 0 ? string.Join(" | ", localeParts) : "无翻译语言";
|
||||
EditorGUILayout.LabelField($"{chapter.ChapterFolder} — 原文 {chapter.SourceLineCount} 行 | {localeSummary}");
|
||||
}
|
||||
}
|
||||
|
||||
EditorGUILayout.Space(6);
|
||||
}
|
||||
|
||||
private void DrawFilters()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField("类型", GUILayout.Width(40));
|
||||
_filterTypeIndex = EditorGUILayout.Popup(_filterTypeIndex, _typeOptions, GUILayout.Width(180));
|
||||
_filterType = _typeOptions[_filterTypeIndex];
|
||||
|
||||
EditorGUILayout.LabelField("语言", GUILayout.Width(40));
|
||||
_filterLanguageIndex = EditorGUILayout.Popup(_filterLanguageIndex, _languageOptions, GUILayout.Width(100));
|
||||
_filterLanguage = _languageOptions[_filterLanguageIndex];
|
||||
|
||||
EditorGUILayout.LabelField("搜索", GUILayout.Width(40));
|
||||
_searchText = EditorGUILayout.TextField(_searchText);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
EditorGUILayout.Space(4);
|
||||
}
|
||||
|
||||
private void DrawIssueList()
|
||||
{
|
||||
EditorGUILayout.LabelField("结果列表", EditorStyles.boldLabel);
|
||||
_scrollPosition = EditorGUILayout.BeginScrollView(_scrollPosition, GUILayout.ExpandHeight(true));
|
||||
|
||||
if (_lastResult == null || _lastResult.Issues.Count == 0)
|
||||
{
|
||||
EditorGUILayout.LabelField(_lastResult == null ? "无结果。" : "未发现 issue。");
|
||||
}
|
||||
else
|
||||
{
|
||||
var index = 0;
|
||||
foreach (var issue in FilterIssues(_lastResult.Issues))
|
||||
{
|
||||
DrawIssueRow(issue, index);
|
||||
index++;
|
||||
}
|
||||
}
|
||||
|
||||
EditorGUILayout.EndScrollView();
|
||||
}
|
||||
|
||||
private IEnumerable<YarnL10nIssue> FilterIssues(IEnumerable<YarnL10nIssue> issues)
|
||||
{
|
||||
foreach (var issue in issues)
|
||||
{
|
||||
if (!MatchesFilter(issue))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
yield return issue;
|
||||
}
|
||||
}
|
||||
|
||||
private bool MatchesFilter(YarnL10nIssue issue)
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(_filterType) &&
|
||||
!string.Equals(_filterType, "全部", StringComparison.OrdinalIgnoreCase) &&
|
||||
!string.Equals(issue.IssueTypeLabel, _filterType, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(_filterLanguage) &&
|
||||
!string.Equals(_filterLanguage, "全部", StringComparison.OrdinalIgnoreCase) &&
|
||||
!string.Equals(issue.Language, _filterLanguage, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (string.IsNullOrWhiteSpace(_searchText))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
var haystack = string.Join(" ",
|
||||
issue.GetDisplayType(),
|
||||
issue.Language,
|
||||
issue.LineId,
|
||||
issue.SourceText,
|
||||
issue.LocText,
|
||||
issue.YarnFile,
|
||||
issue.ChapterFolder,
|
||||
issue.Message);
|
||||
|
||||
return haystack.IndexOf(_searchText, StringComparison.OrdinalIgnoreCase) >= 0;
|
||||
}
|
||||
|
||||
private void DrawIssueRow(YarnL10nIssue issue, int index)
|
||||
{
|
||||
using (new EditorGUILayout.VerticalScope(EditorStyles.helpBox))
|
||||
{
|
||||
EditorGUILayout.LabelField($"{issue.GetDisplayType()} | {issue.Language} | {issue.LineId}", EditorStyles.boldLabel);
|
||||
if (!string.IsNullOrEmpty(issue.ChapterFolder))
|
||||
{
|
||||
EditorGUILayout.LabelField("章节", issue.ChapterFolder);
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(issue.YarnFile))
|
||||
{
|
||||
EditorGUILayout.LabelField("源文件", $"{issue.YarnFile}:{issue.YarnLineNumber}");
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(issue.CsvFile))
|
||||
{
|
||||
EditorGUILayout.LabelField("CSV", issue.CsvFile);
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(issue.SourceText))
|
||||
{
|
||||
EditorGUILayout.LabelField("原文", issue.SourceText);
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(issue.LocText))
|
||||
{
|
||||
EditorGUILayout.LabelField("翻译", issue.LocText);
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(issue.Message))
|
||||
{
|
||||
EditorGUILayout.LabelField("说明", issue.Message);
|
||||
}
|
||||
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
if (GUILayout.Button("定位", GUILayout.Width(80)))
|
||||
{
|
||||
PingIssue(issue);
|
||||
}
|
||||
|
||||
EditorGUILayout.EndHorizontal();
|
||||
}
|
||||
}
|
||||
|
||||
private void PingIssue(YarnL10nIssue issue)
|
||||
{
|
||||
if (issue.Type == YarnL10nIssueType.OrphanLocalization && !string.IsNullOrEmpty(issue.CsvFile))
|
||||
{
|
||||
var csvAsset = AssetDatabase.LoadAssetAtPath<UnityEngine.Object>(issue.CsvFile);
|
||||
if (csvAsset != null)
|
||||
{
|
||||
EditorGUIUtility.PingObject(csvAsset);
|
||||
Selection.activeObject = csvAsset;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(issue.YarnFile))
|
||||
{
|
||||
var yarnPath = ResolveYarnAssetPath(issue);
|
||||
var yarnAsset = AssetDatabase.LoadAssetAtPath<UnityEngine.Object>(yarnPath);
|
||||
if (yarnAsset != null)
|
||||
{
|
||||
EditorGUIUtility.PingObject(yarnAsset);
|
||||
Selection.activeObject = yarnAsset;
|
||||
|
||||
if (int.TryParse(issue.YarnLineNumber, out var lineNumber) && lineNumber > 0)
|
||||
{
|
||||
var absolutePath = YarnL10nValidator.ToAbsolutePath(yarnPath);
|
||||
InternalEditorUtility.OpenFileAtLineExternal(absolutePath, lineNumber);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(issue.ChapterFolder))
|
||||
{
|
||||
var folderAsset = AssetDatabase.LoadAssetAtPath<DefaultAsset>(issue.ChapterFolder);
|
||||
if (folderAsset != null)
|
||||
{
|
||||
EditorGUIUtility.PingObject(folderAsset);
|
||||
Selection.activeObject = folderAsset;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static string ResolveYarnAssetPath(YarnL10nIssue issue)
|
||||
{
|
||||
if (issue.YarnFile.StartsWith("Assets/", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return issue.YarnFile;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(issue.ChapterFolder))
|
||||
{
|
||||
return $"{issue.ChapterFolder}/{issue.YarnFile}";
|
||||
}
|
||||
|
||||
return issue.YarnFile;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fe514a9bb460dd74e8b0ec7e1ae7cf98
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,412 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using Yarn.Compiler;
|
||||
using Yarn.Unity;
|
||||
using Yarn.Unity.Editor;
|
||||
|
||||
namespace AibisDream.YarnLocalizationValidation.Editor
|
||||
{
|
||||
public static class YarnL10nValidator
|
||||
{
|
||||
public static YarnL10nValidationResult ValidateFolder(string folderPath)
|
||||
{
|
||||
var result = new YarnL10nValidationResult();
|
||||
if (string.IsNullOrWhiteSpace(folderPath))
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.InvalidProject,
|
||||
chapterFolder: folderPath,
|
||||
message: "章节文件夹路径为空。"));
|
||||
FinalizeResult(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
var normalizedFolder = NormalizeProjectRelativePath(folderPath);
|
||||
var absoluteFolder = ToAbsolutePath(normalizedFolder);
|
||||
if (!Directory.Exists(absoluteFolder))
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.InvalidProject,
|
||||
chapterFolder: normalizedFolder,
|
||||
message: $"文件夹不存在: {normalizedFolder}"));
|
||||
FinalizeResult(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
var yarnProjects = Directory.GetFiles(absoluteFolder, "*.yarnproject", SearchOption.TopDirectoryOnly);
|
||||
if (yarnProjects.Length == 0)
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.InvalidProject,
|
||||
chapterFolder: normalizedFolder,
|
||||
message: "文件夹内未找到 .yarnproject 文件。"));
|
||||
FinalizeResult(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
if (yarnProjects.Length > 1)
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.InvalidProject,
|
||||
chapterFolder: normalizedFolder,
|
||||
message: $"文件夹内存在多个 .yarnproject({yarnProjects.Length} 个)。"));
|
||||
FinalizeResult(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
ValidateYarnProjectFile(yarnProjects[0], result);
|
||||
FinalizeResult(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
public static YarnL10nValidationResult ValidateScanAll(string rootPath)
|
||||
{
|
||||
var result = new YarnL10nValidationResult();
|
||||
var normalizedRoot = NormalizeProjectRelativePath(rootPath);
|
||||
var absoluteRoot = ToAbsolutePath(normalizedRoot);
|
||||
if (!Directory.Exists(absoluteRoot))
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.InvalidProject,
|
||||
chapterFolder: normalizedRoot,
|
||||
message: $"扫描根目录不存在: {normalizedRoot}"));
|
||||
FinalizeResult(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
var yarnProjectFiles = Directory.GetFiles(absoluteRoot, "*.yarnproject", SearchOption.AllDirectories);
|
||||
if (yarnProjectFiles.Length == 0)
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.InvalidProject,
|
||||
chapterFolder: normalizedRoot,
|
||||
message: "扫描范围内未找到任何 .yarnproject。"));
|
||||
FinalizeResult(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
foreach (var yarnProjectFile in yarnProjectFiles.OrderBy(path => path, StringComparer.OrdinalIgnoreCase))
|
||||
{
|
||||
ValidateYarnProjectFile(yarnProjectFile, result);
|
||||
}
|
||||
|
||||
FinalizeResult(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
private static void ValidateYarnProjectFile(string yarnProjectAbsolutePath, YarnL10nValidationResult result)
|
||||
{
|
||||
var chapterFolder = NormalizeProjectRelativePath(Path.GetDirectoryName(yarnProjectAbsolutePath));
|
||||
var yarnProjectRelativePath = NormalizeProjectRelativePath(yarnProjectAbsolutePath);
|
||||
|
||||
Project project;
|
||||
try
|
||||
{
|
||||
project = Project.LoadFromFile(yarnProjectAbsolutePath);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.InvalidProject,
|
||||
chapterFolder: chapterFolder,
|
||||
message: $"无法解析 .yarnproject: {ex.Message}"));
|
||||
return;
|
||||
}
|
||||
|
||||
var chapterSummary = new YarnL10nChapterSummary
|
||||
{
|
||||
ChapterFolder = chapterFolder,
|
||||
YarnProjectPath = yarnProjectRelativePath,
|
||||
};
|
||||
var issueStartIndex = result.Issues.Count;
|
||||
|
||||
if (project.Localisation == null || project.Localisation.Count == 0)
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.NoLocalizationConfigured,
|
||||
chapterFolder: chapterFolder,
|
||||
message: "yarnproject 未配置 localisation。"));
|
||||
result.Chapters.Add(chapterSummary);
|
||||
return;
|
||||
}
|
||||
|
||||
var sourceFiles = project.SourceFiles?.ToList() ?? new List<string>();
|
||||
if (sourceFiles.Count == 0)
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.InvalidProject,
|
||||
chapterFolder: chapterFolder,
|
||||
message: "yarnproject 未包含任何 .yarn 源文件。"));
|
||||
result.Chapters.Add(chapterSummary);
|
||||
return;
|
||||
}
|
||||
|
||||
var job = CompilationJob.CreateFromFiles(sourceFiles);
|
||||
job.CompilationType = CompilationJob.Type.StringsOnly;
|
||||
var compilationResult = Compiler.Compile(job);
|
||||
|
||||
foreach (var diagnostic in compilationResult.Diagnostics.Where(d => d.Severity == Diagnostic.DiagnosticSeverity.Error))
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.CompileError,
|
||||
chapterFolder: chapterFolder,
|
||||
message: diagnostic.Message));
|
||||
}
|
||||
|
||||
if (compilationResult.ContainsErrors)
|
||||
{
|
||||
result.Chapters.Add(chapterSummary);
|
||||
return;
|
||||
}
|
||||
|
||||
if (compilationResult.ContainsImplicitStringTags)
|
||||
{
|
||||
foreach (var pair in compilationResult.StringTable.Where(entry => entry.Value.isImplicitTag))
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.UntaggedLine,
|
||||
chapterFolder: chapterFolder,
|
||||
lineId: pair.Key,
|
||||
yarnFile: pair.Value.fileName,
|
||||
yarnLineNumber: pair.Value.lineNumber.ToString(),
|
||||
message: "存在未打 #line: 标签的可本地化行。"));
|
||||
}
|
||||
}
|
||||
|
||||
var baseEntries = BuildBaseEntries(project, compilationResult);
|
||||
chapterSummary.SourceLineCount = baseEntries.Count;
|
||||
|
||||
foreach (var localePair in project.Localisation)
|
||||
{
|
||||
var language = localePair.Key;
|
||||
if (string.Equals(language, project.BaseLanguage, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (string.IsNullOrEmpty(localePair.Value.Strings))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (localePair.Value.Strings.StartsWith("unity:", StringComparison.Ordinal))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
var localeSummary = new YarnL10nLocaleSummary { Language = language };
|
||||
chapterSummary.Locales[language] = localeSummary;
|
||||
|
||||
if (!project.TryGetStringsPath(language, out var csvRelativePath) ||
|
||||
string.IsNullOrEmpty(csvRelativePath))
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.CsvMissing,
|
||||
chapterFolder: chapterFolder,
|
||||
language: language,
|
||||
message: $"未找到语言 {language} 的 CSV 路径。"));
|
||||
continue;
|
||||
}
|
||||
|
||||
var csvAbsolutePath = ToAbsolutePath(csvRelativePath);
|
||||
if (!File.Exists(csvAbsolutePath))
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.CsvMissing,
|
||||
chapterFolder: chapterFolder,
|
||||
language: language,
|
||||
csvFile: csvRelativePath,
|
||||
message: $"本地化 CSV 不存在: {csvRelativePath}"));
|
||||
continue;
|
||||
}
|
||||
|
||||
IEnumerable<StringTableEntry> translatedEntries;
|
||||
try
|
||||
{
|
||||
translatedEntries = StringTableEntry.ParseFromCSV(File.ReadAllText(csvAbsolutePath));
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.InvalidProject,
|
||||
chapterFolder: chapterFolder,
|
||||
language: language,
|
||||
csvFile: csvRelativePath,
|
||||
message: $"无法解析 CSV: {ex.Message}"));
|
||||
continue;
|
||||
}
|
||||
|
||||
var translatedDictionary = translatedEntries
|
||||
.Where(entry => !string.IsNullOrEmpty(entry.ID))
|
||||
.GroupBy(entry => entry.ID)
|
||||
.ToDictionary(group => group.Key, group => group.First());
|
||||
|
||||
var baseIds = baseEntries.Keys.ToHashSet();
|
||||
var translatedIds = translatedDictionary.Keys.ToHashSet();
|
||||
|
||||
foreach (var missingId in baseIds.Except(translatedIds).OrderBy(id => id, StringComparer.Ordinal))
|
||||
{
|
||||
var baseEntry = baseEntries[missingId];
|
||||
localeSummary.MissingCount++;
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.MissingLocalization,
|
||||
chapterFolder: chapterFolder,
|
||||
language: language,
|
||||
lineId: missingId,
|
||||
sourceText: baseEntry.Text,
|
||||
yarnFile: baseEntry.File,
|
||||
yarnLineNumber: baseEntry.LineNumber));
|
||||
}
|
||||
|
||||
foreach (var orphanId in translatedIds.Except(baseIds).OrderBy(id => id, StringComparer.Ordinal))
|
||||
{
|
||||
var translatedEntry = translatedDictionary[orphanId];
|
||||
localeSummary.OrphanCount++;
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.OrphanLocalization,
|
||||
chapterFolder: chapterFolder,
|
||||
language: language,
|
||||
lineId: orphanId,
|
||||
locText: translatedEntry.Text,
|
||||
csvFile: csvRelativePath));
|
||||
}
|
||||
|
||||
foreach (var sharedId in baseIds.Intersect(translatedIds))
|
||||
{
|
||||
var baseEntry = baseEntries[sharedId];
|
||||
var translatedEntry = translatedDictionary[sharedId];
|
||||
if (string.IsNullOrEmpty(baseEntry.Lock) || string.IsNullOrEmpty(translatedEntry.Lock))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (baseEntry.Lock == translatedEntry.Lock)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
localeSummary.SourceChangedCount++;
|
||||
AddIssue(result, CreateIssue(
|
||||
YarnL10nIssueType.SourceTextChanged,
|
||||
chapterFolder: chapterFolder,
|
||||
language: language,
|
||||
lineId: sharedId,
|
||||
sourceText: baseEntry.Text,
|
||||
locText: translatedEntry.Text,
|
||||
yarnFile: baseEntry.File,
|
||||
yarnLineNumber: baseEntry.LineNumber,
|
||||
csvFile: csvRelativePath,
|
||||
message: "原文 Lock 与翻译 CSV 不一致,翻译可能已过期。"));
|
||||
}
|
||||
}
|
||||
|
||||
chapterSummary.IssueCount = result.Issues.Count - issueStartIndex;
|
||||
result.Chapters.Add(chapterSummary);
|
||||
}
|
||||
|
||||
private static Dictionary<string, StringTableEntry> BuildBaseEntries(Project project, CompilationResult compilationResult)
|
||||
{
|
||||
var entries = new Dictionary<string, StringTableEntry>(StringComparer.Ordinal);
|
||||
foreach (var pair in compilationResult.StringTable.Where(entry => entry.Value.text != null))
|
||||
{
|
||||
var entry = new StringTableEntry
|
||||
{
|
||||
ID = pair.Key,
|
||||
Language = project.BaseLanguage ?? "zh-Hans",
|
||||
Text = pair.Value.text,
|
||||
File = pair.Value.fileName,
|
||||
Node = pair.Value.nodeName,
|
||||
LineNumber = pair.Value.lineNumber.ToString(),
|
||||
Lock = YarnImporter.GetHashString(pair.Value.text!, 8),
|
||||
};
|
||||
entries[pair.Key] = entry;
|
||||
}
|
||||
|
||||
return entries;
|
||||
}
|
||||
|
||||
private static YarnL10nIssue CreateIssue(
|
||||
YarnL10nIssueType type,
|
||||
string chapterFolder = "",
|
||||
string language = "",
|
||||
string lineId = "",
|
||||
string sourceText = "",
|
||||
string locText = "",
|
||||
string yarnFile = "",
|
||||
string yarnLineNumber = "",
|
||||
string csvFile = "",
|
||||
string message = "")
|
||||
{
|
||||
return new YarnL10nIssue
|
||||
{
|
||||
Type = type,
|
||||
ChapterFolder = chapterFolder ?? string.Empty,
|
||||
Language = language ?? string.Empty,
|
||||
LineId = lineId ?? string.Empty,
|
||||
SourceText = sourceText ?? string.Empty,
|
||||
LocText = locText ?? string.Empty,
|
||||
YarnFile = yarnFile ?? string.Empty,
|
||||
YarnLineNumber = yarnLineNumber ?? string.Empty,
|
||||
CsvFile = csvFile ?? string.Empty,
|
||||
Message = message ?? string.Empty,
|
||||
};
|
||||
}
|
||||
|
||||
private static void AddIssue(YarnL10nValidationResult result, YarnL10nIssue issue)
|
||||
{
|
||||
result.Issues.Add(issue);
|
||||
}
|
||||
|
||||
private static void FinalizeResult(YarnL10nValidationResult result)
|
||||
{
|
||||
result.TotalIssueCount = result.Issues.Count;
|
||||
}
|
||||
|
||||
public static string NormalizeProjectRelativePath(string path)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(path))
|
||||
{
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
var normalized = path.Replace('\\', '/').Trim();
|
||||
var projectRoot = GetProjectRootPath().Replace('\\', '/');
|
||||
if (Path.IsPathRooted(normalized))
|
||||
{
|
||||
var absolute = Path.GetFullPath(normalized).Replace('\\', '/');
|
||||
if (absolute.StartsWith(projectRoot, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
normalized = absolute.Substring(projectRoot.Length).TrimStart('/');
|
||||
}
|
||||
else
|
||||
{
|
||||
normalized = absolute;
|
||||
}
|
||||
}
|
||||
|
||||
return normalized.TrimEnd('/');
|
||||
}
|
||||
|
||||
public static string ToAbsolutePath(string projectRelativeOrAbsolutePath)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(projectRelativeOrAbsolutePath))
|
||||
{
|
||||
return GetProjectRootPath();
|
||||
}
|
||||
|
||||
if (Path.IsPathRooted(projectRelativeOrAbsolutePath))
|
||||
{
|
||||
return Path.GetFullPath(projectRelativeOrAbsolutePath);
|
||||
}
|
||||
|
||||
return Path.GetFullPath(Path.Combine(GetProjectRootPath(), projectRelativeOrAbsolutePath));
|
||||
}
|
||||
|
||||
private static string GetProjectRootPath()
|
||||
{
|
||||
return Path.GetFullPath(Path.Combine(UnityEngine.Application.dataPath, ".."));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ea78060f3c3448d4aa9b19b8b55fb843
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,116 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Newtonsoft.Json;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
|
||||
namespace AibisDream.YarnLocalizationValidation.Editor
|
||||
{
|
||||
public static class YarnL10nValidatorCli
|
||||
{
|
||||
private const string JsonBeginMarker = "YARN_L10N_JSON_BEGIN";
|
||||
private const string JsonEndMarker = "YARN_L10N_JSON_END";
|
||||
|
||||
public static void Run()
|
||||
{
|
||||
try
|
||||
{
|
||||
var args = Environment.GetCommandLineArgs();
|
||||
var path = GetArgumentValue(args, "-yarnL10nPath");
|
||||
var scanAll = HasFlag(args, "-yarnL10nScanAll");
|
||||
var exportPath = GetArgumentValue(args, "-yarnL10nExport");
|
||||
var outputPath = GetArgumentValue(args, "-yarnL10nOutput");
|
||||
if (string.IsNullOrWhiteSpace(outputPath))
|
||||
{
|
||||
outputPath = "Build/yarn_l10n_result.json";
|
||||
}
|
||||
|
||||
if (string.IsNullOrWhiteSpace(path))
|
||||
{
|
||||
WriteFailure("缺少参数 -yarnL10nPath。", 2);
|
||||
return;
|
||||
}
|
||||
|
||||
var validationResult = scanAll
|
||||
? YarnL10nValidator.ValidateScanAll(path)
|
||||
: YarnL10nValidator.ValidateFolder(path);
|
||||
|
||||
var json = JsonConvert.SerializeObject(validationResult, Formatting.Indented);
|
||||
WriteJson(json, outputPath);
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(exportPath))
|
||||
{
|
||||
var absoluteExportPath = YarnL10nValidator.ToAbsolutePath(exportPath);
|
||||
YarnL10nReportExporter.ExportToCsv(validationResult, absoluteExportPath);
|
||||
}
|
||||
|
||||
var exitCode = validationResult.HasBlockingIssues ? 1 : 0;
|
||||
Debug.Log($"[YarnL10nValidatorCli] Completed with exit code {exitCode}, issues={validationResult.TotalIssueCount}");
|
||||
EditorApplication.Exit(exitCode);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
WriteFailure(ex.ToString(), 3);
|
||||
}
|
||||
}
|
||||
|
||||
private static void WriteJson(string json, string outputPath)
|
||||
{
|
||||
Console.WriteLine(JsonBeginMarker);
|
||||
Console.WriteLine(json);
|
||||
Console.WriteLine(JsonEndMarker);
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(outputPath))
|
||||
{
|
||||
var absoluteOutputPath = YarnL10nValidator.ToAbsolutePath(outputPath);
|
||||
var directory = Path.GetDirectoryName(absoluteOutputPath);
|
||||
if (!string.IsNullOrEmpty(directory))
|
||||
{
|
||||
Directory.CreateDirectory(directory);
|
||||
}
|
||||
|
||||
File.WriteAllText(absoluteOutputPath, json, new System.Text.UTF8Encoding(encoderShouldEmitUTF8Identifier: false));
|
||||
Debug.Log($"[YarnL10nValidatorCli] Wrote JSON to {absoluteOutputPath}");
|
||||
}
|
||||
}
|
||||
|
||||
private static void WriteFailure(string message, int exitCode)
|
||||
{
|
||||
Debug.LogError($"[YarnL10nValidatorCli] {message}");
|
||||
Console.Error.WriteLine(message);
|
||||
EditorApplication.Exit(exitCode);
|
||||
}
|
||||
|
||||
private static bool HasFlag(string[] args, string flag)
|
||||
{
|
||||
foreach (var arg in args)
|
||||
{
|
||||
if (string.Equals(arg, flag, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private static string GetArgumentValue(string[] args, string key)
|
||||
{
|
||||
for (var i = 0; i < args.Length; i++)
|
||||
{
|
||||
var arg = args[i];
|
||||
if (arg.StartsWith(key + "=", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return arg.Substring(key.Length + 1).Trim('"');
|
||||
}
|
||||
|
||||
if (string.Equals(arg, key, StringComparison.OrdinalIgnoreCase) && i + 1 < args.Length)
|
||||
{
|
||||
return args[i + 1].Trim('"');
|
||||
}
|
||||
}
|
||||
|
||||
return string.Empty;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 23836ef03028055439615fda97642c4e
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,76 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!74 &7400000
|
||||
AnimationClip:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: "\u4EAE\u5C4Floop"
|
||||
serializedVersion: 7
|
||||
m_Legacy: 0
|
||||
m_Compressed: 0
|
||||
m_UseHighQualityCurve: 1
|
||||
m_RotationCurves: []
|
||||
m_CompressedRotationCurves: []
|
||||
m_EulerCurves: []
|
||||
m_PositionCurves: []
|
||||
m_ScaleCurves: []
|
||||
m_FloatCurves: []
|
||||
m_PPtrCurves:
|
||||
- serializedVersion: 2
|
||||
curve:
|
||||
- time: 0
|
||||
value: {fileID: 6840156550563268254, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 0.3
|
||||
value: {fileID: 6859219705196112515, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 0.6
|
||||
value: {fileID: 6179875850159260718, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 0.90000004
|
||||
value: {fileID: -5081968170355746866, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 1.2
|
||||
value: {fileID: 5367341067529554582, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 1.5
|
||||
value: {fileID: 4034447014785714212, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 1.8
|
||||
value: {fileID: -4048179399956102038, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.1
|
||||
value: {fileID: -4048179399956102038, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
attribute: m_Sprite
|
||||
path:
|
||||
classID: 114
|
||||
script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
flags: 2
|
||||
m_SampleRate: 100
|
||||
m_WrapMode: 0
|
||||
m_Bounds:
|
||||
m_Center: {x: 0, y: 0, z: 0}
|
||||
m_Extent: {x: 0, y: 0, z: 0}
|
||||
m_ClipBindingConstant:
|
||||
genericBindings: []
|
||||
pptrCurveMapping: []
|
||||
m_AnimationClipSettings:
|
||||
serializedVersion: 2
|
||||
m_AdditiveReferencePoseClip: {fileID: 0}
|
||||
m_AdditiveReferencePoseTime: 0
|
||||
m_StartTime: 0
|
||||
m_StopTime: 2.1
|
||||
m_OrientationOffsetY: 0
|
||||
m_Level: 0
|
||||
m_CycleOffset: 0
|
||||
m_HasAdditiveReferencePose: 0
|
||||
m_LoopTime: 1
|
||||
m_LoopBlend: 0
|
||||
m_LoopBlendOrientation: 0
|
||||
m_LoopBlendPositionY: 0
|
||||
m_LoopBlendPositionXZ: 0
|
||||
m_KeepOriginalOrientation: 0
|
||||
m_KeepOriginalPositionY: 1
|
||||
m_KeepOriginalPositionXZ: 0
|
||||
m_HeightFromFeet: 0
|
||||
m_Mirror: 0
|
||||
m_EditorCurves: []
|
||||
m_EulerEditorCurves: []
|
||||
m_HasGenericRootTransform: 0
|
||||
m_HasMotionFloatCurves: 0
|
||||
m_Events: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ec60957e74bb8e14f9ec15337cfa1875
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 7400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,112 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!74 &7400000
|
||||
AnimationClip:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: "\u4EAE\u5C4F\u52A8\u753B"
|
||||
serializedVersion: 7
|
||||
m_Legacy: 0
|
||||
m_Compressed: 0
|
||||
m_UseHighQualityCurve: 1
|
||||
m_RotationCurves: []
|
||||
m_CompressedRotationCurves: []
|
||||
m_EulerCurves: []
|
||||
m_PositionCurves: []
|
||||
m_ScaleCurves: []
|
||||
m_FloatCurves: []
|
||||
m_PPtrCurves:
|
||||
- serializedVersion: 2
|
||||
curve:
|
||||
- time: 0
|
||||
value: {fileID: 3590298006132234197, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 0.3
|
||||
value: {fileID: 4212493904117688442, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 0.6
|
||||
value: {fileID: -387524978352016511, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 0.90000004
|
||||
value: {fileID: 7801700163853764768, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 1.2
|
||||
value: {fileID: 711219979135128828, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 1.5
|
||||
value: {fileID: 4267215280997433592, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 1.8
|
||||
value: {fileID: 649394415776010123, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.1
|
||||
value: {fileID: 317381804168222667, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.3999999
|
||||
value: {fileID: -1712740933478016488, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.4299998
|
||||
value: {fileID: 2405545755500861010, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.4599998
|
||||
value: {fileID: -995732229373678935, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.4899998
|
||||
value: {fileID: 7743725875444303658, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.5049999
|
||||
value: {fileID: 4720126138351216526, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.52
|
||||
value: {fileID: -7456328238438083341, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.55
|
||||
value: {fileID: 1624408415468815096, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.58
|
||||
value: {fileID: -3912150861758148666, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.61
|
||||
value: {fileID: -3485725615810799470, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.6399999
|
||||
value: {fileID: 563418682396710732, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.6699998
|
||||
value: {fileID: -1621594311118950475, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.6999998
|
||||
value: {fileID: -2389446049106371289, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.7299998
|
||||
value: {fileID: -8255714429177961685, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 3.0299997
|
||||
value: {fileID: 1584577596599159291, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 3.3299997
|
||||
value: {fileID: 4990357603736357962, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 3.6299996
|
||||
value: {fileID: -3996596820084109666, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 3.9299996
|
||||
value: {fileID: 2106986351469202532, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 4.2299995
|
||||
value: {fileID: 2106986351469202532, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
attribute: m_Sprite
|
||||
path:
|
||||
classID: 114
|
||||
script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
flags: 2
|
||||
m_SampleRate: 100
|
||||
m_WrapMode: 0
|
||||
m_Bounds:
|
||||
m_Center: {x: 0, y: 0, z: 0}
|
||||
m_Extent: {x: 0, y: 0, z: 0}
|
||||
m_ClipBindingConstant:
|
||||
genericBindings: []
|
||||
pptrCurveMapping: []
|
||||
m_AnimationClipSettings:
|
||||
serializedVersion: 2
|
||||
m_AdditiveReferencePoseClip: {fileID: 0}
|
||||
m_AdditiveReferencePoseTime: 0
|
||||
m_StartTime: 0
|
||||
m_StopTime: 4.2299995
|
||||
m_OrientationOffsetY: 0
|
||||
m_Level: 0
|
||||
m_CycleOffset: 0
|
||||
m_HasAdditiveReferencePose: 0
|
||||
m_LoopTime: 1
|
||||
m_LoopBlend: 0
|
||||
m_LoopBlendOrientation: 0
|
||||
m_LoopBlendPositionY: 0
|
||||
m_LoopBlendPositionXZ: 0
|
||||
m_KeepOriginalOrientation: 0
|
||||
m_KeepOriginalPositionY: 1
|
||||
m_KeepOriginalPositionXZ: 0
|
||||
m_HeightFromFeet: 0
|
||||
m_Mirror: 0
|
||||
m_EditorCurves: []
|
||||
m_EulerEditorCurves: []
|
||||
m_HasGenericRootTransform: 0
|
||||
m_HasMotionFloatCurves: 0
|
||||
m_Events: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3a75a03c775ec294eae29d2d0ee44e18
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 7400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -21,21 +21,21 @@ AnimationClip:
|
||||
- serializedVersion: 2
|
||||
curve:
|
||||
- time: 0
|
||||
value: {fileID: -1742218470230028808, guid: e6b37dcb143583d43963b1bc8692bed6, type: 3}
|
||||
value: {fileID: -4136375617897137844, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 0.3
|
||||
value: {fileID: -5764350979678766904, guid: e6b37dcb143583d43963b1bc8692bed6, type: 3}
|
||||
value: {fileID: -4479527062766389854, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 0.6
|
||||
value: {fileID: -3295365977225587294, guid: e6b37dcb143583d43963b1bc8692bed6, type: 3}
|
||||
value: {fileID: -4268351921501975114, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 0.90000004
|
||||
value: {fileID: -7725913967403012872, guid: e6b37dcb143583d43963b1bc8692bed6, type: 3}
|
||||
value: {fileID: -6887488568323005115, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 1.2
|
||||
value: {fileID: 6171193435392098681, guid: e6b37dcb143583d43963b1bc8692bed6, type: 3}
|
||||
value: {fileID: -5163234800086539867, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 1.5
|
||||
value: {fileID: 4940328948751707141, guid: e6b37dcb143583d43963b1bc8692bed6, type: 3}
|
||||
value: {fileID: -7174022090250177913, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 1.8
|
||||
value: {fileID: -3388567071384404738, guid: e6b37dcb143583d43963b1bc8692bed6, type: 3}
|
||||
value: {fileID: -6836389288971555806, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
- time: 2.1
|
||||
value: {fileID: -3388567071384404738, guid: e6b37dcb143583d43963b1bc8692bed6, type: 3}
|
||||
value: {fileID: -6836389288971555806, guid: 73def603ca61b39438ad172fd1536786, type: 3}
|
||||
attribute: m_Sprite
|
||||
path:
|
||||
classID: 114
|
||||
|
||||
@@ -0,0 +1,185 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1101 &-8172874463769248790
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 7048929015318248050}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 1
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1102 &-1577588317385944934
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: "\u5012\u5F71loop"
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 3732538502545432171}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 9cb5144aa79475e42aaf6da923ea435d, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!91 &9100000
|
||||
AnimatorController:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: "\u5F00\u59CB\u754C\u9762\u5C4F\u5E55"
|
||||
serializedVersion: 5
|
||||
m_AnimatorParameters:
|
||||
- m_Name: TV_On
|
||||
m_Type: 9
|
||||
m_DefaultFloat: 0
|
||||
m_DefaultInt: 0
|
||||
m_DefaultBool: 0
|
||||
m_Controller: {fileID: 0}
|
||||
m_AnimatorLayers:
|
||||
- serializedVersion: 5
|
||||
m_Name: Base Layer
|
||||
m_StateMachine: {fileID: 4631860417688760376}
|
||||
m_Mask: {fileID: 0}
|
||||
m_Motions: []
|
||||
m_Behaviours: []
|
||||
m_BlendingMode: 0
|
||||
m_SyncedLayerIndex: -1
|
||||
m_DefaultWeight: 0
|
||||
m_IKPass: 0
|
||||
m_SyncedLayerAffectsTiming: 0
|
||||
m_Controller: {fileID: 9100000}
|
||||
--- !u!1102 &1345902232527806134
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: "\u4EAE\u5C4F\u52A8\u753B"
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: -8172874463769248790}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 3a75a03c775ec294eae29d2d0ee44e18, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1101 &3732538502545432171
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions:
|
||||
- m_ConditionMode: 1
|
||||
m_ConditionEvent: TV_On
|
||||
m_EventTreshold: 0
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1345902232527806134}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 1
|
||||
m_HasExitTime: 0
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1107 &4631860417688760376
|
||||
AnimatorStateMachine:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Base Layer
|
||||
m_ChildStates:
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: -1577588317385944934}
|
||||
m_Position: {x: 350, y: 120, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 7048929015318248050}
|
||||
m_Position: {x: 350, y: 320, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1345902232527806134}
|
||||
m_Position: {x: 350, y: 220, z: 0}
|
||||
m_ChildStateMachines: []
|
||||
m_AnyStateTransitions: []
|
||||
m_EntryTransitions: []
|
||||
m_StateMachineTransitions: {}
|
||||
m_StateMachineBehaviours: []
|
||||
m_AnyStatePosition: {x: 50, y: 20, z: 0}
|
||||
m_EntryPosition: {x: 50, y: 120, z: 0}
|
||||
m_ExitPosition: {x: 800, y: 120, z: 0}
|
||||
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
|
||||
m_DefaultState: {fileID: -1577588317385944934}
|
||||
--- !u!1102 &7048929015318248050
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: "\u4EAE\u5C4Floop"
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions: []
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: ec60957e74bb8e14f9ec15337cfa1875, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
+5
-34
@@ -6,13 +6,13 @@ AnimatorController:
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: "\u5F00\u59CB\u754C\u9762\u5012\u5F71"
|
||||
m_Name: "\u5F00\u5C4F\u52A8\u753B"
|
||||
serializedVersion: 5
|
||||
m_AnimatorParameters: []
|
||||
m_AnimatorLayers:
|
||||
- serializedVersion: 5
|
||||
m_Name: Base Layer
|
||||
m_StateMachine: {fileID: 4631860417688760376}
|
||||
m_StateMachine: {fileID: 4243701762596640818}
|
||||
m_Mask: {fileID: 0}
|
||||
m_Motions: []
|
||||
m_Behaviours: []
|
||||
@@ -22,33 +22,7 @@ AnimatorController:
|
||||
m_IKPass: 0
|
||||
m_SyncedLayerAffectsTiming: 0
|
||||
m_Controller: {fileID: 9100000}
|
||||
--- !u!1102 &790913979767289835
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: "\u5012\u5F71loop"
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions: []
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 9cb5144aa79475e42aaf6da923ea435d, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1107 &4631860417688760376
|
||||
--- !u!1107 &4243701762596640818
|
||||
AnimatorStateMachine:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
@@ -56,10 +30,7 @@ AnimatorStateMachine:
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Base Layer
|
||||
m_ChildStates:
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 790913979767289835}
|
||||
m_Position: {x: 400, y: 120, z: 0}
|
||||
m_ChildStates: []
|
||||
m_ChildStateMachines: []
|
||||
m_AnyStateTransitions: []
|
||||
m_EntryTransitions: []
|
||||
@@ -69,4 +40,4 @@ AnimatorStateMachine:
|
||||
m_EntryPosition: {x: 50, y: 120, z: 0}
|
||||
m_ExitPosition: {x: 800, y: 120, z: 0}
|
||||
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
|
||||
m_DefaultState: {fileID: 790913979767289835}
|
||||
m_DefaultState: {fileID: 0}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 538cca96e318fe9468700ac7b9495d21
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 9100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,76 +0,0 @@
|
||||
{ "frames": {
|
||||
"开始界面倒影 0.aseprite": {
|
||||
"frame": { "x": 0, "y": 0, "w": 80, "h": 102 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 148, "y": 43, "w": 80, "h": 102 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始界面倒影 1.aseprite": {
|
||||
"frame": { "x": 80, "y": 0, "w": 80, "h": 102 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 148, "y": 43, "w": 80, "h": 102 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始界面倒影 2.aseprite": {
|
||||
"frame": { "x": 160, "y": 0, "w": 80, "h": 102 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 148, "y": 43, "w": 80, "h": 102 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始界面倒影 3.aseprite": {
|
||||
"frame": { "x": 0, "y": 102, "w": 80, "h": 102 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 148, "y": 43, "w": 80, "h": 102 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始界面倒影 4.aseprite": {
|
||||
"frame": { "x": 80, "y": 102, "w": 80, "h": 102 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 148, "y": 43, "w": 80, "h": 102 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始界面倒影 5.aseprite": {
|
||||
"frame": { "x": 160, "y": 102, "w": 80, "h": 102 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 148, "y": 43, "w": 80, "h": 102 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始界面倒影 6.aseprite": {
|
||||
"frame": { "x": 0, "y": 204, "w": 80, "h": 102 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 148, "y": 43, "w": 80, "h": 102 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
}
|
||||
},
|
||||
"meta": {
|
||||
"app": "https://www.aseprite.org/",
|
||||
"version": "1.3.17.2-x64",
|
||||
"image": "开始电视界面.png",
|
||||
"format": "RGBA8888",
|
||||
"size": { "w": 256, "h": 306 },
|
||||
"scale": "1",
|
||||
"frameTags": [
|
||||
{ "name": "倒影loop", "from": 0, "to": 6, "direction": "forward", "color": "#000000ff" }
|
||||
],
|
||||
"layers": [
|
||||
{ "name": "合并图层", "opacity": 255, "blendMode": "normal" },
|
||||
{ "name": "动画", "opacity": 255, "blendMode": "normal" }
|
||||
],
|
||||
"slices": [
|
||||
]
|
||||
}
|
||||
}
|
||||
Binary file not shown.
@@ -1,320 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e6b37dcb143583d43963b1bc8692bed6
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 12
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 2
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 20
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 512
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Server
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites:
|
||||
- serializedVersion: 2
|
||||
name: "\u5F00\u59CB\u754C\u9762\u5012\u5F71 0.aseprite"
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 204
|
||||
width: 80
|
||||
height: 102
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: c94033fea3f0e0c4ba9ef01078d3156b
|
||||
internalID: -1742218470230028808
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: "\u5F00\u59CB\u754C\u9762\u5012\u5F71 1.aseprite"
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 80
|
||||
y: 204
|
||||
width: 80
|
||||
height: 102
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 7f585fac7b9f327458fb5c06064b15d6
|
||||
internalID: -5764350979678766904
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: "\u5F00\u59CB\u754C\u9762\u5012\u5F71 2.aseprite"
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 160
|
||||
y: 204
|
||||
width: 80
|
||||
height: 102
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 6e31bf4dcc789dc4d82dcb4850de77cd
|
||||
internalID: -3295365977225587294
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: "\u5F00\u59CB\u754C\u9762\u5012\u5F71 3.aseprite"
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 102
|
||||
width: 80
|
||||
height: 102
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: baa53de3a697ef643822009bd1d7800f
|
||||
internalID: -7725913967403012872
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: "\u5F00\u59CB\u754C\u9762\u5012\u5F71 4.aseprite"
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 80
|
||||
y: 102
|
||||
width: 80
|
||||
height: 102
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 62d093f75852fa847b1b71b49d2dd6eb
|
||||
internalID: 6171193435392098681
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: "\u5F00\u59CB\u754C\u9762\u5012\u5F71 5.aseprite"
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 160
|
||||
y: 102
|
||||
width: 80
|
||||
height: 102
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 6fdca7d8110c2b54dbe583f63ec2fac1
|
||||
internalID: 4940328948751707141
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: "\u5F00\u59CB\u754C\u9762\u5012\u5F71 6.aseprite"
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 80
|
||||
height: 102
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: d57723ef06eb3664fac970fa26a8da39
|
||||
internalID: -3388567071384404738
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable:
|
||||
"\u5F00\u59CB\u754C\u9762\u5012\u5F71 0.aseprite": -1742218470230028808
|
||||
"\u5F00\u59CB\u754C\u9762\u5012\u5F71 1.aseprite": -5764350979678766904
|
||||
"\u5F00\u59CB\u754C\u9762\u5012\u5F71 2.aseprite": -3295365977225587294
|
||||
"\u5F00\u59CB\u754C\u9762\u5012\u5F71 3.aseprite": -7725913967403012872
|
||||
"\u5F00\u59CB\u754C\u9762\u5012\u5F71 4.aseprite": 6171193435392098681
|
||||
"\u5F00\u59CB\u754C\u9762\u5012\u5F71 5.aseprite": 4940328948751707141
|
||||
"\u5F00\u59CB\u754C\u9762\u5012\u5F71 6.aseprite": -3388567071384404738
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,337 @@
|
||||
{ "frames": {
|
||||
"开始电视界面(1) 0.aseprite": {
|
||||
"frame": { "x": 0, "y": 0, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 1.aseprite": {
|
||||
"frame": { "x": 160, "y": 0, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 2.aseprite": {
|
||||
"frame": { "x": 320, "y": 0, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 3.aseprite": {
|
||||
"frame": { "x": 480, "y": 0, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 4.aseprite": {
|
||||
"frame": { "x": 640, "y": 0, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 5.aseprite": {
|
||||
"frame": { "x": 800, "y": 0, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 6.aseprite": {
|
||||
"frame": { "x": 0, "y": 128, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 7.aseprite": {
|
||||
"frame": { "x": 160, "y": 128, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 8.aseprite": {
|
||||
"frame": { "x": 320, "y": 128, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 30
|
||||
},
|
||||
"开始电视界面(1) 9.aseprite": {
|
||||
"frame": { "x": 480, "y": 128, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 30
|
||||
},
|
||||
"开始电视界面(1) 10.aseprite": {
|
||||
"frame": { "x": 640, "y": 128, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 30
|
||||
},
|
||||
"开始电视界面(1) 11.aseprite": {
|
||||
"frame": { "x": 800, "y": 128, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 15
|
||||
},
|
||||
"开始电视界面(1) 12.aseprite": {
|
||||
"frame": { "x": 0, "y": 256, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 15
|
||||
},
|
||||
"开始电视界面(1) 13.aseprite": {
|
||||
"frame": { "x": 160, "y": 256, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 30
|
||||
},
|
||||
"开始电视界面(1) 14.aseprite": {
|
||||
"frame": { "x": 320, "y": 256, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 30
|
||||
},
|
||||
"开始电视界面(1) 15.aseprite": {
|
||||
"frame": { "x": 480, "y": 256, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 30
|
||||
},
|
||||
"开始电视界面(1) 16.aseprite": {
|
||||
"frame": { "x": 640, "y": 256, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 30
|
||||
},
|
||||
"开始电视界面(1) 17.aseprite": {
|
||||
"frame": { "x": 800, "y": 256, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 30
|
||||
},
|
||||
"开始电视界面(1) 18.aseprite": {
|
||||
"frame": { "x": 0, "y": 384, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 30
|
||||
},
|
||||
"开始电视界面(1) 19.aseprite": {
|
||||
"frame": { "x": 160, "y": 384, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 30
|
||||
},
|
||||
"开始电视界面(1) 20.aseprite": {
|
||||
"frame": { "x": 320, "y": 384, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 21.aseprite": {
|
||||
"frame": { "x": 480, "y": 384, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 22.aseprite": {
|
||||
"frame": { "x": 640, "y": 384, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 23.aseprite": {
|
||||
"frame": { "x": 800, "y": 384, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 24.aseprite": {
|
||||
"frame": { "x": 0, "y": 512, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 25.aseprite": {
|
||||
"frame": { "x": 160, "y": 512, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 26.aseprite": {
|
||||
"frame": { "x": 320, "y": 512, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 27.aseprite": {
|
||||
"frame": { "x": 480, "y": 512, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 28.aseprite": {
|
||||
"frame": { "x": 640, "y": 512, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 29.aseprite": {
|
||||
"frame": { "x": 800, "y": 512, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 30.aseprite": {
|
||||
"frame": { "x": 0, "y": 640, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 31.aseprite": {
|
||||
"frame": { "x": 160, "y": 640, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 32.aseprite": {
|
||||
"frame": { "x": 320, "y": 640, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 33.aseprite": {
|
||||
"frame": { "x": 480, "y": 640, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 34.aseprite": {
|
||||
"frame": { "x": 640, "y": 640, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 35.aseprite": {
|
||||
"frame": { "x": 800, "y": 640, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 36.aseprite": {
|
||||
"frame": { "x": 0, "y": 768, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 37.aseprite": {
|
||||
"frame": { "x": 160, "y": 768, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
},
|
||||
"开始电视界面(1) 38.aseprite": {
|
||||
"frame": { "x": 320, "y": 768, "w": 160, "h": 128 },
|
||||
"rotated": false,
|
||||
"trimmed": true,
|
||||
"spriteSourceSize": { "x": 112, "y": 32, "w": 160, "h": 128 },
|
||||
"sourceSize": { "w": 384, "h": 216 },
|
||||
"duration": 300
|
||||
}
|
||||
},
|
||||
"meta": {
|
||||
"app": "https://www.aseprite.org/",
|
||||
"version": "1.3.17.2-x64",
|
||||
"image": "开始电视屏幕.png",
|
||||
"format": "RGBA8888",
|
||||
"size": { "w": 1024, "h": 896 },
|
||||
"scale": "1",
|
||||
"frameTags": [
|
||||
{ "name": "亮屏动画", "from": 0, "to": 24, "direction": "forward", "color": "#000000ff" },
|
||||
{ "name": "亮屏loop", "from": 25, "to": 31, "direction": "forward", "color": "#000000ff" },
|
||||
{ "name": "倒影loop", "from": 32, "to": 38, "direction": "forward", "color": "#000000ff" }
|
||||
],
|
||||
"layers": [
|
||||
{ "name": "动画", "opacity": 255, "blendMode": "normal" },
|
||||
{ "name": "半透", "opacity": 179, "blendMode": "normal" },
|
||||
{ "name": "亮屏", "opacity": 135, "blendMode": "color_dodge" },
|
||||
{ "name": "亮屏B", "opacity": 255, "blendMode": "color_dodge" },
|
||||
{ "name": "亮屏B 复制", "opacity": 255, "blendMode": "color_dodge" }
|
||||
],
|
||||
"slices": [
|
||||
]
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 70919c281cb00eb4dab26d2000292425
|
||||
guid: 8004c15d9c939574bacb081c36991f0c
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -1053,6 +1053,7 @@ GameObject:
|
||||
- component: {fileID: 6205916594876141295}
|
||||
- component: {fileID: 7869115368522661861}
|
||||
- component: {fileID: 3469418760292733387}
|
||||
- component: {fileID: 3469418760292733388}
|
||||
m_Layer: 0
|
||||
m_Name: < Button
|
||||
m_TagString: Untagged
|
||||
@@ -1167,6 +1168,18 @@ MonoBehaviour:
|
||||
onStateTransition:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!114 &3469418760292733388
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3287442686753485554}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c4e8f2a19b3d47658e0f1a2b3c4d5e6f, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &3870454585511995554
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -1179,6 +1192,7 @@ GameObject:
|
||||
- component: {fileID: 4356273674151839268}
|
||||
- component: {fileID: 3025403663481808802}
|
||||
- component: {fileID: 3189088484011772765}
|
||||
- component: {fileID: 3189088484011772766}
|
||||
m_Layer: 0
|
||||
m_Name: '> Button'
|
||||
m_TagString: Untagged
|
||||
@@ -1293,6 +1307,18 @@ MonoBehaviour:
|
||||
onStateTransition:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!114 &3189088484011772766
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3870454585511995554}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c4e8f2a19b3d47658e0f1a2b3c4d5e6f, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &4545690484842323913
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
@@ -11,6 +11,7 @@ GameObject:
|
||||
- component: {fileID: 7835984298058520967}
|
||||
- component: {fileID: 1609702765442850283}
|
||||
- component: {fileID: 7824289977680254835}
|
||||
- component: {fileID: 2847364519283746190}
|
||||
m_Layer: 0
|
||||
m_Name: Text
|
||||
m_TagString: Untagged
|
||||
@@ -134,6 +135,46 @@ MonoBehaviour:
|
||||
m_hasFontAssetChanged: 0
|
||||
m_baseMaterial: {fileID: 0}
|
||||
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
|
||||
--- !u!114 &2847364519283746190
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3741443766353379355}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 56eb0353ae6e5124bb35b17aff880f16, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_StringReference:
|
||||
m_TableReference:
|
||||
m_TableCollectionName:
|
||||
m_TableEntryReference:
|
||||
m_KeyId: 0
|
||||
m_Key:
|
||||
m_FallbackState: 0
|
||||
m_WaitForCompletion: 0
|
||||
m_LocalVariables: []
|
||||
m_FormatArguments: []
|
||||
m_UpdateString:
|
||||
m_PersistentCalls:
|
||||
m_Calls:
|
||||
- m_Target: {fileID: 7824289977680254835}
|
||||
m_TargetAssemblyTypeName: TMPro.TMP_Text, Unity.TextMeshPro
|
||||
m_MethodName: set_text
|
||||
m_Mode: 0
|
||||
m_Arguments:
|
||||
m_ObjectArgument: {fileID: 0}
|
||||
m_ObjectArgumentAssemblyTypeName:
|
||||
m_IntArgument: 0
|
||||
m_FloatArgument: 0
|
||||
m_StringArgument:
|
||||
m_BoolArgument: 0
|
||||
m_CallState: 1
|
||||
references:
|
||||
version: 2
|
||||
RefIds: []
|
||||
--- !u!1 &5803930194917653799
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -146,6 +187,7 @@ GameObject:
|
||||
- component: {fileID: 813550245757536296}
|
||||
- component: {fileID: 2349484527078911041}
|
||||
- component: {fileID: 7511681537542705576}
|
||||
- component: {fileID: 7511681537542705577}
|
||||
m_Layer: 5
|
||||
m_Name: Right Btn
|
||||
m_TagString: Untagged
|
||||
@@ -219,7 +261,7 @@ MonoBehaviour:
|
||||
m_GameObject: {fileID: 5803930194917653799}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
||||
m_Script: {fileID: 11500000, guid: f5702aa38bfd4746aecc799b153aab91, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
@@ -254,6 +296,21 @@ MonoBehaviour:
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
onStateTransition:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!114 &7511681537542705577
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5803930194917653799}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c4e8f2a19b3d47658e0f1a2b3c4d5e6f, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &7684576435073937010
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -266,6 +323,7 @@ GameObject:
|
||||
- component: {fileID: 6266102391853274815}
|
||||
- component: {fileID: 2430117081551875153}
|
||||
- component: {fileID: 4277087511383866260}
|
||||
- component: {fileID: 4277087511383866261}
|
||||
m_Layer: 5
|
||||
m_Name: Left Btn
|
||||
m_TagString: Untagged
|
||||
@@ -339,7 +397,7 @@ MonoBehaviour:
|
||||
m_GameObject: {fileID: 7684576435073937010}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
||||
m_Script: {fileID: 11500000, guid: f5702aa38bfd4746aecc799b153aab91, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
@@ -374,6 +432,21 @@ MonoBehaviour:
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
onStateTransition:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!114 &4277087511383866261
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 7684576435073937010}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c4e8f2a19b3d47658e0f1a2b3c4d5e6f, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &8626785295523857742
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -526,7 +599,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &1952951550192367178
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -581,7 +654,7 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
canvasGroup: {fileID: 4638119140970039337}
|
||||
sweep: {fileID: 0}
|
||||
visibleAlpha: 0.6
|
||||
visibleAlpha: 0.8
|
||||
fadeDuration: 0.06
|
||||
showEase: 1
|
||||
hideEase: 1
|
||||
@@ -604,6 +677,7 @@ MonoBehaviour:
|
||||
rightPreview: {fileID: 8065397976120885801}
|
||||
emptyText: {fileID: 574046667114464224}
|
||||
selectedTitleText: {fileID: 7824289977680254835}
|
||||
selectedTitleLocalize: {fileID: 2847364519283746190}
|
||||
previousButton: {fileID: 4277087511383866260}
|
||||
nextButton: {fileID: 7511681537542705576}
|
||||
restartButton: {fileID: 3594820709225083917}
|
||||
@@ -620,6 +694,14 @@ PrefabInstance:
|
||||
propertyPath: m_TextStyleHashCode
|
||||
value: -1183493901
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 784966545828546719, guid: 0cd2a5465a324934b94d942c359a0d54, type: 3}
|
||||
propertyPath: previewScale
|
||||
value: 0.7
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 784966545828546719, guid: 0cd2a5465a324934b94d942c359a0d54, type: 3}
|
||||
propertyPath: selectedScale
|
||||
value: 1.2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5248373505395237910, guid: 0cd2a5465a324934b94d942c359a0d54, type: 3}
|
||||
propertyPath: m_TextStyleHashCode
|
||||
value: -1183493901
|
||||
@@ -745,6 +827,14 @@ PrefabInstance:
|
||||
propertyPath: m_TextStyleHashCode
|
||||
value: -1183493901
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 784966545828546719, guid: 0cd2a5465a324934b94d942c359a0d54, type: 3}
|
||||
propertyPath: previewScale
|
||||
value: 0.7
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 784966545828546719, guid: 0cd2a5465a324934b94d942c359a0d54, type: 3}
|
||||
propertyPath: selectedScale
|
||||
value: 1.2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5248373505395237910, guid: 0cd2a5465a324934b94d942c359a0d54, type: 3}
|
||||
propertyPath: m_TextStyleHashCode
|
||||
value: -1183493901
|
||||
@@ -874,6 +964,14 @@ PrefabInstance:
|
||||
propertyPath: m_TextStyleHashCode
|
||||
value: -1183493901
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 784966545828546719, guid: 0cd2a5465a324934b94d942c359a0d54, type: 3}
|
||||
propertyPath: previewScale
|
||||
value: 0.7
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 784966545828546719, guid: 0cd2a5465a324934b94d942c359a0d54, type: 3}
|
||||
propertyPath: selectedScale
|
||||
value: 1.2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5248373505395237910, guid: 0cd2a5465a324934b94d942c359a0d54, type: 3}
|
||||
propertyPath: m_TextStyleHashCode
|
||||
value: -1183493901
|
||||
|
||||
@@ -18,7 +18,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &7841453849035343617
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -172,6 +172,7 @@ GameObject:
|
||||
- component: {fileID: 8216863522337051433}
|
||||
- component: {fileID: 6843177337402118534}
|
||||
- component: {fileID: 2489426152821454419}
|
||||
- component: {fileID: 1647725807011906299}
|
||||
m_Layer: 0
|
||||
m_Name: Text
|
||||
m_TagString: Untagged
|
||||
@@ -196,7 +197,7 @@ RectTransform:
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: -511, y: 352}
|
||||
m_SizeDelta: {x: 0, y: 70}
|
||||
m_SizeDelta: {x: 233.33, y: 70}
|
||||
m_Pivot: {x: 0, y: 0.5}
|
||||
--- !u!222 &8216863522337051433
|
||||
CanvasRenderer:
|
||||
@@ -226,7 +227,7 @@ MonoBehaviour:
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_text: "\u8BF7\u9009\u62E9\u64CD\u4F5C"
|
||||
m_text: "\u7B49\u5F85\u6307\u4EE4"
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2}
|
||||
m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2}
|
||||
@@ -309,6 +310,46 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
m_HorizontalFit: 2
|
||||
m_VerticalFit: 0
|
||||
--- !u!114 &1647725807011906299
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5255407292566449483}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 56eb0353ae6e5124bb35b17aff880f16, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_StringReference:
|
||||
m_TableReference:
|
||||
m_TableCollectionName: GUID:994c69bf4b2403043bc9562f2d24ee56
|
||||
m_TableEntryReference:
|
||||
m_KeyId: 158091825673920512
|
||||
m_Key:
|
||||
m_FallbackState: 0
|
||||
m_WaitForCompletion: 0
|
||||
m_LocalVariables: []
|
||||
m_FormatArguments: []
|
||||
m_UpdateString:
|
||||
m_PersistentCalls:
|
||||
m_Calls:
|
||||
- m_Target: {fileID: 6843177337402118534}
|
||||
m_TargetAssemblyTypeName: TMPro.TMP_Text, Unity.TextMeshPro
|
||||
m_MethodName: set_text
|
||||
m_Mode: 0
|
||||
m_Arguments:
|
||||
m_ObjectArgument: {fileID: 0}
|
||||
m_ObjectArgumentAssemblyTypeName:
|
||||
m_IntArgument: 0
|
||||
m_FloatArgument: 0
|
||||
m_StringArgument:
|
||||
m_BoolArgument: 0
|
||||
m_CallState: 1
|
||||
references:
|
||||
version: 2
|
||||
RefIds: []
|
||||
--- !u!1001 &2694543332249228856
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -319,35 +360,35 @@ PrefabInstance:
|
||||
m_Modifications:
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 335
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 445
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5654956763089875896, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_Name
|
||||
@@ -367,7 +408,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.x
|
||||
@@ -375,7 +416,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -415,11 +456,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 500
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -150
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
@@ -546,6 +587,30 @@ PrefabInstance:
|
||||
propertyPath: defaultLabel
|
||||
value: setting_quit
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: hoverBackgroundColor.b
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: hoverBackgroundColor.g
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: hoverBackgroundColor.r
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: normalForegroundColor.b
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: normalForegroundColor.g
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: normalForegroundColor.r
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8624692270890072311, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: QuitButton
|
||||
@@ -581,35 +646,35 @@ PrefabInstance:
|
||||
m_Modifications:
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 335
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 445
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5654956763089875896, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_Name
|
||||
@@ -629,7 +694,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.x
|
||||
@@ -637,7 +702,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -677,11 +742,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 500
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -210
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
@@ -726,35 +791,35 @@ PrefabInstance:
|
||||
m_Modifications:
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 335
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 445
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5654956763089875896, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_Name
|
||||
@@ -774,7 +839,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.x
|
||||
@@ -782,7 +847,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -822,11 +887,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 500
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -90
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
@@ -953,6 +1018,30 @@ PrefabInstance:
|
||||
propertyPath: defaultLabel
|
||||
value: setting_continue
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: hoverBackgroundColor.b
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: hoverBackgroundColor.g
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: hoverBackgroundColor.r
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: normalForegroundColor.b
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: normalForegroundColor.g
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: normalForegroundColor.r
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8624692270890072311, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: ContinueButton
|
||||
@@ -1070,6 +1159,30 @@ PrefabInstance:
|
||||
propertyPath: defaultLabel
|
||||
value: setting_mainMenu
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: hoverBackgroundColor.b
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: hoverBackgroundColor.g
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: hoverBackgroundColor.r
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: normalForegroundColor.b
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: normalForegroundColor.g
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8265843593356152544, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: normalForegroundColor.r
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8624692270890072311, guid: 24e2d015600209249867f62b2e07b9a9, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: MainManuButton
|
||||
@@ -1117,7 +1230,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMin.x
|
||||
@@ -1125,7 +1238,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -1165,11 +1278,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 500
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -30
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
@@ -1185,27 +1298,27 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163567057521848681, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163567057521848681, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163567057521848681, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 335
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163567057521848681, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -30
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1425762017047074178, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2580959752204425430, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2949357837247552342, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_Name
|
||||
@@ -1213,35 +1326,35 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5952270497693892333, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5952270497693892333, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5952270497693892333, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 435
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5952270497693892333, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -30
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6732691262169134867, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6732691262169134867, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6732691262169134867, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 735
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6732691262169134867, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -30
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
|
||||
@@ -18,7 +18,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &270038765062520215
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -67,7 +67,7 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
canvasGroup: {fileID: 2695752103100139348}
|
||||
sweep: {fileID: 0}
|
||||
visibleAlpha: 0.6
|
||||
visibleAlpha: 0.8
|
||||
fadeDuration: 0.06
|
||||
showEase: 1
|
||||
hideEase: 1
|
||||
@@ -170,6 +170,7 @@ GameObject:
|
||||
- component: {fileID: 2722517140198208553}
|
||||
- component: {fileID: 1938273992031414911}
|
||||
- component: {fileID: 4886813629240367925}
|
||||
- component: {fileID: 769321914652070386}
|
||||
m_Layer: 0
|
||||
m_Name: Text
|
||||
m_TagString: Untagged
|
||||
@@ -194,7 +195,7 @@ RectTransform:
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: -423, y: 151}
|
||||
m_SizeDelta: {x: 0, y: 70}
|
||||
m_SizeDelta: {x: 186.67, y: 70}
|
||||
m_Pivot: {x: 0, y: 0.5}
|
||||
--- !u!222 &2722517140198208553
|
||||
CanvasRenderer:
|
||||
@@ -224,7 +225,7 @@ MonoBehaviour:
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_text: "\u8BF7\u9009\u62E9\u64CD\u4F5C"
|
||||
m_text: "\u7B49\u5F85\u6307\u4EE4"
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2}
|
||||
m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2}
|
||||
@@ -307,6 +308,46 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
m_HorizontalFit: 2
|
||||
m_VerticalFit: 0
|
||||
--- !u!114 &769321914652070386
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5746768212615024148}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 56eb0353ae6e5124bb35b17aff880f16, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_StringReference:
|
||||
m_TableReference:
|
||||
m_TableCollectionName: GUID:994c69bf4b2403043bc9562f2d24ee56
|
||||
m_TableEntryReference:
|
||||
m_KeyId: 158091825673920512
|
||||
m_Key:
|
||||
m_FallbackState: 0
|
||||
m_WaitForCompletion: 0
|
||||
m_LocalVariables: []
|
||||
m_FormatArguments: []
|
||||
m_UpdateString:
|
||||
m_PersistentCalls:
|
||||
m_Calls:
|
||||
- m_Target: {fileID: 1938273992031414911}
|
||||
m_TargetAssemblyTypeName: TMPro.TMP_Text, Unity.TextMeshPro
|
||||
m_MethodName: set_text
|
||||
m_Mode: 0
|
||||
m_Arguments:
|
||||
m_ObjectArgument: {fileID: 0}
|
||||
m_ObjectArgumentAssemblyTypeName:
|
||||
m_IntArgument: 0
|
||||
m_FloatArgument: 0
|
||||
m_StringArgument:
|
||||
m_BoolArgument: 0
|
||||
m_CallState: 1
|
||||
references:
|
||||
version: 2
|
||||
RefIds: []
|
||||
--- !u!1001 &63624482169889023
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -317,11 +358,11 @@ PrefabInstance:
|
||||
m_Modifications:
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -329,11 +370,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 255
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1377516604571534447, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_Colors.m_NormalColor.b
|
||||
@@ -361,19 +402,19 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 365
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4099831927643554877, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: normalTextColor.b
|
||||
@@ -449,7 +490,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.x
|
||||
@@ -457,7 +498,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -497,11 +538,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 400
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -75
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
@@ -558,11 +599,11 @@ PrefabInstance:
|
||||
m_Modifications:
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -570,11 +611,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 255
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1377516604571534447, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_Colors.m_NormalColor.b
|
||||
@@ -602,19 +643,19 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 365
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4099831927643554877, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: normalTextColor.b
|
||||
@@ -690,7 +731,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.x
|
||||
@@ -698,7 +739,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -738,11 +779,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 400
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -175
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
@@ -799,11 +840,11 @@ PrefabInstance:
|
||||
m_Modifications:
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -811,11 +852,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 255
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1377516604571534447, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_Colors.m_NormalColor.b
|
||||
@@ -843,19 +884,19 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 365
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2806314693394340526, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -50
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4099831927643554877, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: normalTextColor.b
|
||||
@@ -931,7 +972,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.x
|
||||
@@ -939,7 +980,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -979,11 +1020,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 400
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -125
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
@@ -1177,7 +1218,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMin.x
|
||||
@@ -1185,7 +1226,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -1225,11 +1266,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 400
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -25
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
@@ -1245,11 +1286,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163567057521848681, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163567057521848681, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163567057521848681, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
@@ -1257,19 +1298,19 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163567057521848681, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 285
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163567057521848681, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -25
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1425762017047074178, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2580959752204425430, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2949357837247552342, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_Name
|
||||
@@ -1293,19 +1334,19 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5952270497693892333, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5952270497693892333, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5952270497693892333, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 385
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5952270497693892333, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -25
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6338673825785440556, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_fontSize
|
||||
@@ -1317,19 +1358,19 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6732691262169134867, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6732691262169134867, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6732691262169134867, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
value: 685
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6732691262169134867, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
value: -25
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6885231114081803451, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: normalTextColor.b
|
||||
|
||||
@@ -18,7 +18,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &7438285968165713692
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -66,7 +66,7 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
canvasGroup: {fileID: 5054907813288028710}
|
||||
sweep: {fileID: 0}
|
||||
visibleAlpha: 0.88
|
||||
visibleAlpha: 0.8
|
||||
fadeDuration: 0.06
|
||||
showEase: 1
|
||||
hideEase: 1
|
||||
@@ -84,6 +84,7 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
panelAnimator: {fileID: 8079937215328985049}
|
||||
continueGameItem: {fileID: 2935971214112155073}
|
||||
newGameItem: {fileID: 2961821439188078232}
|
||||
chapterItem: {fileID: 5260990208835667301}
|
||||
settingItem: {fileID: 6581156212110220539}
|
||||
@@ -117,6 +118,7 @@ RectTransform:
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 8908317031301549435}
|
||||
- {fileID: 8792321215488779810}
|
||||
- {fileID: 1881611700521840095}
|
||||
- {fileID: 597553590508762177}
|
||||
@@ -125,7 +127,7 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: -15, y: 0}
|
||||
m_SizeDelta: {x: 900, y: 200}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &8989213026715729631
|
||||
@@ -166,6 +168,7 @@ GameObject:
|
||||
- component: {fileID: 2033648784800507617}
|
||||
- component: {fileID: 4929357139027346919}
|
||||
- component: {fileID: 1264676862133322555}
|
||||
- component: {fileID: 3533382542595806498}
|
||||
m_Layer: 0
|
||||
m_Name: Text
|
||||
m_TagString: Untagged
|
||||
@@ -220,7 +223,7 @@ MonoBehaviour:
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_text: "\u8BF7\u9009\u62E9\u64CD\u4F5C"
|
||||
m_text: "\u7B49\u5F85\u6307\u4EE4"
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: f242fb3dde1933640859f1c54591c9c8, type: 2}
|
||||
m_sharedMaterial: {fileID: -6659093157667844055, guid: f242fb3dde1933640859f1c54591c9c8, type: 2}
|
||||
@@ -229,8 +232,8 @@ MonoBehaviour:
|
||||
m_fontMaterials: []
|
||||
m_fontColor32:
|
||||
serializedVersion: 2
|
||||
rgba: 4294967295
|
||||
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
rgba: 4284713133
|
||||
m_fontColor: {r: 0.6784314, g: 0.53333336, b: 0.3882353, a: 1}
|
||||
m_enableVertexGradient: 0
|
||||
m_colorMode: 3
|
||||
m_fontColorGradient:
|
||||
@@ -303,6 +306,46 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
m_HorizontalFit: 2
|
||||
m_VerticalFit: 0
|
||||
--- !u!114 &3533382542595806498
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5999397872723085043}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 56eb0353ae6e5124bb35b17aff880f16, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_StringReference:
|
||||
m_TableReference:
|
||||
m_TableCollectionName: GUID:994c69bf4b2403043bc9562f2d24ee56
|
||||
m_TableEntryReference:
|
||||
m_KeyId: 158091825673920512
|
||||
m_Key:
|
||||
m_FallbackState: 0
|
||||
m_WaitForCompletion: 0
|
||||
m_LocalVariables: []
|
||||
m_FormatArguments: []
|
||||
m_UpdateString:
|
||||
m_PersistentCalls:
|
||||
m_Calls:
|
||||
- m_Target: {fileID: 4929357139027346919}
|
||||
m_TargetAssemblyTypeName: TMPro.TMP_Text, Unity.TextMeshPro
|
||||
m_MethodName: set_text
|
||||
m_Mode: 0
|
||||
m_Arguments:
|
||||
m_ObjectArgument: {fileID: 0}
|
||||
m_ObjectArgumentAssemblyTypeName:
|
||||
m_IntArgument: 0
|
||||
m_FloatArgument: 0
|
||||
m_StringArgument:
|
||||
m_BoolArgument: 0
|
||||
m_CallState: 1
|
||||
references:
|
||||
version: 2
|
||||
RefIds: []
|
||||
--- !u!1001 &24887019556815044
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -417,7 +460,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 1037.5
|
||||
value: 800
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
@@ -634,7 +677,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 1037.5
|
||||
value: 800
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
@@ -847,7 +890,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 1037.5
|
||||
value: 800
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
@@ -1056,7 +1099,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 1037.5
|
||||
value: 800
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
@@ -1179,3 +1222,204 @@ RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
m_PrefabInstance: {fileID: 6935579488016632633}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &7053774357552423008
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 2174456505064790880}
|
||||
m_Modifications:
|
||||
- target: {fileID: 1026579172205415468, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: TerminalMenuItem (1)
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1095041587756714077, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_text
|
||||
value: 'Current date: 04/2020'
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1095041587756714077, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_TextStyleHashCode
|
||||
value: -1183493901
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1124158456638716387, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_TextStyleHashCode
|
||||
value: -1183493901
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1399044041289847539, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1399044041289847539, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1399044041289847539, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1399044041289847539, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_Pivot.x
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_Pivot.y
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchorMax.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchorMin.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 800
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
value: 45
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalScale.x
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalScale.y
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalScale.z
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2547177344942947685, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2547177344942947685, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2547177344942947685, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2547177344942947685, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3742108334930405387, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3901933801489087140, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3901933801489087140, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3901933801489087140, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3901933801489087140, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4310710148504387072, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_text
|
||||
value: pending
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4310710148504387072, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_TextStyleHashCode
|
||||
value: -1183493901
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7711115893422081214, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
--- !u!114 &2935971214112155073 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 5285713190700090785, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
m_PrefabInstance: {fileID: 7053774357552423008}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 3a0e6ed6ad106344d89dba7dba31efba, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!224 &8908317031301549435 stripped
|
||||
RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 1892841443481971995, guid: d3a721fac7be7fa4895e890f9be45e70, type: 3}
|
||||
m_PrefabInstance: {fileID: 7053774357552423008}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
%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: d6fa2d92fc1b3f34da284357edf89c3b, type: 3}
|
||||
m_Name: TVOnSignal
|
||||
m_EditorClassIdentifier:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0f725e5af8de7f944b3402514a4be355
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,517 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &-7724491264856616267
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 1
|
||||
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: b46e36075dd1c124a8422c228e75e1fb, type: 3}
|
||||
m_Name: Signal Track
|
||||
m_EditorClassIdentifier:
|
||||
m_Version: 3
|
||||
m_AnimClip: {fileID: 0}
|
||||
m_Locked: 0
|
||||
m_Muted: 0
|
||||
m_CustomPlayableFullTypename:
|
||||
m_Curves: {fileID: 0}
|
||||
m_Parent: {fileID: 11400000}
|
||||
m_Children: []
|
||||
m_Clips: []
|
||||
m_Markers:
|
||||
m_Objects:
|
||||
- {fileID: 3548559168146922769}
|
||||
--- !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: bfda56da833e2384a9677cd3c976a436, type: 3}
|
||||
m_Name: "\u6309\u4EFB\u610F\u952E\u5F00\u59CB"
|
||||
m_EditorClassIdentifier:
|
||||
m_Version: 0
|
||||
m_Tracks:
|
||||
- {fileID: 3995914538100974027}
|
||||
- {fileID: -7724491264856616267}
|
||||
m_FixedDuration: 0
|
||||
m_EditorSettings:
|
||||
m_Framerate: 60
|
||||
m_ScenePreview: 1
|
||||
m_DurationMode: 0
|
||||
m_MarkerTrack: {fileID: 0}
|
||||
--- !u!74 &762495019060593801
|
||||
AnimationClip:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Recorded
|
||||
serializedVersion: 7
|
||||
m_Legacy: 0
|
||||
m_Compressed: 0
|
||||
m_UseHighQualityCurve: 1
|
||||
m_RotationCurves: []
|
||||
m_CompressedRotationCurves: []
|
||||
m_EulerCurves: []
|
||||
m_PositionCurves: []
|
||||
m_ScaleCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0.5
|
||||
value: {x: 1, y: 1, z: 1}
|
||||
inSlope: {x: 0.060435083, y: 0.02182417, z: 0.39957127}
|
||||
outSlope: {x: 0.060435083, y: 0.02182417, z: 0.39957127}
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
outWeight: {x: 0.10597792, y: 0.11588226, z: 0.06940096}
|
||||
- serializedVersion: 3
|
||||
time: 1.0833334
|
||||
value: {x: 1.1604114, y: 1.1599377, z: 1.1957802}
|
||||
inSlope: {x: 0.31671682, y: 0.31347114, z: 0.2739133}
|
||||
outSlope: {x: 0.31671682, y: 0.31347114, z: 0.2739133}
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
outWeight: {x: 0.12085495, y: 0.1208475, z: 0.33333334}
|
||||
- serializedVersion: 3
|
||||
time: 2.6666667
|
||||
value: {x: 1.4, y: 1.4, z: 1.4}
|
||||
inSlope: {x: -0.001414268, y: 0.0026851257, z: 0.0005388909}
|
||||
outSlope: {x: -0.001414268, y: 0.0026851257, z: 0.0005388909}
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: {x: 0.30310845, y: 0.2758778, z: 0.28949317}
|
||||
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
- serializedVersion: 3
|
||||
time: 3.1666667
|
||||
value: {x: 1.4, y: 1.4, z: 1.4}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
path:
|
||||
m_FloatCurves:
|
||||
- serializedVersion: 2
|
||||
curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 1
|
||||
inSlope: Infinity
|
||||
outSlope: Infinity
|
||||
tangentMode: 103
|
||||
weightedMode: 0
|
||||
inWeight: 0
|
||||
outWeight: 0
|
||||
- serializedVersion: 3
|
||||
time: 0.16666667
|
||||
value: 0
|
||||
inSlope: Infinity
|
||||
outSlope: Infinity
|
||||
tangentMode: 103
|
||||
weightedMode: 0
|
||||
inWeight: 0
|
||||
outWeight: 0
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_IsActive
|
||||
path: "\u6309\u4EFB\u610F\u952E\u5F00\u59CB"
|
||||
classID: 1
|
||||
script: {fileID: 0}
|
||||
flags: 0
|
||||
- serializedVersion: 2
|
||||
curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0.5
|
||||
value: 0.27920532
|
||||
inSlope: 1.273561
|
||||
outSlope: 1.273561
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.5501108
|
||||
- serializedVersion: 3
|
||||
time: 1.0833334
|
||||
value: -46.16314
|
||||
inSlope: -103.29945
|
||||
outSlope: -103.29945
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.13115591
|
||||
- serializedVersion: 3
|
||||
time: 2.6666667
|
||||
value: -127
|
||||
inSlope: -2.2009084
|
||||
outSlope: -2.2009084
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.23604615
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 3.1666667
|
||||
value: -127
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_AnchoredPosition.y
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
flags: 0
|
||||
m_PPtrCurves: []
|
||||
m_SampleRate: 60
|
||||
m_WrapMode: 0
|
||||
m_Bounds:
|
||||
m_Center: {x: 0, y: 0, z: 0}
|
||||
m_Extent: {x: 0, y: 0, z: 0}
|
||||
m_ClipBindingConstant:
|
||||
genericBindings:
|
||||
- serializedVersion: 2
|
||||
path: 0
|
||||
attribute: 3
|
||||
script: {fileID: 0}
|
||||
typeID: 4
|
||||
customType: 0
|
||||
isPPtrCurve: 0
|
||||
isIntCurve: 0
|
||||
isSerializeReferenceCurve: 0
|
||||
- serializedVersion: 2
|
||||
path: 954205778
|
||||
attribute: 2086281974
|
||||
script: {fileID: 0}
|
||||
typeID: 1
|
||||
customType: 0
|
||||
isPPtrCurve: 0
|
||||
isIntCurve: 0
|
||||
isSerializeReferenceCurve: 0
|
||||
- serializedVersion: 2
|
||||
path: 0
|
||||
attribute: 538195251
|
||||
script: {fileID: 0}
|
||||
typeID: 224
|
||||
customType: 28
|
||||
isPPtrCurve: 0
|
||||
isIntCurve: 0
|
||||
isSerializeReferenceCurve: 0
|
||||
pptrCurveMapping: []
|
||||
m_AnimationClipSettings:
|
||||
serializedVersion: 2
|
||||
m_AdditiveReferencePoseClip: {fileID: 0}
|
||||
m_AdditiveReferencePoseTime: 0
|
||||
m_StartTime: 0
|
||||
m_StopTime: 3.1666667
|
||||
m_OrientationOffsetY: 0
|
||||
m_Level: 0
|
||||
m_CycleOffset: 0
|
||||
m_HasAdditiveReferencePose: 0
|
||||
m_LoopTime: 0
|
||||
m_LoopBlend: 0
|
||||
m_LoopBlendOrientation: 0
|
||||
m_LoopBlendPositionY: 0
|
||||
m_LoopBlendPositionXZ: 0
|
||||
m_KeepOriginalOrientation: 0
|
||||
m_KeepOriginalPositionY: 1
|
||||
m_KeepOriginalPositionXZ: 0
|
||||
m_HeightFromFeet: 0
|
||||
m_Mirror: 0
|
||||
m_EditorCurves:
|
||||
- serializedVersion: 2
|
||||
curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 1
|
||||
inSlope: Infinity
|
||||
outSlope: Infinity
|
||||
tangentMode: 103
|
||||
weightedMode: 0
|
||||
inWeight: 0
|
||||
outWeight: 0
|
||||
- serializedVersion: 3
|
||||
time: 0.16666667
|
||||
value: 0
|
||||
inSlope: Infinity
|
||||
outSlope: Infinity
|
||||
tangentMode: 103
|
||||
weightedMode: 0
|
||||
inWeight: 0
|
||||
outWeight: 0
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_IsActive
|
||||
path: "\u6309\u4EFB\u610F\u952E\u5F00\u59CB"
|
||||
classID: 1
|
||||
script: {fileID: 0}
|
||||
flags: 0
|
||||
- serializedVersion: 2
|
||||
curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0.5
|
||||
value: 0.27920532
|
||||
inSlope: 1.273561
|
||||
outSlope: 1.273561
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.5501108
|
||||
- serializedVersion: 3
|
||||
time: 1.0833334
|
||||
value: -46.16314
|
||||
inSlope: -103.29945
|
||||
outSlope: -103.29945
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.13115591
|
||||
- serializedVersion: 3
|
||||
time: 2.6666667
|
||||
value: -127
|
||||
inSlope: -2.2009084
|
||||
outSlope: -2.2009084
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.23604615
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 3.1666667
|
||||
value: -127
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_AnchoredPosition.y
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
flags: 0
|
||||
- serializedVersion: 2
|
||||
curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0.5
|
||||
value: 1
|
||||
inSlope: 0.060435083
|
||||
outSlope: 0.060435083
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.10597792
|
||||
- serializedVersion: 3
|
||||
time: 1.0833334
|
||||
value: 1.1604114
|
||||
inSlope: 0.31671682
|
||||
outSlope: 0.31671682
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.12085495
|
||||
- serializedVersion: 3
|
||||
time: 2.6666667
|
||||
value: 1.4
|
||||
inSlope: -0.001414268
|
||||
outSlope: -0.001414268
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.30310845
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 3.1666667
|
||||
value: 1.4
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalScale.x
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
flags: 0
|
||||
- serializedVersion: 2
|
||||
curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0.5
|
||||
value: 1
|
||||
inSlope: 0.02182417
|
||||
outSlope: 0.02182417
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.11588226
|
||||
- serializedVersion: 3
|
||||
time: 1.0833334
|
||||
value: 1.1599377
|
||||
inSlope: 0.31347114
|
||||
outSlope: 0.31347114
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.1208475
|
||||
- serializedVersion: 3
|
||||
time: 2.6666667
|
||||
value: 1.4
|
||||
inSlope: 0.0026851257
|
||||
outSlope: 0.0026851257
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.2758778
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 3.1666667
|
||||
value: 1.4
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalScale.y
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
flags: 0
|
||||
- serializedVersion: 2
|
||||
curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0.5
|
||||
value: 1
|
||||
inSlope: 0.39957127
|
||||
outSlope: 0.39957127
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.06940096
|
||||
- serializedVersion: 3
|
||||
time: 2.6666667
|
||||
value: 1.4
|
||||
inSlope: 0.0005388909
|
||||
outSlope: 0.0005388909
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.28949317
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 3.1666667
|
||||
value: 1.4
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalScale.z
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
flags: 0
|
||||
m_EulerEditorCurves: []
|
||||
m_HasGenericRootTransform: 0
|
||||
m_HasMotionFloatCurves: 0
|
||||
m_Events: []
|
||||
--- !u!114 &3548559168146922769
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 1
|
||||
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: 15c38f6fa1940124db1ab7f6fe7268d1, type: 3}
|
||||
m_Name: Signal Emitter
|
||||
m_EditorClassIdentifier:
|
||||
m_Time: 1.0833333333333333
|
||||
m_Retroactive: 0
|
||||
m_EmitOnce: 0
|
||||
m_Asset: {fileID: 11400000, guid: 0f725e5af8de7f944b3402514a4be355, type: 2}
|
||||
--- !u!114 &3995914538100974027
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 1
|
||||
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: d21dcc2386d650c4597f3633c75a1f98, type: 3}
|
||||
m_Name: Animation Track
|
||||
m_EditorClassIdentifier:
|
||||
m_Version: 3
|
||||
m_AnimClip: {fileID: 0}
|
||||
m_Locked: 0
|
||||
m_Muted: 0
|
||||
m_CustomPlayableFullTypename:
|
||||
m_Curves: {fileID: 0}
|
||||
m_Parent: {fileID: 11400000}
|
||||
m_Children: []
|
||||
m_Clips: []
|
||||
m_Markers:
|
||||
m_Objects: []
|
||||
m_InfiniteClipPreExtrapolation: 1
|
||||
m_InfiniteClipPostExtrapolation: 1
|
||||
m_InfiniteClipOffsetPosition: {x: 0, y: 0, z: 0}
|
||||
m_InfiniteClipOffsetEulerAngles: {x: 0, y: 0, z: 0}
|
||||
m_InfiniteClipTimeOffset: 0
|
||||
m_InfiniteClipRemoveOffset: 0
|
||||
m_InfiniteClipApplyFootIK: 1
|
||||
mInfiniteClipLoop: 0
|
||||
m_MatchTargetFields: 63
|
||||
m_Position: {x: 0, y: 0, z: 0}
|
||||
m_EulerAngles: {x: 0, y: 0, z: 0}
|
||||
m_AvatarMask: {fileID: 0}
|
||||
m_ApplyAvatarMask: 1
|
||||
m_TrackOffset: 0
|
||||
m_InfiniteClip: {fileID: 762495019060593801}
|
||||
m_OpenClipOffsetRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_Rotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_ApplyOffsets: 0
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 47c2d2113ca46fa4b9040642d9b467ab
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6493808043fdb1a4698ca4598e421589
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,52 @@
|
||||
%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: 5b11a58205ec3474ca216360e9fa74a8, type: 3}
|
||||
m_Name: ChapterInfo Shared Data
|
||||
m_EditorClassIdentifier:
|
||||
m_TableCollectionName: ChapterInfo
|
||||
m_TableCollectionNameGuidString: 7ea8c68fdc624de4c86434963c06ec55
|
||||
m_Entries:
|
||||
- m_Id: 3062295029520000001
|
||||
m_Key: scene_day0_prologue
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000002
|
||||
m_Key: scene_day1_begin
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000003
|
||||
m_Key: scene_day1_first_pp1
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000004
|
||||
m_Key: scene_day1_mid
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000005
|
||||
m_Key: scene_day1_night
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000006
|
||||
m_Key: scene_day1_sleep
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
m_KeyGenerator:
|
||||
rid: 3062295019520000006
|
||||
references:
|
||||
version: 2
|
||||
RefIds:
|
||||
- rid: 3062295019520000006
|
||||
type: {class: DistributedUIDGenerator, ns: UnityEngine.Localization.Tables, asm: Unity.Localization}
|
||||
data:
|
||||
m_CustomEpoch: 1783180286110
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7ea8c68fdc624de4c86434963c06ec55
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,24 @@
|
||||
%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: 5be51871efa6c3e4eae1703925c8f5ac, type: 3}
|
||||
m_Name: ChapterInfo
|
||||
m_EditorClassIdentifier:
|
||||
m_SharedTableData: {fileID: 11400000, guid: 7ea8c68fdc624de4c86434963c06ec55, type: 2}
|
||||
m_Tables:
|
||||
- {fileID: 11400000, guid: 8906df9235e52fb41b11fe8776a77032, type: 2}
|
||||
- {fileID: 11400000, guid: bdf8ad79a9f707b45805e23c25ccdadb, type: 2}
|
||||
- {fileID: 11400000, guid: 9d8accfdeabc8034c986233920a17184, type: 2}
|
||||
m_Extensions: []
|
||||
m_Group: String Table
|
||||
references:
|
||||
version: 2
|
||||
RefIds: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 490eb00e17f7ee84c8d08da5ce00a7e3
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,47 @@
|
||||
%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: e9620f8c34305754d8cc9a7e49e852d9, type: 3}
|
||||
m_Name: ChapterInfo_en
|
||||
m_EditorClassIdentifier:
|
||||
m_LocaleId:
|
||||
m_Code: en
|
||||
m_SharedData: {fileID: 11400000, guid: 7ea8c68fdc624de4c86434963c06ec55, type: 2}
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
m_TableData:
|
||||
- m_Id: 3062295029520000001
|
||||
m_Localized: 'Prologue: Nightmare'
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000002
|
||||
m_Localized: 'Day 1: Morning'
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000003
|
||||
m_Localized: Art Model Patient - Pepe
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000004
|
||||
m_Localized: 'Day 1: Noon'
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000005
|
||||
m_Localized: 'Day 1: Night'
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000006
|
||||
m_Localized: Dream 1
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
references:
|
||||
version: 2
|
||||
RefIds: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8906df9235e52fb41b11fe8776a77032
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,47 @@
|
||||
%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: e9620f8c34305754d8cc9a7e49e852d9, type: 3}
|
||||
m_Name: ChapterInfo_ja-JP
|
||||
m_EditorClassIdentifier:
|
||||
m_LocaleId:
|
||||
m_Code: ja-JP
|
||||
m_SharedData: {fileID: 11400000, guid: 7ea8c68fdc624de4c86434963c06ec55, type: 2}
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
m_TableData:
|
||||
- m_Id: 3062295029520000001
|
||||
m_Localized: "\u5E8F\u7AE0: \u60AA\u5922"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000002
|
||||
m_Localized: "\u4E00\u65E5\u76EE\uFF1A\u671D"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000003
|
||||
m_Localized: "\u7F8E\u8853\u578B\u60A3\u8005 - \u30DA\u30DA"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000004
|
||||
m_Localized: "\u4E00\u65E5\u76EE\uFF1A\u663C"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000005
|
||||
m_Localized: "\u4E00\u65E5\u76EE\uFF1A\u591C"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000006
|
||||
m_Localized: "\u5922\u30FB1"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
references:
|
||||
version: 2
|
||||
RefIds: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9d8accfdeabc8034c986233920a17184
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,47 @@
|
||||
%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: e9620f8c34305754d8cc9a7e49e852d9, type: 3}
|
||||
m_Name: ChapterInfo_zh-Hans
|
||||
m_EditorClassIdentifier:
|
||||
m_LocaleId:
|
||||
m_Code: zh-Hans
|
||||
m_SharedData: {fileID: 11400000, guid: 7ea8c68fdc624de4c86434963c06ec55, type: 2}
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
m_TableData:
|
||||
- m_Id: 3062295029520000001
|
||||
m_Localized: "\u5E8F\u7AE0\uFF1A\u5669\u68A6"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000002
|
||||
m_Localized: "\u7B2C\u4E00\u5929\u65E9\u4E0A"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000003
|
||||
m_Localized: "\u7F8E\u5DE5\u578B\u53F7\u60A3\u8005-\u4F69\u4F69"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000004
|
||||
m_Localized: "\u7B2C\u4E00\u5929\uFF0C\u4E2D\u5348"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000005
|
||||
m_Localized: "\u7B2C\u4E00\u5929\uFF0C\u665A\u4E0A"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 3062295029520000006
|
||||
m_Localized: "\u7B2C\u4E00\u4E2A\u68A6"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
references:
|
||||
version: 2
|
||||
RefIds: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bdf8ad79a9f707b45805e23c25ccdadb
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -235,6 +235,10 @@ MonoBehaviour:
|
||||
m_Key: app_info
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 158091825673920512
|
||||
m_Key: setting_waitinput
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
m_KeyGenerator:
|
||||
|
||||
@@ -249,6 +249,10 @@ MonoBehaviour:
|
||||
m_Localized: All Our Broken Parts
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 158091825673920512
|
||||
m_Localized: SELECT OPERATION
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
references:
|
||||
version: 2
|
||||
RefIds:
|
||||
|
||||
@@ -238,6 +238,10 @@ MonoBehaviour:
|
||||
m_Localized: All Our Broken Parts
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 158091825673920512
|
||||
m_Localized: "\u64CD\u4F5C\u9078\u629E"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
references:
|
||||
version: 2
|
||||
RefIds: []
|
||||
|
||||
@@ -242,6 +242,10 @@ MonoBehaviour:
|
||||
m_Localized: "\u7231\u4E0E\u673A\u5668\u4EBA\u7EF4\u4FEE\u6280\u672F"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
- m_Id: 158091825673920512
|
||||
m_Localized: "\u8BF7\u9009\u62E9\u64CD\u4F5C"
|
||||
m_Metadata:
|
||||
m_Items: []
|
||||
references:
|
||||
version: 2
|
||||
RefIds:
|
||||
|
||||
+93
-1210
File diff suppressed because it is too large
Load Diff
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: 2fa76ffaa57f62244b77be9b25ca14c2, type: 3}
|
||||
firstSceneName: Scene/OpenFixScene
|
||||
title: "\u5E8F\u7AE0\uFF1A\u5669\u68A6"
|
||||
titleKey: scene_day0_prologue
|
||||
description: "\u9519\u8BEF\u6570\u636E"
|
||||
coverPic: {fileID: 21300000, guid: c66b2b5ca74393c45a0d281a6662aa54, type: 3}
|
||||
chapter: "\u9519\u8BEF\u6570\u636E"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: 26fc6619bbcda734a81361b8bb615f04, type: 3}
|
||||
firstSceneName: Scene/PeipeiFixScene
|
||||
title: "\u7F8E\u5DE5\u578B\u53F7\u60A3\u8005-\u4F69\u4F69"
|
||||
titleKey: scene_day1_first_pp1
|
||||
description: "\u8BB0\u5FC6-\u89C6\u89C9\u6865\u622A\u65AD\u672F"
|
||||
coverPic: {fileID: 21300000, guid: ef7ba7c21d2aea048abe5729d7da2eee, type: 3}
|
||||
chapter: "\u8BB0\u5FC6-\u89C6\u89C9\u6865\u622A\u65AD\u672F"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: 533dc422c8871c143a551bd5d446b439, type: 3}
|
||||
firstSceneName: Scene/SubWay
|
||||
title: "\u7B2C\u4E00\u5929\u65E9\u4E0A"
|
||||
titleKey: scene_day1_begin
|
||||
description: "\u5730\u94C1\uFF0C\u548C\u706B\u5C71\u7684\u5BF9\u8BDD"
|
||||
coverPic: {fileID: 21300000, guid: f78e34492dd89b341928553dd1dfcbdb, type: 3}
|
||||
chapter: "\u5730\u94C1\uFF0C\u548C\u706B\u5C71\u7684\u5BF9\u8BDD"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: 293561ce52efc594399242651d44b366, type: 3}
|
||||
firstSceneName: Scene/ClinicOut
|
||||
title: "\u7B2C\u4E00\u5929\uFF0C\u4E2D\u5348"
|
||||
titleKey: scene_day1_mid
|
||||
description: "\u4F69\u4F691\u7ED3\u675F\u540E\u7684\u5BF9\u8BDD"
|
||||
coverPic: {fileID: 21300000, guid: 7715c89797cc6ca4e914b85f5524e9fd, type: 3}
|
||||
chapter: "\u4F69\u4F691\u7ED3\u675F\u540E\u7684\u5BF9\u8BDD"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: 29ebe788cfe2c084e88ffdd8e2f93378, type: 3}
|
||||
firstSceneName: "Scene/\u9152\u5427\u573A\u666F"
|
||||
title: "\u7B2C\u4E00\u5929\uFF0C\u665A\u4E0A"
|
||||
titleKey: scene_day1_night
|
||||
description: "\u9152\u5427\u548C\u5947\u7433\u7684\u5BF9\u8BDD"
|
||||
coverPic: {fileID: 21300000, guid: df86302e77350e34ea422cd24043dd93, type: 3}
|
||||
chapter: "\u9152\u5427\u548C\u5947\u7433\u7684\u5BF9\u8BDD"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: beb6e77de3427b04dae210b2c9ca29a1, type: 3}
|
||||
firstSceneName: "Scene/\u68A6\u5883"
|
||||
title: "\u7B2C\u4E00\u4E2A\u68A6"
|
||||
titleKey: scene_day1_sleep
|
||||
description: "\u627E\u5230\u5929\u6587\u53F0\u7684\u5165\u53E3"
|
||||
coverPic: {fileID: 21300000, guid: 20296b9c29cb10f4a97913165e98fb62, type: 3}
|
||||
chapter: "\u627E\u5230\u5929\u6587\u53F0\u7684\u5165\u53E3"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: 01b0567a3c6489a4c998435857e3cebc, type: 3}
|
||||
firstSceneName: Scene/HuoShanFixScene
|
||||
title: "\u706B\u5C71"
|
||||
titleKey: scene_day2_first_hs1
|
||||
description: "\u6211\u7684\u7535\u89C6\u5934\u670B\u53CB"
|
||||
coverPic: {fileID: 21300000, guid: 77af8281471ddab42993b4b7795f2f57, type: 3}
|
||||
chapter: "\u6211\u7684\u7535\u89C6\u5934\u670B\u53CB"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: 247e2ccd847942843bb87841bb9888c5, type: 3}
|
||||
firstSceneName: Scene/PeipeiFixScene
|
||||
title: "\u505C\u6B62\u60F3\u8C61"
|
||||
titleKey: scene_day2_next_pp2
|
||||
description: "\u505C\u6B62\u60F3\u8C61"
|
||||
coverPic: {fileID: 21300000, guid: ef7ba7c21d2aea048abe5729d7da2eee, type: 3}
|
||||
chapter: "\u505C\u6B62\u60F3\u8C61"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: 6ecfe80fd0370554db9a7ec3a173f7e3, type: 3}
|
||||
firstSceneName: Scene/SubWay
|
||||
title: "\u5730\u94C1\u4E0A"
|
||||
titleKey: scene_day2_begin
|
||||
description: "\u5BBF\u9189"
|
||||
coverPic: {fileID: 21300000, guid: 922da7b13a1cf2747a43933c2afea754, type: 3}
|
||||
chapter: "\u5BBF\u9189"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: 25f49957c68bca34bb1aeafec7feca8b, type: 3}
|
||||
firstSceneName: Scene/ClinicOut
|
||||
title: "\u7B2C\u4E8C\u5929\u4E2D\u5348"
|
||||
titleKey: scene_day2_mid
|
||||
description: "\u7B2C\u4E8C\u5929\u4E2D\u5348"
|
||||
coverPic: {fileID: 21300000, guid: 7715c89797cc6ca4e914b85f5524e9fd, type: 3}
|
||||
chapter: "\u7B2C\u4E8C\u5929\u4E2D\u5348"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: ec06c945cb99fb544b1dd9a2a6ea9a7b, type: 3}
|
||||
firstSceneName: Scene/ClinicOut
|
||||
title: "\u5915\u9633"
|
||||
titleKey: scene_day2_night
|
||||
description: "\u5915\u9633"
|
||||
coverPic: {fileID: 21300000, guid: dc09bd90b2ce79249ac504f07b98944f, type: 3}
|
||||
chapter: "\u5915\u9633"
|
||||
|
||||
@@ -18,6 +18,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: 62f2a99a47fc652449b846035a739529, type: 3}
|
||||
firstSceneName: "Scene/\u68A6\u5883"
|
||||
title: "\u542F\u793A"
|
||||
titleKey: scene_day2_sleep
|
||||
description: "\u6D77\u662F\u5B58\u5728\u7684\u5417\uFF1F"
|
||||
coverPic: {fileID: 21300000, guid: 2796d4ad771bcde488978d1c1e67ed8f, type: 3}
|
||||
chapter: "\u6D77\u662F\u5B58\u5728\u7684\u5417\uFF1F"
|
||||
|
||||
@@ -16,6 +16,7 @@ MonoBehaviour:
|
||||
yarnProject: {fileID: 7545569452688597077, guid: e6bac2644a8a04b4899ce2fe8ae1f4fc, type: 3}
|
||||
firstSceneName: Scene/SubWay
|
||||
title: PlaytestEnd
|
||||
titleKey: scene_general_end
|
||||
description: PlaytestEnd
|
||||
coverPic: {fileID: 21300000, guid: 8344881c78a9845499555d573e34e362, type: 3}
|
||||
chapter: 99
|
||||
|
||||
@@ -57,6 +57,7 @@ namespace AibisDream.Utility
|
||||
#region 本地化索引
|
||||
|
||||
public const string UITextTable = "UIText";
|
||||
public const string ChapterInfoTable = "ChapterInfo";
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -152,16 +152,17 @@ namespace AibisDream.FixSystem
|
||||
{
|
||||
if (!CameraKit.Instance.EqualToCameraState(CameraEnum.DreamCamera))
|
||||
{
|
||||
yield return CameraKit.Instance.SwitchCamera(CameraEnum.DreamCamera);
|
||||
yield return CameraKit.Instance.SwitchCamera(CameraEnum.DreamCamera, true);
|
||||
}
|
||||
|
||||
yield return null;
|
||||
BubbleSlotKit.Instance.LoadBubbles(BubbleSlotEnum.Open);
|
||||
}
|
||||
|
||||
public IEnumerator EnterImmediate(FixTransition transition)
|
||||
{
|
||||
yield return CameraKit.Instance.SwitchCamera(CameraEnum.DreamCamera, true);
|
||||
|
||||
yield return null;
|
||||
BubbleSlotKit.Instance.LoadBubbles(BubbleSlotEnum.Open);
|
||||
}
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
Bar,
|
||||
Dream,
|
||||
MainMenu,
|
||||
Empty
|
||||
Empty,
|
||||
PauseMenu
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,11 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using AibisDream;
|
||||
using AibisDream.FixSystem;
|
||||
using AibisDream.Framework;
|
||||
using AibisDream.SaveSystem;
|
||||
using AibisDream.UI;
|
||||
using FMOD;
|
||||
using FMOD.Studio;
|
||||
using FMODUnity;
|
||||
@@ -16,6 +18,7 @@ namespace AibisDream.Kit
|
||||
public class AudioManager : Singleton<AudioManager>
|
||||
{
|
||||
private const string AmbStateName = "scene";
|
||||
private const string MainMenuStageParamName = "mainMenuStage";
|
||||
|
||||
public EventReference ambEvent;
|
||||
|
||||
@@ -28,6 +31,10 @@ namespace AibisDream.Kit
|
||||
|
||||
[Tooltip("Maximum volume in dB when slider is at 1")]
|
||||
[SerializeField] private float maxDecibels = 0f;
|
||||
|
||||
[Header("Terminal UI")]
|
||||
[SerializeField] private string terminalHoverSfx = "event:/ActionFB/menu_hover";
|
||||
[SerializeField] private string terminalClickSfx = "event:/ActionFB/menu_click";
|
||||
|
||||
#region Event实例
|
||||
|
||||
@@ -42,6 +49,9 @@ namespace AibisDream.Kit
|
||||
|
||||
private List<IUnRegister> _removeTrigger = new();
|
||||
private AmbState _currentAmbState = AmbState.Main;
|
||||
private AmbState? _ambStateBeforePauseMenu;
|
||||
|
||||
public AmbState CurrentAmbState => _currentAmbState;
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -65,7 +75,16 @@ namespace AibisDream.Kit
|
||||
_removeTrigger.Add(EnumEventSystem.Global.Register<EventEnum, FixSceneMode>(EventEnum.FixSceneModeChanged, OnFixSceneModeChange));
|
||||
// 主菜单 / 退出局内
|
||||
_removeTrigger.Add(EnumEventSystem.Global.Register(GameLoopEnum.AppStart, OnAppStart));
|
||||
_removeTrigger.Add(EnumEventSystem.Global.Register(GameLoopEnum.GameStart, OnGameStart));
|
||||
_removeTrigger.Add(EnumEventSystem.Global.Register(GameLoopEnum.GameQuit, OnGameQuit));
|
||||
_removeTrigger.Add(EnumEventSystem.Global.Register<TerminalUIEvent, TerminalMainMenuPhase>(
|
||||
TerminalUIEvent.MainMenuPhase, OnMainMenuPhase));
|
||||
_removeTrigger.Add(EnumEventSystem.Global.Register(TerminalUIEvent.PauseMenuAmbEnter, OnPauseMenuAmbEnter));
|
||||
_removeTrigger.Add(EnumEventSystem.Global.Register<TerminalUIEvent, bool>(
|
||||
TerminalUIEvent.PauseMenuAmbExit, OnPauseMenuAmbExit));
|
||||
|
||||
SingleCastEventSystem.Global.Register<TerminalUIAudioEnum>(TerminalUIAudioEnum.Hover, OnTerminalUIHover);
|
||||
SingleCastEventSystem.Global.Register<TerminalUIAudioEnum>(TerminalUIAudioEnum.Click, OnTerminalUIClick);
|
||||
}
|
||||
|
||||
public override void OnSingletonDestroy()
|
||||
@@ -80,13 +99,30 @@ namespace AibisDream.Kit
|
||||
trigger.UnRegister();
|
||||
}
|
||||
_removeTrigger.Clear();
|
||||
|
||||
SingleCastEventSystem.Global.Unregister(TerminalUIAudioEnum.Hover);
|
||||
SingleCastEventSystem.Global.Unregister(TerminalUIAudioEnum.Click);
|
||||
}
|
||||
|
||||
private void OnTerminalUIHover()
|
||||
{
|
||||
PlaySfx(terminalHoverSfx);
|
||||
}
|
||||
|
||||
private void OnTerminalUIClick()
|
||||
{
|
||||
PlaySfx(terminalClickSfx);
|
||||
}
|
||||
|
||||
public AudioSnapshotDto CaptureSnapshot()
|
||||
{
|
||||
var ambState = _currentAmbState == AmbState.PauseMenu && _ambStateBeforePauseMenu.HasValue
|
||||
? _ambStateBeforePauseMenu.Value
|
||||
: _currentAmbState;
|
||||
|
||||
var dto = new AudioSnapshotDto
|
||||
{
|
||||
ambState = _currentAmbState.ToString()
|
||||
ambState = ambState.ToString()
|
||||
};
|
||||
|
||||
foreach (var pair in _musicDict)
|
||||
@@ -181,16 +217,57 @@ namespace AibisDream.Kit
|
||||
RuntimeManager.StudioSystem.setParameterByName(AmbStateName, (float)state);
|
||||
}
|
||||
|
||||
private void OnPauseMenuAmbEnter()
|
||||
{
|
||||
if (_currentAmbState == AmbState.PauseMenu)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
_ambStateBeforePauseMenu = _currentAmbState;
|
||||
ChangeAmb(AmbState.PauseMenu);
|
||||
}
|
||||
|
||||
private void OnPauseMenuAmbExit(bool restorePrevious)
|
||||
{
|
||||
if (!_ambStateBeforePauseMenu.HasValue)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (restorePrevious)
|
||||
{
|
||||
ChangeAmb(_ambStateBeforePauseMenu.Value);
|
||||
}
|
||||
|
||||
_ambStateBeforePauseMenu = null;
|
||||
}
|
||||
|
||||
public void SetGlobalParam(string paramName, float value)
|
||||
{
|
||||
RuntimeManager.StudioSystem.setParameterByName(paramName, value);
|
||||
}
|
||||
|
||||
public void SetMainMenuStage(int stage)
|
||||
{
|
||||
SetGlobalParam(MainMenuStageParamName, stage);
|
||||
}
|
||||
|
||||
private void OnAppStart()
|
||||
{
|
||||
ChangeAmb(menuAmbState);
|
||||
}
|
||||
|
||||
private void OnMainMenuPhase(TerminalMainMenuPhase phase)
|
||||
{
|
||||
SetMainMenuStage((int)phase);
|
||||
}
|
||||
|
||||
private void OnGameStart()
|
||||
{
|
||||
SetMainMenuStage(3);
|
||||
}
|
||||
|
||||
private void OnSceneLoad(string loadingScene)
|
||||
{
|
||||
// 场景加载时切换AMB
|
||||
|
||||
@@ -34,6 +34,7 @@ namespace AibisDream
|
||||
{
|
||||
chapterSo = chapterSo,
|
||||
title = chapterSo.title,
|
||||
titleKey = chapterSo.titleKey,
|
||||
chapter = chapterSo.chapter,
|
||||
desc = chapterSo.description,
|
||||
pic = chapterSo.coverPic,
|
||||
@@ -122,6 +123,7 @@ namespace AibisDream
|
||||
public struct ChapterVo
|
||||
{
|
||||
public string title;
|
||||
public string titleKey;
|
||||
public string chapter;
|
||||
public string desc;
|
||||
public Sprite pic;
|
||||
|
||||
@@ -85,4 +85,17 @@ namespace AibisDream
|
||||
TextSpeed,
|
||||
LocaleChanged
|
||||
}
|
||||
|
||||
public enum TerminalUIAudioEnum
|
||||
{
|
||||
Hover,
|
||||
Click,
|
||||
}
|
||||
|
||||
public enum TerminalUIEvent
|
||||
{
|
||||
MainMenuPhase,
|
||||
PauseMenuAmbEnter,
|
||||
PauseMenuAmbExit,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,6 +31,10 @@ namespace AibisDream
|
||||
#region 用于显示的字段
|
||||
|
||||
public string title;
|
||||
|
||||
[Tooltip("章节面板显示用本地化 Key,对应 ChapterInfo 表条目;为空则回退 title")]
|
||||
public string titleKey;
|
||||
|
||||
public string description;
|
||||
public Sprite coverPic;
|
||||
public string chapter;
|
||||
|
||||
@@ -284,8 +284,8 @@ namespace AibisDream.SaveSystem
|
||||
var ui = UIManager.Instance;
|
||||
if (ui != null)
|
||||
{
|
||||
ui.HideTerminal();
|
||||
ui.GetPanel<InGameTerminalPanel>()?.Close();
|
||||
ui.HidePanel<TerminalPanel>();
|
||||
ui.HidePanel<InGameTerminalPanel>();
|
||||
ui.ShowPanel<MainPanel>();
|
||||
ui.HidePanel<SavesPanel>();
|
||||
ui.HidePanel<EndPanel>();
|
||||
|
||||
@@ -14,7 +14,8 @@ namespace AibisDream
|
||||
{
|
||||
if (!gameObject.activeInHierarchy)
|
||||
return;
|
||||
|
||||
|
||||
base.DoStateTransition(state, instant);
|
||||
onStateTransition?.Invoke(TransStateToType(state), instant);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using AibisDream.UI;
|
||||
using AibisDream.Utility;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
@@ -37,6 +38,7 @@ namespace AibisDream
|
||||
private int _curIdx;
|
||||
private Action<string, string> _onValueChanged;
|
||||
private bool _isListening;
|
||||
private bool _isHovered;
|
||||
private ColorBlock _darkRowButtonColors;
|
||||
|
||||
private void Awake()
|
||||
@@ -58,11 +60,18 @@ namespace AibisDream
|
||||
|
||||
public void OnPointerEnter(PointerEventData eventData)
|
||||
{
|
||||
if (!_isHovered)
|
||||
{
|
||||
_isHovered = true;
|
||||
TerminalUIAudio.NotifyHover();
|
||||
}
|
||||
|
||||
SetHovered(true);
|
||||
}
|
||||
|
||||
public void OnPointerExit(PointerEventData eventData)
|
||||
{
|
||||
_isHovered = false;
|
||||
SetHovered(false);
|
||||
}
|
||||
|
||||
@@ -167,6 +176,7 @@ namespace AibisDream
|
||||
_curIdx = CommonUtil.LoopStep(_curIdx, 0, _options.Length - 1, offset);
|
||||
RefreshValue();
|
||||
_onValueChanged?.Invoke(_propName, _options[_curIdx].prop);
|
||||
TerminalUIAudio.NotifyClick();
|
||||
}
|
||||
|
||||
private void RefreshValue()
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using AibisDream.UI;
|
||||
using AibisDream.Utility;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
@@ -24,6 +25,7 @@ namespace AibisDream
|
||||
private string _propName;
|
||||
private Action<string, string> _onValueChanged;
|
||||
private bool _isListening;
|
||||
private bool _isHovered;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
@@ -38,11 +40,18 @@ namespace AibisDream
|
||||
|
||||
public void OnPointerEnter(PointerEventData eventData)
|
||||
{
|
||||
if (!_isHovered)
|
||||
{
|
||||
_isHovered = true;
|
||||
TerminalUIAudio.NotifyHover();
|
||||
}
|
||||
|
||||
SetHovered(true);
|
||||
}
|
||||
|
||||
public void OnPointerExit(PointerEventData eventData)
|
||||
{
|
||||
_isHovered = false;
|
||||
SetHovered(false);
|
||||
}
|
||||
|
||||
|
||||
@@ -91,12 +91,12 @@ namespace AibisDream.UI
|
||||
|
||||
private void OpenSettingPanel()
|
||||
{
|
||||
UIManager.Instance.ShowTerminalSetting();
|
||||
UIManager.Instance.GetPanel<InGameTerminalPanel>()?.Open(InGameTerminalPage.Setting);
|
||||
}
|
||||
|
||||
private void OpenRecordPanel()
|
||||
{
|
||||
UIManager.Instance.ShowTerminalRecord();
|
||||
UIManager.Instance.GetPanel<InGameTerminalPanel>()?.Open(InGameTerminalPage.Record);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ namespace AibisDream.UI
|
||||
private bool _pausedByPanel;
|
||||
|
||||
public bool IsOpen => gameObject.activeSelf && _currentPage != InGameTerminalPage.None;
|
||||
public bool IsCloseable => true;
|
||||
public bool IsCloseable => false;
|
||||
public InGameTerminalPage CurrentPage => _currentPage;
|
||||
public bool IsInGameContext => true;
|
||||
|
||||
@@ -38,6 +38,12 @@ namespace AibisDream.UI
|
||||
|
||||
settingPage?.SetOwner(this);
|
||||
recordPage?.SetOwner(this);
|
||||
|
||||
if (!HasRequiredPages())
|
||||
{
|
||||
Debug.LogError("[InGameTerminalPanel] Missing required pages. Assign TerminalSettingPanel and TerminalRecordPanel on the in-game shell.");
|
||||
}
|
||||
|
||||
Close();
|
||||
}
|
||||
|
||||
@@ -123,17 +129,22 @@ namespace AibisDream.UI
|
||||
}
|
||||
|
||||
public void Close()
|
||||
{
|
||||
Close(restoreAmb: true);
|
||||
}
|
||||
|
||||
public void Close(bool restoreAmb)
|
||||
{
|
||||
HideAllPages();
|
||||
_backStack.Clear();
|
||||
_currentPage = InGameTerminalPage.None;
|
||||
ContinueIfPaused();
|
||||
ContinueIfPaused(restoreAmb);
|
||||
gameObject.SetActive(false);
|
||||
}
|
||||
|
||||
public void CloseToMainMenu()
|
||||
{
|
||||
Close();
|
||||
Close(restoreAmb: false);
|
||||
GameManager.Instance.QuitGame();
|
||||
}
|
||||
|
||||
@@ -160,10 +171,11 @@ namespace AibisDream.UI
|
||||
}
|
||||
|
||||
GameManager.Instance.PauseGame();
|
||||
TerminalUIAudio.NotifyPauseMenuAmbEnter();
|
||||
_pausedByPanel = true;
|
||||
}
|
||||
|
||||
private void ContinueIfPaused()
|
||||
private void ContinueIfPaused(bool restoreAmb = true)
|
||||
{
|
||||
if (!_pausedByPanel)
|
||||
{
|
||||
@@ -171,6 +183,7 @@ namespace AibisDream.UI
|
||||
}
|
||||
|
||||
GameManager.Instance.ContinueGame();
|
||||
TerminalUIAudio.NotifyPauseMenuAmbExit(restoreAmb);
|
||||
_pausedByPanel = false;
|
||||
}
|
||||
|
||||
|
||||
@@ -36,6 +36,8 @@ namespace AibisDream.UI
|
||||
|
||||
public BaseButton Button => button != null ? button : (button = GetComponent<BaseButton>());
|
||||
|
||||
private SelectionType _prevSelectionState = SelectionType.Normal;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
button = GetComponent<BaseButton>();
|
||||
@@ -50,6 +52,7 @@ namespace AibisDream.UI
|
||||
}
|
||||
|
||||
button.onStateTransition.AddListener(OnStateTransition);
|
||||
button.onClick.AddListener(OnClick);
|
||||
|
||||
if (!string.IsNullOrEmpty(defaultLabel))
|
||||
{
|
||||
@@ -70,6 +73,7 @@ namespace AibisDream.UI
|
||||
if (button != null)
|
||||
{
|
||||
button.onStateTransition.RemoveListener(OnStateTransition);
|
||||
button.onClick.RemoveListener(OnClick);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -96,6 +100,15 @@ namespace AibisDream.UI
|
||||
|
||||
private void OnStateTransition(SelectionType state, bool instant)
|
||||
{
|
||||
if (button.interactable
|
||||
&& state == SelectionType.Highlighted
|
||||
&& _prevSelectionState == SelectionType.Normal)
|
||||
{
|
||||
TerminalUIAudio.NotifyHover();
|
||||
}
|
||||
|
||||
_prevSelectionState = state;
|
||||
|
||||
switch (state)
|
||||
{
|
||||
case SelectionType.Disabled:
|
||||
@@ -136,6 +149,14 @@ namespace AibisDream.UI
|
||||
}
|
||||
}
|
||||
|
||||
private void OnClick()
|
||||
{
|
||||
if (button != null && button.interactable)
|
||||
{
|
||||
TerminalUIAudio.NotifyClick();
|
||||
}
|
||||
}
|
||||
|
||||
private static bool IsLocalizationKey(string value)
|
||||
{
|
||||
return !string.IsNullOrEmpty(value) && value.Contains("_", StringComparison.Ordinal);
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using AibisDream;
|
||||
using AibisDream.Utility;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Localization.Components;
|
||||
using UnityEngine.UI;
|
||||
|
||||
namespace AibisDream.UI
|
||||
@@ -14,6 +17,7 @@ namespace AibisDream.UI
|
||||
[SerializeField] private TerminalChapterItemView rightPreview;
|
||||
[SerializeField] private TMP_Text emptyText;
|
||||
[SerializeField] private TMP_Text selectedTitleText;
|
||||
[SerializeField] private LocalizeStringEvent selectedTitleLocalize;
|
||||
[SerializeField] private Button previousButton;
|
||||
[SerializeField] private Button nextButton;
|
||||
[SerializeField] private Button restartButton;
|
||||
@@ -32,6 +36,11 @@ namespace AibisDream.UI
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
if (selectedTitleLocalize == null && selectedTitleText != null)
|
||||
{
|
||||
selectedTitleLocalize = selectedTitleText.GetComponent<LocalizeStringEvent>();
|
||||
}
|
||||
|
||||
previousButton?.onClick.AddListener(Previous);
|
||||
nextButton?.onClick.AddListener(Next);
|
||||
restartButton?.onClick.AddListener(Restart);
|
||||
@@ -109,10 +118,7 @@ namespace AibisDream.UI
|
||||
|
||||
if (!hasChapters)
|
||||
{
|
||||
if (selectedTitleText != null)
|
||||
{
|
||||
selectedTitleText.text = "NO CHAPTER DATA";
|
||||
}
|
||||
SetSelectedTitle(null, "NO CHAPTER DATA");
|
||||
|
||||
restartButton?.gameObject.SetActive(false);
|
||||
UpdateNavigationButtons(false);
|
||||
@@ -132,10 +138,7 @@ namespace AibisDream.UI
|
||||
rightPreview?.Init(_chapters[_currentIndex + 1], selected: false, preview: true);
|
||||
}
|
||||
|
||||
if (selectedTitleText != null)
|
||||
{
|
||||
selectedTitleText.text = current.title;
|
||||
}
|
||||
SetSelectedTitle(current.titleKey, current.title);
|
||||
|
||||
restartButton?.gameObject.SetActive(true);
|
||||
UpdateNavigationButtons(true);
|
||||
@@ -162,6 +165,27 @@ namespace AibisDream.UI
|
||||
}
|
||||
}
|
||||
|
||||
private void SetSelectedTitle(string titleKey, string fallbackTitle)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(titleKey) && selectedTitleLocalize != null)
|
||||
{
|
||||
selectedTitleLocalize.enabled = true;
|
||||
selectedTitleLocalize.SetTable(ConstRef.ChapterInfoTable);
|
||||
selectedTitleLocalize.SetEntry(titleKey);
|
||||
return;
|
||||
}
|
||||
|
||||
if (selectedTitleLocalize != null)
|
||||
{
|
||||
selectedTitleLocalize.enabled = false;
|
||||
}
|
||||
|
||||
if (selectedTitleText != null)
|
||||
{
|
||||
selectedTitleText.text = fallbackTitle;
|
||||
}
|
||||
}
|
||||
|
||||
private void Previous()
|
||||
{
|
||||
if (_chapters.Count == 0 || _currentIndex <= 0)
|
||||
|
||||
@@ -26,6 +26,7 @@ namespace AibisDream.UI
|
||||
private CanvasGroup _canvasGroup;
|
||||
private bool _isDanger;
|
||||
private bool _isSelected;
|
||||
private SelectionType _prevSelectionState = SelectionType.Normal;
|
||||
|
||||
public event Action<TerminalMenuItemView> Clicked;
|
||||
public event Action<TerminalMenuItemView> Hovered;
|
||||
@@ -122,11 +123,25 @@ namespace AibisDream.UI
|
||||
|
||||
private void HandleClick()
|
||||
{
|
||||
if (_button != null && _button.interactable)
|
||||
{
|
||||
TerminalUIAudio.NotifyClick();
|
||||
}
|
||||
|
||||
Clicked?.Invoke(this);
|
||||
}
|
||||
|
||||
private void OnButtonStateTransition(SelectionType state, bool instant)
|
||||
{
|
||||
if (_button.interactable
|
||||
&& state == SelectionType.Highlighted
|
||||
&& _prevSelectionState == SelectionType.Normal)
|
||||
{
|
||||
TerminalUIAudio.NotifyHover();
|
||||
}
|
||||
|
||||
_prevSelectionState = state;
|
||||
|
||||
if (state is SelectionType.Highlighted or SelectionType.Selected or SelectionType.Pressed)
|
||||
{
|
||||
Hovered?.Invoke(this);
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Playables;
|
||||
|
||||
namespace AibisDream.UI
|
||||
{
|
||||
@@ -13,8 +14,17 @@ namespace AibisDream.UI
|
||||
Chapter,
|
||||
}
|
||||
|
||||
enum TerminalBootPhase
|
||||
{
|
||||
None,
|
||||
PressAnyKey,
|
||||
PlayingIntro,
|
||||
PostIntroPause,
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 主菜单终端 Panel 壳:管理 Start / Chapter / Setting 三个 Page。
|
||||
/// 冷启动时先走 Intro Timeline(Press Any Key → 播放 → 停顿 → Start);同 session 内回主菜单跳过 Intro。
|
||||
/// </summary>
|
||||
public class TerminalPanel : MonoBehaviour, IUIPanel, ITerminalPanelHost
|
||||
{
|
||||
@@ -22,25 +32,33 @@ namespace AibisDream.UI
|
||||
[SerializeField] private TerminalStartPanel startPage;
|
||||
[SerializeField] private TerminalSettingPanel settingPage;
|
||||
[SerializeField] private TerminalChapterPanel chapterPage;
|
||||
[SerializeField] private PlayableDirector introDirector;
|
||||
[SerializeField] private float postIntroPause = 0.5f;
|
||||
[SerializeField] private GameObject menuFrame;
|
||||
|
||||
private readonly Stack<TerminalPage> _backStack = new();
|
||||
private TerminalPage _currentPage = TerminalPage.None;
|
||||
private bool _introCompletedThisSession;
|
||||
private TerminalBootPhase _bootPhase = TerminalBootPhase.None;
|
||||
|
||||
public bool IsOpen => gameObject.activeSelf && _currentPage != TerminalPage.None;
|
||||
public bool IsOpen =>
|
||||
gameObject.activeSelf &&
|
||||
(_bootPhase != TerminalBootPhase.None || _currentPage != TerminalPage.None);
|
||||
public bool IsCloseable => false;
|
||||
public TerminalPage CurrentPage => _currentPage;
|
||||
public bool IsInGameContext => false;
|
||||
|
||||
public void Initialize()
|
||||
{
|
||||
var root = transform;
|
||||
startPage ??= root.GetComponentInChildren<TerminalStartPanel>(true);
|
||||
settingPage ??= root.GetComponentInChildren<TerminalSettingPanel>(true);
|
||||
chapterPage ??= root.GetComponentInChildren<TerminalChapterPanel>(true);
|
||||
|
||||
startPage?.SetOwner(this);
|
||||
settingPage?.SetOwner(this);
|
||||
chapterPage?.SetOwner(this);
|
||||
|
||||
if (!HasRequiredPages())
|
||||
{
|
||||
Debug.LogError("[TerminalPanel] Missing required pages.");
|
||||
}
|
||||
|
||||
Close();
|
||||
}
|
||||
|
||||
@@ -51,7 +69,23 @@ namespace AibisDream.UI
|
||||
|
||||
public void Show()
|
||||
{
|
||||
Open(TerminalPage.Start);
|
||||
if (_introCompletedThisSession)
|
||||
{
|
||||
TerminalUIAudio.NotifyMainMenuPhase(TerminalMainMenuPhase.Interactive);
|
||||
Open(TerminalPage.Start);
|
||||
return;
|
||||
}
|
||||
|
||||
if (introDirector == null)
|
||||
{
|
||||
Debug.LogError("[TerminalPanel] introDirector is not assigned. Opening Start directly.");
|
||||
_introCompletedThisSession = true;
|
||||
TerminalUIAudio.NotifyMainMenuPhase(TerminalMainMenuPhase.Interactive);
|
||||
Open(TerminalPage.Start);
|
||||
return;
|
||||
}
|
||||
|
||||
BeginBootSequence();
|
||||
}
|
||||
|
||||
public void Hide()
|
||||
@@ -59,6 +93,66 @@ namespace AibisDream.UI
|
||||
Close();
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
if (_bootPhase != TerminalBootPhase.PressAnyKey)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (!TryGetBootInput())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
TerminalUIAudio.NotifyMainMenuPhase(TerminalMainMenuPhase.Interactive);
|
||||
StartCoroutine(PlayIntroAndRevealStart());
|
||||
}
|
||||
|
||||
private static bool TryGetBootInput()
|
||||
{
|
||||
if (Input.GetMouseButtonDown(0))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return Input.anyKeyDown;
|
||||
}
|
||||
|
||||
private void BeginBootSequence()
|
||||
{
|
||||
gameObject.SetActive(true);
|
||||
_backStack.Clear();
|
||||
_currentPage = TerminalPage.None;
|
||||
HideAllPages();
|
||||
|
||||
_bootPhase = TerminalBootPhase.PressAnyKey;
|
||||
TerminalUIAudio.NotifyMainMenuPhase(TerminalMainMenuPhase.None);
|
||||
}
|
||||
|
||||
private IEnumerator PlayIntroAndRevealStart()
|
||||
{
|
||||
_bootPhase = TerminalBootPhase.PlayingIntro;
|
||||
introDirector.Play();
|
||||
TerminalUIAudio.NotifyMainMenuPhase(TerminalMainMenuPhase.Boot);
|
||||
|
||||
while (introDirector.state == PlayState.Playing)
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
|
||||
_bootPhase = TerminalBootPhase.PostIntroPause;
|
||||
if (postIntroPause > 0f)
|
||||
{
|
||||
yield return new WaitForSecondsRealtime(postIntroPause);
|
||||
}
|
||||
|
||||
_introCompletedThisSession = true;
|
||||
_bootPhase = TerminalBootPhase.None;
|
||||
menuFrame.SetActive(true);
|
||||
Open(TerminalPage.Start);
|
||||
}
|
||||
|
||||
public void Open(TerminalPage page)
|
||||
{
|
||||
if (!HasRequiredPages() || page == TerminalPage.None)
|
||||
@@ -118,7 +212,17 @@ namespace AibisDream.UI
|
||||
|
||||
public bool HandleEscape()
|
||||
{
|
||||
if (!IsOpen)
|
||||
if (!gameObject.activeSelf)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (_bootPhase != TerminalBootPhase.None)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
if (_currentPage == TerminalPage.None)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -140,9 +244,15 @@ namespace AibisDream.UI
|
||||
|
||||
public void Close()
|
||||
{
|
||||
if (introDirector != null)
|
||||
{
|
||||
introDirector.Stop();
|
||||
}
|
||||
|
||||
HideAllPages();
|
||||
_backStack.Clear();
|
||||
_currentPage = TerminalPage.None;
|
||||
_bootPhase = TerminalBootPhase.None;
|
||||
gameObject.SetActive(false);
|
||||
}
|
||||
|
||||
|
||||
@@ -116,8 +116,9 @@ namespace AibisDream.UI
|
||||
|
||||
private System.Collections.IEnumerator DrawRecordsWhenReady()
|
||||
{
|
||||
yield return null;
|
||||
DrawRecords();
|
||||
yield return null;
|
||||
ScrollToBottom();
|
||||
}
|
||||
|
||||
private void ConfigureContentRect()
|
||||
@@ -179,12 +180,22 @@ namespace AibisDream.UI
|
||||
{
|
||||
LayoutRebuilder.ForceRebuildLayoutImmediate(contentRect);
|
||||
}
|
||||
}
|
||||
|
||||
if (scrollRect != null)
|
||||
private void ScrollToBottom()
|
||||
{
|
||||
if (scrollRect == null)
|
||||
{
|
||||
Canvas.ForceUpdateCanvases();
|
||||
scrollRect.verticalNormalizedPosition = 1f;
|
||||
return;
|
||||
}
|
||||
|
||||
if (recordRoot is RectTransform contentRect)
|
||||
{
|
||||
LayoutRebuilder.ForceRebuildLayoutImmediate(contentRect);
|
||||
}
|
||||
|
||||
Canvas.ForceUpdateCanvases();
|
||||
scrollRect.verticalNormalizedPosition = 0f;
|
||||
}
|
||||
|
||||
private void ClearRecordItems()
|
||||
|
||||
@@ -163,12 +163,26 @@ namespace AibisDream.UI
|
||||
|
||||
private static void ContinueGame()
|
||||
{
|
||||
UIManager.Instance.CloseTerminalThen(() => GameManager.Instance.StartWithSlot(SlotIndex.Auto));
|
||||
var terminal = UIManager.Instance.GetPanel<TerminalPanel>();
|
||||
if (terminal != null && terminal.IsOpen)
|
||||
{
|
||||
terminal.CloseThen(() => GameManager.Instance.StartWithSlot(SlotIndex.Auto));
|
||||
return;
|
||||
}
|
||||
|
||||
GameManager.Instance.StartWithSlot(SlotIndex.Auto);
|
||||
}
|
||||
|
||||
private static void StartNewGame()
|
||||
{
|
||||
UIManager.Instance.CloseTerminalThen(() => GameManager.Instance.StartNewGame());
|
||||
var terminal = UIManager.Instance.GetPanel<TerminalPanel>();
|
||||
if (terminal != null && terminal.IsOpen)
|
||||
{
|
||||
terminal.CloseThen(() => GameManager.Instance.StartNewGame());
|
||||
return;
|
||||
}
|
||||
|
||||
GameManager.Instance.StartNewGame();
|
||||
}
|
||||
|
||||
private void OpenChapter()
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
using AibisDream;
|
||||
using AibisDream.Framework;
|
||||
|
||||
namespace AibisDream.UI
|
||||
{
|
||||
public enum TerminalMainMenuPhase
|
||||
{
|
||||
None = 0,
|
||||
Boot = 1,
|
||||
Interactive = 2,
|
||||
}
|
||||
|
||||
public static class TerminalUIAudio
|
||||
{
|
||||
public static void NotifyHover() =>
|
||||
SingleCastEventSystem.Global.Trigger(TerminalUIAudioEnum.Hover);
|
||||
|
||||
public static void NotifyClick() =>
|
||||
SingleCastEventSystem.Global.Trigger(TerminalUIAudioEnum.Click);
|
||||
|
||||
public static void NotifyMainMenuPhase(TerminalMainMenuPhase phase) =>
|
||||
EnumEventSystem.Global.Send(TerminalUIEvent.MainMenuPhase, phase);
|
||||
|
||||
public static void NotifyPauseMenuAmbEnter() =>
|
||||
EnumEventSystem.Global.Send(TerminalUIEvent.PauseMenuAmbEnter);
|
||||
|
||||
public static void NotifyPauseMenuAmbExit(bool restorePrevious) =>
|
||||
EnumEventSystem.Global.Send(TerminalUIEvent.PauseMenuAmbExit, restorePrevious);
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user