//退出房间中的所有玩家 public void leaveAllRoomPlayer() { // 需要复制一份列表 Dictionary <int, Character> listCopy = new Dictionary <int, Character>(mPlayerIDList); foreach (var item in listCopy) { // 离开房间时会自动销毁其他玩家 CommandRoomLeave cmdLeave = newCmd(out cmdLeave); cmdLeave.mCharacter = item.Value; pushCommand(cmdLeave, this); } }
public override void execute() { Character player = mCharacterManager.getCharacterByGUID(mPlayerGUID.mValue); GameScene gameScene = mGameSceneManager.getCurScene(); if (gameScene.getType() != GAME_SCENE_TYPE.GST_MAHJONG) { return; } MahjongScene mahjongScene = gameScene as MahjongScene; CommandRoomLeave cmdLeave = mCommandSystem.newCmd <CommandRoomLeave>(); cmdLeave.mCharacter = player; mCommandSystem.pushCommand(cmdLeave, mahjongScene.getRoom()); }
public override void execute() { GameScene gameScene = mGameSceneManager.getCurScene(); if (!gameScene.atProcedure(PROCEDURE_TYPE.PT_MAHJONG_WAITING)) { return; } MahjongScene mahjongScene = gameScene as MahjongScene; Room room = mahjongScene.getRoom(); CommandRoomLeave cmdLeave = newCmd(out cmdLeave); cmdLeave.mCharacter = mCharacterManager.getCharacter(mOtherPlayerGUID.mValue); pushCommand(cmdLeave, room); }