private void WhenManData(string keyname, DBManData dbmandata) { if (peoples.ContainsKey(keyname)) { peoples[keyname].oneMan.UpdateData(rootHolder, dbmandata.start_position.GetVector3(), dbmandata.target_position.GetVector3()); } else { Vector3 spawnPoint = dbmandata.start_position.GetVector3(); spawnPoint = rootHolder.TransformPoint(spawnPoint); GameObject go = Instantiate(manPrefab, spawnPoint, Quaternion.identity) as GameObject; go.name = keyname; go.transform.parent = rootHolder; OneMan oneMan = go.GetComponent <OneMan>(); OneManManager onemanmanager = new OneManManager(); onemanmanager.gameObject = go; onemanmanager.oneMan = oneMan; oneMan.UpdateData(rootHolder, dbmandata.start_position.GetVector3(), dbmandata.target_position.GetVector3()); peoples.Add(keyname, onemanmanager); } }
void OnChangeDB(SimpleFirebaseUnity.Firebase sender, DataSnapshot snapshot) { //Debug.Log("[OBSERVER] Last updated changed to: " + snapshot.RawJson); foreach (var key in snapshot.Keys) { string strItem = JsonHelper.GetJsonObject(snapshot.RawJson, key); DBManData item = JsonUtility.FromJson <DBManData>(strItem); if (manData.ContainsKey(key)) { DBManData oneman = manData[key]; oneman = item; } else { manData.Add(key, item); } if (OnManData != null) { OnManData.Invoke(key, item); } } }