private void AddSavedAbility(AddSavedTrait trait, string creatureName) { Ability newAbility = trait.ability; if (!newAbility.isSpell) { newAbility.Description = trait.ability.Description.Replace("{CREATURENAME}", creatureName).Replace("</br>", Environment.NewLine); Monster._Abilities.Add(newAbility); string mod = ""; if (TraitsList.Items.Contains(newAbility.Title)) { int modInt = 0; foreach (string item in TraitsList.Items) { if (item.Contains(newAbility.Title)) { modInt++; } } if (modInt > 0) { mod = " " + modInt.ToString(); } } TraitsList.Items.Add("Ability: " + newAbility.Title + mod); } else { Monster._Abilities.Add(newAbility); string mod = ""; if (TraitsList.Items.Contains("Ability: " + newAbility.Title)) { int modInt = 0; foreach (string item in TraitsList.Items) { if (item.Contains(newAbility.Title)) { modInt++; } } if (modInt > 0) { mod = " " + modInt.ToString(); } } TraitsList.Items.Add("Ability: " + newAbility.Title + mod); } }
private void AddSavedLegendary(AddSavedTrait trait, string creatureName) { Legendary newLegendary = trait.legendary; foreach (LegendaryTrait _trait in newLegendary.Traits) { _trait.Ability = _trait.Ability.Replace("{CREATURENAME}", creatureName).Replace("</br>", Environment.NewLine); } Monster._Legendaries.Add(newLegendary); string mod = ""; if (TraitsList.Items.Contains("Legendary: " + newLegendary.Title)) { int modInt = 0; foreach (string item in TraitsList.Items) { if (item.Contains(newLegendary.Title)) { modInt++; } } if (modInt > 0) { mod = " " + modInt.ToString(); } } TraitsList.Items.Add("Legendary: " + newLegendary.Title + mod); }
private void AddSavedReaction(AddSavedTrait trait, string creatureName) { Ability newReaction = trait.reaction; newReaction.Description = trait.reaction.Description.Replace("{CREATURENAME}", creatureName).Replace("</br>", Environment.NewLine); Monster._Reactions.Add(newReaction); string mod = ""; if (TraitsList.Items.Contains("Reaction: " + newReaction.Title)) { int modInt = 0; foreach (string item in TraitsList.Items) { if (item.Contains(newReaction.Title)) { modInt++; } } if (modInt > 0) { mod = " " + modInt.ToString(); } } TraitsList.Items.Add("Reaction: " + newReaction.Title + mod); }
private void AddSaved_Click(object sender, EventArgs e) { AddSavedTrait trait = new AddSavedTrait(); string creatureName = Monster.CreatureName; if (String.IsNullOrEmpty(creatureName)) { creatureName = "creature"; } trait.FormClosing += (xsender, xe) => { if (trait.OGLCreatureAdd == "") { if (trait.ability != null) { AddSavedAbility(trait, creatureName); } else if (trait.action != null) { AddSavedAction(trait, creatureName); } else if (trait.reaction != null) { AddSavedReaction(trait, creatureName); } else if (trait.legendary != null) { AddSavedLegendary(trait, creatureName); } } else { foreach (OGL_Ability _ability in OGLContent.OGL_Abilities) { if (_ability.OGL_Creature == trait.OGLCreatureAdd) { trait.ability = null; trait.action = null; trait.reaction = null; trait.legendary = null; trait.ability = _ability; AddSavedAbility(trait, creatureName); } } foreach (OGL_Ability _action in OGLContent.OGL_Actions) { if (_action.OGL_Creature == trait.OGLCreatureAdd) { trait.ability = null; trait.action = null; trait.reaction = null; trait.legendary = null; trait.action = _action; AddSavedAction(trait, creatureName); } } foreach (OGL_Ability _reaction in OGLContent.OGL_Reactions) { if (_reaction.OGL_Creature == trait.OGLCreatureAdd) { trait.ability = null; trait.action = null; trait.reaction = null; trait.legendary = null; trait.reaction = _reaction; AddSavedReaction(trait, creatureName); } } foreach (OGL_Legendary _legendary in OGLContent.OGL_Legendary) { if (_legendary.OGL_Creature == trait.OGLCreatureAdd) { trait.ability = null; trait.action = null; trait.reaction = null; trait.legendary = null; trait.legendary = _legendary; AddSavedLegendary(trait, creatureName); } } } }; trait.Show(); }