AwesomeHouses

wesomeHouses links AwesomeTaxes regions and AwesomeKeycards locks into a single house-buying workflow.

15

Quick challenge

How far can you run before the mobs catch you?

AwesomeHouses

AwesomeHouses

AwesomeHouses links AwesomeTaxes regions and AwesomeKeycards locks into a single house-buying workflow. Staff publish houses on signs with a sale price; players right-click to pay, become the owner in AwesomeTaxes, receive a personal keycard, and all doors/containers inside the region are auto-locked to that card.

Requires: 1.0.0 Requires: AwesomeTaxes + AwesomeKeycards (APIs provided via Bukkit services)

Highlights

- Sign-based listings: `/houses create <taxHouseId> <price>` while looking at a sign publishes a sale board with price and tax ID. - Automatic region scan: reuses AwesomeKeycards lockable logic to detect doors/containers/buttons inside the AwesomeTaxes region. - One-key protection: buyer gets a personal keycard; every detected lockable block is linked to that single card. - Taxes integration: ownership is assigned via `TaxesAPI` to the specified AwesomeTaxes house ID. - Simple payments: player right-clicks the sign holding the required item stack; payment is removed, ownership and locks are applied, and the card is given.

Quick Start

1) Create a house in AwesomeTaxes and note its ID (e.g., `H-001`). 2) As staff with `awesomehouses.staff`, hold the payment item stack (amount = sale price), look at a sign, and run: `/houses create H-001 <price>` The sign updates to `[FOR SALE]` with listing ID, price, and tax ID. 3) Player purchase: right-click the sign with the required items in hand. They pay, receive a personal keycard, become the house owner in AwesomeTaxes, and all detected lockable blocks in the region are protected to that card. The sign flips to `[OWNED]`.

Full Workflow (Step-by-Step)

1) Define the region in AwesomeTaxes - Staff selects corners with `/taxes pos1` and `/taxes pos2` (same world). - Create the house region: `/taxes create <name>` → note the returned house ID (e.g., `H-001`). - (Optional) View details: `/taxes info H-001` or list via `/taxes myhouses`. 2) Configure the tax payment in AwesomeTaxes - Hold the required payment item stack (stack size = amount) in your main hand. - Run `/taxes admin setitem H-001` to save the tax item/amount for that house. - (Optional) Add members in Taxes if you want pre-owners: `/taxes addmember H-001 <player>`. 3) Publish a sale sign with AwesomeHouses - Stand anywhere, look directly at a sign block. - Hold the payment item stack you want to charge for the purchase (stack size = sale price). - Run `/houses create H-001 <price>` (price is the item amount you’re charging). - AwesomeHouses will: - Pull the region from AwesomeTaxes (house `H-001`). - Scan that region for lockable blocks using the AwesomeKeycards logic (doors, trapdoors, fence gates, buttons, levers, chests, barrels, furnaces, shulkers, hoppers, dispensers, droppers). - Save a listing with a new listing ID and update the sign to: ``` [FOR SALE] Casa #<listingId> Price: <price> TaxID: H-001 ``` 4) Player purchase flow - Buyer right-clicks the sale sign while holding the exact required item stack (same material as price item, amount ≥ price). - AwesomeHouses will: - Remove the payment items from the player’s hand. - Create a personal keycard labeled with the listing ID. - Assign ownership in AwesomeTaxes via TaxesAPI: `H-001` owner becomes the buyer. - Lock every detected lockable block in the region to that keycard (one key controls everything). - Deliver the keycard to the player (drops on ground if inventory is full). - Update the sign to: ``` [OWNED] Casa #<listingId> Owner: <player> ``` 5) Post-purchase behavior - The buyer (new owner) is now the Taxes owner and holds the only keycard that opens all doors/containers in the region. - Any additional locks in that region can be relinked manually with the same card if desired. - Admins can still manage ownership in Taxes (`/taxes admin setowner`) or revoke/add members; locks remain tied to the keycard.

Commands

- `/houses create <taxHouseId> <price>` – Publish a listing on the targeted sign using the house region from AwesomeTaxes and the payment item in your hand. Permission: `awesomehouses.staff` (default: op)

Permissions

- `awesomehouses.staff` – create/manage listings (publish signs). Default: op.

Storage

- Listings are stored in `plugins/AwesomeHouses/listings.yml` (region, price item, sign location, lock targets, and owner when sold).

ADS