Collection’s Factory
介绍
Collection’s Factory是将指定的n个ocNFT兼容的nft聚合为NFT Collection的工具,该工具将生成新的NFT合约并锁定原ocNFT(不可解锁),owner可选设置economy模块个性化mint、transfer的经济模型;注意新的NFT合约非ocNFT兼容,跨链兼容需另外进行Wrapped;
- mint由economy模块指定发行逻辑,具体结果为:
- 合约创建时立即mint指定部分或全部的item;
- 合约创建后可由调用方mint未被创建的item
- 合约中的nft的tokenUri镜像于原ocNFT,但id不做镜像;
- 合约提供sourceOf()方法查询原nft的基础信息;
- 合约提供withdraw()方法销毁item并提出原nft;
- economy模块提供6个public函数:
- mintFee(id) returns(mintFee)
mintFee=0//mint时需额外支付的费用(使用gasToken)
- transferFee(id) returns(transferFee)
transferFee=0```
- afterMint(id),用于指定mint后的执行逻辑,例如发放治理token;
- afterTransfer(id),用于指定transfer后的执行逻辑,例如转移或销毁治理token;
- afterFee(id),用于指定支付两类Fee后的执行逻辑,例如调整Dao中的权重;
- receive(),务必实现,fee是向本模块合约进行支付的,需在此标准函数中分发接收到的fee,默认是全部发放给合约的Owner
- 合约创建时将Owner设置为创建者。
economy模块协议标准
coming soon
合约模板-支持多轮固定价格发售的盲盒NFT:BSR_Template(Blind box supporting multiple rounds of fixed price sales)
由两个基于透明代理的合约模板组成,NFTBox721与NFTGoods721;用户在Mint时将获得一个随机外观的NFTBox721,NFTBox721 在Open时将销毁NFTBox721并Mint一个独特的RareNumber的NFTGoods721,RareNumber可反推NFTGoods721的RareRank;为保证随机规则的公平性,NFTBox721与NFTGoods721均采用ChainLink VRF生成随机数列; NFTBox721 支持Round的管理,由Admin设定每个Round的总量、开始时间、结束时间及单价;除721标准接口外额外增加如下接口
- NFTBox721 admin
- setChainLink(LinkConfig config)
- startRound(uint64 round,supply,start,end,price,startId)
- suspendRound(uint64 round)
- resumeRound(uint64 round)
- setRound(uint64 round,end,price)
- withdrawEther(uint amount)
- NFTBox721 user
- mintRequest() payable
- open(uint tokenId)
- NFTGoods721 admin
- setChainLink(LinkConfig config)
- withdrawEther(uint amount)
- NFTGoods721 user
- RareNumber() view
- RareRank() view