コード例 #1
0
    public override void execute()
    {
        string name = BinaryUtility.bytesToString(mName.mValue, Encoding.UTF8);

        UnityUtility.logInfo("获得玩家数据 : " + mPlayerGUID + ", 名字 : " + name);
        // 创建该玩家的实例
        CommandCharacterManagerCreateCharacter cmdCreate = newCmd(out cmdCreate);

        cmdCreate.mName          = name;
        cmdCreate.mID            = mPlayerGUID.mValue;
        cmdCreate.mCharacterType = CHARACTER_TYPE.CT_OTHER;
        pushCommand(cmdCreate, mCharacterManager);
        CharacterOther other = mCharacterManager.getCharacter(mPlayerGUID.mValue) as CharacterOther;
        CharacterData  data  = other.getCharacterData();

        data.mMoney          = mMoney.mValue;
        data.mHead           = mHead.mValue;
        data.mServerPosition = (PLAYER_POSITION)mPosition.mValue;
        data.mBanker         = mBanker.mValue;
        data.mReady          = mReady.mValue;
        // 将该玩家加入房间
        GameScene       gameScene = mGameSceneManager.getCurScene();
        CommandRoomJoin cmd       = newCmd(out cmd);

        cmd.mCharacter = other;
        pushCommand(cmd, (gameScene as MahjongScene).getRoom());
    }
コード例 #2
0
ファイル: SCLoginRet.cs プロジェクト: huai707/Mahjong
    public override void execute()
    {
        if (mLoginRet.mValue == 0)
        {
            // 创建玩家
            CommandCharacterManagerCreateCharacter cmdCreate = newCmd(out cmdCreate);
            cmdCreate.mCharacterType = CHARACTER_TYPE.CT_MYSELF;
            cmdCreate.mName          = bytesToString(mName.mValue, getGB2312());
            cmdCreate.mID            = mPlayerGUID.mValue;
            pushCommand(cmdCreate, mCharacterManager);
            // 设置角色数据
            CharacterMyself myself = mCharacterManager.getMyself();
            CharacterData   data   = myself.getCharacterData();
            data.mMoney = mMoney.mValue;
            data.mHead  = mHead.mValue;

            // 进入到主场景
            CommandGameSceneManagerEnter cmdEnterMain = newCmd(out cmdEnterMain, true, true);
            cmdEnterMain.mSceneType = GAME_SCENE_TYPE.GST_MAIN;
            pushDelayCommand(cmdEnterMain, mGameSceneManager);
        }
        else if (mLoginRet.mValue == 1)
        {
            string info = "账号密码错误!";
            GameUtility.messageOK(info);
            UnityUtility.logInfo(info);
        }
        else if (mLoginRet.mValue == 2)
        {
            string info = "已在其他地方登陆!";
            GameUtility.messageOK(info);
            UnityUtility.logInfo(info);
        }
    }
コード例 #3
0
ファイル: ScriptLogin.cs プロジェクト: huai707/Mahjong
    //---------------------------------------------------------------------------------------------------------------------
    protected void onLoginClick(GameObject obj)
    {
        if (!mTestAccount)
        {
            CSLogin login = mSocketManager.createPacket <CSLogin>();
            login.setAccount(mAccountEdit.getText());
            login.setPassword(mPasswordEdit.getText());
            mSocketManager.sendMessage(login);
            // 发送登录消息后显示正在登录的提示框
            LT.ACTIVE_WINDOW(mTipMask);
            mCurTime = 0.0f;
        }
        else
        {
            // 创建玩家
            CommandCharacterManagerCreateCharacter cmdCreate = newCmd(out cmdCreate);
            cmdCreate.mCharacterType = CHARACTER_TYPE.CT_MYSELF;
            cmdCreate.mName          = "测试";
            cmdCreate.mID            = 0;
            pushCommand(cmdCreate, mCharacterManager);
            // 设置角色数据
            CharacterMyself myself = mCharacterManager.getMyself();
            CharacterData   data   = myself.getCharacterData();
            data.mMoney = 100;
            data.mHead  = 1;

            // 进入到主场景
            CommandGameSceneManagerEnter cmdEnterMain = newCmd(out cmdEnterMain, true, true);
            cmdEnterMain.mSceneType = GAME_SCENE_TYPE.GST_MAIN;
            pushDelayCommand(cmdEnterMain, mGameSceneManager);
        }
    }
