// --------------------------------------------------------------------
|
// @author: xxx@syg.com(必填, 创建模块的人员)
|
// @description:
|
// 商城的model
|
// <br/>Create: 2018-12-18 17:12:27
|
// --------------------------------------------------------------------
|
// var HeroController = require("hero_controller");
|
var RoleController = require("role_controller");
|
var BackpackController = require("backpack_controller")
|
var MallModel = cc.Class({
|
extends: BaseClass,
|
ctor: function () {
|
var MailController = require("mall_controller");
|
this.ctrl = MailController.getInstance();
|
},
|
|
properties: {
|
},
|
|
initConfig: function () {
|
this.buy_list = {};
|
this.shop_list = {};
|
},
|
|
setBuyList: function (data) {
|
this.buy_list = data;
|
},
|
|
getBuyList: function () {
|
return this.buy_list
|
},
|
|
getScoreBuyList: function (shop_type) {
|
if (this.shop_list[shop_type] && Utils.next(this.shop_list[shop_type]) != null) {
|
return this.shop_list[shop_type]
|
}
|
return null
|
},
|
|
//检查当前神格商店中是否存在上阵的的伙伴碎片
|
checkHeroChips: function (item_id) {
|
var is_has = false;
|
var pos_list = [];
|
// var pos_list = HeroController.getInstance().getModel().getMyPosList();
|
if (pos_list != null && Utils.next(pos_list || {}) != null) {
|
for (var k in pos_list) {
|
var v = pos_list[k];
|
var partner_data = PartnerController.getInstance().getModel().getPartnerById(v.id);
|
if (partner_data && partner_data.chips_id == item_id) {
|
is_has = true;
|
}
|
}
|
return is_has
|
}
|
return false
|
},
|
|
//根据商店类型以及支付类型和单价来判断能够买多少个
|
checkMoenyByType: function (pay_type, price) {
|
var role_vo = RoleController.getInstance().getRoleVo();
|
var is_can_buy_num = 0;
|
if (role_vo != null) {
|
var config = Utils.deepCopy(Config.item_data.data_assets_label2id)
|
if (typeof (pay_type) == "number") {
|
if (pay_type == config.hero_soul) { //神格
|
var hero_soul = role_vo.hero_soul;
|
is_can_buy_num = Math.floor(hero_soul / price);
|
}
|
else if (pay_type == config.silver_coin) {
|
var silver_coin = role_vo.silver_coin;
|
is_can_buy_num = Math.floor(silver_coin / price);
|
}
|
else if (pay_type == config.red_gold_or_gold) {
|
var sum_gold = role_vo.red_gold + role_vo.gold;
|
is_can_buy_num = Math.floor(sum_gold / price);
|
}
|
else if (pay_type == config.arena_guesscent) {
|
var arena_guesscent = role_vo.arena_guesscent;
|
is_can_buy_num = Math.floor(arena_guesscent / price);
|
}
|
else if (pay_type == config.star_point) {
|
var star_point = role_vo.star_point;
|
is_can_buy_num = Math.floor(star_point / price);
|
}
|
else if (pay_type == config.gold) {
|
var sum_gold = role_vo.gold;
|
is_can_buy_num = Math.floor(sum_gold / price);
|
}
|
else if (pay_type == config.coin) {
|
var coin = role_vo.coin;
|
is_can_buy_num = Math.floor(coin / price);
|
}
|
else{
|
let count = BackpackController.getInstance().getModel().getItemNumByBid(pay_type)
|
is_can_buy_num = Math.floor(count / price)
|
}
|
} else {
|
if (pay_type == "gold") {
|
var gold = role_vo.gold;
|
is_can_buy_num = Math.floor(gold / price);
|
}
|
else if (pay_type == "red_gold_or_gold") {
|
var sum_gold = role_vo.red_gold + role_vo.gold;
|
is_can_buy_num = Math.floor(sum_gold / price);
|
}
|
else if (pay_type == "arena_cent") {
|
var arena_cent = role_vo.arena_cent;
|
is_can_buy_num = Math.floor(arena_cent / price);
|
}
|
else if (pay_type == "friend_point") {
|
var friend_point = role_vo.friend_point
|
is_can_buy_num = Math.floor(friend_point / price)
|
}
|
else if (pay_type == "guild") {
|
var guild = role_vo.guild
|
is_can_buy_num = Math.floor(guild / price)
|
}
|
else if (pay_type == "boss_point") {
|
var boss_point = role_vo.boss_point
|
is_can_buy_num = Math.floor(boss_point / price)
|
}
|
else if (pay_type == "arena_guesscent") {
|
var arena_guesscent = role_vo.arena_guesscent
|
is_can_buy_num = Math.floor(arena_guesscent / price)
|
}
|
else if (pay_type == "star_point") {
|
var star_point = role_vo.star_point
|
is_can_buy_num = Math.floor(star_point / price)
|
}
|
else if (pay_type == "sky_coin") {
|
var sky_coin = role_vo.sky_coin
|
is_can_buy_num = Math.floor(sky_coin / price)
|
}
|
else if (pay_type == "recruithigh_hero") {
|
var recruithigh_hero = role_vo.recruithigh_hero
|
is_can_buy_num = Math.floor(recruithigh_hero / price)
|
}
|
else if (pay_type == "expedition_medal") {
|
var expedition_medal = role_vo.expedition_medal
|
is_can_buy_num = Math.floor(expedition_medal / price)
|
}
|
else if (pay_type == "coin") {
|
var coin = role_vo.coin
|
is_can_buy_num = Math.floor(coin / price)
|
}
|
else if (pay_type == "silver_coin") {
|
var silver_coin = role_vo.silver_coin
|
is_can_buy_num = Math.floor(silver_coin / price)
|
}
|
}
|
}
|
return is_can_buy_num
|
},
|
|
checkActionMoenyByType:function(pay_type,price){
|
var role_vo = RoleController.getInstance().getRoleVo();
|
var is_can_buy_num = 0;
|
if (role_vo){
|
var count = role_vo.getActionAssetsNumByBid(pay_type);
|
is_can_buy_num = Math.floor(count/price);
|
}
|
return is_can_buy_num;
|
}
|
});
|
|
module.exports = MallModel;
|