Update homepage
|
@ -4,7 +4,7 @@
|
||||||
"description": "A collection of tools to help playing Genshin Impact",
|
"description": "A collection of tools to help playing Genshin Impact",
|
||||||
"version": "0.0.1",
|
"version": "0.0.1",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite dev --port 3000",
|
"dev": "vite dev --port 4000",
|
||||||
"build": "NODE_OPTIONS=--max_old_space_size=4096 vite build",
|
"build": "NODE_OPTIONS=--max_old_space_size=4096 vite build",
|
||||||
"preview": "vite preview",
|
"preview": "vite preview",
|
||||||
"start": "node build"
|
"start": "node build"
|
||||||
|
|
|
@ -2857,7 +2857,7 @@ export const builds = {
|
||||||
},
|
},
|
||||||
sucrose: {
|
sucrose: {
|
||||||
roles: {
|
roles: {
|
||||||
'EM BUILD': {
|
EM: {
|
||||||
recommended: true,
|
recommended: true,
|
||||||
weapons: [
|
weapons: [
|
||||||
{
|
{
|
||||||
|
|
|
@ -1605,9 +1605,9 @@ export const characters = {
|
||||||
rarity: 4,
|
rarity: 4,
|
||||||
weapon: weapons.claymore,
|
weapon: weapons.claymore,
|
||||||
stats: {
|
stats: {
|
||||||
hp: 0,
|
hp: 12397,
|
||||||
atk: 0,
|
atk: 223,
|
||||||
def: 0,
|
def: 723,
|
||||||
},
|
},
|
||||||
ascension: [
|
ascension: [
|
||||||
{
|
{
|
||||||
|
@ -1740,7 +1740,7 @@ export const characters = {
|
||||||
material: {
|
material: {
|
||||||
material: [itemList.faded_red_satin, itemList.trimmed_red_silk, itemList.rich_red_brocade],
|
material: [itemList.faded_red_satin, itemList.trimmed_red_silk, itemList.rich_red_brocade],
|
||||||
book: [itemList.teachings_of_ingenuity, itemList.guide_to_ingenuity, itemList.philosophies_of_ingenuity],
|
book: [itemList.teachings_of_ingenuity, itemList.guide_to_ingenuity, itemList.philosophies_of_ingenuity],
|
||||||
boss: itemList.thunderclap_fruitcore,
|
boss: itemList.bloodjade_branch,
|
||||||
},
|
},
|
||||||
element: elements.electro,
|
element: elements.electro,
|
||||||
},
|
},
|
||||||
|
|
|
@ -353,4 +353,8 @@ export const itemGroup = {
|
||||||
name: 'Chaos Storage',
|
name: 'Chaos Storage',
|
||||||
items: [itemList.chaos_storage, itemList.chaos_module, itemList.chaos_bolt],
|
items: [itemList.chaos_storage, itemList.chaos_module, itemList.chaos_bolt],
|
||||||
},
|
},
|
||||||
|
faded_red_satin: {
|
||||||
|
name: 'Satin',
|
||||||
|
items: [itemList.faded_red_satin, itemList.trimmed_red_silk, itemList.rich_red_brocade],
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
|
@ -59,28 +59,6 @@ export const eventsData = [
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
|
||||||
name: 'A Muddy Bizzare Adventure',
|
|
||||||
pos: '0% 50%',
|
|
||||||
image: 'a_muddy_bizzare_adventure.jpg',
|
|
||||||
start: '2022-06-22 10:00:00',
|
|
||||||
end: '2022-07-04 03:59:59',
|
|
||||||
color: '#8882e2',
|
|
||||||
zoom: '220%',
|
|
||||||
url: 'https://www.hoyolab.com/article/5513175',
|
|
||||||
showOnHome: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Ley Line Overflow',
|
|
||||||
pos: '0% 20%',
|
|
||||||
image: 'leyline_overflow.jpg',
|
|
||||||
start: '2022-07-04 04:00:00',
|
|
||||||
end: '2022-07-11 03:59:59',
|
|
||||||
color: '#5baced',
|
|
||||||
zoom: '200%',
|
|
||||||
url: 'https://www.hoyolab.com/article/5444663',
|
|
||||||
showOnHome: true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: 'Reminiscent Regimen',
|
name: 'Reminiscent Regimen',
|
||||||
pos: '0% 35%',
|
pos: '0% 35%',
|
||||||
|
@ -105,28 +83,6 @@ export const eventsData = [
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
|
||||||
name: 'Spices From the West',
|
|
||||||
pos: '0% 40%',
|
|
||||||
zoom: '200%',
|
|
||||||
image: 'spices_from_the_west.jpg',
|
|
||||||
start: '2022-05-14 10:00:00',
|
|
||||||
end: '2022-06-07 03:59:59',
|
|
||||||
color: '#83bfb4',
|
|
||||||
url: 'https://www.hoyolab.com/article/4592260',
|
|
||||||
showOnHome: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'The Almighty Arataki Great and Glorious Drumalong Festival',
|
|
||||||
pos: '0% 50%',
|
|
||||||
image: 'drumalong_festival.jpg',
|
|
||||||
start: '2022-06-13 10:00:00',
|
|
||||||
end: '2022-07-04 03:59:59',
|
|
||||||
color: '#ffca92',
|
|
||||||
zoom: '250%',
|
|
||||||
url: 'https://www.hoyolab.com/article/5350611',
|
|
||||||
showOnHome: true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: 'Hidden Strife',
|
name: 'Hidden Strife',
|
||||||
pos: '0% 30%',
|
pos: '0% 30%',
|
||||||
|
@ -162,29 +118,6 @@ export const eventsData = [
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
|
||||||
name: 'Perilous Trail',
|
|
||||||
pos: '0% 20%',
|
|
||||||
zoom: '150%',
|
|
||||||
image: 'perilous_trail.jpg',
|
|
||||||
start: '2022-05-31 06:00:00',
|
|
||||||
end: '2022-06-20 03:59:59',
|
|
||||||
color: '#c9bcff',
|
|
||||||
url: 'https://www.hoyolab.com/article/4998961',
|
|
||||||
showOnHome: true,
|
|
||||||
timezoneDependent: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Core of the Apparatus',
|
|
||||||
pos: '50% 50%',
|
|
||||||
zoom: '150%',
|
|
||||||
image: 'core_of_the_apparatus.jpg',
|
|
||||||
start: '2022-06-29 10:00:00',
|
|
||||||
end: '2022-07-11 03:59:59',
|
|
||||||
color: '#fdf9f4',
|
|
||||||
url: 'https://www.hoyolab.com/article/5444663',
|
|
||||||
showOnHome: true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: 'Summertime Odyssey',
|
name: 'Summertime Odyssey',
|
||||||
pos: '40% 20%',
|
pos: '40% 20%',
|
||||||
|
@ -209,18 +142,6 @@ export const eventsData = [
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
|
||||||
name: 'Discerner of Enigmas - Yelan Banner',
|
|
||||||
pos: '20% 15%',
|
|
||||||
zoom: '200%',
|
|
||||||
image: 'discerner_of_enigmas.jpg',
|
|
||||||
start: '2022-05-31 06:00:00',
|
|
||||||
end: '2022-06-21 17:59:59',
|
|
||||||
color: '#7de6fd',
|
|
||||||
url: 'https://www.hoyolab.com/article/4998733',
|
|
||||||
showOnHome: true,
|
|
||||||
timezoneDependent: true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: 'Leaves in the Wind - Kazuha Banner',
|
name: 'Leaves in the Wind - Kazuha Banner',
|
||||||
pos: '30% 15%',
|
pos: '30% 15%',
|
||||||
|
@ -269,29 +190,6 @@ export const eventsData = [
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
|
||||||
name: 'Invitation to Mundane Life - Xiao Banner',
|
|
||||||
pos: '20% 15%',
|
|
||||||
zoom: '200%',
|
|
||||||
image: 'invitation_to_mundane_life_3.jpg',
|
|
||||||
start: '2022-05-31 06:00:00',
|
|
||||||
end: '2022-06-21 17:59:59',
|
|
||||||
color: '#25d7b8',
|
|
||||||
url: 'https://www.hoyolab.com/article/4998734',
|
|
||||||
showOnHome: true,
|
|
||||||
timezoneDependent: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Oni's Royale - Itto Banner",
|
|
||||||
pos: '20% 15%',
|
|
||||||
zoom: '200%',
|
|
||||||
image: 'onis_royale_2.jpg',
|
|
||||||
start: '2022-06-21 18:00:00',
|
|
||||||
end: '2022-07-12 14:59:59',
|
|
||||||
color: '#FFB455',
|
|
||||||
url: 'https://www.hoyolab.com/article/5444430',
|
|
||||||
showOnHome: true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: 'Sparkling Steps - Klee Banner',
|
name: 'Sparkling Steps - Klee Banner',
|
||||||
pos: '35% 25%',
|
pos: '35% 25%',
|
||||||
|
@ -340,29 +238,6 @@ export const eventsData = [
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
|
||||||
name: 'Epitome Invocation - Weapon Banner',
|
|
||||||
pos: '30% 30%',
|
|
||||||
zoom: '150%',
|
|
||||||
image: 'epitome_invocation_29.jpg',
|
|
||||||
start: '2022-05-31 06:00:00',
|
|
||||||
end: '2022-06-21 17:59:59',
|
|
||||||
color: '#FFAA4B',
|
|
||||||
url: 'https://www.hoyolab.com/article/4998735',
|
|
||||||
showOnHome: true,
|
|
||||||
timezoneDependent: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Epitome Invocation - Weapon Banner',
|
|
||||||
pos: '30% 30%',
|
|
||||||
zoom: '150%',
|
|
||||||
image: 'epitome_invocation_30.jpg',
|
|
||||||
start: '2022-06-21 18:00:00',
|
|
||||||
end: '2022-07-12 14:59:59',
|
|
||||||
color: '#FFAA4B',
|
|
||||||
url: 'https://www.hoyolab.com/article/5444431',
|
|
||||||
showOnHome: true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: 'Epitome Invocation - Weapon Banner',
|
name: 'Epitome Invocation - Weapon Banner',
|
||||||
pos: '30% 30%',
|
pos: '30% 30%',
|
||||||
|
@ -411,36 +286,6 @@ export const eventsData = [
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
|
||||||
name: 'Spiral Abyss',
|
|
||||||
image: 'spiral_abyss.jpg',
|
|
||||||
pos: '50% 20%',
|
|
||||||
start: '2022-05-16 04:00:00',
|
|
||||||
end: '2022-06-01 04:00:00',
|
|
||||||
color: '#4299E1',
|
|
||||||
description:
|
|
||||||
"After a character's Normal Attack hits an opponent, this opponent will be afflicted with a Mark of Ending. After 10s, this Mark of Ending will be removed, dealing True DMG to this opponent. When a character's Normal Attack hits an opponent with a Mark of Ending, the DMG dealt by the Mark of Ending's removal will be increased. This DMG can be increased 9 times.",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Spiral Abyss',
|
|
||||||
image: 'spiral_abyss.jpg',
|
|
||||||
pos: '50% 20%',
|
|
||||||
start: '2022-06-01 04:00:00',
|
|
||||||
end: '2022-06-16 04:00:00',
|
|
||||||
color: '#4299E1',
|
|
||||||
description:
|
|
||||||
'After the active character uses an Elemental Skill, >Normal Attack DMG is increased by 16% for 8s. Max 3 stacks. Stacks are counted independently.',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Spiral Abyss',
|
|
||||||
image: 'spiral_abyss.jpg',
|
|
||||||
pos: '50% 20%',
|
|
||||||
start: '2022-06-16 04:00:00',
|
|
||||||
end: '2022-07-01 04:00:00',
|
|
||||||
color: '#4299E1',
|
|
||||||
description:
|
|
||||||
"After a character's Elemental Skill hits an opponent, that opponent's Physical and All Elemental RES will be decreased by 12% for 8s. Max 3 stacks. Stacks are counted independently.",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: 'Spiral Abyss',
|
name: 'Spiral Abyss',
|
||||||
image: 'spiral_abyss.jpg',
|
image: 'spiral_abyss.jpg',
|
||||||
|
@ -503,16 +348,6 @@ export const eventsData = [
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
|
||||||
name: "Paimon's Bargain - Barbara, Kaeya, and Royal",
|
|
||||||
pos: '0% 50%',
|
|
||||||
zoom: '150%',
|
|
||||||
start: '2022-06-01 04:00:00',
|
|
||||||
end: '2022-07-01 04:00:00',
|
|
||||||
color: '#B6A1EA',
|
|
||||||
image: 'paimon_bargain.png',
|
|
||||||
description: 'Now selling: Barbara, Kaeya, and Royal Weapons.',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: "Paimon's Bargain - Fischl, Xiangling, and Blackcliff",
|
name: "Paimon's Bargain - Fischl, Xiangling, and Blackcliff",
|
||||||
pos: '0% 50%',
|
pos: '0% 50%',
|
||||||
|
@ -545,16 +380,6 @@ export const eventsData = [
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
|
||||||
name: 'Battle Pass - Gorge Sunset',
|
|
||||||
pos: '0% 12%',
|
|
||||||
image: 'gorge_sunset.jpg',
|
|
||||||
start: '2022-05-31 06:00:00',
|
|
||||||
end: '2022-07-11 03:59:59',
|
|
||||||
color: '#8fc2ea',
|
|
||||||
url: 'https://www.hoyolab.com/article/4998961',
|
|
||||||
timezoneDependent: true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: 'Battle Pass - Azure Main',
|
name: 'Battle Pass - Azure Main',
|
||||||
pos: '0% 12%',
|
pos: '0% 12%',
|
||||||
|
|
|
@ -13,25 +13,25 @@
|
||||||
const dispatch = createEventDispatcher();
|
const dispatch = createEventDispatcher();
|
||||||
|
|
||||||
const featured = {
|
const featured = {
|
||||||
collei: {
|
ganyu: {
|
||||||
name: 'Collei',
|
name: 'Ganyu',
|
||||||
rarity: 'rare',
|
rarity: 'legendary',
|
||||||
count: 0,
|
count: 0,
|
||||||
average: '...',
|
average: '...',
|
||||||
percentage: '...',
|
percentage: '...',
|
||||||
},
|
},
|
||||||
tighnari: {
|
sangonomiya_kokomi: {
|
||||||
name: 'Tighnari',
|
name: 'Sangonomiya Kokomi',
|
||||||
rarity: 'legendary',
|
rarity: 'legendary',
|
||||||
count: 0,
|
count: 0,
|
||||||
average: '...',
|
average: '...',
|
||||||
percentage: '...',
|
percentage: '...',
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
const bannerId = 300034;
|
const bannerId = 300035;
|
||||||
const image = 'tighnari_collei.png';
|
const image = 'ganyukokomi.png';
|
||||||
const width = 800;
|
const width = 800;
|
||||||
const height = 593;
|
const height = 515;
|
||||||
|
|
||||||
let loading = true;
|
let loading = true;
|
||||||
let user = '';
|
let user = '';
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<script context="module">
|
<script context="module">
|
||||||
export async function load({ fetch }) {
|
export async function load({ fetch }) {
|
||||||
const promoted = ['fischl', 'diona'];
|
const promoted = ['xingqiu', 'sucrose'];
|
||||||
const builds = {};
|
const builds = {};
|
||||||
for (const p of promoted) {
|
for (const p of promoted) {
|
||||||
const response = await fetch(`/characters/build/${p}.json`);
|
const response = await fetch(`/characters/build/${p}.json`);
|
||||||
|
|
|
@ -8,6 +8,7 @@ const IMAGE_CACHE = `cacheimg${IMAGE_CACHE_VER}`;
|
||||||
const IMAGE_URL = `${self.location.origin}/images/`;
|
const IMAGE_URL = `${self.location.origin}/images/`;
|
||||||
|
|
||||||
const changelog = [
|
const changelog = [
|
||||||
|
'Update banner',
|
||||||
'Update timelines',
|
'Update timelines',
|
||||||
'Add character & weapons release timeline (Database > Character Reruns)',
|
'Add character & weapons release timeline (Database > Character Reruns)',
|
||||||
'Add checklist to achievement',
|
'Add checklist to achievement',
|
||||||
|
|
Before Width: | Height: | Size: 304 KiB After Width: | Height: | Size: 334 KiB |
Before Width: | Height: | Size: 358 KiB After Width: | Height: | Size: 358 KiB |
Before Width: | Height: | Size: 299 KiB After Width: | Height: | Size: 302 KiB |
Before Width: | Height: | Size: 358 KiB After Width: | Height: | Size: 358 KiB |
Before Width: | Height: | Size: 304 KiB After Width: | Height: | Size: 334 KiB |
Before Width: | Height: | Size: 299 KiB After Width: | Height: | Size: 302 KiB |
After Width: | Height: | Size: 305 KiB |