Hallo,
ich bin gerade dabei ein Lernspiel für Kinder zu erstellen.
Soweit konnte ich bisher alles realisieren.
Es ist ein Rechenspiel. Ist die Aussage wahr oder falsch...
Der linke Button ist der Wahr Button und der rechte der Falsch Button
Mein Problem liegt darin,
dass ich Stage 1 beginne und dann Level 1 für Level 2, Level 3 usw aufwärts durchspiele. Alles ok.
Spiele ich danach ein Level durch, das darunter ist, verändert es komischerweise die Funktion,
sodass wenn die Aussage wahr ist, bei einem Klick auf den Richtig-Button, das Ergebnis falsch gewertet wird.
Ich habe keine Ahnung mehr woran es liegen könnte... aber vielleicht jemand von euch
Besten Dank für Eure Hilfe
Mein Javascript
ich bin gerade dabei ein Lernspiel für Kinder zu erstellen.
Soweit konnte ich bisher alles realisieren.
Es ist ein Rechenspiel. Ist die Aussage wahr oder falsch...
Der linke Button ist der Wahr Button und der rechte der Falsch Button
Mein Problem liegt darin,
dass ich Stage 1 beginne und dann Level 1 für Level 2, Level 3 usw aufwärts durchspiele. Alles ok.
Spiele ich danach ein Level durch, das darunter ist, verändert es komischerweise die Funktion,
sodass wenn die Aussage wahr ist, bei einem Klick auf den Richtig-Button, das Ergebnis falsch gewertet wird.
Ich habe keine Ahnung mehr woran es liegen könnte... aber vielleicht jemand von euch
Besten Dank für Eure Hilfe
Mein Javascript
Code:
$('#button1').hide();
$('#button2').hide();
$('#tutorial').hide();
$('#registrierung').hide();
$('#playerwahl').hide();
$('#spielstaerke').hide();
$('#spielmodus').hide();
$('#stagewahl').hide();
$('#levelwahl').hide();
$('#los_gehts').hide();
$('#game').hide();
$('#ziel').hide();
$('#game_over').hide();
extra_coins = 0;
coins = 0;
coins_gesamt = 100;
stage_eins_complete = false;
stage_zwei_complete = false;
zehn = 0;
z = 0;
function welcome() {
setTimeout( function() {*
$('#welcome').hide();
$('#tutorial').show();
}, 1000)
}
welcome();
// TUT
$("#tutorial_button").click( function() {
$('#tutorial').hide();
$('#registrierung').show();
});
// REG
$("#registrierung_button").click( function() {
$('#registrierung').hide();
$('#playerwahl').show();
});
// --------- 1. Playeranzahl wählen
$('#playerwahl_btn1,#playerwahl_btn2,#playerwahl_btn3').click( function() {
spieleranzahl = (this.value);
$('#playerwahl').fadeOut('slow', function () {
//tue etwas nachdem #eineID ausgeblendet wurde...
$('#playerwahl').hide();
$('#spielstaerke').fadeIn('slow'); })
})
// ------------ 2. Spielstärke wählen
$('#spielstaerke_btn1,#spielstaerke_btn2,#spielstaerke_btn3').click( function() {
spielstaerkewahl = (this.value);
$('#spielstaerke').fadeOut('slow', function () {
//tue etwas nachdem #eineID ausgeblendet wurde...
$('#spielstaerke').hide();
$('#spielmodus').fadeIn('slow'); })
})
// --------- 3. Spielmodus wählen
$('#spielmodus_btn1,#spielmodus_btn2,#spielmodus_btn3').click( function() {
spielmoduswahl = (this.value);
$('#spielmodus').fadeOut('slow', function () {
//tue etwas nachdem #eineID ausgeblendet wurde...
$('#spielmodus').hide();
$('#stagewahl').fadeIn('slow'); })
})
// -------- 4. Stage wählen
$('#stagewahl_btn1,#stagewahl_btn2,#stagewahl_btn3,#stagewahl_btn4,#stagewahl_btn5,#stagewahl_btn6,#stagewahl_btn7,#stagewahl_btn8,#stagewahl_btn9,#stagewahl_btn10').click( function() {
stage_auswahl = (this.value);
zahlen_erstellung(); // Abhängigkeit Spielstärke & Stagewahl
anzahl_der_aufgaben(); // Abhängigkeit Stagewahl
leben_erstellen();
zeiteinteilung();
progressbar_aufgabe_pro_level();
$('#stagewahl').fadeOut('slow', function () {
//tue etwas nachdem #eineID ausgeblendet wurde...
$('#stagewahl').hide();
$('#levelwahl').fadeIn('slow');
})
})
function zahlen_erstellung() {
// Zufallszahlen nach Schwierigkeit und Stage
// Schwierigkeit Einfach Zahlen 1 - 20
if (stage_auswahl == 1 && spielstaerkewahl == 1) { minimum_zahl = 1; maximal_zahl = 10; }
else if (stage_auswahl == 2 && spielstaerkewahl == 1) { minimum_zahl = 2; maximal_zahl = 11; }
else if (stage_auswahl == 3 && spielstaerkewahl == 1) { minimum_zahl = 3; maximal_zahl = 12; }
else if (stage_auswahl == 4 && spielstaerkewahl == 1) { minimum_zahl = 4; maximal_zahl = 13; }
else if (stage_auswahl == 5 && spielstaerkewahl == 1) { minimum_zahl = 5; maximal_zahl = 14; }
// Schwierigkeit Mittel Zahlen 20 - 40
if (stage_auswahl == 1 && spielstaerkewahl == 2) { minimum_zahl = 1; maximal_zahl = 20; }
else if (stage_auswahl == 2 && spielstaerkewahl == 2) { minimum_zahl = 12; maximal_zahl = 22; }
else if (stage_auswahl == 3 && spielstaerkewahl == 2) { minimum_zahl = 13; maximal_zahl = 24; }
else if (stage_auswahl == 4 && spielstaerkewahl == 2) { minimum_zahl = 14; maximal_zahl = 26; }
else if (stage_auswahl == 5 && spielstaerkewahl == 2) { minimum_zahl = 15; maximal_zahl = 28; }
// Schwierigkeit Schwer Zahlen 40 - 60
if (stage_auswahl == 1 && spielstaerkewahl == 3) { minimum_zahl = 21; maximal_zahl = 42; }
else if (stage_auswahl == 2 && spielstaerkewahl == 3) { minimum_zahl = 22; maximal_zahl = 44; }
else if (stage_auswahl == 3 && spielstaerkewahl == 3) { minimum_zahl = 23; maximal_zahl = 46; }
else if (stage_auswahl == 4 && spielstaerkewahl == 3) { minimum_zahl = 24; maximal_zahl = 48; }
else if (stage_auswahl == 5 && spielstaerkewahl == 3) { minimum_zahl = 25; maximal_zahl = 50; }
if(stage_auswahl == 1 && stage_eins_complete == true )
{ $("#levelwahl_btn1, #levelwahl_btn2, #levelwahl_btn3").attr("disabled",false); }
}
// Aufgaben pro Level erzeugen
function anzahl_der_aufgaben() {
if(stage_auswahl == 1) { aufgabe_pro_level = 10;}
else if(stage_auswahl == 2) { aufgabe_pro_level = 20;}
else if(stage_auswahl == 3) { aufgabe_pro_level = 30;}
else if(stage_auswahl == 4) { aufgabe_pro_level = 40;}
else if(stage_auswahl == 5) { aufgabe_pro_level = 50;}
}
// Progressbaranzeigewert je nach Level
function progressbar_aufgabe_pro_level() {
if(aufgabe_pro_level == 10) { y = 10; }
else if(aufgabe_pro_level == 20) { y = 5; }
else if(aufgabe_pro_level == 30) { y = 3.3; }
else if(aufgabe_pro_level == 40) { y = 2.5; }
else if(aufgabe_pro_level == 50) { y = 2; }
}
function zeiteinteilung() {
if(spielstaerkewahl == 1) { zeit_nach_aufgabe = aufgabe_pro_level * 200;}
else if(spielstaerkewahl == 2) { zeit_nach_aufgabe = aufgabe_pro_level * 300;}
else if(spielstaerkewahl == 3) { zeit_nach_aufgabe = aufgabe_pro_level * 400;}
}
function leben_erstellen() {
if (stage_auswahl == 1) { leben = 2;}
else if (stage_auswahl == 2) { leben = 4;}
else if (stage_auswahl == 3) { leben = 6;}
else if (stage_auswahl == 4) { leben = 8;}
else if (stage_auswahl == 5) { leben = 10;}
}
// 5. Level wählen
$('#levelwahl_btn1, #levelwahl_btn2, #levelwahl_btn3, #levelwahl_btn4, #levelwahl_btn5, #levelwahl_btn6, #levelwahl_btn7, #levelwahl_btn8, #levelwahl_btn9, #levelwahl_btn10').click( function() {
level_auswahl = (this.value);
$('#levelwahl').fadeOut('slow', function () {
//tue etwas nachdem #eineID ausgeblendet wurde...
$('#levelwahl').hide();
$('#los_gehts').fadeIn('slow');
countdowner();
})
})
// Countdowner zum Start
function countdowner(){
var sTime = new Date().getTime();
var countDown = 3;
function UpdateTime() {
var cTime = new Date().getTime();
var diff = cTime - sTime;
var seconds = countDown - Math.floor(diff / 1000);
if (seconds >= 1) {
var minutes = Math.floor(seconds / 60);
seconds -= minutes * 60;
$("#minutes").text(minutes < 10 ? "0" + minutes : minutes);
$("#seconds").text(seconds < 10 ? "0" + seconds : seconds); }
else
{ clearInterval(counter);
// Countdown vorbei
$('#los_gehts').fadeOut('slow');
stoppuhr();
game();
$('#balken').hide(); $('#game').show(); $('#button1').show(); $('#button2').show();
}
}
UpdateTime();
var counter = setInterval(UpdateTime, 500);
}
// Stoppuhr Zeit
function stoppuhr() {
stopp_zeit = zeit_nach_aufgabe;
var counter_stopp = setInterval(timer, 10); //10 will run it every 100th of a second
function timer()
{
// Wenn Zeit abgelaufen ist oder Leben = 0
if (stopp_zeit <= 0 || leben <= 0 )
{
clearInterval(counter_stopp);
leben_erstellen();
zehn = 0;
coins = 0;
$("#game_over").toggle('explode');
$('#button1').hide();
$('#button2').hide();
$('#balken').show();
}
// Wenn das Level geschafft wurde
else if ( zehn > aufgabe_pro_level )
{
clearInterval(counter_stopp);
zehn = 0;
coins_gesamt = (coins + coins_gesamt);
$('#coins_gesamt').html(coins_gesamt);
coins = 0;
/* Levelbutton enabled wenn Level geschafft
function button_enabled() {
if (stage_auswahl == 1 ) {
if ( level_auswahl == 1 ) {
$("#levelwahl_btn2").attr("disabled",false); }
else if (level_auswahl == 2 ) {
$("#levelwahl_btn2,#levelwahl_btn3").attr("disabled",false); }
else if (level_auswahl == 3 ) {
$("#stagewahl_btn2").attr("disabled",false);
$("#levelwahl_btn2,#levelwahl_btn3").attr("disabled",true);
stage_eins_complete = true;
}
}
else if (stage_auswahl == 2 ) {
if ( level_auswahl == 1 ) {
$("#levelwahl_btn2").attr("disabled",false); }
else if (level_auswahl == 2 ) {
$("#levelwahl_btn2,#levelwahl_btn3").attr("disabled",false); }
else if (level_auswahl == 3 ) {
$("#stagewahl_btn2").attr("disabled",false);
stage_zwei_complete = true;
}
}
}
button_enabled();
*/
$("#ziel").toggle('explode');
$('#try_again_button').show();
$('#button1').hide();
$('#button2').hide();
$('#balken').show();
return;
}
// Zeit - Probaranzeige
$( "#probar_zeit" ).attr("max", zeit_nach_aufgabe );
alert(zeit_nach_aufgabe);
$( "#probar_zeit" ).val(stopp_zeit );
stopp_zeit--;
document.getElementById("timer").innerHTML=stopp_zeit /100+ " secs";
}
}
// Das Spiel
function game()
{
// -------- Zufallszahlen generieren
zahl1 = Math.round(Math.random() * (maximal_zahl - minimum_zahl + 1) - 0.5) + minimum_zahl;
zahl2 = Math.round(Math.random() * (maximal_zahl - minimum_zahl + 1) - 0.5) + minimum_zahl;
zahl3 = Math.round(Math.random() * (maximal_zahl - minimum_zahl + 1) - 0.5) + minimum_zahl;
zufall_zahl_fe = Math.round(Math.random() * (maximal_zahl - minimum_zahl + 1) - 0.5) + minimum_zahl;
// ---------- Zufallsarray für wahr oder falsch
art = new Array (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29);
art.sort(function() { return 0.5 - Math.random() });
// Rechenartauswahl je nach Levelwahl
if (level_auswahl == 1 || level_auswahl == 2) { addition(); }
else if (level_auswahl == 3 || level_auswahl == 4) { minus(); }
else if (level_auswahl == 5 ) { kette_plus(); }
else if (level_auswahl == 6 ) { kette_minus(); }
// Finish - Probaranzeige abhängig von y, je nach Stage
z = (zehn++) * y;
$( "#probar" ).val( z );
if( z == 100 || z > 100 )
{
z = 0;
$( "#probar" ).val( z );
}
// Extra Coins Anzeige
if( extra_coins == 10 )
{
coins = (coins + extra_coins);
$("#coins_gesamt").html(coins);
extra_coins = 0;
clearInterval(extra_coins);
$("#extra_coins").html("Kobold Goldtopf" + extra_coins);
}
// Coins Level usw Anzeige
$("#leben").html("Leben " + leben); $("#coins").html("Coins " + coins);
$("#aktuelle_spielstaerke").html("aktuelle Spielstärke " + spielstaerkewahl + " ");
$("#aktuelle_stage").html("aktuelle Stage " + stage_auswahl + " ");
$("#aktuelles_level").html("aktuelles Level " + level_auswahl);
}
// BUTTON 2
$('#button1').click( function() {
if (typeof subtraktion_ergebnis == 'number') {
if (subtraktion_ergebnis == zahl1 - zahl2) {
extra_coins++;
$("#extra_coins").html(extra_coins),
coins = coins + 2;
$("#coins").html(coins);
}
else if (!(subtraktion_ergebnis == zahl1 + zahl2)) {
extra_coins = extra_coins - extra_coins;
$("#extra_coins").html(extra_coins);
leben--; $("#leben").html(leben);
}
}
else if (typeof addition_ergebnis == 'number') {
if (addition_ergebnis == zahl1 + zahl2) {
extra_coins++;
coins++;
$("#coins").html(coins);
$("#extra_coins").html(extra_coins)
}
else if (!(addition_ergebnis == zahl1 + zahl2)) {
extra_coins = extra_coins - extra_coins;
leben--; $("#leben").html(leben);
$("#extra_coins").html(extra_coins)
}
}
else if (typeof kette_plus_ergebnis == 'number') {
if (kette_plus_ergebnis == zahl1 + zahl2 + zahl3) {
extra_coins++;
$("#extra_coins").html(extra_coins);
coins = coins + 3;
$("#coins").html(coins);
}
else if (!(kette_plus_ergebnis == zahl1 + zahl2 + zahl3)) {
extra_coins = extra_coins - extra_coins;
$("#extra_coins").html(extra_coins);
leben--;
$("#leben").html(leben);}
}
else if (typeof kette_minus_ergebnis == 'number') {
if (kette_minus_ergebnis == (zahl1 - zahl2) - (zahl3)) {
extra_coins++; $("#extra_coins").html(extra_coins); coins = coins + 4; $("#coins").html(coins);}
else if (!(kette_minus_ergebnis == (zahl1 - zahl2 - zahl3))) {
extra_coins = extra_coins - extra_coins; $("#extra_coins").html(extra_coins); leben--; $("#leben").html(leben); }
}
game();
});
// BUTTON 2
$('#button2').click( function() {
if (typeof subtraktion_ergebnis == 'number') {
if (!(subtraktion_ergebnis == zahl1 - zahl2)) {
extra_coins++; $("#extra_coins").html(extra_coins); coins = coins + 2; $("#coins").html(coins);}
else if (subtraktion_ergebnis == zahl1 - zahl2) { leben--; $("#leben").html(leben); }
}
else if (typeof addition_ergebnis == 'number') {
if (!(addition_ergebnis == zahl1 + zahl2)) {
extra_coins++; $("#extra_coins").html(extra_coins); coins++; $("#coins").html(coins);}
else if (addition_ergebnis == zahl1 + zahl2) { leben--; $("#leben").html(leben);}
}
else if (typeof kette_plus_ergebnis == 'number') {
if (!(kette_plus_ergebnis == zahl1 + zahl2 + zahl3)) {
extra_coins++; $("#extra_coins").html(extra_coins); coins = coins + 3; $("#coins").html(coins);}
else if (kette_plus_ergebnis == zahl1 + zahl2 + zahl3) { leben--; $("#leben").html(leben);}
}
game();
});
// addition
function addition() {
if (art[0] < 15) {
addition_ergebnis = zahl1 + zahl2; }
else if (art[0] > 14 && art[0] < 19) {
addition_ergebnis = zahl1 + zahl2 + zufall_zahl_fe; }
else if (art[0] > 18 && art[0] < 29 ) {
addition_ergebnis = zahl1 + zahl2 - zufall_zahl_fe; }
$("#ergebnis").html(zahl1 + " + " + zahl2 +
" = " + addition_ergebnis); }
// minus
function minus(){
if (art[0] < 15) {
subtraktion_ergebnis = zahl1 - zahl2; }
else if (art[0] > 14 && art[0] < 19) {
subtraktion_ergebnis = zahl1 - zahl2 + zufall_zahl_fe; }
else if (art[0] > 18 && art[0] < 29 ) {
subtraktion_ergebnis = zahl1 - zahl2 - zufall_zahl_fe; }
$("#ergebnis").html("Subtraktion: " + zahl1 + " - " + zahl2 +
" = " + subtraktion_ergebnis); }
// Kette Plus
function kette_plus() {
if (art[0] < 15) { kette_plus_ergebnis = zahl1 + zahl2 + zahl3; }
else if (art[0] > 14 && art[0] < 19) {
kette_plus_ergebnis = zahl1 + zahl2 + zahl3 + zufall_zahl_fe; }
else if (art[0] > 18 && art[0] < 29) {
kette_plus_ergebnis = zahl1 + zahl2 + zahl3 + zufall_zahl_fe; }
$("#ergebnis").html("Plus Kette: " + zahl1 + " + " + zahl2 + " + " + zahl3 +
" = " + kette_plus_ergebnis); }
// Kette Minus
function kette_minus() {
if (art[0] < 15) { kette_minus_ergebnis = zahl1 - zahl2 - zahl3; }
else if (art[0] > 14 && art[0] < 19) {
kette_minus_ergebnis = zahl1 - zahl2 - zahl3 + zufall_zahl_fe; }
else if (art[0] > 18 && art[0] < 29) {
kette_minus_ergebnis = zahl1 - zahl2 - zahl3 + zufall_zahl_fe; }
$("#ergebnis").html("Minus Kette: " + "(" + zahl1 + " - " + zahl2 + ")" + " - " + zahl3 +
" = " + kette_minus_ergebnis); }
// Next Level Button
$('#next_level').click( function() {
level_auswahl++;
$('#game').hide();
$('#ziel').hide();
$('#los_gehts').show();
countdowner();
})
// Try again Button
$('#try_again_button').click( function(){
$('#game').hide();
$('#game_over').hide();
$('#los_gehts').show();
countdowner();
})
// Try again Button 2
$('#try_again_button2').click( function(){
$('#ziel').hide();
$('#game').hide();
$('#los_gehts').show();
countdowner();
})
// Zur Levelauswahl
$('#back').click( function() {
$('#game').hide();
$('#game_over').hide();
$('#levelwahl').show();
})
// Zur Levelauswahl 2
$('#back2').click( function() {
$('#ziel').hide();
$('#game').hide();
$('#levelwahl').show();
})
// Zur Stageauswahl
$('#stage_wahl_button_game').click( function() {
$('#game').hide();
$('#game_over').hide();
$('#ziel').hide();
$('#stagewahl').show();
})
Zuletzt bearbeitet: