限时头像框完善

back_recharge
duhui 2021-01-15 18:28:43 +08:00
parent 664b4c748c
commit 14ba7c1599
4 changed files with 4 additions and 11 deletions

View File

@ -44,8 +44,7 @@ public class UseHeadFrameHandler extends BaseHandler<PlayerInfoProto.UseHeadFram
}
// 验证道具是否足够
SItem sItem = SItem.getsItemMap().get(headFrameId);
boolean result = ItemUtil.checkCost(user, sItem, 1, BIReason.USE_HEADFRAME,headFrameId);
boolean result = ItemUtil.itemCost(user, new int[][]{{headFrameId, 1}}, 1, BIReason.USE_HEADFRAME,1);
if (!result){
throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH);
}

View File

@ -85,7 +85,7 @@ public class PlayerManager extends MongoBase {
private int headFrame;
// 头像框id有效时间
private Map<Integer,Long> headFrameValidTime;
private Map<Integer,Long> headFrameValidTime = new HashMap<>();
// 限时头像旧版本兼容
private int oldHeadFrame;
@ -509,11 +509,6 @@ public class PlayerManager extends MongoBase {
}
public Map<Integer, Long> getHeadFrameValidTime() {
// 为空,初始化
if (headFrameValidTime == null){
setHeadFrameValidTime(new HashMap<>());
return new HashMap<>();
}
return headFrameValidTime;
}
@ -523,13 +518,11 @@ public class PlayerManager extends MongoBase {
}
public void putHeadFrameValidTime(int headFrameId,Long time) {
getHeadFrameValidTime();
headFrameValidTime.put(headFrameId,time);
updateString("headFrameValidTime", headFrameValidTime);
}
public void removeHeadFrameValidTime(int headFrameId) {
getHeadFrameValidTime();
headFrameValidTime.remove(headFrameId);
updateString("headFrameValidTime", headFrameValidTime);
}

View File

@ -126,6 +126,7 @@ public class UserManager {
int headFrameId = STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting().getDefaultPicture();
playerManager.setHeadFrame(headFrameId);
playerManager.putHeadFrameValidTime(headFrameId,0L);
ItemUtil.itemCost(user, new int[][]{{headFrameId, 1}}, 1, BIReason.USE_HEADFRAME,1);
SPlayerLevelConfig sPlayerLevelConfig = SPlayerLevelConfig.getsPlayerLevelConfigMap().get(1);
playerManager.setMaxStamina(sPlayerLevelConfig.getMaxEnergy());
playerManager.setRideLevel(1);

View File

@ -435,7 +435,7 @@ public class PlayerLogic {
LOGGER.info("外观物品Id{}",decorationId);
User user = UserManager.getUser(session.getUid());
ItemManager itemManager = user.getItemManager();
if(decorationId!=0){
if(decorationId != 0 && type != 0){
if(itemManager.getItem(decorationId)==null||itemManager.getItem(decorationId).getItemNum()<1){
throw new ErrorCodeException(ErrorCode.newDefineCode("无此物品"));
}