Add Grand Line Dune Crimea set

This commit is contained in:
2026-06-27 14:40:52 +03:00
parent df2c4f0434
commit e1f9973128
3 changed files with 244 additions and 2 deletions
+3 -1
View File
@@ -90,8 +90,9 @@ npm run check # проверка типов (svelte-check)
```ts
import { familyKnowledgeJourneySet } from './family-knowledge-journey';
import { grandLineDuneCrimeaMinecraftComputersSet } from './grand-line-dune-crimea-minecraft-computers';
import { mySet } from './my-set';
export const questionSets = [familyKnowledgeJourneySet, mySet];
export const questionSets = [familyKnowledgeJourneySet, grandLineDuneCrimeaMinecraftComputersSet, mySet];
```
Готово — набор автоматически появится на экране выбора.
@@ -106,6 +107,7 @@ src/
│ ├─ types.ts # Доменные типы (Question, Category, QuestionSet, GameState)
│ ├─ question-sets/ # ДАННЫЕ (отделены от UI)
│ │ ├─ family-knowledge-journey.ts # набор вопросов
│ │ ├─ grand-line-dune-crimea-minecraft-computers.ts # набор вопросов
│ │ └─ index.ts # реестр наборов + хелперы поиска
│ ├─ stores/
│ │ └─ game.ts # СОСТОЯНИЕ игры (Svelte store + localStorage)
@@ -0,0 +1,236 @@
import type { QuestionSet } from '$lib/types';
/**
* Второй набор вопросов: «От Гранд Лайн до компьютеров».
*
* Семейный набор про первые приключения One Piece, мир «Дюны», историю Крыма,
* Minecraft и понятные компьютерные факты. Каждая категория содержит ровно
* 5 вопросов с очками 100 / 200 / 300 / 500 / 1000. id вопросов уникальны
* в пределах категории (q1..q5).
*/
export const grandLineDuneCrimeaMinecraftComputersSet: QuestionSet = {
id: 'grand-line-dune-crimea-minecraft-computers',
title: 'От Гранд Лайн до компьютеров',
description:
'Семейный набор про первые приключения One Piece, мир «Дюны», историю Крыма, Minecraft и понятные компьютерные факты.',
ageRange: '10+ лет / вся семья',
categories: [
{
id: 'one-piece-first-80',
title: 'One Piece: первые 80 серий',
questions: [
{
id: 'q1',
points: 100,
question: 'Как зовут главного героя One Piece, который носит соломенную шляпу?',
answer: 'Монки Д. Луффи',
type: 'strict'
},
{
id: 'q2',
points: 200,
question: 'Какой Дьявольский плод съел Луффи, из-за чего его тело стало резиновым?',
answer: 'Гому Гому но Ми / Резина-резина / Gum-Gum Fruit',
optionalHint: 'Название связано с резиновыми способностями.',
type: 'strict'
},
{
id: 'q3',
points: 300,
question: 'Как называется первый корабль команды Соломенной Шляпы, подаренный Каей?',
answer: 'Гоинг Мерри / Going Merry',
type: 'strict'
},
{
id: 'q4',
points: 500,
question: 'Как называется плавучий ресторан, где команда впервые встречает Санджи?',
answer: 'Барати / Baratie',
optionalHint: 'Это ресторан-корабль.',
type: 'strict'
},
{
id: 'q5',
points: 1000,
question: 'На каком острове команда встречает великанов Дорри и Броги?',
answer: 'Литл-Гарден / Little Garden',
optionalHint: 'На этом острове есть доисторическая атмосфера.',
type: 'strict'
}
]
},
{
id: 'dune-herbert',
title: 'Дюна Герберта',
questions: [
{
id: 'q1',
points: 100,
question: 'Кто написал роман «Дюна»?',
answer: 'Фрэнк Герберт',
type: 'strict'
},
{
id: 'q2',
points: 200,
question: 'Как называется пустынная планета, известная как Дюна?',
answer: 'Арракис',
type: 'strict'
},
{
id: 'q3',
points: 300,
question: 'Как зовут наследника дома Атрейдесов, главного героя первого романа?',
answer: 'Пол Атрейдес',
type: 'strict'
},
{
id: 'q4',
points: 500,
question: 'Как называется ценнейшее вещество, добываемое на Арракисе?',
answer: 'Пряность меланж / меланж / spice',
optionalHint: 'Из-за него Арракис так важен для всей империи.',
type: 'strict'
},
{
id: 'q5',
points: 1000,
question: 'Сколько романов основной саги «Дюна» написал сам Фрэнк Герберт?',
answer: 'Шесть',
optionalHint: 'Считаются только книги, написанные самим Фрэнком Гербертом.',
type: 'strict'
}
]
},
{
id: 'crimea-history',
title: 'История Крыма',
questions: [
{
id: 'q1',
points: 100,
question: 'Крым — это остров или полуостров?',
answer: 'Полуостров',
type: 'strict'
},
{
id: 'q2',
points: 200,
question: 'Какое большое море омывает южные и западные берега Крыма?',
answer: 'Чёрное море',
type: 'strict'
},
{
id: 'q3',
points: 300,
question: 'Как называется древний греческий город в районе современного Севастополя, включённый в список Всемирного наследия UNESCO?',
answer: 'Херсонес Таврический / Tauric Chersonese',
optionalHint: 'Это руины античного греческого полиса-колонии на берегу моря рядом с Севастополем.',
type: 'strict'
},
{
id: 'q4',
points: 500,
question: 'Как называется город, где находится Ханский дворец — один из главных памятников истории Крымского ханства?',
answer: 'Бахчисарай',
type: 'strict'
},
{
id: 'q5',
points: 1000,
question: 'Как называлась конференция лидеров СССР, США и Великобритании, проходившая в Крыму в феврале 1945 года?',
answer: 'Ялтинская конференция / Крымская конференция',
optionalHint: 'Она названа по городу на южном берегу Крыма.',
type: 'strict'
}
]
},
{
id: 'minecraft',
title: 'Minecraft',
questions: [
{
id: 'q1',
points: 100,
question: 'Какой зелёный моб в Minecraft может тихо подойти к игроку и взорваться?',
answer: 'Крипер / Creeper',
type: 'strict'
},
{
id: 'q2',
points: 200,
question: 'Какой режим Minecraft даёт игроку неограниченные ресурсы и возможность летать?',
answer: 'Творческий режим / Creative mode',
type: 'strict'
},
{
id: 'q3',
points: 300,
question: 'Из какого блока обычно строят рамку портала в Нижний мир?',
answer: 'Обсидиан',
optionalHint: 'Это очень прочный тёмный блок.',
type: 'strict'
},
{
id: 'q4',
points: 500,
question: 'Как называется красный ресурс Minecraft, который работает почти как электричество и используется для механизмов?',
answer: 'Редстоун / Redstone',
type: 'strict'
},
{
id: 'q5',
points: 1000,
question: 'Как называется финальный босс Minecraft, живущий в измерении Край?',
answer: 'Дракон Края / Ender Dragon',
optionalHint: 'Это большой летающий босс.',
type: 'strict'
}
]
},
{
id: 'computers',
title: 'Компьютеры',
questions: [
{
id: 'q1',
points: 100,
question: 'Как называется устройство с клавишами для ввода текста и команд?',
answer: 'Клавиатура',
type: 'strict'
},
{
id: 'q2',
points: 200,
question: 'Как обычно называют центральный процессор компьютера по английской аббревиатуре?',
answer: 'CPU / ЦП',
optionalHint: 'Его часто называют «мозгом» компьютера.',
type: 'strict'
},
{
id: 'q3',
points: 300,
question: 'Какие две цифры используются в двоичной системе счисления?',
answer: '0 и 1',
type: 'strict'
},
{
id: 'q4',
points: 500,
question: 'Кто изобрёл World Wide Web в 1989 году, работая в CERN?',
answer: 'Тим Бернерс-Ли',
optionalHint: 'Его имя часто связывают с рождением современной веб-сети.',
type: 'strict'
},
{
id: 'q5',
points: 1000,
question: 'Как назывался один из первых крупных электронных компьютеров, построенный в 1940-х годах в США?',
answer: 'ENIAC',
optionalHint: 'Это аббревиатура из пяти букв.',
type: 'strict'
}
]
}
]
};
+5 -1
View File
@@ -1,5 +1,6 @@
import type { Category, Question, QuestionRef, QuestionSet } from '$lib/types';
import { familyKnowledgeJourneySet } from './family-knowledge-journey';
import { grandLineDuneCrimeaMinecraftComputersSet } from './grand-line-dune-crimea-minecraft-computers';
/**
* Реестр всех доступных наборов вопросов.
@@ -13,7 +14,10 @@ import { familyKnowledgeJourneySet } from './family-knowledge-journey';
* │ Всё — на экране выбора набор появится автоматически. │
* └───────────────────────────────────────────────────────────────────────┘
*/
export const questionSets: QuestionSet[] = [familyKnowledgeJourneySet];
export const questionSets: QuestionSet[] = [
familyKnowledgeJourneySet,
grandLineDuneCrimeaMinecraftComputersSet
];
/* ----------------------------------------------------------------------- */
/* Хелперы поиска по данным (без состояния). */