# -*- coding: utf-8 -*- import _common class Battle(object): def __init__(self): self.apis = [ { 'method': 'POST', 'name': 'preBattleCheck', 'desc': '战前检查把CMJoin协议打包成json格式放到http body里参考gamelog处理方式(在发CMJoin之前发,如果errcode!=0则提示错误并且不再发CMJoin相当于进入失败)', 'group': 'Battle', 'url': 'webapp/index.php?c=Battle&a=preBattleCheck', 'params': [ _common.ReqHead(), ], 'response': [ _common.RspHead(), ['pre_battle_payload', '', '透传给战斗的CMJoin.pre_battle_payload(该信息里携带了战斗服需要校验的信息,防止客户端伪造数据)'] ] },{ 'method': 'GET', 'name': 'getBattleHistory', 'desc': '历史战绩', 'group': 'Battle', 'url': 'webapp/index.php?c=Battle&a=getBattleHistory', 'params': [ _common.ReqHead(), ['room_mode', '', ' 0:pvp 1:pve'], ['pvp_mode', '', ' 0:匹配 1:排位'] ], 'response': [ _common.RspHead(), ['!data', [_common.BattleHistory()], '战绩数据'], ] },{ 'method': 'GET', 'name': 'showBattleHistory', 'desc': '战绩详情', 'group': 'Battle', 'url': 'webapp/index.php?c=Battle&a=showBattleHistory', 'params': [ _common.ReqHead(), ['battle_uuid', '', ' 战斗唯一id'], ['room_uuid', '', ' 房间唯一id'] ], 'response': [ _common.RspHead(), ['!info', [_common.BattleSettlement()], '战绩详情'], ] }, ] self.internalApis = [ { 'desc': '服务器战报(客户端不用处理)battleReport', 'group': 'Battle', 'url': 'webapp/index.php?c=Battle&a=battleReport', 'params': [ _common.ReqHead(), ['battle_uuid', '', 'battle_uuid'], ['match_mode', 0, '0: 匹配赛模式 1: 排位赛 2: pve'], ['pve_instance_id', 0, 'pve副本id'], ['pve_instance_mode', 0, 'pve副本mode'], ['is_valid_battle', 0, 'is_valid_battle'], ['payload', '', 'payload'], ['map_id', 0, '地图id'], ['map_tpl_name', '', '地图模板名'], ['room_uuid', 0, '房间唯一id'], ['room_mode', 0, '房间模式 0:吃鸡模式 1:匹配赛模式'], ['hero_id', 0, '英雄id'], ['hero_uniid', 0, '英雄uniid'], ['hero_quality', 0, '英雄quality'], ['map_name', '', '地图名'], ['team_mode', 0, '队伍模式 0:单人 1:组队'], ['game_time', 0, '游戏时间'], ['alive_time', 0, '存活时间'], ['ranked', 0, '排名'], ['kills', 0, '击杀数'], ['damage_out', 0, '伤害输出'], ['weapon_uuid1', '', 'weapon_uuid1'], ['weapon_uuid2', '', 'weapon_uuid2'], ['rescue_teammate_times', 0, '救起队友次数'], ['diving_times', 0, '潜水次数'], ['damage_in', 0, '伤害输入'], ['recover_hp', 0, '治疗量'], ['open_airdrop_times', 0, '开启空投补给次数'], ['use_medicine_times', 0, '使用药物次数'], ['destory_car_times', 0, '破坏载具次数'], ['use_camouflage_times', 0, '使用伪装物'], ['use_skill_times', 0, '使用技能次数'], ['ride_car_move_distance', 0, '驾驶或乘坐载具累计移动X米'], ['ride_car_kills', 0, '驾驶或乘坐载具累计击杀X个敌人'], ['max_hero_skill_lv', 0, '单局内英雄技能升级到X级'], ['weapons_type', '', '武器信息 weapon_id:kills:damage_out:obtain_count|'], ['weapons_slot', '', '武器信息 weapon_id:use_times|'], ['heros', '', '武器信息 hero_id:skill_lv:weapon_lv|'], ['pve_rank_score', 0, 'pve积分'], ['pve_kill_boss', 0, 'pve boss是否被击杀'], ['rank_score', 0, '排位积分'], #['pass_score', 0, '通行证积分'], ['items', 0, '道具id:道具数量|'], ], 'response': [ _common.RspHead(), ['reward', _common.BattleReward(), '武器2奖励'], ['rank_score', _common.BattleRankScore(), '排位分信息'], ] }, { 'desc': '获取战斗数据(客户端不用处理)getBattleData', 'group': 'Battle', 'url': 'webapp/index.php?c=Battle&a=getBattleData', 'params': [ _common.ReqHead(), ['account_id', '', 'account_id'], ['session_id', '', 'session_id'], ['battle_uuid', '', 'battle_uuid'], ], 'response': [ _common.RspHead(), ['account_id','','account_id'], ['session_id','','session_id'], ['battle_uuid','','battle_uuid'], ['match_mode',0,'0:匹配 1:排位 2:pve'], ['name','','用户名字'], ['level',0,'用户等级'], ['revive_coin',0,'复活币'], ['hero_uniid',0,'英雄 uniid'], ['hero_id',0,'英雄 item id'], ['weapon_uuid1',0,'武器1 uniid'], ['weapon_uuid2',0,'武器2 uniid'], ['parachute',0,'降落伞 item id'], ['hero_skin',0,'英雄皮肤 item id'], ['skill_id',0,'备战技能 item id'], ['chip_page',_common.Attr(),'铭文页属性'], ['hero_dto','','英雄详情'], ['weapon_dto1','','武器1详情'], ['weapon_dto2','','武器2详情'], ] }, { 'desc': '获取战斗数据(客户端不用处理)getBattleDataNew', 'group': 'Battle', 'url': 'webapp/index.php?c=Battle&a=getBattleDataNew', 'params': [ _common.ReqHead(), ['!members', _common.BattleMember(), '成员数据'] ], 'response': [ _common.RspHead(), ] }, { 'desc': '服务器战报(客户端不用处理)teamReport', 'group': 'Battle', 'url': 'webapp/index.php?c=Battle&a=teamReport', 'params': [ _common.ReqHead(), ['version', 0, '版本'], ['battle_uuid', '', 'battle_uuid'], ['room_uuid', '', '房间唯一id'], ['room_mode', 0, '0:pvp 1:pve'], ['team_id', 0, '队伍id'], ['map_id', 0, '地图id'], ['victory', 0, '是否胜利(pvp::吃鸡 pve:通关)'], ['pvp_settelement_type', 0, 'pvp结算类型 0:个人 1:组队'], ['pvp_settelement_color', 0, ''], ['pvp_team_rank', 0, 'pvp队伍排名'], ['pvp_total_human_num', 0, 'pvp房间总人数'], ['pvp_alive_human_num', 0, 'pvp房间剩余存活数'], ['pvp_total_team_num', 0, 'pvp战斗队伍总数'], ['pvp_match_mode', 0, '0: pvp 1:排位赛'], ['pvp_team_kills', 0, 'pvp队伍击杀数'], ['pve_settelement_type', 0, 'pve结算类型 0:个人 1:组队'], ['pve_instance_id', 0, 'pve副本id'], ['pve_wave', 0, 'pve波次'], ['pve_max_wave', 0, 'pve最大波次'], ['!members', _common.TeamReportMember(), '成员数据'], ['!team_list', _common.TeamReportTeam(), '所有队伍成员数据'] ], 'response': [ _common.RspHead(), ] }, ]