def getSkillTreeInfo(dynamicId, characterId): """获取所有技能信息 """ player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} return player.skill.getSkillTreeInfo()
def sendMail(dynamicId, characterId, playerName, title, content): '''添加邮件 @param dynamicId: int 客户端的动态id @param characterId: int 角色的id @param playerName: str 发送人的名称 @param content: str 邮件内容 @param title: str 标题 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} if not dbShieldWord.checkIllegalChar(title): # 查询 title 是否存在屏蔽词 return {'result': False, 'message': u""} if not dbShieldWord.checkIllegalChar(content): # 查询 content 是否存在屏蔽词 return {'result': False, 'message': u""} if len(title) > 12: # 标题长度限制 return {'result': False, 'message': u""} toId = dbCharacter.getCharacterIdByNickName( playerName) # 根据昵称获取 角色(发信人) 的id if not toId: return {'result': False, 'message': u""} if toId[0] == characterId: return {'result': False, 'message': u""} result = player.mail.sendMail( toId[0], title, content) # 发送邮件(这里是保存到数据库,只有当收信人打开邮箱,才会收到从服务器更新) if result: return {'result': True, 'message': u""} return {'result': False, 'message': u""}
def getItemsInEquipSlotNew(dynamicId, characterId): '''获取角色的装备栏信息 @param dynamicId: int 客户端的id @param characterId: int 角色的id ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': ""} equipmentList = player.pack.getEquipmentSlotItemList() keys_copy = dict(equipmentList) equipmentList_copy = [] for position in range(1, 7): item = keys_copy.get(position, None) if item: _item = {} _item['itemid'] = item.baseInfo.id _item['icon'] = item.baseInfo.getItemTemplateInfo().get('icon', 0) _item['tempid'] = item.baseInfo.getItemTemplateId() _item['exp'] = item.exp iteminfo = {'pos': position, 'item': _item} equipmentList_copy.append(iteminfo) playerInfo = player.formatInfoForWeiXin() data = {} data['equip'] = equipmentList_copy data['attack'] = playerInfo['attack'] data['fangyu'] = playerInfo['fangyu'] data['minjie'] = playerInfo['minjie'] return {'result': True, 'message': u'', 'data': data}
def sendMail(dynamicId, characterId, playerName, title, content): '''添加邮件 @param dynamicId: int 客户端的动态id @param characterId: int 角色的id @param playerName: str 发送人的名称 @param content: str 邮件内容 @param title: str 标题 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} if not dbShieldWord.checkIllegalChar(title): return {'result': False, 'message': u""} if not dbShieldWord.checkIllegalChar(content): return {'result': False, 'message': u""} if len(title) > 12: return {'result': False, 'message': u""} toId = dbCharacter.getCharacterIdByNickName(playerName) if not toId: return {'result': False, 'message': u""} if toId[0] == characterId: return {'result': False, 'message': u""} result = player.mail.sendMail(toId[0], title, content) if result: return {'result': True, 'message': u""} return {'result': False, 'message': u""}
def updateSkillSetting(dynamicId, characterId, pet_id, skill_id, space): '''更新技能设置 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} return player.skill.equipSkill(pet_id, skill_id, space)
def GetCompoundItem(dynamicId, characterId, tempid): '''获取当前碎片能合成的物品的信息 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} suipianinfo = dbItems.all_ItemTemplate.get(tempid) if not suipianinfo: return {'result': False, 'message': u"碎片信息不存在"} newtempid = suipianinfo.get('compound', 0) newiteminfo = dbItems.all_ItemTemplate.get(newtempid) if not newiteminfo: return {'result': False, 'message': u"该物品不能合成"} response = {} info = {} info['itemid'] = 0 info['icon'] = newiteminfo['icon'] info['itemname'] = newiteminfo['name'] info['itemdesc'] = newiteminfo['description'] info['tempid'] = newiteminfo['id'] info['qlevel'] = 0 info['attack'] = newiteminfo['basePhysicalAttack'] info['fangyu'] = newiteminfo['basePhysicalDefense'] info['minjie'] = newiteminfo['baseSpeedAdditional'] info['tili'] = newiteminfo['baseHpAdditional'] info['price'] = newiteminfo['buyingRateCoin'] info['stack'] = 1 info['qh'] = 1 if newiteminfo['bodyType'] > 0 else 0 response['hcprice'] = suipianinfo.get('comprice', 0) response['iteminfo'] = info return {'result': True, 'message': u"", 'data': response}
def getItemsInEquipSlotNew(dynamicId, characterId): '''获取角色的装备栏信息 @param dynamicId: int 客户端的id @param characterId: int 角色的id ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': ""} equipmentList = player.pack.getEquipmentSlotItemList() keys_copy = dict(equipmentList) equipmentList_copy = [] for position in range(0, 8): item = keys_copy.get(position, None) if item: _item = {} _item['id'] = item.baseInfo.id _item['strengthen'] = dbItems.getItem( characterId, item.baseInfo.id)[0]['strengthen'] _item['tempid'] = item.baseInfo.getItemTemplateId() #_item['pos'] = position #_item['item'] = _item #_item['stacks'] = item.pack.getStack iteminfo = {'pos': position, 'item': _item} equipmentList_copy.append(iteminfo) #playerInfo = player.formatInfoForWeiXin() #data = {} #data['equip'] = equipmentList_copy #data['attack'] = playerInfo['attack'] #data['fangyu'] = playerInfo['fangyu'] #data['blood'] = playerInfo['blood'] return {'result': True, 'message': u'', 'data': equipmentList_copy}
def getPetSkillSetting(dynamicId, characterId, pet_id): '''获取伙伴技能设置 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} return player.skill.getPetSkillSetting(pet_id)
def learnSkill(dynamicId, characterId, skill_id): '''学习技能 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} return player.skill.learnSkill(skill_id)
def CompoundItem(dynamicId, characterId, tempid): """合成物品 """ player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} response = player.pack.CompoundItem(tempid) return response
def GetOneItemInfo(dynamicId, characterId, itemid): '''获取单个物品的详细信息 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} response = player.pack.getOneItemInfo(itemid) return response
def TiantiBattle_3701(dynamicId, characterId, tocharacterId, battleresult): '''天梯战斗结果处理 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': ""} result = player.arena.doFight(tocharacterId) return result
def GetJingJiInfo3700(dynamicId, characterId): '''获取竞技场信息 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} data = player.arena.getArenaAllInfo() return {'result': True, 'data': data}
def getGuyongRecord(dynamicId,characterId): '''获取雇用记录 ''' player = PlayersManager().getPlayerByID(characterId) # 根据角色id获取玩家角色实例 if not player or not player.CheckClient(dynamicId): return {'result':False,'message':Lg().g(18)} response = player.friend.GetGuyongRecord() # 获取雇用记录 return response
def userskillreplace(dynamicId, characterId, tempid, pos): '''替换技能 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': "234"} data = player.pack.equipEquipmentByItemIdPos(tempid, pos) return data
def UserItemNew(dynamicId, characterId, tempid): '''使用物品 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': "234"} data = player.pack.equipEquipmentByItemId(tempid) return data
def unloadedEquipment_new(dynamicId, characterId, itemId): '''卸下装备 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': ""} data = player.pack.unloaded(itemId) return data
def GetFashionInfo(dynamicId, characterId): '''获取包裹时装的信息 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': ""} data = player.pack.getFashionList() return data
def GetStoneInfo(dynamicId, characterId): '''获取强化石的信息 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': ""} data = player.pack.getStoneNum(characterId) return data
def GetFriendList(dynamicId,characterId,tag,index): '''获取好友排行信息 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result':False,'message':Lg().g(18)} response = player.friend.getFriendTop(tag,index) # 获取好友的排行信息 return response
def GuYongHaoYou(dynamicId,characterId,tid): '''雇佣好友 ''' player = PlayersManager().getPlayerByID(characterId) # 根据角色id获取玩家角色实例 if not player or not player.CheckClient(dynamicId): return {'result':False,'message':Lg().g(18)} response = player.friend.GuYongHaoYou(tid) # 雇用好友 return response
def zhangjieFight(dynamicId, characterId, zhangjieid): """章节战斗 """ player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': ""} fightresult = player.zhanyi.doZhangJie(zhangjieid) return fightresult
def getZhanYiInfo(dynamicId, characterId, index): """获取角色的战役信息 """ player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': ""} zhanyiinfo = player.zhanyi.getZhanYiInfo(index) return zhanyiinfo
def ArenaBattle_3704(dynamicId, characterId, tocharacterId): '''竞技场战斗 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': ""} result = player.arena.doFight(tocharacterId) return result
def getLearnedSkills(dynamicId, characterId): """获取所有技能信息 """ player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} learned_skills = player.skill.getSkills() return {"result": True, "data": learned_skills}
def GetAllPetListFormatForWeixin(dynamicId,characterId): """获取所有能上阵的武将的信息 """ player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result':False,'message':u""} petList = player.pet.FormatPetList() return {'result':True,'data':petList}
def getGuyongRecord(dynamicId, characterId): """获取雇用记录 """ player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': Lg().g(18)} response = player.friend.GetGuyongRecord() return response
def GetCompoundPackage_2109(dynamicId, characterId): '''获取合成包裹的信息 ''' player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result': False, 'message': u""} response = player.pack.HuoQuSuiPianBaoguo() return response
def GetCharacterMatrixInfo(dynamicId,characterId): """获取角色的阵法信息 """ player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result':False,'message':u""} matrixinfo = player.matrix.FormatMatrixInfoForWeixin() return {'result':True,'data':matrixinfo}
def GetPackageInfo(dynamicId,characterId): """获取包裹的信息 """ player = PlayersManager().getPlayerByID(characterId) if not player or not player.CheckClient(dynamicId): return {'result':False,'message':""} data = player.pack.getPackageItemList() return data