[ { "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" } ]