I will factor that in if you think it would be beneficial. The reason it's done as a direct equality comparison is because the only time it should ever return false (duration is -1) is when duration has never been altered in the first place. The time remaining would be read as -1 from the ESM (possibly save file later), and the code here won't change that value, in that case. -1 here would be a special value or more of a magic number, not really an important time. Is there something I'm missing?