public override void Edit(Monster monster) { InputRanks d = new InputRanks(); d.SetRanks(slotCost); if (d.ShowDialog() == DialogResult.OK) { AbstractAbility p = (AbstractAbility)this.GetParent(); slotCost = d.NumberOfRanks(); chargeTime = 20 + 5 * d.NumberOfRanks(); powerMult = 1.5 + 0.5 * (d.NumberOfRanks() - 1); name = "Countdown - " + d.NumberOfRanks().ToString() + " ranks"; if (p.TargetType == TargetType.All || p.TargetType == TargetType.Group) { chargeTime += 10; } } }
public override void Edit(Monster monster) { if (monster.Rank.IsMinibossOrBoss()) { InputRanks d = new InputRanks(); d.SetRanks(ranks); if (d.ShowDialog() == DialogResult.OK) { ranks = d.NumberOfRanks(); slotCost = d.NumberOfRanks(); name = "Longer Status - Status Durations: +" + d.NumberOfRanks() + ", apply manually."; } } else { Complain(6); } }
public override bool Prepare(Monster m) { if (this.GetParent() == m.BasicAttack) { Complain(4); return false; } if (base.Prepare(m)) { InputRanks d = new InputRanks(); if (d.ShowDialog() == DialogResult.OK) { AbstractAbility p = (AbstractAbility)this.GetParent(); slotCost = d.NumberOfRanks(); chargeTime = 20 + 5 * d.NumberOfRanks(); powerMult = 1.5 + 0.5 * (d.NumberOfRanks() - 1); name += " - " + d.NumberOfRanks().ToString() + " ranks"; if (p.TargetType == TargetType.All || p.TargetType == TargetType.Group) { chargeTime += 10; } return true; } else { return false; } } else { return false; } }
public override void Edit(Monster monster) { if (monster.Rank.IsMinibossOrBoss()) { //figure out how many ranks are being taken InputRanks d = new InputRanks(); d.SetRanks(ranks); if (d.ShowDialog() == DialogResult.OK) { slotCost = d.NumberOfRanks(); cosMod = 5 * d.NumberOfRanks(); ranks = d.NumberOfRanks(); name = "High CoS: +" + cosMod.ToString() + "%"; } } else { Complain(6); } }
public override bool Prepare(Monster m) { if (this.GetParent() == m.BasicAttack) { Complain(4); return false; } if (base.Prepare(m)) { if (m.Rank.IsMinibossOrBoss()) { //figure out how many ranks are being taken InputRanks d = new InputRanks(); if (d.ShowDialog() == DialogResult.OK) { ranks = d.NumberOfRanks(); slotCost = d.NumberOfRanks(); name = "Longer Status - Status Durations: +" + d.NumberOfRanks() + ", apply manually."; return true; } else { return false; } } else { slotCost = 1; name = "Longer Status - Status Durations +1, apply manually."; return true; } } else { return false; } }
public override bool Prepare(Monster m) { if (base.Prepare(m)) { if (m.Rank.IsMinibossOrBoss()) { //figure out how many ranks are being taken InputRanks d = new InputRanks(); if (d.ShowDialog() == DialogResult.OK) { slotCost = d.NumberOfRanks(); cosMod = 5 * d.NumberOfRanks(); ranks = d.NumberOfRanks(); name = "High CoS: +" + cosMod.ToString() + "%"; return true; } else { return false; } } else { slotCost = 1; cosMod = 5; name = "+5 CoS"; return true; } } else { return false; } }
public override void Edit(Monster monster) { int slotSurcharge; if (monster.Tier == 1) { slotSurcharge = 2; } else { slotSurcharge = 0; } InputRanks d = new InputRanks(); d.SlotSurcharge = slotSurcharge; d.SetRanks(ranks); if (d.ShowDialog() == DialogResult.OK) { ranks = d.NumberOfRanks(); slotCost = ranks + slotSurcharge; critRange = 5 * ranks; name = "Critical : " + ranks.ToString() + " Ranks"; } }
public override bool Prepare(Monster m) { if (base.Prepare(m)) { AbstractAbility abs = (AbstractAbility)GetParent(); if (abs.HasKeyword(Keyword.Weapon)) { int slotSurcharge; if (m.Tier == 1) { slotSurcharge = 2; } else { slotSurcharge = 0; } InputRanks d = new InputRanks(); d.SlotSurcharge = slotSurcharge; if (d.ShowDialog() == DialogResult.OK) { ranks = d.NumberOfRanks(); slotCost = ranks + slotSurcharge; critRange = 5 * ranks; name = "Critical : " + ranks.ToString() + " Ranks"; return true; } else { return false; } } else { Complain(7); return false; } } else { return false; } }
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; } }