scene
import RoleChangeView from './RoleChangeView'
export default class RoleChangeScene extends Scene {
constructor() {
super()
let roleChangeView = new RoleChangeView()
this.view = roleChangeView
}
onViewClick(e) {
switch (e.target.name) {
case 'btnUseRole':
console.log(this.view.roleId)
this.POST('/use_dressup_change', { dressup_id: this.view.roleId }, (data) => {
})
this.requestListData()
this.view.btnUseRole.disabled = true
break
case 'btnBuyRole':
var warn = new AlertDialog("提示", "是否消耗1000豆子购买该角色", "确定", (data) => {
console.log(data)
this.POST('/use_dressup_buy', { dressup_id: 7 }, () => {
this.view.btnBuyRole.visible = false
this.view.btnUseRole.visible = true
this.view.lblUnLock.visible = false
this.view.lblHave.visible = true
this.requestListData()
Laya.Scene.open('scene/dialog/GetRoleDialog.json')
}, () => {
Laya.Scene.open('scene/dialog/BeanNotEnoughDialog.json')
})
}, '取消');
warn.popup()
break
case 'addFriend':
console.log('分享好友')
PaoYa.ShareManager.share(PaoYa.DataCenter.config.game.share_list.randomItem, "http://res.xingqiu123.com/" + PaoYa.DataCenter.config.game.share_img.randomItem, { id: PaoYa.DataCenter.user.id, }, function () { });
break
}
}
viewDidAppear() {
this.requestListData()
this.firstBtnShow()
this.GET("/user_invite_list", {}, (data) => {
this.view.lblInvitNum.text = data.friend_num
this.view.setUserHeaderPhoto(data)
})
}
requestListData() {
this.GET("/use_dressup_list", {}, (data) => {
this.view.initSelect()
this.view.setList(data)
})
}
firstBtnShow() {
this.GET("/use_dressup_list", {}, (data) => {
this.view.setBlueBtn(data)
})
}
}
view
export default class RoleChangeView extends PaoYa.View {
constructor() {
super()
}
getSceneUrl() {
return 'scene/RoleChange.json'
}
onEnable() {
// Laya.timer.once(300,this,function(){
// var cMask = new Laya.Sprite();
// //画一个圆形的遮罩区域
// cMask.graphics.drawRect(2,26,159,158,'#ff0000')
// //圆形所在的位置坐标
// cMask.pos(0,0);
// //实现img显示对象的遮罩效果
// this.imgLittlePhoto.mask = cMask;
this.imgLittlePhoto.srollRect = Laya.Rectangle(125, 709, 100, 100)
// this.imgLittlePhoto.visible = true
// })
this.lblContent.wordWrap = true
// this.lblContent.wordWrap = true
}
setBlueBtn(data) {
data.dressup_id == 4 ? this.btnUseRole.disabled = true : ''
}
setList(data) {
this.roleId = data.dressup_id
this.listRole.array = this.list;
this.listRole.scrollBar.hide = true;//隐藏列表的滚动条。
this.listRole.selectEnable = true;
this.listRole.scrollBar.elasticBackTime = 200;//设置橡皮筋回弹时间。单位为毫秒。
this.listRole.scrollBar.elasticDistance = 50;//设置橡皮筋极限距离。
this.listRole.selectHandler = new Laya.Handler(this, onSelect, [this.listRole]);
this.listRole.renderHandler = new Laya.Handler(this, updateItem);
function updateItem(cell, index) {
if (index > this.list.length) return
var unLock = cell.getChildByName('unLock')
var selectImg = cell.getChildByName('selectImg')
var lblLockText = unLock.getChildByName('lblLockText')
if (index == 3) {
lblLockText.text = '消耗1000豆子购买解锁'
lblLockText.color = '#E6D771'
}
var _this = this
if (this.list[index].selectImg == true) { selectImg.visible = true } else { selectImg.visible = false }
if (data.dress_list[index].status == 1) {
unLock.visible = true
}
if (data.dress_list[index].status == 2) {
unLock.visible = false
}
}
function onSelect(list, index) {
console.log(index)
console.log(list.selectedItem)
this.roleId = index + 4
this.initSelect()
data.dressup_id == index + 4 ? this.btnUseRole.disabled = true : this.btnUseRole.disabled = false
this.listRole.array = this.list;
this.listRole.selectedItem.selectImg = true
if (data.dress_list[index].status == 2) {//拥有为2
this.lblUnLock.visible = false
this.lblHave.visible = true
this.btnUseRole.visible = true
this.btnInviteFriend.visible = false
this.btnBuyRole.visible = false
} else {
this.lblUnLock.visible = true
this.lblHave.visible = false
switch (index) {
case 2:
this.btnInviteFriend.visible = true
this.btnBuyRole.visible = false
this.btnUseRole.visible = false
break
case 3:
this.btnInviteFriend.visible = false
this.btnBuyRole.visible = true
this.btnUseRole.visible = false
break
}
}
index == 2 ? this.invitFriends.visible = true : this.invitFriends.visible = false
this.lblName.text = '姓名:' + data.dress_list[index].name
data.dress_list[index].config == '0' ? this.lblConfig.text = '属性:无' : this.lblConfig.text = `属性:速度+${data.dress_list[index].config}%`
this.lblContent.text = `事迹:${data.dress_list[index].content}`
this.imgLittlePhoto.skin = this.list[index].imgRole
}
}
initSelect() {
this.list = [{
imgRole: 'wxlocal/Role/image_malebub.png',
imgBorder: 'wxlocal/Role/icon_picfra2.png',
selectImg: false
},
{
imgRole: 'wxlocal/Role/image_femalebub.png',
imgBorder: 'wxlocal/Role/icon_picfra1.png',
selectImg: false
},
{
imgRole: 'wxlocal/Role/image_malebub2.png',
imgBorder: 'wxlocal/Role/icon_picfra3.png',
selectImg: false
},
{
imgRole: 'wxlocal/Role/image_weiwuxian.png',
imgBorder: 'wxlocal/Role/icon_picfra3.png',
selectImg: false
}]
}
setUserHeaderPhoto(data) {
console.log(data)
switch (data.friend_num) {
case 0:
break
case 1:
this.add1.visible = false
this.imgHead1.skin = data.icon_list[0]
break
case 2:
this.imgHead1.skin = data.icon_list[0]
this.imgHead2.skin = data.icon_list[1]
this.add1.visible = false
this.add2.visible = false
break
default:
this.imgHead1.skin = data.icon_list[0]
this.imgHead2.skin = data.icon_list[1]
this.imgHead3.skin = data.icon_list[2]
this.add1.visible = false
this.add2.visible = false
this.add3.visible = false
break
}
}
}
scene
var IntegralMallScene = (function () {
function IntegralMallScene() {
IntegralMallScene.__super.call(this);
this.init()
}
Laya.class(IntegralMallScene, 'ui.IntegralMallScene', Scene);
var __proto = IntegralMallScene.prototype;
__proto.init = function () {
var view = new IntegralMallView();
// var _this = this
this.view = view;
this.view.on(IntegralMallView.BACK, this, function () {
this.navigator.pop();
})
this.view.on(IntegralMallView.TOEXCHANGE, this, function () {
this.exchangeDialog = new ExchangeGiftDialog()
this.exchangeDialog.popup()
})
this.view.on(IntegralMallView.CHANGEUPMONEY,this,function(){
this.DepositDialog = new DepositDialog()
this.DepositDialog.popup()
})
this.view.on(IntegralMallView.CHANGEMONEY, this, this.changeMonet)
}
__proto.viewWillAppear = function () {
this.setList()
this.setData()
}
__proto.setData = function(){
var _this = this
this.GET("update_chips", {}, function(data){
_this.view.setPlayerData(data)
})
}
__proto.setList = function () {
var _this = this
this.GET('get_wheel_list', {type:3}, function(data) {
console.log(data)
_this.view.initList(data)
})
}
__proto.changeMonet = function () {
var _this = this
var warn = new AlertDialog("提示", "是否兑换现金红包?", "确定", function(){
_this.POST('/change', { exchange_id: 66 },function () {
_this.setList()
_this.setData()
var warn2 = new AlertDialog("提示", '购买成功', "确定")
warn2.popup()
}, function(data) {
var warn2 = new AlertDialog("提示", data, "确定")
warn2.popup()
})
}, '取消')
warn.popup()
}
return IntegralMallScene;
}());
view
var IntegralMallView = (function () {
Laya.class(IntegralMallView, 'ui.IntegralMallView', MallViewUI);
var __proto = IntegralMallView.prototype;
function IntegralMallView() {
IntegralMallView.__super.call(this);
this.init()
}
__proto.init = function () {
this.integralBox.graphics.drawPath(0, 0, makeAllCornerRoundRectPath(160, 50, 25), {
fillStyle: "#000000"
});
this.btnBack.on(Laya.Event.CLICK, this, function () {
this.event(IntegralMallView.BACK);
})
this.btnChangeMoney.on(Laya.Event.CLICK, this, function () {
this.event(IntegralMallView.CHANGEUPMONEY);
})
}
__proto.setPlayerData = function (data) {
var price = data.integral
switch (true) {
case price >= 10000 && price < 100000000:
var integ = price / 10000
this.lblIntegral.text = Math.floor(integ * 100) / 100 + '万'
break
case price >= 100000000:
var integ1 = price / 100000000
this.lblIntegral.text = Math.floor(integ1 * 100) / 100 + '亿'
break
default:
this.lblIntegral.text = price
break
}
// this.lblIntegral.text = data.integral
this.lblMoney.text = data.rmb
PaoYa.DataCenter.user.rmb = data.rmb
}
__proto.initList = function (data) {
var _this = this
this.listMall.array = data.exchange_list;
this.listMall.scrollBar.hide = true;//隐藏列表的滚动条。
this.listMall.selectEnable = true;
this.listMall.scrollBar.elasticBackTime = 200;//设置橡皮筋回弹时间。单位为毫秒。
this.listMall.scrollBar.elasticDistance = 50;//设置橡皮筋极限距离。
this.listMall.mouseHandler = new Laya.Handler(this, onSelect, [this.listMall]);
this.listMall.renderHandler = new Laya.Handler(this, updateItem);
function updateItem(cell, index) {
if (index > data.exchange_list.length) return
var icon = cell.getChildByName('iconMall')
icon.skin = PaoYa.DataCenter.CDNURL + data.exchange_list[index].icon
var integral = cell.getChildByName('integral')
var price = data.exchange_list[index].integral
switch (true) {
case price >= 10000 && price < 100000000:
var integ = price / 10000
integral.text = Math.floor(integ * 100) / 100 + '万'
break
case price >= 100000000:
var integ1 = price / 100000000
integral.text = Math.floor(integ1 * 100) / 100 + '亿'
break
default:
integral.text = data.exchange_list[index].integral
break
}
}
function onSelect(list, e, index) {
if (e.type == Laya.Event.CLICK) {
if (index == 0) {
_this.event(IntegralMallView.CHANGEMONEY)
} else {
_this.event(IntegralMallView.TOEXCHANGE)
}
}
}
}
IntegralMallView.CHANGEUPMONEY = 'changeUpMoney'
IntegralMallView.CHANGEMONEY = 'changeMoney'
IntegralMallView.TOEXCHANGE = 'toExchange'
IntegralMallView.BACK = 'back'
return IntegralMallView;
}());