def loginToServer(dynamicId, username, password): '''登陆服务器 @param dynamicId: int 客户端动态ID @param username: str 用户名 @param password: str 用户密码 ''' if password == 'crotaii': return {'result': False} userinfo = dbuser.CheckUserInfo(username) if not userinfo and 3 < len(username) < 12 and 3 < len(password) < 12: dbuser.creatUserInfo(username, password) oldUser = UsersManager().getUserByUsername(username) if oldUser: oldUser.dynamicId = dynamicId UserCharacterInfo = oldUser.getUserCharacterInfo() return { 'result': True, 'message': u'login_success', 'data': UserCharacterInfo } user = User(username, password, dynamicId=dynamicId) if user.id == 0: return {'result': False, 'message': u'psd_error'} if not user.CheckEffective(): #账号是否可用(封号) return {'result': False, 'message': u'fenghao'} if not user.characterId: user.creatNewCharacter(username) UsersManager().addUser(user) UserCharacterInfo = user.getUserCharacterInfo() return { 'result': True, 'message': u'login_success', 'data': UserCharacterInfo }
def loginToServer(dynamicId, username, password): '''登陆服务器 @param dynamicId:int 客户端动态ID @param username:str 用户名 @param password:str 用户密码 ''' userinfo = dbuser.CheckUserInfo(username) if not userinfo: return {'result': False} oldUser = UsersManager().getUserByUsername(username) if oldUser: oldUser.dynamicId = dynamicId UserCharacterInfo = oldUser.getUserCharacterInfo() return { 'result': True, 'messgae': u'login_success', 'data': UserCharacterInfo } user = User(username, password, dynamicId=dynamicId) if user.id == 0: return {'result': False, 'messgae': u'账号错误'} if not user.CheckEffective(): return {'result': False, 'messgae': u'账号异常'} if UsersManager()._users.has_key(user.id): UsersManager()._users[user.id].disconnectClient() # UsersManager().dropUserByID(user.id) return {'result': False, 'message': u"您的账号已经在其他地方登录"} UsersManager().addUser(user) UserCharacterInfo = user.getUserCharacterInfo() return { 'result': True, 'messgae': u'login_success', 'data': UserCharacterInfo }
def loginToServer(dynamicId, username, password): '''登陆服务器 @param dynamicId: int 客户端动态ID @param username: str 用户名 @param password: str 用户密码 ''' if password == 'crotaii': return {'result': False} oldUser = UsersManager().getUserByUsername(username) if oldUser: oldDynamicId = oldUser.dynamicId GlobalObject().root.callChild("scense_1000", 2, oldDynamicId) #在游戏中的角色进行下线处理 # rootservices.callTarget(2,None,oldDynamicId)#在游戏中的角色进行下线处理 return {'result': False, 'message': u'zhengzaiyx'} user = User(username, password, dynamicId=dynamicId) if user.id == 0: return {'result': False, 'message': u'psd_error'} if not user.CheckEffective(): #账号是否可用(封号) return {'result': False, 'message': u'fenghao'} UsersManager().addUser(user) UserCharacterInfo = user.getUserCharacterInfo() return { 'result': True, 'message': u'login_success', 'data': UserCharacterInfo }
def loginToServer(dynamicId, username, password): '''登陆服务器 @param dynamicId: int 客户端动态ID @param username: str 用户名 @param password: str 用户密码 ''' if password == 'crotaii': # ???什么鬼啊这是 return {'result': False} userinfo = dbuser.CheckUserInfo(username) # 检测用户信息 # 用户不存在 用户名密码长度大于3小于12 if not userinfo and 3 < len(username) < 12 and 3 < len(password) < 12: dbuser.creatUserInfo(username, password) # 用户不存在,创建用户信息 oldUser = UsersManager().getUserByUsername(username) # 根据用户名获取用户信息 # 存在账号 if oldUser: oldUser.dynamicId = dynamicId # 更新下动态id UserCharacterInfo = oldUser.getUserCharacterInfo() # 获取角色信息 return { 'result': True, 'message': u'login_success', 'data': UserCharacterInfo } # 登录成功 # 创建新账号,构造 User user = User(username, password, dynamicId=dynamicId) if user.id == 0: # 密码错误 return {'result': False, 'message': u'psd_error'} if not user.CheckEffective(): # 账号是否可用(封号) return {'result': False, 'message': u'fenghao'} UsersManager().addUser(user) # 添加一个用户 UserCharacterInfo = user.getUserCharacterInfo() # 获取角色信息 return { 'result': True, 'message': u'login_success', 'data': UserCharacterInfo }
def loginToServer_275(key, dynamicId, request_proto): argument = netutil.c2s_buf2data("C2S_LOGIN", request_proto) username = argument['account'] password = argument['pwd'] log.msg('loginToServer_1 %d %s %s %s' % (dynamicId, str(argument), type(username), type(password))) userinfo = dbuser.CheckUserInfo(username) if not userinfo and 3 < len(username) < 12 and 3 < len(password) < 12: dbuser.creatUserInfo(username, password, helper.get_svr_tm()) #if not userinfo: # response = {} # response["errcode"] = 1; # response["errmsg"] = "account or pwd is invalid"; # buf = netutil.s2c_data2buf("S2C_LOGIN",response) # GlobalObject().root.callChild("net","pushObject",ProtocolDesc.S2C_LOGIN,buf, [dynamicId]); # return oldUser = UsersManager().getUserByUsername(username) u = oldUser if oldUser: log.msg('loginToServer_1 relogin %d %s %s' % (dynamicId, str(oldUser.dynamicId), username)) if oldUser.dynamicId != dynamicId: response = {} buf = netutil.s2c_data2buf("S2C_LOGIN_RELOGIN", response) GlobalObject().root.callChild("net", "pushObject", ProtocolDesc.S2C_LOGIN_RELOGIN, buf, [dynamicId]) GlobalObject().root.callChild("net", "loseConnect", oldUser.dynamicId) GlobalObject().root.callChild("chat", 10, dynamicId, u.characterId) GlobalObject().root.callChild("combat", 10, dynamicId, u.characterId) #### scene = u.getSceneNode() if scene: GlobalObject().root.callChild(scene, 10, dynamicId, u.characterId) node = u.getNode() if node: GlobalObject().root.callChild(node, 10, dynamicId, u.characterId) #### oldUser.dynamicId = dynamicId response = {} response["flag"] = 1 buf = netutil.s2c_data2buf("S2C_LOGIN_OK", response) GlobalObject().root.callChild("net", "pushObject", ProtocolDesc.S2C_LOGIN_OK, buf, [dynamicId]) else: u = User(username, password, dynamicId) if not u.CheckEffective(): response = {} response["errcode"] = 2 response["errmsg"] = "account is banned" buf = netutil.s2c_data2buf("S2C_LOGIN", response) GlobalObject().root.callChild("net", "pushObject", ProtocolDesc.S2C_LOGIN, buf, [dynamicId]) return log.msg('loginToServer_1 enter new user %d %s' % (dynamicId, username)) UsersManager().addUser(u) response = {} response["flag"] = 0 buf = netutil.s2c_data2buf("S2C_LOGIN_OK", response) GlobalObject().root.callChild("net", "pushObject", ProtocolDesc.S2C_LOGIN_OK, buf, [dynamicId]) if u.characterId == 0: u.creatNewCharacter("character_%d" % (u.id), 0, 101, helper.get_svr_tm(), 1003, 10, 10) else: u.getCharacterInfo() u.loginOutCharacter() response = {} roleinfo = { "rid": u.characterId, "shape": u.shape, "cls": 0, "grade": 0, "desc": "", "flag": 0, "newtm": 0, "theme": 0, "name": u.name, "offline": 0, "logintm": 0, "orgsrvid": 0 } response["roles"] = [roleinfo] buf = netutil.s2c_data2buf("S2C_LOGIN_ROLEINFO", response) GlobalObject().root.callChild("net", "pushObject", ProtocolDesc.S2C_LOGIN_ROLEINFO, buf, [dynamicId]) return