From 70b5475d834b4adec7c0533f2ddbf84fb92e8f8b Mon Sep 17 00:00:00 2001 From: tzx <86029709+xuegao-tzx@users.noreply.github.com> Date: Thu, 17 Jun 2021 08:49:29 +0800 Subject: [PATCH] Add files via upload --- src/main/config.json | 42 ++++++ src/main/js/default/app.js | 8 ++ src/main/js/default/pages/index/index.css | 62 +++++++++ src/main/js/default/pages/index/index.hml | 23 ++++ src/main/js/default/pages/index/index.js | 127 +++++++++++++++++++ src/main/resources/base/element/string.json | 8 ++ src/main/resources/base/media/icon.png | Bin 0 -> 5998 bytes src/main/resources/base/media/icon_small.png | Bin 0 -> 4421 bytes 8 files changed, 270 insertions(+) create mode 100644 src/main/config.json create mode 100644 src/main/js/default/app.js create mode 100644 src/main/js/default/pages/index/index.css create mode 100644 src/main/js/default/pages/index/index.hml create mode 100644 src/main/js/default/pages/index/index.js create mode 100644 src/main/resources/base/element/string.json create mode 100644 src/main/resources/base/media/icon.png create mode 100644 src/main/resources/base/media/icon_small.png diff --git a/src/main/config.json b/src/main/config.json new file mode 100644 index 0000000..7c6daca --- /dev/null +++ b/src/main/config.json @@ -0,0 +1,42 @@ +{ + "app": { + "apiVersion": { + "compatible": 3, + "target": 4, + "releaseType": "Release" + }, + "bundleName": "my.game20481.myapplication", + "vendor": "game20481", + "version": { + "code": 1000000, + "name": "1.0.0" + } + }, + "deviceConfig": {}, + "module": { + "deviceType": [ + "liteWearable" + ], + "distro": { + "deliveryWithInstall": true, + "moduleName": "entry", + "moduleType": "entry" + }, + "abilities": [ + { + "name": "default", + "icon": "$media:icon", + "label": "$string:entry_MainAbility", + "type": "page" + } + ], + "js": [ + { + "pages": [ + "pages/index/index" + ], + "name": "default" + } + ] + } +} \ No newline at end of file diff --git a/src/main/js/default/app.js b/src/main/js/default/app.js new file mode 100644 index 0000000..6d060ff --- /dev/null +++ b/src/main/js/default/app.js @@ -0,0 +1,8 @@ +export default { + onCreate() { + console.info("Application onCreate"); + }, + onDestroy() { + console.info("Application onDestroy"); + } +}; diff --git a/src/main/js/default/pages/index/index.css b/src/main/js/default/pages/index/index.css new file mode 100644 index 0000000..5cf9016 --- /dev/null +++ b/src/main/js/default/pages/index/index.css @@ -0,0 +1,62 @@ +.container{ + width: 454px; + height: 454px; + flex-direction: column; + justify-content: center; + align-items: center; +} +.score{ + text-align: center; + width: 234px; + height: 30px; + letter-spacing: 0px; + margin-top: 4px; + margin-bottom:6px; +} +.best{ + text-align: center; + width: 234px; + height: 30px; + letter-spacing: 0px; + margin-top: 19px; +} +.tile-wrap{ + width: 300px; + height: 300px; + flex-wrap: wrap; + background-color: #FFFFFF; +} +.tile{ + width: 70px; + height: 70px; + margin-top: 4px; + margin-left: 4px; + justify-content: center; + align-items: center; +} +.btn{ + width: 135px; + height: 45px; + background-color: #1F71FF; + margin-top: 10px; + margin-bottom: 10px; +} +.text{ + font-size: 30px; + color: #000000; +} +.stack{ + width: 300px; + height: 300px; +} +.subcontainer{ + width: 300px; + height: 300px; + justify-content: center; + align-items: center; + background-color: transparent; +} +.gameover{ + font-size: 40px; + color: #FF7500; +} \ No newline at end of file diff --git a/src/main/js/default/pages/index/index.hml b/src/main/js/default/pages/index/index.hml new file mode 100644 index 0000000..72e7631 --- /dev/null +++ b/src/main/js/default/pages/index/index.hml @@ -0,0 +1,23 @@ +
+ + Best:{{best}} + + + Score:{{score}} + + +
+
+ + {{$item.text}} + +
+
+
+ + Gameover! + +
+
+ +
\ No newline at end of file diff --git a/src/main/js/default/pages/index/index.js b/src/main/js/default/pages/index/index.js new file mode 100644 index 0000000..813d0fc --- /dev/null +++ b/src/main/js/default/pages/index/index.js @@ -0,0 +1,127 @@ +import brightness from '@system.brightness'; +let numbers,newNumbers; +export default{ + data:{ + score:0, + best:0, + tiles:[], + isShow:false, + }, + onInit() { + this.isShow=false; + this.score=0; + this.tiles=[{text:""},{text:""},{text:""},{text:""},{text:""},{text:""},{text:""},{text:""},{text:""},{text:""},{text:""},{text:""},{text:""},{text:""},{text:""},{text:""}]; + numbers=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; + newNumbers=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; + this.supplyNumber(); + this.supplyNumber(); + this.updateView(); + brightness.setKeepScreenOn({keepScreenOn: true,}); + brightness.setMode({mode: 1,}); + }, + supplyNumber(){ + let positions=[]; + for(let i=0;i<=15;i++){ + if(!newNumbers[i]) positions.push(i); + } + let h=Math.floor(Math.random()*positions.length); + if (Math.random()<=0.8){ + newNumbers[positions[h]]=2; + }else{ + newNumbers[positions[h]]=4; + } + }, + onSwipe(e) { + newNumbers=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; + let start=0,differ=0,step=0; + switch(e.direction){ + case 'left': + start=0; + differ=1; + step=4; + break; + case 'right': + start=3; + differ=-1; + step=4; + break; + case 'up': + start=0; + differ=4; + step=1; + break; + case 'down': + start=12; + differ=-4; + step=1; + break; + } + let ids; + for (let j=0;j<=3;j++){ + ids=this.getIds(start, differ); + let before=null; + let noZeros=0; + for(let k=0;k<=3;k++){ + let id=ids[k]; + let number=numbers[id]; + if (number!=0){ + if(number==before){ + this.score+=number*2; + newNumbers[ids[noZeros-1]]*=2; + before=null; + }else{ + newNumbers[ids[noZeros]]=number; + before=number; + noZeros+=1; + } + } + } + start+=step; + } + if(this.best>=this.score){ + this.best=this.best; + }else{ + this.best=this.score;} + if(numbers.toString()!=newNumbers.toString()){ + this.supplyNumber(); + this.updateView(); + newNumbers=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; + if(this.isGameOver()==true){this.isShow=true;} + } + }, + getIds(start, differ){ + let ids=[]; + for (let z=4;z>=1;z--){ + ids.push(start); + start+=differ; + } + return ids; + }, + updateView() { + for (let x=0;x<=15;x++) { + if (newNumbers[x]!=0){ + this.tiles[x].text=newNumbers[x].toString(); + }else{ + this.tiles[x].text=""; + } + } + numbers=newNumbers; + }, + isGameOver(){ + if(this.isGridsFull()==true && this.isGridsNotMergeable()==true) return true; + }, + isGridsFull(){ + if(numbers.indexOf(0)==-1){return true;} + }, + isGridsNotMergeable(){ + for(let l=0;l<=15;l++){ + if(l<=14){ + if(numbers[l]==numbers[l+1]&&(l+1)%4!=0) return false; + } + if(l<=11){ + if(numbers[l]==numbers[l+4]) return false; + } + } + return true; + }, +} \ No newline at end of file diff --git a/src/main/resources/base/element/string.json b/src/main/resources/base/element/string.json new file mode 100644 index 0000000..2be18c1 --- /dev/null +++ b/src/main/resources/base/element/string.json @@ -0,0 +1,8 @@ +{ + "string": [ + { + "name": "entry_MainAbility", + "value": "entry_MainAbility" + } + ] +} diff --git a/src/main/resources/base/media/icon.png b/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..7bd96fb1700020bfb643fbb74eed804e9bbf920a GIT binary patch literal 5998 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 LNkvXXu0mjfw%&B| literal 0 HcmV?d00001