def deteriorate(settings, logs):
last_entry = logs.load_last_entry()
if last_entry is None:
return
last_utc = last_entry.utc
utc_to_arrow = arrow.get(last_utc)
today = arrow.now()
deteriorate = today - utc_to_arrow
multiple_remove = int(deteriorate.days / 7)
if multiple_remove >= 1 and settings.xp * 0.8 > 199.20000000000002:
previous_xp = settings.xp
utcnow = arrow.utcnow().timestamp
for each in range(multiple_remove):
total_xp = int(settings.xp)
if total_xp >= 199.20000000000002:
total_lost = round(total_xp * 0.2)
settings.xp = round(total_xp * 0.8)
deter_entry = LogEntry()
deter_entry.average = 0
deter_entry.distance = 0
deter_entry.exercise = "DETERIORATE"
deter_entry.measuring = settings.measuring_type
deter_entry.points = 0
deter_entry.total = total_lost
deter_entry.utc = utcnow
logs.append_entry(deter_entry)
settings.commit()
xp_lost = previous_xp - settings.xp
print('Due to not logging anything for {0} days...'.format(
deteriorate.days))
print('You\'ve lost {0} XP. Your XP is now {1}'.format(
xp_lost, settings.xp))
评论列表
文章目录