예제 #1
0
파일: ValConfig.cs 프로젝트: pb0/ID0_Test
            protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
            {
                bool ret = true;

                try
                {
                    if (m_valInfos != null)
                    {
                        encoder.Encode1(m_version);
                        encoder.Encode1((byte)m_valInfos.Count);

                        foreach (KeyValuePair<byte, ServerInfo> kvp in m_valInfos)
                        {
                            encoder.Encode1(kvp.Value.m_id);
                            encoder.EncodeString(kvp.Value.m_ip);
                            encoder.Encode2(kvp.Value.m_port);
                        }
                    }

                    encoder.Encode1(0);
                    encoder.Encode1(0);
                }
                catch (Exception)
                {
                    ret = false;
                }

                return ret;
            }
예제 #2
0
파일: ItemManager.cs 프로젝트: pb0/ID0_Test
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode4(ItemCode);
                encoder.EncodeString(Name);
                encoder.EncodeString(Descriptions);
                encoder.EncodeString(Icon);
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #3
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode4(VfxID);
                encoder.EncodeString(Resource);
                encoder.EncodeString(Pivot);
                encoder.Encode4(OffsetX);
                encoder.Encode4(OffsetY);
                encoder.Encode4(OffsetZ);
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #4
0
파일: ItemManager.cs 프로젝트: pb0/ID0_Test
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                ret = base.OnSerialize(encoder, stream);
                if (ret)
                {
                    encoder.Encode1((byte)EquipmentType);
                    encoder.Encode1((byte)EquipmentRarityId);
                    encoder.Encode4(HeroItemCode);
                    encoder.Encode4(BattlePower);
                    encoder.Encode4(PriceSelling);
                    encoder.Encode4(ItemChanceAmplifier);
                    encoder.EncodeString(AtlasResource);
                    encoder.EncodeString(TextureName);

                    encoder.Encode1((byte)m_stats.Count);
                    foreach (var pr in m_stats)
                    {
                        encoder.Encode4(pr.Key);
                        encoder.Encode4(pr.Value);
                    }
                }
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #5
0
파일: ItemManager.cs 프로젝트: pb0/ID0_Test
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode4(GoodsCode);
                encoder.Encode1(GoodsTypeCode);
                encoder.EncodeString(GoodsName);
                encoder.EncodeString(Descriptions);
                encoder.Encode1((byte)CurrencyType);
                encoder.Encode4(Price);
                encoder.EncodeString(ContentsID1);
                encoder.EncodeString(ContentsID2);
                encoder.EncodeString(ContentsID3);
                encoder.EncodeString(ContentsID4);
                encoder.EncodeString(ContentsID5);
                encoder.Encode2(SortNum);

                encoder.Encode2((ushort)m_itemGoods.Count);
                foreach (var kvp in m_itemGoods)
                {
                    if (!kvp.Value.Serialize(stream))   throw new Exception();
                }

                encoder.Encode2((ushort)m_goodsLimitMission.Count);
                foreach (var kvp in m_goodsLimitMission)
                {
                    if (!kvp.Value.Serialize(stream))   throw new Exception();
                }
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #6
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode4(SkillCode);
                encoder.EncodeString(SkillName);
                encoder.Encode1((byte)(IsActive ? 1 : 0));
                encoder.Encode4(ManaConsume);
                encoder.Encode4(CastTime);
                encoder.Encode4(CoolTime);
                encoder.Encode4(GlobalCoolTime);
                encoder.Encode1(m_priority);
                encoder.EncodeString(m_motion);
                encoder.EncodeString(m_icon);
                
                encoder.Encode1((byte)m_heroLevelSkillValues.Count);
                foreach (var pr in m_heroLevelSkillValues)
                {
                    encoder.Encode1(pr.Key);
                    encoder.EncodeString(pr.Value.Descriptions);
                    encoder.EncodeString(pr.Value.ActionPattern);
                    encoder.Encode4(pr.Value.EffectValue);
                }
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #7
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode1(BlockID);
                encoder.Encode1((byte)(IsApplyLifeRate ? 1 : 0));
                encoder.Encode4(ChanceSpawnTutorial);
                encoder.Encode4(ChanceSpawnAdventure);
                encoder.Encode4(ChanceSpawnRaid);
                encoder.Encode4(ChanceSpawnArena);
                encoder.EncodeString(Resource);
                encoder.Encode4(ChargeStartVfxID);
                encoder.Encode4(ChargeStartSfxID);
                encoder.Encode4(TransformVfxID);
                encoder.Encode4(DestroyVfxID);
                encoder.Encode4(Destroy1SfxID);
                encoder.Encode4(Destroy2SfxID);
                encoder.Encode4(Destroy3SfxID);
                encoder.Encode4(ChargedDestroyVfxID);
                encoder.Encode4(ChargedDestroySfxID);
                
                encoder.Encode1((byte)BlockCommands.Count);
                foreach (var pr in BlockCommands)
                {
                    encoder.Encode1(pr.Key);
                    encoder.Encode1(pr.Value.Priority);
                    encoder.EncodeString(pr.Value.ActionPattern);
                    encoder.Encode4(pr.Value.ExtraEffectValue);
                    encoder.Encode4(pr.Value.CriticalStatusEffectCode);
                    encoder.EncodeString(pr.Value.Motion);
                }
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #8
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode1(m_reelID);
                encoder.Encode4(m_betAmplify);
                encoder.Encode4(m_chanceSpin);
                encoder.EncodeString(m_resource);
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #9
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode1(BufferActionID);
                encoder.Encode1((byte)(IsBuffer ? 1 : 0));
                encoder.EncodeString(ActionPattern);
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #10
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
	            encoder.Encode4(ConsumableID);
	            encoder.Encode1((byte)ConsumableType);
	            encoder.EncodeString(ConsumableName);
	            encoder.Encode1(Tier);
	            encoder.Encode1((byte)(IsDropTutorial ? 1 : 0));
	            encoder.Encode1((byte)(IsDropAdventure ? 1 : 0));
	            encoder.Encode1((byte)(IsDropRaid ? 1 : 0));
	            encoder.Encode1((byte)(IsDropArena ? 1 : 0));
	            encoder.Encode1((byte)(IsPuzzleActive ? 1 : 0));
	            encoder.Encode4(CastTime);
	            encoder.Encode4(GlobalCoolTime);
	            encoder.Encode1(Priority);
	            encoder.EncodeString(ActionPattern);
	            encoder.Encode4(EffectValue);
	            encoder.Encode4(ProjectileFoCode);
	            encoder.Encode4(UseSfxID);
	            encoder.EncodeString(Icon);
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #11
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode4(StageCode);
                encoder.Encode1(StageGroupID);
                encoder.EncodeString(StageName);
                encoder.Encode1((byte)GameMode);
                encoder.Encode1(DifficultyType);
                encoder.Encode1(Tier);
                encoder.Encode4(LimitExp);
                encoder.Encode4(LimitGold);
                encoder.Encode4(Star1Point);
                encoder.Encode4(Star2Point);
                encoder.Encode4(Star3Point);
                encoder.Encode4(ClearPoint);
                encoder.Encode4(TimePoint);
                encoder.Encode4(MinClearTime);
                encoder.Encode4(TotalDist);
                encoder.Encode4(ChanceShortDist);
                encoder.Encode4(ChanceMediumDist);
                encoder.Encode4(ChanceLongDist);
                encoder.Encode4(MinShortDist);
                encoder.Encode4(MaxShortDist);
                encoder.Encode4(MinMediumDist);
                encoder.Encode4(MaxMediumDist);
                encoder.Encode4(MinLongDist);
                encoder.Encode4(MaxLongDist);
                encoder.Encode4(LastFoCode);
                encoder.EncodeString(Resource);
                encoder.EncodeString(Bgm);

                encoder.Encode1((byte)m_stageObjectTypeChances.Count);
                foreach (var pr in m_stageObjectTypeChances)
                {
                    encoder.Encode1((byte)pr.Key);
                    encoder.Encode4(pr.Value);
                }

                encoder.Encode1((byte)m_stageObjectChances.Count);
                foreach (var pr in m_stageObjectChances)
                {
                    encoder.Encode4(pr.Key);
                    encoder.Encode4(pr.Value);
                }
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #12
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode4(StatusEffectCode);
                encoder.Encode1((byte)(IsBuff ? 1 : 0));
                encoder.Encode1(ExpireType);
                encoder.Encode4(ExpireTime);
                encoder.Encode1((byte)(IsScript ? 1 : 0));
                encoder.EncodeString(StatMod);
                encoder.Encode4(EffectValue);
                encoder.Encode4(SpawnVfxID);
                encoder.Encode4(SpawnSfxID);
                encoder.EncodeString(Icon);
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #13
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                ret = base.OnSerialize(encoder, stream);
                if (ret)
                {
                    encoder.EncodeString(Msg1);
                    encoder.EncodeString(Msg2);
                }
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #14
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                ret = base.OnSerialize(encoder, stream);
                if (ret)
                {
                    encoder.Encode1((byte)Type);
                    encoder.Encode1((byte)Grade);
                    encoder.Encode1(BaseLevel);
                    encoder.Encode1((byte)(IsHostile ? 1 : 0));
                    encoder.Encode1((byte)(IsRange ? 1 : 0));
                    encoder.Encode4(AttactRange);
                    encoder.Encode4(ProjectileFoCode);

                    encoder.Encode1((byte)SkillValues.Count);
                    foreach (var pr in SkillValues)
                    {
                        encoder.Encode4(pr.Key);
                        encoder.EncodeString(pr.Value.ActionPattern);
                        encoder.Encode4(pr.Value.EffectValue);
                    }

                    encoder.Encode1((byte)Stats.Count);
                    foreach (var pr in Stats)
                    {
                        encoder.Encode4(pr.Key);
                        encoder.Encode4(pr.Value);
                    }
                }
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #15
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode4(SfxID);
                encoder.EncodeString(Resource);
                encoder.Encode1((byte)(IsLoop ? 1 : 0));
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #16
0
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode4(FieldObjectCode);
                encoder.EncodeString(Name);
                encoder.EncodeString(Resource);
                encoder.Encode4(DrawScale);
                encoder.Encode4(CollisionWidth);
                encoder.Encode4(CollisionHeight);
                encoder.Encode4(SpawnVfxID);
                encoder.Encode4(SpawnSfxID);
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #17
0
파일: ItemManager.cs 프로젝트: pb0/ID0_Test
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.Encode4(MissionCode);
                encoder.Encode1(MissionTypeCode);
                encoder.EncodeString(Descriptions);
                encoder.Encode4((uint)Condition);
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }
예제 #18
0
파일: ProxyServer.cs 프로젝트: pb0/ID0_Test
        protected override bool OnSerialize(SimpleStream.SerializableEncoder encoder, SimpleStream stream)
        {
            bool ret = true;

            try
            {
                encoder.EncodeString(m_serverIp);
                encoder.Encode4((uint)m_serverPort);
                encoder.EncodeString(m_lastConnectedServerIp);
                encoder.Encode4((uint)m_lastConnectedServerPort);

                ret = m_config.Serialize(stream);
                if (ret)    ret = m_stageManager.Serialize(stream);
                if (ret )   ret = m_itemManager.Serialize(stream);
            }
            catch (Exception)
            {
                ret = false;
            }

            return ret;
        }