From 0677ee477d15c5b1d19e4ba6d362a822b97ea3c7 Mon Sep 17 00:00:00 2001 From: Moon Date: Mon, 30 Jan 2023 12:47:02 -0500 Subject: [PATCH] contract level metadata and individual royalty setting --- contracts/CurioERC1155Wrapper.sol | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/contracts/CurioERC1155Wrapper.sol b/contracts/CurioERC1155Wrapper.sol index 5c35639..753a08c 100644 --- a/contracts/CurioERC1155Wrapper.sol +++ b/contracts/CurioERC1155Wrapper.sol @@ -18,6 +18,9 @@ contract CurioERC1155Wrapper is ERC1155, ERC1155Metadata_URI, ERC1155Metadata, E mapping (uint256 => address) public contracts; mapping (uint256 => string) public urls; + string public name = "Masters of the Fediverse"; + string public symbol = "MASTERS"; + uint96 internal defaultRoyalty = 100; /** @@ -48,9 +51,22 @@ contract CurioERC1155Wrapper is ERC1155, ERC1155Metadata_URI, ERC1155Metadata, E _setDefaultRoyalty(msg.sender, defaultRoyalty); } - function transferOwnership(address newOwner) public override onlyOwner { - _setDefaultRoyalty(newOwner, defaultRoyalty); - super.transferOwnership(newOwner); + function setDefaultRoyalty(address receiver, uint96 feeNumerator) public onlyOwner { + _setDefaultRoyalty(receiver, feeNumerator); + } + + function deleteDefaultRoyalty() public onlyOwner { + _deleteDefaultRoyalty(); + } + + function setTokenRoyalty(uint256 _id, address receiver, uint96 feeNumerator) public onlyOwner { + require(contracts[_id] != address(0), "token does not exist"); + _setTokenRoyalty(_id, receiver, feeNumerator); + } + + function resetTokenRoyalty(uint256 _id) public onlyOwner { + require(contracts[_id] != address(0), "token does not exist"); + _resetTokenRoyalty(_id); } /**