import { app } from "../App"; import GBattleModeManager, { BattleMode } from "../battle/GBattleModeManager"; import { GAction } from "../consts/GAction"; import { GActionType } from "../consts/GActionType"; import { GUI } from "../ui/UIConfig"; import BaseAction from "./BaseAction"; export interface GPVPStart{ leftTactical:string; //左边玩家的阵法 leftPets:{[key:number]:string}; //左边玩家的宠物 rightTactical:string; //右边玩家的阵法 rightPets:{[key:number]:string}; //左边玩家的宠物 } export interface GPVPText{ text:string } export default class PVPAction extends BaseAction { onInit(){ app.socket.on(GAction.C_MODE_PVP_START_WAIT,this.onModePVPStartWait,this); app.socket.on(GAction.C_MODE_PVP_END_WAIT,this.onModePVPEndWait,this); app.socket.on(GAction.C_MODE_PVP_START,this.onModePVPStart,this,GActionType.GPVPStart); app.socket.on(GAction.C_MODE_PVP_MESSAGE,this.onModePVPMessage,this,GActionType.GPVPText); } //PVP开始等待 onModePVPStartWait(){ //PVP 匹配页面 app.layer.Open(GUI.PVPModeMatchView); } //PVP结束等待 onModePVPEndWait(){ //PVP 匹配页面 app.layer.Close(GUI.PVPModeMatchView); } //开始PVP onModePVPStart(info:GPVPStart){ console.log("开始PVP",info); GBattleModeManager.getIns().Open(BattleMode.PVP,true,info); } //提示 onModePVPMessage(info:GPVPText){ console.log("提示PVP",info); app.layer.Open(GUI.Tips,{text:info.text}) } }