示例#1
0
        public void DeleteCharacter(int accountId, int characterId)
        {
            var pData = Authentication.FindByAccountId(accountId);
            var close = false;

            // Somente é usado para enviar os personagens caso esteja online.
            var characters = new CharacterDatabase(pData);

            characters.Delete(characterId);

            if (pData != null)
            {
                // Carrega os personagens e envia somente se o jogador estiver conectado.
                if (pData.GameState == GameState.Characters && pData.Connected)
                {
                    // Por ser usado await, o próprio método deve fechar a conexão com o banco.
                    characters.SendCharactersAsync();
                }
                else
                {
                    close = true;
                }
            }
            else
            {
                close = true;
            }

            // Fecha o banco quando os personagens não são enviados.
            if (close)
            {
                characters.Close();
            }
        }
示例#2
0
        /// <summary>
        /// deletes the chosen Character with menu item or appropriate hotkey
        /// </summary>
        private void OnCharacterDelete(object sender, EventArgs e)
        {
            // get selected Character, if any
            var selected = GetSelectedCharacter();

            if (selected == null)
            {
                return;
            }

            // display confirmation
            if (MessageBox.Show(this, $"Are you sure you want to delete {selected.Name}?",
                                "Confirm Delete", MessageBoxButtons.YesNo,
                                MessageBoxIcon.Question) != DialogResult.Yes)
            {
                return;
            }

            // attempt to delete the Character
            try
            {
                _characters.Delete(selected.Id);
            }
            catch (Exception ex)
            {
                DisplayError(ex);
            };

            BindList();
        }
示例#3
0
        private void OnCharacterDelete(object sender, EventArgs e)
        {
            var selected = GetSelectedCharacter();

            if (selected == null)
            {
                return;
            }

            if (MessageBox.Show(this, $"Are you sure you want to delete {selected.Name}?",
                                "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
            {
                return;
            }

            _characters.Delete(selected.Id);
            BindList();
        }
示例#4
0
        private void deleteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            var selected = GetSelectedCharacter();

            if (selected == null)
            {
                return;
            }

            if (MessageBox.Show(this, $"Really delete {selected.Name}?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
            {
                return;
            }

            _characters.Delete(selected.Id);

            BindList();
        }
示例#5
0
        private void OnCharacterDelete(object sender, EventArgs e)
        {
            //Get selected character
            var selected = GetSelectedCharacter();

            if (selected == null)
            {
                return;
            }

            //Display confirmation
            if (MessageBox.Show(this, $"Are you sure you want to delete \"{selected.Name}\"?",
                                "Delete Kaiju", MessageBoxButtons.YesNo,
                                MessageBoxIcon.Question) != DialogResult.Yes)
            {
                return;
            }

            _kaiju.Delete(selected.Id);
            BindList();
        }