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