public bool DoEffects(BaseCreature bc) { string modName = Serial.ToString(); bc.AddStatMod(new StatMod(StatType.Str, bc.Serial + "Str", (int)(bc.RawStr * Bonus), Duration)); bc.AddStatMod(new StatMod(StatType.Int, bc.Serial + "Int", (int)(bc.RawInt * Bonus), Duration)); bc.AddStatMod(new StatMod(StatType.Dex, bc.Serial + "Dex", (int)(bc.RawDex * Bonus), Duration)); bc.PlaySound(0x1EA); bc.FixedParticles(0x373A, 10, 15, 5018, EffectLayer.Waist); bc.TempDamageBonus = DamageBonus; bc.Loyalty = BaseCreature.MaxLoyalty; m_Table.Add(bc, DateTime.UtcNow); Timer.DelayCall(Duration + CoolDown, new TimerStateCallback(RemoveInfluence), bc); Consume(); return(true); }
/** * Evento invocado quando uma criatura é invocada por um jogador. */ public void OnSummon(Jogador caster, BaseCreature creature, ref Point3D p, ref TimeSpan duration) { SistemaTalento st = caster.getSistemaTalento(); //Aumenta o duração if (st.possuiHabilidadeTalento(IdHabilidadeTalento.conjuracaoExtendida)) { caster.SendMessage("Duracao normal: {0}", duration); double totalDuracaoSegundos = duration.TotalSeconds * 1.5; duration = TimeSpan.FromSeconds(totalDuracaoSegundos); caster.SendMessage("Duracao alterada: {0}", duration); } //Aumenta a resistencia das conjurações if (st.possuiHabilidadeTalento(IdHabilidadeTalento.conjuracaoResistente)) { creature.AddResistanceMod(new ResistanceMod(ResistanceType.Cold, 5)); creature.AddResistanceMod(new ResistanceMod(ResistanceType.Energy, 5)); creature.AddResistanceMod(new ResistanceMod(ResistanceType.Fire, 5)); creature.AddResistanceMod(new ResistanceMod(ResistanceType.Physical, 5)); creature.AddResistanceMod(new ResistanceMod(ResistanceType.Poison, 5)); caster.SendMessage("Bonus resistencia"); } //Aumenta os atributos da conjuração if (st.possuiHabilidadeTalento(IdHabilidadeTalento.conjuracaoResistente)) { HabilidadeNode node = st.getHabilidades()[IdHabilidadeTalento.conjuracaoResistente]; StatMod statusBonus = new StatMod(StatType.All, "TalentoConjuracaoForte", node.Nivel * 10, TimeSpan.FromDays(99)); creature.AddStatMod(statusBonus); caster.SendMessage("Bonus Status"); } }
public virtual void AddEffect( BaseCreature pet ) { pet.AddStatMod( new StatMod( StatType.Str, "[Tasty Treat] Str", (int) ( pet.Str * StatBonus ), Duration ) ); pet.AddStatMod( new StatMod( StatType.Dex, "[Tasty Treat] Dex", (int) ( pet.Dex * StatBonus ), Duration ) ); pet.AddStatMod( new StatMod( StatType.Int, "[Tasty Treat] Int", (int) ( pet.Int * StatBonus ), Duration ) ); }
public virtual void AddEffect(BaseCreature pet) { pet.AddStatMod(new StatMod(StatType.Str, "[Tasty Treat] Str", (int)(pet.Str * StatBonus), Duration)); pet.AddStatMod(new StatMod(StatType.Dex, "[Tasty Treat] Dex", (int)(pet.Dex * StatBonus), Duration)); pet.AddStatMod(new StatMod(StatType.Int, "[Tasty Treat] Int", (int)(pet.Int * StatBonus), Duration)); }