GetTypeID() public method

public GetTypeID ( ) : uint
return uint
Esempio n. 1
0
 public void AddEudemon(RoleData_Eudemon eudemon)
 {
     mDicEudemon[eudemon.GetTypeID()] = eudemon;
     EudemonObject obj = new EudemonObject(eudemon, play);
     obj.CalcAttribute();
     mListObj.Add(obj);
     SendEudemonInfo(eudemon);
 }
Esempio n. 2
0
        public EudemonObject(RoleData_Eudemon info,PlayerObject _play)
        {
            type = OBJECTTYPE.EUDEMON;
            mInfo = info;
            play = _play;
            mPlayObject = new Dictionary<uint, PlayerObject>();
            typeid = info.GetTypeID();
            mMonsterInfo = EudemonObject.GetMonsterInfo(play, info.itemid);
            mbIsCombo = false;
            mAttackSpeed = new GameBase.Core.TimeOut();
            mAttackSpeed.SetInterval(GameBase.Config.Define.ROLE_ATTACK_SPEED);
            mAttackSpeed.Update();

            mMagicAttackSpeed = new List<GameBase.Core.TimeOut>();
            this.SetRiding(false);
            this.SetState(EUDEMONSTATE.NROMAL);
        }
Esempio n. 3
0
        //增加幻兽
        public void AddEudemon(GameStruct.RoleItemInfo item, byte level = 1, int quality = 0,byte wuxing = 0)
        {
            //创建进化后的幻兽处理-- 因为幻兽进化配置表只配置了初始幻兽的id
            String sItemID = item.itemid.ToString();
            uint nItemId = item.itemid;
            if (sItemID.Substring(sItemID.Length-1, 1) != "0")
            {
                sItemID = sItemID.Substring(0, sItemID.Length - 1) + "0";
                nItemId = Convert.ToUInt32(sItemID);
            }

            GameStruct.EudemonInfo info = ConfigManager.Instance().GetEudemonInfo(nItemId);

            if (info == null)
            {
                Log.Instance().WriteLog("创建幻兽失败,不存在的幻兽id:" + item.id.ToString());
                return;
            }
            if (mDicEudemon.ContainsKey(item.itemid))
            {
                Log.Instance().WriteLog("创建幻兽失败,重复的幻兽id:" + item.id.ToString());
                return;
            }
            GameStruct.ItemTypeInfo itembaseinfo = ConfigManager.Instance().GetItemTypeInfo(item.itemid);
            if (itembaseinfo == null)
            {
                Log.Instance().WriteLog("创建幻兽失败,找不到基础物品id:" + item.itemid.ToString());
                return;
            }
            RoleData_Eudemon data = new RoleData_Eudemon();
            data.id = 0;
            data.itemid = item.id;
            data.phyatk_grow_rate = IRandom.Random(0.5f, info.atk_grow_min);
            data.phyatk_grow_rate_max = IRandom.Random(info.atk_grow_min, info.atk_grow_max);
            data.magicatk_grow_rate = IRandom.Random(0.5f, info.magicatk_grow_min);
            data.magicatk_grow_rate_max = IRandom.Random(info.magicatk_grow_min, info.magicatk_grow_max);
            data.life_grow_rate = IRandom.Random(info.life_grow_min, info.life_grow_max);
            data.defense_grow_rate = IRandom.Random(info.defense_grow_min, info.defense_grow_max);
            data.magicdef_grow_rate = IRandom.Random(info.magicdef_grow_min, info.magicdef_grow_max);
            data.init_life = IRandom.Random(info.life_min, info.life_max);
            data.init_atk_min = IRandom.Random(info.atk_min_min, info.atk_min_max);
            data.init_atk_max = IRandom.Random(info.atk_max_min, info.atk_max_max);
            data.init_defense = IRandom.Random(info.defense_min, info.defense_max);
            data.init_magicdef = IRandom.Random(info.magicdef_min, info.magicdef_max);
            data.init_magicatk_min = IRandom.Random(info.magicatk_min_min, info.magicatk_min_max);
            data.init_magicatk_max = IRandom.Random(info.magicatk_max_min, info.magicatk_max_max);
            data.luck = IRandom.Random(1, 100); //幸运值
            data.intimacy = 150; //亲密度
            data.level = level; //等级
            //data.card = IDManager.CreateEudemonCard(); //创建身份牌号码
            data.card = 0;              //身份牌是二次进化的时候才获得-
            data.exp = 0;
            data.quality = quality; //品质在第一次进化的时候才出现
            if (wuxing == 0)
            {
                data.wuxing = IDManager.GetEudemonWuxing();
            }
            else
            {
                data.wuxing = wuxing;
            }

            data.name = itembaseinfo.name;
            data.typeid = item.typeid;
            mDicEudemon[data.GetTypeID()] = data;
            EudemonObject obj = new EudemonObject(data, play);
            obj.CalcAttribute();
            mListObj.Add(obj);
            SendEudemonInfo(data);
        }
