diff --git a/www/index.html b/www/index.html index 419f0f1..ca4a711 100644 --- a/www/index.html +++ b/www/index.html @@ -44,7 +44,8 @@ - + + diff --git a/www/js/app.js b/www/js/app.js index 54dd360..a0cf877 100644 --- a/www/js/app.js +++ b/www/js/app.js @@ -130,11 +130,20 @@ angular.module('kinderspiel', ['ionic', 'ngCordova','ngAnimate', 'ngDraggable', .state('minispiel1', { url: '/minispiel1', cache: false, - templateUrl: 'spielsets/minispielset1/templates/minispiel1.html', + templateUrl: 'spielsets/minispielset1/templates/minispiel.html', css: 'spielsets/minispielset1/css/minispiel.css', controller: 'Minispiel1', reload: true }) + .state('minispiel2', { + url: '/minispiel2', + cache: false, + templateUrl: 'spielsets/minispielset2/templates/minispiel.html', + css: 'spielsets/minispielset2/css/minispiel.css', + controller: 'Minispiel2', + reload: true + }) + /* * Standard-Route setzen diff --git a/www/js/home_controller.js b/www/js/home_controller.js index a8a1f63..7e7d1a2 100644 --- a/www/js/home_controller.js +++ b/www/js/home_controller.js @@ -88,6 +88,7 @@ appControllers.controller('home', function($scope, $rootScope, $ionicPlatform, $ $scope.CSSKlickSuchspiel=false; $scope.showmentor=false; $state.go('suchspiel'); + //$state.go('minispiel2'); } $scope.animate_farmhaus=function(){ diff --git a/www/spielsets/minispielset1/js/minispiel1_controller.js b/www/spielsets/minispielset1/js/minispiel_controller.js similarity index 100% rename from www/spielsets/minispielset1/js/minispiel1_controller.js rename to www/spielsets/minispielset1/js/minispiel_controller.js diff --git a/www/spielsets/minispielset1/templates/minispiel1.html b/www/spielsets/minispielset1/templates/minispiel.html similarity index 100% rename from www/spielsets/minispielset1/templates/minispiel1.html rename to www/spielsets/minispielset1/templates/minispiel.html diff --git a/www/spielsets/minispielset2/css/minispiel.css b/www/spielsets/minispielset2/css/minispiel.css index 8ec76d8..3ae2d1c 100644 --- a/www/spielsets/minispielset2/css/minispiel.css +++ b/www/spielsets/minispielset2/css/minispiel.css @@ -1,47 +1,21 @@ -.teddy { - position: fixed; - top: 50%; - left: 50%; - width: 256px; - height: 256px; - margin-left: -128px; - margin-top: -128px; - overflow: hidden; +/* Hintergrundbild */ +.scroll-content { + background: url("../images/background.png"); + background-size: cover; + color: #333; + font: 100% Arial, Sans Serif; + height: 100vh; + margin: 0; + padding: 0; + overflow-x: hidden; } -.teddybackground { - background: url('../images/Teddybackgound.png'); +.dragzone{ + height:48px; + width: 64px; } - -.teddyani1 { - width: 256px; - height: 1024px; - background: url('../images/Teddybear_ani1.png') left center; - -webkit-animation: teddyspriteani 1.4s steps(4) infinite; -} - -.teddyani2 { - width: 256px; - height: 1024px; - background: url('../images/Teddybear_ani2.png') left center; - -webkit-animation: teddyspriteani 1.4s steps(4) infinite; -} - -.teddyani3 { - width: 256px; - height: 1024px; - background: url('../images/Teddybear_ani3.png') left center; - -webkit-animation: teddyspriteani 1.4s steps(4) infinite; -} - -.teddyani4 { - width: 256px; - height: 1024px; - background: url('../images/Teddybear_ani4.png') left center; - -webkit-animation: teddyspriteani 1.4s steps(4) infinite; -} - -@-webkit-keyframes teddyspriteani { - 100% { background-position: 0 -1024px; } +.dropzone{ + height:96px; + width: 128px; } \ No newline at end of file diff --git a/www/spielsets/minispielset2/images/Teddy2.png b/www/spielsets/minispielset2/images/Teddy2.png deleted file mode 100644 index 5272954..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy2.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy2_1.png b/www/spielsets/minispielset2/images/Teddy2_1.png deleted file mode 100644 index 1f8cdef..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy2_1.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy3.png b/www/spielsets/minispielset2/images/Teddy3.png deleted file mode 100644 index 5744f25..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy3.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy3_1.png b/www/spielsets/minispielset2/images/Teddy3_1.png deleted file mode 100644 index 0f116dd..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy3_1.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy4.png b/www/spielsets/minispielset2/images/Teddy4.png deleted file mode 100644 index 2943b2e..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy4.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy4_1.png b/www/spielsets/minispielset2/images/Teddy4_1.png deleted file mode 100644 index aa98495..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy4_1.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy5.png b/www/spielsets/minispielset2/images/Teddy5.png deleted file mode 100644 index 1b7296b..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy5.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy5_1.png b/www/spielsets/minispielset2/images/Teddy5_1.png deleted file mode 100644 index bda4184..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy5_1.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy6.png b/www/spielsets/minispielset2/images/Teddy6.png deleted file mode 100644 index 7ab09f1..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy6.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy6_1.png b/www/spielsets/minispielset2/images/Teddy6_1.png deleted file mode 100644 index cd06592..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy6_1.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy7.png b/www/spielsets/minispielset2/images/Teddy7.png deleted file mode 100644 index 9640d3d..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy7.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy7_1.png b/www/spielsets/minispielset2/images/Teddy7_1.png deleted file mode 100644 index defd410..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy7_1.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy8.png b/www/spielsets/minispielset2/images/Teddy8.png deleted file mode 100644 index cdd744d..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy8.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddy8_1.png b/www/spielsets/minispielset2/images/Teddy8_1.png deleted file mode 100644 index f146d8f..0000000 Binary files a/www/spielsets/minispielset2/images/Teddy8_1.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddybackgound.png b/www/spielsets/minispielset2/images/Teddybackgound.png deleted file mode 100644 index e3c2fb6..0000000 Binary files a/www/spielsets/minispielset2/images/Teddybackgound.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddybear_ani1.png b/www/spielsets/minispielset2/images/Teddybear_ani1.png deleted file mode 100644 index 847c0ea..0000000 Binary files a/www/spielsets/minispielset2/images/Teddybear_ani1.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddybear_ani2.png b/www/spielsets/minispielset2/images/Teddybear_ani2.png deleted file mode 100644 index e72a1da..0000000 Binary files a/www/spielsets/minispielset2/images/Teddybear_ani2.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddybear_ani3.png b/www/spielsets/minispielset2/images/Teddybear_ani3.png deleted file mode 100644 index c0a938f..0000000 Binary files a/www/spielsets/minispielset2/images/Teddybear_ani3.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/Teddybear_ani4.png b/www/spielsets/minispielset2/images/Teddybear_ani4.png deleted file mode 100644 index c241639..0000000 Binary files a/www/spielsets/minispielset2/images/Teddybear_ani4.png and /dev/null differ diff --git a/www/spielsets/minispielset2/images/background.png b/www/spielsets/minispielset2/images/background.png index fb08de9..5353c16 100644 Binary files a/www/spielsets/minispielset2/images/background.png and b/www/spielsets/minispielset2/images/background.png differ diff --git a/www/spielsets/minispielset2/images/blaues_auto.png b/www/spielsets/minispielset2/images/blaues_auto.png new file mode 100644 index 0000000..45091e8 Binary files /dev/null and b/www/spielsets/minispielset2/images/blaues_auto.png differ diff --git a/www/spielsets/minispielset2/images/blaues_auto_maske.png b/www/spielsets/minispielset2/images/blaues_auto_maske.png new file mode 100644 index 0000000..5f19844 Binary files /dev/null and b/www/spielsets/minispielset2/images/blaues_auto_maske.png differ diff --git a/www/spielsets/minispielset2/images/rotes_auto.png b/www/spielsets/minispielset2/images/rotes_auto.png new file mode 100644 index 0000000..870cc72 Binary files /dev/null and b/www/spielsets/minispielset2/images/rotes_auto.png differ diff --git a/www/spielsets/minispielset2/images/rotes_auto_maske.png b/www/spielsets/minispielset2/images/rotes_auto_maske.png new file mode 100644 index 0000000..2875b9f Binary files /dev/null and b/www/spielsets/minispielset2/images/rotes_auto_maske.png differ diff --git a/www/spielsets/minispielset2/images/schneemann.png b/www/spielsets/minispielset2/images/schneemann.png new file mode 100644 index 0000000..879fe7e Binary files /dev/null and b/www/spielsets/minispielset2/images/schneemann.png differ diff --git a/www/spielsets/minispielset2/images/schneemann_maske.png b/www/spielsets/minispielset2/images/schneemann_maske.png new file mode 100644 index 0000000..f1b2fad Binary files /dev/null and b/www/spielsets/minispielset2/images/schneemann_maske.png differ diff --git a/www/spielsets/minispielset2/images/teddy.png b/www/spielsets/minispielset2/images/teddy.png new file mode 100644 index 0000000..3d8558b Binary files /dev/null and b/www/spielsets/minispielset2/images/teddy.png differ diff --git a/www/spielsets/minispielset2/images/teddy_maske.png b/www/spielsets/minispielset2/images/teddy_maske.png new file mode 100644 index 0000000..ab31703 Binary files /dev/null and b/www/spielsets/minispielset2/images/teddy_maske.png differ diff --git a/www/spielsets/minispielset2/js/minispiel_controller.js b/www/spielsets/minispielset2/js/minispiel_controller.js new file mode 100644 index 0000000..619801a --- /dev/null +++ b/www/spielsets/minispielset2/js/minispiel_controller.js @@ -0,0 +1,270 @@ +appControllers.controller('Minispiel2', function($scope, $rootScope, $ionicPlatform, $cordovaMedia, backgroundsounds_mediahandler, $state, $timeout,$q, $http) { + + +/* +* Initialisierung +*/ +$scope.spieleallebilder=[]; +$scope.chunkedDataBilder = []; +$scope.chunkedDataBilderMask = []; + +$scope.spielendecounter=4; + + +/* +* Spielset laden +*/ +$http.get('spielsets/minispielset2/spielset.json').success(function(data) { + $scope.spieleallebilder = data; + bildermischen(); +}); + + +//$scope.$on("$ionicView.beforeEnter", function(event, data){ + +//}); + + + +$ionicPlatform.ready(function() { + + /* + * Sounds definieren + */ + + $scope.lachensounds=[]; + $scope.gamesounds=[]; + + + /* + * Spiele IntroSounds laden + * Typen: successsound -> Bravo, super, tollgemacht Sounds + * Typen: failuresound -> Leider daneben, versuchs nochmal + * Typen: cardsound -> Kartenlegegeräusch + * Typen: solutionsound -> Auflösungsgeräusch, das wäre das Tier gewesen + * Typen: gameoversound -> Spielzu ende Zeit für minispiel etc. + * Typen: backgroundmusic -> Hintergrundmusik + */ + $http.get('spielsets/minispielset1/systemsounds.json').success(function(data) { + + for(var i = 0; i < data.length; i++) { + + if (data[i].type=='lachensound'){ + $scope.lachensounds.push(data[i].sound); + } + else if (data[i].type=='gamesound'){ + $scope.gamesounds.push(data[i].sound); + + $timeout(function () { + //playsound('gamesound', $scope.gamesounds[0], minispielstart,'1.0'); + }, 1000); + } + else if (data[i].type=='backgroundmusic'){ + //backgroundsounds_mediahandler.setbackgroundsoundfile(data[i].sound); + //backgroundsounds_mediahandler.playbackgroundmusic(); + } + + }//for-Schleife + + });//$http + + + +}); + + + +/* +* Drei mal mischen :) +*/ +function bildermischen(){ + $scope.spieleallebilder=shuffleArray($scope.spieleallebilder); + $scope.spieleallebilder=shuffleArray($scope.spieleallebilder); + $scope.spieleallebilder=shuffleArray($scope.spieleallebilder); + + $scope.spiele=[]; + + for(var i = 0; i < 4; i++) { + var data= $scope.spieleallebilder[i]; + data.id=i; + $scope.spiele.push(data); + } + + $scope.chunkedDataBilder = chunk($scope.spiele, 1); + $scope.chunkedDataBilderMask = chunk($scope.spiele, 2); +} + + +/* +* Play-Sound +* playtype-> Bravo,Falsch oder Gamesound +* soundfile-> Pfad zur sounddatei +* callbackfunction-> Funktion die nach erfolgreichem abspielen gestarte wird +* volume-> Lautstärke z.B. 1.0 +*/ +function playsound(playtype, soundfile, callbackfunction, volume){ + + $ionicPlatform.ready(function() { + + if (playtype=='lachensound'){ + + /* + * Nur durchführen wenn Bär nicht lacht + */ + if ($scope.bin_am_lachen==false){ + + try{ + + lachensound.release(); + + } + catch(e){ + + //Soundfile Objekt gabs nicht oder Freigabefehler + console.log("Sounddatei nicht da"); + } + + lachensound = new Media(soundfile, callbackfunction ,null); + $scope.bin_am_lachen=true; + lachensound.play(); + + } + + } + else if (playtype=='gamesound'){ + + try{ + + //versuchen Soundfile freizugeben + gamesound.release(); + + } + catch(e){ + + //Soundfile Objekt gabs nicht oder Freigabefehler + console.log("Sounddatei nicht da"); + } + + gamesound = new Media(soundfile, callbackfunction ,null); + gamesound.play(); + + } + + }); + +} + +$scope.onDragComplete=function(data,evt){ + + for(var i = 0; i < $scope.spiele.length; i++) { + + if (data.id==$scope.spiele[i].id){ + $scope.spiele[i].dragged=false; + } + } + console.log("drag success, data:", data); +} + +$scope.onDragStart=function(data,evt){ + + for(var i = 0; i < $scope.spiele.length; i++) { + + if (data.id==$scope.spiele[i].id){ + $scope.spiele[i].dragged=true; + } + } + console.log("drag start, data:", data); +} + +$scope.onDragStop=function(data,evt){ + + for(var i = 0; i < $scope.spiele.length; i++) { + + if (data.id==$scope.spiele[i].id){ + $scope.spiele[i].dragged=false; + } + } + console.log("drag stop, data:", data); +} + + + +$scope.onDropComplete=function(data,evt,dropid){ + + //richtige form erwischt + if (data.id==dropid){ + for(var i = 0; i < $scope.spiele.length; i++) { + + if (data.id==$scope.spiele[i].id){ + $scope.spiele[i].display=false; + $scope.spiele[i].bildmaske=$scope.spiele[i].bild; + } + + } + + $scope.spielendecounter=$scope.spielendecounter - 1; + } + console.log("dropid: " + dropid + " drop success, data:", data); + + if ($scope.spielendecounter==0){ + + $timeout(function () { $state.go('home'); }, 5000); + + } +} + + +/* +* Zufallsgenerator um per Zufall neue Aufgabe definieren +*/ +function getRandomInt(min, max) { + var tmpInt=0; + min = Math.ceil(min); + max = Math.floor(max); + tmpInt = Math.floor(Math.random() * (max - min + 1)) + min; + + if (tmpInt > max){ + tmpInt=max; + } + + if (tmpInt < min){ + tmpInt=min; + } + return tmpInt; +} + + +/* +* Bilder per Zufall mischen +*/ +function shuffleArray(array) { + var m = array.length, t, i; + + // While there remain elements to shuffle + while (m) { + // Pick a remaining element… + i = Math.floor(Math.random() * m--); + + // And swap it with the current element. + t = array[m]; + array[m] = array[i]; + array[i] = t; + } + + return array; +} + + +/* +* Bilder richtig in Zeilen ausgeben +*/ +function chunk(arr, size) { + var newArr = []; + for (var i=0; i + + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+ +
+ diff --git a/www/spielsets/spielset1/js/suchspiel_controller.js b/www/spielsets/spielset1/js/suchspiel_controller.js index 734c8b3..5bfd8f1 100644 --- a/www/spielsets/spielset1/js/suchspiel_controller.js +++ b/www/spielsets/spielset1/js/suchspiel_controller.js @@ -456,7 +456,7 @@ function spielende(){ } function minispielintro(){ - $state.go('minispiel1'); + $state.go('minispiel2'); }