public override DialogueSpell GetSpellEffectDialogue(Character caster, Character target) { DialogueSpell output = new DialogueSpell(name); int damage = Fight.DamageCalculation(35, caster.attributes.GetSecondaryAttributeValue(SecondaryAttribute.PhysicalDamage), 0); output.AddNode(new DialogueSpeech("DANK DUNK! " + caster.name + " hits through " + target.name + "'s armor!")); output.AddNode(new DialogueSpeech(damage + " points of damage!!!") .AddEffect() .AddHandler(new DialogueEffectDamageCharacterHandler(target, damage))); return(output); }
public override DialogueSpell GetSpellEffectDialogue(Character caster, Character target) { DialogueSpell output = new DialogueSpell(name); output.AddNode(new DialogueSpeech(caster.name + " shouts a battle cry!")); output.AddNode(new DialogueSpeech(caster.name + " physical damages are increased.") .AddEffect() .AddHandler(new DialogueEffectBuffCharacterHandler(caster, caster, Buff.battleCrySource))); output.AddNode(new DialogueSpeech(target.name + " physical damages are decreased.") .AddEffect() .AddHandler(new DialogueEffectBuffCharacterHandler(caster, target, Buff.battleCryTarget))); return(output); }
public override DialogueSpell GetSpellEffectDialogue(Character caster, Character target) { DialogueSpell output = new DialogueSpell(name); string text; if (caster == target) { text = caster.name + " impregnates " + caster.weapon.name + " with holy energy."; } else { text = caster.name + " impregnates " + target.name + "'s " + target.weapon.name + " with holy energy."; } output.AddNode(new DialogueSpeech(text) .AddEffect() .AddHandler(new DialogueEffectBuffWeaponHandler(caster, target.weapon, Buff.blessing))); return(output); }
public override DialogueSpell GetSpellEffectDialogue(Character caster, Character target) { DialogueSpell output = new DialogueSpell(name); int damage = caster.weapon.GetDamage(caster, target); string text; if (caster.HasWeapon()) { text = "Using " + caster.weapon.name + ", " + caster.name + " attacks " + target.name + "."; } else { text = "Using their own hands as a weapon, " + caster.name + " attacks " + target.name + "."; } output.AddNode(new DialogueSpeech(text)); output.AddNode(new DialogueSpeech(damage + " damages!") .AddEffect() .AddHandler(new DialogueEffectDamageCharacterHandler(target, damage))); return(output); }
public override DialogueSpell GetSpellEffectDialogue(Character caster, Character target) { DialogueSpell output = new DialogueSpell(name); bool blessing = caster.weapon.HasBuff(Buff.blessing); caster.weapon.physicalDamage.AddModification(caster.attributes.GetMainAttributeValue(MainAttribute.Strength)); if (blessing) { caster.weapon.lightDamage.AddModification(caster.attributes.GetMainAttributeValue(MainAttribute.Spirit)); } int damage = caster.weapon.GetDamage(caster, target); caster.weapon.physicalDamage.RemoveModification(caster.attributes.GetMainAttributeValue(MainAttribute.Strength)); if (blessing) { caster.weapon.lightDamage.RemoveModification(caster.attributes.GetMainAttributeValue(MainAttribute.Spirit)); } output.AddNode(new DialogueSpeech(caster.name + " strikes with a furious blow, crushing " + target.name + ".")); output.AddNode(new DialogueSpeech(damage + " damages!") .AddEffect() .AddHandler(new DialogueEffectDamageCharacterHandler(target, damage))); return(output); }