/// <summary> /// 獲取幻化列表 /// </summary> protected void S2C_GetMountSkinListInfo(Pt _pt) { pt_ret_skin_list_e113 msg = _pt as pt_ret_skin_list_e113; if (msg != null) { for (int i = 0; i < msg.skin_list.Count; i++) { skinExp = msg.skin_exp; curSkinLev = msg.skin_lev; skin_base_info data = msg.skin_list[i]; if (mountSkinList.ContainsKey((int)data.skin_id)) { MountInfo info = mountSkinList[(int)data.skin_id] as MountInfo; info.Update(data); } else { mountSkinList[(int)data.skin_id] = new MountInfo(new MountData(data), GameCenter.mainPlayerMng.MainPlayerInfo, true); } if (data.skin_state > 0 && (skinId != data.skin_id || !skinState)) { skinId = (int)data.skin_id; skinState = true; MountUpdate(); } } } //抛出数据变化的事件 if (OnMountSkinListUpdate != null) { OnMountSkinListUpdate(); } }
/// <summary> /// 上下马 ride_state = 1更新坐骑 ride_state= 2更新幻化 /// </summary> protected void S2C_GetMountAfterUpdate(Pt _pt) { pt_update_ride_state_d440 msg = _pt as pt_update_ride_state_d440; if (msg != null) { //if (msg.state > 0) Debug.logger.Log("收到上下马id:" + msg.ride_id + " , msg.ride_state : " + msg.ride_state + " , msg.state : " + msg.state); if (msg.ride_state == (int)MountType.MOUNTLIST) { if (mountInfoList.ContainsKey(msg.ride_id)) { MountInfo info = mountInfoList[msg.ride_id] as MountInfo; info.Update(msg); if (rideType != msg.ride_id || state != msg.state) { rideType = msg.ride_id; state = msg.state; MountUpdate(); } } if (OnCurMountUpdate != null) { OnCurMountUpdate(); } } else { if (mountSkinList.ContainsKey(msg.ride_id)) { MountInfo info = mountSkinList[msg.ride_id] as MountInfo; if (info != null) { info.Update(msg); } if (msg.state > 0) { GameCenter.messageMng.AddClientMsg(306); //幻化成功 } if (skinId != msg.ride_id || skinState != (msg.state == 1)) { skinId = msg.ride_id; skinState = msg.state == 1; MountUpdate(); } } if (OnMountSkinUpdate != null) { OnMountSkinUpdate(); } } } }
/// <summary> /// 坐骑培养反馈协议 /// </summary> protected void S2C_GetMountPromoteLev(Pt _pt) { pt_update_ride_lev_d439 msg = _pt as pt_update_ride_lev_d439; if (msg != null && curLev != (int)msg.state) { CurLev = (int)msg.state; if (rideType != 0) { if (mountInfoList.ContainsKey(rideType)) { MountInfo info = mountInfoList[rideType] as MountInfo; info.Update(msg); } } } }
/// <summary> /// 獲取坐騎 /// </summary> protected void S2C_GetMountListInfo(Pt _pt) { pt_ret_ride_info_e111 msg = _pt as pt_ret_ride_info_e111; if (msg != null) { for (int i = 0; i < msg.ride_list.Count; i++) { int id = msg.ride_list[i].ride_id; //Debug.Log("坐骑id : " + msg.ride_list[i].ride_id + " , 状态ride_state:" + msg.ride_list[i].ride_state + " lev : " + msg.ride_lev); if (mountInfoList.ContainsKey(id)) { MountInfo info = mountInfoList[id] as MountInfo; info.Update(msg.ride_list[i]); } else { mountInfoList[id] = new MountInfo(new MountData(msg.ride_list[i], msg.ride_lev), GameCenter.mainPlayerMng.MainPlayerInfo); if (OnGetNewMountUpdate != null && curMountInfo == null) { OnGetNewMountUpdate(mountInfoList[id] as MountInfo, ModelType.MOUNT); } } if (msg.ride_list[i].ride_state > 0 && (rideType != id || state != msg.ride_list[i].ride_state)) { rideType = id; state = msg.ride_list[i].ride_state; MountUpdate(); } } if (rideType == 0 && msg.ride_list.Count > 0)//默认坐骑为最后一个 { rideType = msg.ride_list[msg.ride_list.Count - 1].ride_id; state = msg.ride_list[msg.ride_list.Count - 1].ride_state; MountUpdate(); } CurLev = msg.ride_lev; SetRedRemind(); } //if (OnMountListUpdate != null) OnMountListUpdate(); }