diff --git a/Assets/uDesktopMascot/Editor/EditorTest/CsvLocalizationTests.cs b/Assets/uDesktopMascot/Editor/EditorTest/CsvLocalizationTests.cs new file mode 100644 index 00000000..a3d45442 --- /dev/null +++ b/Assets/uDesktopMascot/Editor/EditorTest/CsvLocalizationTests.cs @@ -0,0 +1,114 @@ +#if UNITY_EDITOR || UNITY_INCLUDE_TESTS + +using NUnit.Framework; +using UnityEngine; +using UnityEditor; +using System.IO; +using System.Collections.Generic; + +namespace uDesktopMascot.Editor.EditorTest +{ + public class CsvLocalizationTests + { + [Test] + public void LocalizationCsvShouldNotHaveEmptyEntries() + { + // CSVファイルのパス + string csvPath = "Assets/uDesktopMascot/LocalizationTable/LocalizationTable.csv"; + + if (!File.Exists(csvPath)) + { + Assert.Fail($"CSVファイルが見つかりませんでした: {csvPath}"); + } + + string[] lines = File.ReadAllLines(csvPath); + + if (lines.Length == 0) + { + Assert.Fail("CSVファイルが空です。"); + } + + // ヘッダー行(最初の行)を取得 + string headerLine = lines[0]; + string[] headers = SplitCsvLine(headerLine); + + // 言語列を特定(キー列を除く) + List languages = new List(); + for (int i = 1; i < headers.Length; i++) // 最初の列はキーと仮定 + { + languages.Add(headers[i]); + } + + // 各行を処理 + for (int lineNumber = 1; lineNumber < lines.Length; lineNumber++) + { + string line = lines[lineNumber]; + if (string.IsNullOrWhiteSpace(line)) + { + continue; // 空行はスキップ + } + + string[] columns = SplitCsvLine(line); + + if (columns.Length != headers.Length) + { + Assert.Fail($"行 {lineNumber + 1}: 列の数がヘッダーと一致しません。期待される列数: {headers.Length}, 実際の列数: {columns.Length}"); + } + + string key = columns[0]; + + for (int i = 1; i < columns.Length; i++) + { + string value = columns[i]; + if (string.IsNullOrWhiteSpace(value)) + { + string language = headers[i]; + Assert.Fail($"行 {lineNumber + 1}: キー '{key}' の言語 '{language}' の値が空です。"); + } + } + } + } + + // CSVの1行を分割するヘルパーメソッド + private string[] SplitCsvLine(string line) + { + List fields = new List(); + bool inQuotes = false; + string field = ""; + + for (int i = 0; i < line.Length; i++) + { + char c = line[i]; + + if (c == '"') + { + if (inQuotes && i + 1 < line.Length && line[i + 1] == '"') + { + // エスケープされたダブルクオート + field += '"'; + i++; // 次のダブルクオートをスキップ + } + else + { + inQuotes = !inQuotes; + } + } + else if (c == ',' && !inQuotes) + { + fields.Add(field); + field = ""; + } + else + { + field += c; + } + } + + fields.Add(field); + + return fields.ToArray(); + } + } +} + +#endif \ No newline at end of file diff --git a/Assets/uDesktopMascot/Editor/EditorTest/CsvLocalizationTests.cs.meta b/Assets/uDesktopMascot/Editor/EditorTest/CsvLocalizationTests.cs.meta new file mode 100644 index 00000000..ab7251e4 --- /dev/null +++ b/Assets/uDesktopMascot/Editor/EditorTest/CsvLocalizationTests.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: a678333cd602412d9fd2010af30f35bb +timeCreated: 1738753920 \ No newline at end of file diff --git a/Assets/uDesktopMascot/Editor/EditorTest/LocalizationTests.cs b/Assets/uDesktopMascot/Editor/EditorTest/LocalizationTests.cs new file mode 100644 index 00000000..273ed665 --- /dev/null +++ b/Assets/uDesktopMascot/Editor/EditorTest/LocalizationTests.cs @@ -0,0 +1,52 @@ +#if UNITY_EDITOR || UNITY_INCLUDE_TESTS + +using NUnit.Framework; +using UnityEngine; +using UnityEditor; +using UnityEngine.Localization; +using UnityEngine.Localization.Tables; +using UnityEditor.Localization; +using System.IO; + +namespace uDesktopMascot.Editor.EditorTest +{ + public class LocalizationTests + { + [Test] + public void LocalizationTablesShouldNotHaveEmptyEntries() + { + // ローカリゼーションテーブルが格納されているフォルダのパスを指定 + string localizationFolderPath = "Assets/uDesktopMascot/LocalizationTable"; + string[] tableGuids = AssetDatabase.FindAssets("t:StringTable", new[] { localizationFolderPath }); + + foreach (string tableGuid in tableGuids) + { + string path = AssetDatabase.GUIDToAssetPath(tableGuid); + var table = AssetDatabase.LoadAssetAtPath(path); + + if (table == null) + { + continue; + } + + // ロケール識別子を取得 + var localeIdentifier = table.LocaleIdentifier.Code; + + // テーブル内の各エントリを処理 + foreach (var entry in table.Values) + { + // エントリの値を取得 + string entryValue = entry.Value; + + if (string.IsNullOrWhiteSpace(entryValue)) + { + // エントリが空白の場合、テストを失敗させる + Assert.Fail($"テーブル '{table.name}' のロケール '{localeIdentifier}' のキー '{entry.Key}' に空の文字列があります。"); + } + } + } + } + } +} + +#endif \ No newline at end of file diff --git a/Assets/uDesktopMascot/Editor/EditorTest/LocalizationTests.cs.meta b/Assets/uDesktopMascot/Editor/EditorTest/LocalizationTests.cs.meta new file mode 100644 index 00000000..b072b9b2 --- /dev/null +++ b/Assets/uDesktopMascot/Editor/EditorTest/LocalizationTests.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 045950dd21be4d9189e1454b2b8a51ce +timeCreated: 1738754126 \ No newline at end of file diff --git a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable Shared Data.asset b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable Shared Data.asset index 1e364d42..9e67d93b 100644 --- a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable Shared Data.asset +++ b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable Shared Data.asset @@ -43,8 +43,16 @@ MonoBehaviour: m_Key: MSG_SKIP_UPDATE_DIALOG_TOGGLE_TEXT m_Metadata: m_Items: [] - - m_Id: 3977592391348224 - m_Key: WORD_MENU_WEB_UI + - m_Id: 4547369455259648 + m_Key: WORD_SEND_MESSAGE_BUTTON_TEXT + m_Metadata: + m_Items: [] + - m_Id: 4599798494334976 + m_Key: WORD_AI_CHAT + m_Metadata: + m_Items: [] + - m_Id: 4600571496173568 + m_Key: WORD_WEB_UI_BUTTON m_Metadata: m_Items: [] m_Metadata: diff --git a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable.csv b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable.csv index 1eb4d6f5..160b8c10 100644 --- a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable.csv +++ b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable.csv @@ -6,3 +6,6 @@ Key,Id,English(en),French(fr),Italian(it),Japanese(ja),Korean(ko) "MSG_NEW_VERSION",2499933916303360,"A new version v{0} has been released.","La nouvelle version de v{0} a été publiée.","È stata rilasciata la nuova versione di v{0}.","新しいVerのv{0}が\nリリースされています","새로운 Ver의 v{0}가\n배포되었습니다" "WORD_CLOSE_BUTTON_TEXT",3116372423544832,"Close","Fermer","Chiudere","閉じる","닫기" "MSG_SKIP_UPDATE_DIALOG_TOGGLE_TEXT",3116588740579328,"Do not display the dialog until the next version.","Ne pas afficher de dialogue jusqu'à la prochaine version","Non mostrare il dialogo fino alla prossima versione.","次のversionまでダイアログを表示しない","다음 버전까지 다이얼로그를 표시하지 않음" +"WORD_SEND_MESSAGE_BUTTON_TEXT",4547369455259648,"Send","Envoi","Invio","送信","전송" +"WORD_AI_CHAT",4599798494334976,"Chat","Chat","Chat","チャット","챗봇" +"WORD_WEB_UI_BUTTON",4600571496173568,"Web UI","Interface utilisateur web","Interfaccia web","ウェブUI","웹 UI" diff --git a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_en.asset b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_en.asset index ee79debe..52a524f6 100644 --- a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_en.asset +++ b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_en.asset @@ -24,7 +24,7 @@ MonoBehaviour: m_Metadata: m_Items: [] - m_Id: 557971768283136 - m_Localized: + m_Localized: Model addition/change m_Metadata: m_Items: [] - m_Id: 557971768283134 @@ -48,8 +48,16 @@ MonoBehaviour: m_Localized: Do not display the dialog until the next version. m_Metadata: m_Items: [] - - m_Id: 3977592391348224 - m_Localized: WebUI + - m_Id: 4547369455259648 + m_Localized: Send + m_Metadata: + m_Items: [] + - m_Id: 4599798494334976 + m_Localized: Chat + m_Metadata: + m_Items: [] + - m_Id: 4600571496173568 + m_Localized: Web UI m_Metadata: m_Items: [] references: diff --git a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_fr.asset b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_fr.asset index a00a358f..01262e15 100644 --- a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_fr.asset +++ b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_fr.asset @@ -24,7 +24,7 @@ MonoBehaviour: m_Metadata: m_Items: [] - m_Id: 557971768283136 - m_Localized: + m_Localized: "Ajout ou modification de mod\xE8le" m_Metadata: m_Items: [] - m_Id: 557971768283134 @@ -48,8 +48,16 @@ MonoBehaviour: m_Localized: "Ne pas afficher de dialogue jusqu'\xE0 la prochaine version" m_Metadata: m_Items: [] - - m_Id: 3977592391348224 - m_Localized: Interface utilisateur Web + - m_Id: 4547369455259648 + m_Localized: Envoi + m_Metadata: + m_Items: [] + - m_Id: 4599798494334976 + m_Localized: Chat + m_Metadata: + m_Items: [] + - m_Id: 4600571496173568 + m_Localized: Interface utilisateur web m_Metadata: m_Items: [] references: diff --git a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_it.asset b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_it.asset index e8c01e27..456d51a1 100644 --- a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_it.asset +++ b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_it.asset @@ -24,7 +24,7 @@ MonoBehaviour: m_Metadata: m_Items: [] - m_Id: 557971768283136 - m_Localized: + m_Localized: Aggiunta o modifica del modello m_Metadata: m_Items: [] - m_Id: 557971768283134 @@ -48,8 +48,16 @@ MonoBehaviour: m_Localized: Non mostrare il dialogo fino alla prossima versione. m_Metadata: m_Items: [] - - m_Id: 3977592391348224 - m_Localized: Interfaccia utente Web + - m_Id: 4547369455259648 + m_Localized: Invio + m_Metadata: + m_Items: [] + - m_Id: 4599798494334976 + m_Localized: Chat + m_Metadata: + m_Items: [] + - m_Id: 4600571496173568 + m_Localized: Interfaccia web m_Metadata: m_Items: [] references: diff --git a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_ja.asset b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_ja.asset index d4ab6354..33ddce08 100644 --- a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_ja.asset +++ b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_ja.asset @@ -46,7 +46,15 @@ MonoBehaviour: m_Localized: "\u6B21\u306Eversion\u307E\u3067\u30C0\u30A4\u30A2\u30ED\u30B0\u3092\u8868\u793A\u3057\u306A\u3044" m_Metadata: m_Items: [] - - m_Id: 3977592391348224 + - m_Id: 4547369455259648 + m_Localized: "\u9001\u4FE1" + m_Metadata: + m_Items: [] + - m_Id: 4599798494334976 + m_Localized: "\u30C1\u30E3\u30C3\u30C8" + m_Metadata: + m_Items: [] + - m_Id: 4600571496173568 m_Localized: "\u30A6\u30A7\u30D6UI" m_Metadata: m_Items: [] diff --git a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_ko.asset b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_ko.asset index afd4f216..30f7e5b1 100644 --- a/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_ko.asset +++ b/Assets/uDesktopMascot/LocalizationTable/LocalizationTable_ko.asset @@ -24,7 +24,7 @@ MonoBehaviour: m_Metadata: m_Items: [] - m_Id: 557971768283136 - m_Localized: + m_Localized: "\uBAA8\uB378 \uCD94\uAC00\u30FB\uBCC0\uACBD" m_Metadata: m_Items: [] - m_Id: 557971768283134 @@ -49,7 +49,15 @@ MonoBehaviour: \uD45C\uC2DC\uD558\uC9C0 \uC54A\uC74C" m_Metadata: m_Items: [] - - m_Id: 3977592391348224 + - m_Id: 4547369455259648 + m_Localized: "\uC804\uC1A1" + m_Metadata: + m_Items: [] + - m_Id: 4599798494334976 + m_Localized: "\uCC57\uBD07" + m_Metadata: + m_Items: [] + - m_Id: 4600571496173568 m_Localized: "\uC6F9 UI" m_Metadata: m_Items: [] diff --git a/Assets/uDesktopMascot/Resources/UI/Dialog/AIChatDialog.prefab b/Assets/uDesktopMascot/Resources/UI/Dialog/AIChatDialog.prefab new file mode 100644 index 00000000..b1e68b90 --- /dev/null +++ b/Assets/uDesktopMascot/Resources/UI/Dialog/AIChatDialog.prefab @@ -0,0 +1,3137 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &427754815121695540 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2167108824899840028} + m_Layer: 5 + m_Name: Header + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2167108824899840028 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 427754815121695540} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 6072143748768595981} + - {fileID: 3941071793075511355} + m_Father: {fileID: 8677491949241970153} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: -10} + m_SizeDelta: {x: 0, y: 30} + m_Pivot: {x: 0.5, y: 1} +--- !u!1 &597809613186944653 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6176751824365673} + - component: {fileID: 5513344101580430340} + - component: {fileID: 8360342144671338539} + - component: {fileID: 7178809285730366222} + - component: {fileID: 836892343778475403} + - component: {fileID: 1326064579903162146} + - component: {fileID: 6112206522812407479} + - component: {fileID: 5217478738680653781} + m_Layer: 5 + m_Name: AIChatDialog + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6176751824365673 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597809613186944653} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 8677491949241970153} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!223 &5513344101580430340 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597809613186944653} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 1 + m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 1 + m_TargetDisplay: 0 +--- !u!114 &8360342144671338539 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597809613186944653} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 300, y: 400} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!114 &7178809285730366222 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597809613186944653} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 3 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 51 +--- !u!114 &836892343778475403 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597809613186944653} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d5bec4785d84e1b86b3b43a4c21d842, type: 3} + m_Name: + m_EditorClassIdentifier: + closeButton: {fileID: 5639995492224611350} + inputField: {fileID: 9086674032288857436} + sendButton: {fileID: 7546998507068762756} + chatText: {fileID: 1344068280679628811} + llmCharacter: {fileID: 6112206522812407479} +--- !u!225 &1326064579903162146 +CanvasGroup: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597809613186944653} + m_Enabled: 1 + m_Alpha: 1 + m_Interactable: 1 + m_BlocksRaycasts: 1 + m_IgnoreParentGroups: 0 +--- !u!114 &6112206522812407479 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597809613186944653} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3f6c87a428fd5d0be9bbc686bdc8c3c2, type: 3} + m_Name: + m_EditorClassIdentifier: + advancedOptions: 0 + remote: 0 + _llm: {fileID: 5217478738680653781} + APIKey: + host: localhost + port: 13333 + numRetries: 10 + save: + saveCache: 0 + debugPrompt: 0 + numPredict: 256 + slot: -1 + grammar: + cachePrompt: 1 + seed: 0 + temperature: 0.2 + topK: 40 + topP: 0.9 + minP: 0.05 + repeatPenalty: 1.1 + presencePenalty: 0 + frequencyPenalty: 0 + tfsZ: 1 + typicalP: 1 + repeatLastN: 64 + penalizeNl: 1 + penaltyPrompt: + mirostat: 0 + mirostatTau: 5 + mirostatEta: 0.1 + nProbs: 0 + ignoreEos: 0 + nKeep: -1 + stop: [] + stream: 1 + playerName: user + AIName: assistant + prompt: A chat between a curious human and an artificial intelligence assistant. + The assistant gives helpful, detailed, and polite answers to the human's questions. + setNKeepToPrompt: 1 + chat: [] + grammarString: +--- !u!114 &5217478738680653781 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597809613186944653} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a50e3140c3ecaaf1c848dbf141cc2074, type: 3} + m_Name: + m_EditorClassIdentifier: + advancedOptions: 0 + remote: 0 + port: 13333 + numThreads: -1 + numGPULayers: 0 + debug: 0 + parallelPrompts: -1 + dontDestroyOnLoad: 1 + contextSize: 8192 + batchSize: 512 + model: tinyswallow-1.5b-instruct-q5_k_m.gguf + chatTemplate: chatml + lora: + loraWeights: + flashAttention: 0 + APIKey: + SSLCert: + SSLCertPath: + SSLKey: + SSLKeyPath: + minContextLength: 0 + maxContextLength: 32768 + embeddingsOnly: 0 + embeddingLength: 1536 +--- !u!1 &1191819277217825876 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1216635617723232747} + - component: {fileID: 3943630364504694475} + - component: {fileID: 1982236027721928664} + m_Layer: 5 + m_Name: Arrow + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1216635617723232747 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1191819277217825876} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 3941071793075511355} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0.5} + m_AnchorMax: {x: 1, y: 0.5} + m_AnchoredPosition: {x: -15, y: 0} + m_SizeDelta: {x: 20, y: 20} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3943630364504694475 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1191819277217825876} + m_CullTransparentMesh: 1 +--- !u!114 &1982236027721928664 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1191819277217825876} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10915, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &1825581880822643093 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5835966878794542309} + - component: {fileID: 879507199102401825} + - component: {fileID: 9188270736812411356} + - component: {fileID: 2222114919329047536} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5835966878794542309 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1825581880822643093} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 464397216052490665} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -10, y: -10} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &879507199102401825 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1825581880822643093} + m_CullTransparentMesh: 1 +--- !u!114 &9188270736812411356 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1825581880822643093} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: "\u9001\u4FE1" + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_sharedMaterial: {fileID: 3991398196324383077, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4278190080 + m_fontColor: {r: 0, g: 0, b: 0, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 13.8 + m_fontSizeBase: 24.81 + m_fontWeight: 400 + m_enableAutoSizing: 1 + m_fontSizeMin: 5 + m_fontSizeMax: 72 + m_fontStyle: 1 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!114 &2222114919329047536 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1825581880822643093} + 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:e0bc4458d73676a429c1b840d5dbc577 + m_TableEntryReference: + m_KeyId: 4547369455259648 + m_Key: + m_FallbackState: 0 + m_WaitForCompletion: 0 + m_LocalVariables: [] + m_FormatArguments: [] + m_UpdateString: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 9188270736812411356} + m_TargetAssemblyTypeName: TMPro.TMP_Text, Unity.TextMeshPro + m_MethodName: set_text + m_Mode: 0 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + references: + version: 2 + RefIds: [] +--- !u!1 &2011946322080632688 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2526071549902428826} + - component: {fileID: 2665409481373997741} + - component: {fileID: 8564436080570686006} + m_Layer: 5 + m_Name: Item Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2526071549902428826 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2011946322080632688} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 3672910102478845397} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -960, y: -540} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &2665409481373997741 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2011946322080632688} + m_CullTransparentMesh: 1 +--- !u!114 &8564436080570686006 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2011946322080632688} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &2918486061637485016 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3345971494748052864} + m_Layer: 5 + m_Name: InputField + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3345971494748052864 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2918486061637485016} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 2467664973955811234} + - {fileID: 464397216052490665} + m_Father: {fileID: 8677491949241970153} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 60} + m_Pivot: {x: 0.5, y: 0} +--- !u!1 &4642253891359212054 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4900963969629533199} + - component: {fileID: 3909987692260098427} + - component: {fileID: 5209651235366556408} + - component: {fileID: 8779691265405822760} + m_Layer: 5 + m_Name: Scroll View + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4900963969629533199 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4642253891359212054} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 5073787338477075761} + - {fileID: 298617124279236922} + m_Father: {fileID: 5629550984155948161} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3909987692260098427 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4642253891359212054} + m_CullTransparentMesh: 1 +--- !u!114 &5209651235366556408 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4642253891359212054} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 0.392} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &8779691265405822760 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4642253891359212054} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1aa08ab6e0800fa44ae55d278d1423e3, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Content: {fileID: 4783108051107848612} + m_Horizontal: 0 + m_Vertical: 1 + m_MovementType: 1 + m_Elasticity: 0.1 + m_Inertia: 1 + m_DecelerationRate: 0.135 + m_ScrollSensitivity: 1 + m_Viewport: {fileID: 5073787338477075761} + m_HorizontalScrollbar: {fileID: 0} + m_VerticalScrollbar: {fileID: 8046379205950246709} + m_HorizontalScrollbarVisibility: 2 + m_VerticalScrollbarVisibility: 2 + m_HorizontalScrollbarSpacing: -3 + m_VerticalScrollbarSpacing: -3 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &4885176268719361660 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5073787338477075761} + - component: {fileID: 6455620886353723870} + - component: {fileID: 3198461413255701117} + - component: {fileID: 7086741770731695539} + m_Layer: 5 + m_Name: Viewport + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5073787338477075761 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4885176268719361660} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 4783108051107848612} + m_Father: {fileID: 4900963969629533199} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 1} +--- !u!222 &6455620886353723870 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4885176268719361660} + m_CullTransparentMesh: 1 +--- !u!114 &3198461413255701117 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4885176268719361660} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10917, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &7086741770731695539 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4885176268719361660} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ShowMaskGraphic: 0 +--- !u!1 &4933710071724404455 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1742707961409589524} + - component: {fileID: 6887424444196638793} + - component: {fileID: 1719912452342095965} + m_Layer: 5 + m_Name: Handle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1742707961409589524 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4933710071724404455} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 7105671484977604944} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 20, y: 20} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &6887424444196638793 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4933710071724404455} + m_CullTransparentMesh: 1 +--- !u!114 &1719912452342095965 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4933710071724404455} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &5715630290626548991 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3941071793075511355} + - component: {fileID: 358323803806768149} + - component: {fileID: 6740588879956590701} + - component: {fileID: 5358097054321343755} + m_Layer: 5 + m_Name: SelectModel + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3941071793075511355 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5715630290626548991} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 7510135007038928982} + - {fileID: 1216635617723232747} + - {fileID: 4547839554891548110} + m_Father: {fileID: 2167108824899840028} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 10, y: 0} + m_SizeDelta: {x: 100, y: -5} + m_Pivot: {x: 0, y: 1} +--- !u!222 &358323803806768149 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5715630290626548991} + m_CullTransparentMesh: 1 +--- !u!114 &6740588879956590701 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5715630290626548991} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &5358097054321343755 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5715630290626548991} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7b743370ac3e4ec2a1668f5455a8ef8a, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 6740588879956590701} + m_Template: {fileID: 4547839554891548110} + m_CaptionText: {fileID: 2624331771529672260} + m_CaptionImage: {fileID: 0} + m_Placeholder: {fileID: 0} + m_ItemText: {fileID: 6999733548394136687} + m_ItemImage: {fileID: 0} + m_Value: 0 + m_MultiSelect: 0 + m_Options: + m_Options: + - m_Text: TinySwallow-1.5B + m_Image: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + - m_Text: Qwen2 + m_Image: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] + m_AlphaFadeSpeed: 0.15 +--- !u!1 &6235780095903241683 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4783108051107848612} + - component: {fileID: 3246938766221706469} + - component: {fileID: 1344068280679628811} + - component: {fileID: 3572127222032671795} + m_Layer: 5 + m_Name: Content + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4783108051107848612 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6235780095903241683} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 5073787338477075761} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 1} +--- !u!222 &3246938766221706469 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6235780095903241683} + m_CullTransparentMesh: 1 +--- !u!114 &1344068280679628811 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6235780095903241683} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_sharedMaterial: {fileID: 3991398196324383077, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 0, g: 0, b: 0, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 15.74 + m_fontSizeBase: 15.74 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!114 &3572127222032671795 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6235780095903241683} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalFit: 0 + m_VerticalFit: 2 +--- !u!1 &6261024293022658861 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8677491949241970153} + - component: {fileID: 2038467865358868612} + - component: {fileID: 3825194714244919165} + m_Layer: 5 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8677491949241970153 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6261024293022658861} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 2167108824899840028} + - {fileID: 5629550984155948161} + - {fileID: 3345971494748052864} + m_Father: {fileID: 6176751824365673} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 300, y: 500} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &2038467865358868612 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6261024293022658861} + m_CullTransparentMesh: 1 +--- !u!114 &3825194714244919165 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6261024293022658861} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 0.8549965, b: 0.6084906, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: dfa4e4e0aee0aeb4187bd67c0ffd1627, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &6320576029498746642 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4547839554891548110} + - component: {fileID: 2486622805922858673} + - component: {fileID: 4323018162134382297} + - component: {fileID: 555070912098992900} + m_Layer: 5 + m_Name: Template + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &4547839554891548110 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6320576029498746642} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 4883908121593103312} + - {fileID: 2487212273565809633} + m_Father: {fileID: 3941071793075511355} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: 0, y: 2} + m_SizeDelta: {x: 0, y: 150} + m_Pivot: {x: 0.5, y: 1} +--- !u!222 &2486622805922858673 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6320576029498746642} + m_CullTransparentMesh: 1 +--- !u!114 &4323018162134382297 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6320576029498746642} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &555070912098992900 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6320576029498746642} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1aa08ab6e0800fa44ae55d278d1423e3, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Content: {fileID: 257109411130262071} + m_Horizontal: 0 + m_Vertical: 1 + m_MovementType: 2 + m_Elasticity: 0.1 + m_Inertia: 1 + m_DecelerationRate: 0.135 + m_ScrollSensitivity: 1 + m_Viewport: {fileID: 4883908121593103312} + m_HorizontalScrollbar: {fileID: 0} + m_VerticalScrollbar: {fileID: 5103419478391609503} + m_HorizontalScrollbarVisibility: 0 + m_VerticalScrollbarVisibility: 2 + m_HorizontalScrollbarSpacing: 0 + m_VerticalScrollbarSpacing: -3 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &6354385400194199508 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 464397216052490665} + - component: {fileID: 1949751614461397561} + - component: {fileID: 6104744601956445080} + - component: {fileID: 7546998507068762756} + m_Layer: 5 + m_Name: SendButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &464397216052490665 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6354385400194199508} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 5835966878794542309} + m_Father: {fileID: 3345971494748052864} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 124.850006, y: 0} + m_SizeDelta: {x: -259.7, y: -30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1949751614461397561 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6354385400194199508} + m_CullTransparentMesh: 1 +--- !u!114 &6104744601956445080 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6354385400194199508} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &7546998507068762756 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6354385400194199508} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 6104744601956445080} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &6796991086171166151 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 257109411130262071} + m_Layer: 5 + m_Name: Content + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &257109411130262071 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6796991086171166151} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 3672910102478845397} + m_Father: {fileID: 4883908121593103312} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 28} + m_Pivot: {x: 0.5, y: 1} +--- !u!1 &6894284249605628521 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7105671484977604944} + m_Layer: 5 + m_Name: Sliding Area + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7105671484977604944 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6894284249605628521} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 1742707961409589524} + m_Father: {fileID: 298617124279236922} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -20, y: -20} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &7257792154255253898 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7571217975064038492} + - component: {fileID: 4825658688666540774} + - component: {fileID: 8260624457411529801} + m_Layer: 5 + m_Name: Item Checkmark + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7571217975064038492 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7257792154255253898} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 3672910102478845397} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.5} + m_AnchorMax: {x: 0, y: 0.5} + m_AnchoredPosition: {x: 10, y: 0} + m_SizeDelta: {x: 20, y: 20} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &4825658688666540774 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7257792154255253898} + m_CullTransparentMesh: 1 +--- !u!114 &8260624457411529801 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7257792154255253898} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &7343329927488430552 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8875481821645359577} + - component: {fileID: 7290803557204156904} + - component: {fileID: 6999733548394136687} + m_Layer: 5 + m_Name: Item Label + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8875481821645359577 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7343329927488430552} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 3672910102478845397} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 5, y: -0.5} + m_SizeDelta: {x: -30, y: -3} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &7290803557204156904 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7343329927488430552} + m_CullTransparentMesh: 1 +--- !u!114 &6999733548394136687 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7343329927488430552} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Option A + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_sharedMaterial: {fileID: 3991398196324383077, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 14 + m_fontSizeBase: 14 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &7626494985604337093 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6072143748768595981} + - component: {fileID: 4465701710430449364} + - component: {fileID: 7714476198397165630} + - component: {fileID: 5639995492224611350} + m_Layer: 5 + m_Name: CloseButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6072143748768595981 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7626494985604337093} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 2167108824899840028} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -5, y: 0} + m_SizeDelta: {x: 25, y: 25} + m_Pivot: {x: 1, y: 1} +--- !u!222 &4465701710430449364 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7626494985604337093} + m_CullTransparentMesh: 1 +--- !u!114 &7714476198397165630 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7626494985604337093} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 5e1027c3ad2b94b47b68a8577784aef1, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &5639995492224611350 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7626494985604337093} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 7714476198397165630} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &7636683121089262640 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2467664973955811234} + - component: {fileID: 800919039656117368} + - component: {fileID: 5883535071337233464} + - component: {fileID: 9086674032288857436} + m_Layer: 5 + m_Name: InputField (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2467664973955811234 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7636683121089262640} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 1606526013243995245} + m_Father: {fileID: 3345971494748052864} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -25, y: 0} + m_SizeDelta: {x: -50, y: -20} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &800919039656117368 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7636683121089262640} + m_CullTransparentMesh: 1 +--- !u!114 &5883535071337233464 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7636683121089262640} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &9086674032288857436 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7636683121089262640} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2da0c512f12947e489f739169773d7ca, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 5883535071337233464} + m_TextViewport: {fileID: 1606526013243995245} + m_TextComponent: {fileID: 150473854424509227} + m_Placeholder: {fileID: 5612823140835963700} + m_VerticalScrollbar: {fileID: 0} + m_VerticalScrollbarEventHandler: {fileID: 0} + m_LayoutGroup: {fileID: 0} + m_ScrollSensitivity: 1 + m_ContentType: 0 + m_InputType: 0 + m_AsteriskChar: 42 + m_KeyboardType: 0 + m_LineType: 0 + m_HideMobileInput: 0 + m_HideSoftKeyboard: 0 + m_CharacterValidation: 0 + m_RegexValue: + m_GlobalPointSize: 14 + m_CharacterLimit: 0 + m_OnEndEdit: + m_PersistentCalls: + m_Calls: [] + m_OnSubmit: + m_PersistentCalls: + m_Calls: [] + m_OnSelect: + m_PersistentCalls: + m_Calls: [] + m_OnDeselect: + m_PersistentCalls: + m_Calls: [] + m_OnTextSelection: + m_PersistentCalls: + m_Calls: [] + m_OnEndTextSelection: + m_PersistentCalls: + m_Calls: [] + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] + m_OnTouchScreenKeyboardStatusChanged: + m_PersistentCalls: + m_Calls: [] + m_CaretColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_CustomCaretColor: 0 + m_SelectionColor: {r: 0.65882355, g: 0.80784315, b: 1, a: 0.7529412} + m_Text: + m_CaretBlinkRate: 0.85 + m_CaretWidth: 1 + m_ReadOnly: 0 + m_RichText: 1 + m_GlobalFontAsset: {fileID: 11400000, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_OnFocusSelectAll: 1 + m_ResetOnDeActivation: 1 + m_KeepTextSelectionVisible: 0 + m_RestoreOriginalTextOnEscape: 1 + m_isRichTextEditingAllowed: 0 + m_LineLimit: 0 + isAlert: 0 + m_InputValidator: {fileID: 0} + m_ShouldActivateOnSelect: 1 +--- !u!1 &7809518905888704600 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7510135007038928982} + - component: {fileID: 8551244476581882446} + - component: {fileID: 2624331771529672260} + m_Layer: 5 + m_Name: Label + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7510135007038928982 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7809518905888704600} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 3941071793075511355} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -7.5, y: -0.5} + m_SizeDelta: {x: -35, y: -13} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8551244476581882446 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7809518905888704600} + m_CullTransparentMesh: 1 +--- !u!114 &2624331771529672260 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7809518905888704600} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: TinySwallow-1.5B + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_sharedMaterial: {fileID: 3991398196324383077, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 7.35 + m_fontSizeBase: 14 + m_fontWeight: 400 + m_enableAutoSizing: 1 + m_fontSizeMin: 4 + m_fontSizeMax: 72 + m_fontStyle: 1 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &7952464444412158182 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3672910102478845397} + - component: {fileID: 3911341884144205254} + m_Layer: 5 + m_Name: Item + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3672910102478845397 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7952464444412158182} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 2526071549902428826} + - {fileID: 7571217975064038492} + - {fileID: 8875481821645359577} + m_Father: {fileID: 257109411130262071} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.5} + m_AnchorMax: {x: 1, y: 0.5} + m_AnchoredPosition: {x: -960, y: -540} + m_SizeDelta: {x: 0, y: 20} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &3911341884144205254 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7952464444412158182} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 8564436080570686006} + toggleTransition: 1 + graphic: {fileID: 8260624457411529801} + m_Group: {fileID: 0} + onValueChanged: + m_PersistentCalls: + m_Calls: [] + m_IsOn: 1 +--- !u!1 &7983052094079074821 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2487212273565809633} + - component: {fileID: 3130362927977853630} + - component: {fileID: 7276940770400105182} + - component: {fileID: 5103419478391609503} + m_Layer: 5 + m_Name: Scrollbar + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2487212273565809633 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7983052094079074821} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 4859244753024952841} + m_Father: {fileID: 4547839554891548110} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -960, y: -540} + m_SizeDelta: {x: 20, y: 0} + m_Pivot: {x: 1, y: 1} +--- !u!222 &3130362927977853630 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7983052094079074821} + m_CullTransparentMesh: 1 +--- !u!114 &7276940770400105182 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7983052094079074821} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &5103419478391609503 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7983052094079074821} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2a4db7a114972834c8e4117be1d82ba3, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 5325990431697182081} + m_HandleRect: {fileID: 952628723390771850} + m_Direction: 2 + m_Value: 0 + m_Size: 0.2 + m_NumberOfSteps: 0 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &8315480154303139695 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 327106448374965289} + - component: {fileID: 3218336285452424897} + - component: {fileID: 150473854424509227} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &327106448374965289 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8315480154303139695} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 1606526013243995245} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3218336285452424897 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8315480154303139695} + m_CullTransparentMesh: 1 +--- !u!114 &150473854424509227 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8315480154303139695} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: "\u200B" + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_sharedMaterial: {fileID: 3991398196324383077, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 14 + m_fontSizeBase: 14 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 3 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 1 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &8326494910959131221 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5629550984155948161} + m_Layer: 5 + m_Name: ChatBody + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5629550984155948161 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8326494910959131221} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 4900963969629533199} + m_Father: {fileID: 8677491949241970153} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 10} + m_SizeDelta: {x: 0, y: -100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &8402228848442245692 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1957862026323852725} + - component: {fileID: 7443620763778716178} + - component: {fileID: 5612823140835963700} + - component: {fileID: 1671299075975083345} + m_Layer: 5 + m_Name: Placeholder + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1957862026323852725 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8402228848442245692} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 1606526013243995245} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &7443620763778716178 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8402228848442245692} + m_CullTransparentMesh: 1 +--- !u!114 &5612823140835963700 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8402228848442245692} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Enter text... + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_sharedMaterial: {fileID: 3991398196324383077, guid: a4ac5cd8892e24e4790c00e0ef00a927, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 2150773298 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 0.5} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 14 + m_fontSizeBase: 14 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 2 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 0 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 1 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!114 &1671299075975083345 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8402228848442245692} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 1 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1 &8428170152331502176 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4883908121593103312} + - component: {fileID: 4361193112569290773} + - component: {fileID: 372448778791639558} + - component: {fileID: 7565337875492240821} + m_Layer: 5 + m_Name: Viewport + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4883908121593103312 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8428170152331502176} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 257109411130262071} + m_Father: {fileID: 4547839554891548110} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -960, y: -540} + m_SizeDelta: {x: -18, y: 0} + m_Pivot: {x: 0, y: 1} +--- !u!114 &4361193112569290773 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8428170152331502176} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ShowMaskGraphic: 0 +--- !u!222 &372448778791639558 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8428170152331502176} + m_CullTransparentMesh: 1 +--- !u!114 &7565337875492240821 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8428170152331502176} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10917, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &8722096320131765505 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1606526013243995245} + - component: {fileID: 1449304275190309648} + m_Layer: 5 + m_Name: Text Area + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1606526013243995245 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8722096320131765505} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 1957862026323852725} + - {fileID: 327106448374965289} + m_Father: {fileID: 2467664973955811234} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: -0.5} + m_SizeDelta: {x: -20, y: -13} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1449304275190309648 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8722096320131765505} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: {x: -8, y: -5, z: -8, w: -5} + m_Softness: {x: 0, y: 0} +--- !u!1 &8933022041207236763 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 298617124279236922} + - component: {fileID: 8647695088083912694} + - component: {fileID: 6346617841252310940} + - component: {fileID: 8046379205950246709} + m_Layer: 5 + m_Name: Scrollbar Vertical + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &298617124279236922 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8933022041207236763} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 7105671484977604944} + m_Father: {fileID: 4900963969629533199} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 8.6, y: 0} + m_Pivot: {x: 1, y: 1} +--- !u!222 &8647695088083912694 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8933022041207236763} + m_CullTransparentMesh: 1 +--- !u!114 &6346617841252310940 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8933022041207236763} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &8046379205950246709 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8933022041207236763} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2a4db7a114972834c8e4117be1d82ba3, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1719912452342095965} + m_HandleRect: {fileID: 1742707961409589524} + m_Direction: 2 + m_Value: 0 + m_Size: 1 + m_NumberOfSteps: 0 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &8985236454995284120 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 952628723390771850} + - component: {fileID: 2850636214007602289} + - component: {fileID: 5325990431697182081} + m_Layer: 5 + m_Name: Handle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &952628723390771850 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8985236454995284120} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 4859244753024952841} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0.2} + m_AnchoredPosition: {x: -540, y: -960} + m_SizeDelta: {x: 20, y: 20} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &2850636214007602289 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8985236454995284120} + m_CullTransparentMesh: 1 +--- !u!114 &5325990431697182081 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8985236454995284120} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &9129034341073785559 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4859244753024952841} + m_Layer: 5 + m_Name: Sliding Area + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4859244753024952841 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9129034341073785559} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 952628723390771850} + m_Father: {fileID: 2487212273565809633} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -540, y: -960} + m_SizeDelta: {x: -20, y: -20} + m_Pivot: {x: 0.5, y: 0.5} diff --git a/Assets/uDesktopMascot/Prefab.meta b/Assets/uDesktopMascot/Resources/UI/Dialog/AIChatDialog.prefab.meta similarity index 57% rename from Assets/uDesktopMascot/Prefab.meta rename to Assets/uDesktopMascot/Resources/UI/Dialog/AIChatDialog.prefab.meta index 3b48796d..518e4bb2 100644 --- a/Assets/uDesktopMascot/Prefab.meta +++ b/Assets/uDesktopMascot/Resources/UI/Dialog/AIChatDialog.prefab.meta @@ -1,7 +1,6 @@ fileFormatVersion: 2 -guid: ee632e415a6f89149acf27d781a94a1a -folderAsset: yes -DefaultImporter: +guid: 58ee5ed6b9fc12e4d8328849c53ce41f +PrefabImporter: externalObjects: {} userData: assetBundleName: diff --git a/Assets/uDesktopMascot/Resources/UI/Dialog/DialogBase.prefab b/Assets/uDesktopMascot/Resources/UI/Dialog/DialogBase.prefab index 245cfeb4..d1e464f6 100644 --- a/Assets/uDesktopMascot/Resources/UI/Dialog/DialogBase.prefab +++ b/Assets/uDesktopMascot/Resources/UI/Dialog/DialogBase.prefab @@ -12,6 +12,7 @@ GameObject: - component: {fileID: 5513344101580430340} - component: {fileID: 8360342144671338539} - component: {fileID: 7178809285730366222} + - component: {fileID: 6917943724112557523} m_Layer: 5 m_Name: DialogBase m_TagString: Untagged @@ -102,6 +103,174 @@ MonoBehaviour: m_BlockingMask: serializedVersion: 2 m_Bits: 51 +--- !u!225 &6917943724112557523 +CanvasGroup: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597809613186944653} + m_Enabled: 1 + m_Alpha: 1 + m_Interactable: 1 + m_BlocksRaycasts: 1 + m_IgnoreParentGroups: 0 +--- !u!1 &2992976885509807405 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3912126287803504759} + m_Layer: 5 + m_Name: Header + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3912126287803504759 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2992976885509807405} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 3771116364324596167} + m_Father: {fileID: 8677491949241970153} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: -10} + m_SizeDelta: {x: 0, y: 25} + m_Pivot: {x: 0.5, y: 1} +--- !u!1 &4941295098813808956 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3771116364324596167} + - component: {fileID: 4249368379936409733} + - component: {fileID: 2071001624229714816} + - component: {fileID: 5849125722573429082} + m_Layer: 5 + m_Name: CloseButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3771116364324596167 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4941295098813808956} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 3912126287803504759} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -5, y: 0} + m_SizeDelta: {x: 25, y: 25} + m_Pivot: {x: 1, y: 1} +--- !u!222 &4249368379936409733 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4941295098813808956} + m_CullTransparentMesh: 1 +--- !u!114 &2071001624229714816 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4941295098813808956} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 5e1027c3ad2b94b47b68a8577784aef1, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &5849125722573429082 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4941295098813808956} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 2071001624229714816} + m_OnClick: + m_PersistentCalls: + m_Calls: [] --- !u!1 &6261024293022658861 GameObject: m_ObjectHideFlags: 0 @@ -131,7 +300,8 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 1 - m_Children: [] + m_Children: + - {fileID: 3912126287803504759} m_Father: {fileID: 6176751824365673} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} diff --git a/Assets/uDesktopMascot/Resources/UI/Dialog/ShowUpdateDialog.prefab b/Assets/uDesktopMascot/Resources/UI/Dialog/ShowUpdateDialog.prefab index f0c8aa78..f960aca6 100644 --- a/Assets/uDesktopMascot/Resources/UI/Dialog/ShowUpdateDialog.prefab +++ b/Assets/uDesktopMascot/Resources/UI/Dialog/ShowUpdateDialog.prefab @@ -239,7 +239,7 @@ Canvas: m_AdditionalShaderChannelsFlag: 25 m_UpdateRectTransformForStandalone: 0 m_SortingLayerID: 0 - m_SortingOrder: 0 + m_SortingOrder: 100 m_TargetDisplay: 0 --- !u!114 &8360342144671338539 MonoBehaviour: @@ -306,7 +306,7 @@ CanvasGroup: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 597809613186944653} m_Enabled: 1 - m_Alpha: 0 + m_Alpha: 1 m_Interactable: 0 m_BlocksRaycasts: 0 m_IgnoreParentGroups: 0 diff --git a/Assets/uDesktopMascot/Resources/UI/Dialog/TabletMenuDialog.prefab b/Assets/uDesktopMascot/Resources/UI/Dialog/TabletMenuDialog.prefab index 76f53124..a242e6de 100644 --- a/Assets/uDesktopMascot/Resources/UI/Dialog/TabletMenuDialog.prefab +++ b/Assets/uDesktopMascot/Resources/UI/Dialog/TabletMenuDialog.prefab @@ -274,6 +274,7 @@ MonoBehaviour: m_EditorClassIdentifier: closeButton: {fileID: 8713622907998881195} backgroundImage: {fileID: 2286071587733755090} + aiChatButton: {fileID: 8205884556360410485} webUIButton: {fileID: 4294579427660593743} modelSettingButton: {fileID: 4623602444775744588} helpButton: {fileID: 3975135025879450140} @@ -287,7 +288,7 @@ CanvasGroup: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1327219789864460332} m_Enabled: 1 - m_Alpha: 0 + m_Alpha: 1 m_Interactable: 0 m_BlocksRaycasts: 0 m_IgnoreParentGroups: 0 @@ -847,6 +848,18 @@ PrefabInstance: propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 55dd459865d2b184db79d5faca26c014, type: 3} + - target: {fileID: 648360911962570205, guid: 70f01b9cfb37a80488367e9195bb3326, type: 3} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 648360911962570205, guid: 70f01b9cfb37a80488367e9195bb3326, type: 3} + propertyPath: m_fontSize + value: 8.25 + objectReference: {fileID: 0} + - target: {fileID: 1089995998360424670, guid: 70f01b9cfb37a80488367e9195bb3326, type: 3} + propertyPath: m_StringReference.m_TableEntryReference.m_KeyId + value: 4599798494334976 + objectReference: {fileID: 0} - target: {fileID: 3452299637799663405, guid: 70f01b9cfb37a80488367e9195bb3326, type: 3} propertyPath: m_Name value: Chat @@ -933,7 +946,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7075264929463694279, guid: 70f01b9cfb37a80488367e9195bb3326, type: 3} propertyPath: m_Interactable - value: 0 + value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] @@ -945,6 +958,17 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 4791987971422063645, guid: 70f01b9cfb37a80488367e9195bb3326, type: 3} m_PrefabInstance: {fileID: 1428005503640770226} m_PrefabAsset: {fileID: 0} +--- !u!114 &8205884556360410485 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 7075264929463694279, guid: 70f01b9cfb37a80488367e9195bb3326, type: 3} + m_PrefabInstance: {fileID: 1428005503640770226} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1001 &2078149657885364290 PrefabInstance: m_ObjectHideFlags: 0 @@ -1559,7 +1583,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 1089995998360424670, guid: 70f01b9cfb37a80488367e9195bb3326, type: 3} propertyPath: m_StringReference.m_TableEntryReference.m_KeyId - value: 3977592391348224 + value: 4600571496173568 objectReference: {fileID: 0} - target: {fileID: 3452299637799663405, guid: 70f01b9cfb37a80488367e9195bb3326, type: 3} propertyPath: m_Name diff --git a/Assets/uDesktopMascot/Scripts/AIChat.meta b/Assets/uDesktopMascot/Scripts/AIChat.meta new file mode 100644 index 00000000..71adafef --- /dev/null +++ b/Assets/uDesktopMascot/Scripts/AIChat.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: cbba28aaabd44e46a888c09811033cb0 +timeCreated: 1738731275 \ No newline at end of file diff --git a/Assets/uDesktopMascot/Scripts/AIChat/AIChatPresenter.cs b/Assets/uDesktopMascot/Scripts/AIChat/AIChatPresenter.cs new file mode 100644 index 00000000..5c6a7df7 --- /dev/null +++ b/Assets/uDesktopMascot/Scripts/AIChat/AIChatPresenter.cs @@ -0,0 +1,27 @@ +using System; + +namespace uDesktopMascot +{ + /// + /// AIチャットプレゼンター + /// + public class AIChatPresenter : IDisposable + { + /// + /// チャットダイアログ + /// + private ChatDialog _chatDialog; + + /// + /// コンストラクタ + /// + public AIChatPresenter(ChatDialog chatDialog) + { + _chatDialog = chatDialog; + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/Assets/uDesktopMascot/Scripts/AIChat/AIChatPresenter.cs.meta b/Assets/uDesktopMascot/Scripts/AIChat/AIChatPresenter.cs.meta new file mode 100644 index 00000000..dfa1a54e --- /dev/null +++ b/Assets/uDesktopMascot/Scripts/AIChat/AIChatPresenter.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: a9def8b89d21411299d5e1f240f19b47 +timeCreated: 1738733026 \ No newline at end of file diff --git a/Assets/uDesktopMascot/Scripts/AIChat/ChatDialog.cs b/Assets/uDesktopMascot/Scripts/AIChat/ChatDialog.cs new file mode 100644 index 00000000..312f8fc3 --- /dev/null +++ b/Assets/uDesktopMascot/Scripts/AIChat/ChatDialog.cs @@ -0,0 +1,182 @@ +using System.Text; +using TMPro; +using UnityEngine; +using UnityEngine.UI; +using UnityEngine.InputSystem; +using LLMUnity; + +namespace uDesktopMascot +{ + /// + /// チャットダイアログ + /// + public class ChatDialog : DialogBase + { + /// + /// チャットダイアログの入力フィールド + /// + [SerializeField] private TMP_InputField inputField; + + /// + /// チャットダイアログの送信ボタン + /// + [SerializeField] private Button sendButton; + + /// + /// チャットダイアログのテキスト表示 + /// + [SerializeField] private TextMeshProUGUI chatText; + + /// + /// LLMキャラクター + /// + [SerializeField] private LLMCharacter llmCharacter; + + /// + /// チャット履歴テキストビルダー + /// + private readonly StringBuilder _chatTextBuilder = new StringBuilder(); + + /// + /// AIの返信を蓄積するビルダー + /// + private StringBuilder _replyTextBuilder; + + /// + /// 入力をブロックするフラグ + /// + private bool _inputBlocked = false; + + /// + /// 前回の返信の長さを記録する変数 + /// + private int _lastReplyLength = 0; + + private void Start() + { + SetEvents(); + } + + private void OnEnable() + { + // Submitアクションにリスナーを追加 + InputController.Instance.UI.Submit.performed += OnSubmit; + } + + private void OnDisable() + { + // Submitアクションのリスナーを削除 + InputController.Instance.UI.Submit.performed -= OnSubmit; + } + + /// + /// Submitアクションが実行されたときの処理(Enterキー) + /// + private void OnSubmit(InputAction.CallbackContext context) + { + // 入力フィールドが選択されている場合のみ処理 + if (inputField.isFocused) + { + SendMessages(); + + // InputFieldが改行を追加しないようにする + inputField.DeactivateInputField(); + inputField.ActivateInputField(); + } + } + + /// + /// メッセージを送信する + /// + private void SendMessages() + { + if (_inputBlocked || string.IsNullOrWhiteSpace(inputField.text)) + { + return; + } + + // 入力をブロック + _inputBlocked = true; + sendButton.interactable = false; + inputField.interactable = false; + + // ユーザーのメッセージをチャット履歴に追加 + string userMessage = inputField.text; + _chatTextBuilder.AppendLine($"あなた: {userMessage}"); + chatText.text = _chatTextBuilder.ToString(); + + // 入力フィールドをクリア + inputField.text = string.Empty; + + // AIの返信用のStringBuilderを初期化 + _replyTextBuilder = new StringBuilder(); + + // 前回の返信の長さをリセット + _lastReplyLength = 0; + + // LLMにユーザーのメッセージを送信し、返信を処理 + _ = llmCharacter.Chat( + userMessage, + HandleReply, + ReplyCompleted + ); + } + + /// + /// AIの返信を処理する(ストリーミング対応) + /// + /// 累積されたAIからの返信 + private void HandleReply(string reply) + { + // 新しく追加された部分のみを取得 + string newText = reply.Substring(_lastReplyLength); + _lastReplyLength = reply.Length; + + // AIの返信をビルダーに追加 + _replyTextBuilder.Append(newText); + + // 現在のチャット履歴と進行中のAI返信を表示 + chatText.text = $"{_chatTextBuilder}AI: {_replyTextBuilder}"; + } + + /// + /// AIの返信が完了したときの処理 + /// + private void ReplyCompleted() + { + // 最終的なAIの返信をチャット履歴に追加 + _chatTextBuilder.AppendLine($"AI: {_replyTextBuilder}"); + chatText.text = _chatTextBuilder.ToString(); + + // AIの返信用ビルダーをクリア + _replyTextBuilder = null; + + // 入力をアンブロック + _inputBlocked = false; + sendButton.interactable = true; + inputField.interactable = true; + + // 入力フィールドにフォーカスをセット + inputField.ActivateInputField(); + } + + /// + /// イベントを設定する + /// + private void SetEvents() + { + sendButton.onClick.AddListener(SendMessages); + } + + private void OnDestroy() + { + sendButton.onClick.RemoveAllListeners(); + + // リスナーの登録解除 + if (InputController.Instance != null) + { + InputController.Instance.UI.Submit.performed -= OnSubmit; + } + } + } +} \ No newline at end of file diff --git a/Assets/uDesktopMascot/Scripts/AIChat/ChatDialog.cs.meta b/Assets/uDesktopMascot/Scripts/AIChat/ChatDialog.cs.meta new file mode 100644 index 00000000..2926e1d7 --- /dev/null +++ b/Assets/uDesktopMascot/Scripts/AIChat/ChatDialog.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 4d5bec4785d84e1b86b3b43a4c21d842 +timeCreated: 1738729006 \ No newline at end of file diff --git a/Assets/uDesktopMascot/Scripts/AIChat/ChatMessageData.cs b/Assets/uDesktopMascot/Scripts/AIChat/ChatMessageData.cs new file mode 100644 index 00000000..45c8b89c --- /dev/null +++ b/Assets/uDesktopMascot/Scripts/AIChat/ChatMessageData.cs @@ -0,0 +1,38 @@ +using System; + +namespace uDesktopMascot +{ + /// + /// AIチャットメッセージモデル + /// + public class ChatMessageData + { + public enum Sender + { + User, + AI + } + + /// + /// 送信者情報 + /// + public Sender SenderInfo; + + /// + /// メッセージ + /// + public string Message; + + /// + /// タイムスタンプ + /// + public DateTime Timestamp; + + public ChatMessageData(Sender senderInfo, string message, DateTime timestamp) + { + this.SenderInfo = senderInfo; + this.Message = message; + this.Timestamp = timestamp; + } + } +} \ No newline at end of file diff --git a/Assets/uDesktopMascot/Scripts/AIChat/ChatMessageData.cs.meta b/Assets/uDesktopMascot/Scripts/AIChat/ChatMessageData.cs.meta new file mode 100644 index 00000000..33d31a55 --- /dev/null +++ b/Assets/uDesktopMascot/Scripts/AIChat/ChatMessageData.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: e71900b129aa4bb69812353ecca62568 +timeCreated: 1738731290 \ No newline at end of file diff --git a/Assets/uDesktopMascot/Scripts/Common/Constant.DialogName.cs b/Assets/uDesktopMascot/Scripts/Common/Constant.DialogName.cs index e40744b3..7fde4ac1 100644 --- a/Assets/uDesktopMascot/Scripts/Common/Constant.DialogName.cs +++ b/Assets/uDesktopMascot/Scripts/Common/Constant.DialogName.cs @@ -14,5 +14,10 @@ public partial class Constant /// メニューダイアログ /// public const string TabletMenuDialog = "TabletMenuDialog"; + + /// + /// AIチャットダイアログ + /// + public const string AIChatDialog = "AIChatDialog"; } } \ No newline at end of file diff --git a/Assets/uDesktopMascot/Scripts/Manager/SystemManager.cs b/Assets/uDesktopMascot/Scripts/Manager/SystemManager.cs index d2e95d5e..dafc61b1 100644 --- a/Assets/uDesktopMascot/Scripts/Manager/SystemManager.cs +++ b/Assets/uDesktopMascot/Scripts/Manager/SystemManager.cs @@ -1,4 +1,5 @@ -using Cysharp.Threading.Tasks; +using System; +using Cysharp.Threading.Tasks; using Kirurobo; using Unity.Logging; using UnityEngine; @@ -32,7 +33,7 @@ public class SystemManager : SingletonMonoBehaviour /// Webサーバーのホストクラス /// private WebServiceHost _webServiceHost; - + /// /// アップデートダイアログ /// @@ -44,19 +45,18 @@ private protected override void Awake() _cancellationTokenSource = new CancellationTokenSource(); _checkVersion = new CheckVersion(); - + // ローカライゼーションを設定 SetLocalizationAsync().Forget(); // PCのスペック応じてQualitySettingsを変更 SetQualityLevel(); - } private void Start() { LoadSetting(); - + // アップデートチェックを非同期に開始 CheckUpdateAsync().Forget(); } @@ -78,8 +78,15 @@ private void LoadSetting() /// private async UniTask CheckUpdateAsync() { - // アップデートチェック - var isUpdateAvailable = await _checkVersion.IsUpdateAvailable(_cancellationTokenSource.Token); + bool isUpdateAvailable = false; + try + { + isUpdateAvailable = await _checkVersion.IsUpdateAvailable(_cancellationTokenSource.Token); + } catch (Exception e) + { + Log.Error($"アップデートチェック中にエラーが発生しました。{e}"); + return; + } if (isUpdateAvailable) { @@ -87,8 +94,10 @@ private async UniTask CheckUpdateAsync() // スキップしたバージョンを取得 var skippedVersion = displaySettings.SkippedVersion; - - _showUpdateDialog = UIManager.Instance.PushDialog(Constant.ShowUpdateDialog,null,SaveSkipUpdateDialog); + + _showUpdateDialog = + UIManager.Instance.PushDialog(Constant.ShowUpdateDialog, null, + SaveSkipUpdateDialog); // スキップしたバージョンが設定されている場合 if (!string.IsNullOrEmpty(skippedVersion)) @@ -97,18 +106,17 @@ private async UniTask CheckUpdateAsync() if (_checkVersion.IsNewerVersion(_checkVersion.LatestVersion, skippedVersion)) { // 新しいバージョンがある場合、ダイアログを表示 - _showUpdateDialog.ShowAsync(_checkVersion.LatestVersion,_cancellationTokenSource.Token).Forget(); - } - else + _showUpdateDialog.ShowAsync(_checkVersion.LatestVersion, _cancellationTokenSource.Token) + .Forget(); + } else { // スキップしたバージョンと同じかそれより古い場合、ダイアログを表示しない Log.Info("ユーザーがスキップしたバージョンのため、アップデートダイアログを表示しません。"); } - } - else + } else { // スキップしたバージョンがない場合、ダイアログを表示 - _showUpdateDialog.ShowAsync(_checkVersion.LatestVersion,_cancellationTokenSource.Token).Forget(); + _showUpdateDialog.ShowAsync(_checkVersion.LatestVersion, _cancellationTokenSource.Token).Forget(); } } } @@ -121,8 +129,8 @@ private void SaveSkipUpdateDialog() var displaySettings = ApplicationSettings.Instance.Display; // ユーザーがスキップを選択した場合、現在の最新バージョンを保存 - displaySettings.SkippedVersion = _showUpdateDialog.SkipShowUpgradeDialog ? _checkVersion.LatestVersion : - string.Empty; + displaySettings.SkippedVersion = + _showUpdateDialog.SkipShowUpgradeDialog ? _checkVersion.LatestVersion : string.Empty; ApplicationSettings.Instance.SaveSettings(); } @@ -150,8 +158,7 @@ private void SetQualityLevel() // 設定ファイルを更新 ApplicationSettings.Instance.SaveSettings(); Log.Info("動的に調整した品質レベルを設定ファイルに保存しました。"); - } - else + } else { // 有効な場合、設定ファイルの値を使用 QualitySettings.SetQualityLevel(qualityLevel, true); @@ -163,8 +170,7 @@ private void SetQualityLevel() { Application.targetFrameRate = performanceSettings.TargetFrameRate; Log.Info($"ターゲットフレームレートを {Application.targetFrameRate} に設定しました。"); - } - else + } else { // 無効な場合、デフォルト値を設定し、設定ファイルを更新 Application.targetFrameRate = 60; // デフォルト値 @@ -193,12 +199,12 @@ private async UniTask SetLocalizationAsync() // 選択したロケールを設定 LocalizationSettings.SelectedLocale = selectedLocale; Log.Info($"ロケールを '{selectedLocale.LocaleName}' に設定しました。"); - } - else + } else { // 対応するロケールがない場合はデフォルトロケール(英語)を設定 LocalizationSettings.SelectedLocale = LocalizationSettings.AvailableLocales.GetLocale("en"); - Log.Warning($"システム言語 '{systemLanguage}' に対応するロケールが見つかりませんでした。デフォルトのロケールを '{LocalizationSettings.SelectedLocale.LocaleName}' に設定します。"); + Log.Warning( + $"システム言語 '{systemLanguage}' に対応するロケールが見つかりませんでした。デフォルトのロケールを '{LocalizationSettings.SelectedLocale.LocaleName}' に設定します。"); } } diff --git a/Assets/uDesktopMascot/Scripts/Menu/MenuDialog.cs b/Assets/uDesktopMascot/Scripts/Menu/MenuDialog.cs index 9af4fad9..23159085 100644 --- a/Assets/uDesktopMascot/Scripts/Menu/MenuDialog.cs +++ b/Assets/uDesktopMascot/Scripts/Menu/MenuDialog.cs @@ -22,6 +22,11 @@ public class MenuDialog : DialogBase /// メニューの背景画像 /// [SerializeField] private Image backgroundImage; + + /// + /// AIチャット機能を開くボタン + /// + [SerializeField] private Button aiChatButton; /// /// WebUIを開くボタン @@ -92,6 +97,15 @@ private void SetButtonEvent() appSettingButton.onClick.AddListener(() => OnAppSettingAction?.Invoke()); quitButton.onClick.AddListener(() => OnCloseAction?.Invoke()); webUIButton.onClick.AddListener(() => OnWebUIAction?.Invoke()); + aiChatButton.onClick.AddListener(OnAiChatAction); + } + + /// + /// AIチャット機能を開く + /// + private void OnAiChatAction() + { + UIManager.Instance.PushDialog(Constant.AIChatDialog); } /// @@ -176,5 +190,15 @@ private void AdjustMenuPosition(Vector3 screenPosition) // RectTransformの位置を設定 _menuRectTransform.position = adjustedPosition; } + + private void OnDestroy() + { + helpButton.onClick.RemoveAllListeners(); + modelSettingButton.onClick.RemoveAllListeners(); + appSettingButton.onClick.RemoveAllListeners(); + quitButton.onClick.RemoveAllListeners(); + webUIButton.onClick.RemoveAllListeners(); + aiChatButton.onClick.RemoveAllListeners(); + } } } \ No newline at end of file diff --git a/Assets/uDesktopMascot/Scripts/Menu/MenuPresenter.cs b/Assets/uDesktopMascot/Scripts/Menu/MenuPresenter.cs index 63f08dff..c7c6119f 100644 --- a/Assets/uDesktopMascot/Scripts/Menu/MenuPresenter.cs +++ b/Assets/uDesktopMascot/Scripts/Menu/MenuPresenter.cs @@ -4,7 +4,6 @@ using Cysharp.Threading.Tasks; using Unity.Logging; using UnityEngine; -using UnityEngine.Networking; namespace uDesktopMascot { @@ -32,6 +31,11 @@ public partial class MenuPresenter : IDisposable /// キャンセルトークンソース /// private readonly CancellationTokenSource _cancellationTokenSource; + + /// + /// AIチャットプレゼンター + /// + private AIChatPresenter _aiChatPresenter; /// /// メニューの表示位置のオフセット diff --git a/Assets/uDesktopMascot/Scripts/Utility/CheckVersion.cs b/Assets/uDesktopMascot/Scripts/Utility/CheckVersion.cs index 0ca4ac7d..7c99ffd2 100644 --- a/Assets/uDesktopMascot/Scripts/Utility/CheckVersion.cs +++ b/Assets/uDesktopMascot/Scripts/Utility/CheckVersion.cs @@ -4,6 +4,7 @@ using UnityEngine.Networking; using System; using System.Threading; +using Console = System.Console; namespace uDesktopMascot { @@ -20,7 +21,7 @@ public class CheckVersion /// /// 最新バージョン /// - public string LatestVersion { get;private set; } + public string LatestVersion { get; private set; } /// /// アップデートがあるかどうかを判定します @@ -30,7 +31,15 @@ public class CheckVersion public async UniTask IsUpdateAvailable(CancellationToken cancellationToken) { // 最新バージョンを取得 - LatestVersion = await GetLatestVersionAsync(cancellationToken); + try + { + LatestVersion = await GetLatestVersionAsync(cancellationToken); + } catch (Exception e) + { + Log.Error($"最新バージョンの取得に失敗しました。{e.Message}"); + return false; + } + if (string.IsNullOrEmpty(LatestVersion)) { Log.Error("最新バージョンの取得に失敗しました。"); @@ -76,8 +85,7 @@ private async UniTask GetLatestVersionAsync(CancellationToken cancellati { // タグ名から先頭の 'v' または 'V' を除去 return latestRelease.tag_name.TrimStart('v', 'V'); - } - else + } else { Log.Error("最新リリース情報の取得に失敗しました。"); return null; @@ -95,8 +103,7 @@ public bool IsNewerVersion(string latestVersion, string currentVersion) var current = new Version(currentVersion); return latest.CompareTo(current) > 0; - } - catch (Exception ex) + } catch (Exception ex) { Log.Error($"バージョン比較のエラー: {ex.Message}"); return false; diff --git a/Packages/manifest.json b/Packages/manifest.json index 1212d8af..b9b6f5ba 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,5 +1,6 @@ { "dependencies": { + "ai.undream.llm": "https://github.com/undreamai/LLMUnity.git", "com.annulusgames.lit-motion": "https://github.com/AnnulusGames/LitMotion.git?path=src/LitMotion/Assets/LitMotion", "com.ayutaz.uniwinc": "https://github.com/ayutaz/UniWindowController.git#upm", "com.cysharp.unitask": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask", @@ -7,7 +8,6 @@ "com.frozenstorminteractive.assimp.macos": "4.1.0", "com.frozenstorminteractive.assimp.windows": "4.1.0", "com.unity.collab-proxy": "2.6.0", - "jp.setchi.fancyscrollview": "https://github.com/setchi/FancyScrollView.git#upm", "com.unity.feature.2d": "2.0.1", "com.unity.formats.fbx": "5.1.2", "com.unity.ide.rider": "3.0.34", @@ -19,6 +19,7 @@ "com.unity.multiplayer.center": "1.0.0", "com.unity.nuget.newtonsoft-json": "3.2.1", "com.unity.playablegraph-visualizer": "0.2.1-preview.3", + "com.unity.recorder": "5.1.2", "com.unity.render-pipelines.universal": "17.0.3", "com.unity.test-framework": "1.4.5", "com.unity.timeline": "1.8.7", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index f6f81de4..37382a4d 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -1,5 +1,12 @@ { "dependencies": { + "ai.undream.llm": { + "version": "https://github.com/undreamai/LLMUnity.git", + "depth": 0, + "source": "git", + "dependencies": {}, + "hash": "e040c976794eb48fd9b05a1880a176824fe8ef06" + }, "com.annulusgames.lit-motion": { "version": "https://github.com/AnnulusGames/LitMotion.git?path=src/LitMotion/Assets/LitMotion", "depth": 0, @@ -171,6 +178,15 @@ }, "url": "https://packages.unity.com" }, + "com.unity.bindings.openimageio": { + "version": "1.0.0", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.collections": "1.0.0" + }, + "url": "https://packages.unity.com" + }, "com.unity.burst": { "version": "1.8.18", "depth": 1, @@ -342,6 +358,17 @@ "dependencies": {}, "url": "https://packages.unity.com" }, + "com.unity.recorder": { + "version": "5.1.2", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.timeline": "1.8.7", + "com.unity.collections": "1.2.4", + "com.unity.bindings.openimageio": "1.0.0" + }, + "url": "https://packages.unity.com" + }, "com.unity.render-pipelines.core": { "version": "17.0.3", "depth": 1, @@ -518,13 +545,6 @@ "dependencies": {}, "hash": "ae6a81da053e8cd001f089fd02cc6402afab5701" }, - "jp.setchi.fancyscrollview": { - "version": "https://github.com/setchi/FancyScrollView.git#upm", - "depth": 0, - "source": "git", - "dependencies": {}, - "hash": "e5d10d3e5961848f93be43c2911344750b509a88" - }, "com.unity.modules.accessibility": { "version": "1.0.0", "depth": 0,