コード例 #1
0
ファイル: Room.cs プロジェクト: isoundy000/Mahjong-3
    //退出房间中的所有玩家
    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);
        }
    }
コード例 #2
0
ファイル: SCOtherPlayerLeaveRoom.cs プロジェクト: microxw/MaQ
    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());
    }
コード例 #3
0
    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);
    }