UNPKG

@pvpbet/pvpbet

Version:

A decentralized PVP betting platform based on the Ethereum Virtual Machine (EVM).

248 lines (247 loc) 14.1 kB
{ "_format": "hh-sol-artifact-1", "contractName": "TestBetOption", "sourceName": "contracts/test/TestBetOption.sol", "abi": [ { "inputs": [ { "internalType": "address", "name": "bet_", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "target", "type": "address" } ], "name": "AddressEmptyCode", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "AddressInsufficientBalance", "type": "error" }, { "inputs": [], "name": "FailedInnerCall", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "paid", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "Underpayment", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "arbitrate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "arbitrated", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "bet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "chip", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target", "type": "address" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "functionCall", "outputs": [ { "internalType": "bytes", "name": "", "type": "bytes" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "isBetOption", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "verified", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "verifier", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "verify", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "version", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "vote", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "player", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "wager", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "wagered", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" } ], "bytecode": "0x608060405234801561001057600080fd5b5060405161094038038061094083398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b6108ad806100936000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80638e36d24a116100715780638e36d24a14610168578063a0b5ffb01461016f578063b61500e414610182578063bbb82d891461018a578063bfa547171461019e578063f4cbf60b146101c357600080fd5b806311610c25146100b957806332e65b39146100e957806354fd4d501461010d578063632a9a52146101375780636704fe9f1461013f578063851c193314610154575b600080fd5b6000546100cc906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6000546100fd90600160b01b900460ff1681565b60405190151581526020016100e0565b6040805180820190915260058152640312e312e360dc1b60208201525b6040516100e0919061072a565b6100cc6101d6565b61015261014d366004610752565b610253565b005b6000546100fd90600160a01b900460ff1681565b60016100fd565b61012a61017d36600461077e565b6102d6565b6100cc610322565b6000546100fd90600160a81b900460ff1681565b6101526101ac366004610752565b50506000805460ff60b01b1916600160b01b179055565b6101526101d1366004610752565b610376565b60008060009054906101000a90046001600160a01b03166001600160a01b031663632a9a526040518163ffffffff1660e01b8152600401602060405180830381865afa15801561022a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024e9190610803565b905090565b61025b6101d6565b6040516357a09c4f60e11b81526001600160a01b03848116600483015260248201849052919091169063af41389e90604401600060405180830381600087803b1580156102a757600080fd5b505af11580156102bb573d6000803e3d6000fd5b50506000805460ff60a81b1916600160a81b17905550505050565b60606103188484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525092506103aa915050565b90505b9392505050565b60008060009054906101000a90046001600160a01b03166001600160a01b031663b61500e46040518163ffffffff1660e01b8152600401602060405180830381865afa15801561022a573d6000803e3d6000fd5b610392610381610322565b6001600160a01b038416908361044c565b50506000805460ff60a01b1916600160a01b17905550565b6060814710156103d45760405163cd78605960e01b81523060048201526024015b60405180910390fd5b600080856001600160a01b031684866040516103f09190610820565b60006040518083038185875af1925050503d806000811461042d576040519150601f19603f3d011682016040523d82523d6000602084013e610432565b606091505b5091509150610442868383610652565b9695505050505050565b60006001600160a01b0383166104a257600019820361047357836001600160a01b03163191505b8134101561049d5760405163d17e444b60e01b8152346004820152602481018390526044016103cb565b610648565b8260018301610518576040516370a0823160e01b81526001600160a01b0386811660048301528216906370a0823190602401602060405180830381865afa1580156104f1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610515919061083c565b92505b8260000361052a57600091505061031b565b604051636eb1769f60e11b81526001600160a01b0386811660048301523060248301526000919083169063dd62ed3e90604401602060405180830381865afa15801561057a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059e919061083c565b9050838110156105cb5760405163d17e444b60e01b815260048101829052602481018590526044016103cb565b6040516323b872dd60e01b81526001600160a01b038781166004830152306024830152604482018690528316906323b872dd906064016020604051808303816000875af1158015610620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106449190610855565b5050505b5060019392505050565b60608261066757610662826106ae565b61031b565b815115801561067e57506001600160a01b0384163b155b156106a757604051639996b31560e01b81526001600160a01b03851660048201526024016103cb565b508061031b565b8051156106be5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b60005b838110156106f55781810151838201526020016106dd565b50506000910152565b600081518084526107168160208601602086016106da565b601f01601f19169290920160200192915050565b60208152600061031b60208301846106fe565b6001600160a01b03811681146106d757600080fd5b6000806040838503121561076557600080fd5b82356107708161073d565b946020939093013593505050565b60008060006040848603121561079357600080fd5b833561079e8161073d565b9250602084013567ffffffffffffffff808211156107bb57600080fd5b818601915086601f8301126107cf57600080fd5b8135818111156107de57600080fd5b8760208285010111156107f057600080fd5b6020830194508093505050509250925092565b60006020828403121561081557600080fd5b815161031b8161073d565b600082516108328184602087016106da565b9190910192915050565b60006020828403121561084e57600080fd5b5051919050565b60006020828403121561086757600080fd5b8151801515811461031b57600080fdfea26469706673582212206cd309ecf8745f8c332f21e0cfd15650699d797f1500b301b9538bafca8c3e5b64736f6c63430008140033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100b45760003560e01c80638e36d24a116100715780638e36d24a14610168578063a0b5ffb01461016f578063b61500e414610182578063bbb82d891461018a578063bfa547171461019e578063f4cbf60b146101c357600080fd5b806311610c25146100b957806332e65b39146100e957806354fd4d501461010d578063632a9a52146101375780636704fe9f1461013f578063851c193314610154575b600080fd5b6000546100cc906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6000546100fd90600160b01b900460ff1681565b60405190151581526020016100e0565b6040805180820190915260058152640312e312e360dc1b60208201525b6040516100e0919061072a565b6100cc6101d6565b61015261014d366004610752565b610253565b005b6000546100fd90600160a01b900460ff1681565b60016100fd565b61012a61017d36600461077e565b6102d6565b6100cc610322565b6000546100fd90600160a81b900460ff1681565b6101526101ac366004610752565b50506000805460ff60b01b1916600160b01b179055565b6101526101d1366004610752565b610376565b60008060009054906101000a90046001600160a01b03166001600160a01b031663632a9a526040518163ffffffff1660e01b8152600401602060405180830381865afa15801561022a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024e9190610803565b905090565b61025b6101d6565b6040516357a09c4f60e11b81526001600160a01b03848116600483015260248201849052919091169063af41389e90604401600060405180830381600087803b1580156102a757600080fd5b505af11580156102bb573d6000803e3d6000fd5b50506000805460ff60a81b1916600160a81b17905550505050565b60606103188484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525092506103aa915050565b90505b9392505050565b60008060009054906101000a90046001600160a01b03166001600160a01b031663b61500e46040518163ffffffff1660e01b8152600401602060405180830381865afa15801561022a573d6000803e3d6000fd5b610392610381610322565b6001600160a01b038416908361044c565b50506000805460ff60a01b1916600160a01b17905550565b6060814710156103d45760405163cd78605960e01b81523060048201526024015b60405180910390fd5b600080856001600160a01b031684866040516103f09190610820565b60006040518083038185875af1925050503d806000811461042d576040519150601f19603f3d011682016040523d82523d6000602084013e610432565b606091505b5091509150610442868383610652565b9695505050505050565b60006001600160a01b0383166104a257600019820361047357836001600160a01b03163191505b8134101561049d5760405163d17e444b60e01b8152346004820152602481018390526044016103cb565b610648565b8260018301610518576040516370a0823160e01b81526001600160a01b0386811660048301528216906370a0823190602401602060405180830381865afa1580156104f1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610515919061083c565b92505b8260000361052a57600091505061031b565b604051636eb1769f60e11b81526001600160a01b0386811660048301523060248301526000919083169063dd62ed3e90604401602060405180830381865afa15801561057a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059e919061083c565b9050838110156105cb5760405163d17e444b60e01b815260048101829052602481018590526044016103cb565b6040516323b872dd60e01b81526001600160a01b038781166004830152306024830152604482018690528316906323b872dd906064016020604051808303816000875af1158015610620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106449190610855565b5050505b5060019392505050565b60608261066757610662826106ae565b61031b565b815115801561067e57506001600160a01b0384163b155b156106a757604051639996b31560e01b81526001600160a01b03851660048201526024016103cb565b508061031b565b8051156106be5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b60005b838110156106f55781810151838201526020016106dd565b50506000910152565b600081518084526107168160208601602086016106da565b601f01601f19169290920160200192915050565b60208152600061031b60208301846106fe565b6001600160a01b03811681146106d757600080fd5b6000806040838503121561076557600080fd5b82356107708161073d565b946020939093013593505050565b60008060006040848603121561079357600080fd5b833561079e8161073d565b9250602084013567ffffffffffffffff808211156107bb57600080fd5b818601915086601f8301126107cf57600080fd5b8135818111156107de57600080fd5b8760208285010111156107f057600080fd5b6020830194508093505050509250925092565b60006020828403121561081557600080fd5b815161031b8161073d565b600082516108328184602087016106da565b9190910192915050565b60006020828403121561084e57600080fd5b5051919050565b60006020828403121561086757600080fd5b8151801515811461031b57600080fdfea26469706673582212206cd309ecf8745f8c332f21e0cfd15650699d797f1500b301b9538bafca8c3e5b64736f6c63430008140033", "linkReferences": {}, "deployedLinkReferences": {} }