コード例 #4
0
ファイル: SCLoginRet.cs プロジェクト: quyixia/Mahjong
    public override void execute()
    {
        if (mLoginRet.mValue == 0)
        {
            // 创建玩家
            CommandCharacterManagerCreateCharacter cmdCreate = mCommandSystem.newCmd <CommandCharacterManagerCreateCharacter>();
            cmdCreate.mCharacterType = CHARACTER_TYPE.CT_MYSELF;
            cmdCreate.mName          = BinaryUtility.bytesToString(mName.mValue, Encoding.UTF8);
            cmdCreate.mID            = mPlayerGUID.mValue;
            mCommandSystem.pushCommand(cmdCreate, mCharacterManager);
            // 设置角色数据
            CharacterMyself myself = mCharacterManager.getMyself();
            CharacterData   data   = myself.getCharacterData();
            data.mMoney = mMoney.mValue;
            data.mHead  = mHead.mValue;

            // 进入到主场景
            CommandGameSceneManagerEnter cmdEnterMain = mCommandSystem.newCmd <CommandGameSceneManagerEnter>(true, true);
            cmdEnterMain.mSceneType = GAME_SCENE_TYPE.GST_MAIN;
            mCommandSystem.pushDelayCommand(cmdEnterMain, mGameSceneManager);
        }
        else if (mLoginRet.mValue == 1)
        {
            UnityUtility.logInfo("账号密码错误!");
        }
        else if (mLoginRet.mValue == 2)
        {
            UnityUtility.logInfo("已在其他地方登陆!");
        }
    }
コード例 #5
0
    protected override void onInit(SceneProcedure lastProcedure, string intent)
    {
        LT.LOAD_UGUI_SHOW(LAYOUT_ILR.GAMING);
        uint id = (uint)makeID();
        CommandCharacterManagerCreateCharacter cmd = newMainCmd(out cmd);

        cmd.mCharacterType = typeof(CharacterGame);
        cmd.mName          = "test";
        cmd.mID            = id;
        pushCommand(cmd, mCharacterManager);
        mPlayer = mCharacterManager.getCharacter(id) as CharacterGame;
    }
コード例 #6
0
ファイル: RoleSystem.cs プロジェクト: isoundy000/RiseFree
    public void createMyself(string name, int startIndex)
    {
        CommandCharacterManagerCreateCharacter cmdCreate = newCmd(out cmdCreate);

        cmdCreate.mCharacterType = CHARACTER_TYPE.CT_MYSELF;
        cmdCreate.mName          = name;
        pushCommand(cmdCreate, mCharacterManager);
        CharacterOther player = mCharacterManager.getMyself();

        player.getCharacterData().mStartIndex = startIndex;
        player.initModel(mSelectRoleList[mSelectedIndex].getAvatar().getModelPath());
        // 将玩家加入比赛角色列表,并确保位于第一个
        mPlayerList.Add(player.getCharacterData().mNumber, player);
    }
コード例 #7
0
ファイル: RoleSystem.cs プロジェクト: isoundy000/RiseFree
    // 创建用于比赛的玩家,number是玩家编号
    public void createAI(string name, string model, int startIndex, int number)
    {
        // 创建玩家
        CommandCharacterManagerCreateCharacter cmdCreate = newCmd(out cmdCreate);

        cmdCreate.mCharacterType = CHARACTER_TYPE.CT_AI;
        cmdCreate.mName          = name;
        pushCommand(cmdCreate, mCharacterManager);
        CharacterOther player = mCharacterManager.getCharacter(name) as CharacterOther;
        CharacterData  data   = player.getCharacterData();

        data.mStartIndex = startIndex;
        data.mNumber     = number;
        player.initModel(GameDefine.R_CHARACTER_PREFAB_PATH + model);
        // 将玩家加入比赛角色列表
        mPlayerList.Add(data.mNumber, player);
    }
コード例 #8
0
ファイル: RoleSystem.cs プロジェクト: isoundy000/RiseFree
    // 创建用于选择的角色
    public void createSelectRole(string name, string model, int id)
    {
        if (mCharacterManager.getCharacter(name) != null)
        {
            return;
        }
        CommandCharacterManagerCreateCharacter cmdCreate = newCmd(out cmdCreate);

        cmdCreate.mCharacterType = CHARACTER_TYPE.CT_OTHER;
        cmdCreate.mName          = name;
        cmdCreate.mID            = id;
        pushCommand(cmdCreate, mCharacterManager);
        CharacterOther character = mCharacterManager.getCharacter(id) as CharacterOther;

        character.initModel(GameDefine.R_CHARACTER_PREFAB_PATH + model);
        mCharacterManager.activeCharacter(character, false);
        mSelectRoleList.Add(character);
    }