91 lines
2.3 KiB
JavaScript
91 lines
2.3 KiB
JavaScript
import GameModel from "../ts/core/GameModel";
|
|
import MsgAlert from "../ts/game/msg/MsgAlert";
|
|
import SkillUtil from "../ts/game/skill/core/SkillUtil";
|
|
|
|
cc.Class({
|
|
extends: cc.Component,
|
|
|
|
properties: {
|
|
skillitem: cc.Node,
|
|
pSkillName: cc.Label,
|
|
pSkillIcon: cc.Sprite,
|
|
pSkillDetail: cc.Label
|
|
},
|
|
|
|
ctor() {
|
|
this.select_skill = 0;
|
|
this.cur_pet_id = 0;
|
|
},
|
|
|
|
start() {
|
|
|
|
},
|
|
|
|
init() {
|
|
let bg = cc.find('skillpanel/ScrollView/view/content', this.node);
|
|
let skilllist = SkillUtil.getShenSkill();
|
|
let height = 0;
|
|
for (let i = 0; i < skilllist.length; i++) {
|
|
const skill = skilllist[i];
|
|
let sitem = cc.instantiate(this.skillitem);
|
|
sitem.active = true;
|
|
sitem.x = this.skillitem.x;
|
|
sitem.y = this.skillitem.y - (this.skillitem.height + 5) * i;
|
|
|
|
let iconnode = cc.find('/skillicon', sitem);
|
|
let spr = iconnode.getComponent(cc.Sprite);
|
|
spr.spriteFrame = SkillUtil.getSkillIcon(skill.icon);
|
|
|
|
let namenode = cc.find('/skillname', sitem);
|
|
let lab = namenode.getComponent(cc.Label);
|
|
lab.string = skill.name;
|
|
|
|
sitem.skillid = skill.id;
|
|
sitem.parent = bg;
|
|
|
|
if (this.select_skill == 0) {
|
|
this.selectSkill(skill.id);
|
|
}
|
|
|
|
height = Math.abs(sitem.y);
|
|
}
|
|
bg.height = height + 100;
|
|
},
|
|
|
|
setPetId(petid) {
|
|
this.cur_pet_id = petid;
|
|
},
|
|
|
|
clickSkillItem(e, d) {
|
|
let skillitem = e.target;
|
|
this.selectSkill(skillitem.skillid);
|
|
},
|
|
|
|
selectSkill(skillid) {
|
|
let skill = SkillUtil.getSkill(skillid);
|
|
this.pSkillName.string = skill.name;
|
|
this.pSkillIcon.spriteFrame = SkillUtil.getSkillIcon(skill.icon);
|
|
this.pSkillDetail.string = skill.getDetail();
|
|
this.select_skill = skillid;
|
|
},
|
|
|
|
destroySelf() {
|
|
this.node.destroy();
|
|
},
|
|
|
|
onStadySkill() {
|
|
// if(true){
|
|
// MsgAlert.addMsg('即將開放');
|
|
// return;
|
|
// }
|
|
if (GameModel.player.gameData.money < 50000000) {
|
|
MsgAlert.addMsg('銀兩不足');
|
|
return;
|
|
}
|
|
|
|
GameModel.send('c2s_pet_changeSskill', {
|
|
petid: this.cur_pet_id,
|
|
skillid: this.select_skill,
|
|
});
|
|
}
|
|
}); |