bt特权
parent
add9233993
commit
5aee8e8d6b
|
|
@ -122,6 +122,9 @@ public interface GlobalsDef {
|
|||
int LIKABLE_UNLOCK=6;//好感度解锁类型
|
||||
int WEEKCARD_UNLOCK=8;//周卡解锁类型
|
||||
|
||||
int GOD_LV_UNLOCK = 9;//神尊解锁
|
||||
int RENOWN_LV_UNLOCK = 10;//名望解锁
|
||||
|
||||
//特殊商店id
|
||||
int DAILY_GOODS_FAST_ID = 1004;//每日礼包一键购买的礼包ID
|
||||
|
||||
|
|
|
|||
|
|
@ -1565,6 +1565,12 @@ public class PlayerLogic {
|
|||
case GlobalsDef.WEEKCARD_UNLOCK:
|
||||
cond = user.getPlayerInfoManager().getMonthCard().getOrDefault(1, -1);
|
||||
break;
|
||||
case GlobalsDef.GOD_LV_UNLOCK:
|
||||
cond = getGodPrivilegeLv(user);
|
||||
break;
|
||||
case GlobalsDef.RENOWN_LV_UNLOCK:
|
||||
cond = getRenownPrivilegeLv(user);
|
||||
break;
|
||||
default:{
|
||||
break;
|
||||
}
|
||||
|
|
@ -1949,4 +1955,53 @@ public class PlayerLogic {
|
|||
builder.setHero(heroBuilder);
|
||||
return builder.build();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取神尊特权等级
|
||||
* @param user
|
||||
* @return
|
||||
*/
|
||||
public int getGodPrivilegeLv(User user){
|
||||
Map<Integer, SPrestigeConfig> typeMap = SPrestigeConfig.getTypeMap(SPrestigeConfig.godPrivilege);
|
||||
if (typeMap == null || typeMap.isEmpty()){
|
||||
return 0;
|
||||
}
|
||||
int lv = 0;
|
||||
List<SPrestigeConfig> list = typeMap.values().stream().collect(Collectors.toList());
|
||||
Item item = user.getItemManager().getItem(list.get(0).getExperience()[0]);
|
||||
long num = Optional.ofNullable(item).map(Item::getItemNum).orElse(0L);
|
||||
for (SPrestigeConfig value : list) {
|
||||
if (num >= value.getExperience()[1]){
|
||||
lv = value.getLevel();
|
||||
}else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
return lv;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取名望特权等级
|
||||
* @param user
|
||||
* @return
|
||||
*/
|
||||
public int getRenownPrivilegeLv(User user){
|
||||
Map<Integer, SPrestigeConfig> typeMap = SPrestigeConfig.getTypeMap(SPrestigeConfig.renownPrivilege);
|
||||
if (typeMap == null || typeMap.isEmpty()){
|
||||
return 0;
|
||||
}
|
||||
int lv = 0;
|
||||
List<SPrestigeConfig> list = typeMap.values().stream().collect(Collectors.toList());
|
||||
Item item = user.getItemManager().getItem(list.get(0).getExperience()[0]);
|
||||
long num = Optional.ofNullable(item).map(Item::getItemNum).orElse(0L);
|
||||
for (SPrestigeConfig value : list) {
|
||||
if (num >= value.getExperience()[1]){
|
||||
lv = value.getLevel();
|
||||
}else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
return lv;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -621,18 +621,14 @@ public class StoreLogic implements IEventHandler {
|
|||
}
|
||||
break;
|
||||
case 2:
|
||||
SPrestigeConfig prestigeConfig = SPrestigeConfig.getTypeMap(1).get(buyRule[1]);
|
||||
Item item = user.getItemManager().getItem(prestigeConfig.getExperience()[0]);
|
||||
long num = item == null ? 0 : item.getItemNum();
|
||||
if (num < prestigeConfig.getExperience()[1]){
|
||||
int godPrivilegeLv = PlayerLogic.getInstance().getGodPrivilegeLv(user);
|
||||
if (godPrivilegeLv < buyRule[1]){
|
||||
err = "神尊等级不足,无权购买";
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
SPrestigeConfig prestigeConfig2 = SPrestigeConfig.getTypeMap(2).get(buyRule[1]);
|
||||
Item item2 = user.getItemManager().getItem(prestigeConfig2.getExperience()[0]);
|
||||
long num2 = item2 == null ? 0 : item2.getItemNum();
|
||||
if (num2 < prestigeConfig2.getExperience()[1]){
|
||||
int renownPrivilegeLv = PlayerLogic.getInstance().getRenownPrivilegeLv(user);
|
||||
if (renownPrivilegeLv < buyRule[1]){
|
||||
err = "名望等级不足,无权购买";
|
||||
}
|
||||
break;
|
||||
|
|
|
|||
Loading…
Reference in New Issue