var jobData = require('../data/job');
cc.Class({
extends: cc.Component,
properties: {
content: cc.Node,
typeBeforSprite: cc.Sprite,
typeBeforText: cc.RichText,
typeAfterSprite: cc.Sprite,
typeAfterText: cc.RichText,
levelNumBeforText: cc.RichText,
levelNumAfterText: cc.RichText,
levelNameBeforText: cc.RichText,
levelNameAfterText: cc.RichText,
confirmNode: cc.Node,
confirmText: cc.Node,
},
onLoad() {
this.confirmNode.on(cc.Node.EventType.TOUCH_END, () => {
this.close();
});
},
show(parent, lastJob, targetJob, callback) {
this.callback = callback;
this.typeBeforText.string = this.outlineString(lastJob, '#ffffff');
this.typeAfterText.string = this.outlineString(targetJob, '#ffffff');
// this.levelNumBeforText.string = this.outlineString(actorInfo.jobLevel, '#584A47');
// this.levelNumAfterText.string = this.outlineString(actorInfo.jobLevel, '#584A47');
// this.levelNameBeforText.string = this.outlineString(actorInfo.jobLevelName, '#ffffff');
// this.levelNameAfterText.string = this.outlineString(upgradeLevelName, '#ffffff');
this.node.parent = parent;
this.content.scaleX = 0;
this.content.scaleY = 0;
this.scheduleOnce(() => {
this.content.runAction(cc.scaleTo(0.35, 1, 1).easing(cc.easeBackOut()));
}, 0.1);
},
close() {
let cb = this.callback
let finish = cc.callFunc(() => {
cb && cb();
this.node.destroy();
}, this);
let sq = cc.sequence(cc.scaleTo(0.2, 0, 0).easing(cc.easeBackIn()), finish)
this.content.runAction(sq);
},
outlineString(job, color) {
let icon = 50000 + job.id;
return ` ${job.name}`;
},
onDestory() {
this.confirmNode.off(cc.Node.EventType.TOUCH_END, this);
}
});