Delete queries that update stats
This commit is contained in:
parent
dc84d2de4c
commit
ef8120e9c4
@ -235,24 +235,6 @@ let getPlayerEvents (did : uint64) =
|
|||||||
)
|
)
|
||||||
|> Async.AwaitTask
|
|> 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 {
|
let tryFindPlayer (discordId : uint64) = async {
|
||||||
try
|
try
|
||||||
let! user =
|
let! user =
|
||||||
@ -308,23 +290,6 @@ let updatePlayerCurrency (addAmount : int<GBT>) (did : uint64) =
|
|||||||
|> Sql.executeNonQueryAsync
|
|> Sql.executeNonQueryAsync
|
||||||
|> Async.AwaitTask
|
|> 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) =
|
let addAchievement (did : uint64) (achievement : string) =
|
||||||
connStr
|
connStr
|
||||||
|> Sql.connect
|
|> Sql.connect
|
||||||
|
@ -96,8 +96,8 @@ let updateCombatants successfulHack (attacker : PlayerData) (defender : PlayerDa
|
|||||||
Timestamp = DateTime.UtcNow
|
Timestamp = DateTime.UtcNow
|
||||||
Cooldown = if isDefenderEvent then int WeaponClass.SameTargetAttackCooldown.TotalMinutes * 1<mins> else hack.Cooldown }
|
Cooldown = if isDefenderEvent then int WeaponClass.SameTargetAttackCooldown.TotalMinutes * 1<mins> else hack.Cooldown }
|
||||||
|
|
||||||
[ DbService.updatePlayer <| updatePlayer prize (event false) attacker
|
[ DbService.updatePlayerCurrency prize attacker.DiscordId
|
||||||
DbService.updatePlayer <| updatePlayer -prize (event true) defender
|
DbService.updatePlayerCurrency -prize defender.DiscordId
|
||||||
DbService.addPlayerEvent attacker.DiscordId (event false)
|
DbService.addPlayerEvent attacker.DiscordId (event false)
|
||||||
DbService.addPlayerEvent defender.DiscordId (event true) ]
|
DbService.addPlayerEvent defender.DiscordId (event true) ]
|
||||||
|> Async.Parallel
|
|> Async.Parallel
|
||||||
@ -212,7 +212,6 @@ let handleDefense (ctx : IDiscordContext) =
|
|||||||
Cooldown = shieldItem.Cooldown
|
Cooldown = shieldItem.Cooldown
|
||||||
Timestamp = DateTime.UtcNow
|
Timestamp = DateTime.UtcNow
|
||||||
}
|
}
|
||||||
do! DbService.updatePlayer p |> Async.Ignore
|
|
||||||
do! DbService.addPlayerEvent p.DiscordId defense |> Async.Ignore
|
do! DbService.addPlayerEvent p.DiscordId defense |> Async.Ignore
|
||||||
let builder = DiscordMessageBuilder()
|
let builder = DiscordMessageBuilder()
|
||||||
builder.WithContent($"{ctx.GetDiscordMember().Username} has protected their system!") |> ignore
|
builder.WithContent($"{ctx.GetDiscordMember().Username} has protected their system!") |> ignore
|
||||||
@ -271,7 +270,6 @@ let arsenal (ctx : IDiscordContext) =
|
|||||||
builder.AddEmbed(embed) |> ignore
|
builder.AddEmbed(embed) |> ignore
|
||||||
builder.IsEphemeral <- true
|
builder.IsEphemeral <- true
|
||||||
do! ctx.FollowUp(builder) |> Async.AwaitTask
|
do! ctx.FollowUp(builder) |> Async.AwaitTask
|
||||||
do! DbService.updatePlayer updatedPlayer |> Async.Ignore
|
|
||||||
do! Analytics.arsenalCommand (ctx.GetDiscordMember())
|
do! Analytics.arsenalCommand (ctx.GetDiscordMember())
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -182,7 +182,7 @@ let handleSteal (ctx : IDiscordContext) =
|
|||||||
Timestamp = DateTime.UtcNow
|
Timestamp = DateTime.UtcNow
|
||||||
Cooldown = VictimRecovery.Minutes * 1<mins>
|
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
|
do! DbService.addPlayerEvent victim.DiscordId mugged |> Async.Ignore
|
||||||
| None -> ()
|
| None -> ()
|
||||||
|
|
||||||
@ -191,7 +191,7 @@ let handleSteal (ctx : IDiscordContext) =
|
|||||||
Cooldown = ThiefCooldown.Minutes * 1<mins>
|
Cooldown = ThiefCooldown.Minutes * 1<mins>
|
||||||
Timestamp = DateTime.UtcNow
|
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
|
do! DbService.addPlayerEvent victim.DiscordId stole |> Async.Ignore
|
||||||
let builder = DiscordMessageBuilder()
|
let builder = DiscordMessageBuilder()
|
||||||
builder.WithContent($"{thief.Name} stole {prize} from <@{victim.DiscordId}>!") |> ignore
|
builder.WithContent($"{thief.Name} stole {prize} from <@{victim.DiscordId}>!") |> ignore
|
||||||
|
Loading…
x
Reference in New Issue
Block a user