feat: add daily challenge and blitz mode (2min speedrun)
This commit is contained in:
+27
-2
@@ -15,14 +15,15 @@ model User {
|
||||
email String @unique
|
||||
password String
|
||||
createdAt DateTime @default(now())
|
||||
games Game[]
|
||||
games Game[]
|
||||
dailyResults DailyResult[]
|
||||
}
|
||||
|
||||
model Game {
|
||||
id String @id @default(cuid())
|
||||
userId String
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
mode String // "solo" | "multi"
|
||||
mode String // "solo" | "multi" | "daily" | "blitz"
|
||||
startArticle String
|
||||
targetArticle String
|
||||
path String // JSON array de titres
|
||||
@@ -33,3 +34,27 @@ model Game {
|
||||
|
||||
@@index([userId])
|
||||
}
|
||||
|
||||
model DailyPuzzle {
|
||||
id String @id @default(cuid())
|
||||
date String @unique // "YYYY-MM-DD"
|
||||
startArticle String
|
||||
targetArticle String
|
||||
results DailyResult[]
|
||||
}
|
||||
|
||||
model DailyResult {
|
||||
id String @id @default(cuid())
|
||||
puzzleId String
|
||||
puzzle DailyPuzzle @relation(fields: [puzzleId], references: [id], onDelete: Cascade)
|
||||
userId String
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
path String // JSON
|
||||
clicks Int
|
||||
timeSeconds Float
|
||||
won Boolean
|
||||
playedAt DateTime @default(now())
|
||||
|
||||
@@unique([puzzleId, userId])
|
||||
@@index([puzzleId])
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user