Esempio n. 4
0
        //发送幻兽信息到交易栏
        public void SendLookTradEudemonInfo(PlayerObject _play, RoleData_Eudemon info)
        {
            NetMsg.MsgEudemonInfo msg = new NetMsg.MsgEudemonInfo();

            msg.id = info.GetTypeID();
            msg.tag = 4;
            msg.AddAttribute(GameStruct.EudemonAttribute.Atk_Max, info.atk_max);
            msg.AddAttribute(GameStruct.EudemonAttribute.Atk_Min, info.atk_min);
            msg.AddAttribute(GameStruct.EudemonAttribute.MagicAtk_Max, info.magicatk_max);
            msg.AddAttribute(GameStruct.EudemonAttribute.MagicAtk_Min, info.magicatk_min);
            msg.AddAttribute(GameStruct.EudemonAttribute.Defense, info.defense);
            msg.AddAttribute(GameStruct.EudemonAttribute.Magic_Defense, info.magicdef);
            msg.AddAttribute(GameStruct.EudemonAttribute.Life, info.life);
            msg.AddAttribute(GameStruct.EudemonAttribute.Life_Max, info.life_max);
            msg.AddAttribute(GameStruct.EudemonAttribute.Intimacy, info.intimacy);
            msg.AddAttribute(GameStruct.EudemonAttribute.Level, info.level);
            msg.AddAttribute(GameStruct.EudemonAttribute.WuXing, info.wuxing);
            msg.AddAttribute(GameStruct.EudemonAttribute.Luck, info.luck);
            msg.AddAttribute(GameStruct.EudemonAttribute.Recall_Count, info.recall_count);
            msg.AddAttribute(EudemonAttribute.Card, info.card);
            msg.AddAttribute(EudemonAttribute.Exp, info.exp);
            msg.AddAttribute(EudemonAttribute.Quality, info.quality);
            msg.AddAttribute(EudemonAttribute.Init_Atk, info.GetInitAtk());
            msg.AddAttribute(EudemonAttribute.Init_Magic_Atk, info.GetInitMagicAtk());
            msg.AddAttribute(EudemonAttribute.Init_Defense, info.GetInitDefense());
            msg.AddAttribute(EudemonAttribute.Init_Life, info.init_life);
            msg.AddAttribute(EudemonAttribute.Life_Grow_Rate, ConvertGrowRate(info.life_grow_rate));
            msg.AddAttribute(EudemonAttribute.Atk_Min_Grow_Rate, ConvertGrowRate(info.phyatk_grow_rate));
            msg.AddAttribute(EudemonAttribute.Atk_Max_Grow_Rate, ConvertGrowRate(info.phyatk_grow_rate_max));
            msg.AddAttribute(EudemonAttribute.MagicAtk_Min_Grow_Rate, ConvertGrowRate(info.magicatk_grow_rate));
            msg.AddAttribute(EudemonAttribute.MagicAtk_Max_Grow_Rate, ConvertGrowRate(info.magicatk_grow_rate_max));
            msg.AddAttribute(EudemonAttribute.Defense_Grow_Rate, ConvertGrowRate(info.defense_grow_rate));
            msg.AddAttribute(EudemonAttribute.MagicDefense_Grow_Rate, ConvertGrowRate(info.magicdef_grow_rate));

            GameStruct.MonsterInfo _info = EudemonObject.GetMonsterInfo(play, info.itemid);
            if (_info != null)
            {
                msg.AddAttribute(EudemonAttribute.Riding, _info.eudemon_type);
            }

            _play.SendData(msg.GetBuffer(), true);
        }
