From 618dfdb1e2a0147974fea4c1f9d4d5f4d9e06319 Mon Sep 17 00:00:00 2001
From: fanxuehan <fanxuehan@qq.com>
Date: Mon, 15 Mar 2021 11:35:09 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E6=89=93=E5=8C=85=E8=84=9A=E6=9C=AC?=
 =?UTF-8?q?=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 play/assets/et_13/script/et_13.js  |   4 +++-
 publish/{build_app.sh => build.sh} |   4 ++++
 publish/build_check.js             |  12 +++++++++---
 publish/build_step_0.js            |  16 ++++++++++++++++
 publish/build_step_1.js            |  20 ++++++++++++++++++++
 publish/publish/.DS_Store          | Bin 6148 -> 6148 bytes
 publish/utils.js                   |   1 -
 7 files changed, 52 insertions(+), 5 deletions(-)
 rename publish/{build_app.sh => build.sh} (96%)
 create mode 100644 publish/build_step_0.js

diff --git a/play/assets/et_13/script/et_13.js b/play/assets/et_13/script/et_13.js
index 60dacfa..dec8883 100644
--- a/play/assets/et_13/script/et_13.js
+++ b/play/assets/et_13/script/et_13.js
@@ -91,7 +91,9 @@ cc.Class({
 		const middleLayer = cc.find('middleLayer');
 		if (middleLayer) {
 			const middleLayerComponent = middleLayer.getComponent('middleLayer');
-			middleLayerComponent.onHomeworkFinish(() => {});
+			if (middleLayerComponent.role == 'student') {
+				middleLayerComponent.onHomeworkFinish(() => { });
+			}
 			return;
 		}
 	},
diff --git a/publish/build_app.sh b/publish/build.sh
similarity index 96%
rename from publish/build_app.sh
rename to publish/build.sh
index facc0b1..f7fcf17 100644
--- a/publish/build_app.sh
+++ b/publish/build.sh
@@ -14,6 +14,10 @@ npm install
 
 npm run publish 
 
+cd ../publish 
+
+node build_step_0.js
+
 cd ../play
 
 /Applications/CocosCreator/Creator/2.4.0/CocosCreator.app/Contents/MacOS/CocosCreator --path "./" --build "platform=web-desktop;debug=true" --force
diff --git a/publish/build_check.js b/publish/build_check.js
index 720f80f..9c1cd8f 100644
--- a/publish/build_check.js
+++ b/publish/build_check.js
@@ -3,10 +3,16 @@ let fs = require('fs');
 const dirNames = __dirname.split('/');
 const projectName = dirNames[dirNames.length - 2];
 const path = '../play/assets'
-const folderName = fs.readdirSync(path)[0];
+let folderName = '';
+fs.readdirSync(path).find(fileName => {
+  const st = fs.statSync(`${path}/${fileName}`);
+  if (st.isDirectory()) {
+    folderName = fileName;
+  }
+});
 
 if (projectName != folderName) {
-  throw ('项目名与bundle文件夹名不相同');
+  throw (`项目名(${projectName})与bundle文件夹名(${folderName})不相同`);
 }
 let same = false;
 const files = fs.readdirSync(`${path}/${folderName}/scene`);
@@ -22,5 +28,5 @@ files.forEach(fileName => {
 });
 
 if (!same) {
-  throw ('bundle文件夹名称与scene名称不相同');
+  throw (`bundle文件夹名称(${folderName})与scene名称不相同`);
 }
\ No newline at end of file
diff --git a/publish/build_step_0.js b/publish/build_step_0.js
new file mode 100644
index 0000000..dff2b7f
--- /dev/null
+++ b/publish/build_step_0.js
@@ -0,0 +1,16 @@
+let fs = require('fs');
+
+const path = '../play/assets'
+
+let folderName = '';
+fs.readdirSync(path).find(fileName => {
+  const st = fs.statSync(`${path}/${fileName}`);
+  if (st.isDirectory()) {
+    folderName = fileName;
+  }
+});
+const metaPath = `${path}/${folderName}.meta`;
+const metaDataStr = fs.readFileSync(metaPath);
+const metaData = JSON.parse(metaDataStr);
+metaData.isBundle = false;
+fs.writeFileSync(metaPath, JSON.stringify(metaData));
diff --git a/publish/build_step_1.js b/publish/build_step_1.js
index cbc5350..d0e5a85 100644
--- a/publish/build_step_1.js
+++ b/publish/build_step_1.js
@@ -1,5 +1,6 @@
 const { removeDir, copyDir, fix2 } = require('./utils');
 const compressing = require('compressing');
+let fs = require('fs');
 
 async function main() {
   await removeDir('./publish/play');
@@ -12,6 +13,25 @@ async function main() {
   await fs.writeFileSync('./publish/play/index.html', data);
 
   await removeDir('../play/build/web-desktop');
+
+
+  const path = '../play/assets'
+  let folderName = '';
+  fs.readdirSync(path).find(fileName => {
+    const st = fs.statSync(`${path}/${fileName}`);
+    if (st.isDirectory()) {
+      folderName = fileName;
+    }
+  });
+  const metaPath = `${path}/${folderName}.meta`;
+  const metaDataStr = fs.readFileSync(metaPath);
+  const metaData = JSON.parse(metaDataStr);
+  metaData.isBundle = true;
+  metaData.isRemoteBundle = {
+    ios: true,
+    android: true
+  };
+  fs.writeFileSync(metaPath, JSON.stringify(metaData));
 }
 
 main();
\ No newline at end of file
diff --git a/publish/publish/.DS_Store b/publish/publish/.DS_Store
index b7fa5d41044d3510ee146d9a33a57f62b152d9e2..fef231432e1f44e09ec762097effc455d22e64cb 100644
GIT binary patch
delta 142
zcmZoMXfc=|&e%S&P;8=}Hg_UJF+(atJcAK~!NiT~!Hf(H43Z2%K%pEUMv??7Fk~=b
zFb0yQ3<_YjE|{+iWE*<s<R>TP<R<}j3ji@c2>*wIjT<%DH?wmHa4@!S-1wb&GQWr}
OBg1A#k;BXr8(09O>mw!r

delta 94
zcmZoMXfc=|&e%4wP;8=}Hg`TlCPPYDa8X`P{=|ps@{9}&4D1Yv40#MG3`Gn`l6mPs
n8ODtd)z~L~FyGA1A;7`dw(;S2=E?jbx~w2w2R7S^9A*Xp4$vDm

diff --git a/publish/utils.js b/publish/utils.js
index 4a62e99..24ee747 100644
--- a/publish/utils.js
+++ b/publish/utils.js
@@ -39,7 +39,6 @@ module.exports = {
 
     //读取目录
     const st = await fs.statSync(src);
-    console.log(st);
     const paths = await fs.readdirSync(src);
     for (let i = 0; i < paths.length; i++) {
       let path = paths[i];
-- 
2.21.0