diff --git a/src/activities/money/CMakeLists.txt b/src/activities/money/CMakeLists.txt index 6d82a8b34..2f11ab379 100644 --- a/src/activities/money/CMakeLists.txt +++ b/src/activities/money/CMakeLists.txt @@ -1 +1 @@ -GCOMPRIS_ADD_RCC(activities/money *.qml *.svg *.js resource/* resource/*/*/*.qml) +GCOMPRIS_ADD_RCC(activities/money *.qml *.svg *.js resource/*) diff --git a/src/activities/money/money.js b/src/activities/money/money.js index 54bb16a15..6fa595941 100644 --- a/src/activities/money/money.js +++ b/src/activities/money/money.js @@ -1,247 +1,262 @@ /* GCompris - money.js * * Copyright (C) 2014 Bruno Coudoin * * Authors: * Bruno Coudoin (GTK+ version) * Bruno Coudoin (Qt Quick port) * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ .pragma library .import "qrc:/gcompris/src/core/core.js" as Core .import GCompris 1.0 as GCompris .import "moneyConstants.js" as Constants var url = "qrc:/gcompris/src/activities/money/resource/" // We create 3 prices categories to make the game more realistic. // List of images to use in the game (cheap objects) var currentLevel var numberOfLevel var dataset var items var centsMode var backMode var priceTotal function start(items_, datasetName) { items = items_ dataset = items.levels switch(datasetName) { case "WITHOUT_CENTS": centsMode = false backMode = false break case "WITH_CENTS": centsMode = true backMode = false break case "BACK_WITHOUT_CENTS": centsMode = false backMode = true break case "BACK_WITH_CENTS": centsMode = true backMode = true break } currentLevel = 0 numberOfLevel = dataset.length initLevel() } function stop() { } function initLevel() { items.bar.level = currentLevel + 1 items.answerModel.clear() items.pocketModel.clear() var data = dataset[currentLevel] - items.pocketRows = (data.pocket.length > 10) ? 3 : 2 + items.pocketRows = (data.pocket.length > 12) ? 3 : 2 var pocket = Core.shuffle(data.pocket) for (var i in pocket) items.pocketModel.append(pocket[i]) // fill up the store in a random way var storeModel = new Array() priceTotal = Math.floor(data.minPrice + Math.random() * (data.maxPrice - data.minPrice)) var priceCounter = 0 for(var i = 0; i < data.numberOfItem; i++) { var price if(i < data.numberOfItem - 1) // Calc a random price for each item based on the previous prices price = Math.floor((centsMode ? 0 : 1) + Math.random() * (2 * (priceTotal - priceCounter) / data.numberOfItem)) else // Put the remaining missing price on the last item price = priceTotal - priceCounter var cents = 0 if(centsMode) { if(currentLevel === 0) cents += 0.10 + Math.floor(Math.random() * 9) / 10 else cents += 0.01 + Math.floor(Math.random() * 9) / 100 priceTotal += cents price += cents } var locale = GCompris.ApplicationSettings.locale if(locale == "system") { locale = Qt.locale().name == "C" ? "en_US" : Qt.locale().name } var priceText = Number(price).toLocaleCurrencyString(Qt.locale(locale)) if(!centsMode) { // Strip floating part priceText = priceText.replace((/.00/), "") } storeModel.push({img: getRandomObject(price), price: priceText}) priceCounter += price } items.store.model = storeModel if(!backMode) { items.instructions.text = qsTr("Click on the coins or paper money at the bottom of the screen to pay." + " If you want to remove a coin or note, click on it on the upper screen area.") } else { var tuxMoney switch(data.paid) { case 5: tuxMoney = [Constants.moneyItems.MONEY_PAPER_5E] break case 10: tuxMoney = [Constants.moneyItems.MONEY_PAPER_10E] break + case 15: + tuxMoney = [Constants.moneyItems.MONEY_PAPER_10E, Constants.moneyItems.MONEY_PAPER_5E] + break case 20: tuxMoney = [Constants.moneyItems.MONEY_PAPER_20E] break + case 25: + tuxMoney = [Constants.moneyItems.MONEY_PAPER_20E, Constants.moneyItems.MONEY_PAPER_5E] + break case 30: tuxMoney = [Constants.moneyItems.MONEY_PAPER_20E, Constants.moneyItems.MONEY_PAPER_10E] break case 40: tuxMoney = [Constants.moneyItems.MONEY_PAPER_20E, Constants.moneyItems.MONEY_PAPER_20E] break case 50: tuxMoney = [Constants.moneyItems.MONEY_PAPER_50E] break case 100: - tuxMoney = [Constants.moneyItems.MONEY_PAPER_50E, Constants.moneyItems.MONEY_PAPER_50E] + tuxMoney = [Constants.moneyItems.MONEY_PAPER_100E] + break + case 200: + tuxMoney = [Constants.moneyItems.MONEY_PAPER_200E] + break + case 300: + tuxMoney = [Constants.moneyItems.MONEY_PAPER_200E, Constants.moneyItems.MONEY_PAPER_100E] + break + case 400: + tuxMoney = [Constants.moneyItems.MONEY_PAPER_200E, Constants.moneyItems.MONEY_PAPER_200E] break } items.tuxMoney.model = tuxMoney var tuxTotal = 0 for(var i=0; i < tuxMoney.length; i++) tuxTotal += tuxMoney[i].val var locale = GCompris.ApplicationSettings.locale if(locale == "system") { locale = Qt.locale().name == "C" ? "en_US" : Qt.locale().name } var priceText = Number(tuxTotal).toLocaleCurrencyString(Qt.locale(locale)) if(!centsMode) { // Strip floating part priceText = priceText.replace((/.00/), "") } /* The money sign is inserted based on the current locale */ items.instructions.text = qsTr("Tux just bought some items in your shop.\n" + "He gives you %1, please give back his change.") .arg(priceText) } //Keyboard reset items.itemIndex = -1 items.selectedArea = items.pocket } // Given a price return a random object function getRandomObject(price) { var list if(price < 5) list = Constants.cheapObjects else if(price < 10) list = Constants.normalObjects else list = Constants.expensiveObjects return list[Math.floor(Math.random() * list.length)] } function checkAnswer() { var paid = 0 for (var i = 0; i < items.answerModel.count; ++i) paid += items.answerModel.get(i).val paid = paid.toFixed(2) if(!backMode) { if(paid === priceTotal.toFixed(2)) items.bonus.good("flower") } else { if(paid === (dataset[currentLevel].paid - priceTotal).toFixed(2)) items.bonus.good("flower") } } function pay(index) { items.audioEffects.play(url + "money1.wav") // Add it to the anwser items.answerModel.append(items.pocketModel.get(index)) // Remove it from the pocket items.pocketModel.remove(index, 1) checkAnswer() } function unpay(index) { items.audioEffects.play(url + "money2.wav") // Add it to the pocket items.pocketModel.append(items.answerModel.get(index)) // Remove it from the Answer items.answerModel.remove(index, 1) checkAnswer() } function nextLevel() { if(numberOfLevel <= ++currentLevel ) { currentLevel = 0 } initLevel(); } function previousLevel() { if(--currentLevel < 0) { currentLevel = numberOfLevel - 1 } initLevel(); } diff --git a/src/activities/money/moneyConstants.js b/src/activities/money/moneyConstants.js index 73995b00e..d29c5e146 100644 --- a/src/activities/money/moneyConstants.js +++ b/src/activities/money/moneyConstants.js @@ -1,59 +1,61 @@ /* GCompris - Data.qml * * Copyright (C) 2019 Akshay Kumar * * Authors: * Akshay Kumar * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ var cheapObjects = [ "qrc:/gcompris/src/activities/money/resource/apple.svg", "qrc:/gcompris/src/activities/money/resource/orange.svg", "qrc:/gcompris/src/activities/money/resource/banane.svg", "qrc:/gcompris/src/activities/money/resource/pamplemousse.svg", "qrc:/gcompris/src/activities/money/resource/carot.svg", "qrc:/gcompris/src/activities/money/resource/cerise.svg", "qrc:/gcompris/src/activities/money/resource/cake.svg" ] var normalObjects = [ "qrc:/gcompris/src/activities/money/resource/umbrella.svg", "qrc:/gcompris/src/activities/money/resource/pencil.svg", "qrc:/gcompris/src/activities/money/resource/bottle.svg", "qrc:/gcompris/src/activities/money/resource/light.svg", "qrc:/gcompris/src/activities/money/resource/eggpot.svg" ] var expensiveObjects = [ "qrc:/gcompris/src/activities/money/resource/lamp.svg", "qrc:/gcompris/src/activities/money/resource/football.svg", "qrc:/gcompris/src/activities/money/resource/bicycle.svg" ] var moneyItems = { MONEY_COIN_1C: { img: "qrc:/gcompris/src/activities/money/resource/c1c.svg", val: 0.01 }, MONEY_COIN_2C: { img: "qrc:/gcompris/src/activities/money/resource/c2c.svg", val: 0.02 }, MONEY_COIN_5C: { img: "qrc:/gcompris/src/activities/money/resource/c5c.svg", val: 0.05 }, MONEY_COIN_10C: { img: "qrc:/gcompris/src/activities/money/resource/c10c.svg", val: 0.1 }, MONEY_COIN_20C: { img: "qrc:/gcompris/src/activities/money/resource/c20c.svg", val: 0.20 }, MONEY_COIN_50C: { img: "qrc:/gcompris/src/activities/money/resource/c50c.svg", val: 0.5 }, MONEY_COIN_1E: { img: "qrc:/gcompris/src/activities/money/resource/c1e.svg", val: 1.0 }, MONEY_COIN_2E: { img: "qrc:/gcompris/src/activities/money/resource/c2e.svg", val: 2.0 }, MONEY_PAPER_5E: { img: "qrc:/gcompris/src/activities/money/resource/n5e.svg", val: 5.0 }, MONEY_PAPER_10E: { img: "qrc:/gcompris/src/activities/money/resource/n10e.svg", val: 10.0 }, MONEY_PAPER_20E: { img: "qrc:/gcompris/src/activities/money/resource/n20e.svg", val: 20.0 }, MONEY_PAPER_50E: { img: "qrc:/gcompris/src/activities/money/resource/n50e.svg", val: 50.0 }, + MONEY_PAPER_100E: { img: "qrc:/gcompris/src/activities/money/resource/n100e.png", val: 100.0 }, + MONEY_PAPER_200E: { img: "qrc:/gcompris/src/activities/money/resource/n200e.svg", val: 200.0 } } diff --git a/src/activities/money/resource/2/Data.qml b/src/activities/money/resource/2/Data.qml index 622612836..3047ad53a 100644 --- a/src/activities/money/resource/2/Data.qml +++ b/src/activities/money/resource/2/Data.qml @@ -1,179 +1,182 @@ /* GCompris - Data.qml * * Copyright (C) 2019 Akshay Kumar * * Authors: * Akshay Kumar * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ import QtQuick 2.6 import GCompris 1.0 import "../../../../core" import "../../../money/moneyConstants.js" as Constants Dataset { objective: qsTr("Learn how to pay up to 100 units") property var moneyItems: Constants.moneyItems data: [ { "numberOfItem": 1, "minPrice": 3, "maxPrice": 10, "pocket": [ moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 1, "minPrice": 10, "maxPrice": 20, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 1, "minPrice": 20, "maxPrice": 30, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 1, "minPrice": 30, "maxPrice": 60, "pocket": [ moneyItems.MONEY_PAPER_10E, + moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 1, "minPrice": 60, "maxPrice": 100, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E ] }, { "numberOfItem": 3, "minPrice": 10, "maxPrice": 20, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 4, "minPrice": 20, "maxPrice": 30, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 5, "minPrice": 30, "maxPrice": 60, "pocket": [ + moneyItems.MONEY_PAPER_20E, + moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 6, "minPrice": 60, "maxPrice": 100, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E ] } ] } diff --git a/src/activities/money/resource/3/Data.qml b/src/activities/money/resource/3/Data.qml index 4dbb91035..1aed23c7b 100644 --- a/src/activities/money/resource/3/Data.qml +++ b/src/activities/money/resource/3/Data.qml @@ -1,283 +1,231 @@ /* GCompris - Data.qml * * Copyright (C) 2019 Akshay Kumar * * Authors: * Akshay Kumar * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ import QtQuick 2.6 import GCompris 1.0 import "../../../../core" import "../../../money/moneyConstants.js" as Constants Dataset { objective: qsTr("Learn how to pay up to 1000 units") property var moneyItems: Constants.moneyItems data: [ { "numberOfItem": 1, "minPrice": 10, "maxPrice": 100, "pocket": [ moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 1, "minPrice": 200, "maxPrice": 400, "pocket": [ - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 1, "minPrice": 400, "maxPrice": 600, "pocket": [ - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 1, "minPrice": 600, "maxPrice": 800, "pocket": [ + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, + moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 1, "minPrice": 800, "maxPrice": 1000, "pocket": [ - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 3, "minPrice": 10, "maxPrice": 100, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 4, "minPrice": 100, "maxPrice": 200, "pocket": [ moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 5, "minPrice": 200, "maxPrice": 400, "pocket": [ - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, + moneyItems.MONEY_PAPER_10E, + moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_PAPER_10E, - moneyItems.MONEY_PAPER_5E, - moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 6, "minPrice": 400, "maxPrice": 600, "pocket": [ + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, + moneyItems.MONEY_PAPER_20E, + moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, - moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, - moneyItems.MONEY_COIN_1E, - moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_20E, - moneyItems.MONEY_PAPER_5E, - moneyItems.MONEY_PAPER_5E + moneyItems.MONEY_COIN_2E, + moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 7, "minPrice": 600, "maxPrice": 1000, "pocket": [ + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_100E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, + moneyItems.MONEY_PAPER_10E, + moneyItems.MONEY_PAPER_10E, + moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, - moneyItems.MONEY_PAPER_5E + moneyItems.MONEY_COIN_1E ] } ] } diff --git a/src/activities/money/resource/n100e.png b/src/activities/money/resource/n100e.png new file mode 100644 index 000000000..7f756bf5f Binary files /dev/null and b/src/activities/money/resource/n100e.png differ diff --git a/src/activities/money/resource/n200e.svg b/src/activities/money/resource/n200e.svg new file mode 100644 index 000000000..8bb072bb5 --- /dev/null +++ b/src/activities/money/resource/n200e.svg @@ -0,0 +1,3327 @@ + + + + 200 Euro Note + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + Openclipart + + + + + + + + + + + diff --git a/src/activities/money_back/ActivityInfo.qml b/src/activities/money_back/ActivityInfo.qml index 0377ac842..f1584fdcc 100644 --- a/src/activities/money_back/ActivityInfo.qml +++ b/src/activities/money_back/ActivityInfo.qml @@ -1,41 +1,41 @@ /* GCompris - ActivityInfo.qml * * Copyright (C) 2015 Bruno Coudoin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ import GCompris 1.0 ActivityInfo { name: "money_back/MoneyBack.qml" difficulty: 3 icon: "money_back/money_back.svg" author: "Bruno Coudoin <bruno.coudoin@gcompris.net>" demo: false //: Activity title title: qsTr("Give Tux his change") //: Help title description: qsTr("Practice money usage by giving Tux his change") // intro: "Click on the money at the bottom of the screen to give Tux his change." //: Help goal goal: qsTr("Tux bought different items from you and shows you his money. You must give him back his change. At higher levels, several items are displayed, and you must first calculate the total price.") //: Help prerequisite prerequisite: qsTr("Can count") //: Help manual manual: qsTr("Click on the coins or paper money at the bottom of the screen to pay. If you want to remove a coin or note, click on it on the upper screen area.") credit: "" section: "math money measures" createdInVersion: 0 - levels: "1" + levels: "1,2,3" } diff --git a/src/activities/money_back/CMakeLists.txt b/src/activities/money_back/CMakeLists.txt index 83bf48e51..5cd778651 100644 --- a/src/activities/money_back/CMakeLists.txt +++ b/src/activities/money_back/CMakeLists.txt @@ -1 +1 @@ -GCOMPRIS_ADD_RCC(activities/money_back *.qml *.svg *.js resource/* resource/*/*/*.qml) +GCOMPRIS_ADD_RCC(activities/money_back *.qml *.svg *.js resource/*) diff --git a/src/activities/money_back/resource/1/Data.qml b/src/activities/money_back/resource/1/Data.qml index c10bbdea2..d69f472ce 100644 --- a/src/activities/money_back/resource/1/Data.qml +++ b/src/activities/money_back/resource/1/Data.qml @@ -1,190 +1,190 @@ /* GCompris - Data.qml * * Copyright (C) 2019 Akshay Kumar * * Authors: * Akshay Kumar * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ import QtQuick 2.6 import GCompris 1.0 import "../../../../core" import "../../../money/moneyConstants.js" as Constants Dataset { - objective: qsTr("Learn how to pay up to 100 euros including cents") + objective: qsTr("Learn how to calculate change when amount paid is upto 25 units") property var moneyItems: Constants.moneyItems data: [ { "numberOfItem": 1, - "minPrice": 3, - "maxPrice": 9, + "minPrice": 1, + "maxPrice": 3, "paid": 10, "pocket": [ moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, ] }, { "numberOfItem": 1, "minPrice": 1, - "maxPrice": 19, - "paid": 20, + "maxPrice": 5, + "paid": 10, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 2, - "minPrice": 2, - "maxPrice": 29, - "paid": 30, + "numberOfItem": 1, + "minPrice": 1, + "maxPrice": 8, + "paid": 10, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 2, - "minPrice": 2, - "maxPrice": 39, - "paid": 40, + "numberOfItem": 1, + "minPrice": 1, + "maxPrice": 10, + "paid": 15, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 3, - "minPrice": 3, - "maxPrice": 49, - "paid": 50, + "numberOfItem": 1, + "minPrice": 1, + "maxPrice": 12, + "paid": 15, "pocket": [ moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 3, - "minPrice": 3, - "maxPrice": 60, - "paid": 100, + "numberOfItem": 1, + "minPrice": 1, + "maxPrice": 15, + "paid": 20, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 4, - "minPrice": 4, - "maxPrice": 70, - "paid": 100, + "numberOfItem": 1, + "minPrice": 1, + "maxPrice": 18, + "paid": 20, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 4, - "minPrice": 4, - "maxPrice": 80, - "paid": 100, + "numberOfItem": 1, + "minPrice": 1, + "maxPrice": 20, + "paid": 25, "pocket": [ moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 4, - "minPrice": 4, - "maxPrice": 99, - "paid": 100, + "numberOfItem": 1, + "minPrice": 1, + "maxPrice": 22, + "paid": 25, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E ] } ] } diff --git a/src/activities/money_back/resource/1/Data.qml b/src/activities/money_back/resource/2/Data.qml similarity index 93% copy from src/activities/money_back/resource/1/Data.qml copy to src/activities/money_back/resource/2/Data.qml index c10bbdea2..d302c88ea 100644 --- a/src/activities/money_back/resource/1/Data.qml +++ b/src/activities/money_back/resource/2/Data.qml @@ -1,190 +1,190 @@ /* GCompris - Data.qml * * Copyright (C) 2019 Akshay Kumar * * Authors: * Akshay Kumar * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ import QtQuick 2.6 import GCompris 1.0 import "../../../../core" import "../../../money/moneyConstants.js" as Constants Dataset { - objective: qsTr("Learn how to pay up to 100 euros including cents") + objective: qsTr("Learn how to calculate change when amount paid is upto 100 units") property var moneyItems: Constants.moneyItems data: [ { "numberOfItem": 1, - "minPrice": 3, - "maxPrice": 9, - "paid": 10, + "minPrice": 1, + "maxPrice": 10, + "paid": 15, "pocket": [ moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, ] }, { - "numberOfItem": 1, + "numberOfItem": 2, "minPrice": 1, - "maxPrice": 19, + "maxPrice": 15, "paid": 20, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 2, - "minPrice": 2, - "maxPrice": 29, + "minPrice": 1, + "maxPrice": 25, "paid": 30, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 2, - "minPrice": 2, - "maxPrice": 39, + "numberOfItem": 3, + "minPrice": 1, + "maxPrice": 30, "paid": 40, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 3, - "minPrice": 3, - "maxPrice": 49, + "minPrice": 1, + "maxPrice": 40, "paid": 50, "pocket": [ moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 3, + "numberOfItem": 4, "minPrice": 3, "maxPrice": 60, "paid": 100, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { "numberOfItem": 4, "minPrice": 4, "maxPrice": 70, "paid": 100, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 4, + "numberOfItem": 5, "minPrice": 4, "maxPrice": 80, "paid": 100, "pocket": [ moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 4, + "numberOfItem": 5, "minPrice": 4, "maxPrice": 99, "paid": 100, "pocket": [ moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E ] } ] } diff --git a/src/activities/money_back/resource/1/Data.qml b/src/activities/money_back/resource/3/Data.qml similarity index 61% copy from src/activities/money_back/resource/1/Data.qml copy to src/activities/money_back/resource/3/Data.qml index c10bbdea2..e69e3118f 100644 --- a/src/activities/money_back/resource/1/Data.qml +++ b/src/activities/money_back/resource/3/Data.qml @@ -1,190 +1,128 @@ /* GCompris - Data.qml * * Copyright (C) 2019 Akshay Kumar * * Authors: * Akshay Kumar * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ import QtQuick 2.6 import GCompris 1.0 import "../../../../core" import "../../../money/moneyConstants.js" as Constants Dataset { - objective: qsTr("Learn how to pay up to 100 euros including cents") + objective: qsTr("Learn how to calculate change when amount paid is upto 400 units") property var moneyItems: Constants.moneyItems data: [ { "numberOfItem": 1, - "minPrice": 3, - "maxPrice": 9, - "paid": 10, + "minPrice": 1, + "maxPrice": 49, + "paid": 50, "pocket": [ + moneyItems.MONEY_PAPER_10E, + moneyItems.MONEY_PAPER_10E, + moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_COIN_1E, - moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E, ] }, { - "numberOfItem": 1, - "minPrice": 1, - "maxPrice": 19, - "paid": 20, + "numberOfItem": 2, + "minPrice": 50, + "maxPrice": 99, + "paid": 100, "pocket": [ + moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_10E, + moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 2, - "minPrice": 2, - "maxPrice": 29, - "paid": 30, + "numberOfItem": 3, + "minPrice": 100, + "maxPrice": 199, + "paid": 200, "pocket": [ + moneyItems.MONEY_PAPER_100E, + moneyItems.MONEY_PAPER_50E, + moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 2, - "minPrice": 2, - "maxPrice": 39, - "paid": 40, + "numberOfItem": 4, + "minPrice": 200, + "maxPrice": 299, + "paid": 300, "pocket": [ + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_10E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] }, { - "numberOfItem": 3, - "minPrice": 3, - "maxPrice": 49, - "paid": 50, + "numberOfItem": 5, + "minPrice": 300, + "maxPrice": 399, + "paid": 400, "pocket": [ + moneyItems.MONEY_PAPER_200E, + moneyItems.MONEY_PAPER_100E, moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, moneyItems.MONEY_PAPER_10E, - moneyItems.MONEY_PAPER_10E, - moneyItems.MONEY_PAPER_5E, - moneyItems.MONEY_COIN_1E, - moneyItems.MONEY_PAPER_5E, - moneyItems.MONEY_COIN_2E, moneyItems.MONEY_PAPER_20E, - moneyItems.MONEY_COIN_1E - ] - }, - { - "numberOfItem": 3, - "minPrice": 3, - "maxPrice": 60, - "paid": 100, - "pocket": [ moneyItems.MONEY_PAPER_10E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_PAPER_20E, - moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, - moneyItems.MONEY_COIN_2E, moneyItems.MONEY_COIN_1E, - moneyItems.MONEY_COIN_1E, - moneyItems.MONEY_COIN_1E - ] - }, - { - "numberOfItem": 4, - "minPrice": 4, - "maxPrice": 70, - "paid": 100, - "pocket": [ - moneyItems.MONEY_PAPER_10E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_5E, - moneyItems.MONEY_COIN_1E, - moneyItems.MONEY_PAPER_10E, - moneyItems.MONEY_PAPER_20E, moneyItems.MONEY_PAPER_5E, moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_COIN_1E, - moneyItems.MONEY_COIN_1E - ] - }, - { - "numberOfItem": 4, - "minPrice": 4, - "maxPrice": 80, - "paid": 100, - "pocket": [ - moneyItems.MONEY_PAPER_50E, moneyItems.MONEY_PAPER_20E, - moneyItems.MONEY_PAPER_10E, - moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_COIN_1E, - moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_PAPER_10E, - moneyItems.MONEY_PAPER_5E, - moneyItems.MONEY_COIN_1E, moneyItems.MONEY_COIN_1E ] - }, - { - "numberOfItem": 4, - "minPrice": 4, - "maxPrice": 99, - "paid": 100, - "pocket": [ - moneyItems.MONEY_PAPER_10E, - moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_PAPER_5E, - moneyItems.MONEY_COIN_1E, - moneyItems.MONEY_COIN_1E, - moneyItems.MONEY_COIN_2E, - moneyItems.MONEY_PAPER_50E, - moneyItems.MONEY_PAPER_20E, - moneyItems.MONEY_PAPER_5E, - moneyItems.MONEY_PAPER_5E - ] } ] } diff --git a/src/activities/money_back_cents/CMakeLists.txt b/src/activities/money_back_cents/CMakeLists.txt index cb89bd82c..eadb1bcfa 100644 --- a/src/activities/money_back_cents/CMakeLists.txt +++ b/src/activities/money_back_cents/CMakeLists.txt @@ -1 +1 @@ -GCOMPRIS_ADD_RCC(activities/money_back_cents *.qml *.svg *.js resource/* resource/*/*/*.qml) +GCOMPRIS_ADD_RCC(activities/money_back_cents *.qml *.svg *.js resource/*) diff --git a/src/activities/money_back_cents/resource/2/Data.qml b/src/activities/money_back_cents/resource/2/Data.qml new file mode 100644 index 000000000..ae204b97a --- /dev/null +++ b/src/activities/money_back_cents/resource/2/Data.qml @@ -0,0 +1,121 @@ +/* GCompris - Data.qml + * + * Copyright (C) 2019 Akshay Kumar + * + * Authors: + * Akshay Kumar + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see . + */ +import QtQuick 2.6 +import GCompris 1.0 +import "../../../../core" +import "../../../money/moneyConstants.js" as Constants + +Dataset { + objective: qsTr("Learn how to pay up to 10 euros giving back the change") + property var moneyItems: Constants.moneyItems + data: [ + { + "numberOfItem": 1, + "minPrice": 1, + "maxPrice": 3, + "paid": 5, + "pocket": [ + moneyItems.MONEY_COIN_2E, + moneyItems.MONEY_COIN_1E, + moneyItems.MONEY_COIN_5C, + moneyItems.MONEY_COIN_2C, + moneyItems.MONEY_COIN_20C, + moneyItems.MONEY_COIN_50C, + moneyItems.MONEY_COIN_20C, + moneyItems.MONEY_COIN_10C, + moneyItems.MONEY_COIN_1C, + moneyItems.MONEY_COIN_1C + ] + }, + { + "numberOfItem": 1, + "minPrice": 1, + "maxPrice": 3, + "paid": 5, + "pocket": [ + moneyItems.MONEY_COIN_2E, + moneyItems.MONEY_COIN_1E, + moneyItems.MONEY_COIN_5C, + moneyItems.MONEY_COIN_2C, + moneyItems.MONEY_COIN_20C, + moneyItems.MONEY_COIN_50C, + moneyItems.MONEY_COIN_20C, + moneyItems.MONEY_COIN_10C, + moneyItems.MONEY_COIN_1C, + moneyItems.MONEY_COIN_1C + ] + }, + { + "numberOfItem": 2, + "minPrice": 1, + "maxPrice": 3, + "paid": 5, + "pocket": [ + moneyItems.MONEY_COIN_2E, + moneyItems.MONEY_COIN_1E, + moneyItems.MONEY_COIN_5C, + moneyItems.MONEY_COIN_2C, + moneyItems.MONEY_COIN_20C, + moneyItems.MONEY_COIN_50C, + moneyItems.MONEY_COIN_20C, + moneyItems.MONEY_COIN_10C, + moneyItems.MONEY_COIN_1C, + moneyItems.MONEY_COIN_1C + ] + }, + { + "numberOfItem": 3, + "minPrice": 1, + "maxPrice": 3, + "paid": 5, + "pocket": [ + moneyItems.MONEY_COIN_2E, + moneyItems.MONEY_COIN_1E, + moneyItems.MONEY_COIN_5C, + moneyItems.MONEY_COIN_2C, + moneyItems.MONEY_COIN_20C, + moneyItems.MONEY_COIN_50C, + moneyItems.MONEY_COIN_20C, + moneyItems.MONEY_COIN_10C, + moneyItems.MONEY_COIN_1C, + moneyItems.MONEY_COIN_1C + ] + }, + { + "numberOfItem": 4, + "minPrice": 0, + "maxPrice": 4, + "paid": 5, + "pocket": [ + moneyItems.MONEY_COIN_2E, + moneyItems.MONEY_COIN_1E, + moneyItems.MONEY_COIN_5C, + moneyItems.MONEY_COIN_2C, + moneyItems.MONEY_COIN_20C, + moneyItems.MONEY_COIN_50C, + moneyItems.MONEY_COIN_20C, + moneyItems.MONEY_COIN_10C, + moneyItems.MONEY_COIN_1C, + moneyItems.MONEY_COIN_1C + ] + } + ] +} diff --git a/src/activities/money_cents/CMakeLists.txt b/src/activities/money_cents/CMakeLists.txt index 8dc54c230..f827711b7 100644 --- a/src/activities/money_cents/CMakeLists.txt +++ b/src/activities/money_cents/CMakeLists.txt @@ -1 +1 @@ -GCOMPRIS_ADD_RCC(activities/money_cents *.qml *.svg *.js resource/* resource/*/*/*.qml) +GCOMPRIS_ADD_RCC(activities/money_cents *.qml *.svg *.js resource/*)