Example #1
0
    void onClick_Unload_Btn(GameObject caster)
    {
        if (m_suitDataBase == null)
        {
            return;
        }
        stOpSuitPropertyUserCmd_C cmd = new stOpSuitPropertyUserCmd_C();

        cmd.type = SuitOPType.SuitOPType_Unequip;
        //固定3当装备
        cmd.suit_id = (m_suitDataBase.base_id << 16) + 3;
        NetService.Instance.Send(cmd);
    }
Example #2
0
    void OnSuitEvent(int nEventID, object param)
    {
        if (nEventID == (int)GameEventID.PLAYER_LOGIN_SUCCESS)
        {
            //             stOpSuitPropertyUserCmd_C cmd = new stOpSuitPropertyUserCmd_C();
            //             cmd.type = SuitOPType.SuitOPType_Login;
            //             NetService.Instance.Send(cmd);
        }
        else if (nEventID == (int)GameEventID.LOGINSUCESSANDRECEIVEALLINFO)
        {
            InitShowDic();
            stOpSuitPropertyUserCmd_C cmd = new stOpSuitPropertyUserCmd_C();
            cmd.type = SuitOPType.SuitOPType_Login;
            NetService.Instance.Send(cmd);
        }
        else if (nEventID == (int)GameEventID.SKILLSYSTEM_CHANGEMODEL)
        {
            stSkillChangeModel st = (stSkillChangeModel)param;
            IEntitySystem      es = ClientGlobal.Instance().GetEntitySystem();
            if (es == null)
            {
                return;
            }
            IPlayer player = es.FindEntity <IPlayer>(st.userID);
            if (player == null)
            {
                return;
            }
            uint suitID = 0;
            if (!IsPlayerEquipCloth(player, out suitID))
            {
                ChangeEquip ce = new ChangeEquip();
                ce.nSuitID    = (int)suitID;
                ce.pos        = Client.EquipPos.EquipPos_Body;
                ce.nStateType = player.GetProp((int)PlayerProp.SkillStatus);
                if (this != null)
                {//EntityCommand_PlayAni
                    PlayAni anim_param = new PlayAni();
                    anim_param.strAcionName = EntityAction.Stand;
                    anim_param.fSpeed       = 1;
                    anim_param.nStartFrame  = 0;

                    player.SendMessage(EntityMessage.EntityCommand_PlayAni, anim_param);
                    player.SendMessage(EntityMessage.EntityCommand_ChangeEquip, ce);
                }
            }
        }
    }
Example #3
0
    void onClick_Unlock_queding_Btn(GameObject caster)
    {
        if (CurDataBase != null)
        {
            ClientSuitData sst = DataManager.Manager <SuitDataManager>().GetSuitData(CurDataBase.base_id);
            if (sst.suitState == SuitState.HasBuy)
            {
                if (sst.leftTime == 0)
                {
                    string tips = string.Format("{0}{1}{2}", CommonData.GetLocalString("您已经拥有永久时装"), CurDataBase.name, CommonData.GetLocalString(",是否仍确定使用?"));
                    TipsManager.Instance.ShowTipWindow(TipWindowType.CancelOk, tips, () => {
                        stOpSuitPropertyUserCmd_C cmd = new stOpSuitPropertyUserCmd_C();
                        cmd.type = m_opType;

                        uint suitID = (CurDataBase.base_id << 16);
                        suitID     += m_nDayCount;
                        cmd.suit_id = suitID;
                        NetService.Instance.Send(cmd);
                    });
                }
                else
                {
                    stOpSuitPropertyUserCmd_C cmd = new stOpSuitPropertyUserCmd_C();
                    cmd.type = m_opType;

                    uint suitID = (CurDataBase.base_id << 16);
                    suitID     += m_nDayCount;
                    cmd.suit_id = suitID;
                    NetService.Instance.Send(cmd);
                }
            }
            else
            {
                stOpSuitPropertyUserCmd_C cmd = new stOpSuitPropertyUserCmd_C();
                cmd.type = m_opType;

                uint suitID = (CurDataBase.base_id << 16);
                suitID     += m_nDayCount;
                cmd.suit_id = suitID;
                NetService.Instance.Send(cmd);
            }
        }

        HideSelf();
    }
Example #4
0
    public void OnReceiveAllSuitData(stSendAllSuitPropertyUserCmd_S msg)
    {
        IPlayer player = MainPlayerHelper.GetMainPlayer();

        if (player == null)
        {
            Log.Error("收到所有时装数据 但是还没有主角创建");
            return;
        }
        uint userID = player.GetID();
        List <stSuitData> suitList = msg.data;
        string            suitName = "";

        for (int i = 0; i < suitList.Count; i++)
        {
            stSuitData     sd  = suitList[i];
            ClientSuitData csd = new ClientSuitData();
            csd.suitBaseID = sd.base_id;
            csd.leftTime   = sd.time;
            Client.GameEventID eventtype = Client.GameEventID.Unknow;
            if (sd.status == SuitStatus.SuitStatus_Common)
            {
                csd.suitState = SuitState.HasBuy;
                AddSuitData(userID, sd.base_id, csd);
                //直接装备
                if (msg.type == SuitOPType.SuitOPType_Buy || msg.type == SuitOPType.SuitOPType_Renew)
                {
                    stOpSuitPropertyUserCmd_C cmd = new stOpSuitPropertyUserCmd_C();
                    cmd.type = SuitOPType.SuitOPType_Equip;
                    //固定3当装备
                    cmd.suit_id = (sd.base_id << 16) + 3;
                    NetService.Instance.Send(cmd);
                }
            }
            else if (sd.status == SuitStatus.SuitStatus_Equip)
            {
                csd.suitState = SuitState.Equip;
                AddSuitData(userID, sd.base_id, csd);
            }
            else if (sd.status == SuitStatus.SuitStatus_Overdue)
            {
                csd.suitState = SuitState.NoEffect;
                AddSuitData(userID, sd.base_id, csd);
            }
            else if (sd.status == SuitStatus.SuitStatus_Acti)
            {
                csd.suitState = SuitState.Active;
                AddSuitData(userID, sd.base_id, csd);
            }
            else if (sd.status == SuitStatus.SuitStatus_UNActi)
            {
                csd.suitState = SuitState.Show;
                AddSuitData(userID, sd.base_id, csd);
            }
            table.SuitDataBase db = GameTableManager.Instance.GetTableItem <table.SuitDataBase>(sd.base_id, 1);
            if (db != null)
            {
                suitName = db.name;
            }

            Engine.Utility.EventEngine.Instance().DispatchEvent((int)Client.GameEventID.UIEVENTFASHIONDATA, sd.base_id);
            //SendChangeBody((int)sd.type, sd.base_id, player);
        }

        ShowTips(msg.type, suitName);
    }