利用可能なガード

Asset Paymentガード

概要

Asset Paymentガードは、指定されたAssetコレクションからCore Assetを支払者に請求することでミントを許可します。アセットは事前定義された宛先に転送されます。

支払者が必要なコレクションからアセットを所有していない場合、ミントは失敗します。

複数のアセットで支払う場合は、Asset Payment Multiガードを使用できます。

ガード設定

Asset Paymentガードには以下の設定が含まれます:

  • Required Collection: 必要なコレクションのミントアドレス。支払いに使用するアセットは、このコレクションの一部である必要があります。
  • Destination: すべてのアセットを受け取るウォレットのアドレス。

Asset Paymentガードを使用してCandy Machineをセットアップする

create(umi, {
// ...
guards: {
assetPayment: some({
requiredCollection: requiredCollection.publicKey,
destination: umi.identity.publicKey,
}),
},
});

APIリファレンス: create, AssetPayment

ミント設定

Asset Paymentガードには以下のミント設定が含まれます:

  • Asset Address: 支払いに使用するアセットのアドレス。これは、必要なコレクションの一部であり、ミンターに属している必要があります。
  • Collection Address: 支払いに使用されるコレクションのアドレス。
  • Destination: すべてのアセットを受け取るウォレットのアドレス。

SDKを使用せずに手動で命令を構築する場合は、これらのミント設定などを命令の引数と残りのアカウントの組み合わせとして提供する必要があることに注意してください。詳細については、Core Candy Guardのプログラムドキュメントを参照してください。

Asset Paymentガードを使用してCandy Machineをセットアップする

Asset PaymentガードのMint Settingsは、次のようにmintArgs引数を使用して渡すことができます。

mintV1(umi, {
// ...
mintArgs: {
assetPayment: some({
requiredCollection: publicKey(requiredCollection),
destination,
asset: assetToSend.publicKey,
}),
},
});

APIリファレンス: mintV1, AssetPaymentMintArgs

ルート命令

Asset Paymentガードはルート命令をサポートしていません。