private GameUser CreateRole() { GameUser user = new GameUser(UserId); user.SessionID = Sid; user.Pid = Pid; user.HeadIcon = HeadID; user.RetailId = RetailID; user.NickName = UserName; user.RealName = ""; user.Hobby = ""; user.Profession = ""; user.Sex = Sex.ToBool(); user.UserLv = (short)ConfigEnvSet.GetInt("User.Level", 1); user.GiftGold = ConfigEnvSet.GetInt("User.GiftGold", 100); user.GameCoin = ConfigEnvSet.GetInt("User.GameCoin", 1000); user.VipLv = ConfigEnvSet.GetInt("User.VipLv"); user.UserStatus = UserStatus.Normal; user.MsgState = true; user.MobileType = MobileType; user.ScreenX = ScreenX; user.ScreenY = ScreenY; user.ClientAppVersion = ReqAppVersion; user.LoginDate = DateTime.Now; user.CreateDate = DateTime.Now; user.TitleId = 1001; user.Property.GameId = GameID; user.Property.ServerId = ServerID; user.Birthday = new DateTime(1970, 1, 1); user.RemoteAddress = httpGet.RemoteAddress; var cacheSet = new GameDataCacheSet <GameUser>(); cacheSet.Add(user); cacheSet.Update(); //增加初始背包、玩家任务表、玩家成就表 var itemCacheSet = new GameDataCacheSet <UserItemPackage>(); itemCacheSet.Add(new UserItemPackage(UserId)); itemCacheSet.Update(); var taskCacheSet = new GameDataCacheSet <UserTask>(); taskCacheSet.Add(new UserTask(UserId)); taskCacheSet.Update(); var achieveCacheSet = new GameDataCacheSet <UserAchieve>(); achieveCacheSet.Add(new UserAchieve(UserId)); achieveCacheSet.Update(); UserDailyRestrain restrain = new UserDailyRestrain(UserId); restrain.RefreshDate = DateTime.Now.AddDays(-1); var restrainCacheSet = new GameDataCacheSet <UserDailyRestrain>(); restrainCacheSet.Add(restrain); restrainCacheSet.Update(); return(user); }
protected override bool CreateUserRole(out IUser user) { user = null; if (UserName.Length < 2 || UserName.Length > 12) { ErrorCode = Language.Instance.ErrorCode; ErrorInfo = Language.Instance.St1005_UserNameNotEnough; return(false); } var userCache = new PersonalCacheStruct <GameUser>(); var roleCache = new PersonalCacheStruct <UserRole>(); GameUser gameUser; if (userCache.TryFindKey(Uid, out gameUser) == LoadingStatus.Success) { if (gameUser == null) { gameUser = new GameUser { UserId = UserId, PassportId = Pid, RetailId = RetailID, NickName = Pid }; userCache.Add(gameUser); } user = gameUser; UserRole role; if (roleCache.TryFind(gameUser.PersonalId, r => r.RoleName == UserName, out role) == LoadingStatus.Success) { if (role == null) { role = new UserRole() { RoleId = (int)roleCache.GetNextNo(), UserId = UserId, RoleName = UserName, HeadImg = HeadID, Sex = Sex.ToBool(), LvNum = 1, ExperienceNum = 0, LifeNum = 100, LifeMaxNum = 100 }; roleCache.Add(role); } gameUser.CurrRoleId = role.RoleId; var notifyUsers = new List <GameUser>(); notifyUsers.Add(gameUser); ActionFactory.SendAsyncAction(notifyUsers, (int)ActionType.World, null, null); return(true); } } return(false); }
protected override bool CreateUserRole(out IUser user) { user = null; if (UserName.Length < 2 || UserName.Length > 12) { ErrorCode = Language.Instance.ErrorCode; ErrorInfo = Language.Instance.St1005_UserNameNotEnough; return(false); } var userCache = new PersonalCacheStruct <GameUserCopy>(); var roleCache = new PersonalCacheStruct <UserRole>(); var userNameCache = new PersonalCacheStruct <UserDescription>(); GameUserCopy gameUser; if (userCache.TryFindKey(Pid, out gameUser) == LoadingStatus.Success) { if (gameUser == null) { gameUser = new GameUserCopy { UserId = UserId, PassportId = Pid, RetailId = RetailID, NickName = Pid }; userCache.Add(gameUser); } user = new SessionUser(gameUser); /////////////////Test//////////////////////////// UserDescription description; if (userNameCache.TryFind(gameUser.PersonalId, r => r.UserId == gameUser.UserId, out description) == LoadingStatus.Success) { if (description == null) { } } //////////////////////////////////////////////////// UserRole role; if (roleCache.TryFind(gameUser.PersonalId, r => r.RoleName == UserName, out role) == LoadingStatus.Success) { if (role == null) { role = new UserRole() { RoleId = (int)roleCache.GetNextNo(), UserId = UserId, RoleName = UserName, HeadImg = HeadID, Sex = Sex.ToBool(), LvNum = 1, ExperienceNum = 0, LifeNum = 100, LifeMaxNum = 100 }; roleCache.Add(role); gameUser.CurrRoleId = role.RoleId; } return(true); } } return(false); }