public void InitializeChatDB(Firebase.Database.DatabaseReference reference, bool playable) { isPlayable = playable; connector = new FirebaseConnector(reference, !playable); if (playable) { fielder = transform.parent.parent.Find("TextField").GetComponent <TextFielder>(); fielder.CleanInputField("メッセージ", ""); } else { //Debug.Log(connector.MyReference.Key); connector.MyReference.ValueChanged += (object sender, Firebase.Database.ValueChangedEventArgs args) => { if (args.DatabaseError != null) { Debug.LogError(args.DatabaseError.Message); return; } string rawMessage = args.Snapshot.Child(messageKey).Value.ToString(); //SendMessageBox(rawMessage); SendMessageBox2(rawMessage); }; } }
// Update is called once per frame void Update() { if (!isPlayable) { return; } message = fielder.GetMessage(); if (message == null || message.Equals("")) { return; } //SendMessageBox(message); SendMessageBox2(message); connector.AddAsync(messageKey, message); fielder.CleanInputField("メッセージ", ""); }
// Use this for initialization void Start() { textFielder.StartCoroutine(textFielder.SwitchDialog(true, string.Format( "ようこそ。早速だが、あなたの名前は何だい?({0}文字以内)", nameMaxLength))); textFielder.CleanInputField("名前を入力してね", "testPlayer"); connector = new FirebaseConnector("Rooms"); connector.MyReference.ChildRemoved += (object sender, Firebase.Database.ChildChangedEventArgs args) => { if (stateNo != (int)KeeperState.Idle) { return; } InterruptGame(); }; stateNo = (int)KeeperState.NameReception; GameObject.Find(SoundPlayer.objectName).GetComponent <SoundPlayer>().PlayBGM( BGMname.Wait); }