vip修改

lvxinran 2020-05-25 11:29:08 +08:00
parent a6767eb7bf
commit 08b1bd06cf
10 changed files with 89 additions and 35 deletions

View File

@ -23,6 +23,7 @@ public interface GlobalGm {
int ESPECIAL_EQUIP = 19;//增加法宝,星级
int TREASURE_FINISH = 20;//戒灵秘宝一键完成
int FULL_OF = 21; //一键全满
int EXPEDITION_SCORE = 23;//天宫秘宝积分
// int TECNOLOGY_MAX = 21;//科技树一键满级
// int POKEMAN_MAX = 22;//一键获得所有满级异妖

View File

@ -0,0 +1,26 @@
package com.ljsd.jieling.handler.Expedition;
import com.ljsd.jieling.handler.BaseHandler;
import com.ljsd.jieling.logic.expedition.ExpeditionLogic;
import com.ljsd.jieling.netty.cocdex.PacketNetData;
import com.ljsd.jieling.network.session.ISession;
import com.ljsd.jieling.protocols.MessageTypeProto;
import org.springframework.stereotype.Component;
/**
* @author lvxinran
* @date 2020/5/21
* @discribe
*/
@Component
public class GetAllExpeditionTreasureHandler extends BaseHandler {
@Override
public MessageTypeProto.MessageType getMessageCode() {
return MessageTypeProto.MessageType.EXPEDITION_TREASURE_INFO_REQUEST;
}
@Override
public void process(ISession iSession, PacketNetData netData) throws Exception {
ExpeditionLogic.getInstance().getAllTreasureInfo(iSession, MessageTypeProto.MessageType.EXPEDITION_TREASURE_INFO_RESPONSE);
}
}

View File

@ -345,7 +345,9 @@ public class GMRequestHandler extends BaseHandler{
pokemonManager.addPokemon(pokemon);
}
break;
case GlobalGm.EXPEDITION_SCORE:
cUser.getExpeditionManager().addScore(prarm2);
break;
default:
break;
}

View File

@ -8,7 +8,6 @@ import com.ljsd.jieling.protocols.MessageTypeProto;
import org.springframework.stereotype.Component;
@Component
@Deprecated //vip 等级改版
public class VipLevelUpHandler extends BaseHandler {
@Override
public MessageTypeProto.MessageType getMessageCode() {
@ -17,6 +16,6 @@ public class VipLevelUpHandler extends BaseHandler {
@Override
public void process(ISession iSession, PacketNetData netData) throws Exception {
// PlayerLogic.getInstance().vipLevelUp(iSession);
PlayerLogic.getInstance().vipLevelUp(iSession);
}
}

View File

@ -198,4 +198,8 @@ public class ExpeditionManager extends MongoBase {
}
public void addScore(int score){
worldTreasureReward.setScore(worldTreasureReward.getScore()+score);
updateString("worldTreasureReward", worldTreasureReward);
}
}

View File

@ -100,6 +100,7 @@ public class UserManager {
user.getUserMissionManager().onGameEvent(user, GameEvent.MISSING_ROOM_REFRESH,0);
user.getUserMissionManager().onGameEvent(user, GameEvent.ACHIEVE_REFRESH, 0);
user.getUserMissionManager().onGameEvent(user, GameEvent.BEGINNER);
user.getUserMissionManager().onGameEvent(user, GameEvent.VIP_LEVLUP,0);
Poster.getPoster().dispatchEvent(new NewWelfareEvent(user, NewWelfareTypeEnum.LOGIN_TIMES.getType(),1));
ItemUtil.drop(user,gameSetting.getBornItem(), BIReason.USER_BORN_REWARD);
HeroManager heroManager = user.getHeroManager();

View File

@ -44,6 +44,10 @@ public class WorldTreasureReward extends MongoBase {
return score;
}
public void setScore(int score) {
this.score = score;
}
public Map<Integer, Integer> getRewardStatusMap() {
return rewardStatusMap;
}

View File

@ -926,4 +926,23 @@ public class ExpeditionLogic {
.setSpecialPassive(SpecialForTeamBuildEnum.toParm(teamId,user))
.build();
}
public void getAllTreasureInfo(ISession session, MessageTypeProto.MessageType messageType) throws Exception {
int uid = session.getUid();
User user = UserManager.getUser(uid);
WorldTreasureReward worldTreasureReward = user.getExpeditionManager().getWorldTreasureReward();
Expedition.ExpeditionTreasureInfoResponse.Builder response = Expedition.ExpeditionTreasureInfoResponse.newBuilder();
Map<Integer, Integer> rewardStatusMap = worldTreasureReward.getRewardStatusMap();
if(!rewardStatusMap.isEmpty()){
List<Expedition.TreasureRewardState> states = new ArrayList<>(100);
for(Map.Entry<Integer, Integer> entry:rewardStatusMap.entrySet()){
Expedition.TreasureRewardState.Builder builder = Expedition.TreasureRewardState.newBuilder().setId(entry.getKey()).setState(entry.getValue());
states.add(builder.build());
}
response.addAllTreasureRewardState(states);
}
response.setScore(worldTreasureReward.getScore());
MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true);
}
}

