[
{
"inputs": [
{
"internalType": "address",
"name": "_token",
"type": "address"
},
{
"internalType": "uint256",
"name": "_minStaking",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_playerRoomLock",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_playerLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_startRoomId",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "OwnableInvalidOwner",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "OwnableUnauthorizedAccount",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "room",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "sequencer",
"type": "address"
},
{
"indexed": false,
"internalType": "string",
"name": "websocket",
"type": "string"
},
{
"indexed": false,
"internalType": "uint256",
"name": "locked",
"type": "uint256"
},
{
"indexed": false,
"internalType": "bytes",
"name": "params",
"type": "bytes"
}
],
"name": "AcceptRoom",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "room",
"type": "uint256"
}
],
"name": "ClaimRoom",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "room",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "game",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "reward",
"type": "uint256"
},
{
"indexed": false,
"internalType": "bool",
"name": "viewable",
"type": "bool"
},
{
"indexed": false,
"internalType": "address",
"name": "player",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "peer",
"type": "address"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "pk",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "block",
"type": "bytes32"
}
],
"name": "CreateRoom",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "room",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "player",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "peer",
"type": "address"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "pk",
"type": "bytes32"
}
],
"name": "JoinRoom",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "room",
"type": "uint256"
}
],
"name": "OverRoom",
"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"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "win",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "reward",
"type": "uint256"
}
],
"name": "Ranking",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "sequencer",
"type": "address"
},
{
"indexed": false,
"internalType": "string",
"name": "http",
"type": "string"
},
{
"indexed": false,
"internalType": "string",
"name": "websocket",
"type": "string"
},
{
"indexed": false,
"internalType": "uint256",
"name": "staking",
"type": "uint256"
}
],
"name": "StakeSequencer",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "room",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "game",
"type": "address"
}
],
"name": "StartRoom",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "sequencer",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "staking",
"type": "uint256"
}
],
"name": "UnstakeSequencer",
"type": "event"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roomId",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "params",
"type": "bytes"
}
],
"name": "acceptRoom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roomId",
"type": "uint256"
}
],
"name": "claimRoom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "ticket",
"type": "uint256"
},
{
"internalType": "bool",
"name": "viewable",
"type": "bool"
},
{
"internalType": "address",
"name": "peer",
"type": "address"
},
{
"internalType": "bytes32",
"name": "pk",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
}
],
"name": "createRoom",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "sequencer",
"type": "address"
}
],
"name": "isSequencer",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roomId",
"type": "uint256"
},
{
"internalType": "address",
"name": "peer",
"type": "address"
},
{
"internalType": "bytes32",
"name": "pk",
"type": "bytes32"
}
],
"name": "joinRoom",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "minStaking",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "nextRoomId",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roomId",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "proof",
"type": "bytes"
}
],
"name": "overRoomWithThreshold",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roomId",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "proof",
"type": "bytes"
}
],
"name": "overRoomWithZk",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "owner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "playerLimit",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "playerRoomLock",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "ranking",
"outputs": [
{
"internalType": "uint256",
"name": "win",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "reward",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "renounceOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roomId",
"type": "uint256"
}
],
"name": "restartRoom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roomId",
"type": "uint256"
}
],
"name": "roomInfo",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
},
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
},
{
"internalType": "enum RoomStatus",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "rooms",
"outputs": [
{
"internalType": "bool",
"name": "viewable",
"type": "bool"
},
{
"internalType": "uint256",
"name": "ticket",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "reward",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "block",
"type": "bytes32"
},
{
"internalType": "address",
"name": "sequencer",
"type": "address"
},
{
"internalType": "uint256",
"name": "locked",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "site",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "result",
"type": "bytes"
},
{
"internalType": "enum RoomStatus",
"name": "status",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "sequencers",
"outputs": [
{
"internalType": "string",
"name": "http",
"type": "string"
},
{
"internalType": "string",
"name": "websocket",
"type": "string"
},
{
"internalType": "uint256",
"name": "staking",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_minStaking",
"type": "uint256"
}
],
"name": "setMinStaking",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_playerLimit",
"type": "uint256"
}
],
"name": "setPlayerLimit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_playerRoomLock",
"type": "uint256"
}
],
"name": "setPlayerRoomLock",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_token",
"type": "address"
}
],
"name": "setToken",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "http",
"type": "string"
},
{
"internalType": "string",
"name": "websocket",
"type": "string"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "stakeSequencer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roomId",
"type": "uint256"
}
],
"name": "startRoom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "token",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "unstakeSequencer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
]