Startseite und Tests geupdated
This commit is contained in:
135
public/js/app.js
135
public/js/app.js
@@ -5912,8 +5912,8 @@ class MainMenuLevel extends FourWordsLevel{
|
||||
saveAsCurrentLevel() {
|
||||
}
|
||||
|
||||
checkHasWon(delayPromise) {
|
||||
}
|
||||
// checkHasWon(delayPromise) {
|
||||
// }
|
||||
}
|
||||
|
||||
class MenuSite extends WordRotatorBaseSite {
|
||||
@@ -5923,9 +5923,85 @@ class MenuSite extends WordRotatorBaseSite {
|
||||
this.listener = null;
|
||||
}
|
||||
|
||||
onStart(args) {
|
||||
let res = super.onStart(args);
|
||||
|
||||
let level = new MainMenuLevel(this.templateContainer);
|
||||
level.setWords(["WORD", "ROTA", "TORW", "ORDR"]);
|
||||
level.createSegments();
|
||||
|
||||
level.getWonPromise().then(() => {
|
||||
console.log("won!");
|
||||
this.startSite(LevelSite);
|
||||
});
|
||||
|
||||
let segment = level.getRootSegment();
|
||||
segment._updateElement();
|
||||
|
||||
let levelSegment = this.findBy("#level");
|
||||
levelSegment.removeAllChildren().appendChild(segment.getElement());
|
||||
|
||||
let rotationsSegments = level.getRotatableSegments();
|
||||
|
||||
let randomRotationFunction = () => {
|
||||
let timeout = Math.random() * 4500 + 1500;
|
||||
setTimeout(() => {
|
||||
let indexBlocked = -1;
|
||||
let indexesNotRight = [];
|
||||
for (let i = 0; i < rotationsSegments.length; i++) {
|
||||
if (rotationsSegments[i].rotation !== 0) {
|
||||
indexesNotRight.push(i);
|
||||
if (indexesNotRight.length >= 2) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (indexesNotRight.length === 1) {
|
||||
indexBlocked = indexesNotRight[0];
|
||||
}
|
||||
|
||||
let index = Math.floor(Math.random() * rotationsSegments.length);
|
||||
if (index === indexBlocked) {
|
||||
index = (index + 1) % rotationsSegments.length;
|
||||
}
|
||||
rotationsSegments[index].rotate();
|
||||
randomRotationFunction();
|
||||
}, timeout);
|
||||
};
|
||||
randomRotationFunction();
|
||||
|
||||
this.listener = async () => {
|
||||
let playButton = this.findBy("#play-button");
|
||||
let levelNumber = this.findBy("#level-number");
|
||||
levelNumber.innerText = Helper.nonNull(localStorage.getItem("levelCounter"), 1);
|
||||
|
||||
let levelSegment = this.findBy("#level");
|
||||
|
||||
let scaleHelper = new ScaleHelper();
|
||||
scaleHelper.scaleToFull(levelSegment, levelSegment.parentElement, false, false, 2, 8, null, false);
|
||||
|
||||
let levelStyle = getComputedStyle(levelSegment);
|
||||
playButton.style.width = levelStyle.getPropertyValue("width");
|
||||
scaleHelper.scaleToFull(playButton.children[0], playButton, null, null, null, null, null, false);
|
||||
|
||||
await scaleHelper.scaleTo(0.15, levelNumber.parentElement, levelNumber.parentElement.parentElement, null, null, null, 10, null, false);
|
||||
scaleHelper.scaleToFull(levelNumber, levelNumber.parentElement, false, false, 8, null, null, false);
|
||||
};
|
||||
|
||||
this.listener();
|
||||
window.addEventListener("resize", this.listener);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
async onFirstStart() {
|
||||
super.onFirstStart();
|
||||
|
||||
let playButton = this.findBy("#play-button");
|
||||
playButton.addEventListener("click", () => {
|
||||
this.startSite(LevelSite);
|
||||
});
|
||||
|
||||
let leafSegmentTemplate = this.findBy("#segment-leaf-template");
|
||||
let parentSegmentTemplate = this.findBy("#segment-parent-template");
|
||||
let rowSegmentTemplate = this.findBy("#segment-row-template");
|
||||
@@ -5941,61 +6017,12 @@ class MenuSite extends WordRotatorBaseSite {
|
||||
rowSegmentTemplate.remove();
|
||||
triangleTemplate.remove();
|
||||
|
||||
let templateContainer = new TemplateContainer(leafSegmentTemplate, parentSegmentTemplate, rowSegmentTemplate, triangleTemplate);
|
||||
let level = new MainMenuLevel(templateContainer);
|
||||
level.setWords(["WORD", "ROTA", "TORW", "ORDR"]);
|
||||
level.createSegments();
|
||||
|
||||
level.getWonPromise().then(() => {
|
||||
console.log("won!");
|
||||
});
|
||||
|
||||
let segment = level.getRootSegment();
|
||||
segment._updateElement();
|
||||
|
||||
let levelSegment = this.findBy("#level");
|
||||
levelSegment.removeAllChildren().appendChild(segment.getElement());
|
||||
|
||||
let playButton = this.findBy("#play-button");
|
||||
playButton.addEventListener("click", () => {
|
||||
this.startSite(LevelSite);
|
||||
});
|
||||
|
||||
|
||||
this.listener = async () => {
|
||||
let levelNumber = this.findBy("#level-number");
|
||||
levelNumber.innerText = Helper.nonNull(localStorage.getItem("levelCounter"), 1);
|
||||
|
||||
let scaleHelper = new ScaleHelper();
|
||||
scaleHelper.scaleToFull(levelSegment, levelSegment.parentElement, false, false, 2, 8, null, false);
|
||||
|
||||
let levelStyle = getComputedStyle(levelSegment);
|
||||
playButton.style.width = levelStyle.getPropertyValue("width");
|
||||
scaleHelper.scaleToFull(playButton.children[0], playButton, null, null, null, null ,null ,false);
|
||||
|
||||
await scaleHelper.scaleTo(0.15, levelNumber.parentElement, levelNumber.parentElement.parentElement, null, null, null, 10 ,null ,false);
|
||||
scaleHelper.scaleToFull(levelNumber, levelNumber.parentElement, false, false, 8, null, null, false);
|
||||
};
|
||||
|
||||
this.listener();
|
||||
window.addEventListener("resize", this.listener);
|
||||
|
||||
let rotationsSegments = level.getRotatableSegments();
|
||||
|
||||
let randomRotationFunction = () => {
|
||||
let timeout = Math.random()*6000+1500;
|
||||
setTimeout(() => {
|
||||
let index = Math.floor(Math.random()*rotationsSegments.length);
|
||||
rotationsSegments[index].rotate();
|
||||
randomRotationFunction();
|
||||
},timeout);
|
||||
};
|
||||
randomRotationFunction();
|
||||
this.templateContainer = new TemplateContainer(leafSegmentTemplate, parentSegmentTemplate, rowSegmentTemplate, triangleTemplate);
|
||||
}
|
||||
|
||||
onDestroy() {
|
||||
onPause(args) {
|
||||
window.removeEventListener("resize", this.listener);
|
||||
super.onDestroy();
|
||||
super.onPause(args);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user