特权经验

back_recharge
duhui 2022-09-09 18:18:29 +08:00
parent 9e6c8637da
commit 5778fe091c
1 changed files with 25 additions and 13 deletions

View File

@ -1439,13 +1439,12 @@ public class PlayerLogic {
user.getPlayerInfoManager().setRideLevel(rideLevel+1); user.getPlayerInfoManager().setRideLevel(rideLevel+1);
MessageUtil.sendMessage(session,1,messageType.getNumber(),null,true); MessageUtil.sendMessage(session,1,messageType.getNumber(),null,true);
} }
public boolean check(User user, int privilageTypeId, int checkNum){ public boolean check(User user, int privilegeTypeId, int checkNum){
// return priviliageCheck(user,privilageTypeId,checkNum,false);
Map<Integer, VipInfo> vipInfo = user.getPlayerInfoManager().getVipInfo(); Map<Integer, VipInfo> vipInfo = user.getPlayerInfoManager().getVipInfo();
if(privilageTypeId == 0){ if(privilegeTypeId == 0){
return true; return true;
} }
List<SPrivilegeTypeConfig> sPrivilegeTypeConfigs = SPrivilegeTypeConfig.privilegeByType.get(privilageTypeId); List<SPrivilegeTypeConfig> sPrivilegeTypeConfigs = SPrivilegeTypeConfig.privilegeByType.get(privilegeTypeId);
List<Integer> typePrivileges = new ArrayList<>(); List<Integer> typePrivileges = new ArrayList<>();
for(SPrivilegeTypeConfig config:sPrivilegeTypeConfigs){ for(SPrivilegeTypeConfig config:sPrivilegeTypeConfigs){
if(!vipInfo.containsKey(config.getId())){ if(!vipInfo.containsKey(config.getId())){
@ -1456,12 +1455,12 @@ public class PlayerLogic {
if(typePrivileges.isEmpty()){ if(typePrivileges.isEmpty()){
return false; return false;
} }
for(Integer privilageId:typePrivileges){ for(Integer privilegeId:typePrivileges){
VipInfo info = vipInfo.get(privilageId); VipInfo info = vipInfo.get(privilegeId);
if(info.getEffectTime()!=0&&TimeUtils.now()/1000>info.getEffectTime()){ if(info.getEffectTime()!=0&&TimeUtils.now()/1000>info.getEffectTime()){
continue; continue;
} }
int mCount = getMaxCountByPrivilege(user,privilageId); int mCount = getMaxCountByPrivilege(user,privilegeId);
if(mCount==-1){ if(mCount==-1){
return true; return true;
} }
@ -1472,13 +1471,15 @@ public class PlayerLogic {
} }
return false; return false;
} }
public boolean checkAndUpdate(User user, int privilageTypeId, int updateNum){
// return priviliageCheck(user,privilageTypeId,updateNum,true); public boolean checkAndUpdate(User user, int privilegeTypeId, int updateNum){
boolean check = check(user, privilegeTypeId, updateNum);
Map<Integer, VipInfo> vipInfo = user.getPlayerInfoManager().getVipInfo(); Map<Integer, VipInfo> vipInfo = user.getPlayerInfoManager().getVipInfo();
if(privilageTypeId == 0){ if(privilegeTypeId == 0){
return true; return true;
} }
List<SPrivilegeTypeConfig> sPrivilegeTypeConfigs = SPrivilegeTypeConfig.privilegeByType.get(privilageTypeId); List<SPrivilegeTypeConfig> sPrivilegeTypeConfigs = SPrivilegeTypeConfig.privilegeByType.get(privilegeTypeId);
List<Integer> typePrivileges = new ArrayList<>(); List<Integer> typePrivileges = new ArrayList<>();
for(SPrivilegeTypeConfig config:sPrivilegeTypeConfigs){ for(SPrivilegeTypeConfig config:sPrivilegeTypeConfigs){
if(!vipInfo.containsKey(config.getId())){ if(!vipInfo.containsKey(config.getId())){
@ -1571,6 +1572,9 @@ public class PlayerLogic {
case GlobalsDef.RENOWN_LV_UNLOCK: case GlobalsDef.RENOWN_LV_UNLOCK:
cond = getRenownPrivilegeLv(user); cond = getRenownPrivilegeLv(user);
break; break;
case VipPrivilegeType.DAY_OF_ONE_GM_RECHARGE_MAX:
cond = user.getPlayerInfoManager().getGmRechargeMax();
break;
default:{ default:{
break; break;
} }
@ -1971,8 +1975,12 @@ public class PlayerLogic {
Item item = user.getItemManager().getItem(list.get(0).getExperience()[0]); Item item = user.getItemManager().getItem(list.get(0).getExperience()[0]);
long num = Optional.ofNullable(item).map(Item::getItemNum).orElse(0L); long num = Optional.ofNullable(item).map(Item::getItemNum).orElse(0L);
for (SPrestigeConfig value : list) { for (SPrestigeConfig value : list) {
if (num >= value.getExperience()[1]){ if (value.getExperience() == null){
lv = value.getLevel(); lv = value.getLevel();
break;
}
if (num >= value.getExperience()[1]){
lv = value.getLevel()+1;
}else { }else {
break; break;
} }
@ -1995,8 +2003,12 @@ public class PlayerLogic {
Item item = user.getItemManager().getItem(list.get(0).getExperience()[0]); Item item = user.getItemManager().getItem(list.get(0).getExperience()[0]);
long num = Optional.ofNullable(item).map(Item::getItemNum).orElse(0L); long num = Optional.ofNullable(item).map(Item::getItemNum).orElse(0L);
for (SPrestigeConfig value : list) { for (SPrestigeConfig value : list) {
if (num >= value.getExperience()[1]){ if (value.getExperience() == null){
lv = value.getLevel(); lv = value.getLevel();
break;
}
if (num >= value.getExperience()[1]){
lv = value.getLevel()+1;
}else { }else {
break; break;
} }