game
Module0xd1ca…5dcf
- Move path
- 0xe39b…a64d::game
- Functions
- 906 public, 56 entry
- Structs
- 37
- Friend modules
- None
game
Declarations
Rebuilt from the module interface. No verified source is published, and function bodies are only available as bytecode.
module game;
struct AdminCap has store, key {
id: UID,
}
struct BubbleCosmetic has store, key {
id: UID,
cosmetic_instance_id: u64,
cosmetic_type_id: u64,
name: String,
bubble_pressure: u64,
image_url: String,
attributes: VecMap<String, String>,
}
struct BubbleGenerator has store, key {
id: UID,
bubbler_id: u64,
tier: u8,
name: String,
bubble_pressure: u64,
tank_pressure: u64,
image_url: String,
attributes: VecMap<String, String>,
}
struct BubblerFused has copy, drop {
player: address,
from_tier: u8,
to_tier: u8,
new_bubbler_id: u64,
}
struct BubblerMinted has copy, drop {
owner: address,
bubbler_id: u64,
tier: u8,
bubble_pressure: u64,
}
struct BubblerStaked has copy, drop {
owner: address,
bubbler_id: u64,
tier: u8,
}
struct BubblerUnstaked has copy, drop {
owner: address,
bubbler_id: u64,
tier: u8,
}
struct CosmeticBonus has copy, drop, store {
bonus_type: u8,
bonus_bps: u64,
}
struct CosmeticBonusAppliedKey has copy, drop, store {
dummy_field: bool,
}
struct CosmeticBonusTableKey has copy, drop, store {
dummy_field: bool,
}
struct CosmeticMinted has copy, drop {
owner: address,
cosmetic_type_id: u64,
name: String,
}
struct CosmeticType has store {
name: String,
image_url: String,
bub_cost: u64,
bublz_cost: u64,
sui_cost: u64,
bubble_pressure: u64,
max_supply: u64,
minted: u64,
per_facility: u64,
disabled: bool,
}
struct DefaultFeeKey has copy, drop, store {
dummy_field: bool,
}
struct DisplayedCosmeticInfo has drop, store {
owner: address,
cosmetic_type_id: u64,
bubble_pressure: u64,
}
struct FeeTableKey has copy, drop, store {
dummy_field: bool,
}
struct GAME has drop {
dummy_field: bool,
}
struct GameState<phantom T0, phantom T1> has key {
id: UID,
total_network_pressure: u64,
total_players: u64,
total_minted: u64,
total_burned: u64,
total_bublz_burned: u64,
game_start: u64,
paused: bool,
sui_treasury: Balance<SUI>,
treasury_recipient: address,
bublz_cost: u64,
sui_costs: vector<u64>,
next_cosmetic_id: u64,
next_bubbler_id: u64,
next_cosmetic_instance_id: u64,
}
struct MintVault<phantom T0> has key {
id: UID,
treasury_cap: TreasuryCap<T0>,
}
struct PlayerCheckedIn has copy, drop {
player: address,
rep: u64,
streak: u64,
}
struct PlayerTank has store {
tier: u8,
last_upgrade_time: u64,
staked_bubbler_ids: vector<u64>,
displayed_cosmetic_ids: vector<u64>,
total_pressure: u64,
total_tank_pressure: u64,
upgrade_levels: vector<u8>,
last_claim_time: u64,
total_earned: u64,
unclaimed_rewards: u64,
referrer: address,
has_referrer: bool,
}
struct RepAdded has copy, drop {
player: address,
amount: u64,
new_total: u64,
}
struct RepConfig has store {
daily_rep_cap: u64,
checkin_rep: u64,
checkin_cooldown_ms: u64,
streak_window_ms: u64,
base_fee_bps: u64,
streak_reduction_per_day_bps: u64,
max_streak_reduction_bps: u64,
streak_lock_days: u64,
}
struct RepConfigKey has copy, drop, store {
dummy_field: bool,
}
struct RepProfile has store {
rep: u64,
streak: u64,
best_streak: u64,
last_checkin_ms: u64,
rep_added_today: u64,
day_start_ms: u64,
streak_fee_locked: bool,
}
struct RepTableKey has copy, drop, store {
dummy_field: bool,
}
struct RepairConfig has store {
enabled: bool,
decay_period_ms: u64,
fee_bps: u64,
activated_at_ms: u64,
}
struct RepairConfigKey has copy, drop, store {
dummy_field: bool,
}
struct RepairTableKey has copy, drop, store {
dummy_field: bool,
}
struct RewardsClaimed has copy, drop {
player: address,
amount: u64,
burned: u64,
referrer_reward: u64,
}
struct StakedBubblerInfo has drop, store {
owner: address,
tier: u8,
bubble_pressure: u64,
tank_pressure: u64,
}
struct StatUpgraded has copy, drop {
player: address,
upgrade_type: u8,
new_level: u8,
}
struct StreakUpdated has copy, drop {
player: address,
streak: u64,
best_streak: u64,
locked: bool,
}
struct TankCreated has copy, drop {
player: address,
}
struct TankDurability has store {
last_repair_ms: u64,
total_earned_at_last_repair: u64,
}
struct TankRepaired has copy, drop {
player: address,
bub_cost: u64,
bub_earned_since_repair: u64,
}
struct TankUpgraded has copy, drop {
player: address,
new_tier: u8,
}
entry fun admin_vault_return<T0, T1>(&mut GameState<T0, T1>,&mut CosmeticVault,&AdminCap,u64,&Clock)
entry fun display_cosmetic_v3<T0, T1>(&mut GameState<T0, T1>,&mut CosmeticVault,BubbleCosmetic,&Clock)
entry fun display_cosmetic_v4<T0, T1>(&mut GameState<T0, T1>,&mut CosmeticVault,BubbleCosmetic,&Clock)
entry fun fuse_bubblers<T0, T1>(&mut GameState<T0, T1>,BubbleGenerator,BubbleGenerator,Coin<T0>,Coin<T1>,Coin<SUI>)
fun get_bubbler_stats(u8): (u64, u64, u64, String, String)
fun get_bubbler_sui_cost(u8, &vector<u64>): u64
fun get_fusion_costs(u8): (u64, u64, u64)
fun get_skip_cumulative(u8): (u64, u64, u64)
fun get_tank_bub_cost(u8): u64
fun get_tank_cosmetic_slots(u8): u64
fun get_tank_max_bubblers(u8): u64
fun get_tank_pressure_capacity(u8): u64
fun get_tank_sui_cost(u8): u64
fun get_upgrade_base_bub(u8): u64
fun get_upgrade_bub_cost(u8, u8): u64
fun make_bubbler_attrs(u8, String): VecMap<String, String>
fun make_cosmetic_attrs(String): VecMap<String, String>
fun process_bub_payment<T0>(Coin<T0>, u64): Balance<T0>