mirror of
https://github.com/prosolis/gogobee.git
synced 2026-07-15 08:32:41 +00:00
Add UNO addbot, fix audit issues, add fishing to superstats, update README
UNO addbot: - !uno addbot / !uno removebot for lobby bot management (WinBee, GwinBee) - Bots ante from community pot, increasing the total pot - Single human can start a game if bots fill remaining slots - Per-bot display names throughout (replaces global unoBotName) Audit fixes: - Lobby display now always shows both humans and bots (was omitting bots on join) - Slot check accounts for bots (was only counting humans) - Color Roulette bot victim name fixed (was showing acting bot's name) - Lobby display built under lock to prevent stale reads - Bot name list separated from env var to prevent duplicates - Extracted shared buildLobbyDisplay helper - Inlined unnecessary nameOf closure in sudden death Other: - T5 masterwork drop rate reduced from 1.5% to 0.5% - Added fishing stats to !superstatsexplusalpha - Updated README with all new features Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -399,15 +399,15 @@ func (p *StatsPlugin) handleSuperStats(ctx MessageContext) error {
|
||||
sb.WriteString("\n")
|
||||
|
||||
// ── Adventure ──
|
||||
var combatLv, miningLv, forageLv, combatXP, miningXP, forageXP int
|
||||
var combatLv, miningLv, fishingLv, forageLv, combatXP, miningXP, fishingXP, forageXP int
|
||||
var alive bool
|
||||
var streak, bestStreak int
|
||||
err = d.QueryRow(
|
||||
`SELECT combat_level, mining_skill, foraging_skill,
|
||||
combat_xp, mining_xp, foraging_xp,
|
||||
`SELECT combat_level, mining_skill, fishing_skill, foraging_skill,
|
||||
combat_xp, mining_xp, fishing_xp, foraging_xp,
|
||||
alive, current_streak, best_streak
|
||||
FROM adventure_characters WHERE user_id = ?`, uid,
|
||||
).Scan(&combatLv, &miningLv, &forageLv, &combatXP, &miningXP, &forageXP,
|
||||
).Scan(&combatLv, &miningLv, &fishingLv, &forageLv, &combatXP, &miningXP, &fishingXP, &forageXP,
|
||||
&alive, &streak, &bestStreak)
|
||||
if err == nil {
|
||||
status := "Alive"
|
||||
@@ -415,8 +415,8 @@ func (p *StatsPlugin) handleSuperStats(ctx MessageContext) error {
|
||||
status = "💀 Dead"
|
||||
}
|
||||
sb.WriteString(fmt.Sprintf("⚔️ **Adventure:** %s\n", status))
|
||||
sb.WriteString(fmt.Sprintf(" Combat Lv.%d (%d XP) · Mining Lv.%d (%d XP) · Forage Lv.%d (%d XP)\n",
|
||||
combatLv, combatXP, miningLv, miningXP, forageLv, forageXP))
|
||||
sb.WriteString(fmt.Sprintf(" Combat Lv.%d (%d XP) · Mining Lv.%d (%d XP) · Fishing Lv.%d (%d XP) · Forage Lv.%d (%d XP)\n",
|
||||
combatLv, combatXP, miningLv, miningXP, fishingLv, fishingXP, forageLv, forageXP))
|
||||
if streak > 0 || bestStreak > 0 {
|
||||
sb.WriteString(fmt.Sprintf(" 🔥 Streak: %d days (best: %d)\n", streak, bestStreak))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user