90 lines
2.1 KiB
JavaScript
90 lines
2.1 KiB
JavaScript
import AudioUtil from "../ts/core/AudioUtil";
|
||
import GameModel from "../ts/core/GameModel";
|
||
import MsgAlert from "../ts/game/msg/MsgAlert";
|
||
|
||
let GameDefine = require('../game/GameDefine');
|
||
|
||
cc.Class({
|
||
extends: cc.Component,
|
||
|
||
properties: {
|
||
nameEdit: cc.EditBox,
|
||
btnConfirm: cc.Button,
|
||
btnCancel: cc.Button,
|
||
btnClose: cc.Button
|
||
},
|
||
|
||
onLoad() {
|
||
},
|
||
|
||
GetNameLength(strName) {
|
||
let nCnt = 0;
|
||
|
||
let nLen = strName.length;
|
||
|
||
for (let i = 0; i < nLen; i++) {
|
||
if (/[a-zA-Z0-9]/.test(strName[i]))
|
||
nCnt += 1;
|
||
else
|
||
nCnt += 2;
|
||
}
|
||
|
||
return nCnt;
|
||
|
||
},
|
||
|
||
createBtnClicked(e, d) {
|
||
if (this.nameEdit.string == '' || this.nameEdit.string.length > 6){//this.GetNameLength(this.nameEdit.string) > 12) {
|
||
MsgAlert.addMsg('名稱不能為空,並且最多6個字');
|
||
return;
|
||
}
|
||
|
||
/*
|
||
if (GameModel.player.teamInfo == null || GameModel.player.teamInfo.objlist == null) {
|
||
return;
|
||
}
|
||
let objs = [];
|
||
//獲取結拜同伴roldID
|
||
for(const teamObj in GameModel.player.teamInfo.objlist){
|
||
if(teamObj.livingtype == 1 && teamObj.roleid != GameModel.player.roleid){
|
||
objs.push(teamObj.roleid);
|
||
}
|
||
}*/
|
||
|
||
|
||
|
||
if (!GameModel.player.teamInfo.objlist || !Array.isArray(GameModel.player.teamInfo.objlist)) {
|
||
MsgAlert.addMsg('先組隊才能結拜');
|
||
return false;
|
||
}
|
||
|
||
//獲取隊伍成員列表
|
||
let members = [];
|
||
for (let index = 0; index < GameModel.player.teamInfo.objlist.length; index++) {
|
||
|
||
let obj = GameModel.player.teamInfo.objlist[index];
|
||
if(obj && obj.livingtype == 1){
|
||
members.push(obj.roleid);
|
||
}
|
||
}
|
||
|
||
GameModel.send('c2s_relation_new', {
|
||
roleId: GameModel.player.roleid,
|
||
relationType: GameDefine.RelationType.Brother,
|
||
relationName: this.nameEdit.string,
|
||
members: members
|
||
});
|
||
|
||
this.btnConfirm.interactable = false;
|
||
this.btnConfirm.node.runAction(cc.sequence(cc.delayTime(1),cc.callFunc(() =>{
|
||
this.btnConfirm.interactable = true;
|
||
})));
|
||
|
||
},
|
||
|
||
onCloseBtnClicked(e, d) {
|
||
AudioUtil.playCloseAudio();
|
||
this.node.destroy();
|
||
},
|
||
});
|