39 lines
4.6 KiB
JavaScript
39 lines
4.6 KiB
JavaScript
export const navLinks = [
|
||
{ href: '#about', label: 'О сервере' },
|
||
{ href: '#features', label: 'Особенности' },
|
||
{ href: '#join', label: 'Регистрация' },
|
||
{ href: '#news', label: 'Новости' },
|
||
];
|
||
|
||
export const features = [
|
||
['I', 'Сигнатурная фича', 'Индивидуальный прогресс по эпохам', 'Пока твой герой не увидел финал Классики - Outland закрыт. Пока не закрыт Illidan - Нортренд в тумане. Каждый идет в своем темпе, без скипов.', 'span-6', 'path'],
|
||
['II', '', 'Соло-данжи', 'Любое подземелье проходимо в одиночку: мы скейлим боссов и механики под размер отряда - от 1 до 5.', 'span-3', 'solo'],
|
||
['III', '', 'Режим «Предатель»', 'При создании персонаж Альянса может встать на сторону Орды (и наоборот). Отдельные сюжеты, NPC, репутации.', 'span-3', 'mask'],
|
||
['IV', 'В разработке', 'Ликантропия', 'Воргены как болезнь: заражайся, сопротивляйся, или прими форму. Твой выбор - твой путь.', 'span-4', 'wolf'],
|
||
['V', '', 'Mythic+ без потолка', 'Бесконечное масштабирование уровня ключа. Каждую неделю - новые аффиксы.', 'span-4', 'mythic'],
|
||
['VI', 'В разработке', 'Боевой пропуск · магазин наград', 'Ежедневные и еженедельные задания, ежедневные награды за вход, косметика в магазине.', 'span-4', 'pass'],
|
||
['VII', 'В разработке', 'Коллекции', 'Питомцы, ездовые животные, трансмогрификация - все в одном журнале, с фильтрами и прогрессом.', 'span-6', 'collection'],
|
||
['VIII', 'Side Project', 'MoonWell Karts', 'Отдельная мини-игра в нашей инфраструктуре - аркадные гонки с персонажами сервера. В разработке.', 'span-6', 'kart'],
|
||
].map(([num, tag, title, desc, span, icon]) => ({ num, tag, title, desc, span, icon }));
|
||
|
||
export const steps = [
|
||
{ name: 'Classic', lvl: '1-60', status: 'Активно', state: 'live' },
|
||
{ name: 'The Burning Crusade', lvl: '60-70', status: 'Следующая эпоха', state: 'current' },
|
||
{ name: 'Wrath of the Lich King', lvl: '70-80', status: 'Закрыто за туманом', state: 'locked' },
|
||
];
|
||
|
||
export const iconPaths = {
|
||
path: '<path d="M3 20 L8 12 L12 16 L16 6 L21 14" /><circle cx="8" cy="12" r="1.2" fill="currentColor" /><circle cx="12" cy="16" r="1.2" fill="currentColor" /><circle cx="16" cy="6" r="1.2" fill="currentColor" />',
|
||
solo: '<circle cx="12" cy="12" r="9" /><path d="M12 7v5l3 2" /><circle cx="12" cy="12" r=".8" fill="currentColor" />',
|
||
mask: '<path d="M4 8c2-2 5-3 8-3s6 1 8 3v5c-1 4-4 7-8 7s-7-3-8-7z" /><path d="M8 11l2 2" /><path d="M16 11l-2 2" />',
|
||
wolf: '<path d="M3 9l3-5 3 4h6l3-4 3 5-2 3v5l-4 3h-6l-4-3V12z" /><circle cx="9" cy="13" r=".8" fill="currentColor" /><circle cx="15" cy="13" r=".8" fill="currentColor" />',
|
||
mythic: '<polygon points="12 3 15 9 22 10 17 15 18 22 12 19 6 22 7 15 2 10 9 9" />',
|
||
pass: '<rect x="3" y="6" width="18" height="14" rx="1" /><path d="M3 10h18" /><path d="M7 14h6" /><circle cx="17" cy="15" r="1.2" />',
|
||
collection: '<rect x="3" y="3" width="8" height="8" /><rect x="13" y="3" width="8" height="8" /><rect x="3" y="13" width="8" height="8" /><circle cx="17" cy="17" r="4" />',
|
||
kart: '<path d="M3 15l2-5h8l4 3h4v2" /><circle cx="7" cy="17" r="2" /><circle cx="17" cy="17" r="2" /><path d="M9 15h4" />',
|
||
};
|
||
|
||
export const arrowSvg = '<svg class="btn-arrow" viewBox="0 0 14 10" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 5h12M9 1l4 4-4 4" /></svg>';
|
||
|
||
export const moonMark = (size = 32) => `<svg viewBox="0 0 32 32" width="${size}" height="${size}" fill="none" stroke="currentColor" stroke-width="1"><circle cx="16" cy="16" r="11" stroke-opacity="0.3" /><path d="M20 7 A11 11 0 1 0 20 25 A8 8 0 1 1 20 7 Z" fill="currentColor" fill-opacity="0.7" /><circle cx="16" cy="16" r="15" stroke-opacity="0.15" stroke-dasharray="1 3" /><path d="M16 1 L16 4 M16 28 L16 31 M1 16 L4 16 M28 16 L31 16" stroke-opacity="0.4" /></svg>`;
|