public override void Edit(Monster monster) { InputAdditionalCost dialog = new InputAdditionalCost(5, 20); if (dialog.ShowDialog() == DialogResult.OK) { if (dialog.Result() == AdditionalCost.Delay) { //delay cost chosen delayMod = 5; mpScale = 0; name = "Drain Health (Cost: +5D)"; } else { //MP Cost chosen mpScale = 20; delayMod = 0; name = "Drain Health (Cost: +20 MP/Tier)"; } } }
public override bool Prepare(Monster m) { if (this.GetParent() == m.BasicAttack) { Complain(4); return false; } if (base.Prepare(m)) { InputAdditionalCost dialog = new InputAdditionalCost(5, 20); if (dialog.ShowDialog() == DialogResult.OK) { if (dialog.Result() == AdditionalCost.Delay) { //delay cost chosen delayMod = 5; name += " (Cost: +5D)"; } else { //MP Cost chosen mpScale = 20; name += " (Cost: +20 MP/Tier)"; } return true; } else { return false; } } return false; }
public override bool Prepare(Monster m) { if (base.Prepare(m)) { int tmpSlotCost = 0; if (modifiedAbility.TargetType == TargetType.Single) { tmpSlotCost = 3; } else { tmpSlotCost = 7; } if (m.Tier < 4) { slotCost = tmpSlotCost + 2; } else { slotCost = tmpSlotCost; } if (this.GetParent() != m.BasicAttack) { InputAdditionalCost dialog = new InputAdditionalCost(5, 20); if (dialog.ShowDialog() == DialogResult.OK) { if (dialog.Result() == AdditionalCost.Delay) { //delay cost chosen delayMod = 5; name += " (Cost: +5D)"; } else { //MP Cost chosen mpScale = 20; name += " (Cost: +20 MP/Tier)"; } return true; } else { return false; } } else { delayMod = 5; name += " (Cost: +5D)"; return true; } } else { return false; } }
public override bool Prepare(Monster m) { if (this.GetParent() == m.BasicAttack) { Complain(4); return false; } if (base.Prepare(m)) { if (m.Tier == 1) { slotCost += 2; } InputTectonicType dialog = new InputTectonicType(); if (dialog.ShowDialog() == DialogResult.OK) { if (dialog.NonElemental()) { name += " - Strips Element"; slotCost += 1; stripsElement = true; InputAdditionalCost dialog2 = new InputAdditionalCost(5, 20); if (dialog2.ShowDialog() == DialogResult.OK) { if (dialog2.Result() == AdditionalCost.Delay) { name += " (Cost: +5D)"; delayMod = 5; } else { name += " (Cost: +20 MP/Tier)"; mpScale = 20; } } } if (dialog.Result() == TectonicResult.PowerMod) { name += " - Increased Power"; powerMod = 3; } else { name += " - Delays struck targets by 10D"; } return true; } else { return false; } } else { return false; } }
public override void Edit(Monster monster) { if (monster.Tier == 1) { slotCost = 3; } else { slotCost = 1; } InputTectonicType dialog = new InputTectonicType(); if (dialog.ShowDialog() == DialogResult.OK) { name = "Tectonic"; if (dialog.NonElemental()) { name += " - Strips Element"; slotCost += 1; stripsElement = true; InputAdditionalCost dialog2 = new InputAdditionalCost(5, 20); if (dialog2.ShowDialog() == DialogResult.OK) { if (dialog2.Result() == AdditionalCost.Delay) { name += " (Cost: +5D)"; delayMod = 5; mpScale = 0; } else { name += " (Cost: +20 MP/Tier)"; delayMod = 0; mpScale = 20; } } } else { delayMod = 0; mpScale = 0; stripsElement = false; } if (dialog.Result() == TectonicResult.PowerMod) { name += " - Increased Power"; powerMod = 3; } else { name += " - Delays struck targets by 10D"; powerMod = 0; } } }
public override void Edit(Monster monster) { if (monster.Rank.IsMinibossOrBoss()) { //figure out how many ranks are being taken InputRanks d = new InputRanks(); InputAdditionalCost d1 = new InputAdditionalCost(5, 20); d.SetRanks(ranks); if (d.ShowDialog() == DialogResult.OK && d1.ShowDialog() == DialogResult.OK) { slotCost = d.NumberOfRanks(); powerMod = 2 * d.NumberOfRanks(); ranks = d.NumberOfRanks(); string additionalCostString; if (d1.Result() == AdditionalCost.Delay) { additionalCostString = " (Cost: +5D)"; delayMod = 5; mpScale = 0; } else { additionalCostString = " (Cost: +20 MP/Tier)"; mpScale = 20; delayMod = 0; } name = "Power Strike: " + ranks.ToString() + " Ranks" + additionalCostString; } } else { Complain(6); } }
public override bool Prepare(Monster m) { bool allowMP = true; if (this.GetParent() == m.BasicAttack) { allowMP = false; } if (base.Prepare(m)) { if (!allowMP) { delayMod = 5; if (m.Rank.IsMinibossOrBoss()) { InputRanks d = new InputRanks(); if (d.ShowDialog() == DialogResult.OK) { slotCost = d.NumberOfRanks(); name = "Power Strike: " + d.NumberOfRanks() + " Ranks (Cost: +5D)"; powerMod = 2 * d.NumberOfRanks(); ranks = d.NumberOfRanks(); return true; } else { return false; } } else { slotCost = 1; ranks = 1; name = "Power Strike (Cost: +5D)"; powerMod = 2; return true; } } InputAdditionalCost d1 = new InputAdditionalCost(5, 20); if (d1.ShowDialog() == DialogResult.OK) { string additionalCostString; if (d1.Result() == AdditionalCost.Delay) { delayMod = 5; additionalCostString = " (Cost: +5D)"; } else { mpScale = 20; additionalCostString = " (Cost: +20 MP/Tier)"; } if (m.Rank.IsMinibossOrBoss()) { //figure out how many ranks are being taken InputRanks d = new InputRanks(); d.SlotsPerRank = 1; if (d.ShowDialog() == DialogResult.OK) { ranks = d.NumberOfRanks(); slotCost = d.NumberOfRanks(); name = "Power Strike: " + d.NumberOfRanks() + " Ranks" + additionalCostString; powerMod = 2 * d.NumberOfRanks(); return true; } else { return false; } } else { slotCost = 1; ranks = 1; name = "Power Strike" + additionalCostString; powerMod = 2; return true; } } else { return false; } } else { return false; } }
public override void Edit(Monster monster) { string additionalCostString; InputAdditionalCost dialog = new InputAdditionalCost(5, 20); if (dialog.ShowDialog() == DialogResult.OK) { if (dialog.Result() == AdditionalCost.Delay) { //delay cost chosen delayMod = 5; mpScale = 0; additionalCostString = " (Cost: +5D)"; } else { //MP Cost chosen mpScale = 20; delayMod = 0; additionalCostString = " (Cost: +20 MP/Tier)"; } name = "Row Cutter" + additionalCostString; } }
public override void Edit(Monster monster) { string additionalCostString; InputAdditionalCost dialog = new InputAdditionalCost(10, 40); if (dialog.ShowDialog() == DialogResult.OK) { if (dialog.Result() == AdditionalCost.Delay) { //delay cost chosen delayMod = 10; mpScale = 0; additionalCostString = " (Cost: +10D)"; } else { //MP Cost chosen mpScale = 40; delayMod = 0; additionalCostString = " (Cost: +40 MP/Tier)"; } name = "Group Attack" + additionalCostString; } }
public override bool Prepare(Monster m) { if (this.GetParent() == m.BasicAttack) { Complain(4); return false; } if (base.Prepare(m)) { InputAdditionalCost dialog = new InputAdditionalCost(10, 40); if (dialog.ShowDialog() == DialogResult.OK) { string additionalCostString; if (dialog.Result() == AdditionalCost.Delay) { //delay cost chosen delayMod = 10; additionalCostString = " (Cost: +10D)"; } else { //MP Cost chosen mpScale = 40; additionalCostString = " (Cost: +40 MP/Tier)"; } name += additionalCostString; return true; } else { return false; } } return false; }