51 lines
1.6 KiB
TypeScript
51 lines
1.6 KiB
TypeScript
import GameModel from "../../core/GameModel";
|
|
import ItemUtil from "../../core/ItemUtil";
|
|
import SKDataUtil from "../../gear_2.3.4/util/SKDataUtil";
|
|
|
|
export default class VIPUtil {
|
|
// 根據充值金額換算VIP等級
|
|
static getVipLevel(chargeSum: number): number {
|
|
let conf = GameModel.game_conf.vip;
|
|
let vipLevel = 0;
|
|
for (let item of conf) {
|
|
if (chargeSum >= item.money) {
|
|
vipLevel = item.level;
|
|
}
|
|
}
|
|
return vipLevel;
|
|
}
|
|
|
|
static getNextMoney(vipLevel: number, current: number): number {
|
|
let conf = GameModel.game_conf.vip;
|
|
if (vipLevel == conf.length - 1) {
|
|
return 0;
|
|
}
|
|
let total = conf[vipLevel + 1].money;
|
|
return total - current;
|
|
}
|
|
|
|
static getVipReward(vipLevel: number): any[] {
|
|
if(vipLevel < 0 )return
|
|
let conf = GameModel.game_conf.vip;
|
|
if (vipLevel >= conf.length) {
|
|
return null;
|
|
}
|
|
let reward: String = conf[vipLevel].day_reward;
|
|
let list = reward.split(",");
|
|
let result = [];
|
|
for (let item of list) {
|
|
let itemList = item.split(":");
|
|
if (itemList.length < 2) {
|
|
continue;
|
|
}
|
|
let itemId = itemList[0];
|
|
let count = SKDataUtil.toNumber(itemList[1]);
|
|
let itemData = SKDataUtil.clone(ItemUtil.getItemData(itemId));
|
|
if (itemData) {
|
|
itemData.count = count;
|
|
result.push(itemData);
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
} |