| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290 |
- cc.Class({
- extends: cc.RePlayEngine,
- properties: {
- },
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- //调用接口
- CustomGameData:function(GameIndex, TempData, DataIndex){
- switch(TempData.wSubCmdID){
- case GameDef.SUB_S_GAME_START:{
- TempData.pStruct = GameDef.CMD_S_GameStart();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_GameStart SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize);
- this.GameData[GameIndex].push(TempData);
- break
- }
- case GameDef.SUB_S_OUT_CARD:{
- TempData.pStruct = GameDef.CMD_S_OutCard();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_OutCard SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- this.GameData[GameIndex].push(TempData);
- break
- } case GameDef.SUB_S_REPLACE_CARD:{
- TempData.pStruct = GameDef.CMD_S_ReplaceCard();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_ReplaceCard SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- this.GameData[GameIndex].push(TempData);
- break
- }
- case GameDef.SUB_S_SEND_CARD:{
- TempData.pStruct = GameDef.CMD_S_SendCard();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_SendCard SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- this.GameData[GameIndex].push(TempData);
- break
- }
- case GameDef.SUB_S_OPERATE_NOTIFY:{
- TempData.pStruct = GameDef.CMD_S_OperateNotify();
- var size = gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex);
- TempData.pStruct.pItem = new Array(TempData.pStruct.wCount);
- for (var i = 0; i < TempData.pStruct.wCount; i++) {
- TempData.pStruct.pItem[i] = GameDef.CMD_WeaveItem();
- }
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_OperateNotify SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize);
- if( this.m_GameBase.InfoHead.wLookChair == TempData.wChairID )
- {
- this.GameData[GameIndex].push(TempData);
- }
- break
- }
- case GameDef.SUB_S_OPERATE_RESULT:
- {
- TempData.pStruct = GameDef.CMD_S_OperateResult();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_OperateResult SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- this.GameData[GameIndex].push(TempData);
- break
- }
- case GameDef.SUB_S_GAME_END:
- {
- TempData.pStruct = GameDef.CMD_S_GameEnd();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_GameEnd SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- this.GameData[GameIndex].push(TempData);
- break
- }
- case GameDef.SUB_S_TRUSTEE:
- {
- TempData.pStruct = GameDef.CMD_S_Trustee();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_Trustee SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- this.GameData[GameIndex].push(TempData);
- break
- }
- case GameDef.SUB_S_LEAVE:
- {
- TempData.pStruct = GameDef.CMD_S_Leave();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_Leave SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- this.GameData[GameIndex].push(TempData);
- break
- }
- case GameDef.SUB_S_USER_DOUBLE:
- {
- TempData.pStruct = GameDef.CMD_S_Double();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_Double SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- this.GameData[GameIndex].push(TempData);
- break
- }
- case GameDef.SUB_S_GAME_DOUBLE:
- {
- TempData.pStruct = GameDef.CMD_S_Game_Double();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_Game_Double SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- this.GameData[GameIndex].push(TempData);
- break
- }
- case GameDef.SUB_S_UPDATE_CARD:
- {
- TempData.pStruct = GameDef.CMD_S_HandCardData();
- if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- console.error("CMD_S_HandCardData SizeErr ")
- return false;
- }
- TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- this.GameData[GameIndex].push(TempData);
- break
- }
- // case GameDef.SUB_S_TING:
- // {
- // TempData.pStruct = GameDef.CMD_TingTip();
- // if(gCByte.Bytes2Str(TempData.pStruct , this.m_PlayData, DataIndex) != TempData.wDataSize){
- // console.error("CMD_TingTip SizeErr ")
- // return false;
- // }
- // TempData.ByteData = this.m_PlayData.slice( DataIndex , DataIndex + TempData.wDataSize)
- // this.GameData[GameIndex].push(TempData);
- // break
- // }
- default:
- {
- if(window.LOG_NET_DATA)console.log("MDM_GF_GAME skip msg "+TempData.wSubCmdID)
- }
- }
- return true;
- },
- CustomGameDataParseEnd:function(index){
- for (var i = 0; i < this.GameData[index].length; ){
- if( this.GameData[index][i].wSubCmdID == GameDef.SUB_S_UPDATE_CARD && this.GameData[index][i-1] != null ){
- if( this.GameData[index][i-1].UpdateCard == null ){
- this.GameData[index][i-1].UpdateCard = new Array();
- }
- if( this.GameData[index][i].UpdateCard != null ){
- for (var j = 0; j < this.GameData[index][i].UpdateCard.length; j++) {
- this.GameData[index][i-1].UpdateCard.push(this.GameData[index][i].UpdateCard[j]);
- }
- }
- this.GameData[index][i-1].UpdateCard.push(this.GameData[index][i]);
- this.GameData[index].splice(i,1);
- }else{
- i++
- }
- }
- var SelfStartIndex = -1;
- var StartCardData = new Array();
- for (var i = 0; i < this.GameData[index].length;i++ ){
- if( this.GameData[index][i].wSubCmdID == GameDef.SUB_S_GAME_START){
- if( this.m_GameBase.InfoHead.wLookChair == this.GameData[index][i].wChairID ){
- this.GameData[index][i].StartCardData = StartCardData;
- }else{
- StartCardData.push(this.GameData[index][i]);
- }
- }
- }
- for (var i = 0; i < this.GameData[index].length; ){
- if( this.GameData[index][i].wSubCmdID == GameDef.SUB_S_GAME_START &&
- this.m_GameBase.InfoHead.wLookChair != this.GameData[index][i].wChairID){
- this.GameData[index].splice(i,1);
- }else{
- i++
- }
- }
- },
- ShowIndexCustom:function(wShowIndex){
- var pData = this.GameData[this.m_PGIndex];
- if( pData != null ){
- if( pData[wShowIndex].UpdateCard != null ){
- for (var i = 0; i < pData[wShowIndex].UpdateCard.length; i++) {
- var pMsg = pData[wShowIndex].UpdateCard[i];
- this.m_GameEngine.OnEventGameMessage(pMsg.wSubCmdID,pMsg.ByteData,pMsg.wDataSize)
- }
- }
- if( pData[wShowIndex] != null )
- {
- if( pData[wShowIndex].wSubCmdID == GameDef.SUB_S_GAME_END)
- {
- // this.m_GameEngine.unschedule( this.m_GameEngine.OnTimeIDI_PERFORM_END);
- }
- else if(pData[wShowIndex].wSubCmdID == GameDef.SUB_S_GAME_START){
- this.m_GameView.m_CardView.m_CenterViewCtrl.updateNorth();
- var startData = pData[wShowIndex].StartCardData;
- for (var i = 0; i < startData.length; i++) {
- var viewID = this.m_GameEngine.SwitchViewChairID(startData[i].wChairID);
- this.m_GameView.m_CardView.SetCardData(viewID,startData[i].pStruct.cbCardData,GameDef.MAX_COUNT-1,null);
- }
- }
- else if( pData[wShowIndex].wSubCmdID != GameDef.SUB_S_OPERATE_NOTIFY)
- {
- this.m_GameView.m_CardView.SetControlInfo(false);
- }
- }
- if( pData[wShowIndex].UpdateCard != null )
- {
- for (var i = 0; i < pData[wShowIndex].UpdateCard.length; i++) {
- var pMsg = pData[wShowIndex].UpdateCard[i];
- this.m_GameEngine.OnEventGameMessage(pMsg.wSubCmdID,pMsg.ByteData,pMsg.wDataSize);
- }
- }
- for (var i=0;i<GameDef.GAME_PLAYER;++i){
- //变量定义
- var viewID = this.m_GameEngine.SwitchViewChairID(i);
- if( this.m_GameView.m_pIClientUserItem[viewID] == null) continue;
- this.m_GameView.m_CardView.SetCardItemState(viewID, GameDef.HAND_STATE_SHOW);
- }
- }
- },
- ShowEndIndexCustom:function(wShowIndex){
- var pData = this.GameData[this.m_PGIndex];
- if( pData != null ){
- var bJump = -1;
- if( pData[wShowIndex] != null )
- {
- if(pData[wShowIndex].noWait != null && pData[wShowIndex].noWait )
- {
- this.ShowIndex(wShowIndex+1);
- }
- }
- }
- },
- GetGameEndData:function(info){
- if( this.GameData == null) return;
- var list = new Array();
- for (var i = 0; i < this.GameData.length; i++) {
- list[i] = new Array();
- list[i].score = new Array(this.GameData[i].user.length);
- list[i].userID = new Array(this.GameData[i].user.length);
- for (var k = 0; k < this.GameData[i].length; k++) {
- if( this.GameData[i][k].wSubCmdID == GameDef.SUB_S_GAME_END ){
- for (var j = 0; j < list[i].score.length; j++) {
- list[i].userID[j] = this.GameData[i][k].pStruct.dwUserID[j];
- list[i].score[j] = this.GameData[i][k].pStruct.lGameScore[j] + this.GameData[i][k].pStruct.lGangScore[j];
- }
- }
- }
- }
- return list;
- }
- // update (dt) {},
- });
|