bekvon/Residence — pull request #86 by javacraft (2013-06-10 16:10:57+00:00)
Title: Safeguarding users from themselves and /res remove

Greeting T:

One of our intrepid members just came across a **/res remove** "feature" that deletes a residence without confirmation. Here are the steps to re-create the issue:
1. Select a residence area and create it, let call it 'Test';
2. While standing in the residence type **/res remove**, which results in a confirmation request;
3. Type **/res remove** again. The residence is deleted, even though no confirmation was given. The expectation, even by me, was that a second confirmation request would be displayed.

Looking at the code, I see that this confirm-override is actually a feature - at least there is intentional logic to allow the removal of a residence by issuing a second **/res remove**. Unfortunately, this does not protect users from themselves. Many get confused with how Residences are named and may try different variations.

Our specific case was a player attempting to delete a subzone. Issuing **/res remove** made him realize that he was not standing in the subzone. He moved into the subzone or thought so at least and issued another **/res remove**. Unfortunately, he was still in his main residence with the end result being that his large and costly residence was removed.

This pull request safeguards the removal process. The sole task of **/res remove** is to ask for confirmation, while letting **/res confirm** perform the actual removal.

What do you think? Would it be good to protect users from themselves a bit more?

Best regards,
Frelling