def Login(self, m_uid, account, password): sValue = self.Query(account) dvalue = json.loads(sValue) score = "-1" time = "-1" socketMgr = pubglobalmanager.GetGlobalManager("socketmgr") #register success if sValue == "-1": sendMsg = "register success" socketMgr.GetItem(m_uid).SendMsg(sendMsg) value = "{\"password\":\"" + password + "\",\"score\":\"" + score + "\",\"time\":\"" + time + "\"}" print(value) self.Add(account, value) t = Timer(1, self.SendScore, [m_uid]) t.start() #login success elif dvalue['password'] == password: sendMsg = "Login success" #print(sendMsg) #print(pubglobalmanager.GetGlobalManager("socketmgr").m_UID) socketMgr.GetItem(m_uid).SendMsg(sendMsg) t = Timer(1, self.SendScore, [m_uid]) t.start() #password is wrong elif dvalue['password'] != password: sendMsg = "Password is wrong" socketMgr.GetItem(m_uid).SendMsg(sendMsg) #print(dvalue['password']) self.Save()
def SaveScore(self, m_uid, account, score, time): sValue = self.Query(account) sendMsg = "" if sValue == "-1": sendMsg = "Save Error!" else: dValue = json.loads(sValue) dValue['score'] = score dValue['time'] = time value = json.dumps(dValue) self.Add(account, value) sendMsg = "Save Success!" socketMgr = pubglobalmanager.GetGlobalManager("socketmgr") socketMgr.GetItem(m_uid).SendMsg(sendMsg) print("save") self.Save()
def SendScore(self, m_uid): dScore = {} for key, value in self.m_Data.items(): if key != "total": dValue = json.loads(value) score = dValue['score'] dScore[key] = score #print(dScore[key]),key #sorted by scorenum sortdScore = sorted(dScore.items(), key=lambda dScore: dScore[1], reverse=True) #get the valid data what the sender requires (score!=-1) sendMsg = [] i = 0 for tup in sortdScore: account = tup[0] score = tup[1] if score != "-1": value = self.m_Data[account] dValue = json.loads(value) msgRow = "{\"account\":\"" + account + "\",\"score\":\"" + dValue[ 'score'] + "\",\"time\":\"" + dValue['time'] + "\"}" sendMsg.append(msgRow) i += 1 if i == 10: break #convert to json string,send to server sendString = "[" for sMsg in sendMsg: if sendMsg.index(sMsg) != 0: sendString += ',' sendString += sMsg sendString += ']' print(sendString) socketMgr = pubglobalmanager.GetGlobalManager("socketmgr") socketMgr.GetItem(m_uid).SendMsg(sendString) print("Send Score Success")
def Init(): if pubglobalmanager.GetGlobalManager(defines.MUTEXLOCK_NAME): return oManager = manager.CMutexLockManager() pubglobalmanager.SetGlobalManager(defines.MUTEXLOCK_NAME, oManager)
def ___AutoLock(*args, **kwargs): oMgr = pubglobalmanager.GetGlobalManager(defines.MUTEXLOCK_NAME) oMgr.Acquire(sName) ret = func(*args, **kwargs) oMgr.Release(sName) return ret
def Init(): if pubglobalmanager.GetGlobalManager("demo"): return oManger = CDemo() pubglobalmanager.SetGlobalManager("demo", oManger) oManger.Init()
def Init(): if pubglobalmanager.GetGlobalManager(defines.COMMAND_CTRL_NAME): return oManager = manager.CCommandManager() pubglobalmanager.SetGlobalManager(defines.COMMAND_CTRL_NAME, oManager)
def OnCommand(oClient, dData): oManager = pubglobalmanager.GetGlobalManager(defines.COMMAND_CTRL_NAME) oManager.OnCommand(oClient, dData)
def Init(): if pubglobalmanager.GetGlobalManager(defines.TIME_CONTRL_MANAGER): return oManager = manager.CTimerManager() pubglobalmanager.SetGlobalManager(defines.TIME_CONTRL_MANAGER, oManager)
def Init(): if pubglobalmanager.GetGlobalManager(defines.DBCTRL_MANAGER_NAME): return oManager = manager.CDBManager() pubglobalmanager.SetGlobalManager(defines.DBCTRL_MANAGER_NAME, oManager)
def Init(): if pubglobalmanager.GetGlobalManager("tetris"): return oManger = CTetris() pubglobalmanager.SetGlobalManager("tetris", oManger) oManger.Init()
def Init(): if pubglobalmanager.GetGlobalManager(defines.SOCKET_MANAGER): return oManager = manager.CSocketManger() pubglobalmanager.SetGlobalManager(defines.SOCKET_MANAGER, oManager)
def Start(): oManager = pubglobalmanager.GetGlobalManager(defines.SOCKET_MANAGER) oManager.Start()