public SingleAttack(Character Attacker, List <Character> CanAttack, Master_Attacker ParentForm, Character preSelected) { InitializeComponent(); _attacker = Attacker; _canAttack = CanAttack; _parentForm = ParentForm; foreach (Character attackableChar in _canAttack) { comboBox1.Items.Add(attackableChar.CombatStuff.CombatName); } comboBox1.SelectedIndex = 0; if (preSelected != null) { comboBox1.SelectedItem = preSelected.CombatStuff.CombatName; } comboBoxAttackerWeapon.DataSource = Utilities.GetWeaponNames(); comboBoxAttackerWeapon.SelectedItem = _attacker.CombatStuff.CombatWeapon.ItemName; label1.Text = _attacker.CombatStuff.CombatName; comboBoxAttackerWeapon.SelectedText = _attacker.CombatStuff.CombatWeapon.ItemName; txtBoxDefensiveRoll.Text = Math.Round(Utilities.addedRandomness.NextDouble() * 20 + 0.5).ToString(); if (_attacker.CombatStuff.rollSet) { txtBoxOffensiveRoll.Text = _attacker.CombatStuff.CombatRoll.ToString(); } else { txtBoxOffensiveRoll.Text = Math.Round(Utilities.addedRandomness.NextDouble() * 20 + 0.5).ToString(); } }
public static void attemptToBeginCombat() { if (!_inCombatChars.Any(c => !c.CombatStuff.readyForCombat && c.CharTypeTag != "")) { Master_Attacker frmCreator = new Master_Attacker(); frmCreator.Show(); } }
private void FOLLOWTHETACO_Click(object sender, EventArgs e) { List <AttackOutcome> followedTacos = new List <AttackOutcome>(); foreach (AttackOutcome tacoToFollow in allAttacks) { AttackOutcome followedTaco = CombatScripts.RunCombat(tacoToFollow.Attacker, tacoToFollow.Defender, tacoToFollow.attackRoll, tacoToFollow.defendRoll, null); followedTaco.Attacker.CombatStuff.AttackNotes = followedTaco.Notes; followedTaco.Defender.CombatStuff.DefendNotes = followedTaco.Notes; followedTacos.Add(followedTaco); } CombatScripts.fatigueCharactersAndRecordCombat(followedTacos); foreach (AttackOutcome Whack in followedTacos) { CombatScripts.applyAttackOutcome(Whack); } EffectHolder.ClearUselessEffects(); CombatHolder.MoveAttackingCharsToHasAttackedChars(); if (CombatHolder._masterOfDeclarations != null) { CombatHolder._masterOfDeclarations.UpdateRTB(); } CombatHolder.updateCombatDeclarations(); AfterCrits frmCreator = new AfterCrits(); frmCreator.Show(); Master_Attacker frmCloser = this; frmCloser.Hide(); }