Exemplo n.º 1
0
        private static EffectSchoolEnum GetEffectSchool(EffectsEnum effect)
        {
            EffectSchoolEnum result;

            switch (effect)
            {
            case EffectsEnum.Effect_StealHPWater:
                result = EffectSchoolEnum.Water;
                break;

            case EffectsEnum.Effect_StealHPEarth:
                result = EffectSchoolEnum.Earth;
                break;

            case EffectsEnum.Effect_StealHPAir:
                result = EffectSchoolEnum.Air;
                break;

            case EffectsEnum.Effect_StealHPFire:
                result = EffectSchoolEnum.Fire;
                break;

            case EffectsEnum.Effect_StealHPNeutral:
                result = EffectSchoolEnum.Neutral;
                break;

            default:
                throw new System.Exception(string.Format("Effect {0} has not associated School Type", effect));
            }
            return(result);
        }
Exemplo n.º 2
0
        private static PlayerFields GetEffectCharacteristic(EffectsEnum effect)
        {
            PlayerFields result;

            switch (effect)
            {
            case EffectsEnum.Effect_AddPermanentWisdom:
                result = PlayerFields.Wisdom;
                break;

            case EffectsEnum.Effect_AddPermanentStrength:
                result = PlayerFields.Strength;
                break;

            case EffectsEnum.Effect_AddPermanentChance:
                result = PlayerFields.Chance;
                break;

            case EffectsEnum.Effect_AddPermanentAgility:
                result = PlayerFields.Agility;
                break;

            case EffectsEnum.Effect_AddPermanentVitality:
                result = PlayerFields.Vitality;
                break;

            case EffectsEnum.Effect_AddPermanentIntelligence:
                result = PlayerFields.Intelligence;
                break;

            default:
                throw new System.Exception(string.Format("Effect {0} has not associated Characteristic", effect));
            }
            return(result);
        }
        private static EffectsEnum GetBuffEffectType(string fieldtype)
        {
            EffectsEnum result = EffectsEnum.End;

            switch (fieldtype)
            {
            case "ContextStrength":
                result = EffectsEnum.Eff_AddStrength;
                break;

            case "LifePoints":
                result = EffectsEnum.Eff_AddVitality;
                break;

            case "ContextWisdom":
                result = EffectsEnum.Eff_AddWisdom;
                break;

            case "ContextChance":
                result = EffectsEnum.Eff_AddChance;
                break;

            case "ContextAgility":
                result = EffectsEnum.Eff_AddAgility;
                break;

            case "ContextIntelligence":
                result = EffectsEnum.Eff_AddIntelligence;
                break;
            }
            return(result);
        }
Exemplo n.º 4
0
        private static Characteristic GetEffectCaracteristic(Fighter fighter, EffectsEnum effect)
        {
            switch (effect)
            {
            case EffectsEnum.Effect_StealChance:
                return(fighter.Stats.Chance);

            case EffectsEnum.Effect_StealVitality:
                return(fighter.Stats.Vitality);

            case EffectsEnum.Effect_StealAgility:
                return(fighter.Stats.Agility);

            case EffectsEnum.Effect_StealIntelligence:
                return(fighter.Stats.Intelligence);

            case EffectsEnum.Effect_StealWisdom:
                return(fighter.Stats.Wisdom);

            case EffectsEnum.Effect_StealStrength:
                return(fighter.Stats.Strength);

            case EffectsEnum.Effect_StealRange:
                return(fighter.Stats.Range);

            default:
                throw new Exception("No associated caracteristic to effect '" + effect + "'");
            }
        }
Exemplo n.º 5
0
        public static void FixEffectOnAllLevels(int spellId, EffectsEnum effect, Action <SpellLevelTemplate, EffectDice, bool> fixer, bool critical = true)
        {
            var spellLevels = SpellManager.Instance.GetSpellLevels(spellId).ToArray();

            if (spellLevels.Length == 0)
            {
                logger.Error($"Cannot apply fix on spell {spellId} : spell do not exists");
                return;
            }

            foreach (var level in spellLevels)
            {
                foreach (var spellEffect in level.Effects.Where(entry => entry.EffectId == effect))
                {
                    fixer(level, spellEffect, false);
                }

                if (!critical)
                {
                    continue;
                }

                foreach (var spellEffect in level.CriticalEffects.Where(entry => entry.EffectId == effect))
                {
                    fixer(level, spellEffect, true);
                }
            }
        }
        private static EffectSchoolEnum GetEffectSchool(EffectsEnum effect)
        {
            EffectSchoolEnum result;

            switch (effect)
            {
            case EffectsEnum.Effect_DamageAirPerAP:
                result = EffectSchoolEnum.Air;
                break;

            case EffectsEnum.Effect_DamageWaterPerAP:
                result = EffectSchoolEnum.Water;
                break;

            case EffectsEnum.Effect_DamageFirePerAP:
                result = EffectSchoolEnum.Fire;
                break;

            case EffectsEnum.Effect_DamageNeutralPerAP:
                result = EffectSchoolEnum.Neutral;
                break;

            case EffectsEnum.Effect_DamageEarthPerAP:
                result = EffectSchoolEnum.Earth;
                break;

            default:
                throw new System.Exception(string.Format("Effect {0} has not associated School Type", effect));
            }
            return(result);
        }
