提交
This commit is contained in:
File diff suppressed because it is too large
Load Diff
+63
-9
File diff suppressed because one or more lines are too long
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9e9d31a584a97f447b431fb1cebb3e85
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,24 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 6508e9e28418d5e429ba26325d369d2a, type: 3}
|
||||
m_Name: Bubble Text Style
|
||||
m_EditorClassIdentifier:
|
||||
enSpeed:
|
||||
normalCharSpeed: 0
|
||||
longCharSpeed: 0
|
||||
middleCharSpeed: 0
|
||||
cnSpeed:
|
||||
normalCharSpeed: 0
|
||||
longCharSpeed: 0
|
||||
middleCharSpeed: 0
|
||||
enCharSpace: 0
|
||||
cnCharSpace: 0
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c5db4e4014d7407479058bb76a3c306d
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,24 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 6508e9e28418d5e429ba26325d369d2a, type: 3}
|
||||
m_Name: Screen Text Style
|
||||
m_EditorClassIdentifier:
|
||||
enSpeed:
|
||||
normalCharSpeed: 0
|
||||
longCharSpeed: 0
|
||||
middleCharSpeed: 0
|
||||
cnSpeed:
|
||||
normalCharSpeed: 0
|
||||
longCharSpeed: 0
|
||||
middleCharSpeed: 0
|
||||
enCharSpace: 0
|
||||
cnCharSpace: 0
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9d6434b6274f58f4e9911355e9e2bb79
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -70,8 +70,8 @@ namespace AibisDream
|
||||
VariableSet
|
||||
}
|
||||
|
||||
public enum LocalizationEvent
|
||||
public enum SettingChangeEvent
|
||||
{
|
||||
LocaleChanged
|
||||
TextSpeed
|
||||
}
|
||||
}
|
||||
@@ -43,7 +43,7 @@ namespace AibisDream
|
||||
AudioManager.Instance.SetVolume(float.Parse(value, CultureInfo.InvariantCulture));
|
||||
break;
|
||||
case "TextSpeed":
|
||||
// TODO 调整文字速度
|
||||
EnumEventSystem.Global.Send(SettingChangeEvent.TextSpeed, value);
|
||||
break;
|
||||
case "Resolution":
|
||||
// TODO 调整分辨率
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Localization;
|
||||
using UnityEngine.UI;
|
||||
|
||||
namespace AibisDream
|
||||
{
|
||||
[CreateAssetMenu(menuName = "Style/Text Anima Style")]
|
||||
public class TextAnimaStyle : ScriptableObject
|
||||
{
|
||||
public TextSpeed enSpeed;
|
||||
public TextSpeed cnSpeed;
|
||||
|
||||
public float enCharSpace;
|
||||
public float cnCharSpace;
|
||||
|
||||
[Serializable]
|
||||
public struct TextSpeed
|
||||
{
|
||||
public float slowCharSpeed;
|
||||
public float normalCharSpeed;
|
||||
public float fastCharSpeed;
|
||||
}
|
||||
|
||||
public float GetTextSpeed(TextSpeedEnum speedEnum, Locale locale)
|
||||
{
|
||||
var textSpeed = locale.Identifier.Code switch
|
||||
{
|
||||
"en" => enSpeed,
|
||||
"zh-Hans" => cnSpeed,
|
||||
_ => cnSpeed,
|
||||
};
|
||||
return speedEnum switch
|
||||
{
|
||||
TextSpeedEnum.Slow => textSpeed.slowCharSpeed,
|
||||
TextSpeedEnum.Normal => textSpeed.normalCharSpeed,
|
||||
TextSpeedEnum.Fast => textSpeed.fastCharSpeed,
|
||||
_ => textSpeed.normalCharSpeed,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
public enum TextSpeedEnum
|
||||
{
|
||||
Slow,
|
||||
Normal,
|
||||
Fast
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6508e9e28418d5e429ba26325d369d2a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -5,6 +5,7 @@ using AibisDream.Utility;
|
||||
using Febucci.UI.Core;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Localization;
|
||||
using UnityEngine.UI;
|
||||
|
||||
namespace AibisDream
|
||||
@@ -23,10 +24,12 @@ namespace AibisDream
|
||||
|
||||
#region 参数
|
||||
|
||||
[Header("参数")]
|
||||
[SerializeField] private ActorRole role;
|
||||
[SerializeField] private int idx;
|
||||
[SerializeField] private int maxWidth;
|
||||
[SerializeField] private int minWidth;
|
||||
[SerializeField] private TextAnimaStyle textAnimaStyle;
|
||||
|
||||
public ActorRole Role => role;
|
||||
public int Idx => idx;
|
||||
@@ -50,6 +53,8 @@ namespace AibisDream
|
||||
SetStyle(data.bubbleStyle, data.pivotType);
|
||||
// 注册事件
|
||||
_typewriter.onTextShowed.AddListener(InvokeLineShown);
|
||||
LocalizationKit.LocaleChanged += OnLocaleChanged;
|
||||
EnumEventSystem.Global.Send(SettingChangeEvent.TextSpeed, value);
|
||||
}
|
||||
|
||||
private void InvokeLineShown()
|
||||
@@ -77,6 +82,8 @@ namespace AibisDream
|
||||
: $"{bubbleStyle.bubbleSpriteAddress}[{pivotType.ToString()}]";
|
||||
|
||||
_bubbleImage.sprite = ResourceKit.LoadAssetSync<Sprite>(spritePath);
|
||||
|
||||
|
||||
}
|
||||
|
||||
private void InitRefs()
|
||||
@@ -124,6 +131,12 @@ namespace AibisDream
|
||||
}
|
||||
}
|
||||
|
||||
public void OnLocaleChanged(Locale locale)
|
||||
{
|
||||
// _typewriter.TypingSpeed = textAnimaStyle.GetTextSpeed(TextSpeedEnum.Normal, locale);
|
||||
_typewriter.SetTypewriterSpeed(textAnimaStyle.GetTextSpeed(TextSpeedEnum.Normal, locale));
|
||||
}
|
||||
|
||||
public void Hide()
|
||||
{
|
||||
gameObject.SetActive(false);
|
||||
|
||||
Reference in New Issue
Block a user