discord-bot-game/Bot/GuildEnvironment.fs

71 lines
3.1 KiB
Forth

[<Microsoft.FSharp.Core.RequireQualifiedAccess>]
module Degenz.GuildEnvironment
open System
open DSharpPlus
open DSharpPlus.Entities
open dotenv.net
DotEnv.Load(DotEnvOptions(envFilePaths = [ "../../../../.dev.env" ], overwriteExistingVars = false))
//DotEnv.Load(DotEnvOptions(envFilePaths = [ "../../../../.stag.env" ], overwriteExistingVars = false))
//DotEnv.Load(DotEnvOptions(envFilePaths = [ "../../../../.prod.env" ], overwriteExistingVars = false))
let getVar str = Environment.GetEnvironmentVariable(str)
let getId str = getVar str |> uint64
let connectionString = (getVar "DATABASE_URL").Replace("postgresql://", "postgres://").Replace("?sslmode=require", "")
let guildId = getId "DISCORD_GUILD"
let environment = getVar "ENVIRONMENT"
let tokenPlayerInteractions = getVar "TOKEN_PLAYER_INTERACTIONS"
let tokenSteal = getVar "TOKEN_STEAL"
let tokenHackerBattle = getVar "TOKEN_HACKER_BATTLE"
let tokenStore = getVar "TOKEN_STORE"
let tokenJpeg = getVar "TOKEN_JPEG"
let tokenInviter = getVar "TOKEN_INVITER"
let tokenSlots = getVar "TOKEN_SLOTS"
let tokenAdmin = getVar "TOKEN_ADMINBOT"
let tokenMixpanel = getVar "TOKEN_MIXPANEL"
let channelEventsHackerBattle = getId "CHANNEL_EVENTS_HACKER_BATTLE"
let channelTraining = getId "CHANNEL_TRAINING"
let channelArmory = getId "CHANNEL_ARMORY"
let channelBattle = getId "CHANNEL_BATTLE"
let channelWelcome = getId "CHANNEL_WELCOME"
let channelWhitelist = getId "CHANNEL_WHITELIST"
let channelRecruitment = getId "CHANNEL_RECRUIT"
//let channelTosserTed = getId "CHANNEL_TOSSERTED"
let channelShelters = getId "CHANNEL_SHELTERS"
let channelSlots = getId "CHANNEL_SLOTS"
//let channelJackpotNum = getId "CHANNEL_JACKPOTNUM"
let channelBackAlley = getId "CHANNEL_BACKALLEY"
let channelMarket = getId "CHANNEL_MARKET"
let channelAccessoryShop = getId "CHANNEL_ACCESSORIES"
let channelGiveaway = getId "CHANNEL_GIVEAWAY"
let channelSubmitWallet = getId "CHANNEL_SUBMIT_WALLET"
let channelAnnouncements = getId "CHANNEL_ANNOUNCEMENTS"
let channelGeneral = getId "CHANNEL_GENERAL"
let channelQuests = getId "CHANNEL_QUESTS"
let channelQuestProof = getId "CHANNEL_QUEST_PROOF"
//let channelThievery = getId "CHANNEL_THIEVERY"
let botIdHackerBattle = getId "BOT_HACKER_BATTLE"
let botIdArmory = getId "BOT_ARMORY"
//let botIdTosserTed = getId "BOT_TOSSERTED"
//let botInviter = getId "BOT_INVITER"
let roleTrainee = getId "ROLE_TRAINEE"
let roleHacker = getId "ROLE_HACKER"
let rolePrisoner = getId "ROLE_PRISONER"
let roleWhitelistPending = getId "ROLE_WHITELIST_PENDING"
let roleWhiteOGPending = getId "ROLE_WHITEOG_PENDING"
let roleWhitelist = getId "ROLE_WHITELIST"
let roleWhiteOG = getId "ROLE_WHITEOG"
let roleAdmin = getId "ROLE_ADMIN"
let roleMagicEden = getId "ROLE_MAGICEDEN"
let roleRecruiter1x = getId "ROLE_RECRUITER_1X"
let roleRecruiter2x = getId "ROLE_RECRUITER_2X"
let roleRecruiter3x = getId "ROLE_RECRUITER_3X"
let mutable botClientRecruit : DiscordClient option = None
let mutable botClientHacker : DiscordClient option = None
let mutable botClientSlots : DiscordClient option = None
let mutable botClientJpeg : DiscordClient option = None
let mutable botClientStore : DiscordClient option = None