Refactor carnival and cherry blossom initialization to streamline object creation and enhance configuration handling

This commit is contained in:
CodeDevMLH
2026-02-28 00:45:33 +01:00
parent 8019ba760f
commit 7b15ed46c1
2 changed files with 15 additions and 39 deletions

View File

@@ -2,8 +2,7 @@ const config = window.SeasonalsPluginConfig?.CherryBlossom || {};
const cherryBlossom = config.EnableCherryBlossom !== undefined ? config.EnableCherryBlossom : true; // enable/disable cherryblossom
const petalCount = config.PetalCount !== undefined ? config.PetalCount : 25; // count of petal
const randomCherryBlossom = config.EnableRandomCherryBlossom !== undefined ? config.EnableRandomCherryBlossom : true; // enable random cherryblossom
const randomCherryBlossomMobile = config.EnableRandomCherryBlossomMobile !== undefined ? config.EnableRandomCherryBlossomMobile : false; // enable random cherryblossom on mobile
const petalCountMobile = config.PetalCountMobile !== undefined ? config.PetalCountMobile : 10; // count of petal on mobile
const enableDifferentDuration = config.EnableDifferentDuration !== undefined ? config.EnableDifferentDuration : true; // enable different durations
let msgPrinted = false;
@@ -67,16 +66,7 @@ function createPetal(container) {
container.appendChild(petal);
}
function addRandomObjects() {
const container = document.querySelector('.cherryblossom-container');
if (!container) return;
for (let i = 0; i < petalCount; i++) {
createPetal(container);
}
}
function initObjects() {
function initObjects(count) {
let container = document.querySelector('.cherryblossom-container');
if (!container) {
container = document.createElement("div");
@@ -86,20 +76,19 @@ function initObjects() {
}
// Initial batch
for (let i = 0; i < 15; i++) {
for (let i = 0; i < count; i++) {
createPetal(container);
}
}
function initializeCherryBlossom() {
if (!cherryBlossom) return;
initObjects();
toggleCherryBlossom();
const screenWidth = window.innerWidth;
if (randomCherryBlossom && (screenWidth > 768 || randomCherryBlossomMobile)) {
addRandomObjects();
}
const count = screenWidth > 768 ? petalCount : petalCountMobile;
initObjects(count);
toggleCherryBlossom();
}
initializeCherryBlossom();