added maxstreak

This commit is contained in:
Miodec 2022-09-05 15:05:12 +02:00
parent 85dc20e8cd
commit 949e49cfa2
6 changed files with 10 additions and 0 deletions

View file

@ -547,6 +547,7 @@ export async function updateStreak(uid, timestamp): Promise<number> {
const streak: MonkeyTypes.UserStreak = {
lastResultTimestamp: user.streak?.lastResultTimestamp ?? 0,
length: user.streak?.length ?? 0,
maxLength: user.streak?.length ?? 0,
};
if (isYesterday(streak.lastResultTimestamp)) {
@ -555,6 +556,10 @@ export async function updateStreak(uid, timestamp): Promise<number> {
streak.length = 1;
}
if (streak.length > streak.maxLength) {
streak.maxLength = streak.length;
}
streak.lastResultTimestamp = timestamp;
await UserDAL.getUsersCollection().updateOne({ uid }, { $set: { streak } });

View file

@ -73,6 +73,7 @@ export async function resetUser(uid: string): Promise<void> {
streak: {
length: 0,
lastResultTimestamp: 0,
maxLength: 0,
},
},
$unset: {

View file

@ -172,6 +172,7 @@ declare namespace MonkeyTypes {
interface UserStreak {
lastResultTimestamp: number;
length: number;
maxLength: number;
}
interface UserInventory {

View file

@ -29,4 +29,5 @@ export const defaultSnap: MonkeyTypes.Snapshot = {
xp: 0,
inboxUnreadSize: 0,
streak: 0,
maxStreak: 0,
};

View file

@ -98,6 +98,7 @@ export async function initSnapshot(): Promise<
snap.xp = userData.xp ?? 0;
snap.inboxUnreadSize = userData.inboxUnreadSize ?? 0;
snap.streak = userData?.streak?.length ?? 0;
snap.maxStreak = userData?.streak?.maxLength ?? 0;
if (userData.lbMemory?.time15 || userData.lbMemory?.time60) {
//old memory format

View file

@ -475,6 +475,7 @@ declare namespace MonkeyTypes {
xp: number;
inboxUnreadSize: number;
streak: number;
maxStreak: number;
}
interface UserDetails {