Esempio n. 5
0
        //发送幻兽信息
        //info 幻兽信息
        //tag 是否发送休息标记
        //brank 是否发送排行榜信息
        public void SendEudemonInfo(RoleData_Eudemon info, bool tag = true,bool bRank = true)
        {
            if (tag)
            {
                //要设置一个标记才可以出征,,目前不知道这个消息是干什么用的为何 应该是状态之类的吧。。。(*^__^*) 嘻2015.9.28
                NetMsg.MsgEudemonTag eudemontag = new NetMsg.MsgEudemonTag();

                eudemontag.playerid = play.GetTypeId();
                eudemontag.eudemonid = info.GetTypeID();
                eudemontag.SetBreakTag();
                play.SendData(eudemontag.GetBuffer(), true);
            }

            //所有幻兽都为至尊圣兽
            if (bRank && info.quality > 0)
            {
                byte[] data1 = { 12, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 38, 0, 0 };
                PacketOut outpack = new PacketOut();
                outpack.WriteInt16(28);
                outpack.WriteInt16(1010);
                outpack.WriteUInt32(info.typeid);
                outpack.WriteUInt32(play.GetTypeId());
                outpack.WriteBuff(data1);
                play.SendData(outpack.Flush(),true);
            }
            NetMsg.MsgEudemonInfo msg = new NetMsg.MsgEudemonInfo();

            msg.id = info.GetTypeID();
            msg.AddAttribute(GameStruct.EudemonAttribute.Atk_Max, info.atk_max);
            msg.AddAttribute(GameStruct.EudemonAttribute.Atk_Min, info.atk_min);
            msg.AddAttribute(GameStruct.EudemonAttribute.MagicAtk_Max, info.magicatk_max);
            msg.AddAttribute(GameStruct.EudemonAttribute.MagicAtk_Min, info.magicatk_min);
            msg.AddAttribute(GameStruct.EudemonAttribute.Defense, info.defense);
            msg.AddAttribute(GameStruct.EudemonAttribute.Magic_Defense, info.magicdef);
            msg.AddAttribute(GameStruct.EudemonAttribute.Life, info.life);
            msg.AddAttribute(GameStruct.EudemonAttribute.Life_Max, info.life_max);
            msg.AddAttribute(GameStruct.EudemonAttribute.Intimacy, info.intimacy);
            msg.AddAttribute(GameStruct.EudemonAttribute.Level, info.level);
            msg.AddAttribute(GameStruct.EudemonAttribute.WuXing, info.wuxing);
            msg.AddAttribute(GameStruct.EudemonAttribute.Luck, info.luck);
            msg.AddAttribute(GameStruct.EudemonAttribute.Recall_Count, info.recall_count);
            msg.AddAttribute(EudemonAttribute.Card, info.card);
            msg.AddAttribute(EudemonAttribute.Exp, info.exp);
            msg.AddAttribute(EudemonAttribute.Quality, info.quality);
            msg.AddAttribute(EudemonAttribute.Init_Atk, info.GetInitAtk());
            msg.AddAttribute(EudemonAttribute.Init_Magic_Atk, info.GetInitMagicAtk());
            msg.AddAttribute(EudemonAttribute.Init_Defense, info.GetInitDefense());
            msg.AddAttribute(EudemonAttribute.Init_Life, info.init_life);
            msg.AddAttribute(EudemonAttribute.Life_Grow_Rate, ConvertGrowRate(info.life_grow_rate));
            msg.AddAttribute(EudemonAttribute.Atk_Min_Grow_Rate, ConvertGrowRate(info.phyatk_grow_rate));
            msg.AddAttribute(EudemonAttribute.Atk_Max_Grow_Rate, ConvertGrowRate(info.phyatk_grow_rate_max ));
            msg.AddAttribute(EudemonAttribute.MagicAtk_Min_Grow_Rate, ConvertGrowRate(info.magicatk_grow_rate));
            msg.AddAttribute(EudemonAttribute.MagicAtk_Max_Grow_Rate, ConvertGrowRate(info.magicatk_grow_rate_max));
            msg.AddAttribute(EudemonAttribute.Defense_Grow_Rate, ConvertGrowRate(info.defense_grow_rate ));
            msg.AddAttribute(EudemonAttribute.MagicDefense_Grow_Rate, ConvertGrowRate(info.magicdef_grow_rate));

            GameStruct.MonsterInfo _info = EudemonObject.GetMonsterInfo(play, info.itemid);
            if (_info != null)
            {
                msg.AddAttribute(EudemonAttribute.Riding, _info.eudemon_type);
            }

            play.SendData(msg.GetBuffer(),true);
        }