0 txs
0 calls
constructor
constructor(address owner, address _eqp)
functions
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
eqp
viewfunction eqp() view returns (address)
getEquipmentInCooldownCount
viewfunction getEquipmentInCooldownCount(address _address, uint256 _equipmentId) view returns (uint256[])
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
getUsersEquipmentsBalance
viewfunction getUsersEquipmentsBalance(address _user) view returns (tuple[])
getUsersEquipmentsInCooldown
viewfunction getUsersEquipmentsInCooldown(address _user) view returns (tuple[])
getUsersEquipmentsLockedBalance
viewfunction getUsersEquipmentsLockedBalance(address _user) view returns (tuple[])
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
LOCK_ROLE
viewfunction LOCK_ROLE() view returns (bytes32)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
coolDownEquipment
nonpayablefunction coolDownEquipment(tuple[] ammoDataArray)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
lock
nonpayablefunction lock(address _owner, uint256 _id, uint256 _amount)
removeFromCoolDown
nonpayablefunction removeFromCoolDown(address _user, uint256 _id)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
unlock
nonpayablefunction unlock(address _owner, uint256 _id, uint256 _amount)
events
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
errors
InsufficientBalance
error InsufficientBalance()
creation bytecode
0x60a06040523480156200001157600080fd5b5060405162001f3638038062001f36833981016040819052620000349162000182565b6200004e6000801b836200006160201b62000fe01760201c565b6001600160a01b031660805250620001c5565b6200006d828262000071565b5050565b6200007d8282620000f9565b6200006d576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055620000b53390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000828152602081815260408083206001600160a01b038516845290915290205460ff165b92915050565b60006001600160a01b0382166200011e565b620001418162000124565b81146200014d57600080fd5b50565b80516200011e8162000136565b60006200011e8262000124565b62000141816200015d565b80516200011e816200016a565b600080604083850312156200019a576200019a600080fd5b6000620001a8858562000150565b9250506020620001bb8582860162000175565b9150509250929050565b608051611cec6200024a60003960008181610298015281816103df015281816104c00152818161062a0152818161072e015281816107c0015281816108d001528181610a3301528181610b3701528181610ca801528181610d6f01528181610e2401528181610ed601528181610f6f015281816110e501526111860152611cec6000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063595e5b8a116100a2578063b4ea854e11610071578063b4ea854e14610247578063b5674c681461025a578063d547741f1461026d578063e2ab691d14610280578063f6f6c2491461029357600080fd5b8063595e5b8a146101f95780636c2ce7301461021957806391d148541461022c578063a217fddf1461023f57600080fd5b80632f2ff15d116100de5780632f2ff15d1461019357806336568abe146101a65780634abab9fa146101b95780635039ae51146101d957600080fd5b806301ffc9a714610110578063248a9ca31461013957806325e1bb9c146101695780632f286b1b1461017e575b600080fd5b61012361011e36600461145a565b6102c7565b604051610130919061148d565b60405180910390f35b61015c6101473660046114ac565b60009081526020819052604090206001015490565b60405161013091906114d3565b61017c610177366004611506565b6102fe565b005b61015c600080516020611c9783398151915281565b61017c6101a1366004611543565b610451565b61017c6101b4366004611543565b61047b565b6101cc6101c7366004611576565b6104ba565b604051610130919061169b565b6101ec6101e7366004611576565b610624565b6040516101309190611728565b61020c610207366004611506565b6108ca565b6040516101309190611777565b6101ec610227366004611576565b610a2d565b61012361023a366004611543565b610c0f565b61015c600081565b61017c6102553660046117da565b610c38565b61017c610268366004611822565b610df2565b61017c61027b366004611543565b610f0f565b61017c61028e366004611822565b610f34565b6102ba7f000000000000000000000000000000000000000000000000000000000000000081565b6040516101309190611891565b60006001600160e01b03198216637965db0b60e01b14806102f857506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061030a83836108ca565b80519091504260005b828110156103c7578184828151811061032e5761032e61189f565b602002602001015110156103b55760008461034a6001866118cb565b8151811061035a5761035a61189f565b60200260200101519050808583815181106103775761037761189f565b60209081029190910101528461038e6001866118cb565b8151811061039e5761039e61189f565b600060209182029290920101525060001992909201915b806103bf816118de565b915050610313565b506040516350c4c45160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906350c4c4519061041890889088908890600401611901565b600060405180830381600087803b15801561043257600080fd5b505af1158015610446573d6000803e3d6000fd5b505050505050505050565b60008281526020819052604090206001015461046c81610fea565b6104768383610ff7565b505050565b6001600160a01b03811633146104ac5760405162461bcd60e51b81526004016104a39061192e565b60405180910390fd5b6104b6828261107b565b5050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f9d0262a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561051c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610540919061198c565b905060008167ffffffffffffffff81111561055d5761055d6119ad565b6040519080825280602002602001820160405280156105a357816020015b60408051808201909152600081526060602082015281526020019060019003908161057b5790505b5090506000805b8381101561061a5760006105bf8260016119c3565b905060006105cd88836108ca565b805190915015610610576040518060400160405280838152602001828152508585815181106105fe576105fe61189f565b60200260200101819052508360010193505b50506001016105aa565b5081529392505050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f9d0262a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106aa919061198c565b905060008167ffffffffffffffff8111156106c7576106c76119ad565b60405190808252806020026020018201604052801561070c57816020015b60408051808201909152600080825260208201528152602001906001900390816106e55790505b5090506000805b8381101561061a5760006107288260016119c3565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662fdd58e89846040518363ffffffff1660e01b81526004016107799291906119d6565b602060405180830381865afa158015610796573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ba919061198c565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630428a8cc8a856040518363ffffffff1660e01b815260040161080c9291906119d6565b602060405180830381865afa158015610829573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084d919061198c565b9050600061085b8a856108ca565b9050600081518361086c91906119c3565b9050808411156108ba576040518060400160405280868152602001828661089391906118cb565b8152508888815181106108a8576108a861189f565b60209081029190910101526001909601955b8560010195505050505050610713565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ce84f2da85856040518363ffffffff1660e01b815260040161091c9291906119d6565b600060405180830381865afa158015610939573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526109619190810190611ae2565b805190915060008167ffffffffffffffff811115610981576109816119ad565b6040519080825280602002602001820160405280156109aa578160200160208202803683370190505b5090506000805b83811015610a2157428582815181106109cc576109cc61189f565b60200260200101511115610a19578481815181106109ec576109ec61189f565b6020026020010151838381518110610a0657610a0661189f565b6020026020010181815250508160010191505b6001016109b1565b50815295945050505050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f9d0262a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a8f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab3919061198c565b905060008167ffffffffffffffff811115610ad057610ad06119ad565b604051908082528060200260200182016040528015610b1557816020015b6040805180820190915260008082526020820152815260200190600190039081610aee5790505b5090506000805b8381101561061a576000610b318260016119c3565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630428a8cc89846040518363ffffffff1660e01b8152600401610b839291906119d6565b602060405180830381865afa158015610ba0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bc4919061198c565b90508015610c0557604051806040016040528083815260200182815250858581518110610bf357610bf361189f565b60200260200101819052508360010193505b5050600101610b1c565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b600080516020611c97833981519152610c5081610fea565b8160005b81811015610deb5736858583818110610c6f57610c6f61189f565b90506060020190506000816040016020810190610c8c9190611576565b905081356020830135610ca1838260016110e0565b506000603c7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a6c7e4b6846040518263ffffffff1660e01b8152600401610cf291906114d3565b602060405180830381865afa158015610d0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d33919061198c565b610d3d9190611b1d565b90506000610d4b8483611b1d565b610d5590426119c3565b60405163f0b3f9b960e01b81529091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063f0b3f9b990610da890889087908690600401611b3c565b600060405180830381600087803b158015610dc257600080fd5b505af1158015610dd6573d6000803e3d6000fd5b50505050866001019650505050505050610c54565b5050505050565b600080516020611c97833981519152610e0a81610fea565b60405163010a2a3360e21b81526000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690630428a8cc90610e5b90889088906004016119d6565b602060405180830381865afa158015610e78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9c919061198c565b905082811015610ebf57604051631e9acf1760e31b815260040160405180910390fd5b6040516316ace98d60e31b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b5674c689061041890889088908890600401611b3c565b600082815260208190526040902060010154610f2a81610fea565b610476838361107b565b600080516020611c97833981519152610f4c81610fea565b610f578484846110e0565b5060405163e2ab691d60e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e2ab691d90610fa890879087908790600401611b3c565b600060405180830381600087803b158015610fc257600080fd5b505af1158015610fd6573d6000803e3d6000fd5b5050505050505050565b6104b68282610ff7565b610ff48133611261565b50565b6110018282610c0f565b6104b6576000828152602081815260408083206001600160a01b03851684529091529020805460ff191660011790556110373390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110858282610c0f565b156104b6576000828152602081815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630428a8cc86866040518363ffffffff1660e01b81526004016111319291906119d6565b602060405180830381865afa15801561114e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611172919061198c565b9050600061118086866108ca565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662fdd58e88886040518363ffffffff1660e01b81526004016111d19291906119d6565b602060405180830381865afa1580156111ee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611212919061198c565b905060008583518561122491906119c3565b61122e91906119c3565b90508082101561125157604051631e9acf1760e31b815260040160405180910390fd5b60019450505050505b9392505050565b61126b8282610c0f565b6104b657611278816112ba565b6112838360206112cc565b604051602001611294929190611baa565b60408051601f198184030181529082905262461bcd60e51b82526104a391600401611c34565b60606102f86001600160a01b03831660145b606060006112db836002611b1d565b6112e69060026119c3565b67ffffffffffffffff8111156112fe576112fe6119ad565b6040519080825280601f01601f191660200182016040528015611328576020820181803683370190505b509050600360fc1b816000815181106113435761134361189f565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106113725761137261189f565b60200101906001600160f81b031916908160001a9053506000611396846002611b1d565b6113a19060016119c3565b90505b6001811115611419576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106113d5576113d561189f565b1a60f81b8282815181106113eb576113eb61189f565b60200101906001600160f81b031916908160001a90535060049490941c9361141281611c45565b90506113a4565b50831561125a5760405162461bcd60e51b81526004016104a390611c5c565b6001600160e01b031981165b8114610ff457600080fd5b80356102f881611438565b60006020828403121561146f5761146f600080fd5b600061147b848461144f565b949350505050565b8015155b82525050565b602081016102f88284611483565b80611444565b80356102f88161149b565b6000602082840312156114c1576114c1600080fd5b600061147b84846114a1565b80611487565b602081016102f882846114cd565b60006001600160a01b0382166102f8565b611444816114e1565b80356102f8816114f2565b6000806040838503121561151c5761151c600080fd5b600061152885856114fb565b9250506020611539858286016114a1565b9150509250929050565b6000806040838503121561155957611559600080fd5b600061156585856114a1565b9250506020611539858286016114fb565b60006020828403121561158b5761158b600080fd5b600061147b84846114fb565b60006115a383836114cd565b505060200190565b60006115b5825190565b80845260209384019383018060005b838110156115e95781516115d88882611597565b9750602083019250506001016115c4565b509495945050505050565b8051600090604084019061160885826114cd565b506020830151848203602086015261162082826115ab565b95945050505050565b600061125a83836115f4565b600061163f825190565b808452602084019350836020820285016116598560200190565b8060005b8581101561168e57848403895281516116768582611629565b94506020830160209a909a019992505060010161165d565b5091979650505050505050565b6020808252810161125a8184611635565b805160408301906116bd84826114cd565b5060208201516116d060208501826114cd565b50505050565b60006116e283836116ac565b505060400190565b60006116f4825190565b80845260209384019383018060005b838110156115e957815161171788826116d6565b975060208301925050600101611703565b6020808252810161125a81846116ea565b6000611743825190565b80845260209384019383018060005b838110156115e95781516117668882611597565b975060208301925050600101611752565b6020808252810161125a8184611739565b60008083601f84011261179d5761179d600080fd5b50813567ffffffffffffffff8111156117b8576117b8600080fd5b6020830191508360608202830111156117d3576117d3600080fd5b9250929050565b600080602083850312156117f0576117f0600080fd5b823567ffffffffffffffff81111561180a5761180a600080fd5b61181685828601611788565b92509250509250929050565b60008060006060848603121561183a5761183a600080fd5b600061184686866114fb565b9350506020611857868287016114a1565b9250506040611868868287016114a1565b9150509250925092565b60006102f8826114e1565b60006102f882611872565b6114878161187d565b602081016102f88284611888565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156102f8576102f86118b5565b600060001982036118f1576118f16118b5565b5060010190565b611487816114e1565b6060810161190f82866118f8565b61191c60208301856114cd565b81810360408301526116208184611739565b602080825281016102f881602f81527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560208201526e103937b632b9903337b91039b2b63360891b604082015260600190565b80516102f88161149b565b6000602082840312156119a1576119a1600080fd5b600061147b8484611981565b634e487b7160e01b600052604160045260246000fd5b808201808211156102f8576102f86118b5565b604081016119e482856118f8565b61125a60208301846114cd565b601f19601f830116810181811067ffffffffffffffff82111715611a1757611a176119ad565b6040525050565b6000611a2960405190565b9050611a3582826119f1565b919050565b600067ffffffffffffffff821115611a5457611a546119ad565b5060209081020190565b6000611a71611a6c84611a3a565b611a1e565b83815290506020808201908402830185811115611a9057611a90600080fd5b835b81811015611ab45780611aa58882611981565b84525060209283019201611a92565b5050509392505050565b600082601f830112611ad257611ad2600080fd5b815161147b848260208601611a5e565b600060208284031215611af757611af7600080fd5b815167ffffffffffffffff811115611b1157611b11600080fd5b61147b84828501611abe565b818102808215838204851417611b3557611b356118b5565b5092915050565b60608101611b4a82866118f8565b611b5760208301856114cd565b61147b60408301846114cd565b60005b83811015611b7f578181015183820152602001611b67565b50506000910152565b6000611b92825190565b611ba0818560208601611b64565b9290920192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526017016000611bdc8285611b88565b7001034b99036b4b9b9b4b733903937b6329607d1b8152601101915061147b8284611b88565b6000611c0c825190565b808452602084019350611c23818560208601611b64565b601f01601f19169290920192915050565b6020808252810161125a8184611c02565b600081611c5457611c546118b5565b506000190190565b60208082528181019081527f537472696e67733a20686578206c656e67746820696e73756666696369656e746040830152606082016102f856feee67e84f062f26b2e1ed715b7ab5b471f8978a749ac5fc5bc774f49acca5e751a26469706673582212202b602c54f1b4cc49781859ae9d3f107488f57caa9b374e6e751bd50efe2310d164736f6c634300081100330000000000000000000000002472d36f785ca4cfad266269081cbb7fca8e31fe00000000000000000000000090a7f972b0968c02d15a577d1212d9022e19887a