Delete queries that update stats
This commit is contained in:
parent
dc84d2de4c
commit
ef8120e9c4
@ -235,24 +235,6 @@ let getPlayerEvents (did : uint64) =
|
||||
)
|
||||
|> Async.AwaitTask
|
||||
|
||||
let updatePlayerStats (player : PlayerData) =
|
||||
connStr
|
||||
|> Sql.connect
|
||||
|> Sql.parameters
|
||||
[ ( "did" , Sql.string (string player.DiscordId) )
|
||||
( "strength", Sql.int player.Stats.Strength.Amount )
|
||||
( "focus", Sql.int player.Stats.Focus.Amount )
|
||||
( "charisma", Sql.int player.Stats.Charisma.Amount )
|
||||
( "luck", Sql.int player.Stats.Luck.Amount ) ]
|
||||
|> Sql.query """
|
||||
WITH usr AS (SELECT id FROM "user" WHERE discord_id = @did)
|
||||
UPDATE player_stat SET strength = @strength, focus = @focus, charisma = @charisma, luck = @luck,
|
||||
updated_at = now() at time zone 'utc'
|
||||
FROM usr WHERE usr.id = user_id;
|
||||
"""
|
||||
|> Sql.executeNonQueryAsync
|
||||
|> Async.AwaitTask
|
||||
|
||||
let tryFindPlayer (discordId : uint64) = async {
|
||||
try
|
||||
let! user =
|
||||
@ -308,23 +290,6 @@ let updatePlayerCurrency (addAmount : int<GBT>) (did : uint64) =
|
||||
|> Sql.executeNonQueryAsync
|
||||
|> Async.AwaitTask
|
||||
|
||||
let updatePlayer (player : PlayerData) =
|
||||
connStr
|
||||
|> Sql.connect
|
||||
|> Sql.parameters [
|
||||
"did", Sql.string (string player.DiscordId)
|
||||
"gbt", Sql.int (int player.Bank)
|
||||
"strength", Sql.int player.Stats.Strength.Amount
|
||||
"focus", Sql.int player.Stats.Focus.Amount
|
||||
"charisma", Sql.int player.Stats.Charisma.Amount
|
||||
"luck", Sql.int player.Stats.Luck.Amount
|
||||
] |> Sql.query """
|
||||
UPDATE "user" SET gbt = @gbt, strength = @strength, focus = @focus, charisma = @charisma, luck = @luck
|
||||
WHERE discord_id = @did
|
||||
"""
|
||||
|> Sql.executeNonQueryAsync
|
||||
|> Async.AwaitTask
|
||||
|
||||
let addAchievement (did : uint64) (achievement : string) =
|
||||
connStr
|
||||
|> Sql.connect
|
||||
|
@ -96,8 +96,8 @@ let updateCombatants successfulHack (attacker : PlayerData) (defender : PlayerDa
|
||||
Timestamp = DateTime.UtcNow
|
||||
Cooldown = if isDefenderEvent then int WeaponClass.SameTargetAttackCooldown.TotalMinutes * 1<mins> else hack.Cooldown }
|
||||
|
||||
[ DbService.updatePlayer <| updatePlayer prize (event false) attacker
|
||||
DbService.updatePlayer <| updatePlayer -prize (event true) defender
|
||||
[ DbService.updatePlayerCurrency prize attacker.DiscordId
|
||||
DbService.updatePlayerCurrency -prize defender.DiscordId
|
||||
DbService.addPlayerEvent attacker.DiscordId (event false)
|
||||
DbService.addPlayerEvent defender.DiscordId (event true) ]
|
||||
|> Async.Parallel
|
||||
@ -212,7 +212,6 @@ let handleDefense (ctx : IDiscordContext) =
|
||||
Cooldown = shieldItem.Cooldown
|
||||
Timestamp = DateTime.UtcNow
|
||||
}
|
||||
do! DbService.updatePlayer p |> Async.Ignore
|
||||
do! DbService.addPlayerEvent p.DiscordId defense |> Async.Ignore
|
||||
let builder = DiscordMessageBuilder()
|
||||
builder.WithContent($"{ctx.GetDiscordMember().Username} has protected their system!") |> ignore
|
||||
@ -271,7 +270,6 @@ let arsenal (ctx : IDiscordContext) =
|
||||
builder.AddEmbed(embed) |> ignore
|
||||
builder.IsEphemeral <- true
|
||||
do! ctx.FollowUp(builder) |> Async.AwaitTask
|
||||
do! DbService.updatePlayer updatedPlayer |> Async.Ignore
|
||||
do! Analytics.arsenalCommand (ctx.GetDiscordMember())
|
||||
})
|
||||
|
||||
|
@ -182,7 +182,7 @@ let handleSteal (ctx : IDiscordContext) =
|
||||
Timestamp = DateTime.UtcNow
|
||||
Cooldown = VictimRecovery.Minutes * 1<mins>
|
||||
}
|
||||
do! DbService.updatePlayer { t with Bank = max (t.Bank - prize) 0<GBT> } |> Async.Ignore
|
||||
do! DbService.updatePlayerCurrency -prize t.DiscordId |> Async.Ignore
|
||||
do! DbService.addPlayerEvent victim.DiscordId mugged |> Async.Ignore
|
||||
| None -> ()
|
||||
|
||||
@ -191,7 +191,7 @@ let handleSteal (ctx : IDiscordContext) =
|
||||
Cooldown = ThiefCooldown.Minutes * 1<mins>
|
||||
Timestamp = DateTime.UtcNow
|
||||
}
|
||||
do! DbService.updatePlayer { thief with Bank = thief.Bank + prize } |> Async.Ignore
|
||||
do! DbService.updatePlayerCurrency prize thief.DiscordId |> Async.Ignore
|
||||
do! DbService.addPlayerEvent victim.DiscordId stole |> Async.Ignore
|
||||
let builder = DiscordMessageBuilder()
|
||||
builder.WithContent($"{thief.Name} stole {prize} from <@{victim.DiscordId}>!") |> ignore
|
||||
|
Loading…
x
Reference in New Issue
Block a user