Exemple #1
0
        public DecreasOwnerSubscriberDamageSkill(PetSkillInfo skill, NebulaObject source)
            : base(skill, source)
        {
            if (data.prob < 1f)
            {
                AddCondition(new ProbCondition(data.prob, source));
            }
            if (data.cooldown > 0)
            {
                AddCondition(new CooldownCondition(data.cooldown, source));
            }
            AddCondition(new PetOwnerInCombatCondition(source));
            AddCondition(new PetOwnerHasSubscriberCondition(source));

            object valObj  = null;
            object timeObj = null;

            if (data.inputs.TryGetValue("value", out valObj))
            {
                m_Value = (float)valObj;
            }
            if (data.inputs.TryGetValue("time", out timeObj))
            {
                m_Time = (float)timeObj;
            }
            m_BonusName = source.Id + "dosds";
        }
Exemple #2
0
        public IncreaseEnergyCostPetSkill(PetSkillInfo skill, NebulaObject source)
            : base(skill, source)
        {
            if (data.prob < 1f)
            {
                AddCondition(new ProbCondition(data.prob, source));
            }
            if (data.cooldown > 0)
            {
                AddCondition(new CooldownCondition(data.cooldown, source));
            }

            AddCondition(new PetOwnerEnergyLessThanTargetEnergyCondition(source));
            AddCondition(new PetOwnerInCombatCondition(source));

            object objEnergyPc;
            object objTime;

            if (skill.inputs.TryGetValue("energy_pc", out objEnergyPc))
            {
                m_EnergyPc = (float)objEnergyPc;
            }
            if (skill.inputs.TryGetValue("time", out objTime))
            {
                m_Time = (float)objTime;
            }
            m_BonusName = source.Id + "iecps";
        }