View File

@ -231,31 +231,29 @@ public class PlayerLogic {
return valueLength;
}
// public void vipLevelUp(ISession session) throws Exception {
// int uid = session.getUid();
// User user = UserManager.getUser(uid);
// PlayerManager playerInfoManager = user.getPlayerInfoManager();
//// if(playerInfoManager.getHadTakeDailyBoxVip() == -1){
//// throw new ErrorCodeException(ErrorCode.NOT_TAKE_VIP_DAILY_REWARD);
//// }
//// Set<Integer> doingMissionIds = user.getUserMissionManager().getVipMissionIdsType().getDoingMissionIds();
//// if(!doingMissionIds.isEmpty()){
//// throw new ErrorCodeException(ErrorCode.newDefineCode("not finfish"));
//// }
//
// int vipLevel = playerInfoManager.getVipLevel();
// playerInfoManager.updateVipInfo(user,vipLevel+1);
public void vipLevelUp(ISession session) throws Exception {
int uid = session.getUid();
User user = UserManager.getUser(uid);
PlayerManager playerInfoManager = user.getPlayerInfoManager();
Set<Integer> doingMissionIds = user.getUserMissionManager().getVipMissionIdsType().getDoingMissionIds();
if(!doingMissionIds.isEmpty()){
throw new ErrorCodeException(ErrorCode.newDefineCode("not finfish"));
}
int vipLevel = playerInfoManager.getVipLevel();
playerInfoManager.setVipLevel(vipLevel+1);
user.getUserMissionManager().onGameEvent(user,GameEvent.VIP_LEVLUP,playerInfoManager.getVipLevel());
// CombatLogic.getInstance().getNewAdventureReward(user, true);
//// List<CommonProto.UserMissionInfo> missionList = new ArrayList<>();
//// MissionLoigc.getVipMission(user,missionList);
//// CommonProto.VipBaseInfo vipInfoProto = CommonProto.VipBaseInfo.newBuilder()
//// .setHadTakeDailyBox(playerInfoManager.getHadTakeDailyBoxVip())
//// .setHadTakeLevelBox(playerInfoManager.getHadTakeLevelBoxVip())
//// .setVipLevel(playerInfoManager.getVipLevel()).build();
//// PlayerInfoProto.VipLevelUpResponse.Builder builder = PlayerInfoProto.VipLevelUpResponse.newBuilder().addAllUserMissionInfo(missionList);
//// builder.setVipBaseInfo(vipInfoProto);
//// MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.VIP_LEVELUP_RESPONSE_VALUE,builder.build(),true);
// }
List<CommonProto.UserMissionInfo> missionList = new ArrayList<>();
MissionLoigc.getVipMission(user,missionList);
CommonProto.VipBaseInfo vipInfoProto = CommonProto.VipBaseInfo.newBuilder()
// .setHadTakeDailyBox(playerInfoManager.getHadTakeDailyBoxVip())
// .setHadTakeLevelBox(playerInfoManager.getHadTakeLevelBoxVip())
.setVipLevel(playerInfoManager.getVipLevel()).build();
PlayerInfoProto.VipLevelUpResponse.Builder builder = PlayerInfoProto.VipLevelUpResponse.newBuilder().addAllUserMissionInfo(missionList);
builder.setVipBaseInfo(vipInfoProto);
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.VIP_LEVELUP_RESPONSE_VALUE,builder.build(),true);
}

View File

@ -227,13 +227,13 @@ public class BuyGoodsLogic {
ISession session = OnlineUserManager.getSessionByUid(uid);
//vip 等级更新和推送
int newLeve= SVipLevelConfig.getsVipLevel(rechargeInfo.getSaveAmt());
if(user.getPlayerInfoManager().getVipLevel()!=newLeve){
// user.getPlayerInfoManager().updateVipInfo(user,newLeve);
user.getPlayerInfoManager().setVipLevel(newLeve);
user.getPlayerInfoManager().updateVipInfo(GlobalsDef.VIP_UNLOCK_PRIVILEGE,newLeve);
// CombatLogic.getInstance().getNewAdventureReward(user, true);
}
// int newLeve= SVipLevelConfig.getsVipLevel(rechargeInfo.getSaveAmt());
// if(user.getPlayerInfoManager().getVipLevel()!=newLeve){
//// user.getPlayerInfoManager().updateVipInfo(user,newLeve);
// user.getPlayerInfoManager().setVipLevel(newLeve);
// user.getPlayerInfoManager().updateVipInfo(GlobalsDef.VIP_UNLOCK_PRIVILEGE,newLeve);
//// CombatLogic.getInstance().getNewAdventureReward(user, true);
// }
PlayerInfoProto.RefreshRechargeIndication.Builder builder = PlayerInfoProto.RefreshRechargeIndication.newBuilder();
builder.setAmount(rechargeInfo.getSaveAmt());
builder.setMonthSaveAmt(rechargeInfo.getMonthSaveAmt());
@ -410,7 +410,7 @@ public class BuyGoodsLogic {
if(isNew){
needChange = true;
}
continue;
// continue;
}
}
int[] discountType = sRechargeCommodityConfig.getDiscountType();