Exemple #1
0
    /// <summary>
    /// 复制(潜拷贝)
    /// </summary>
    protected override void toShadowCopy(BaseData data)
    {
        if (!(data is PlayerListData))
        {
            return;
        }

        PlayerListData mData = (PlayerListData)data;

        this.system      = mData.system;
        this.func        = mData.func;
        this.activity    = mData.activity;
        this.role        = mData.role;
        this.scene       = mData.scene;
        this.character   = mData.character;
        this.social      = mData.social;
        this.bag         = mData.bag;
        this.mail        = mData.mail;
        this.quest       = mData.quest;
        this.guide       = mData.guide;
        this.friend      = mData.friend;
        this.equip       = mData.equip;
        this.team        = mData.team;
        this.union       = mData.union;
        this.achievement = mData.achievement;
        this.pet         = mData.pet;
    }
Exemple #2
0
    /// <summary>
    /// 是否数据一致
    /// </summary>
    protected override bool toDataEquals(BaseData data)
    {
        PetPartData mData = (PetPartData)data;

        if (mData.petDic != null)
        {
            if (this.petDic == null)
            {
                return(false);
            }
            if (this.petDic.size() != mData.petDic.size())
            {
                return(false);
            }
            IntObjectMap <PetUseData> petDicR = mData.petDic;
            if (!this.petDic.isEmpty())
            {
                int          petDicKFreeValue = this.petDic.getFreeValue();
                int[]        petDicKKeys      = this.petDic.getKeys();
                PetUseData[] petDicVValues    = this.petDic.getValues();
                for (int petDicKI = petDicKKeys.Length - 1; petDicKI >= 0; --petDicKI)
                {
                    int petDicK = petDicKKeys[petDicKI];
                    if (petDicK != petDicKFreeValue)
                    {
                        PetUseData petDicV = petDicVValues[petDicKI];
                        PetUseData petDicU = petDicR.get(petDicK);
                        if (petDicU != null)
                        {
                            if (petDicV == null)
                            {
                                return(false);
                            }
                            if (!petDicV.dataEquals(petDicU))
                            {
                                return(false);
                            }
                        }
                        else
                        {
                            if (petDicV != null)
                            {
                                return(false);
                            }
                        }
                    }
                }
            }
        }
        else
        {
            if (this.petDic != null)
            {
                return(false);
            }
        }

        return(true);
    }
Exemple #3
0
    /// <summary>
    /// 复制(潜拷贝)
    /// </summary>
    protected override void toShadowCopy(BaseData data)
    {
        if (!(data is PetPartData))
        {
            return;
        }

        PetPartData mData = (PetPartData)data;

        this.petDic = mData.petDic;
    }
Exemple #4
0
    /// <summary>
    /// 复制(深拷贝)
    /// </summary>
    protected override void toCopy(BaseData data)
    {
        if (!(data is PetPartData))
        {
            return;
        }

        PetPartData mData = (PetPartData)data;

        if (mData.petDic != null)
        {
            if (this.petDic != null)
            {
                this.petDic.clear();
                this.petDic.ensureCapacity(mData.petDic.size());
            }
            else
            {
                this.petDic = new IntObjectMap <PetUseData>(mData.petDic.size());
            }

            IntObjectMap <PetUseData> petDicT = this.petDic;
            if (!mData.petDic.isEmpty())
            {
                PetUseData[] petDicVValues = mData.petDic.getValues();
                for (int petDicVI = petDicVValues.Length - 1; petDicVI >= 0; --petDicVI)
                {
                    PetUseData petDicV = petDicVValues[petDicVI];
                    if (petDicV != null)
                    {
                        PetUseData petDicU;
                        if (petDicV != null)
                        {
                            petDicU = (PetUseData)petDicV.clone();
                        }
                        else
                        {
                            petDicU = null;
                            nullObjError("petDicU");
                        }

                        petDicT.put(petDicU.mIndex, petDicU);
                    }
                }
            }
        }
        else
        {
            this.petDic = null;
            nullObjError("petDic");
        }
    }
Exemple #5
0
 /// <summary>
 /// 回池
 /// </summary>
 protected override void toRelease(DataPool pool)
 {
     this.system      = null;
     this.func        = null;
     this.activity    = null;
     this.role        = null;
     this.scene       = null;
     this.character   = null;
     this.social      = null;
     this.bag         = null;
     this.mail        = null;
     this.quest       = null;
     this.guide       = null;
     this.friend      = null;
     this.equip       = null;
     this.team        = null;
     this.union       = null;
     this.achievement = null;
     this.pet         = null;
 }
Exemple #6
0
    /// <summary>
    /// 读取字节流(简版)
    /// </summary>
    protected override void toReadBytesSimple(BytesReadStream stream)
    {
        this.system = (SystemPartData)stream.readDataSimpleNotNull();

        this.func = (FuncPartData)stream.readDataSimpleNotNull();

        this.activity = (ActivityPartData)stream.readDataSimpleNotNull();

        this.role = (RolePartData)stream.readDataSimpleNotNull();

        this.scene = (ScenePartData)stream.readDataSimpleNotNull();

        this.character = (CharacterPartData)stream.readDataSimpleNotNull();

        this.social = (SocialPartData)stream.readDataSimpleNotNull();

        this.bag = (BagPartData)stream.readDataSimpleNotNull();

        this.mail = (MailPartData)stream.readDataSimpleNotNull();

        this.quest = (QuestPartData)stream.readDataSimpleNotNull();

        this.guide = (GuidePartData)stream.readDataSimpleNotNull();

        this.friend = (FriendPartData)stream.readDataSimpleNotNull();

        this.equip = (EquipPartData)stream.readDataSimpleNotNull();

        this.team = (TeamPartData)stream.readDataSimpleNotNull();

        this.union = (UnionPartData)stream.readDataSimpleNotNull();

        this.achievement = (AchievementPartData)stream.readDataSimpleNotNull();

        this.pet = (PetPartData)stream.readDataSimpleNotNull();
    }
Exemple #7
0
    public override void setData(BaseData data)
    {
        base.setData(data);

        _d = (PetPartData)data;
    }
Exemple #8
0
    /// <summary>
    /// 复制(深拷贝)
    /// </summary>
    protected override void toCopy(BaseData data)
    {
        if (!(data is PlayerListData))
        {
            return;
        }

        PlayerListData mData = (PlayerListData)data;

        if (mData.system != null)
        {
            this.system = (SystemPartData)mData.system.clone();
        }
        else
        {
            this.system = null;
            nullObjError("system");
        }

        if (mData.func != null)
        {
            this.func = (FuncPartData)mData.func.clone();
        }
        else
        {
            this.func = null;
            nullObjError("func");
        }

        if (mData.activity != null)
        {
            this.activity = (ActivityPartData)mData.activity.clone();
        }
        else
        {
            this.activity = null;
            nullObjError("activity");
        }

        if (mData.role != null)
        {
            this.role = (RolePartData)mData.role.clone();
        }
        else
        {
            this.role = null;
            nullObjError("role");
        }

        if (mData.scene != null)
        {
            this.scene = (ScenePartData)mData.scene.clone();
        }
        else
        {
            this.scene = null;
            nullObjError("scene");
        }

        if (mData.character != null)
        {
            this.character = (CharacterPartData)mData.character.clone();
        }
        else
        {
            this.character = null;
            nullObjError("character");
        }

        if (mData.social != null)
        {
            this.social = (SocialPartData)mData.social.clone();
        }
        else
        {
            this.social = null;
            nullObjError("social");
        }

        if (mData.bag != null)
        {
            this.bag = (BagPartData)mData.bag.clone();
        }
        else
        {
            this.bag = null;
            nullObjError("bag");
        }

        if (mData.mail != null)
        {
            this.mail = (MailPartData)mData.mail.clone();
        }
        else
        {
            this.mail = null;
            nullObjError("mail");
        }

        if (mData.quest != null)
        {
            this.quest = (QuestPartData)mData.quest.clone();
        }
        else
        {
            this.quest = null;
            nullObjError("quest");
        }

        if (mData.guide != null)
        {
            this.guide = (GuidePartData)mData.guide.clone();
        }
        else
        {
            this.guide = null;
            nullObjError("guide");
        }

        if (mData.friend != null)
        {
            this.friend = (FriendPartData)mData.friend.clone();
        }
        else
        {
            this.friend = null;
            nullObjError("friend");
        }

        if (mData.equip != null)
        {
            this.equip = (EquipPartData)mData.equip.clone();
        }
        else
        {
            this.equip = null;
            nullObjError("equip");
        }

        if (mData.team != null)
        {
            this.team = (TeamPartData)mData.team.clone();
        }
        else
        {
            this.team = null;
            nullObjError("team");
        }

        if (mData.union != null)
        {
            this.union = (UnionPartData)mData.union.clone();
        }
        else
        {
            this.union = null;
            nullObjError("union");
        }

        if (mData.achievement != null)
        {
            this.achievement = (AchievementPartData)mData.achievement.clone();
        }
        else
        {
            this.achievement = null;
            nullObjError("achievement");
        }

        if (mData.pet != null)
        {
            this.pet = (PetPartData)mData.pet.clone();
        }
        else
        {
            this.pet = null;
            nullObjError("pet");
        }
    }
