feat(poker): pause placement XP behind POKER_XP_ENABLED switch
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
parent
12f9da0c25
commit
117de8ecee
1 changed files with 19 additions and 7 deletions
|
|
@ -31,6 +31,13 @@ export interface PokerStats {
|
|||
xpEarned: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* XP rework in progress: when false, finished games still record placements,
|
||||
* hands won, and best chips, but xpEarned is untouched and no XP push fires.
|
||||
* Flip to true to resume placement-based XP payouts.
|
||||
*/
|
||||
export const POKER_XP_ENABLED = false;
|
||||
|
||||
/**
|
||||
* XP per placement, scaled by table size:
|
||||
* 1st = 40x, 2nd = 20x, 3rd = 10x, 4th = 5x (times playerCount).
|
||||
|
|
@ -105,7 +112,7 @@ export async function awardPokerGameResult(
|
|||
const xpByUser: Record<number, number> = {};
|
||||
|
||||
for (const result of results) {
|
||||
const xp = xpForPlacement(result.placement, playerCount);
|
||||
const xp = POKER_XP_ENABLED ? xpForPlacement(result.placement, playerCount) : 0;
|
||||
xpByUser[result.userId] = xp;
|
||||
|
||||
try {
|
||||
|
|
@ -123,7 +130,10 @@ export async function awardPokerGameResult(
|
|||
}
|
||||
|
||||
const current = readPokerStats(profile);
|
||||
const next = computePokerStatsDelta(current, result, playerCount);
|
||||
const delta = computePokerStatsDelta(current, result, playerCount);
|
||||
const next: PokerStats = POKER_XP_ENABLED
|
||||
? delta
|
||||
: { ...delta, xpEarned: current.xpEarned };
|
||||
const progression = (profile.progression ?? {}) as Record<string, unknown>;
|
||||
const minigames = (progression.minigames ?? {}) as Record<string, unknown>;
|
||||
|
||||
|
|
@ -143,11 +153,13 @@ export async function awardPokerGameResult(
|
|||
depth: 0,
|
||||
});
|
||||
|
||||
if (xp > 0) {
|
||||
broadcastToUser("profile-update", result.userId, {
|
||||
reason: "xp",
|
||||
xpGained: xp,
|
||||
profileId: profile.id,
|
||||
});
|
||||
}
|
||||
} catch (error) {
|
||||
const message = error instanceof Error ? error.message : String(error);
|
||||
payload.logger.error(
|
||||
|
|
|
|||
Loading…
Reference in a new issue