DarkEmu_GameServer.Systems.BuffAdd C# (CSharp) Метод

BuffAdd() приватный Метод

private BuffAdd ( ) : bool
Результат bool
        bool BuffAdd()
        {
            try
            {

                int status = rnd.Next(0, 100);
                //Console.WriteLine("BuffAdd Case: " + Data.SkillBase[Character.Action.UsingSkillID].Series.Remove(Data.SkillBase[Character.Action.UsingSkillID].Series.Length - 2));
                switch (Data.SkillBase[Character.Action.UsingSkillID].Series.Remove(Data.SkillBase[Character.Action.UsingSkillID].Series.Length - 2))
                {

                    case "SKILL_CH_COLD_GIGONGTA":
                        if (Character.Action.ImbueID != 0) return true;
                        Character.Action.ImbueID = Character.Action.UsingSkillID;
                        Character.Action.Buff.castingtime = 0;
                        break;
                    case "SKILL_CH_LIGHTNING_GIGONGTA":
                        if (Character.Action.ImbueID != 0) return true;
                        Character.Action.ImbueID = Character.Action.UsingSkillID;
                        Character.Action.Buff.castingtime = 0;
                        break;
                    case "SKILL_CH_FIRE_GIGONGTA":
                        if (Character.Action.ImbueID != 0) return true;
                        Character.Action.ImbueID = Character.Action.UsingSkillID;
                        Character.Action.Buff.castingtime = 0;
                        break;
                    case "SKILL_CH_LIGHTNING_GYEONGGONG":
                        Character.Speed.DefaultSpeedSkill = Character.Action.UsingSkillID;
                        //Character.Speed.Updateded += Data.SkillBase[Character.Action.UsingSkillID].Properties1["hste"];
                        //Player_SetNewSpeed();
                        Send(Packet.SetSpeed(Character.Information.UniqueID, Character.Speed.WalkSpeed, Character.Speed.RunSpeed));
                        Character.Action.Buff.castingtime = 2500;
                        break;
                    case "SKILL_CH_LIGHTNING_GWANTONG":
                        if (Timer.Attack != null) StopAttackTimer();
                        Character.Stat.UpdatededMagAttack += Data.SkillBase[Character.Action.UsingSkillID].Properties2["dru"]; //* (Character.Stat.MaxMagAttack / 100);
                        client.Send(Packet.PlayerStat(Character));
                        Character.Action.Buff.castingtime = 2500;
                        break;
                    case "SKILL_CH_LIGHTNING_JIPJUNG":
                        if (Timer.Attack != null) StopAttackTimer();
                        Character.Stat.Parry += Data.SkillBase[Character.Action.UsingSkillID].Properties1["er"];
                        client.Send(Packet.PlayerStat(Character));
                        Character.Action.Buff.castingtime = 2500;
                        break;
                    case "SKILL_CH_FIRE_GONGUP":
                        if (Timer.Attack != null) StopAttackTimer();
                        Character.Stat.UpdatededPhyAttack += Data.SkillBase[Character.Action.UsingSkillID].Properties1["dru"];
                        client.Send(Packet.PlayerStat(Character));
                        Character.Action.Buff.castingtime = 2500;
                        break;
                    case "SKILL_CH_FIRE_GANGGI":
                        if (Timer.Attack != null) StopAttackTimer();
                        Character.Stat.MagDef += Data.SkillBase[Character.Action.UsingSkillID].Properties2["defp"];
                        Character.Stat.uMagDef += Data.SkillBase[Character.Action.UsingSkillID].Properties2["defp"];
                        client.Send(Packet.PlayerStat(Character));
                        Character.Action.Buff.castingtime = 2500;
                        break;
                    case "SKILL_CH_COLD_GANGGI":
                        if (Timer.Attack != null) StopAttackTimer();
                        Character.Stat.PhyDef += Data.SkillBase[Character.Action.UsingSkillID].Properties1["defp"];
                        Character.Stat.uPhyDef += Data.SkillBase[Character.Action.UsingSkillID].Properties1["defp"];
                        client.Send(Packet.PlayerStat(Character));
                        Character.Action.Buff.castingtime = 2500;
                        break;
                    case "SKILL_CH_COLD_SHIELD":
                        if (Timer.Attack != null) StopAttackTimer();
                        Character.Stat.Absorb_mp = Data.SkillBase[Character.Action.UsingSkillID].Properties1["dgmp"];
                        client.Send(Packet.PlayerStat(Character));
                        Character.Action.Buff.castingtime = 0;
                        break;
                    case "SKILL_CH_SPEAR_SPIN":

                        //if (Data.SkillBase[Character.Action.UsingSkillID].Properties1[""] == 0)
                        //{
                            Character.Stat.MagDef += Data.SkillBase[Character.Action.UsingSkillID].Properties2["defp"];
                            Character.Stat.uMagDef += Data.SkillBase[Character.Action.UsingSkillID].Properties2["defp"];
                            client.Send(Packet.PlayerStat(Character));
                        //}

                        break;
                    case "SKILL_CH_SWORD_SHIELD":
                        //if (Data.SkillBase[Character.Action.UsingSkillID].Properties4 != 7)
                        //{
                        Character.Stat.PhyDef += Data.SkillBase[Character.Action.UsingSkillID].Properties1["defp"];
                        Character.Stat.uPhyDef += Data.SkillBase[Character.Action.UsingSkillID].Properties1["defp"];
                        client.Send(Packet.PlayerStat(Character));
                        //}
                        break;
                    case "SKILL_CH_SWORD_SHIELDPD":

                        break;
                    case "SKILL_CH_BOW_CALL":
                        StopAttackTimer();
                        //if (Data.SkillBase[Character.Action.UsingSkillID].Properties4["summ"] == 0)
                            //Character.Stat.AttackPower += Data.SkillBase[Character.Action.UsingSkillID].Properties1;
                        break;
                    case "SKILL_CH_BOW_NORMAL":
                        //Character.Stat.EkstraMetre += (Data.SkillBase[Character.Action.UsingSkillID].Properties1);
                        break;
                    case "SKILL_CH_WATER_SELFHEAL":
                        Character.Stat.SecondHp += Data.SkillBase[Character.Action.UsingSkillID].Properties1["heal"];
                        UpdateHp();
                        break;
                    case "SKILL_CH_WATER_HEAL":
                        Systems s = GetPlayer(Character.Action.Target);

                        if (s.Character.Stat.SecondHp + Data.SkillBase[Character.Action.UsingSkillID].Time < s.Character.Stat.Hp)
                            s.Character.Stat.SecondHp += Data.SkillBase[Character.Action.UsingSkillID].Time;
                        else
                            s.Character.Stat.SecondHp += s.Character.Stat.Hp - s.Character.Stat.SecondHp;

                        Character.Action.Buff.castingtime = (short)Data.SkillBase[Character.Action.UsingSkillID].CastingTime;
                        break;
                    case "SKILL_ETC_ARCHEMY_POTION_SPEED_":
                    case "SKILL_EU_BARD_SPEEDUPA_MSPEED":
                        Character.Speed.DefaultSpeedSkill = Character.Action.UsingSkillID;
                        //Character.Speed.Updateded += Data.SkillBase[Character.Action.UsingSkillID].Properties1["hste"];
                        //Player_SetNewSpeed();
                        Send(Packet.SetSpeed(Character.Information.UniqueID, Character.Speed.WalkSpeed, Character.Speed.RunSpeed));
                        Character.Action.Buff.castingtime = 3000;
                        break;
                    case "SKILL_EU_BARD_BATTLAA_GUARD":

                        break;
                        //////////////////////////////////////////////////////////////
                        // Eu buffs
                        //////////////////////////////////////////////////////////////

                    case "SKILL_EU_BARD_SPEEDUPA_HITRATE":
                        Character.Stat.Hit += Data.SkillBase[Character.Action.UsingSkillID].Properties2["hr"];
                        break;
                    //default:
                        //Console.WriteLine("Non coded skill case: " + Data.SkillBase[Character.Action.UsingSkillID].Series.Remove(Data.SkillBase[Character.Action.UsingSkillID].Series.Length - 2));
                        //Send(Packet.SetSpeed(Character.Information.UniqueID, Character.Speed.WalkSpeed, Character.Speed.RunSpeed));
                    //    break;
                }
            }
            catch (Exception ex)
            {
                Systems.Debugger.Write(ex);
            }
            return false;
        }
Systems