using System; using System.Collections; using UnityEditor; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; // Token: 0x02000174 RID: 372 public class ScreenKeyboardManager : MonoBehaviour { // Token: 0x1700015A RID: 346 // (get) Token: 0x06000A93 RID: 2707 RVA: 0x0002EA38 File Offset: 0x0002CC38 private static ScreenKeyboardManager Instance { get { if (ScreenKeyboardManager.m_instance == null) { GameObject gameObject = GameObject.Find("_ScreenKeyboardManager"); if (gameObject == null) { gameObject = new GameObject("_ScreenKeyboardManager"); } ScreenKeyboardManager.m_instance = gameObject.AddComponent(); gameObject.AddComponent(); gameObject.AddComponent(); string firstName = "アリス"; string lastName = "リデル"; switch (UnityApp.Instance.locale) { case Assets.Scripts.LocaleEnum.English: firstName = "Alice"; lastName = "Liddell"; break; case Assets.Scripts.LocaleEnum.Spanish: firstName = "Alice"; lastName = "Liddell"; break; default: firstName = "アリス"; lastName = "リデル"; break; } if (ScreenKeyboardManager.m_instance.m_inputText != null) { firstName = ScreenKeyboardManager.m_instance.m_inputText; } if (ScreenKeyboardManager.m_instance.m_inputTextLastName != null) { firstName = ScreenKeyboardManager.m_instance.m_inputTextLastName; } ScreenKeyboardManager.m_instance.m_inputText = firstName; ScreenKeyboardManager.m_instance.m_inputTextLastName = lastName; //ScreenKeyboardManager.m_instance.m_inputText = string.Empty; //ScreenKeyboardManager.m_instance.m_inputTextLastName = string.Empty; ScreenKeyboardManager.m_instance.isKeyboardActive = true; } return ScreenKeyboardManager.m_instance; } } // Token: 0x1700015B RID: 347 // (get) Token: 0x06000A94 RID: 2708 RVA: 0x0002EA98 File Offset: 0x0002CC98 public static string InputText { get { return ScreenKeyboardManager.Instance.m_inputText; } } // Token: 0x1700015C RID: 348 // (set) Token: 0x06000A95 RID: 2709 RVA: 0x0002EAA4 File Offset: 0x0002CCA4 public static string DebugInputText { set { ScreenKeyboardManager.Instance.m_inputText = value; } } // Token: 0x1700015B RID: 347 // (get) Token: 0x06000A94 RID: 2708 RVA: 0x0002EA98 File Offset: 0x0002CC98 public static string InputTextLastName { get { return ScreenKeyboardManager.Instance.m_inputTextLastName; } } // Token: 0x1700015C RID: 348 // (set) Token: 0x06000A95 RID: 2709 RVA: 0x0002EAA4 File Offset: 0x0002CCA4 public static string DebugInputTextLastName { set { ScreenKeyboardManager.Instance.m_inputTextLastName = value; } } // Token: 0x1700015D RID: 349 // (get) Token: 0x06000A96 RID: 2710 RVA: 0x0002EAB4 File Offset: 0x0002CCB4 public static bool IsCancel { get { return false; //return ScreenKeyboardManager.Instance.m_keyboard.wasCanceled; } } // Token: 0x06000A97 RID: 2711 RVA: 0x0002EAC8 File Offset: 0x0002CCC8 public static IEnumerator Open(string defaultString = "", string defaultString2 = "") { //ScreenKeyboardManager.m_instance.isKeyboardActive = true; //Debug.LogWarning("Name: " + defaultString + " = " + defaultString2); GameObject manager = ScreenKeyboardManager.Instance.gameObject; Canvas canvas = manager.AddComponent(); CanvasScaler scaler = canvas.gameObject.AddComponent(); scaler.uiScaleMode = CanvasScaler.ScaleMode.ScaleWithScreenSize; canvas.gameObject.AddComponent(); canvas.renderMode = RenderMode.ScreenSpaceOverlay; InputField _inputFieldFirstName = createInputBox(canvas, "FirstName", defaultString, "Input First Name", new Vector3(-250, 50, 0)); _inputFieldFirstName.text = defaultString; InputField _inputFieldLastName = createInputBox(canvas, "LastName", defaultString2, "Input Last Name", new Vector3(0, 50, 0)); _inputFieldLastName.text = defaultString2; string firstNameString = _inputFieldFirstName.text; string lastNameString = _inputFieldLastName.text; createEqualsBox(canvas, "Equals", new Vector3(-125, 50, 0)); createButton(canvas, "SubmitButton", new Vector3(-125, -35, 0)); yield return new WaitUntil(() => !ScreenKeyboardManager.m_instance.isKeyboardActive); yield break; } public static InputField createInputBox(Canvas canvas, string objectName, string defaultString, string placeholderString, Vector3 position) { int width = 200; int height = 50; int fontSize = 24; Color fontColor = Color.white; Color inputBoxColor = new Color(87f / 255f, 48f / 255f, 55f / 255f, 255f / 255f); GameObject container = new GameObject(); container.name = objectName; container.transform.parent = canvas.transform; container.AddComponent(); Image _image = container.AddComponent(); //_image.sprite = UnityEditor.AssetDatabase.GetBuiltinExtraResource("UI/Skin/UISprite.psd"); _image.type = Image.Type.Sliced; _image.color = inputBoxColor; Font font = (Font)Resources.Load("font/Cabin"); GameObject textContainer = new GameObject(); textContainer.name = "Text"; textContainer.transform.parent = container.transform; container.transform.localScale = new Vector3(1, 1, 1); Text _text = textContainer.AddComponent(); RectTransform _textTransform = _text.GetComponent(); _textTransform.sizeDelta = new Vector2(width, height); _text.supportRichText = false; _text.color = fontColor; _text.font = font; _text.fontSize = fontSize; _text.horizontalOverflow = HorizontalWrapMode.Overflow; _text.alignment = TextAnchor.MiddleCenter; GameObject placeholderContainer = new GameObject(); placeholderContainer.name = "Placeholder"; placeholderContainer.transform.parent = container.transform; Text _placeholder = placeholderContainer.AddComponent(); RectTransform _placeholderTransform = _placeholder.GetComponent(); placeholderContainer.transform.localScale = new Vector3(1, 1, 1); _placeholderTransform.sizeDelta = new Vector2(width, height); _placeholder.color = fontColor; _placeholder.font = font; _placeholder.fontSize = fontSize; _placeholder.fontStyle = FontStyle.Italic; _placeholder.supportRichText = false; _placeholder.horizontalOverflow = HorizontalWrapMode.Overflow; _placeholder.text = placeholderString; _placeholder.alignment = TextAnchor.MiddleCenter; InputField _inputField = container.AddComponent(); _inputField.targetGraphic = _image; _inputField.textComponent = _text; _inputField.placeholder = _placeholder; RectTransform _inputFieldTransform = _inputField.GetComponent(); _inputFieldTransform.localPosition = position; _inputFieldTransform.sizeDelta = new Vector2(width, height); _inputField.characterLimit = 7; _inputField.characterValidation = InputField.CharacterValidation.Name; _inputField.text = defaultString; return _inputField; } public static void createButton(Canvas canvas, string objectName, Vector3 position) { int width = 150; int height = 50; int fontSize = 24; Color fontColor = Color.white; Color inputBoxColor = new Color(242f / 255f, 151f / 255f, 161f / 255f, 255f / 255f); GameObject container = new GameObject(); container.name = objectName; container.transform.parent = canvas.transform; container.transform.localPosition = position; container.AddComponent(); Image _image = container.AddComponent(); _image.type = Image.Type.Sliced; _image.color = inputBoxColor; Button _button = container.AddComponent