Merge branch 'master' of http://60.1.1.230/backend/jieling_server
commit
9346c5e82b
|
@ -17,15 +17,58 @@ import com.ljsd.jieling.util.MessageUtil;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
import java.util.concurrent.ConcurrentLinkedQueue;
|
import java.util.concurrent.ConcurrentLinkedQueue;
|
||||||
|
|
||||||
|
|
||||||
public class HandlerLogicThread extends Thread{
|
public class HandlerLogicThread extends Thread{
|
||||||
private static final Logger LOGGER = LoggerFactory.getLogger(HandlerLogicThread.class);
|
private static final Logger LOGGER = LoggerFactory.getLogger(HandlerLogicThread.class);
|
||||||
|
private static Set<Integer> whiteMsg = new HashSet<>();
|
||||||
|
static {
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.MAP_ENTER_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.MAP_START_EXPLORE_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.MAP_UDPATE_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.EVENT_UPDATE_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.MAP_FAST_FIGHT_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.FIGHT_START_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.FIGHT_END_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.MAP_OUT_REQUEST_VALUE);
|
||||||
|
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.LOGIN_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_PLAYERINFO_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_VIP_MISSION_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_ITEMINFO_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_ALL_EQUIP_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_ALL_POKEMON_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_HEROINFO_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_TEAMPOS_INFO_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_WORKSHOP_INFO_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_ALL_MAIL_INFO_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_ALL_LEVE_DIFFICULTT_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_ALL_ACTIVITY_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_FUNCTIONOFTIME_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_SECRETBOX_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_DAILY_MISSION_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.ADVENTURE_INFO_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_FRIEND_INFO_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_STARE_INFOS_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.ARENA_INFO_REQUEST_VALUE);
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_RINGFIRE_INFO_REQUEST_VALUE);
|
||||||
|
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.BUY_STORE_ITEM_REQUEST_VALUE);
|
||||||
|
//日后删除
|
||||||
|
whiteMsg.add(MessageTypeProto.MessageType.GET_CHAT_MESSAGE_REQUEST_VALUE);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
public ConcurrentLinkedQueue<PacketNetData> handlerLinkedQueue = new ConcurrentLinkedQueue();
|
public ConcurrentLinkedQueue<PacketNetData> handlerLinkedQueue = new ConcurrentLinkedQueue();
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
while (GameApplication.start) {
|
while (GameApplication.start) {
|
||||||
|
@ -58,6 +101,11 @@ public class HandlerLogicThread extends Thread{
|
||||||
MessageUtil.sendErrorResponse(session,0,msgId+1,"funciton not");
|
MessageUtil.sendErrorResponse(session,0,msgId+1,"funciton not");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
b = checkIsPermit(msgId, session);
|
||||||
|
if(!b){
|
||||||
|
MessageUtil.sendErrorResponse(session,0,msgId+1,"在地图探索中,不可以操作");
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -73,6 +121,17 @@ public class HandlerLogicThread extends Thread{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private boolean checkIsPermit(int msgId,ISession session) throws Exception {
|
||||||
|
int uid = session.getUid();
|
||||||
|
User user = UserManager.getUser(uid);
|
||||||
|
int curMapId = user.getMapManager().getCurMapId();
|
||||||
|
if(curMapId!=0 && !whiteMsg.contains(msgId)){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private boolean checkFunctionIsOpen(int msgId,ISession session ) {
|
private boolean checkFunctionIsOpen(int msgId,ISession session ) {
|
||||||
int uid = session.getUid();
|
int uid = session.getUid();
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -159,6 +159,9 @@ public class MapLogic {
|
||||||
mapManager.setCurMapId(mapId);
|
mapManager.setCurMapId(mapId);
|
||||||
initMap(mapManager, user);
|
initMap(mapManager, user);
|
||||||
user.setMapManager(mapManager);
|
user.setMapManager(mapManager);
|
||||||
|
}else if(mapManager.getCurMapId()!=mapId){
|
||||||
|
MessageUtil.sendErrorResponse(iSession, 0, messageType.getNumber(), "地图错误,应进入" + mapManager.getCurMapId());
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
List<CommonProto.Cell> cells = new ArrayList<>(mapManager.getMapInfo().size());
|
List<CommonProto.Cell> cells = new ArrayList<>(mapManager.getMapInfo().size());
|
||||||
for (Map.Entry<Integer, Cell> entry : mapManager.getMapInfo().entrySet()) {
|
for (Map.Entry<Integer, Cell> entry : mapManager.getMapInfo().entrySet()) {
|
||||||
|
@ -528,8 +531,8 @@ public class MapLogic {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
updateMapMission(mapManager,EventType.updateOptionalEvent, optionId,0);
|
updateMapMission(mapManager,EventType.updateOptionalEvent, optionId,optionId);
|
||||||
updateMapMission(mapManager,EventType.updatePonintEvent, pointId,0);
|
updateMapMission(mapManager,EventType.updatePonintEvent, pointId,pointId);
|
||||||
CommonProto.Drop.Builder dropBuilder = null;
|
CommonProto.Drop.Builder dropBuilder = null;
|
||||||
if (sOptionConfig.getReward().length > 0) {
|
if (sOptionConfig.getReward().length > 0) {
|
||||||
dropBuilder = ItemUtil.drop(user, sOptionConfig.getReward(), 1, 1, BIReason.MAP_EVENET_REWARD);
|
dropBuilder = ItemUtil.drop(user, sOptionConfig.getReward(), 1, 1, BIReason.MAP_EVENET_REWARD);
|
||||||
|
@ -945,7 +948,7 @@ public class MapLogic {
|
||||||
fastFightResponse.addAllRemainHpList(remainHp);
|
fastFightResponse.addAllRemainHpList(remainHp);
|
||||||
fastFightResponse.build();
|
fastFightResponse.build();
|
||||||
// LOGGER.info("endFight() uid=>{},nextEventId=>{}", uid, nextEventId);
|
// LOGGER.info("endFight() uid=>{},nextEventId=>{}", uid, nextEventId);
|
||||||
updateMapMission(mapManager,EventType.fightEvent,0, groupId);
|
updateMapMission(mapManager,EventType.fightEvent,groupId, groupId);
|
||||||
// LOGGER.info("endFight() uid=>{} sMonsterGroup.getRewardgroup()=>{} misson=>{} eventDrop=>{}, missionDrop=>{}", uid, sMonsterGroup.getRewardgroup(), fastFightResponse.getMission(), fastFightResponse.getEnventDrop(), fastFightResponse.getMissionDrop());
|
// LOGGER.info("endFight() uid=>{} sMonsterGroup.getRewardgroup()=>{} misson=>{} eventDrop=>{}, missionDrop=>{}", uid, sMonsterGroup.getRewardgroup(), fastFightResponse.getMission(), fastFightResponse.getEnventDrop(), fastFightResponse.getMissionDrop());
|
||||||
MessageUtil.sendMessage(session, 1, messageType.getNumber(), fastFightResponse.build(), true);
|
MessageUtil.sendMessage(session, 1, messageType.getNumber(), fastFightResponse.build(), true);
|
||||||
}
|
}
|
||||||
|
@ -1139,7 +1142,7 @@ public class MapLogic {
|
||||||
}
|
}
|
||||||
fightEndResponse.setEventId(nextEventId);
|
fightEndResponse.setEventId(nextEventId);
|
||||||
// LOGGER.info("endFight() uid=>{},nextEventId=>{}", uid, nextEventId);
|
// LOGGER.info("endFight() uid=>{},nextEventId=>{}", uid, nextEventId);
|
||||||
updateMapMission(mapManager,EventType.fightEvent,0,monsterGroupId);
|
updateMapMission(mapManager,EventType.fightEvent,monsterGroupId,monsterGroupId);
|
||||||
// LOGGER.info("endFight() uid=>{} sMonsterGroup.getRewardgroup()=>{} misson=>{} eventDrop=>{}, missionDrop=>{}", uid, sMonsterGroup.getRewardgroup(), fightEndResponse.getMission(), fightEndResponse.getEnventDrop(), fightEndResponse.getMissionDrop());
|
// LOGGER.info("endFight() uid=>{} sMonsterGroup.getRewardgroup()=>{} misson=>{} eventDrop=>{}, missionDrop=>{}", uid, sMonsterGroup.getRewardgroup(), fightEndResponse.getMission(), fightEndResponse.getEnventDrop(), fightEndResponse.getMissionDrop());
|
||||||
MessageUtil.sendMessage(session, 1, messageType.getNumber(), fightEndResponse.build(), true);
|
MessageUtil.sendMessage(session, 1, messageType.getNumber(), fightEndResponse.build(), true);
|
||||||
|
|
||||||
|
@ -1173,6 +1176,7 @@ public class MapLogic {
|
||||||
|
|
||||||
|
|
||||||
public int updateMapMission(MapManager mapManager,int eventType,int eventId,int bossIdOrItemId){
|
public int updateMapMission(MapManager mapManager,int eventType,int eventId,int bossIdOrItemId){
|
||||||
|
LOGGER.info("the eventtype ={},eventId={},bossItemId={}",eventType,eventId,bossIdOrItemId);
|
||||||
int mapId = mapManager.getCurMapId();
|
int mapId = mapManager.getCurMapId();
|
||||||
if(mapId==0){
|
if(mapId==0){
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -1191,50 +1195,8 @@ public class MapLogic {
|
||||||
int score = sAccomplishmentConfig.getScore();
|
int score = sAccomplishmentConfig.getScore();
|
||||||
int logic = sAccomplishmentConfig.getLogic();
|
int logic = sAccomplishmentConfig.getLogic();
|
||||||
int[][] values = sAccomplishmentConfig.getValues();
|
int[][] values = sAccomplishmentConfig.getValues();
|
||||||
int targetEventId = values[0][0];
|
|
||||||
int targetEventValue = values[1][0];
|
int targetEventValue = values[1][0];
|
||||||
if(eventType == EventType.updateOptionalEvent && logic == MapMissionType.FINISH_EVEVNT.getMissionTypeValue()){
|
|
||||||
for(int targetEventIdTmp : values[0]){
|
|
||||||
if(targetEventIdTmp == eventId){
|
|
||||||
if(missionValue<targetEventValue){
|
|
||||||
allMissionProgress.put(missionId,missionValue+1);
|
|
||||||
needUpdate = true;
|
|
||||||
if(missionValue+1 == targetEventValue){
|
|
||||||
addScore+=score;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//updatePonintEvent optionalConfig获取
|
|
||||||
if(eventType == EventType.updatePonintEvent){
|
|
||||||
//处理采矿 、宝箱
|
|
||||||
MapPointConfig mapPointConfig = MapPointConfig.getScMapEventMap().get(eventId);
|
|
||||||
if(mapPointConfig!=null){
|
|
||||||
if((mapPointConfig.getStyle() == 2 && logic == MapMissionType.DIGGER_EVENT.getMissionTypeValue() )|| (mapPointConfig.getStyle() == 7 && logic == MapMissionType.OPEN_BOX.getMissionTypeValue())){
|
|
||||||
if(missionValue<targetEventValue){
|
|
||||||
allMissionProgress.put(missionId,missionValue+1);
|
|
||||||
needUpdate = true;
|
|
||||||
if(missionValue+1 == targetEventValue){
|
|
||||||
addScore+=score;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//todo 战斗结束处理
|
|
||||||
if(eventType == EventType.fightEvent){
|
if(eventType == EventType.fightEvent){
|
||||||
if(logic == MapMissionType.KILL_BOSS.getMissionTypeValue()){
|
|
||||||
if(targetEventId == bossIdOrItemId){
|
|
||||||
if(missionValue<targetEventValue){
|
|
||||||
allMissionProgress.put(missionId,missionValue+1);
|
|
||||||
needUpdate = true;
|
|
||||||
if(missionValue+1 == targetEventValue){
|
|
||||||
addScore+=score;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(logic == MapMissionType.VICTORY_EVENT.getMissionTypeValue()){
|
if(logic == MapMissionType.VICTORY_EVENT.getMissionTypeValue()){
|
||||||
if(missionValue<targetEventValue){
|
if(missionValue<targetEventValue){
|
||||||
allMissionProgress.put(missionId,missionValue+1);
|
allMissionProgress.put(missionId,missionValue+1);
|
||||||
|
@ -1245,8 +1207,43 @@ public class MapLogic {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(eventType == EventType.updateOptionalEvent || eventType == EventType.fightEvent){
|
||||||
|
if(logic ==MapMissionType.FINISH_EVEVNT.getMissionTypeValue() || logic == MapMissionType.KILL_BOSS.getMissionTypeValue()){
|
||||||
|
for(int targetEventIdTmp : values[0]){
|
||||||
|
if(targetEventIdTmp == eventId){
|
||||||
|
if(missionValue<targetEventValue){
|
||||||
|
allMissionProgress.put(missionId,missionValue+1);
|
||||||
|
needUpdate = true;
|
||||||
|
if(missionValue+1 == targetEventValue){
|
||||||
|
addScore+=score;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//todo 行脚商人 在地图商店买东西需要特殊处理
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
//updatePonintEvent optionalConfig获取
|
||||||
|
if(eventType == EventType.updatePonintEvent){
|
||||||
|
//处理采矿 、宝箱
|
||||||
|
MapPointConfig mapPointConfig = MapPointConfig.getScMapEventMap().get(eventId);
|
||||||
|
if(mapPointConfig!=null){
|
||||||
|
if((mapPointConfig.getStyle() == 2 && logic == MapMissionType.DIGGER_EVENT.getMissionTypeValue() )|| (mapPointConfig.getStyle() == 7 && logic == MapMissionType.OPEN_BOX.getMissionTypeValue())){
|
||||||
|
if(missionValue<targetEventValue){
|
||||||
|
allMissionProgress.put(missionId,missionValue+1);
|
||||||
|
needUpdate = true;
|
||||||
|
if(missionValue+1 == targetEventValue){
|
||||||
|
addScore+=score;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* int targetEventId = values[0][0];
|
||||||
if(eventType == EventType.shopEvent){
|
if(eventType == EventType.shopEvent){
|
||||||
if(logic == MapMissionType.BUY_GOODS_ID_EVENT.getMissionTypeValue()){
|
if(logic == MapMissionType.BUY_GOODS_ID_EVENT.getMissionTypeValue()){
|
||||||
if(targetEventId == eventId && bossIdOrItemId == targetEventValue && missionValue==0 ){
|
if(targetEventId == eventId && bossIdOrItemId == targetEventValue && missionValue==0 ){
|
||||||
|
@ -1256,7 +1253,7 @@ public class MapLogic {
|
||||||
}
|
}
|
||||||
|
|
||||||
if(logic == MapMissionType.BUY_GOODS_TYPE_EVENT.getMissionTypeValue()){
|
if(logic == MapMissionType.BUY_GOODS_TYPE_EVENT.getMissionTypeValue()){
|
||||||
if(targetEventId == eventId && missionValue==0 ){
|
if(targetEventId == eventId && missionValue==0){
|
||||||
SItem sItem = SItem.getsItemMap().get(bossIdOrItemId);
|
SItem sItem = SItem.getsItemMap().get(bossIdOrItemId);
|
||||||
if(sItem.getItemType() == targetEventValue){
|
if(sItem.getItemType() == targetEventValue){
|
||||||
allMissionProgress.put(missionId,1);
|
allMissionProgress.put(missionId,1);
|
||||||
|
@ -1266,9 +1263,9 @@ public class MapLogic {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
}
|
|
||||||
|
|
||||||
|
}
|
||||||
if(addScore!=0){
|
if(addScore!=0){
|
||||||
mapMission.setTotalWeight(mapMission.getTotalWeight()+addScore);
|
mapMission.setTotalWeight(mapMission.getTotalWeight()+addScore);
|
||||||
if (mapMission.getTotalWeight() >= 100) {
|
if (mapMission.getTotalWeight() >= 100) {
|
||||||
|
|
|
@ -308,6 +308,7 @@ public class CombatLogic {
|
||||||
MessageUtil.sendErrorResponse(iSession,0, MessageTypeProto.MessageType.ADVENTURE_UPLEVEL_RESPONSE_VALUE,"item not");
|
MessageUtil.sendErrorResponse(iSession,0, MessageTypeProto.MessageType.ADVENTURE_UPLEVEL_RESPONSE_VALUE,"item not");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
getAdventureReward(user, arenaId, true,1);
|
||||||
adventureStateInfo.setLevel(adventureStateInfo.getLevel()+1);
|
adventureStateInfo.setLevel(adventureStateInfo.getLevel()+1);
|
||||||
MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.ADVENTURE_UPLEVEL_RESPONSE_VALUE,null,true);
|
MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.ADVENTURE_UPLEVEL_RESPONSE_VALUE,null,true);
|
||||||
}
|
}
|
||||||
|
@ -324,7 +325,7 @@ public class CombatLogic {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
adventureFastReward = getAdventureReward(user, position);
|
adventureFastReward = getAdventureReward(user, position,false,0);
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
String err = StoreLogic.checkBuyGoodsAndUpdate(user,7,10008,1);
|
String err = StoreLogic.checkBuyGoodsAndUpdate(user,7,10008,1);
|
||||||
|
@ -338,9 +339,12 @@ public class CombatLogic {
|
||||||
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.ADVENTURE_REWARD_RESPONSE_VALUE,build,true);
|
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.ADVENTURE_REWARD_RESPONSE_VALUE,build,true);
|
||||||
}
|
}
|
||||||
|
|
||||||
private Map<Integer,CommonProto.Drop> getAdventureReward(User user, int position) throws Exception {
|
public Map<Integer,CommonProto.Drop> getAdventureReward(User user, int position,boolean sendMail,int reason) throws Exception {
|
||||||
AdventureManager adventureManager = user.getAdventureManager();
|
AdventureManager adventureManager = user.getAdventureManager();
|
||||||
Map<Integer, AdventureStateInfo> adventureStateInfoMap = adventureManager.getAdventureStateInfoMap();
|
Map<Integer, AdventureStateInfo> adventureStateInfoMap = adventureManager.getAdventureStateInfoMap();
|
||||||
|
if(adventureStateInfoMap.isEmpty()){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
int now = (int)(System.currentTimeMillis()/1000);
|
int now = (int)(System.currentTimeMillis()/1000);
|
||||||
SGameSetting gameSetting = SGameSetting.getGameSetting();
|
SGameSetting gameSetting = SGameSetting.getGameSetting();
|
||||||
int adventureRefresh = gameSetting.getAdventureRefresh();
|
int adventureRefresh = gameSetting.getAdventureRefresh();
|
||||||
|
@ -376,6 +380,31 @@ public class CombatLogic {
|
||||||
ItemUtil.combineReward(randomRewardGroup[adventureStateInfoTmp.getLevel()-1], 1f,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap);
|
ItemUtil.combineReward(randomRewardGroup[adventureStateInfoTmp.getLevel()-1], 1f,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(sendMail){
|
||||||
|
adventureStateInfoTmp.setStartTime(now);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(sendMail){
|
||||||
|
if(!baseItemMap.isEmpty()){
|
||||||
|
String title = "";
|
||||||
|
String content = "";
|
||||||
|
if(reason == 1){
|
||||||
|
title = SErrorCodeEerverConfig.getI18NMessage("adventuren_reward_of_uplevel_title");
|
||||||
|
content = SErrorCodeEerverConfig.getI18NMessage("adventuren_reward_of_uplevel_content");
|
||||||
|
}else if(reason == 2){
|
||||||
|
title = SErrorCodeEerverConfig.getI18NMessage("adventuren_reward_of_viplevel_title");
|
||||||
|
content = SErrorCodeEerverConfig.getI18NMessage("adventuren_reward_of_viplevel_content");
|
||||||
|
}else {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
String reward = ItemUtil.getReward(baseItemMap, baseCardMap, baseEquipMap, baseRandomMap);
|
||||||
|
String randomReward = ItemUtil.getReward(randomItemMap, randomCardMap, randomEquipMap, randomRandomMap);
|
||||||
|
if(randomReward.length()!=0){
|
||||||
|
reward = reward + "|" + randomReward;
|
||||||
|
}
|
||||||
|
MailLogic.getInstance().sendMail(user.getId(),title,content,reward,now,Global.MAIL_EFFECTIVE_TIME);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
ItemUtil.drop(user,baseBuilder,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap,BIReason.ADVENTURE_BASE_REWARD);
|
ItemUtil.drop(user,baseBuilder,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap,BIReason.ADVENTURE_BASE_REWARD);
|
||||||
ItemUtil.drop(user,randomBuilder,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap,BIReason.ADVENTURE_RANDOM_REWARDD);
|
ItemUtil.drop(user,randomBuilder,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap,BIReason.ADVENTURE_RANDOM_REWARDD);
|
||||||
|
|
|
@ -1401,6 +1401,8 @@ public class HeroLogic {
|
||||||
Pokemon pokemon = pokemonManager.getRingFireMap().get(pokemonId);
|
Pokemon pokemon = pokemonManager.getRingFireMap().get(pokemonId);
|
||||||
if(pokemon == null){
|
if(pokemon == null){
|
||||||
pokemon = new Pokemon(pokemonId);
|
pokemon = new Pokemon(pokemonId);
|
||||||
|
pokemon.setAllStage(1);
|
||||||
|
pokemonManager.addRingFirePokemon(pokemon);
|
||||||
}
|
}
|
||||||
SRingTypeConfig sRingTypeConfig = SRingTypeConfig.config.get(pokemonId);
|
SRingTypeConfig sRingTypeConfig = SRingTypeConfig.config.get(pokemonId);
|
||||||
if(sRingTypeConfig == null){
|
if(sRingTypeConfig == null){
|
||||||
|
|
|
@ -198,9 +198,17 @@ public class ItemLogic {
|
||||||
int[][] sumConsume = SHeroLevlConfig.getsHeroLevlConfigMap().get(hero.getLevel()).getSumConsume();
|
int[][] sumConsume = SHeroLevlConfig.getsHeroLevlConfigMap().get(hero.getLevel()).getSumConsume();
|
||||||
ItemUtil.combineReward(sumConsume,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
ItemUtil.combineReward(sumConsume,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
||||||
int breakId = hero.getBreakId();
|
int breakId = hero.getBreakId();
|
||||||
if(breakId!=0){
|
int starBreakId = hero.getStarBreakId();
|
||||||
|
if(breakId!=0 || starBreakId!=0){
|
||||||
SCHeroRankUpConfig scHeroRankUpConfig = SCHeroRankUpConfig.scHeroRankUpConfigMap.get(breakId);
|
SCHeroRankUpConfig scHeroRankUpConfig = SCHeroRankUpConfig.scHeroRankUpConfigMap.get(breakId);
|
||||||
ItemUtil.combineReward(scHeroRankUpConfig.getSumConsume(),baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
if(scHeroRankUpConfig!=null){
|
||||||
|
ItemUtil.combineReward(scHeroRankUpConfig.getSumConsume(),baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
||||||
|
}
|
||||||
|
scHeroRankUpConfig = SCHeroRankUpConfig.scHeroRankUpConfigMap.get(starBreakId);
|
||||||
|
if(scHeroRankUpConfig!=null){
|
||||||
|
ItemUtil.combineReward(scHeroRankUpConfig.getSumConsume(),baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
||||||
|
}
|
||||||
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
SItem sItem = SItem.getsItemMap().get(hero.getTemplateId());
|
SItem sItem = SItem.getsItemMap().get(hero.getTemplateId());
|
||||||
|
|
|
@ -9,6 +9,7 @@ import com.ljsd.jieling.logic.activity.ActivityLogic;
|
||||||
import com.ljsd.jieling.logic.activity.ActivityType;
|
import com.ljsd.jieling.logic.activity.ActivityType;
|
||||||
import com.ljsd.jieling.logic.dao.*;
|
import com.ljsd.jieling.logic.dao.*;
|
||||||
import com.ljsd.jieling.logic.dao.root.User;
|
import com.ljsd.jieling.logic.dao.root.User;
|
||||||
|
import com.ljsd.jieling.logic.fight.CombatLogic;
|
||||||
import com.ljsd.jieling.logic.hero.HeroLogic;
|
import com.ljsd.jieling.logic.hero.HeroLogic;
|
||||||
import com.ljsd.jieling.logic.mail.MailLogic;
|
import com.ljsd.jieling.logic.mail.MailLogic;
|
||||||
import com.ljsd.jieling.logic.mission.GameEvent;
|
import com.ljsd.jieling.logic.mission.GameEvent;
|
||||||
|
@ -167,6 +168,7 @@ public class PlayerLogic {
|
||||||
MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.VIP_LEVELUP_RESPONSE_VALUE,"not finfish");
|
MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.VIP_LEVELUP_RESPONSE_VALUE,"not finfish");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
CombatLogic.getInstance().getAdventureReward(user, -1, true,2);
|
||||||
int vipLevel = playerInfoManager.getVipLevel();
|
int vipLevel = playerInfoManager.getVipLevel();
|
||||||
playerInfoManager.updateVipInfo(user,vipLevel+1);
|
playerInfoManager.updateVipInfo(user,vipLevel+1);
|
||||||
CommonProto.VipMissionInfo vipMissionResponse = MissionLoigc.getVipMissionResponse(user);
|
CommonProto.VipMissionInfo vipMissionResponse = MissionLoigc.getVipMissionResponse(user);
|
||||||
|
|
|
@ -282,6 +282,6 @@ public class CBean2Proto {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static CommonProto.RingFireInfo getRingFire(Pokemon pokemon) {
|
public static CommonProto.RingFireInfo getRingFire(Pokemon pokemon) {
|
||||||
return CommonProto.RingFireInfo.newBuilder().addAllComonpentId(pokemon.getComonpentsLevelMap().values()).setStage(pokemon.getAllStage()).build();
|
return CommonProto.RingFireInfo.newBuilder().addAllComonpentId(pokemon.getComonpentsLevelMap().keySet()).setStage(pokemon.getAllStage()).setId(pokemon.getId()).build();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -176,7 +176,7 @@ public class ItemUtil {
|
||||||
addEquip(user, equipMap, dropBuilder,reason);
|
addEquip(user, equipMap, dropBuilder,reason);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String getReward(Map<Integer, Integer> itemMap,Map<Integer, Integer> cardMap,Map<Integer, Integer> equipMap, Map<Integer,Integer> randomMap) {
|
public static String getReward(Map<Integer, Integer> itemMap,Map<Integer, Integer> cardMap,Map<Integer, Integer> equipMap, Map<Integer,Integer> randomMap) {
|
||||||
StringBuilder reward= new StringBuilder();
|
StringBuilder reward= new StringBuilder();
|
||||||
for (Map.Entry<Integer, Integer> entry : itemMap.entrySet()){
|
for (Map.Entry<Integer, Integer> entry : itemMap.entrySet()){
|
||||||
if (reward.length() == 0){
|
if (reward.length() == 0){
|
||||||
|
|
Loading…
Reference in New Issue