void OnSetChaClass(params object[] param) { excel_cha_class chaClass = param[0] as excel_cha_class; if (chaClass == null) { return; } if (btnTriggers == null) { return; } for (int i = 0; i < chaClass.skillIDs.Length && i < btnTriggers.Length; ++i) { int skillID = chaClass.skillIDs[i]; excel_skill_list skillList = excel_skill_list.Find(skillID); if (skillList == null) { Debug.LogError("UIFight技能初始化失败,未找到ID为" + skillID + "的技能数据"); continue; } EventTriggerListener listener = btnTriggers[i]; GameObject go = listener.gameObject; SkillBtnData skillBtnData = new SkillBtnData(); Transform joystick = go.transform.Find("Joystick"); if (joystick != null) { skillBtnData.joystick = joystick.transform; } Transform joystickBG = go.transform.Find("Joystick_BG"); if (joystickBG != null) { skillBtnData.joystickBG = joystickBG.gameObject; } skillBtnData.btnImage = go.GetComponent <Image>(); skillBtnData.maxRadius = 64.0f; skillBtnData.opType = (SkillPreOpType)skillList.skillPreOpType; skillBtnData.opData1 = skillList.skillPreOpData1; skillBtnData.opData2 = skillList.skillPreOpData2; skillBtnData.skillID = skillID; skillDatas.Add(go, skillBtnData); listener.onDrag += OnSkillBtnDrag; listener.onPointerDown += OnSkillBtnPress; listener.onPointerUp += OnSkillBtnRelease; } }
void OnInitPlayers(byte[] data) { NotifyStartGame startGame = ProtoBufUtils.Deserialize <NotifyStartGame>(data); excel_scn_list scnList = SceneSystem.Instance.mCurrentScene.mScnLists; GameController.mServerStartTime = startGame.ServerStartTime; GameController.mClientStartTime = Time.realtimeSinceStartup; for (int i = 0; i < startGame.Players.Count; ++i) { ScnPlayerInfo playerInfo = startGame.Players[i]; excel_cha_class chaClass = excel_cha_class.Find(mScnLists.temp); if (chaClass == null) { continue; } excel_cha_list chaList = excel_cha_list.Find(chaClass.chaListID); GameObject o = ResourceSystem.Load <GameObject>(chaList.path); if (o != null) { GameObject mainPlayer = GameObject.Instantiate(o); Player player = mainPlayer.GetComponent <Player>(); player.gid = playerInfo.GID; player.UserID = playerInfo.UserID; player.mChaList = chaList; mainPlayer.transform.position = new Vector3(82.51f, 7.25f, 34.82f); mainPlayer.transform.localScale = new Vector3(chaList.scale[0], chaList.scale[1], chaList.scale[2]); mPlayersList.Add(player); mCharacterList.Add(player); mPlayers.Add(player.gid, player); mCharacters.Add(player.gid, player); if (GameController.mUserInfo.uid == playerInfo.UserID) { player.mEvent += TargetChgEvent; MessageSystem.Instance.MsgDispatch(MessageType.OnSetChaClass, chaClass); GameController.OnPlayerInit(player); } } //ResourceSystem.LoadAsync<GameObject>(chaList.path, (obj) => //{ // GameObject o = obj as GameObject; // if (o != null) // { // GameObject mainPlayer = GameObject.Instantiate(o); // Player player = mainPlayer.GetComponent<Player>(); // player.gid = playerInfo.GID; // player.UserID = playerInfo.UserID; // player.mChaList = chaList; // mainPlayer.transform.position = new Vector3(82.51f, 7.25f, 34.82f); // mainPlayer.transform.localScale = new Vector3(chaList.scale[0], chaList.scale[1], chaList.scale[2]); // mPlayersList.Add(player); // mCharacterList.Add(player); // mPlayers.Add(player.gid, player); // mCharacters.Add(player.gid, player); // if (GameController.mUserInfo.uid == playerInfo.UserID) // { // player.mEvent += TargetChgEvent; // MessageSystem.Instance.MsgDispatch(MessageType.OnSetChaClass, chaClass); // GameController.OnPlayerInit(player); // } // } //}); } }