コード例 #1
0
    // -------------------------------------------------------------------
    // OKボタンがクリックした時にOKボタンのOnClickからコールされ、
    // メッセージウィンドウを開きGUIDを表示する
    // -------------------------------------------------------------------
    public void OnClickOK()
    {
        // メッセージウィンドウ未表示の場合
        if (!IsWindow)
        {
            // インプットフィールドにNameLess以外の文字が入力されている場合
            if ("" != nameField.text && "NameLess" != nameField.text)
            {
                // SEを設定および再生
                clickSE = (AudioClip)Resources.Load("Sounds/SE/Click1");
                audioCompo.PlayOneShot(clickSE);

                // GUIDを生成
                Guid guidValue = Guid.NewGuid();

                // ユーザ名とGUIDをGMのフィールドに格納
                gameManager.userName = nameField.text;
                gameManager.userGuid = guidValue.ToString();

                // 生成したGUIDをメッセージウィンドウで表示
                MessageWriteToWindow("Complete!!\n" + "UserID was generated, copy here.:\n" + gameManager.userGuid);

                // GUID決定済み判定を発行済み(true)にする
                IsGuidDecided = true;

                // LinkToXMLコンポを取得し、入力されたユーザー名と生成されたGUIDをXMLへ保存する
                appSettings = GameObject.Find("XmlManager").GetComponent<XmlManager>();
                appSettings.UserStatusWriteToXml(nameField.text, guidValue.ToString());
                return;
            }
            // インプットフィールドが空欄またはNameLessが入力されている場合
            else
            {
                // SEを設定および再生
                clickSE = (AudioClip)Resources.Load("Sounds/SE/Error1");
                audioCompo.PlayOneShot(clickSE);

                // メッセージウィンドウ描画メソッドをコールして未入力メッセージを表示
                MessageWriteToWindow("未入力もしくはゲスト名です。\n正しいユーザー名を入力して下さい。");

                // OKボタンクリック判定をクリア
                isClick = false;
                return;
            }
        }
    }
コード例 #2
0
    void Update()
    {
        // エンターキーが押された場合
        if (Input.GetKeyDown(KeyCode.Return))
        {
            // メッセージウィンドウ未表示の場合
            if (!IsWindow)
            {
                // IDフィールドに何も入力されていない場合
                if ("" == nameField.text || "NameLess" == nameField.text)
                {
                    // SEを設定および再生
                    clickSE = (AudioClip)Resources.Load("Sounds/SE/Error1");
                    audioCompo.PlayOneShot(clickSE);

                    // メッセージウィンドウ描画メソッドをコールして未入力メッセージを表示
                    MessageWriteToWindow("未入力もしくはゲスト名です。\n正しいユーザー名を入力して下さい。");
                    isClick = false;
                    return;
                }
                // IDが正常に入力された場合
                else
                {
                    // SEを設定および再生
                    clickSE = (AudioClip)Resources.Load("Sounds/SE/Click1");
                    audioCompo.PlayOneShot(clickSE);

                    // GUIDを生成
                    Guid guidValue = Guid.NewGuid();

                    // ユーザ名とGUIDをGMのフィールドに格納
                    gameManager.userName = nameField.text;
                    gameManager.userGuid = guidValue.ToString();

                    // 生成したGUIDをメッセージウィンドウで表示
                    MessageWriteToWindow("Complete!!\n" +
                                         "UserID was generated, copy here.:\n" +
                                         gameManager.userGuid + "\n" +
                                         "CAUTION!! When you push OK button, change scene\n"
                                         );

                    // GUID決定済み判定を発行済み(true)にする
                    IsGuidDecided = true;

                    // LinkToXMLコンポを取得し、入力されたユーザー名と生成されたGUIDをXMLへ保存する
                    appSettings = GameObject.Find("XmlManager").GetComponent<XmlManager>();
                    appSettings.UserStatusWriteToXml(nameField.text, guidValue.ToString());
                    return;
                }
            }
            else
            {
                // メッセージウィンドウ表示中にエンターキーが押された場合
                if (!IsGuidDecided)
                {
                    // メッセージウィンドウを非アクティブ化
                    warningParentGO.SetActive(false);

                    // メッセージウィンドウ表示有無判定フラグを変更
                    IsWindow = false;
                    // OKボタンクリック判定をクリア
                    isClick = false;
                }
                // GUIDが正常に発行され、発行メッセージ表示中にエンターキーが押された場合
                else
                {
                    // まだOKボタンが押されていない場合(連打の抑止)
                    if (!isClick)
                    {
                        isClick = true;
                        // Loginシーンへの遷移を実施
                        NextScene();
                    }
                }
            }
        }
    }
