void OnGetRankList(SocketModel module){
		MsgArenaRanklistRep msg = MsgSerializer.Deserialize<MsgArenaRanklistRep>(module);
		var areanMng = MonoInstancePool.getInstance<AreanManager>();
		areanMng.GetAreanRankList().Clear();
		
		List<Ranklist> rankList = msg.list;
		for(int i = 0 ; i < rankList.Count ; i++){
			
			var rankInfo = rankList[i];
			if(rankInfo.rank == MonoInstancePool.getInstance<AreanManager>().GetSelfRankData().index){
				continue;
			}
			var rankData = new AreanRankData();
			rankData.uid = rankInfo.uid;
			rankData.rankIndex = rankInfo.rank;
			rankData.fightStrength = rankInfo.fighting;
			rankData.name = rankInfo.name;
			List<HeroBase> heroList = rankInfo.list;
			
			for(int j = 0 ; j < heroList.Count && j < 3; j++){
				rankData.heroDatas[j] = new AreanHeroData();
				rankData.heroDatas[j].id = heroList[j].heroid;
				rankData.heroDatas[j].lv = heroList[j].level;
				rankData.heroDatas[j].starLv = heroList[j].starLevel;
				rankData.heroDatas[j].realm = heroList[j].realm;
			}
			areanMng.AddRankData(rankData);
		}
		areanMng.SortRankList();
	}
	public void AddRankData(AreanRankData rankData){
		areanRankList.Add(rankData);
	}
	public void BindingData(AreanRankData data){
		this.rankData = data;
	}
	void OnDestory(){
		this.rankData = null;
	}