Remove noob target constraint

This commit is contained in:
Joseph Ferano 2022-05-08 18:28:35 +07:00
parent a2d6143460
commit 0d3a16001e

View File

@ -69,13 +69,6 @@ let checkTargetHasFunds target player =
| true -> Error $"Looks like the poor bastard has no $GBT... pick a different victim." | true -> Error $"Looks like the poor bastard has no $GBT... pick a different victim."
| false -> Ok player | false -> Ok player
let checkTargetIsNoob target (player : PlayerData) = async {
let! targetCompletedTraining = DbService.checkHasAchievement target.DiscordId Trainer.TrainerAchievement
if targetCompletedTraining || not target.Inventory.IsEmpty
then return Ok player
else return Error $"Looks like they haven't completed training with Sensei yet, you can't hack noobs..."
}
let runHackerBattle defender (hack : HackItem) = let runHackerBattle defender (hack : HackItem) =
defender defender
|> Player.removeExpiredActions |> Player.removeExpiredActions
@ -143,11 +136,9 @@ let failedHack (ctx : IDiscordContext) attacker defender (hack : HackItem) =
let hack (target : DiscordUser) (ctx : IDiscordContext) = let hack (target : DiscordUser) (ctx : IDiscordContext) =
executePlayerActionWithTarget target ctx (fun attacker defender -> async { executePlayerActionWithTarget target ctx (fun attacker defender -> async {
let! result = checkTargetIsNoob defender attacker
do! attacker do! attacker
|> Player.removeExpiredActions |> Player.removeExpiredActions
|> checkAlreadyHackedTarget defender |> checkAlreadyHackedTarget defender
>>= fun p -> match result with Ok _ -> Ok p | Error e -> Error e
>>= checkTargetHasFunds defender >>= checkTargetHasFunds defender
>>= checkHasEmptyHacks >>= checkHasEmptyHacks
>>= checkPlayerIsAttackingThemselves defender >>= checkPlayerIsAttackingThemselves defender
@ -385,6 +376,3 @@ type HackerGame() =
|> Async.AwaitTask |> Async.AwaitTask
} |> Async.StartAsTask } |> Async.StartAsTask
:> Task :> Task