コード例 #3
0
ファイル: LoginManager.cs プロジェクト: yagamiiori/UBTProject
    void Update()
    {
        // エンターキーが押された場合
        if (Input.GetKeyDown(KeyCode.Return))
        {
            // メッセージウィンドウ未表示の場合
            if (!IsWindow)
            {
                // IDフィールドに何も入力されていない場合
                if ("" == guidField.text)
                {
                    MessageWriteToWindow("未入力。\nログインIDを入力して下さい。");
                    return;
                }
                // 入力されたIDが「NameLess」の場合
                else if ("NameLess" == guidField.text)
                {
                    gameManager.userName = "******";
                }
                // GUIDっぽいものが入力された場合
                else
                {
                    // 入力されたGUIDとXMLのGUIDが同一であるか否か比較する
                    bool GuidResult = appSettings.CompareGuid(guidField.text);
                    // XMLがユニット情報を保持しているか否か判定する
                    bool UnitExistResult = appSettings.JudgeUnitExistInXml();

                    if (!GuidResult)
                    {
                        // クリックSEを設定および再生(エラーSE)
                        clickSE = (AudioClip)Resources.Load("Sounds/SE/Error1");
                        audioCompo.PlayOneShot(clickSE);

                        // 入力されたGUIDXMLのGUIDがアンマッチの場合はエラーを表示
                        MessageWriteToWindow("ユーザーIDが一致しません。\n正しいユーザーIDを入力して下さい。");
                        return;
                    }

                    // クリックSEを設定および再生(正常SE)
                    clickSE = (AudioClip)Resources.Load("Sounds/SE/Click7");
                    audioCompo.PlayOneShot(clickSE);

                    // ユーザーヘルプフィールドを取得
                    InputField userHelpField = GameObject.Find("InputField_UserHelp").GetComponent<InputField>();

                    // GMのユーザーヘルプフィールドへユーザーヘルプを設定する
                    gameManager.userHelp = userHelpField.text;

                    // LinkToXMLコンポを取得し、入力されたユーザーヘルプをXMLへ保存する
                    appSettings = GameObject.Find("XmlManager").GetComponent<XmlManager>();
                    appSettings.UserStatusWriteToXml(userHelpField.text);

                    // ユーザー情報をXMLファイルより読み込んでGMへ設定する
                    bool result = appSettings.UserStatusLoadFromXml();
                    if (!result)
                    {
                        // XMLファイルより読み出したユーザー情報が不正な場合はエラーを表示
                        MessageWriteToWindow("ユーザー情報が不正。\n正しいユーザーIDを入力して下さい。");
                        return;                    
                    }

                    if (!UnitExistResult)
                    {
                        // ユーザー情報が正しく、かつXMLがユニット情報を保持していない場合はUnitSelectシーンへ遷移する
                        NextSceneIsUnitSelct();
                        return;
                    }
                    if (GuidResult && UnitExistResult)
                    {
                        // 入力されたGUIDが正しく、かつXMLがユニット情報を保持している場合はLobbyシーンへ遷移する
                        NextSceneIsLobby();
                        return;
                    }
                }
                // XMLがユニット情報を保持していない場合はUnitSelectシーンへ遷移する
                NextSceneIsUnitSelct();
            }
            // メッセージウィンドウ表示中にエンターキーが押された場合
            else
            {
                // メッセージウィンドウを非アクティブ化
                warningParentGO.SetActive(false);

                // メッセージウィンドウ表示有無判定フラグを変更
                IsWindow = false;
            }
        }

        // メッセージウィンドウがアクティブ状態の時に左クリックされた場合
        if (true == warningParentGO.activeSelf && Input.GetMouseButtonDown(0))
        {
            // メッセージウィンドウを非アクティブ化
            warningParentGO.SetActive(false);

            // メッセージウィンドウ表示有無判定フラグを変更
            IsWindow = false;
        }
    }