Exemple #3
0
 public int GetPetBaseAtt()
 {
     try
     {
         string[] array = this.m_pet.SkillEquip.Split(new char[]
         {
             '|'
         });
         for (int i = 0; i < array.Length; i++)
         {
             int skillID = Convert.ToInt32(array[i].Split(new char[]
             {
                 ','
             })[0]);
             PetSkillInfo petSkillInfo = PetMgr.FindPetSkill(skillID);
             if (petSkillInfo != null && petSkillInfo.Damage > 0)
             {
                 int result = petSkillInfo.Damage;
                 return(result);
             }
         }
     }
     catch (Exception ex)
     {
         Console.WriteLine("______________GetPetBaseAtt ERROR______________");
         Console.WriteLine(ex.Message);
         Console.WriteLine(ex.StackTrace);
         Console.WriteLine("_______________________________________________");
         int result = 0;
         return(result);
     }
     return(0);
 }
        public RestoreHpPetSkill(PetSkillInfo skillInfo, NebulaObject source)
            : base(skillInfo, source)
        {
            AddCondition(new PetOwnerHpPcLessThanCondition(data.prob, source));
            if (data.cooldown > 0.0f)
            {
                AddCondition(new CooldownCondition(data.cooldown, source));
            }

            object objMaxHpPc;
            object objHpAtSecPc;
            object objTime;

            if (data.inputs.TryGetValue("max_hp_pc", out objMaxHpPc))
            {
                m_MaxHpPc = (float)objMaxHpPc;
            }
            if (data.inputs.TryGetValue("hp_at_sec_pc", out objHpAtSecPc))
            {
                m_HpAtSecPc = (float)objHpAtSecPc;
            }
            if (data.inputs.TryGetValue("time", out objTime))
            {
                m_Time = (float)objTime;
            }
            m_BonusName1 = source.Id + "rhps1";
            m_BonusName2 = source.Id + "rhps2";
        }
        public AccelerationPetSkill(PetSkillInfo skill, NebulaObject source)
            : base(skill, source)
        {
            if (data.prob < 1f)
            {
                AddCondition(new ProbCondition(data.prob, source));
            }
            if (data.cooldown > 0)
            {
                AddCondition(new CooldownCondition(data.cooldown, source));
            }

            m_PercentValue = 0f;
            m_Time         = 0f;
            object objPercentValue = null;
            object objTimeValue    = null;

            if (data.inputs.TryGetValue("value", out objPercentValue))
            {
                m_PercentValue = (float)objPercentValue;
            }
            if (data.inputs.TryGetValue("time", out objTimeValue))
            {
                m_Time = (float)objTimeValue;
            }
            m_BonusName = source.Id + "aps";
        }
        public AbsorbDamagePetSkill(PetSkillInfo skillInfo, NebulaObject source)
            : base(skillInfo, source)
        {
            if (data.prob < 1f)
            {
                AddCondition(new ProbCondition(data.prob, source));
            }
            if (data.cooldown > 0)
            {
                AddCondition(new CooldownCondition(data.cooldown, source));
            }
            AddCondition(new PetOwnerInCombatCondition(source));

            object objAbsrobDmg;
            object objConvertDmg;
            object objTime;

            if (data.inputs.TryGetValue("absorb_dmg_pc", out objAbsrobDmg))
            {
                m_AbsorbDmgPc = (float)objAbsrobDmg;
            }
            if (data.inputs.TryGetValue("convert_dmg_pc", out objConvertDmg))
            {
                m_ConvertDmgPc = (float)objConvertDmg;
            }
            if (data.inputs.TryGetValue("time", out objTime))
            {
                m_Time = (float)objTime;
            }
            m_BonusName1 = source.Id + "adp1";
            m_BonusName2 = source.Id + "adp2";
        }
        public VampirismPetSkill(PetSkillInfo skillInfo, NebulaObject source)
            : base(skillInfo, source)
        {
            if (data.cooldown > 0)
            {
                AddCondition(new CooldownCondition(data.cooldown, source));
            }

            AddCondition(new PetOwnerHpPcLessThanCondition(data.prob, source));

            object objDmgPc;
            object objVampPc;
            object objTime;

            if (data.inputs.TryGetValue("dmg_pc", out objDmgPc))
            {
                m_DmgPc = (float)objDmgPc;
            }
            if (data.inputs.TryGetValue("vamp_pc", out objVampPc))
            {
                m_vampPc = (float)objVampPc;
            }
            if (data.inputs.TryGetValue("time", out objTime))
            {
                m_Time = (float)objTime;
            }
            m_BonusName1 = source.Id + "vps1";
            m_BonusName2 = source.Id + "vps2";
        }
        public ReflectionDamageSkill(PetSkillInfo skillInfo, NebulaObject source)
            : base(skillInfo, source)
        {
            if (data.prob < 1.0f)
            {
                AddCondition(new ProbCondition(data.prob, source));
            }
            if (data.cooldown > 0.0f)
            {
                AddCondition(new CooldownCondition(data.cooldown, source));
            }
            AddCondition(new PetOwnerInCombatCondition(source));

            object objVal;
            object objTime;

            if (data.inputs.TryGetValue("value", out objVal))
            {
                m_Value = (float)objVal;
            }
            if (data.inputs.TryGetValue("time", out objTime))
            {
                m_Time = (float)objTime;
            }

            m_BuffName = source.Id + "rds";
            if (id == 4)
            {
                m_BuffName += "4";
            }
            else if (id == 5)
            {
                m_BuffName += "5";
            }
        }
Exemple #9
0
 public ResurrectGroupMemberPetSkill(PetSkillInfo skill, NebulaObject source)
     : base(skill, source)
 {
     if (data.prob < 1f)
     {
         AddCondition(new ProbCondition(data.prob, source));
     }
     if (data.cooldown > 0)
     {
         AddCondition(new CooldownCondition(data.cooldown, source));
     }
 }
Exemple #10
0
        public void PetUseKill(int skillID)
        {
            if (skillID == this.skillcu)
            {
                return;
            }
            this.skillcu = skillID;
            PetSkillInfo petSkillInfo = PetMgr.FindPetSkill(skillID);

            this.m_game.SendPetUseKill(this, skillID, true);
            if (petSkillInfo.NewBallID != -1)
            {
                this.m_delay += petSkillInfo.Delay;
                this.SetBall(petSkillInfo.NewBallID);
                base.critActive = true;
            }
            base.PetMP             -= petSkillInfo.CostMP;
            this.CurrentDamagePlus += (float)(petSkillInfo.DamageCrit / 100);
        }
        public DecreaseInputDamageSkill(PetSkillInfo skill, NebulaObject source)
            : base(skill, source)
        {
            AddCondition(new PetOwnerHpPcLessThanCondition(data.prob, source));
            if (data.cooldown > 0.0f)
            {
                AddCondition(new CooldownCondition(data.cooldown, source));
            }
            object objBonusPercent;
            object objBonusTime;

            if (data.inputs.TryGetValue("value", out objBonusPercent))
            {
                m_BonusPercent = (float)objBonusPercent;
            }
            if (data.inputs.TryGetValue("time", out objBonusTime))
            {
                m_BonusTime = (float)objBonusTime;
            }
            m_BonusName = source.Id + "dids";
        }
        public AdditionalDamagePetSkill(PetSkillInfo skillInfo, NebulaObject source)
            : base(skillInfo, source)
        {
            if (data.prob < 1f)
            {
                AddCondition(new ProbCondition(data.prob, source));
            }
            if (data.cooldown > 0)
            {
                AddCondition(new CooldownCondition(data.cooldown, source));
            }
            AddCondition(new PetOwnerInCombatCondition(source));

            object objHpPc;

            if (data.inputs.TryGetValue("value", out objHpPc))
            {
                m_Value = (float)objHpPc;
            }
            m_BuffName = source.Id + "adps";
        }
