From ebe07280d5c436c0c1392d60cde7b702e0d28765 Mon Sep 17 00:00:00 2001 From: Carsten Hilmer Date: Tue, 8 Nov 2016 02:02:47 +0100 Subject: [PATCH] Kartensound eingebaut, kartenanimation verbessert --- www/css/style.css | 18 ++ www/js/suchspiel_controller.js | 322 +++++++++++++++------------------ www/sounds/karte.mp3 | Bin 0 -> 6312 bytes www/templates/spiel1.html | 13 +- 4 files changed, 168 insertions(+), 185 deletions(-) create mode 100644 www/sounds/karte.mp3 diff --git a/www/css/style.css b/www/css/style.css index da21e4c..258b77c 100644 --- a/www/css/style.css +++ b/www/css/style.css @@ -64,6 +64,24 @@ to {background-position: -2000px 0;} border-width: 2px; } +.neon { + font-family: sans-serif; + text-transform: uppercase; + font-size: 60px; + font-weight: bold; + font-style: italic; + letter-spacing: .1em; + color: white; + text-shadow: 0 0 5px white, + 0 0 10px white, + 0 0 20px yellow, + 0 0 40px yellow, + 0 0 60px yellow, + 0 0 90px yellow, + 0 0 120px yellow, + 0 0 160px yellow; +} + .redborder{ display: inline-block; border-radius: 6px; diff --git a/www/js/suchspiel_controller.js b/www/js/suchspiel_controller.js index 40c4dfe..73fa472 100644 --- a/www/js/suchspiel_controller.js +++ b/www/js/suchspiel_controller.js @@ -4,19 +4,22 @@ appControllers.controller('Suchspiel', function($scope, $ionicPlatform, $cordov $scope.showmentor=false; $scope.showmentorbravo=false; $scope.spiele=[]; +$scope.spielelistensort=[]; + $scope.spieleview=[]; $scope.tierfinden=''; $scope.randomid=0; $scope.error = false; -$scope.spielrunden=0 -$scope.falscheantwort=0 +$scope.spielrunden=0; +$scope.falscheantwort=0; +$scope.cardindex=0; + $scope.errorcode=99; $scope.tierindex=99; $scope.spielfertig=-1; $scope.spielneu=-1; - $ionicPlatform.ready(function() { /* @@ -35,11 +38,14 @@ $ionicPlatform.ready(function() { var tiersound7 = new Media('/android_asset/www/sounds/finde_maus.mp3', mentorausblenden,null); var tiersound8 = new Media('/android_asset/www/sounds/finde_schaf.mp3', mentorausblenden,null); - var bravosound = new Media('/android_asset/www/sounds/bravo.mp3', animateoldgame,null); + var bravosound = new Media('/android_asset/www/sounds/bravo.mp3', karteausblenden,null); var falschsound = new Media('/android_asset/www/sounds/falsch.mp3', null,null); + var kartegebensound = new Media('/android_asset/www/sounds/karte.mp3', kartegeben,null); + $scope.bravosound=bravosound; $scope.falschsound=falschsound; + $scope.kartegebensound=kartegebensound; $scope.sounds.push(tiersound1); $scope.sounds.push(tiersound2); @@ -61,7 +67,10 @@ var tier = { bild: 'elefant.jpg', sound1: 'sound_elefant.mp3', antwort: '', - display: false + display: false, + einblendecssid: 'elefantein', + ausblendecssid: 'elefantaus', + sortid: 0 }; $scope.spiele.push(tier); @@ -71,7 +80,10 @@ var tier1 = { bild: 'esel.jpg', sound1: 'sound_esel.mp3', antwort: '', - display: false + display: false, + einblendecssid: 'eselein', + ausblendecssid: 'eselaus', + sortid: 0 }; $scope.spiele.push(tier1); @@ -81,7 +93,10 @@ var tier2 = { bild: 'hahn.jpg', sound1: 'sound_hahn.mp3', antwort: '', - display: false + display: false, + einblendecssid: 'hahnein', + ausblendecssid: 'hahnaus', + sortid: 0 }; $scope.spiele.push(tier2); @@ -91,7 +106,10 @@ var tier3 = { bild: 'hund.jpg', sound1: 'sound_hund.mp3', sound2: '', - display: false + display: false, + einblendecssid: 'hundein', + ausblendecssid: 'hundaus', + sortid: 0 }; $scope.spiele.push(tier3); @@ -101,7 +119,10 @@ var tier4 = { bild: 'katze.jpg', sound1: 'sound_katze.mp3', sound2: '', - display: false + display: false, + einblendecssid: 'katzeein', + ausblendecssid: 'katzeaus', + sortid: 0 }; $scope.spiele.push(tier4); @@ -111,7 +132,10 @@ var tier5 = { bild: 'kuh.jpg', sound1: 'sound_kuh.mp3', sound2: '', - display: false + display: false, + einblendecssid: 'kuhein', + ausblendecssid: 'kuhaus', + sortid: 0 }; $scope.spiele.push(tier5); @@ -121,7 +145,10 @@ var tier6 = { bild: 'maus.jpg', sound1: 'sound_maus.mp3', sound2: '', - display: false + display: false, + einblendecssid: 'mausein', + ausblendecssid: 'mausaus', + sortid: 0 }; $scope.spiele.push(tier6); @@ -131,7 +158,10 @@ var tier7 = { bild: 'schaf.jpg', sound1: 'sound_schaf.mp3', sound2: '', - display: false + display: false, + einblendecssid: 'schafein', + ausblendecssid: 'schafaus', + sortid: 0 }; $scope.spiele.push(tier7); @@ -148,7 +178,8 @@ $scope.hilfe = function() { * Mentor ausblenden */ function mentorausblenden(){ - $timeout(function () { $scope.showmentor=false; }, 10); + $timeout(function () { $scope.showmentor=false; $scope.cardindex=-1}, 10); + } @@ -158,7 +189,7 @@ function mentorausblenden(){ $scope.answer = function(src) { if (src==$scope.randomid){ - $timeout(function () { $scope.showmentorbravo=true; }, 0); + $timeout(function () { $scope.showmentorbravo=true;$scope.cardindex=0; }, 0); $scope.bravosound.play(); } else{ @@ -171,15 +202,12 @@ $scope.answer = function(src) { $scope.errorcode=99; $timeout(function () { $scope.errorcode=$scope.randomid; - - animateoldgame(); - - }, 500); - }, 500); + $timeout(function () { $scope.cardindex=0;karteausblenden(); }, 2400); + }, 1400); + }, 700); } else { - $scope.falschsound.play(); $scope.error = true; $timeout(function () { @@ -196,187 +224,101 @@ $scope.answer = function(src) { } - - - //$timeout(pushA, 5000).then(pushB()); - - function showTier0() { - $scope.spielneu=0; - $scope.spiele[0].display=true; - $scope.chunkedData = chunk($scope.spiele, 4); - } - - function showTier1() { - $scope.spielneu=1; - $scope.spiele[1].display=true; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function showTier2() { - $scope.spielneu=2; - $scope.spiele[2].display=true; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function showTier3() { - $scope.spielneu=3; - $scope.spiele[3].display=true; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function showTier4() { - $scope.spielneu=4; - $scope.spiele[4].display=true; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function showTier5() { - $scope.spielneu=5; - $scope.spiele[5].display=true; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function showTier6() { - $scope.spielneu=6; - $scope.spiele[6].display=true; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function showTier7() { - $scope.spielneu=7; - $scope.spiele[7].display=true; - $scope.chunkedData = chunk($scope.spiele, 4); -} - - function hideTier0() { - $scope.spielfertig=0; - $scope.chunkedData = chunk($scope.spiele, 4); - } - - function hideTier1() { - $scope.spielfertig=1; - $scope.spiele[0].display=false; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function hideTier2() { - $scope.spielfertig=2; - $scope.spiele[1].display=false; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function hideTier3() { - $scope.spielfertig=3; - $scope.spiele[2].display=false; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function hideTier4() { - $scope.spielfertig=4; - $scope.spiele[3].display=false; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function hideTier5() { - $scope.spielfertig=5; - $scope.spiele[4].display=false; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function hideTier6() { - $scope.spielfertig=6; - $scope.spiele[5].display=false; - $scope.chunkedData = chunk($scope.spiele, 4); - } - -function hideTier7() { - $scope.spielfertig=7; - $scope.spiele[6].display=false; - $scope.chunkedData = chunk($scope.spiele, 4); -} - -function ResetGame() { - $scope.spiele[7].display=false; - $scope.spielfertig=-1; - $scope.chunkedData = chunk($scope.spiele, 4); - kartenmischen(); - $timeout(goto_newspiel, 2000); -} - - -function SetNewGame() { - $scope.spielrunden=$scope.spielrunden + 1; - $scope.randomid = getRandomInt(0, 7); - $scope.tierindex = $scope.randomid; - $scope.sounds[$scope.randomid].play(); -} - - /* * Neues Spiel */ function goto_newspiel(){ - - $scope.errorcode=99; $scope.falscheantwort=0; - animatenewgame(); + $scope.spielneu=0; + $scope.cardindex=-1; + + kartenmischen(); + + $timeout(function () { $scope.kartegebensound.play(); }, 2000); } -function animatenewgame(){ - $timeout(showTier0, 700).then($timeout(showTier1, 1400)); - $timeout(showTier2, 2100).then($timeout(showTier3, 2800)); - $timeout(showTier4, 3500).then($timeout(showTier5, 4200)); - $timeout(showTier6, 4900).then($timeout(showTier7, 5600)); - $timeout(SetNewGame, 6300); +function kartegeben(){ + + + $timeout(function () { + $scope.cardindex=$scope.cardindex + 1; + $scope.spielelistensort[$scope.cardindex].display=true; + + for(var i = 0; i < $scope.spiele.length; i++) { + var data= $scope.spiele[i]; + if (data.id==$scope.spielelistensort[$scope.cardindex].id){ + $scope.spielneu=data.einblendecssid; + } + } + + }, 0); + + + if ($scope.cardindex < 6 ){ + $scope.kartegebensound.play(); + } + else{ + $scope.spielneu=''; + $scope.randomid=getRandomInt(0, 7); + $scope.showmentor=true; + $scope.sounds[$scope.randomid].play(); + } + + } +function karteausblenden(){ + $timeout(function () { $scope.showmentorbravo=false; }, 0); + if ($scope.cardindex < 8 ){ -//$scope.spielfertig=99; -//$scope.spielneu=99; + for(var i = 0; i < $scope.spiele.length; i++) { + var data= $scope.spiele[i]; + if (data.id==$scope.spielelistensort[$scope.cardindex].id){ + $scope.spielfertig=data.ausblendecssid; + } + } + $timeout(function () { + $scope.spielelistensort[$scope.cardindex].display=false; + $scope.chunkedData = chunk($scope.spielelistensort, 4); + $scope.cardindex=$scope.cardindex + 1; + karteausblenden(); + }, 500); + } + else{ + $scope.spielfertig=''; + goto_newspiel(); + } + -function animateoldgame(){ - - $timeout(function () { - $scope.showmentor=true; - $scope.showmentorbravo=false; - },0); - - $timeout(hideTier0, 600).then($timeout(hideTier1, 1200)); - $timeout(hideTier2, 1800).then($timeout(hideTier3, 2400)); - $timeout(hideTier4, 3000).then($timeout(hideTier5, 3600)); - $timeout(hideTier6, 4200).then($timeout(hideTier7, 4800)); - $timeout(ResetGame, 5400); + } - /* -* +* Drei mal mischen :) */ function kartenmischen(){ - $scope.spiele=shuffleArray($scope.spiele); - $scope.chunkedData = chunk($scope.spiele, 4); - /* - $timeout(function () { - $scope.spiele=shuffleArray($scope.spiele); - $scope.chunkedData = chunk($scope.spiele, 4); - $timeout(function () { - $scope.spiele=shuffleArray($scope.spiele); - $scope.chunkedData = chunk($scope.spiele, 4); - $timeout(function () { - $scope.spiele=shuffleArray($scope.spiele); - $scope.chunkedData = chunk($scope.spiele, 4); - }, 500); - }, 500); - }, 500); -*/ + $scope.spiele=shuffleArray($scope.spiele); + $scope.spiele=shuffleArray($scope.spiele); + $scope.spiele=shuffleArray($scope.spiele); + + $scope.spielelistensort=[]; + for(var i = 0; i < $scope.spiele.length; i++) { + var data= $scope.spiele[i]; + data.sortid=i; + $scope.spielelistensort.push(data); + } + $scope.tierindex=$scope.spiele.length + " - " + $scope.spielelistensort.length; + $scope.chunkedData = chunk($scope.spielelistensort, 4); } + + /* * Per Zufall neue Aufgabe definieren */ @@ -427,12 +369,30 @@ function chunk(arr, size) { } return newArr; } - -$scope.chunkedData = chunk($scope.spiele, 4); +//$scope.chunkedData = chunk($scope.spiele, 4); /* -* Neues Spiel starten +* Initial - Neues Spiel starten */ -goto_newspiel(); +$scope.inittimercounter=3; +$scope.showinittimer=true; +$timeout(function () { inittimer(); }, 1000); + +function inittimer(){ + + if ($scope.inittimercounter > 0){ + + $timeout(function () { + $scope.inittimercounter=$scope.inittimercounter - 1; + inittimer(); + }, 1000); + + } + else{ + $scope.showinittimer=false; + goto_newspiel(); + } +} + }); \ No newline at end of file diff --git a/www/sounds/karte.mp3 b/www/sounds/karte.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..ad56fe7b1f31816d5e882b6513b454797ea1be43 GIT binary patch literal 6312 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 QP>3WxF9-s{(^akdKarXaRsaA1 literal 0 HcmV?d00001 diff --git a/www/templates/spiel1.html b/www/templates/spiel1.html index 7e071de..fb94c57 100644 --- a/www/templates/spiel1.html +++ b/www/templates/spiel1.html @@ -1,16 +1,21 @@ - + +
+
+ {{inittimercounter}} +
+
-
+
- + {{item.sortid}}
- {{ tierindex }} + {{ tierindex }} - {{cardindex}}