Exemple #9
0
    /// <summary>
    /// 读取字节流(完整版)
    /// </summary>
    protected override void toReadBytesFull(BytesReadStream stream)
    {
        stream.startReadObj();

        BaseData systemT = stream.readDataFullNotNull();

        if (systemT != null)
        {
            if (systemT is SystemPartData)
            {
                this.system = (SystemPartData)systemT;
            }
            else
            {
                this.system = new SystemPartData();
                if (!(systemT.GetType().IsAssignableFrom(typeof(SystemPartData))))
                {
                    stream.throwTypeReadError(typeof(SystemPartData), systemT.GetType());
                }
                this.system.shadowCopy(systemT);
            }
        }
        else
        {
            this.system = null;
        }

        BaseData funcT = stream.readDataFullNotNull();

        if (funcT != null)
        {
            if (funcT is FuncPartData)
            {
                this.func = (FuncPartData)funcT;
            }
            else
            {
                this.func = new FuncPartData();
                if (!(funcT.GetType().IsAssignableFrom(typeof(FuncPartData))))
                {
                    stream.throwTypeReadError(typeof(FuncPartData), funcT.GetType());
                }
                this.func.shadowCopy(funcT);
            }
        }
        else
        {
            this.func = null;
        }

        BaseData activityT = stream.readDataFullNotNull();

        if (activityT != null)
        {
            if (activityT is ActivityPartData)
            {
                this.activity = (ActivityPartData)activityT;
            }
            else
            {
                this.activity = new ActivityPartData();
                if (!(activityT.GetType().IsAssignableFrom(typeof(ActivityPartData))))
                {
                    stream.throwTypeReadError(typeof(ActivityPartData), activityT.GetType());
                }
                this.activity.shadowCopy(activityT);
            }
        }
        else
        {
            this.activity = null;
        }

        BaseData roleT = stream.readDataFullNotNull();

        if (roleT != null)
        {
            if (roleT is RolePartData)
            {
                this.role = (RolePartData)roleT;
            }
            else
            {
                this.role = new RolePartData();
                if (!(roleT.GetType().IsAssignableFrom(typeof(RolePartData))))
                {
                    stream.throwTypeReadError(typeof(RolePartData), roleT.GetType());
                }
                this.role.shadowCopy(roleT);
            }
        }
        else
        {
            this.role = null;
        }

        BaseData sceneT = stream.readDataFullNotNull();

        if (sceneT != null)
        {
            if (sceneT is ScenePartData)
            {
                this.scene = (ScenePartData)sceneT;
            }
            else
            {
                this.scene = new ScenePartData();
                if (!(sceneT.GetType().IsAssignableFrom(typeof(ScenePartData))))
                {
                    stream.throwTypeReadError(typeof(ScenePartData), sceneT.GetType());
                }
                this.scene.shadowCopy(sceneT);
            }
        }
        else
        {
            this.scene = null;
        }

        BaseData characterT = stream.readDataFullNotNull();

        if (characterT != null)
        {
            if (characterT is CharacterPartData)
            {
                this.character = (CharacterPartData)characterT;
            }
            else
            {
                this.character = new CharacterPartData();
                if (!(characterT.GetType().IsAssignableFrom(typeof(CharacterPartData))))
                {
                    stream.throwTypeReadError(typeof(CharacterPartData), characterT.GetType());
                }
                this.character.shadowCopy(characterT);
            }
        }
        else
        {
            this.character = null;
        }

        BaseData socialT = stream.readDataFullNotNull();

        if (socialT != null)
        {
            if (socialT is SocialPartData)
            {
                this.social = (SocialPartData)socialT;
            }
            else
            {
                this.social = new SocialPartData();
                if (!(socialT.GetType().IsAssignableFrom(typeof(SocialPartData))))
                {
                    stream.throwTypeReadError(typeof(SocialPartData), socialT.GetType());
                }
                this.social.shadowCopy(socialT);
            }
        }
        else
        {
            this.social = null;
        }

        BaseData bagT = stream.readDataFullNotNull();

        if (bagT != null)
        {
            if (bagT is BagPartData)
            {
                this.bag = (BagPartData)bagT;
            }
            else
            {
                this.bag = new BagPartData();
                if (!(bagT.GetType().IsAssignableFrom(typeof(BagPartData))))
                {
                    stream.throwTypeReadError(typeof(BagPartData), bagT.GetType());
                }
                this.bag.shadowCopy(bagT);
            }
        }
        else
        {
            this.bag = null;
        }

        BaseData mailT = stream.readDataFullNotNull();

        if (mailT != null)
        {
            if (mailT is MailPartData)
            {
                this.mail = (MailPartData)mailT;
            }
            else
            {
                this.mail = new MailPartData();
                if (!(mailT.GetType().IsAssignableFrom(typeof(MailPartData))))
                {
                    stream.throwTypeReadError(typeof(MailPartData), mailT.GetType());
                }
                this.mail.shadowCopy(mailT);
            }
        }
        else
        {
            this.mail = null;
        }

        BaseData questT = stream.readDataFullNotNull();

        if (questT != null)
        {
            if (questT is QuestPartData)
            {
                this.quest = (QuestPartData)questT;
            }
            else
            {
                this.quest = new QuestPartData();
                if (!(questT.GetType().IsAssignableFrom(typeof(QuestPartData))))
                {
                    stream.throwTypeReadError(typeof(QuestPartData), questT.GetType());
                }
                this.quest.shadowCopy(questT);
            }
        }
        else
        {
            this.quest = null;
        }

        BaseData guideT = stream.readDataFullNotNull();

        if (guideT != null)
        {
            if (guideT is GuidePartData)
            {
                this.guide = (GuidePartData)guideT;
            }
            else
            {
                this.guide = new GuidePartData();
                if (!(guideT.GetType().IsAssignableFrom(typeof(GuidePartData))))
                {
                    stream.throwTypeReadError(typeof(GuidePartData), guideT.GetType());
                }
                this.guide.shadowCopy(guideT);
            }
        }
        else
        {
            this.guide = null;
        }

        BaseData friendT = stream.readDataFullNotNull();

        if (friendT != null)
        {
            if (friendT is FriendPartData)
            {
                this.friend = (FriendPartData)friendT;
            }
            else
            {
                this.friend = new FriendPartData();
                if (!(friendT.GetType().IsAssignableFrom(typeof(FriendPartData))))
                {
                    stream.throwTypeReadError(typeof(FriendPartData), friendT.GetType());
                }
                this.friend.shadowCopy(friendT);
            }
        }
        else
        {
            this.friend = null;
        }

        BaseData equipT = stream.readDataFullNotNull();

        if (equipT != null)
        {
            if (equipT is EquipPartData)
            {
                this.equip = (EquipPartData)equipT;
            }
            else
            {
                this.equip = new EquipPartData();
                if (!(equipT.GetType().IsAssignableFrom(typeof(EquipPartData))))
                {
                    stream.throwTypeReadError(typeof(EquipPartData), equipT.GetType());
                }
                this.equip.shadowCopy(equipT);
            }
        }
        else
        {
            this.equip = null;
        }

        BaseData teamT = stream.readDataFullNotNull();

        if (teamT != null)
        {
            if (teamT is TeamPartData)
            {
                this.team = (TeamPartData)teamT;
            }
            else
            {
                this.team = new TeamPartData();
                if (!(teamT.GetType().IsAssignableFrom(typeof(TeamPartData))))
                {
                    stream.throwTypeReadError(typeof(TeamPartData), teamT.GetType());
                }
                this.team.shadowCopy(teamT);
            }
        }
        else
        {
            this.team = null;
        }

        BaseData unionT = stream.readDataFullNotNull();

        if (unionT != null)
        {
            if (unionT is UnionPartData)
            {
                this.union = (UnionPartData)unionT;
            }
            else
            {
                this.union = new UnionPartData();
                if (!(unionT.GetType().IsAssignableFrom(typeof(UnionPartData))))
                {
                    stream.throwTypeReadError(typeof(UnionPartData), unionT.GetType());
                }
                this.union.shadowCopy(unionT);
            }
        }
        else
        {
            this.union = null;
        }

        BaseData achievementT = stream.readDataFullNotNull();

        if (achievementT != null)
        {
            if (achievementT is AchievementPartData)
            {
                this.achievement = (AchievementPartData)achievementT;
            }
            else
            {
                this.achievement = new AchievementPartData();
                if (!(achievementT.GetType().IsAssignableFrom(typeof(AchievementPartData))))
                {
                    stream.throwTypeReadError(typeof(AchievementPartData), achievementT.GetType());
                }
                this.achievement.shadowCopy(achievementT);
            }
        }
        else
        {
            this.achievement = null;
        }

        BaseData petT = stream.readDataFullNotNull();

        if (petT != null)
        {
            if (petT is PetPartData)
            {
                this.pet = (PetPartData)petT;
            }
            else
            {
                this.pet = new PetPartData();
                if (!(petT.GetType().IsAssignableFrom(typeof(PetPartData))))
                {
                    stream.throwTypeReadError(typeof(PetPartData), petT.GetType());
                }
                this.pet.shadowCopy(petT);
            }
        }
        else
        {
            this.pet = null;
        }

        stream.endReadObj();
    }