FEE_MathRunner/js/rechnungen.js

99 lines
3.0 KiB
JavaScript
Raw Normal View History

2024-08-22 09:59:10 +02:00
const rechnungen = document.querySelector("#rechnungen");
2024-08-29 09:07:41 +02:00
//auf welcher höhe starten die Rechnungen?
const rechnungenTopStart = -100;
let rechnungenTop = rechnungenTopStart;
rechnungen.style.top = rechnungenTop + "px";
//speed der Rechnungen, wie schnell sie fallen
const speedRechnungen = 0.2;
//maximale pixel Tiefe bis sie respawnen
const maxTiefeRechunngen = 750;
2024-08-22 09:59:10 +02:00
const rechenzeichen = ['+','-','*',':'];
2024-08-22 15:20:37 +02:00
const rechnung1Text = document.querySelector("#rechnung1Text");
const rechnung2Text = document.querySelector("#rechnung2Text");
2024-08-29 08:19:38 +02:00
//RechnungenSpawn Parameter
2024-08-27 11:11:37 +02:00
const maxZahl = 100;
const maxMal = 11;
const maxDurch = 5;
2024-08-29 08:35:43 +02:00
const fuchsZahl = document.querySelector("#fuchsZahl");
2024-08-27 11:11:37 +02:00
rechnungenSpawn(maxZahl,maxMal,maxDurch);
2024-08-29 09:07:41 +02:00
2024-08-29 11:33:51 +02:00
//returned den int in der Rechnung, nur die zahl ohne rechenzeichen
function rechnung1Int(){
let text = rechnung1Text.innerText;
//entfernen vom rechenzeichen (+,-,*,:)
text = text.substring(1);
let zahl = parseInt(text);
return zahl;
}
//returned den int in der Rechnung, nur die zahl ohne rechenzeichen
function rechnung2Int(){
let text = rechnung2Text.innerText;
//entfernen vom rechenzeichen (+,-,*,:)
text = text.substring(1);
let zahl = parseInt(text);
return zahl;
}
2024-08-29 09:07:41 +02:00
function rechnungMoven(speed,maxtiefe){
2024-08-22 09:59:10 +02:00
let nextTop = rechnungenTop + 10 * speed;
rechnungen.style.top = nextTop + "px";
2024-08-29 09:07:41 +02:00
if(nextTop > maxtiefe){
rechnungen.style.top = rechnungenTopStart + "px";
rechnungenTop = rechnungenTopStart;
2024-08-27 11:11:37 +02:00
rechnungenSpawn(maxZahl,maxMal,maxDurch);
2024-08-29 11:33:51 +02:00
2024-08-22 09:59:10 +02:00
}else{
rechnungenTop = nextTop;
}
}
2024-08-27 11:11:37 +02:00
function rechnungenSpawn(maxzahl,maxMal,maxDurch){
2024-08-22 15:20:37 +02:00
let index = Math.floor(Math.random()*rechenzeichen.length);
2024-08-27 11:11:37 +02:00
let randomZahl = 0;
if(rechenzeichen[index] == '+' || rechenzeichen[index] == '-'){
randomZahl = Math.floor(Math.random()*maxzahl);
}
if(rechenzeichen[index] == '*'){
randomZahl = Math.floor(Math.random()*maxMal);
}
if(rechenzeichen[index] == ':'){
randomZahl = Math.floor(Math.random()*maxDurch) + 1;
}
2024-08-22 15:20:37 +02:00
rechnung1Text.innerText = rechenzeichen[index] + randomZahl.toString();
2024-08-27 11:11:37 +02:00
2024-08-22 15:20:37 +02:00
index = Math.floor(Math.random()*rechenzeichen.length);
2024-08-27 11:11:37 +02:00
if(rechenzeichen[index] == '+' || rechenzeichen[index] == '-'){
randomZahl = Math.floor(Math.random()*maxzahl);
}
if(rechenzeichen[index] == '*'){
randomZahl = Math.floor(Math.random()*maxMal);
}
if(rechenzeichen[index] == ':'){
randomZahl = Math.floor(Math.random()*maxDurch) + 1;
}
2024-08-22 15:20:37 +02:00
rechnung2Text.innerText = rechenzeichen[index] + randomZahl.toString();
2024-08-22 09:59:10 +02:00
}
2024-08-29 08:35:43 +02:00
function ergebnis(zahl1,zahl2,rechenzeichen){
if(rechenzeichen == '+'){
return zahl1 + zahl2;
}
if(rechenzeichen == '-'){
return zahl1 - zahl2;
}
if(rechenzeichen == '*'){
return zahl1 * zahl2;
}
if(rechenzeichen == ':'){
return zahl1 / zahl2;
}
return 0;
}
2024-08-22 09:59:10 +02:00
setInterval(()=>{
2024-08-29 09:07:41 +02:00
rechnungMoven(speedRechnungen,maxTiefeRechunngen);
2024-08-27 10:22:55 +02:00
}, 10);