contract level metadata and individual royalty setting

This commit is contained in:
Moon Man 2023-01-30 12:47:02 -05:00
parent ad0266bc69
commit 0677ee477d
1 changed files with 19 additions and 3 deletions

View File

@ -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);
}
/**