Exemple #13
0
 public PetSkill(PetSkillInfo skillInfo, NebulaObject source)
 {
     m_SkillInfo = skillInfo;
     m_Source    = source;
     m_Pet       = source.GetComponent <PetObject>();
 }
Exemple #14
0
 public OwnerTargetedPetSkill(PetSkillInfo skillInfo, NebulaObject source)
     : base(skillInfo, source)
 {
 }
Exemple #15
0
 private static bool LoadPetMgr(Dictionary <string, PetConfig> Config, Dictionary <int, PetLevel> Level, Dictionary <int, PetSkillElementInfo> SkillElement, Dictionary <int, PetSkillInfo> Skill, Dictionary <int, PetSkillTemplateInfo> SkillTemplate, Dictionary <int, PetTemplateInfo> TemplateId)
 {
     using (PlayerBussiness playerBussiness = new PlayerBussiness())
     {
         PetConfig[]            allPetConfig            = playerBussiness.GetAllPetConfig();
         PetLevel[]             allPetLevel             = playerBussiness.GetAllPetLevel();
         PetSkillElementInfo[]  allPetSkillElementInfo  = playerBussiness.GetAllPetSkillElementInfo();
         PetSkillInfo[]         allPetSkillInfo         = playerBussiness.GetAllPetSkillInfo();
         PetSkillTemplateInfo[] allPetSkillTemplateInfo = playerBussiness.GetAllPetSkillTemplateInfo();
         PetTemplateInfo[]      allPetTemplateInfo      = playerBussiness.GetAllPetTemplateInfo();
         PetConfig[]            array = allPetConfig;
         for (int i = 0; i < array.Length; i++)
         {
             PetConfig petConfig = array[i];
             if (!Config.ContainsKey(petConfig.Name))
             {
                 Config.Add(petConfig.Name, petConfig);
             }
         }
         PetLevel[] array2 = allPetLevel;
         for (int j = 0; j < array2.Length; j++)
         {
             PetLevel petLevel = array2[j];
             if (!Level.ContainsKey(petLevel.Level))
             {
                 Level.Add(petLevel.Level, petLevel);
             }
         }
         PetSkillElementInfo[] array3 = allPetSkillElementInfo;
         for (int k = 0; k < array3.Length; k++)
         {
             PetSkillElementInfo petSkillElementInfo = array3[k];
             if (!SkillElement.ContainsKey(petSkillElementInfo.ID))
             {
                 SkillElement.Add(petSkillElementInfo.ID, petSkillElementInfo);
             }
         }
         PetSkillTemplateInfo[] array4 = allPetSkillTemplateInfo;
         for (int l = 0; l < array4.Length; l++)
         {
             PetSkillTemplateInfo petSkillTemplateInfo = array4[l];
             if (!SkillTemplate.ContainsKey(petSkillTemplateInfo.ID))
             {
                 SkillTemplate.Add(petSkillTemplateInfo.ID, petSkillTemplateInfo);
             }
         }
         PetTemplateInfo[] array5 = allPetTemplateInfo;
         for (int m = 0; m < array5.Length; m++)
         {
             PetTemplateInfo petTemplateInfo = array5[m];
             if (!TemplateId.ContainsKey(petTemplateInfo.ID))
             {
                 TemplateId.Add(petTemplateInfo.ID, petTemplateInfo);
             }
         }
         PetSkillInfo[] array6 = allPetSkillInfo;
         for (int n = 0; n < array6.Length; n++)
         {
             PetSkillInfo petSkillInfo = array6[n];
             if (!Skill.ContainsKey(petSkillInfo.ID))
             {
                 Skill.Add(petSkillInfo.ID, petSkillInfo);
             }
         }
     }
     return(true);
 }