// Update is called once per frame void Update() { /////////////////// Load Player if (recvMsg.Count <= peopleNum && flag == false) { recvMsg = LoadController.LoadCharacter(); for (int i = 0; i < recvMsg.Count; i++) { //Debug.Log(recvMsg[i].Username); if (GameObject.Find(recvMsg[i].Username) == null) { //Debug.Log(recvMsg[i].Username); ModelLayer.CreateCharacter(recvMsg[i]); ViewLayer.CreateCharacter(recvMsg[i], playerObject); } } } //Debug.Log(recvMsg.Count + " " + flag); if (recvMsg.Count == peopleNum && flag == false) { for (int i = 0; i < peopleNum; i++) { Debug.Log("index = " + i + ", name = " + ModelLayer.PlayerName[i] + ", id = " + ModelLayer.PlayerMap[ModelLayer.PlayerName[i]]); } startTime = Time.time + 3f; flag = true; } /////////////////// Player Operation if (flag == true && Time.time >= startTime) { ModelLayer.RefreshMessage(username); ModelLayer.MovePosition(username); //Debug.Log("1 " + ModelLayer.msg.Optype); Skill0Button.onClick.AddListener( delegate { ModelLayer.ReleaseSkill0(username); } ); Skill1Button.onClick.AddListener( delegate { ModelLayer.ReleaseSkill1(username); } ); //Debug.Log("2 " + ModelLayer.msg.Optype + " " + ModelLayer.skillQueue.Count); ModelLayer.SendMessage(); //Debug.Log("3 " + ModelLayer.msg.Optype); ModelLayer.ReceiveMessage(); int userId = ModelLayer.PlayerMap[username]; int diff = ModelLayer.SkillNextFrame[userId][0] - ModelLayer.clientFrame; if (diff >= 0) { Skill0CD.text = (diff / 20).ToString(); } else { Skill0CD.text = ""; } diff = ModelLayer.SkillNextFrame[userId][1] - ModelLayer.clientFrame; if (diff >= 0) { Skill1CD.text = (diff / 20).ToString(); } else { Skill1CD.text = ""; } ViewLayer.MovePosition(); ViewLayer.PlayerAnimation(); } }