[refactor]: Clear code
This commit is contained in:
parent
3775c7a5a4
commit
9b66edeb62
@ -67,32 +67,28 @@ class Economic(commands.Cog, name="Экономика"):
|
|||||||
)
|
)
|
||||||
|
|
||||||
if message.author.voice is not None:
|
if message.author.voice is not None:
|
||||||
delta_exp = int(delta_exp / 10)
|
delta_exp //= 10
|
||||||
delta_money = rint(1, 5)
|
delta_money = rint(1, 5)
|
||||||
|
|
||||||
# Глобальные опыт/уроень
|
# Глобальные опыт/уроень
|
||||||
db.members.update_one({"id": message.author.id},
|
db.members.update_one({"id": message.author.id},
|
||||||
{"$set": {"exp": data["exp"] + delta_exp}}) # Изменяем exp
|
{"$inc": {"exp": delta_exp}}) # Изменяем exp
|
||||||
data = db.members.find_one({"id": message.author.id})
|
data = db.members.find_one({"id": message.author.id})
|
||||||
if data is not None:
|
if data is not None:
|
||||||
level = data["level"]
|
level = data["level"]
|
||||||
if level ** 2 * 50 + 5 <= data["exp"]:
|
if level ** 2 * 50 + 5 <= data["exp"]:
|
||||||
db.members.update_one({"id": message.author.id},
|
db.members.update_one({"id": message.author.id},
|
||||||
{"$set": {"level": data["level"] + 1}}) # Изменяем level
|
{"$inc": {"level": 1}}) # Изменяем level
|
||||||
if data["level"]+1 >= data["max_level"]:
|
if data["level"]+1 >= data["max_level"]:
|
||||||
db.members.update_one({"id": message.author.id},
|
db.members.update_one({"id": message.author.id},
|
||||||
{"$set": {
|
{"$inc": {"money": (level + 1) * delta_money}}) # Изменяем money
|
||||||
"money": data["money"] + (level + 1) * delta_money}}) # Изменяем money
|
|
||||||
db.members.update_one({"id": message.author.id},
|
|
||||||
{"$set": {"max_level": data["level"] + 1}}) # Изменяем level
|
|
||||||
|
|
||||||
|
|
||||||
# Локальные опыт/уровень
|
# Локальные опыт/уровень
|
||||||
prefix = f"guild_stat.{message.guild.id}"
|
prefix = f"guild_stat.{message.guild.id}"
|
||||||
if str(message.guild.id) not in db.members.find_one({"id": message.author.id})["guild_stat"].keys():
|
if str(message.guild.id) not in db.members.find_one({"id": message.author.id})["guild_stat"].keys():
|
||||||
db.members.update_many({"id": message.author.id},
|
db.members.update_many({"id": message.author.id},
|
||||||
{
|
{"$set": {
|
||||||
"$set": {
|
|
||||||
f"{prefix}.exp": 0,
|
f"{prefix}.exp": 0,
|
||||||
f"{prefix}.level": 0,
|
f"{prefix}.level": 0,
|
||||||
f"{prefix}.secs_in_voice": 0,
|
f"{prefix}.secs_in_voice": 0,
|
||||||
@ -102,25 +98,16 @@ class Economic(commands.Cog, name="Экономика"):
|
|||||||
"siv_h": {},
|
"siv_h": {},
|
||||||
"siv_d": {}
|
"siv_d": {}
|
||||||
}
|
}
|
||||||
}
|
}}) # Создаем в guild_stat поле для сервера
|
||||||
}) # Создаем в guild_stat поле для сервера
|
|
||||||
|
|
||||||
data = db.members.find_one({"id": message.author.id})["guild_stat"][str(message.guild.id)]
|
data = db.members.find_one({"id": message.author.id})["guild_stat"][str(message.guild.id)]
|
||||||
db.members.update_one({"id": message.author.id},
|
db.members.update_one({"id": message.author.id},
|
||||||
{
|
{"$inc": {f"{prefix}.exp": delta_exp}})
|
||||||
"$set": {
|
|
||||||
f"{prefix}.exp": data['exp'] + delta_exp
|
|
||||||
}
|
|
||||||
})
|
|
||||||
data = db.members.find_one({"id": message.author.id})["guild_stat"][str(message.guild.id)]
|
data = db.members.find_one({"id": message.author.id})["guild_stat"][str(message.guild.id)]
|
||||||
level = data["level"]
|
level = data["level"]
|
||||||
if level ** 2 * 50 + 5 <= data["exp"]:
|
if level ** 2 * 50 + 5 <= data["exp"]:
|
||||||
db.members.update_one({"id": message.author.id},
|
db.members.update_one({"id": message.author.id},
|
||||||
{
|
{"$inc": {f"{prefix}.level": 1}})
|
||||||
"$set": {
|
|
||||||
f"{prefix}.level": data['level'] + 1
|
|
||||||
}
|
|
||||||
})
|
|
||||||
data = db.guild_settings.find_one({"id": message.guild.id})
|
data = db.guild_settings.find_one({"id": message.guild.id})
|
||||||
if data is not None and data['levelup'] == "send":
|
if data is not None and data['levelup'] == "send":
|
||||||
await message.reply(
|
await message.reply(
|
||||||
@ -160,15 +147,14 @@ class Economic(commands.Cog, name="Экономика"):
|
|||||||
|
|
||||||
# При выходе
|
# При выходе
|
||||||
if after.channel is None:
|
if after.channel is None:
|
||||||
#logger.info(f"{member.name}#{member.discriminator} вышел. В канале осталось {len(list(filter(lambda x: not x.bot, before.channel.members)))} человек")
|
|
||||||
try: del self.bot.voice_counter[str(member.id)]
|
try: del self.bot.voice_counter[str(member.id)]
|
||||||
except: pass #logger.info(f"У {member.name}#{member.discriminator} не было информации о времени захода в канал")
|
except: pass
|
||||||
|
|
||||||
|
|
||||||
def voice_register(self, member, voice_state):
|
def voice_register(self, member, voice_state):
|
||||||
try: secs = (datetime.now() - self.bot.voice_counter[str(member.id)]).seconds
|
if member.id in self.bot.voice_counter.keys():
|
||||||
except:
|
secs = (datetime.now() - self.bot.voice_counter[member.id]).seconds
|
||||||
#logger.info(f"У {member.name}#{member.discriminator} не было информации о времени захода в канал")
|
else:
|
||||||
secs = 0
|
secs = 0
|
||||||
|
|
||||||
# TODO: Убрать нахуй эти ифы
|
# TODO: Убрать нахуй эти ифы
|
||||||
@ -184,7 +170,8 @@ class Economic(commands.Cog, name="Экономика"):
|
|||||||
k *= 2
|
k *= 2
|
||||||
exp = int(secs // 5 * k)
|
exp = int(secs // 5 * k)
|
||||||
money = exp * rint(1, 5)
|
money = exp * rint(1, 5)
|
||||||
db.members.update_one({"id": member.id}, {"$inc": {
|
db.members.update_one({"id": member.id}, {
|
||||||
|
"$inc": {
|
||||||
f"guild_stat.{member.guild.id}.secs_in_voice": secs,
|
f"guild_stat.{member.guild.id}.secs_in_voice": secs,
|
||||||
f"guild_stat.{member.guild.id}.exp": exp,
|
f"guild_stat.{member.guild.id}.exp": exp,
|
||||||
"exp": exp,
|
"exp": exp,
|
||||||
@ -196,7 +183,7 @@ class Economic(commands.Cog, name="Экономика"):
|
|||||||
{"$inc": {f'current.{datetime.now().hour}': exp}}
|
{"$inc": {f'current.{datetime.now().hour}': exp}}
|
||||||
)
|
)
|
||||||
|
|
||||||
self.bot.voice_counter[str(member.id)] = datetime.now()
|
self.bot.voice_counter[member.id] = datetime.now()
|
||||||
|
|
||||||
logger.info(
|
logger.info(
|
||||||
f"{member.name}#{member.discriminator}\n"
|
f"{member.name}#{member.discriminator}\n"
|
||||||
@ -218,7 +205,7 @@ class Economic(commands.Cog, name="Экономика"):
|
|||||||
logger.debug(member_data["guild_stat"][str(member.guild.id)]["exp"], end="\t")
|
logger.debug(member_data["guild_stat"][str(member.guild.id)]["exp"], end="\t")
|
||||||
db.members.update_one(
|
db.members.update_one(
|
||||||
{"id": member.id},
|
{"id": member.id},
|
||||||
{"$set": { "exp": member_data["exp"] + member_data["guild_stat"][str(member.guild.id)]["exp"] }}
|
{"$inc": {"exp": member_data["guild_stat"][str(member.guild.id)]["exp"]}}
|
||||||
)
|
)
|
||||||
|
|
||||||
@commands.Cog.listener()
|
@commands.Cog.listener()
|
||||||
@ -232,7 +219,7 @@ class Economic(commands.Cog, name="Экономика"):
|
|||||||
logger.debug(member_data["guild_stat"][str(member.guild.id)]["exp"], end="\t")
|
logger.debug(member_data["guild_stat"][str(member.guild.id)]["exp"], end="\t")
|
||||||
db.members.update_one(
|
db.members.update_one(
|
||||||
{"id": member.id},
|
{"id": member.id},
|
||||||
{"$set": { "exp": member_data["exp"] - member_data["guild_stat"][str(member.guild.id)]["exp"] }
|
{"$dec": {"exp": member_data["guild_stat"][str(member.guild.id)]["exp"]}
|
||||||
})
|
})
|
||||||
|
|
||||||
@commands.Cog.listener()
|
@commands.Cog.listener()
|
||||||
@ -241,7 +228,7 @@ class Economic(commands.Cog, name="Экономика"):
|
|||||||
logger.debug(m["guild_stat"][str(guild.id)]["exp"], end="\t")
|
logger.debug(m["guild_stat"][str(guild.id)]["exp"], end="\t")
|
||||||
db.members.update_one(
|
db.members.update_one(
|
||||||
{"id": m['id']},
|
{"id": m['id']},
|
||||||
{"$set": { "exp": m["exp"] + m["guild_stat"][str(guild.id)]["exp"] }
|
{"$inc": {"exp": m["guild_stat"][str(guild.id)]["exp"]}
|
||||||
})
|
})
|
||||||
logger.debug(m["guild_stat"][str(guild.id)]["exp"])
|
logger.debug(m["guild_stat"][str(guild.id)]["exp"])
|
||||||
|
|
||||||
@ -251,7 +238,7 @@ class Economic(commands.Cog, name="Экономика"):
|
|||||||
logger.debug(m["guild_stat"][str(guild.id)]["exp"], end="\t")
|
logger.debug(m["guild_stat"][str(guild.id)]["exp"], end="\t")
|
||||||
db.members.update_one(
|
db.members.update_one(
|
||||||
{"id": m['id']},
|
{"id": m['id']},
|
||||||
{"$set": {"exp": m["exp"] - m["guild_stat"][str(guild.id)]["exp"]}
|
{"$dec": {"exp": m["guild_stat"][str(guild.id)]["exp"]}
|
||||||
})
|
})
|
||||||
logger.debug(m["guild_stat"][str(guild.id)]["exp"])
|
logger.debug(m["guild_stat"][str(guild.id)]["exp"])
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user