Exemplo n.º 7
0
        static EffectSchoolEnum GetEffectSchool(EffectsEnum effect)
        {
            switch (effect)
            {
            case EffectsEnum.Effect_DamageWaterPerHPEroded:
            case EffectsEnum.Effect_DamageWaterPerCasterHPEroded:
                return(EffectSchoolEnum.Water);

            case EffectsEnum.Effect_DamageEarthPerHPEroded:
            case EffectsEnum.Effect_DamageEarthPerCasterHPEroded:
                return(EffectSchoolEnum.Earth);

            case EffectsEnum.Effect_DamageAirPerHPEroded:
            case EffectsEnum.Effect_DamageAirPerCasterHPEroded:
                return(EffectSchoolEnum.Air);

            case EffectsEnum.Effect_DamageFirePerHPEroded:
            case EffectsEnum.Effect_DamageFirePerCasterHPEroded:
                return(EffectSchoolEnum.Fire);

            case EffectsEnum.Effect_DamageNeutralPerHPEroded:
            case EffectsEnum.Effect_DamageNeutralPerCasterHPEroded:
                return(EffectSchoolEnum.Neutral);

            default:
                throw new Exception(string.Format("Effect {0} has not associated School Type", effect));
            }
        }
Exemplo n.º 8
0
        /// <summary>
        /// Forgemagie d'arme
        /// </summary>
        /// <param name="effect"></param>
        /// <param name="percentage"></param>
        public virtual void Mage(EffectsEnum effectEnum, byte percentage)
        {
            if (!Template.Weapon)
            {
                throw new Exception("You can only mage weapons...");
            }
            var effects = GetEffects <Effect>(EffectsEnum.Effect_DamageNeutral);

            foreach (var effect in effects)
            {
                if (effect is EffectDice)
                {
                    var dice = effect as EffectDice;
                    dice.Min   = (ushort)((int)(dice.Min)).GetPercentageOf(percentage);
                    dice.Max   = (ushort)((int)(dice.Max)).GetPercentageOf(percentage);
                    dice.Const = 0;
                }
                if (effect is EffectInteger)
                {
                    var integer = effect as EffectInteger;
                    integer.Value = (ushort)((int)(integer.Value)).GetPercentageOf(percentage);
                }

                effect.EffectId = (ushort)effectEnum;
            }
        }
Exemplo n.º 9
0
        static EffectsEnum[] GetBuffDisplayedEffect(EffectsEnum effect)
        {
            switch (effect)
            {
            case EffectsEnum.Effect_StealChance:
                return(new[] { EffectsEnum.Effect_AddChance, EffectsEnum.Effect_SubChance });

            case EffectsEnum.Effect_StealVitality:
                return(new[] { EffectsEnum.Effect_AddVitality, EffectsEnum.Effect_SubVitality });

            case EffectsEnum.Effect_StealWisdom:
                return(new[] { EffectsEnum.Effect_AddWisdom, EffectsEnum.Effect_SubWisdom });

            case EffectsEnum.Effect_StealIntelligence:
                return(new[] { EffectsEnum.Effect_AddIntelligence, EffectsEnum.Effect_SubIntelligence });

            case EffectsEnum.Effect_StealAgility:
                return(new[] { EffectsEnum.Effect_AddAgility, EffectsEnum.Effect_SubAgility });

            case EffectsEnum.Effect_StealStrength:
                return(new[] { EffectsEnum.Effect_AddStrength, EffectsEnum.Effect_SubStrength });

            case EffectsEnum.Effect_StealRange:
                return(new[] { EffectsEnum.Effect_AddRange, EffectsEnum.Effect_SubRange });

            default:
                throw new Exception("No associated caracteristic to effect '" + effect + "'");
            }
        }
Exemplo n.º 10
0
        static PlayerFields GetEffectCharacteristic(EffectsEnum effect)
        {
            switch (effect)
            {
            case EffectsEnum.Effect_AddPermanentChance:
                return(PlayerFields.Chance);

            case EffectsEnum.Effect_AddPermanentAgility:
                return(PlayerFields.Agility);

            case EffectsEnum.Effect_AddPermanentIntelligence:
                return(PlayerFields.Intelligence);

            case EffectsEnum.Effect_AddPermanentStrength:
                return(PlayerFields.Strength);

            case EffectsEnum.Effect_AddPermanentWisdom:
                return(PlayerFields.Wisdom);

            case EffectsEnum.Effect_AddPermanentVitality:
                return(PlayerFields.Vitality);

            default:
                throw new Exception(string.Format("Effect {0} has not associated Characteristic", effect));
            }
        }
Exemplo n.º 11
0
        /// <summary>
        /// Retourne la somme de l'effet donné pour les objets équipés
        /// </summary>
        /// <param name="effect"></param>
        /// <returns></returns>
        public ushort GetCumulatedIntegerEffect(EffectsEnum effect)
        {
            ushort result = 0;

            foreach (var item in GetEquipedItems())
            {
                result += item.FirstEffect <EffectInteger>(effect).Value;
            }
            return(result);
        }
