diff --git a/public/index.html b/public/index.html
index f7bb4a3..78e0f17 100644
--- a/public/index.html
+++ b/public/index.html
@@ -12,7 +12,7 @@
-
+
动作:
diff --git a/src/frame.js b/src/frame.js
index 0aa02fd..3fd696b 100644
--- a/src/frame.js
+++ b/src/frame.js
@@ -1,6 +1,7 @@
-import { game } from './config';
-import { creatData } from './message';
import { changeButtonsDisplay, setPauseButtonStatus } from './dom';
+import { creatData, onPlayMessage } from './message';
+
+import { game } from './config';
let frame = document.getElementById('iframe');
let contentWindow = frame.contentWindow;
@@ -15,7 +16,7 @@ export function setFrameStyle() {
// 收到消息
export function onMessage() {
window.addEventListener('message', function(e) {
- console.log(e);
+ console.log('父-接受:', e.data);
// if (e.source !== frame.src) return; // 来源
const { event } = e.data;
@@ -26,6 +27,9 @@ export function onMessage() {
if (event === 'pause' || event === 'continue') { // 暂停
setPauseButtonStatus(event === 'pause' ? 0 : 1);
}
+ if (event === 'play') {
+ onPlayMessage(e.data.data);
+ }
}, false);
}
diff --git a/src/message.js b/src/message.js
index c228d1d..c6d3b10 100644
--- a/src/message.js
+++ b/src/message.js
@@ -1,4 +1,5 @@
import { game } from './config';
+
const { count, game: gameDuration, level, scores, directions, totalScore, totalTimes } = game;
let currentScore = 0; // 当前得分
@@ -74,17 +75,17 @@ const createFinishData = (score=currentScore, times=currentTimes) => {
const createPlayData = (direction= 0) => {
let data = null;
if (validatePlayCode(direction, currentTimes)) { // 动作正确
- currentTimes += 1;
- const directionTarget = scores.find(item => item.direction === direction);
- if (!directionTarget) {
- alert('配置信息有误, 未找到事件分值')
- }
- currentScore += directionTarget.score
+ // currentTimes += 1;
+ // const directionTarget = scores.find(item => item.direction === direction);
+ // if (!directionTarget) {
+ // alert('配置信息有误, 未找到事件分值')
+ // }
+ // currentScore += directionTarget.score
data = {
event: "play",
data: {
- score: currentScore, // 得分
- times: currentTimes, // 次数
+ // score: currentScore, // 得分
+ // times: currentTimes, // 次数
status: 1, // 游戏状态 0 1 2
param: {
direction, // 0 1 2 3 4 5 共6中事件参数
@@ -123,6 +124,16 @@ export const creatData = (eventType, ...args) => {
return data;
}
+/**
+ * 接受play消息 并设置当前动作执行次数与分值
+ * 也就是说分值 次数由游戏来维护
+ * @param {*} data
+ */
+export function onPlayMessage(data) {
+ currentTimes = data.currentTimes;
+ currentScore = data.currentScore;
+}
+
/**
* 验证code是否是当前应该执行的动作代码
* @param code