123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- /**
- * 背包数据管理
- */
- let BattleMgr = {
- // # 房间玩家信息
- // .DataRoomPlayer {
- // playerInfo 0: DataUserBaseInfo # 玩家信息
- // seatId 1: integer # 位置ID
- // status 2: integer # 状态 0:进入 1:准备
- // }
- // # 房间信息
- // .DataRoom {
- // roomId 0: integer # 房间号
- // playCount 1:integer # 战斗人数 - 历史战绩无此字段
- // battleBoxList 2: *integer # 战斗箱子ID列表
- // playerList 3: *DataRoomPlayer # 房间玩家列表 - 历史战绩仅保留战斗玩家
- // status 4: integer # 房间状态 0:等待中 1:进行中 2:结束
- // createTime 5: integer # 创建时间
- // battleTime 6: integer # 战斗开始时间
- // }
- // # 射击结果
- // .DataBattleShot {
- // itemId 0: integer # 中奖饰品ID
- // price 1: integer # 射击价格
- // }
- // # 战斗玩家
- // .DataBattlePlayer {
- // uid 0: integer # 玩家ID
- // seatId 1: integer # 座位ID
- // shotList 2: *DataBattleShot # 射击结果列表
- // }
- // # 战斗 - 玩家掉落
- // .DataBattlePlayerShot {
- // uid 0: integer # 玩家ID
- // shot 1: DataBattleShot # 射击结果
- // }
- // # 战斗 - 轮次信息
- // .DataBattleRound {
- // round 0: integer # 轮次
- // shotList 1: *DataBattlePlayerShot # 玩家射击列表
- // }
- // # 战斗 - 结算
- // .DataBattleSettle {
- // roomInfo 0: DataRoom # 房间信息
- // battleId 1: string # 战斗编号
- // winUid 2: integer # 胜利玩家ID
- // rounds 3: *DataBattleRound # 战斗轮次列表 - 历史战绩没有该字段
- // battlePlayerList 4: *DataBattlePlayer # 战斗玩家列表
- // }
- _rooms: {}, // 房间列表
- _myRoom:null,
- init () {
- if (CC_EDITOR) {
- return;
- }
- // 推送消息
- cc.game.on('on_room_new', this._onRoomNew, this);
- cc.game.on('on_room_destroy', this._onRoomDestroy, this);
- cc.game.on('on_room_player_change', this._onRoomPlayerChange, this);
- cc.game.on('on_room_seat_down', this._onRoomSeatDown, this);
- cc.game.on('on_room_battle_settle', this._onRoomBattleSettle, this);
- },
- //* ************* 客户端请求/响应 ************* *//
- requestInfo () {
- G.NetworkMgr.sendSocketRequest('room_get_info', {}, this._responseRoomGetInfo.bind(this));
- },
- requestRoomCreate(playCount, battleBoxList) {
- let request = {
- playCount: playCount,
- battleBoxList: battleBoxList,
- };
- G.NetworkMgr.sendSocketRequest('room_create_room', request, this._responseRoomCreate.bind(this));
- },
- requestRoomPlayerEnter(roomId) {
- let request = {
- roomId: roomId,
- };
- G.NetworkMgr.sendSocketRequest('room_player_enter', request, this._responseRoomPlayerEnter.bind(this));
- },
- requestRoomPlayerSeat(roomId, seatId) {
- let request = {
- roomId: roomId,
- seatId: seatId,
- };
- G.NetworkMgr.sendSocketRequest('room_player_seat', request, this._responseRoomPlayerSeat.bind(this));
- },
- requestRoomStandUp() {
- G.NetworkMgr.sendSocketRequest('room_stand_up', {}, this._responseRoomStandUp.bind(this));
- },
- requestRoomPlayerLeave() {
- G.NetworkMgr.sendSocketRequest('room_player_leave', {}, this._responseRoomPlayerLeave.bind(this));
- },
- requestRoomGetRecordList(lastTime) {
- let request = {
- lastTime: lastTime,
- };
- G.NetworkMgr.sendSocketRequest('room_get_record_list', request, this._responseRoomGetRecordList.bind(this));
- },
- requestRoomGetPlayerRecordList(lastTime) {
- let request = {
- lastTime: lastTime,
- };
- G.NetworkMgr.sendSocketRequest('room_get_player_record_list', request, this._responseRoomGetPlayerRecordList.bind(this));
- },
- requestRoomGetBrilliantRecordList() {
- G.NetworkMgr.sendSocketRequest('room_get_brilliant_record_list', {}, this._responseRoomGetBrilliantRecordList.bind(this));
- },
- _responseRoomGetInfo (data) {
- let responseInfo = data.responseInfo;
- if (responseInfo.code === 200) {
- // 房间列表
- this._rooms = responseInfo.roomList;
- this._myRoom = responseInfo.myRoom;
- G.PublicMgr.emit(JMC.PUBLIC_MSG.BAG_INFO);
- } else {
- // 断开网络并且弹出重连窗口
- G.NetworkMgr.closeSocket();
- G.AppUtils.getSceneCtrl().showOfflineAlert();
- }
- },
- _responseRoomCreate (data){
- let responseInfo = data.responseInfo;
- if (responseInfo.code === 200) {
- // 房间列表
- this._myRoom = responseInfo.room;
- G.PublicMgr.emit(JMC.PUBLIC_MSG.ROOM_CREATE_ROOM);
- } else {
- // 断开网络并且弹出重连窗口
- G.NetworkMgr.closeSocket();
- G.AppUtils.getSceneCtrl().showOfflineAlert();
- }
- },
- _responseRoomPlayerEnter (data) {
- let responseInfo = data.responseInfo;
- if (responseInfo.code === 200) {
- // 房间列表
- this._myRoom = responseInfo.room;
- G.PublicMgr.emit(JMC.PUBLIC_MSG.ROOM_CREATE_ROOM);
- } else {
- // 断开网络并且弹出重连窗口
- G.NetworkMgr.closeSocket();
- G.AppUtils.getSceneCtrl().showOfflineAlert();
- }
- },
- _responseRoomPlayerSeat (data) {
- },
- _responseRoomStandUp (data) {
- },
- _responseRoomPlayerLeave (data) {
- },
- _responseRoomGetRecordList (data) {
- },
- _responseRoomGetPlayerRecordList (data) {
- },
- _responseRoomGetBrilliantRecordList (data) {
- },
- }
- module.exports = BattleMgr;
|