Exemplo n.º 12
0
 public bool ContainEffect(EffectsEnum effect)
 {
     if (this.m_realEffect.Find(x => x.actionId == (ushort)effect) != null)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Exemplo n.º 13
0
        public virtual void AddEffectInteger(EffectsEnum effect, ushort value)
        {
            EffectInteger current = FirstEffect <EffectInteger>(effect);

            if (current == null)
            {
                Effects.Add(new EffectInteger((ushort)effect, value));
            }
            else
            {
                current.Value += value;
            }
        }
 private static void Handle(Character character, EffectsEnum effectEnum, short value)
 {
     if (!UnhandledEffects.Contains(effectEnum))
     {
         var handler = Handlers.FirstOrDefault(x => x.Key.Effect == effectEnum);
         if (handler.Value != null)
         {
             handler.Value.Invoke(null, new object[] { character, value });
         }
         else if (character.Client.Account.Role == ServerRoleEnum.Fondator)
         {
             character.Reply(effectEnum + " is not handled.");
         }
     }
 }
Exemplo n.º 15
0
 /// <summary>
 /// Spell Context
 /// </summary>
 /// <returns></returns>
 public static EffectInstance New(EffectsEnum effect, short delay, ushort min, ushort max, int value, short duration, string rawZone, string targetMask)
 {
     return(new EffectInstance()
     {
         Delay = delay,
         DiceMin = min,
         DiceMax = max,
         Value = value,
         Duration = duration,
         EffectElement = 0,
         EffectId = (ushort)effect,
         EffectUID = 0,
         Random = 0,
         RawZone = rawZone,
         TargetMask = targetMask,
     });
 }
Exemplo n.º 16
0
 public void Add(EffectsEnum effect)
 {
     switch (effect)
     {
         case EffectsEnum.Vintage:
             Add(new Vintage(SourceImage.Size));
             break;
         case EffectsEnum.Clarity:
             Add(new Clarity(this, SourceImage.Size));
             break;
         case EffectsEnum.Concentrate:
             Add(new Sharpen(40));
             Add(new Concentrate());
             NewLayer(new ConcentrateOverlay(),new Multiply(),80);
             Add(new Sharpen(5));
             Add(new Brightness(10));
             break;
         case EffectsEnum.CrossProcess:
             Add(new CrossProcess(SourceImage.Size));
             break;
         case EffectsEnum.OrangePeel:
             Add(new OrangePeel());
             break;
         case EffectsEnum.Lomo:
             Add(new Lomo(SourceImage.Size));
             break;
         case EffectsEnum.SinCity:
             Add(new SinCity(SourceImage.Size));
             break;
         case EffectsEnum.Sunrise:
             Add(new Sunrise(SourceImage.Size));
             break;
         case EffectsEnum.Love:
             Add(new Love(SourceImage.Size));
             break;
         case EffectsEnum.Grungy:
             Add(new Grungy(SourceImage.Size));
             break;
         case EffectsEnum.Jarques:
             Add(new Jarques());
             Add(new Sharpen(20));
             break;
     }
 }
Exemplo n.º 17
0
        public static void RemoveEffectOnAllLevels(int spellId, EffectsEnum effect, bool critical = true)
        {
            var spellLevels = SpellManager.Instance.GetSpellLevels(spellId).ToArray();

            if (spellLevels.Length == 0)
            {
                logger.Error($"Cannot apply fix on spell {spellId} : spell do not exists");
                return;
            }

            foreach (var level in spellLevels)
            {
                level.Effects.RemoveAll(entry => entry.EffectId == effect);
                if (critical)
                {
                    level.CriticalEffects.RemoveAll(entry => entry.EffectId == effect);
                }
            }
        }
Exemplo n.º 18
0
        private static PlayerFields GetEffectCaracteristic(EffectsEnum effect)
        {
            PlayerFields result;

            switch (effect)
            {
            case EffectsEnum.Effect_StealChance:
                result = PlayerFields.Chance;
                break;

            case EffectsEnum.Effect_StealVitality:
                result = PlayerFields.Vitality;
                break;

            case EffectsEnum.Effect_StealAgility:
                result = PlayerFields.Agility;
                break;

            case EffectsEnum.Effect_StealIntelligence:
                result = PlayerFields.Intelligence;
                break;

            case EffectsEnum.Effect_StealWisdom:
                result = PlayerFields.Wisdom;
                break;

            case EffectsEnum.Effect_StealStrength:
                result = PlayerFields.Strength;
                break;

            default:
                if (effect != EffectsEnum.Effect_StealRange)
                {
                    throw new System.Exception("No associated caracteristic to effect '" + effect + "'");
                }
                result = PlayerFields.Range;
                break;
            }
            return(result);
        }
Exemplo n.º 19
0
        static EffectSchoolEnum GetEffectSchool(EffectsEnum effect)
        {
            switch (effect)
            {
            case EffectsEnum.Effect_StealHPWater:
                return(EffectSchoolEnum.Water);

            case EffectsEnum.Effect_StealHPEarth:
                return(EffectSchoolEnum.Earth);

            case EffectsEnum.Effect_StealHPAir:
                return(EffectSchoolEnum.Air);

            case EffectsEnum.Effect_StealHPFire:
                return(EffectSchoolEnum.Fire);

            case EffectsEnum.Effect_StealHPNeutral:
                return(EffectSchoolEnum.Neutral);

            default:
                throw new Exception(string.Format("Effect {0} has not associated School Type", effect));
            }
        }
Exemplo n.º 20
0
        static EffectSchoolEnum GetEffectSchool(EffectsEnum effect)
        {
            switch (effect)
            {
            case EffectsEnum.Effect_DamagePercentAir:
                return(EffectSchoolEnum.Water);

            case EffectsEnum.Effect_DamagePercentEarth:
                return(EffectSchoolEnum.Earth);

            case EffectsEnum.Effect_DamagePercentFire:
                return(EffectSchoolEnum.Air);

            case EffectsEnum.Effect_DamagePercentWater:
                return(EffectSchoolEnum.Fire);

            case EffectsEnum.Effect_DamagePercentNeutral:
            case EffectsEnum.Effect_DamagePercentNeutral_671:
                return(EffectSchoolEnum.Neutral);

            default:
                throw new Exception(string.Format("Effect {0} has not associated School Type", effect));
            }
        }
Exemplo n.º 21
0
 public override void AddEffectDice(EffectsEnum effect, ushort min, ushort max, ushort value)
 {
     Effects.Add(new EffectDice((ushort)effect, min, max, value));
     this.UpdateElement();
 }
Exemplo n.º 22
0
 public override void RemoveAllEffects(EffectsEnum effect)
 {
     Effects.RemoveAll(x => x.EffectEnum == effect);
     this.UpdateElement();
 }
Exemplo n.º 23
0
 public override void Mage(EffectsEnum effectEnum, byte percentage)
 {
     base.Mage(effectEnum, percentage);
     this.UpdateElement();
 }
Exemplo n.º 24
0
 public override void AddEffectInteger(EffectsEnum effect, ushort value)
 {
     base.AddEffectInteger(effect, value);
     this.UpdateElement();
 }
        public static SpellCategory GetEffectCategories(EffectsEnum effectId)
        {
            SpellCategory result;

            if (effectId <= EffectsEnum.Effect_279)
            {
                switch (effectId)
                {
                case EffectsEnum.Effect_Teleport:
                    result = SpellCategory.Teleport;
                    return(result);

                case EffectsEnum.Effect_PushBack:
                    result = SpellCategory.Curse;
                    return(result);

                default:
                    if (effectId == EffectsEnum.Effect_Dodge)
                    {
                        goto IL_496;
                    }
                    switch (effectId)
                    {
                    case EffectsEnum.Effect_StealMP_77:
                    case EffectsEnum.Effect_RemoveAP:
                    case EffectsEnum.Effect_LostMP:
                    case EffectsEnum.Effect_StealKamas:
                    case EffectsEnum.Effect_LoseHPByUsingAP:
                    case EffectsEnum.Effect_LosingAP:
                    case EffectsEnum.Effect_LosingMP:
                    case EffectsEnum.Effect_SubRange_135:
                    case EffectsEnum.Effect_SkipTurn:
                    case EffectsEnum.Effect_SubDamageBonus:
                    case EffectsEnum.Effect_SubChance:
                    case EffectsEnum.Effect_SubVitality:
                    case EffectsEnum.Effect_SubAgility:
                    case EffectsEnum.Effect_SubIntelligence:
                    case EffectsEnum.Effect_SubWisdom:
                    case EffectsEnum.Effect_SubStrength:
                    case EffectsEnum.Effect_SubDodgeAPProbability:
                    case EffectsEnum.Effect_SubDodgeMPProbability:
                    case EffectsEnum.Effect_SubAP:
                    case EffectsEnum.Effect_SubMP:
                    case EffectsEnum.Effect_SubCriticalHit:
                    case EffectsEnum.Effect_SubMagicDamageReduction:
                    case EffectsEnum.Effect_SubPhysicalDamageReduction:
                    case EffectsEnum.Effect_SubInitiative:
                    case EffectsEnum.Effect_SubProspecting:
                    case EffectsEnum.Effect_SubHealBonus:
                    case EffectsEnum.Effect_SubDamageBonusPercent:
                    case EffectsEnum.Effect_197:
                    case EffectsEnum.Effect_SubEarthResistPercent:
                    case EffectsEnum.Effect_SubWaterResistPercent:
                    case EffectsEnum.Effect_SubAirResistPercent:
                    case EffectsEnum.Effect_SubFireResistPercent:
                    case EffectsEnum.Effect_SubNeutralResistPercent:
                    case EffectsEnum.Effect_SubEarthElementReduction:
                    case EffectsEnum.Effect_SubWaterElementReduction:
                    case EffectsEnum.Effect_SubAirElementReduction:
                    case EffectsEnum.Effect_SubFireElementReduction:
                    case EffectsEnum.Effect_SubNeutralElementReduction:
                    case EffectsEnum.Effect_SubPvpEarthResistPercent:
                    case EffectsEnum.Effect_SubPvpWaterResistPercent:
                    case EffectsEnum.Effect_SubPvpAirResistPercent:
                    case EffectsEnum.Effect_SubPvpFireResistPercent:
                    case EffectsEnum.Effect_SubPvpNeutralResistPercent:
                    case EffectsEnum.Effect_StealChance:
                    case EffectsEnum.Effect_StealVitality:
                    case EffectsEnum.Effect_StealAgility:
                    case EffectsEnum.Effect_StealIntelligence:
                    case EffectsEnum.Effect_StealWisdom:
                    case EffectsEnum.Effect_StealStrength:
                    case EffectsEnum.Effect_275:
                    case EffectsEnum.Effect_276:
                    case EffectsEnum.Effect_277:
                    case EffectsEnum.Effect_278:
                    case EffectsEnum.Effect_279:
                        result = SpellCategory.Curse;
                        return(result);

                    case EffectsEnum.Effect_AddMP:
                    case EffectsEnum.Effect_AddGlobalDamageReduction_105:
                    case EffectsEnum.Effect_ReflectSpell:
                    case EffectsEnum.Effect_AddDamageReflection:
                    case EffectsEnum.Effect_AddHealth:
                    case EffectsEnum.Effect_AddAP_111:
                    case EffectsEnum.Effect_AddDamageBonus:
                    case EffectsEnum.Effect_AddDamageMultiplicator:
                    case EffectsEnum.Effect_AddCriticalHit:
                    case EffectsEnum.Effect_AddRange:
                    case EffectsEnum.Effect_AddStrength:
                    case EffectsEnum.Effect_AddAgility:
                    case EffectsEnum.Effect_RegainAP:
                    case EffectsEnum.Effect_AddDamageBonus_121:
                    case EffectsEnum.Effect_AddChance:
                    case EffectsEnum.Effect_AddWisdom:
                    case EffectsEnum.Effect_AddVitality:
                    case EffectsEnum.Effect_AddIntelligence:
                    case EffectsEnum.Effect_AddMP_128:
                    case EffectsEnum.Effect_AddRange_136:
                    case EffectsEnum.Effect_AddPhysicalDamage_137:
                    case EffectsEnum.Effect_AddPhysicalDamage_142:
                    case EffectsEnum.Effect_Invisibility:
                    case EffectsEnum.Effect_AddGlobalDamageReduction:
                    case EffectsEnum.Effect_AddDamageBonusPercent:
                    case EffectsEnum.Effect_AddProspecting:
                    case EffectsEnum.Effect_AddHealBonus:
                    case EffectsEnum.Effect_AddSummonLimit:
                    case EffectsEnum.Effect_AddPhysicalDamageReduction:
                    case EffectsEnum.Effect_AddEarthResistPercent:
                    case EffectsEnum.Effect_AddWaterResistPercent:
                    case EffectsEnum.Effect_AddAirResistPercent:
                    case EffectsEnum.Effect_AddFireResistPercent:
                    case EffectsEnum.Effect_AddNeutralResistPercent:
                    case EffectsEnum.Effect_AddEarthElementReduction:
                    case EffectsEnum.Effect_AddWaterElementReduction:
                    case EffectsEnum.Effect_AddAirElementReduction:
                    case EffectsEnum.Effect_AddFireElementReduction:
                    case EffectsEnum.Effect_AddNeutralElementReduction:
                    case EffectsEnum.Effect_AddArmorDamageReduction:
                        goto IL_496;

                    case EffectsEnum.Effect_79:
                    case (EffectsEnum)80:
                    case EffectsEnum.Effect_StealHPFix:
                    case (EffectsEnum)83:
                    case EffectsEnum.Effect_StealAP_84:
                    case EffectsEnum.Effect_DamagePercentWater:
                    case EffectsEnum.Effect_DamagePercentEarth:
                    case EffectsEnum.Effect_DamagePercentAir:
                    case EffectsEnum.Effect_DamagePercentFire:
                    case EffectsEnum.Effect_DamagePercentNeutral:
                    case EffectsEnum.Effect_GiveHPPercent:
                    case (EffectsEnum)102:
                    case (EffectsEnum)103:
                    case (EffectsEnum)104:
                    case EffectsEnum.Effect_109:
                    case EffectsEnum.Effect_DoubleDamageOrRestoreHP:
                    case EffectsEnum.Effect_SubRange:
                    case EffectsEnum.Effect_AddCriticalMiss:
                    case (EffectsEnum)129:
                    case EffectsEnum.Effect_DispelMagicEffects:
                    case EffectsEnum.Effect_IncreaseDamage_138:
                    case EffectsEnum.Effect_RestoreEnergyPoints:
                    case EffectsEnum.Effect_DamageFix:
                    case EffectsEnum.Effect_ChangesWords:
                    case EffectsEnum.Effect_ReviveAlly:
                    case EffectsEnum.Effect_Followed:
                    case EffectsEnum.Effect_ChangeAppearance:
                    case (EffectsEnum)151:
                    case EffectsEnum.Effect_IncreaseWeight:
                    case EffectsEnum.Effect_DecreaseWeight:
                    case EffectsEnum.Effect_166:
                    case (EffectsEnum)167:
                    case (EffectsEnum)170:
                    case EffectsEnum.Effect_AddInitiative:
                    case EffectsEnum.Effect_AddMagicDamageReduction:
                    case (EffectsEnum)187:
                    case EffectsEnum.Effect_188:
                    case (EffectsEnum)189:
                    case (EffectsEnum)190:
                    case (EffectsEnum)191:
                    case (EffectsEnum)192:
                    case (EffectsEnum)193:
                    case EffectsEnum.Effect_GiveKamas:
                    case (EffectsEnum)195:
                    case (EffectsEnum)196:
                    case (EffectsEnum)198:
                    case (EffectsEnum)199:
                    case (EffectsEnum)200:
                    case EffectsEnum.Effect_201:
                    case EffectsEnum.Effect_RevealsInvisible:
                    case (EffectsEnum)203:
                    case (EffectsEnum)204:
                    case (EffectsEnum)205:
                    case EffectsEnum.Effect_206:
                    case (EffectsEnum)207:
                    case (EffectsEnum)208:
                    case (EffectsEnum)209:
                    case (EffectsEnum)223:
                    case (EffectsEnum)224:
                    case (EffectsEnum)227:
                    case (EffectsEnum)228:
                    case (EffectsEnum)231:
                    case (EffectsEnum)232:
                    case (EffectsEnum)233:
                    case (EffectsEnum)234:
                    case (EffectsEnum)235:
                    case (EffectsEnum)236:
                    case (EffectsEnum)237:
                    case (EffectsEnum)238:
                    case EffectsEnum.Effect_239:
                    case EffectsEnum.Effect_AddPvpEarthResistPercent:
                    case EffectsEnum.Effect_AddPvpWaterResistPercent:
                    case EffectsEnum.Effect_AddPvpAirResistPercent:
                    case EffectsEnum.Effect_AddPvpFireResistPercent:
                    case EffectsEnum.Effect_AddPvpNeutralResistPercent:
                    case EffectsEnum.Effect_AddPvpEarthElementReduction:
                    case EffectsEnum.Effect_AddPvpWaterElementReduction:
                    case EffectsEnum.Effect_AddPvpAirElementReduction:
                    case EffectsEnum.Effect_AddPvpFireElementReduction:
                    case EffectsEnum.Effect_AddPvpNeutralElementReduction:
                    case (EffectsEnum)272:
                    case (EffectsEnum)273:
                    case (EffectsEnum)274:
                        goto IL_492;

                    case EffectsEnum.Effect_HealHP_81:
                    case EffectsEnum.Effect_HealHP_108:
                    case EffectsEnum.Effect_HealHP_143:
                        result = SpellCategory.Healing;
                        return(result);

                    case EffectsEnum.Effect_StealHPWater:
                        result = (SpellCategory.Healing | SpellCategory.DamagesWater);
                        return(result);

                    case EffectsEnum.Effect_StealHPEarth:
                        result = (SpellCategory.Healing | SpellCategory.DamagesEarth);
                        return(result);

                    case EffectsEnum.Effect_StealHPAir:
                        result = (SpellCategory.Healing | SpellCategory.DamagesAir);
                        return(result);

                    case EffectsEnum.Effect_StealHPFire:
                        result = (SpellCategory.Healing | SpellCategory.DamagesFire);
                        return(result);

                    case EffectsEnum.Effect_StealHPNeutral:
                        result = (SpellCategory.Healing | SpellCategory.DamagesNeutral);
                        return(result);

                    case EffectsEnum.Effect_DamageWater:
                        result = SpellCategory.DamagesWater;
                        return(result);

                    case EffectsEnum.Effect_DamageEarth:
                        result = SpellCategory.DamagesEarth;
                        return(result);

                    case EffectsEnum.Effect_DamageAir:
                        result = SpellCategory.DamagesAir;
                        return(result);

                    case EffectsEnum.Effect_DamageFire:
                        result = SpellCategory.DamagesFire;
                        return(result);

                    case EffectsEnum.Effect_DamageNeutral:
                        goto IL_49A;

                    case EffectsEnum.Effect_Kill:
                        result = SpellCategory.Damages;
                        return(result);

                    case EffectsEnum.Effect_Double:
                    case EffectsEnum.Effect_Summon:
                    case EffectsEnum.Effect_185:
                        break;

                    default:
                        goto IL_492;
                    }
                    break;
                }
            }
            else
            {
                if (effectId <= EffectsEnum.Effect_623)
                {
                    switch (effectId)
                    {
                    case EffectsEnum.Effect_SubPushDamageReduction:
                    case EffectsEnum.Effect_SubCriticalDamageBonus:
                    case EffectsEnum.Effect_SubCriticalDamageReduction:
                    case EffectsEnum.Effect_SubEarthDamageBonus:
                    case EffectsEnum.Effect_SubFireDamageBonus:
                    case EffectsEnum.Effect_SubWaterDamageBonus:
                    case EffectsEnum.Effect_SubAirDamageBonus:
                    case EffectsEnum.Effect_SubNeutralDamageBonus:
                    case EffectsEnum.Effect_StealAP_440:
                    case EffectsEnum.Effect_StealMP_441:
                        result = SpellCategory.Curse;
                        return(result);

                    case EffectsEnum.Effect_SubPushDamageBonus:
                    case (EffectsEnum)432:
                    case (EffectsEnum)433:
                    case (EffectsEnum)434:
                    case (EffectsEnum)435:
                    case (EffectsEnum)436:
                    case (EffectsEnum)437:
                    case (EffectsEnum)438:
                    case (EffectsEnum)439:
                        goto IL_492;

                    case EffectsEnum.Effect_AddPushDamageBonus:
                    case EffectsEnum.Effect_AddPushDamageReduction:
                    case EffectsEnum.Effect_AddCriticalDamageBonus:
                    case EffectsEnum.Effect_AddCriticalDamageReduction:
                    case EffectsEnum.Effect_AddEarthDamageBonus:
                    case EffectsEnum.Effect_AddFireDamageBonus:
                    case EffectsEnum.Effect_AddWaterDamageBonus:
                    case EffectsEnum.Effect_AddAirDamageBonus:
                    case EffectsEnum.Effect_AddNeutralDamageBonus:
                        goto IL_496;

                    default:
                        switch (effectId)
                        {
                        case EffectsEnum.Effect_621:
                        case EffectsEnum.Effect_623:
                            break;

                        case EffectsEnum.Effect_622:
                            goto IL_492;

                        default:
                            goto IL_492;
                        }
                        break;
                    }
                }
                else
                {
                    if (effectId == EffectsEnum.Effect_Punishment_Damage)
                    {
                        goto IL_49A;
                    }
                    if (effectId == EffectsEnum.Effect_SubAPTelefrag)
                    {
                        result = SpellCategory.Curse;
                        return(result);
                    }
                    if (effectId != EffectsEnum.Effect_AddVitalityPercent)
                    {
                        goto IL_492;
                    }
                    goto IL_496;
                }
            }
            result = SpellCategory.Summoning;
            return(result);

IL_492:
            result = SpellCategory.None;
            return(result);

IL_496:
            result = SpellCategory.Buff;
            return(result);

IL_49A:
            result = SpellCategory.DamagesNeutral;
            return(result);
        }
Exemplo n.º 26
0
 public ItemEffectAttribute(EffectsEnum effect)
 {
     this.Effect = effect;
 }
Exemplo n.º 27
0
 public GameActionFightDispellableEffectMessage DefaultMessage(EffectsEnum effect)
 {
     return new GameActionFightDispellableEffectMessage((ushort)effect, SourceId, new FightTemporaryBoostEffect((uint)Fighter.BuffIdProvider.Pop(), Fighter.ContextualId, Duration,1, (ushort)SourceSpellId, (uint)effect, 16, Delta));
 }
Exemplo n.º 28
0
 public EffectDate(EffectsEnum id, System.DateTime date) : this((short)id, (short)date.Year, (short)date.Month, (short)date.Day, (short)date.Hour, (short)date.Minute, new EffectBase())
 {
 }
Exemplo n.º 29
0
 public EffectDice(EffectsEnum effect, short value, short dicenum, short diceface)
     : this((short)effect, value, dicenum, diceface, new EffectBase())
 {
 }
Exemplo n.º 30
0
        public static PlayerFields GetEffectCaracteristic(EffectsEnum effect)
        {
            if (effect <= EffectsEnum.Effect_SubDamageBonus)
            {
                if (effect == EffectsEnum.Effect_SubRange || effect == EffectsEnum.Effect_SubRange_135)
                {
                    PlayerFields result = PlayerFields.Range;
                    return(result);
                }
                if (effect == EffectsEnum.Effect_SubDamageBonus)
                {
                    PlayerFields result = PlayerFields.DamageBonus;
                    return(result);
                }
            }
            else
            {
                if (effect <= EffectsEnum.Effect_SubCriticalHit)
                {
                    switch (effect)
                    {
                    case EffectsEnum.Effect_SubChance:
                    {
                        PlayerFields result = PlayerFields.Chance;
                        return(result);
                    }

                    case EffectsEnum.Effect_SubVitality:
                    case EffectsEnum.Effect_IncreaseWeight:
                    case EffectsEnum.Effect_DecreaseWeight:
                        break;

                    case EffectsEnum.Effect_SubAgility:
                    {
                        PlayerFields result = PlayerFields.Agility;
                        return(result);
                    }

                    case EffectsEnum.Effect_SubIntelligence:
                    {
                        PlayerFields result = PlayerFields.Intelligence;
                        return(result);
                    }

                    case EffectsEnum.Effect_SubWisdom:
                    {
                        PlayerFields result = PlayerFields.Wisdom;
                        return(result);
                    }

                    case EffectsEnum.Effect_SubStrength:
                    {
                        PlayerFields result = PlayerFields.Strength;
                        return(result);
                    }

                    case EffectsEnum.Effect_SubDodgeAPProbability:
                    {
                        PlayerFields result = PlayerFields.DodgeAPProbability;
                        return(result);
                    }

                    case EffectsEnum.Effect_SubDodgeMPProbability:
                    {
                        PlayerFields result = PlayerFields.DodgeMPProbability;
                        return(result);
                    }

                    default:
                        if (effect == EffectsEnum.Effect_SubCriticalHit)
                        {
                            PlayerFields result = PlayerFields.CriticalHit;
                            return(result);
                        }
                        break;
                    }
                }
                else
                {
                    if (effect == EffectsEnum.Effect_SubDamageBonusPercent)
                    {
                        PlayerFields result = PlayerFields.DamageBonusPercent;
                        return(result);
                    }
                    switch (effect)
                    {
                    case EffectsEnum.Effect_SubDodge:
                    {
                        PlayerFields result = PlayerFields.TackleEvade;
                        return(result);
                    }

                    case EffectsEnum.Effect_SubLock:
                    {
                        PlayerFields result = PlayerFields.TackleBlock;
                        return(result);
                    }
                    }
                }
            }
            throw new System.Exception(string.Format("'{0}' has no binded caracteristic", effect));
        }
Exemplo n.º 31
0
 public MPBuff(uint uid,short delta, short duration, int sourceid, short sourcespellid,EffectsEnum effect,int delay)
     : base(uid,delta, duration, sourceid, sourcespellid,delay)
 {
     this.Effect = effect;
 }
Exemplo n.º 32
0
 public APBuff(uint uid, short delta, short duration, int sourceid, short sourcespellid, EffectsEnum effect, int delay)
     : base(uid, delta, duration, sourceid, sourcespellid, delay)
 {
     this.Effect = effect;
 }
Exemplo n.º 33
0
        public static void ExoCommand(string value, WorldClient client)
        {
            if (!client.Character.Inventory.Exist(TokenId, ExoTokenQuantity))
            {
                client.Character.Reply("Vous devez posséder " + ExoTokenQuantity + "x <b>[Ticket Doré]</b>");
                return;
            }

            var splitted = value.Split(null);

            if (splitted.Count() < 2)
            {
                client.Character.Reply("indentifieur invalide, .exo [pa,pm,po] [anneau1,anneau2,coiffe,cape,ceinture,bottes,amulette]");
                return;
            }
            string type = splitted[0];

            string position = splitted[1];

            EffectsEnum effect = 0;

            CharacterInventoryPositionEnum pos = CharacterInventoryPositionEnum.INVENTORY_POSITION_NOT_EQUIPED;

            switch (type)
            {
            case "pa":
                effect = EffectsEnum.Effect_AddAP_111;
                break;

            case "pm":
                effect = EffectsEnum.Effect_AddMP_128;
                break;

            case "po":
                effect = EffectsEnum.Effect_AddRange;
                break;

            default:
                client.Character.Reply("indentifieur invalide, .exo [pa,pm,po] [anneau1,anneau2,coiffe,cape,ceinture,bottes,amulette]");
                return;
            }

            switch (position)
            {
            case "anneau1":
                pos = CharacterInventoryPositionEnum.INVENTORY_POSITION_RING_LEFT;
                break;

            case "anneau2":
                pos = CharacterInventoryPositionEnum.INVENTORY_POSITION_RING_RIGHT;
                break;

            case "coiffe":
                pos = CharacterInventoryPositionEnum.ACCESSORY_POSITION_HAT;
                break;

            case "cape":
                pos = CharacterInventoryPositionEnum.ACCESSORY_POSITION_CAPE;
                break;

            case "ceinture":
                pos = CharacterInventoryPositionEnum.ACCESSORY_POSITION_BELT;
                break;

            case "bottes":
                pos = CharacterInventoryPositionEnum.ACCESSORY_POSITION_BOOTS;
                break;

            case "amulette":
                pos = CharacterInventoryPositionEnum.ACCESSORY_POSITION_AMULET;
                break;

            default:
                client.Character.Reply("indentifieur invalide, .exo [pa,pm,po] [anneau1,anneau2,coiffe,cape,ceinture,bottes,amulette]");
                break;
            }

            CharacterItemRecord item = client.Character.Inventory.GetEquipedItems().FirstOrDefault(x => x.PositionEnum == pos);

            if (item == null)
            {
                client.Character.Reply("Vous devez équiper un item a cet emplacement.");
                return;
            }

            if (item.FirstEffect <EffectInteger>(effect) != null)
            {
                client.Character.Reply("L'effet est déja présent...");
                return;
            }

            client.Character.Inventory.SetItemPosition(item.UId, CharacterInventoryPositionEnum.INVENTORY_POSITION_NOT_EQUIPED, item.Quantity);

            var token = client.Character.Inventory.GetFirstItem(TokenId, ExoTokenQuantity);

            client.Character.Inventory.RemoveItem(token.UId, ExoTokenQuantity);

            item.AddEffectInteger(effect, 1);
            client.Character.Inventory.OnItemModified(item);
            client.Character.Reply("L'item a été exo.");
            client.Character.SpellAnim(2158);
        }