From 6644d3b7b74af8e57a9f43a2b8dde6814f7fd1b4 Mon Sep 17 00:00:00 2001 From: Sewmina Date: Wed, 21 May 2025 21:33:00 +0000 Subject: [PATCH] fixes --- src/shared.ts | 7 +++++++ src/solana.ts | 18 ++++++++++++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/shared.ts b/src/shared.ts index 982f094..fa5c94a 100644 --- a/src/shared.ts +++ b/src/shared.ts @@ -1,5 +1,6 @@ import { clusterApiUrl, PublicKey } from "@solana/web3.js"; import { log } from "./logging_help"; +import { connection } from "./solana"; // export const clusterUrl = "https://tiniest-cold-darkness.solana-mainnet.quiknode.pro/72332d636ff78d498b880bd8fdc3eb646c827da8/"; // export const clusterUrl = "https://go.getblock.io/908837801b534ae7a6f0869fc44cc567"; export const mainnetClusterUrl = "https://solana-mainnet.core.chainstack.com/c54e14eef17693283a0323efcc4ce731"; @@ -31,6 +32,12 @@ export function getRandomInt(max) { winner_referree_wallet = feeWallet; }else{ winner_referree_wallet = new PublicKey(winner_referee_wallet_text); + + const balance = await connection.getBalance(winner_referree_wallet); + log(`winner_referree_wallet balance: ${balance}`, "solana"); + if(balance <= 0){ + winner_referree_wallet = feeWallet; + } } return winner_referree_wallet; diff --git a/src/solana.ts b/src/solana.ts index bfb8c2c..f2efe73 100644 --- a/src/solana.ts +++ b/src/solana.ts @@ -71,8 +71,22 @@ export async function close(bet:string, winner:string, uid:string, loser:string) log(`getting referrees for ${bet}`, "solana"); - const winner_referree_wallet = await GetReferreeWallet(uid); - const loser_referree_wallet = await GetReferreeWallet(loser); + let winner_referree_wallet = await GetReferreeWallet(uid); + let loser_referree_wallet = await GetReferreeWallet(loser); + + const winner_referree_balance = await connection.getBalance(winner_referree_wallet); + const loser_referree_balance = await connection.getBalance(loser_referree_wallet); + + if(winner_referree_balance <= 0){ + winner_referree_wallet = feeWallet; + } + + if(loser_referree_balance <= 0){ + loser_referree_wallet = feeWallet; + } + + log(`winner referree wallet: ${winner_referree_wallet}: ${winner_referree_balance} SOL`, bet); + log(`loser referree wallet: ${loser_referree_wallet}: ${loser_referree_balance} SOL`, bet); const tx = await program.methods.deductFees(new PublicKey(winner), uid).accounts({ betVault: bet,