@@ -9,6 +9,7 @@ import "../extension/Ownable.sol";
99import "../extension/Royalty.sol " ;
1010import "../extension/BatchMintMetadata.sol " ;
1111import "../extension/LazyMint.sol " ;
12+ import "../extension/interface/IClaimableERC721.sol " ;
1213
1314import "../lib/TWStrings.sol " ;
1415
@@ -38,7 +39,16 @@ import "../lib/TWStrings.sol";
3839 * without paying the gas cost for actually minting the NFTs.
3940 */
4041
41- contract ERC721LazyMint is ERC721A , ContractMetadata , Multicall , Ownable , Royalty , BatchMintMetadata , LazyMint {
42+ contract ERC721LazyMint is
43+ ERC721A ,
44+ ContractMetadata ,
45+ Multicall ,
46+ Ownable ,
47+ Royalty ,
48+ BatchMintMetadata ,
49+ LazyMint ,
50+ IClaimableERC721
51+ {
4252 using TWStrings for uint256 ;
4353
4454 /*//////////////////////////////////////////////////////////////
@@ -99,9 +109,10 @@ contract ERC721LazyMint is ERC721A, ContractMetadata, Multicall, Ownable, Royalt
99109 */
100110 function claim (address _receiver , uint256 _quantity ) public payable virtual {
101111 verifyClaim (msg .sender , _quantity); // add your claim verification logic by overriding this function
102-
112+ uint256 startTokenId = _currentIndex;
103113 require (_currentIndex + _quantity <= nextTokenIdToLazyMint, "Not enough lazy minted tokens. " );
104114 _safeMint (_receiver, _quantity, "" );
115+ emit TokensClaimed (msg .sender , _receiver, startTokenId, _quantity);
105116 }
106117
107118 /**
0 commit comments