Beispiel #1
0
        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());
        }
Beispiel #2
0
        private void OnCharacterLevelWeaponArmorUIChange()
        {
            if (shouldUpdatePasswordString)
            {
                passwordView.UpdatePassword_Lines1And2(
                    levelLabel.Enabled,
                    (int)levelNumericUpDown.Value,
                    weaponComboBox.SelectedIndex,
                    armorComboBox.SelectedIndex,
                    passwordStartIndex);
            }

            checksumButton.UpdateButtonState(passwordView.IsValidChecksum());
        }
Beispiel #3
0
        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());
        }