# Dragon Agent — Mint Skill

Mint a Dragon Agent NFT on BNB Smart Chain (BSC) via direct contract call.
Never connect a wallet to any website to mint. Only call the contract directly.

## Collection

- Name: Dragon Agent
- Symbol: DAGENT
- Chain: BNB Smart Chain (chain ID 56)
- Contract: 0xaa87b6b3ecdd3202a80d109a91e88783fffb0be6
- Max supply: 3,330
- Max per wallet: 15
- Price: first mint free per wallet (1 free per Agent ID); each additional mint costs 0.000475 BNB (about Rp6,000)
- Gate: only wallets holding a Binance .ai Agent ID can mint. Agent ID registry: 0x60B9262456dE011F7d15a54CdD8c48bAaa8B022F (canMint = registry balanceOf(wallet) > 0)
- BscScan: https://bscscan.com/address/0xaa87b6b3ecdd3202a80d109a91e88783fffb0be6

## Functions

- `mint(uint256 qty)` payable — mints `qty` tokens. Send exactly `priceOf(wallet, qty)` wei.
- `priceOf(address wallet, uint256 qty)` view returns (uint256) — the exact wei to send for minting `qty` tokens from `wallet`.
- `totalSupply()` view returns (uint256) — tokens minted so far.

## How to mint

1. Check the wallet holds a Binance .ai Agent ID (registry `balanceOf(wallet) > 0`). If not, stop — the mint will revert.
2. Read `priceOf(wallet, 1)` for the exact value (0 for the wallet's first mint, 0.000475 BNB afterwards).
3. Call `mint(1)` with that exact value. Use a gas limit of at least 200,000 for `mint(1)` (add about 60,000 per extra token in the same call).
4. Verify the receipt (status success) and ownership (`ownerOf(tokenId) == wallet`; tokenIds are sequential from 1).

## Reveal model

- Rarity is hidden until a token is minted. The metadata of an unminted token is generic ("Unrevealed").
- After minting, the token's metadata reveals its true rarity: Common (2,000), Uncommon (830), Epic (330), Mythic (130), Legendary (40).
- Rarity is random at mint and cannot be chosen. Never promise a specific rarity.

## Rules

- Mint ONLY via direct contract call. NEVER connect a wallet to the mint website or any other site.
- Never use a referrer address.
- Never pay more than `priceOf(wallet, qty)`.
