사용 가능한 가드

할당 가드

개요

할당(Allocation) 가드는 각 가드 그룹이 민팅할 수 있는 NFT 개수의 제한을 지정할 수 있게 합니다.

제한은 식별자별로 설정되며 — 설정에서 제공 — 동일한 Candy Machine 내에서 여러 할당을 허용합니다.

가드 설정

할당 가드는 다음 설정을 포함합니다:

  • ID: 이 가드의 고유 식별자입니다. 서로 다른 식별자는 특정 지갑에서 민팅한 항목 수를 추적하기 위해 서로 다른 카운터를 사용합니다. 이는 가드 그룹을 사용할 때 특히 유용하며, 각 그룹이 서로 다른 민팅 제한을 가질 수 있습니다.
  • Limit: 가드 그룹에서 허용되는 최대 민팅 개수입니다.

할당 가드를 사용하여 Candy Machine 설정

create(umi, {
// ...
guards: {
allocation: some({ id: 1, limit: 5 }),
},
});

API 참조: create, Allocation

민팅 설정

할당 가드는 다음 민팅 설정을 포함합니다:

  • ID: 이 가드의 고유 식별자입니다.

SDK의 도움 없이 명령어를 구성할 계획이라면, 이러한 민팅 설정 및 그 이상을 명령어 인수와 나머지 계정의 조합으로 제공해야 합니다. 자세한 내용은 Candy Guard의 프로그램 문서를 참조하세요.

할당 가드로 민팅

다음과 같이 mintArgs 인수를 사용하여 할당 가드의 민팅 설정을 전달할 수 있습니다.

mintV2(umi, {
// ...
mintArgs: {
allocation: some({ id: 1 }),
},
});

라우트 명령어

할당 가드 라우트 명령어는 다음 기능을 지원합니다.

할당 추적기 초기화

할당 가드를 사용할 때, 민팅을 시작하기 전에 할당 추적기 계정을 초기화해야 합니다. 이는 가드 설정의 id 속성에서 파생된 PDA 계정을 생성합니다.

할당 추적기 PDA 계정은 가드 그룹의 민팅 개수를 추적하며 제한에 도달하면 해당 그룹 내의 모든 민팅을 차단합니다.

이 할당 추적기 계정을 초기화할 때, 가드의 라우트 명령어에 다음 인수를 제공해야 합니다:

  • ID: 가드 설정의 할당 id입니다.
  • Candy Guard Authority: Signer로서 Candy Guard 계정의 권한입니다.

할당 추적기 PDA 초기화

기본 가드의 할당 추적기 PDA를 초기화하려면:

route(umi, {
// ...
guard: 'allocation',
routeArgs: {
id: 1,
candyGuardAuthority: umi.identity,
},
})

할당 가드가 특정 그룹에 추가된 경우, 그룹 이름을 추가해야 합니다:

route(umi, {
// ...
guard: 'allocation',
routeArgs: {
id: 1,
candyGuardAuthority: umi.identity,
},
group: some('GROUPA'),
})

API 참조: route, AllocationRouteArgs