Change the dollar sign to AUEC sign for star citizen, also remove palworld rcon pass env var
This commit is contained in:
parent
320bfb25a1
commit
23f614243c
@ -1,8 +1,6 @@
|
|||||||
from discord import option
|
from discord.ext import commands
|
||||||
from discord.ext import commands, tasks
|
|
||||||
import core_utils
|
import core_utils
|
||||||
import discord
|
import discord
|
||||||
import json
|
|
||||||
import os
|
import os
|
||||||
import random
|
import random
|
||||||
|
|
||||||
@ -29,13 +27,13 @@ class Tarkov(commands.Cog):
|
|||||||
weapons = tarkov.request_wiki("Weapons", "Weapons")
|
weapons = tarkov.request_wiki("Weapons", "Weapons")
|
||||||
armors = tarkov.request_wiki("Armor_vests", "Armor vests")
|
armors = tarkov.request_wiki("Armor_vests", "Armor vests")
|
||||||
helmet = tarkov.request_wiki("Headwear", "Headwear")
|
helmet = tarkov.request_wiki("Headwear", "Headwear")
|
||||||
chest_rigs = tarkov.request_wiki("Chest_rigs", "Chest rigs")
|
tarkov.request_wiki("Chest_rigs", "Chest rigs")
|
||||||
backpacks = tarkov.request_wiki("Backpacks", "Backpacks")
|
backpacks = tarkov.request_wiki("Backpacks", "Backpacks")
|
||||||
gun_mods_trader_level = [
|
gun_mods_trader_level = [
|
||||||
"Use it as it comes from a trader",
|
"Use it as it comes from a trader",
|
||||||
tarkov.allowed_level_roll(),
|
tarkov.allowed_level_roll(),
|
||||||
]
|
]
|
||||||
armor_trader_level = tarkov.allowed_level_roll()
|
tarkov.allowed_level_roll()
|
||||||
|
|
||||||
embed = discord.Embed(
|
embed = discord.Embed(
|
||||||
title="🎲🎰 Loadout Lottery 🎰🎲",
|
title="🎲🎰 Loadout Lottery 🎰🎲",
|
||||||
|
56
app/cogs/warframe.py
Executable file
56
app/cogs/warframe.py
Executable file
@ -0,0 +1,56 @@
|
|||||||
|
from bs4 import BeautifulSoup
|
||||||
|
from discord import option
|
||||||
|
from discord.ext import commands, tasks
|
||||||
|
import discord
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
import queue
|
||||||
|
import requests
|
||||||
|
import threading
|
||||||
|
|
||||||
|
import core_utils
|
||||||
|
import warframe
|
||||||
|
|
||||||
|
|
||||||
|
class Warframe(commands.Cog):
|
||||||
|
def __init__(self, bot):
|
||||||
|
self.bot: commands.Bot = bot
|
||||||
|
|
||||||
|
warframe = discord.SlashCommandGroup("warframe", "Warframe related commands")
|
||||||
|
|
||||||
|
async def get_all_mods(ctx: discord.AutocompleteContext):
|
||||||
|
threads = []
|
||||||
|
q = queue.Queue(maxsize=0)
|
||||||
|
for letter in [chr(i) for i in range(ord("a"), ord("z") + 1)]:
|
||||||
|
t = threading.Thread(target=warframe.query_wiki, args=(letter, q))
|
||||||
|
t.start()
|
||||||
|
threads.append(t)
|
||||||
|
|
||||||
|
# Block until all threads / queues are done working
|
||||||
|
q.join()
|
||||||
|
for x in threads:
|
||||||
|
x.join()
|
||||||
|
|
||||||
|
return sorted([item for sublist in list(q.queue) for item in sublist])
|
||||||
|
|
||||||
|
@warframe.command(
|
||||||
|
guild_ids=core_utils.my_guilds,
|
||||||
|
name="mod",
|
||||||
|
description="Query the warframe wiki for a mod",
|
||||||
|
)
|
||||||
|
async def get_warframe_mod(
|
||||||
|
self,
|
||||||
|
ctx: commands.Context,
|
||||||
|
mod: discord.Option(
|
||||||
|
str,
|
||||||
|
autocomplete=discord.utils.basic_autocomplete(get_all_mods),
|
||||||
|
description="The mod to look up",
|
||||||
|
),
|
||||||
|
):
|
||||||
|
await ctx.defer()
|
||||||
|
# embed = await star_citizen.get_ship(ship_name=ship)
|
||||||
|
await ctx.send_followup(f"you picked {mod}")
|
||||||
|
|
||||||
|
|
||||||
|
def setup(bot):
|
||||||
|
bot.add_cog(Warframe(bot))
|
@ -1,6 +1,5 @@
|
|||||||
from bs4 import BeautifulSoup
|
from bs4 import BeautifulSoup
|
||||||
import discord
|
import discord
|
||||||
import json
|
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
import requests
|
import requests
|
||||||
@ -482,8 +481,8 @@ async def calculate_trade_profits(commodity, scu=None):
|
|||||||
url="https://media.starcitizen.tools/thumb/b/bb/Shubin_logo_circle.png/120px-Shubin_logo_circle.png"
|
url="https://media.starcitizen.tools/thumb/b/bb/Shubin_logo_circle.png/120px-Shubin_logo_circle.png"
|
||||||
)
|
)
|
||||||
|
|
||||||
price_origin = response["price_origin"]
|
# price_origin = response["price_origin"]
|
||||||
price_destination = response["price_destination"]
|
response["price_destination"]
|
||||||
margin = response["price_margin"]
|
margin = response["price_margin"]
|
||||||
investment = response["investment"]
|
investment = response["investment"]
|
||||||
profit = response["profit"]
|
profit = response["profit"]
|
||||||
@ -503,14 +502,14 @@ async def calculate_trade_profits(commodity, scu=None):
|
|||||||
|
|
||||||
embed.add_field(
|
embed.add_field(
|
||||||
name="Initial Investment",
|
name="Initial Investment",
|
||||||
value="${:20,.2f} aUEC".format(investment),
|
value="¤{:20,.2f} aUEC".format(investment),
|
||||||
inline=False,
|
inline=False,
|
||||||
)
|
)
|
||||||
embed.add_field(
|
embed.add_field(
|
||||||
name="Total Profit", value="${:20,.2f} aUEC".format(profit), inline=True
|
name="Total Profit", value="¤{:20,.2f} aUEC".format(profit), inline=True
|
||||||
)
|
)
|
||||||
embed.add_field(
|
embed.add_field(
|
||||||
name="Margin", value="${:20,.2f} aUEC/scu".format(margin), inline=True
|
name="Margin", value="¤{:20,.2f} aUEC/scu".format(margin), inline=True
|
||||||
)
|
)
|
||||||
return embed
|
return embed
|
||||||
|
|
||||||
@ -550,7 +549,7 @@ async def get_price(commodity, scu):
|
|||||||
|
|
||||||
embed.add_field(
|
embed.add_field(
|
||||||
name="Best place to sell %s of %s" % (scu_string, commodity),
|
name="Best place to sell %s of %s" % (scu_string, commodity),
|
||||||
value="%s: $%s"
|
value="%s: ¤%s"
|
||||||
% (
|
% (
|
||||||
max(profits, key=profits.get),
|
max(profits, key=profits.get),
|
||||||
"{:20,.2f}".format(profits[max(profits, key=profits.get)]).strip(),
|
"{:20,.2f}".format(profits[max(profits, key=profits.get)]).strip(),
|
||||||
|
@ -8,7 +8,7 @@ def request_wiki(url, heading):
|
|||||||
"https://escapefromtarkov.fandom.com/wiki/Category:" + url, timeout=25
|
"https://escapefromtarkov.fandom.com/wiki/Category:" + url, timeout=25
|
||||||
).text
|
).text
|
||||||
soup = BeautifulSoup(response, "html.parser")
|
soup = BeautifulSoup(response, "html.parser")
|
||||||
h2_heading = soup.find(f"h2", string=f'Pages in category "{heading}"')
|
h2_heading = soup.find("h2", string=f'Pages in category "{heading}"')
|
||||||
return [link.text for link in h2_heading.find_next("div").find_all("a")]
|
return [link.text for link in h2_heading.find_next("div").find_all("a")]
|
||||||
|
|
||||||
|
|
||||||
|
22
app/warframe.py
Executable file
22
app/warframe.py
Executable file
@ -0,0 +1,22 @@
|
|||||||
|
from bs4 import BeautifulSoup
|
||||||
|
import json
|
||||||
|
import queue
|
||||||
|
import requests
|
||||||
|
import threading
|
||||||
|
|
||||||
|
|
||||||
|
def query_wiki(letter, q: queue.Queue):
|
||||||
|
"""
|
||||||
|
returns a list of all ships in the game, which can then be passed to the /ship command for auto complete
|
||||||
|
"""
|
||||||
|
# Step through the alphabet, and query each page
|
||||||
|
url = f"https://warframe.fandom.com/wiki/Category:Mods?from={letter}"
|
||||||
|
response = requests.get(url)
|
||||||
|
soup = BeautifulSoup(response.text, "html.parser")
|
||||||
|
|
||||||
|
# Find the div element with the specified class
|
||||||
|
div_element = soup.find("div", {"class": "category-page__members"}).find_all("li")
|
||||||
|
|
||||||
|
# add them all to the main list
|
||||||
|
q.put([li.text.strip() for li in div_element if "Category" not in li.text])
|
||||||
|
return sorted([item for sublist in list(q.queue) for item in sublist])
|
@ -91,4 +91,3 @@ secrets:
|
|||||||
twitch_token: twitch_token
|
twitch_token: twitch_token
|
||||||
uexcorp_key: uexcorp_key
|
uexcorp_key: uexcorp_key
|
||||||
wolfram_token: wolfram_token
|
wolfram_token: wolfram_token
|
||||||
pal_rcon_pass: pal_rcon_pass
|
|
||||||
|
@ -5,28 +5,16 @@ import queue
|
|||||||
|
|
||||||
|
|
||||||
def get_all_mods(letter, q: queue.Queue):
|
def get_all_mods(letter, q: queue.Queue):
|
||||||
all_mods = []
|
|
||||||
# Step through the alphabet, and query each page
|
# Step through the alphabet, and query each page
|
||||||
url = f"https://warframe.fandom.com/wiki/Category:Mods?from={letter}"
|
url = f"https://warframe.fandom.com/wiki/Category:Mods?from={letter}"
|
||||||
response = requests.get(url)
|
response = requests.get(url)
|
||||||
soup = BeautifulSoup(response.text, "html.parser")
|
soup = BeautifulSoup(response.text, "html.parser")
|
||||||
|
|
||||||
# Find the div element with the specified class
|
# Find the div element with the specified class
|
||||||
div_element = soup.find("div", {"class": "category-page__members"})
|
div_element = soup.find("div", {"class": "category-page__members"}).find_all("li")
|
||||||
|
|
||||||
# Find all the li elements within the div
|
|
||||||
li_elements = div_element.find_all("li")
|
|
||||||
|
|
||||||
# add them all to the main list
|
# add them all to the main list
|
||||||
q.put(
|
q.put([li.text.strip() for li in div_element if "Category" not in li.text])
|
||||||
[
|
|
||||||
li.text.strip()
|
|
||||||
for li in soup.find("div", {"class": "category-page__members"}).find_all(
|
|
||||||
"li"
|
|
||||||
)
|
|
||||||
if "Category" not in li.text
|
|
||||||
]
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
threads = []
|
threads = []
|
||||||
|
Loading…
x
Reference in New Issue
Block a user