Я не знаю, что происходит, это работало раньше. Это никогда не случалось со мной. кто-то помогите, я потерян.
строка ошибки:
result = p0 + (EMA - d0) / (d1 - d0) * (p1 - p0) if p0 != 100.0 or p1 != 100.0 else 100.0
я пробую это:
if p0 != 100.0 or p1 != 100.0:
result = p0 + (EMA - d0) / (d1 - d0) * (p1 - p0)
else:
result = 100.0
код:
def requestCurData(self, damageRating, movingAvgDamage):
self.values = config.values[self.check_player_thread()][self.name]
if len(self.values) == 4:
tm = datetime.datetime.toordinal(datetime.datetime.utcnow()) - 1
self.values.extend([tm, tm])
config.values[self.check_player_thread()][self.name] = self.values
if movingAvgDamage not in self.values or datetime.datetime.toordinal(datetime.datetime.utcnow()) >= self.values[5] + 1:
p0 = self.values[2]
d0 = self.values[3]
t0 = self.values[5]
p1 = damageRating
d1 = movingAvgDamage
t1 = datetime.datetime.toordinal(datetime.datetime.utcnow())
self.values = [p0, d0, p1, d1, t0, t1]
config.values[self.check_player_thread()][self.name] = self.values
if self.values[0] == self.values[2] and self.values[1] == self.values[3]:
self.values[3] += 10
self.values[5] = datetime.datetime.toordinal(datetime.datetime.utcnow())
config.values[self.check_player_thread()][self.name] = self.values
EDn = self.battleDamage + max(self.RADIO_ASSIST, self.TRACK_ASSIST, self.STUN_ASSIST)
k = 0.0198019801980198022206547392443098942749202251434326171875 # 2 / (100.0 + 1)
EMA = k * EDn + (1 - k) * self.movingAvgDamage
p0, d0, p1, d1, t0, t1 = self.values
result = p0 + (EMA - d0) / (d1 - d0) * (p1 - p0) if p0 != 100.0 or p1 != 100.0 else 100.0
nextMark = round(min(100.0, result), 2) if result > 0 else 0.0
self.initiated = self.values[1] and not nextMark >= self.damageRating and not self.damageRating - nextMark > 3