Contract 4a3329270fc185a84179f85c6f7e3932e78af3dc3d25e6bbb63d0d065f607dd3

← Back to Index 📥 Download WASM

Meta

rssdkver 23.1.0#7456be9d91fe1f4cb070fc2732bac78244ce6c3f
rsver 1.91.0

Instances

  • CDB6IODG5BNNVILLJXBXYZVR7NP4HDO2NL7WALWIXGIDMA6VY4V75CEX

Interface

Update the contract WASM hash (upgrade contract)

Arguments

  • new_wasm_hash - The hash of the new WASM binary

Errors

  • NotAdmin - If caller is not the admin
fn upgrade(
    env: soroban_sdk::Env,
    new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), soroban_sdk::Error>

Get game information.

Arguments

  • game_id - The ID of the game

Returns

  • Game - The game state (includes winning number after game ends)
fn get_game(env: soroban_sdk::Env, game_id: u32) -> Result

Make a guess for the current game. Players can guess a number between 1 and 10.

Arguments

  • game_id - The ID of the game
  • player - Address of the player making the guess
  • guess - The guessed number (1-10)
fn make_guess(
    env: soroban_sdk::Env,
    game_id: u32,
    player: soroban_sdk::Address,
    guess: u32,
) -> Result<(), soroban_sdk::Error>

Start a new game between two players with FP wagers. This creates a session in Blendizzard and locks FP before starting the game.

CRITICAL: This method requires authorization from THIS contract (not users). Blendizzard will call game_id.require_auth() which checks this contract's address.

Arguments

  • session_id - Unique session identifier (u32)
  • player1 - Address of first player
  • player2 - Address of second player
  • player1_wager - FP amount player1 is wagering
  • player2_wager - FP amount player2 is wagering

Returns

  • u32 - The game ID
fn start_game(
    env: soroban_sdk::Env,
    session_id: u32,
    player1: soroban_sdk::Address,
    player2: soroban_sdk::Address,
    player1_wager: i128,
    player2_wager: i128,
) -> Result

Initialize the contract with Blendizzard address and admin

Arguments

  • admin - Admin address (can upgrade contract)
  • blendizzard - Address of the Blendizzard contract
fn __constructor(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    blendizzard: soroban_sdk::Address,
)

Reveal the winner of the game and submit outcome to Blendizzard. Can only be called after both players have made their guesses. This ends the Blendizzard session, unlocks FP, and updates faction standings.

Arguments

  • game_id - The ID of the game

Returns

  • Address - Address of the winning player
fn reveal_winner(
    env: soroban_sdk::Env,
    game_id: u32,
) -> Result

Imports

WebAssembly Text (WAT) ▶