New embed hacker battle

This commit is contained in:
Joseph Ferano 2022-07-18 15:50:47 +07:00
parent bf8783a993
commit 0b430aafac

View File

@ -75,7 +75,7 @@ let pickHack actionId attacker defender bonus isTrainer =
**{defender.Name}** has `{defender.Bank} 💰$GBT` we can take from them.
**__Your Strength:__**
`💪 {attacker.Stats.Strength.Amount}`
`💪 {attacker.Stats.Strength.Amount}`
**__Their Strength:__**
`💪 {defender.Stats.Strength.Amount}`
@ -130,37 +130,42 @@ let responseSuccessfulHack (hacker : PlayerData) (target : PlayerData) totalTake
let responseSuccessfulHack2 successful (hacker : PlayerData) (target : PlayerData) (hackerMember : DiscordMember) (targetMember : DiscordMember) totalTaken bonus (hack : HackItem) =
let hackerEmbed =
if successful then
// Put how much they lost and if they lost it all, say it
let lostMsg = if target.Bank - totalTaken = 0<GBT> then "all their $GBT" else $"`{totalTaken} $GBT`"
let e =
DiscordEmbedBuilder()
.WithAuthor($"✅ {hacker.Name} Hack Successful!" , iconUrl = hackerMember.AvatarUrl)
.WithDescription($"Successfully hacked **{target.Name}** and took {lostMsg}!")
.WithAuthor($"✅ {hacker.Name}" , iconUrl = hackerMember.AvatarUrl)
.WithColor(DiscordColor.Green)
.AddField("Strength", $"{hacker.Stats.Strength.Amount} 💪", true)
.AddField($"Hacked", $"`{totalTaken} 💰$GBT`", true)
.AddField("Strength 💪", $"{hacker.Stats.Strength.Amount} vs {target.Stats.Strength.Amount}", true)
if bonus > 0<GBT> then e.AddField($"Strength Bonus", $"`{bonus} 💰$GBT`", true) |> ignore
e.AddField("New $GBT Balance", $"`💰` {hacker.Bank} `💰` {hacker.Bank + totalTaken} `(+{totalTaken} $GBT)`", true)
e.AddField("New $GBT Balance", $"`💰` {hacker.Bank + totalTaken} `(+{totalTaken} $GBT)`", true)
else
let lostMsg = if hacker.Bank - totalTaken = 0<GBT> then "all their $GBT" else $"`{totalTaken} $GBT`"
DiscordEmbedBuilder()
.WithAuthor(name = $"❌ {hacker.Name} Hack Failed!" , iconUrl = hackerMember.AvatarUrl)
.AddField("Strength", $"{hacker.Stats.Strength.Amount} 💪", true)
.AddField("New $GBT Balance", $"`💰` {hacker.Bank} `💰` {hacker.Bank - totalTaken} `(-{totalTaken} $GBT)`", true)
.WithAuthor(name = $"❌ {hacker.Name}" , iconUrl = hackerMember.AvatarUrl)
.WithDescription($"Failed to hack **{target.Name}** and lost {lostMsg}!")
.AddField("Strength 💪", $"{hacker.Stats.Strength.Amount} vs {target.Stats.Strength.Amount}", true)
.AddField("New $GBT Balance", $"`💰` {hacker.Bank - totalTaken} `(-{totalTaken} $GBT)`", true)
.WithColor(DiscordColor.Red)
let defenderEmbed =
if successful then
DiscordEmbedBuilder()
.WithAuthor(name = target.Name , iconUrl = targetMember.AvatarUrl)
.AddField("Strength", $"{target.Stats.Strength.Amount} 💪", true)
.AddField("New $GBT Balance", $"`💰` {target.Bank} `💰` {target.Bank - totalTaken} `(-{totalTaken} $GBT)`", true)
.WithColor(DiscordColor.Red)
else
DiscordEmbedBuilder()
.WithAuthor(name = target.Name , iconUrl = targetMember.AvatarUrl)
.AddField("Strength", $"{target.Stats.Strength.Amount} 💪", true)
.AddField($"Extracted", $"`{totalTaken} 💰$GBT`", true)
.AddField("New $GBT Balance", $"`💰` {target.Bank} `💰` {target.Bank + totalTaken} `(+{totalTaken} $GBT)`", true)
.WithColor(DiscordColor.Green)
// let defenderEmbed =
// if successful then
// DiscordEmbedBuilder()
// .WithAuthor(name = target.Name , iconUrl = targetMember.AvatarUrl)
// .AddField("Strength", $"{target.Stats.Strength.Amount} 💪", true)
// .AddField("New $GBT Balance", $"`💰` {target.Bank} `💰` {target.Bank - totalTaken} `(-{totalTaken} $GBT)`", true)
// .WithColor(DiscordColor.Red)
// else
// DiscordEmbedBuilder()
// .WithAuthor(name = target.Name , iconUrl = targetMember.AvatarUrl)
// .AddField("Strength", $"{target.Stats.Strength.Amount} 💪", true)
// .AddField($"Extracted", $"`{totalTaken} 💰$GBT`", true)
// .AddField("New $GBT Balance", $"`💰` {target.Bank} `💰` {target.Bank + totalTaken} `(+{totalTaken} $GBT)`", true)
// .WithColor(DiscordColor.Green)
DiscordMessageBuilder().AddEmbeds([ hackerEmbed ; defenderEmbed ] |> List.map (fun e -> e.Build()))
// DiscordMessageBuilder().AddEmbeds([ hackerEmbed ; defenderEmbed ] |> List.map (fun e -> e.Build()))
DiscordMessageBuilder().AddEmbeds([ hackerEmbed ] |> List.map (fun e -> e.Build()))
let responseCreatedShield (shield : ShieldItem) =
let embed = DiscordEmbedBuilder().WithImageUrl(shield.ImageUrl)