private int compareTo(UserRanking x, UserRanking y) { int result = y.Score - x.Score; if (result == 0) { result = y.UserId - x.UserId; } return result; }
public override bool TakeAction() { var cache = new ShareCacheStruct<UserRanking>(); var ranking = cache.Find(m => m.UserName == UserName); if (ranking == null) { var user = new GameUser() { UserId = (int)cache.GetNextNo(), NickName = UserName}; new PersonalCacheStruct<GameUser>().Add(user); ranking = new UserRanking(); ranking.UserID = user.UserId; ranking.UserName = UserName; ranking.Score = Score; if (!cache.Add(ranking)) { ErrorCode = Language.Instance.ErrorCode; ErrorInfo = string.Format("add fail, UserID {0} is exist.", ranking.UserID); return false; } } else { ranking.UserName = UserName; ranking.Score = Score; } return true; }
public override bool TakeAction() { var cache = new ShareCacheStruct<UserRanking>(); var ranking = cache.Find(m => m.UserName == userName); if (ranking == null) { var user = new GameUser() { UserId = (int)cache.GetNextNo(), NickName = userName }; new PersonalCacheStruct<GameUser>().Add(user); ranking = new UserRanking(); ranking.UserId = user.UserId; ranking.UserName = userName; ranking.Score = score; cache.Add(ranking); } else { ranking.UserName = userName; ranking.Score = score; } return true; }
void UserRankingProcess(GameUser gu) { var cache = new ShareCacheStruct<UserRanking>(); var cacheRanking = cache.FindKey(gu.UserId); if (cacheRanking != null) { if(gu.Score>cacheRanking.Score ) { cacheRanking.ModifyLocked(() => { cacheRanking.Score = gu.Score; }); } } else { // ֻ��>ij��ֵ��ʱ��żӡ���֤10w���ݼ��ɡ� if(gu.Score>=RankingScore.limitScoreAdd) { UserRanking ur = new UserRanking(); ur.UserID = gu.UserId; ur.Score = gu.Score; ur.UserName = gu.NickName; cache.Add(ur); } } }
BlackListData UR2BLD(UserRanking ur) { BlackListData bd = new BlackListData(); bd.UserID = ur.UserID; bd.UserName = ur.UserName; bd.Score = ur.Score; return bd; }
string processAdd(string parm) { string info = ""; string[] p = parm.Split(','); string addWhich = p[0]; string name = p[1]; int score = int.Parse(p[2]) ; if("ranking"==addWhich) { var cache = new PersonalCacheStruct<GameUser>(); var urCache =new ShareCacheStruct<UserRanking>(); var gu = new GameUser(); gu.UserId = (int)cache.GetNextNo(); gu.NickName = name; gu.Score = score; gu.Identify = "identify_"+name; var ur = new UserRanking(); ur.UserID = gu.UserId; ur.UserName = name; ur.Score = score; cache.Add(gu); urCache.Add(ur); info = "增加排行榜数据成功"; } return info; }
UserRanking copy(UserRanking ur) { UserRanking newUr = new UserRanking(); newUr.UserID = ur.UserID; newUr.Score = ur.Score; return newUr; }