mod account;
mod packer;
use anyhow::Result;
use netxclient::prelude::*;
pub use account::*;
pub use packer::*;
#[build]
pub trait IMaster {
#[tag(11)]
async fn register_slot_server(&self, server_id: u32) -> Result<bool>;
#[tag(12)]
async fn get_player_info(&self, account_id: i32) -> Result<Option<AccountInfoRet>>;
#[tag(102)]
async fn req_slot_spin(
&self,
account_id: i32,
token: u64,
req: ReqSlotSpin,
) -> Result<SlotSpinRet>;
#[tag(103)]
async fn req_slot_refund(
&self,
account_id: i32,
token: u64,
req: ReqSlotRefund,
) -> Result<SlotRefundRet>;
#[tag(104)]
async fn get_game_lottery(&self, game_id: u32) -> Result<Vec<LotteryInfo>>;
#[tag(105)]
async fn move_money_cache(&self, account_id: i32, money: i64) -> Result<MoneyContext>;
#[tag(106)]
async fn robot_lottery_spin(&self, loop_count: u32, lottery_id: i32, coin: f64) -> Result<i64>;
#[tag(107)]
async fn alive_account(&self, account_ids: &[i32]);
#[tag(108)]
async fn slots_counter(
&self,
account_id: i32,
token: u64,
req: ReqSlotsCounterLine,
) -> Result<SlotsCounterLineRet>;
#[tag(109)]
async fn slots_counters(
&self,
account_id: i32,
token: u64,
req: Vec<ReqSlotsCounterLine>,
) -> Result<Vec<SlotsCounterLineRet>>;
}