Contract
0xBFf351c00390C1fb26e06f66b0030078Cb2A76c0
1
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Latest 1 internal transaction
Parent Txn Hash | Block | From | To | Value | |||
---|---|---|---|---|---|---|---|
0x57bce41b6f4e48022b3449eb69a51df4cd4d8ec1a13f463d3a10037b05b650ad | 11224814 | 581 days 22 hrs ago | 0x582a28fd633eb3cbe46d42837c53342e90fd8ecb | Contract Creation | 0 FTM |
[ Download CSV Export ]
Contract Name:
RossStudio
Compiler Version
v0.8.4+commit.c7e474f2
Contract Source Code (Solidity)
/** *Submitted for verification at FtmScan.com on 2021-07-03 */ // SPDX-License-Identifier: GPL-3.0-or-later Or MIT pragma solidity >=0.8.0 <0.9.0; /* * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with GSN meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { // payable return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } interface IBrushToken { function burn(uint256 _amount) external; function balanceOf(address _address) external view returns (uint); } interface IERC721 { function balanceOf(address _address) external view returns (uint); } contract RossStudio is Ownable { event NewCost(uint oldCost, uint newCost); event NewOfficialNFTDiscount(uint oldDiscount, uint newDiscount); uint private playCost_; uint public totalBurned; IBrushToken public brush; uint public officialNFTDiscount; // 0 - 100 (%) IERC721 officialNFT; constructor (address _brush, address _officialNFT) { playCost_ = 1 * 10 ** 18; // Default to 1 brush brush = IBrushToken(_brush); officialNFT = IERC721(_officialNFT); officialNFTDiscount = 50; // Default to a 50% discount if holding an Official NFT } function playCostAccount (address _account) external view returns (uint) { if (officialNFT.balanceOf(_account) > 0) { return discountPlayCost(); } return playCost_; } function playCost () external view returns (uint) { return playCost_; } function discountPlayCost () public view returns (uint) { return (playCost_ * (100 - officialNFTDiscount)) / 100; } // Pass in 0-100 for the percentage reduction for holding an official NFT function setOfficialNFTDiscount (uint _amount) external onlyOwner { require (_amount <= 100); uint oldDiscount = officialNFTDiscount; officialNFTDiscount = _amount; emit NewOfficialNFTDiscount(oldDiscount, _amount); } function setPlayCost (uint _amount) external onlyOwner { uint oldCost = playCost_; playCost_ = _amount; emit NewCost(oldCost, _amount); } function burn () external { totalBurned += brush.balanceOf(address(this)); brush.burn(brush.balanceOf(address(this))); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_brush","type":"address"},{"internalType":"address","name":"_officialNFT","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldCost","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newCost","type":"uint256"}],"name":"NewCost","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldDiscount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newDiscount","type":"uint256"}],"name":"NewOfficialNFTDiscount","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"brush","outputs":[{"internalType":"contract IBrushToken","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"discountPlayCost","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"officialNFTDiscount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"playCost","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"}],"name":"playCostAccount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setOfficialNFTDiscount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setPlayCost","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalBurned","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b5060405161086338038061086383398101604081905261002f916100ce565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350670de0b6b3a7640000600155600380546001600160a01b039384166001600160a01b031991821617909155600580549290931691161790556032600455610100565b80516001600160a01b03811681146100c957600080fd5b919050565b600080604083850312156100e0578182fd5b6100e9836100b2565b91506100f7602084016100b2565b90509250929050565b6107548061010f6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80637e7de151116100715780637e7de1511461012d5780638da5cb5b14610140578063d89135cd14610151578063f2fde38b1461015a578063fb22198b1461016d578063ffef9d5d1461017557600080fd5b80630a785cd6146100b95780631af844d2146100d557806339a091f0146100dd57806344df8e70146100f25780634ac2a647146100fa578063715018a614610125575b600080fd5b6100c260045481565b6040519081526020015b60405180910390f35b6100c2610188565b6100f06100eb366004610635565b6101b7565b005b6100f061023e565b60035461010d906001600160a01b031681565b6040516001600160a01b0390911681526020016100cc565b6100f06103a4565b6100f061013b366004610635565b610418565b6000546001600160a01b031661010d565b6100c260025481565b6100f0610168366004610607565b610480565b6001546100c2565b6100c2610183366004610607565b61056a565b60006064600454606461019b91906106f1565b6001546101a891906106d2565b6101b291906106b2565b905090565b6000546001600160a01b031633146101ea5760405162461bcd60e51b81526004016101e190610665565b60405180910390fd5b60648111156101f857600080fd5b600480549082905560408051828152602081018490527f66f4642c64d80023c77b98278d9aaf20db779699074aa90e7f60b28a822449c591015b60405180910390a15050565b6003546040516370a0823160e01b81523060048201526001600160a01b03909116906370a082319060240160206040518083038186803b15801561028157600080fd5b505afa158015610295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b9919061064d565b600260008282546102ca919061069a565b90915550506003546040516370a0823160e01b81523060048201526001600160a01b03909116906342966c689082906370a082319060240160206040518083038186803b15801561031a57600080fd5b505afa15801561032e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610352919061064d565b6040518263ffffffff1660e01b815260040161037091815260200190565b600060405180830381600087803b15801561038a57600080fd5b505af115801561039e573d6000803e3d6000fd5b50505050565b6000546001600160a01b031633146103ce5760405162461bcd60e51b81526004016101e190610665565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104425760405162461bcd60e51b81526004016101e190610665565b600180549082905560408051828152602081018490527f124b2aafdddedd0091a5905a97a9e192daddf34cce6eeb7a4968671f0164873d9101610232565b6000546001600160a01b031633146104aa5760405162461bcd60e51b81526004016101e190610665565b6001600160a01b03811661050f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101e1565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6005546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a082319060240160206040518083038186803b1580156105b357600080fd5b505afa1580156105c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105eb919061064d565b11156105ff576105f9610188565b92915050565b505060015490565b600060208284031215610618578081fd5b81356001600160a01b038116811461062e578182fd5b9392505050565b600060208284031215610646578081fd5b5035919050565b60006020828403121561065e578081fd5b5051919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600082198211156106ad576106ad610708565b500190565b6000826106cd57634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156106ec576106ec610708565b500290565b60008282101561070357610703610708565b500390565b634e487b7160e01b600052601160045260246000fdfea2646970667358221220d881ad04d40bd0abf5f77ef3de1ff8ba4b61fe40d568e80db4dd790db463a27364736f6c6343000804003300000000000000000000000085dec8c4b2680793661bca91a8f129607571863d000000000000000000000000e74b987ee386c98bdaf1f9e32aef27f23f5df8a2
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000085dec8c4b2680793661bca91a8f129607571863d000000000000000000000000e74b987ee386c98bdaf1f9e32aef27f23f5df8a2
-----Decoded View---------------
Arg [0] : _brush (address): 0x85dec8c4b2680793661bca91a8f129607571863d
Arg [1] : _officialNFT (address): 0xe74b987ee386c98bdaf1f9e32aef27f23f5df8a2
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000085dec8c4b2680793661bca91a8f129607571863d
Arg [1] : 000000000000000000000000e74b987ee386c98bdaf1f9e32aef27f23f5df8a2
Deployed ByteCode Sourcemap
2931:1672:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3170:31;;;;;;;;;2068:25:1;;;2056:2;2041:18;3170:31:0;;;;;;;;3816:123;;;:::i;4024:256::-;;;;;;:::i;:::-;;:::i;:::-;;4463:137;;;:::i;3141:24::-;;;;;-1:-1:-1;;;;;3141:24:0;;;;;;-1:-1:-1;;;;;883:32:1;;;865:51;;853:2;838:18;3141:24:0;820:102:1;2131:148:0;;;:::i;4286:169::-;;;;;;:::i;:::-;;:::i;1489:79::-;1527:7;1554:6;-1:-1:-1;;;;;1554:6:0;1489:79;;3113:23;;;;;;2434:244;;;;;;:::i;:::-;;:::i;3729:79::-;3793:9;;3729:79;;3530:191;;;;;;:::i;:::-;;:::i;3816:123::-;3866:4;3930:3;3906:19;;3900:3;:25;;;;:::i;:::-;3887:9;;:39;;;;:::i;:::-;3886:47;;;;:::i;:::-;3879:54;;3816:123;:::o;4024:256::-;1701:6;;-1:-1:-1;;;;;1701:6:0;722:10;1701:22;1693:67;;;;-1:-1:-1;;;1693:67:0;;;;;;;:::i;:::-;;;;;;;;;4119:3:::1;4108:7;:14;;4099:24;;;::::0;::::1;;4151:19;::::0;;4179:29;;;;4230:44:::1;::::0;;2278:25:1;;;2334:2;2319:18;;2312:34;;;4230:44:0::1;::::0;2251:18:1;4230:44:0::1;;;;;;;;1771:1;4024:256:::0;:::o;4463:137::-;4513:5;;:30;;-1:-1:-1;;;4513:30:0;;4537:4;4513:30;;;865:51:1;-1:-1:-1;;;;;4513:5:0;;;;:15;;838:18:1;;4513:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4498:11;;:45;;;;;;;:::i;:::-;;;;-1:-1:-1;;4552:5:0;;4563:30;;-1:-1:-1;;;4563:30:0;;4587:4;4563:30;;;865:51:1;-1:-1:-1;;;;;4552:5:0;;;;:10;;:5;;4563:15;;838:18:1;;4563:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4552:42;;;;;;;;;;;;;2068:25:1;;2056:2;2041:18;;2023:76;4552:42:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4463:137::o;2131:148::-;1701:6;;-1:-1:-1;;;;;1701:6:0;722:10;1701:22;1693:67;;;;-1:-1:-1;;;1693:67:0;;;;;;;:::i;:::-;2238:1:::1;2222:6:::0;;2201:40:::1;::::0;-1:-1:-1;;;;;2222:6:0;;::::1;::::0;2201:40:::1;::::0;2238:1;;2201:40:::1;2269:1;2252:19:::0;;-1:-1:-1;;;;;;2252:19:0::1;::::0;;2131:148::o;4286:169::-;1701:6;;-1:-1:-1;;;;;1701:6:0;722:10;1701:22;1693:67;;;;-1:-1:-1;;;1693:67:0;;;;;;;:::i;:::-;4365:9:::1;::::0;;4383:19;;;;4424:25:::1;::::0;;2278::1;;;2334:2;2319:18;;2312:34;;;4424:25:0::1;::::0;2251:18:1;4424:25:0::1;2233:119:1::0;2434:244:0;1701:6;;-1:-1:-1;;;;;1701:6:0;722:10;1701:22;1693:67;;;;-1:-1:-1;;;1693:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2523:22:0;::::1;2515:73;;;::::0;-1:-1:-1;;;2515:73:0;;1356:2:1;2515:73:0::1;::::0;::::1;1338:21:1::0;1395:2;1375:18;;;1368:30;1434:34;1414:18;;;1407:62;-1:-1:-1;;;1485:18:1;;;1478:36;1531:19;;2515:73:0::1;1328:228:1::0;2515:73:0::1;2625:6;::::0;;2604:38:::1;::::0;-1:-1:-1;;;;;2604:38:0;;::::1;::::0;2625:6;::::1;::::0;2604:38:::1;::::0;::::1;2653:6;:17:::0;;-1:-1:-1;;;;;;2653:17:0::1;-1:-1:-1::0;;;;;2653:17:0;;;::::1;::::0;;;::::1;::::0;;2434:244::o;3530:191::-;3614:11;;:31;;-1:-1:-1;;;3614:31:0;;-1:-1:-1;;;;;883:32:1;;;3614:31:0;;;865:51:1;3597:4:0;;;;3614:11;;;:21;;838:18:1;;3614:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:35;3610:83;;;3667:18;:16;:18::i;:::-;3660:25;3530:191;-1:-1:-1;;3530:191:0:o;3610:83::-;-1:-1:-1;;3706:9:0;;;3530:191::o;14:306:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:2;;;147:6;139;132:22;94:2;178:23;;-1:-1:-1;;;;;230:31:1;;220:42;;210:2;;281:6;273;266:22;210:2;309:5;84:236;-1:-1:-1;;;84:236:1:o;325:190::-;384:6;437:2;425:9;416:7;412:23;408:32;405:2;;;458:6;450;443:22;405:2;-1:-1:-1;486:23:1;;395:120;-1:-1:-1;395:120:1:o;520:194::-;590:6;643:2;631:9;622:7;618:23;614:32;611:2;;;664:6;656;649:22;611:2;-1:-1:-1;692:16:1;;601:113;-1:-1:-1;601:113:1:o;1561:356::-;1763:2;1745:21;;;1782:18;;;1775:30;1841:34;1836:2;1821:18;;1814:62;1908:2;1893:18;;1735:182::o;2357:128::-;2397:3;2428:1;2424:6;2421:1;2418:13;2415:2;;;2434:18;;:::i;:::-;-1:-1:-1;2470:9:1;;2405:80::o;2490:217::-;2530:1;2556;2546:2;;-1:-1:-1;;;2581:31:1;;2635:4;2632:1;2625:15;2663:4;2588:1;2653:15;2546:2;-1:-1:-1;2692:9:1;;2536:171::o;2712:168::-;2752:7;2818:1;2814;2810:6;2806:14;2803:1;2800:21;2795:1;2788:9;2781:17;2777:45;2774:2;;;2825:18;;:::i;:::-;-1:-1:-1;2865:9:1;;2764:116::o;2885:125::-;2925:4;2953:1;2950;2947:8;2944:2;;;2958:18;;:::i;:::-;-1:-1:-1;2995:9:1;;2934:76::o;3015:127::-;3076:10;3071:3;3067:20;3064:1;3057:31;3107:4;3104:1;3097:15;3131:4;3128:1;3121:15
Swarm Source
ipfs://d881ad04d40bd0abf5f77ef3de1ff8ba4b61fe40d568e80db4dd790db463a273
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|
Validator ID :
0 FTM
Amount Staked
0
Amount Delegated
0
Staking Total
0
Staking Start Epoch
0
Staking Start Time
0
Proof of Importance
0
Origination Score
0
Validation Score
0
Active
0
Online
0
Downtime
0 s
Address | Amount | claimed Rewards | Created On Epoch | Created On |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.