Finish off analytics for now
This commit is contained in:
parent
fc438be0f0
commit
f25b495089
@ -121,15 +121,15 @@ let sellWeaponButton (discordMember : DiscordMember) (weapon : ItemDetails) =
|
|||||||
]
|
]
|
||||||
track "Sell Weapon Button Clicked" discordMember.Id data
|
track "Sell Weapon Button Clicked" discordMember.Id data
|
||||||
|
|
||||||
let hackCommand id name =
|
let hackCommand (discordMember : DiscordMember) =
|
||||||
let data = [
|
let data = [
|
||||||
"user_display_name" , name
|
"user_display_name" , discordMember.Username
|
||||||
]
|
]
|
||||||
track "Hack Command Invoked" id data
|
track "Hack Command Invoked" id data
|
||||||
|
|
||||||
let shieldCommand id name =
|
let shieldCommand (discordMember : DiscordMember) =
|
||||||
let data = [
|
let data = [
|
||||||
"user_display_name" , name
|
"user_display_name" , discordMember.Username
|
||||||
]
|
]
|
||||||
track "Hack Command Invoked" id data
|
track "Hack Command Invoked" id data
|
||||||
|
|
||||||
|
@ -148,9 +148,12 @@ let hack (target : DiscordUser) (ctx : IDiscordContext) =
|
|||||||
>>= checkHasEmptyHacks
|
>>= checkHasEmptyHacks
|
||||||
>>= checkPlayerIsAttackingThemselves defender
|
>>= checkPlayerIsAttackingThemselves defender
|
||||||
|> function
|
|> function
|
||||||
| Ok atkr ->
|
| Ok atkr -> async {
|
||||||
let embed = Embeds.pickHack "Attack" atkr defender false
|
let embed = Embeds.pickHack "Attack" atkr defender false
|
||||||
ctx.FollowUp(embed) |> Async.AwaitTask
|
do! ctx.FollowUp(embed) |> Async.AwaitTask
|
||||||
|
// TODO: Add a call when it's an error with the error type, must include an error code
|
||||||
|
do! Analytics.hackCommand (ctx.GetDiscordMember())
|
||||||
|
}
|
||||||
| Error msg -> sendFollowUpMessage ctx msg
|
| Error msg -> sendFollowUpMessage ctx msg
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -188,6 +191,7 @@ let defend (ctx : IDiscordContext) =
|
|||||||
let p = Player.removeExpiredActions player
|
let p = Player.removeExpiredActions player
|
||||||
let embed = Embeds.pickDefense "Defend" p false
|
let embed = Embeds.pickDefense "Defend" p false
|
||||||
do! ctx.FollowUp embed |> Async.AwaitTask
|
do! ctx.FollowUp embed |> Async.AwaitTask
|
||||||
|
do! Analytics.shieldCommand (ctx.GetDiscordMember())
|
||||||
else
|
else
|
||||||
let msg = $"You currently do not have any Shields to protect yourself from hacks. Please go to the <#{GuildEnvironment.channelTraining}> and purchase one."
|
let msg = $"You currently do not have any Shields to protect yourself from hacks. Please go to the <#{GuildEnvironment.channelTraining}> and purchase one."
|
||||||
do! Messaging.sendFollowUpMessage ctx msg
|
do! Messaging.sendFollowUpMessage ctx msg
|
||||||
@ -211,16 +215,15 @@ let handleDefense (ctx : IDiscordContext) =
|
|||||||
Cooldown = shield.Cooldown
|
Cooldown = shield.Cooldown
|
||||||
Timestamp = DateTime.UtcNow
|
Timestamp = DateTime.UtcNow
|
||||||
}
|
}
|
||||||
do! DbService.updatePlayer p
|
do! DbService.updatePlayer p |> Async.Ignore
|
||||||
|> 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
|
||||||
let channel = ctx.GetGuild().GetChannel(GuildEnvironment.channelEventsHackerBattle)
|
let channel = ctx.GetGuild().GetChannel(GuildEnvironment.channelEventsHackerBattle)
|
||||||
do! channel.SendMessageAsync(builder)
|
do! channel.SendMessageAsync(builder)
|
||||||
|> Async.AwaitTask
|
|> Async.AwaitTask
|
||||||
|> Async.Ignore
|
|> Async.Ignore
|
||||||
|
do! Analytics.shieldActivated (ctx.GetDiscordMember()) shield.Item.Name
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -167,18 +167,6 @@ let handleSell (ctx : IDiscordContext) itemId =
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
//let inventory (ctx : IDiscordContext) =
|
|
||||||
// executePlayerAction ctx (fun player -> async {
|
|
||||||
// player.Inventory
|
|
||||||
// |> List.groupBy (fun item -> item.Details)
|
|
||||||
// })
|
|
||||||
//
|
|
||||||
//
|
|
||||||
//let consume (ctx : IDiscordContext) =
|
|
||||||
// executePlayerAction ctx (fun player -> async {
|
|
||||||
//
|
|
||||||
// })
|
|
||||||
|
|
||||||
let handleStoreEvents (_ : DiscordClient) (event : ComponentInteractionCreateEventArgs) =
|
let handleStoreEvents (_ : DiscordClient) (event : ComponentInteractionCreateEventArgs) =
|
||||||
let ctx = DiscordEventContext event :> IDiscordContext
|
let ctx = DiscordEventContext event :> IDiscordContext
|
||||||
let id = ctx.GetInteractionId()
|
let id = ctx.GetInteractionId()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user