Commit 094842f9 authored by 张世斌's avatar 张世斌

1.提交

parent cb95af13
......@@ -5650,8 +5650,8 @@
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 0,
"b": 0,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
......@@ -8025,8 +8025,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 1636,
"height": 1600
"width": 679,
"height": 451
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -9886,7 +9886,7 @@
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 1,
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "96c0dd06-35f7-44c6-bcf9-85e895eb711e"
......
......@@ -2,11 +2,12 @@ import { onHomeworkFinish, RandomInt, playAudio, playDragonBoneAnimation, getSpr
import { defaultData } from "../script/defaultData";
import { GameServer } from "../script/server";
import { NetworkHelper } from "../script/NetworkHelper";
import { MyCocosSceneComponent } from "../script/MyCocosSceneComponent";
cc.Class({
extends: cc.Component,
extends: MyCocosSceneComponent,//cc.Component,
properties: {
paint: {
......@@ -262,7 +263,6 @@ cc.Class({
async initAlligator(parent) {
for(let i=0;i<this.data.images.length;i++){
let image=this.data.images[i];
cc.log(image.img);
let tooth=await this.getSprNodeByUrl(image.img);
parent.addChild(tooth);
// tooth.color = cc.Color.WHITE;
......@@ -289,7 +289,7 @@ cc.Class({
}
node.teeth = teeth;
cc.log(parent.name+"_bind:"+node.teeth.length);
this.log(parent.name+"_bind:"+node.teeth.length);
return node;
},
......@@ -558,13 +558,13 @@ cc.Class({
// if (this.server) {
// this.server.onPlayerJoin(event);
// }
cc.log("playerJoin", (event));
this.log("playerJoin", (event));
this.onPlayerJoin(event.data);
});
nh.on('playerLeave', (event) => {
cc.log("playerLeave" + JSON.stringify(event));
this.log("playerLeave" + JSON.stringify(event));
});
nh.on('gameStart', (event) => {
......@@ -708,16 +708,26 @@ cc.Class({
},
getOneItem(teethDataArr, uuid) {
async getOneItem(teethDataArr, uuid) {
const mainArea = cc.find('Canvas/bg/main_area_small');
const item = cc.instantiate(mainArea);
item.active = true;
const paint = cc.find('paint', item)
let spriteFrame=await this.getSpriteFrimeByUrl(this.data.bg);
let bg1=paint.getChildByName("alligator_img");
bg1.getComponent(cc.Sprite).spriteFrame=spriteFrame;
const alligator = this.bindAlligator(paint);
alligator.destroyAllChildren();
if (teethDataArr && teethDataArr.length > 0) {
for (let i = 0; i < teethDataArr.length; i++) {
alligator.teeth[i].color = new cc.Color().fromHEX(teethDataArr[i].color);
let image=this.data.images[i];
let tooth=await this.getSprNodeByUrl(image.img);
tooth.color = new cc.Color().fromHEX(teethDataArr[i].color);
alligator.addChild(tooth);
// alligator.teeth[i].color = new cc.Color().fromHEX(teethDataArr[i].color);
// alligator.teeth[i].word.node.color = new cc.Color().fromHEX(teethDataArr[i].wordColor);
// alligator.teeth[i].word.string = teethDataArr[i].word;
}
......@@ -926,7 +936,7 @@ cc.Class({
async fillAiData() {
const c = window.courseware;
// cc.log("fillAiData:",c);
// this.log("fillAiData:",c);
if (!c) {
return;
}
......@@ -1150,7 +1160,7 @@ cc.Class({
},
resultItemArr: null,
initOtherPlayerItem() {
async initOtherPlayerItem() {
console.log(' in initOtherPlayerItem')
......@@ -1159,17 +1169,23 @@ cc.Class({
const itemArr = [];
// const resultArr = this.gameEndData;
let s=0;
let a=[
[0,0],[1,0],[2,0],
[0,1],[1,1],[2,1]
];
for (let key in this.gameEndData) {
const itemData = this.gameEndData[key];
const id = key;
const { teethDataArr } = itemData
const item = this.getOneItem(teethDataArr, id);
this.log(teethDataArr.length+"_endData:"+JSON.stringify(teethDataArr));
const item = await this.getOneItem(teethDataArr, id);
item.x=(item.width+50)*a[s][0];
item.y=(item.height+50)*a[s][1];
s++;
itemArr.push(item);
this.resultLayer.addChild(item);
......@@ -1390,7 +1406,7 @@ cc.Class({
let spriteFrame=await this.getSpriteFrimeByUrl(this.data.bg);
let bg1=this.paint.getChildByName("alligator_img");
cc.log("bg:"+bg1.name);
this.log("bg:"+bg1.name);
bg1.getComponent(cc.Sprite).spriteFrame=spriteFrame;
let bg2=this.paint2.getChildByName("alligator_img");
......
import { defaultData } from "./defaultData";
export class MyCocosSceneComponent extends cc.Component {
// 生命周期 onLoad
onLoad() {
this.initSceneData();
this.initSize();
}
_imageResList = null;
_audioResList = null;
_animaResList = null;
initSceneData() {
this._imageResList = [];
this._audioResList = [];
this._animaResList = [];
}
_designSize = null; // 设计分辨率
_frameSize = null; // 屏幕分辨率
_mapScaleMin = null; // 场景中常用缩放(取大值)
_mapScaleMax = null; // 场景中常用缩放(取小值)
_cocosScale = null; // cocos 自缩放 (较少用到)
initSize() {
// 注意cc.winSize只有在适配后(修改fitHeight/fitWidth后)才能获取到正确的值,因此使用cc.getFrameSize()来获取初始的屏幕大小
let screen_size = cc.view.getFrameSize().width / cc.view.getFrameSize().height
let design_size = cc.Canvas.instance.designResolution.width / cc.Canvas.instance.designResolution.height
let f = screen_size >= design_size
cc.Canvas.instance.fitHeight = f
cc.Canvas.instance.fitWidth = !f
const frameSize = cc.view.getFrameSize();
this._frameSize = frameSize;
this._designSize = cc.view.getDesignResolutionSize();
let sx = cc.winSize.width / frameSize.width;
let sy = cc.winSize.height / frameSize.height;
this._cocosScale = Math.min(sx, sy);
sx = frameSize.width / this._designSize.width;
sy = frameSize.height / this._designSize.height;
this._mapScaleMin = Math.min(sx, sy) * this._cocosScale;
this._mapScaleMax = Math.max(sx, sy) * this._cocosScale;
cc.director['_scene'].width = frameSize.width;
cc.director['_scene'].height = frameSize.height;
}
data = null;
// 生命周期 start
start() {
let getData = this.getData.bind(this);
if (window && (<any>window).courseware) {
getData = (<any>window).courseware.getData;
}
getData((data) => {
console.log('data:', data);
this.data = data || this.getDefaultData();
this.data = JSON.parse(JSON.stringify(this.data))
this.preloadItem()
// courseInScreen
// scene.distroy() courseOutScreen
})
}
getData(func) {
if (window && (<any>window).courseware) {
(<any>window).courseware.getData(func, 'scene');
return;
}
const middleLayer = cc.find('middleLayer');
if (middleLayer) {
const middleLayerComponent = middleLayer.getComponent('middleLayer');
middleLayerComponent.getData(func);
return;
}
func(this.getDefaultData());
}
getDefaultData() {
return defaultData;
}
preloadItem() {
this.addPreloadImage();
this.addPreloadAudio();
this.addPreloadAnima();
this.preload();
}
addPreloadImage() {
}
addPreloadAudio() {
}
addPreloadAnima() {
}
preload() {
const preloadArr = this._imageResList.concat(this._audioResList).concat(this._animaResList);
cc.assetManager.loadAny(preloadArr, null, null, (err, data) => {
if (window && window["air"]) {
// window["air"].onCourseInScreen = (next) => {
// window["air"].isCourseInScreen = true;
// this.onLoadEnd();
// next();
// };
this.onLoadEnd();
window["air"].hideAirClassLoading();
} else {
this.onLoadEnd();
}
cc.debug.setDisplayStats(false);
});
}
log (str) {
const node = cc.find('middleLayer');
if(node){
node.getComponent('middleLayer').log(str);
}else{
cc.log(str);
}
}
onLoadEnd() {
}
// ------------------------------------------------
getSprNode(resName) {
const sf = cc.find('Canvas/res/img/' + resName).getComponent(cc.Sprite).spriteFrame;
const node = new cc.Node();
node.addComponent(cc.Sprite).spriteFrame = sf;
return node;
}
getSpriteFrimeByUrl(url, cb) {
cc.loader.load({ url }, (err, img) => {
const spriteFrame = new cc.SpriteFrame(img)
if (cb) {
cb(spriteFrame);
}
})
}
getSprNodeByUrl(url, cb) {
const node = new cc.Node();
const spr = node.addComponent(cc.Sprite);
this.getSpriteFrimeByUrl(url, (sf) => {
spr.spriteFrame = sf;
if (cb) {
cb(node);
}
})
}
playAudioByUrl(audio_url, cb = null) {
if (audio_url) {
cc.assetManager.loadRemote(audio_url, (err, audioClip) => {
const audioId = cc.audioEngine.play(audioClip, false, 0.8);
if (cb) {
cc.audioEngine.setFinishCallback(audioId, () => {
cb();
});
}
});
}
}
}
\ No newline at end of file
{
"ver": "1.0.8",
"uuid": "9d32bbd2-e78d-49dd-b6f3-3ea1f8501678",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment