Filter out unlisted items from inventory
This commit is contained in:
parent
a3ee9bbc1a
commit
21e23b9bdb
@ -120,6 +120,25 @@ let getStoreItems (storeId : string) =
|
|||||||
})
|
})
|
||||||
|> Async.AwaitTask
|
|> Async.AwaitTask
|
||||||
|
|
||||||
|
let getAllActiveStoreItems () =
|
||||||
|
connStr
|
||||||
|
|> Sql.connect
|
||||||
|
|> Sql.query """
|
||||||
|
SELECT store_id,stock,available,limit_stock,i.id,name,description,icon_url,image_url,category,
|
||||||
|
buy_price,sell_price,rate_limit,expiration,drop_chance,can_trade,can_consume,attack_power,defense_power,class_name,max_stack,mods
|
||||||
|
FROM store_item
|
||||||
|
JOIN item i on store_item.item_id = i.id
|
||||||
|
WHERE store_item.unlisted = false
|
||||||
|
"""
|
||||||
|
|> Sql.executeAsync (fun reader -> {
|
||||||
|
StoreId = reader.string "store_id"
|
||||||
|
Stock = reader.int "stock"
|
||||||
|
LimitStock = reader.bool "limit_stock"
|
||||||
|
Available = reader.bool "available"
|
||||||
|
StoreItem.Item = readItem reader
|
||||||
|
})
|
||||||
|
|> Async.AwaitTask
|
||||||
|
|
||||||
let getStoreItemBySymbol (itemSymbol : string) =
|
let getStoreItemBySymbol (itemSymbol : string) =
|
||||||
connStr
|
connStr
|
||||||
|> Sql.connect
|
|> Sql.connect
|
||||||
|
@ -195,10 +195,11 @@ let getSellEmbed (items : Inventory) =
|
|||||||
.AsEphemeral(true)
|
.AsEphemeral(true)
|
||||||
|
|
||||||
let showJpegsEmbed (ctx : IDiscordContext) = PlayerInteractions.executePlayerAction ctx (fun player -> async {
|
let showJpegsEmbed (ctx : IDiscordContext) = PlayerInteractions.executePlayerAction ctx (fun player -> async {
|
||||||
|
let! storeItems = DbService.getAllActiveStoreItems ()
|
||||||
let jpegs =
|
let jpegs =
|
||||||
player.Inventory
|
player.Inventory
|
||||||
|> Inventory.getItemsByType ItemType.Jpeg
|
|> Inventory.getItemsByType ItemType.Jpeg
|
||||||
|> List.map (fun i -> { StoreId = "BACKALLEY" ; Item = i ; Stock = 1 ; LimitStock = false ; Available = true })
|
|> List.choose (fun ii -> storeItems |> List.tryFind (fun si -> si.Item.Id = ii.Id))
|
||||||
match jpegs with
|
match jpegs with
|
||||||
| [] -> do! Messaging.sendFollowUpMessage ctx $"You currently do not own any jpegs or raffle tickets. Go to <#{GuildEnvironment.channelBackAlley}> to buy some"
|
| [] -> do! Messaging.sendFollowUpMessage ctx $"You currently do not own any jpegs or raffle tickets. Go to <#{GuildEnvironment.channelBackAlley}> to buy some"
|
||||||
| jpegs ->
|
| jpegs ->
|
||||||
|
Loading…
x
Reference in New Issue
Block a user