public Form1() { InitializeComponent(); this.DoubleBuffered = true; this.MinimizeBox = false; this.MaximizeBox = false; this.FormBorderStyle = FormBorderStyle.FixedSingle; passwordView = new PasswordView(passwordUI); checksum = new Checksum(passwordView, groupBox1); locationComboBox.Items.Add("Hobbiton"); locationComboBox.Items.Add("Brandywine Bridge"); locationComboBox.Items.Add("Farmer Maggot"); locationComboBox.Items.Add("Ferry"); locationComboBox.Items.Add("Crickhollow"); locationComboBox.Items.Add("Tom Bombadil's House"); locationComboBox.Items.Add("Barrow Downs Stones"); locationComboBox.Items.Add("Crossroads"); locationComboBox.Items.Add("Rivendell"); locationComboBox.Items.Add("Moria entrance"); locationComboBox.Items.Add("Moria 1 (glitched)"); locationComboBox.Items.Add("Moria 2 (glitched)"); locationComboBox.Items.Add("(invalid)"); locationComboBox.DropDownStyle = ComboBoxStyle.DropDownList; inventoryCheckboxes = new InventoryCheckBox[54]; for (int i = 0; i < 54; ++i) { inventoryCheckboxes[i] = new InventoryCheckBox(i, this.groupBox1, passwordView, checksum); inventoryCheckboxes[i].GetCheckboxUIElement().CheckedChanged += OnInventoryCheckboxCheckChanged; } int xDisp = 128; characterUIs = new List <CharacterUI>(); characterUIs.Add(new CharacterUI("Samwise", this.groupBox1, 9 + (xDisp * 0), 302, passwordView, checksum, 0)); characterUIs.Add(new CharacterUI("Merry", this.groupBox1, 9 + (xDisp * 1), 302, passwordView, checksum, 3)); characterUIs.Add(new CharacterUI("Frodo", this.groupBox1, 9 + (xDisp * 2), 302, passwordView, checksum, 6)); characterUIs.Add(new CharacterUI("Pippin", this.groupBox1, 9 + (xDisp * 3), 302, passwordView, checksum, 9)); characterUIs.Add(new CharacterUI("Legolas", this.groupBox1, 9 + (xDisp * 0), 432, passwordView, checksum, 12)); characterUIs.Add(new CharacterUI("Aragorn", this.groupBox1, 9 + (xDisp * 1), 432, passwordView, checksum, 15)); characterUIs.Add(new CharacterUI("Gimli", this.groupBox1, 9 + (xDisp * 2), 432, passwordView, checksum, 18)); characterUIs.Add(new CharacterUI("Gandalf", this.groupBox1, 9 + (xDisp * 3), 432, passwordView, checksum, 21)); UpdateLocationDropdownUI(); UpdateInventoryCheckboxUI(); checksum.UpdateButtonState(passwordView.IsValidChecksum()); }
private void OnCharacterLevelWeaponArmorUIChange() { if (shouldUpdatePasswordString) { passwordView.UpdatePassword_Lines1And2( levelLabel.Enabled, (int)levelNumericUpDown.Value, weaponComboBox.SelectedIndex, armorComboBox.SelectedIndex, passwordStartIndex); } checksumButton.UpdateButtonState(passwordView.IsValidChecksum()); }
private void OnInventoryCheckboxCheckChanged(object sender, EventArgs e) { // Update password based on the checkbox UI int inventoryCheckboxIndex = 0; int passwordStringIndex = 0; char[] inventoryCharacterCodes = new char[12]; for (int column = 0; column < 6; column++) { { int l0 = 0; l0 |= inventoryCheckboxes[inventoryCheckboxIndex + 0].GetChecked() ? 0x1 : 0; l0 |= inventoryCheckboxes[inventoryCheckboxIndex + 1].GetChecked() ? 0x2 : 0; l0 |= inventoryCheckboxes[inventoryCheckboxIndex + 2].GetChecked() ? 0x4 : 0; l0 |= inventoryCheckboxes[inventoryCheckboxIndex + 3].GetChecked() ? 0x8 : 0; l0 |= inventoryCheckboxes[inventoryCheckboxIndex + 4].GetChecked() ? 0x10 : 0; inventoryCharacterCodes[passwordStringIndex] = CharacterCode.IndexToChar(l0); passwordStringIndex++; inventoryCheckboxIndex += 5; } { int l1 = 0; l1 |= inventoryCheckboxes[inventoryCheckboxIndex + 0].GetChecked() ? 0x1 : 0; l1 |= inventoryCheckboxes[inventoryCheckboxIndex + 1].GetChecked() ? 0x2 : 0; l1 |= inventoryCheckboxes[inventoryCheckboxIndex + 2].GetChecked() ? 0x4 : 0; l1 |= inventoryCheckboxes[inventoryCheckboxIndex + 3].GetChecked() ? 0x8 : 0; inventoryCharacterCodes[passwordStringIndex] = CharacterCode.IndexToChar(l1); passwordStringIndex++; inventoryCheckboxIndex += 4; } } passwordView.UpdatePassword_Inventory(inventoryCharacterCodes); checksum.UpdateButtonState(passwordView.IsValidChecksum()); }