Merge branch 'master' of http://60.1.1.230/backend/jieling_server
commit
f4170fc273
|
@ -19,18 +19,19 @@ public class WorldBossTreasureStaticConfig extends AbstractClassStaticConfig {
|
|||
|
||||
@Override
|
||||
public void figureConfigs() {
|
||||
/* Map<Integer, SWorldBossTreasureConfig> config = STableManager.getConfig(SWorldBossTreasureConfig.class);
|
||||
Map<Integer, SWorldBossTreasureConfig> config = STableManager.getConfig(SWorldBossTreasureConfig.class);
|
||||
Map<Integer,Set<SWorldBossTreasureConfig>> idsByPeriodsTmp = new HashMap<>();
|
||||
config.forEach((id,item)->{
|
||||
int[] activityIds = item.getActivityId();
|
||||
Set<SWorldBossTreasureConfig> ids = idsByPeriodsTmp.putIfAbsent(activityIds[0], new HashSet<>());
|
||||
idsByPeriodsTmp.putIfAbsent(activityIds[0], new HashSet<>());
|
||||
Set<SWorldBossTreasureConfig> ids = idsByPeriodsTmp.get(activityIds[0]);
|
||||
for(int i=1;i<activityIds.length;i++){
|
||||
idsByPeriodsTmp.putIfAbsent(activityIds[i],ids);
|
||||
}
|
||||
ids.add(item);
|
||||
});
|
||||
sWorldBossTreasureConfigByIdMap = config;
|
||||
idsByPeriods = idsByPeriodsTmp;*/
|
||||
idsByPeriods = idsByPeriodsTmp;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -88,6 +88,7 @@ public interface GlobalsDef {
|
|||
int ENDLESS_TEAM = 401;//无尽编队
|
||||
int BLOODY_TEAM =701; //血战队伍
|
||||
int CHAMPION_ATTACK_TEAM =801; //
|
||||
int EXPEDITION_TEAM =1001; //
|
||||
int CAR_DELAY_TEAM =1101; //车迟斗法
|
||||
int DEATH_PATH_TEAM = 1201;//十绝阵
|
||||
|
||||
|
|
|
@ -248,5 +248,7 @@ public interface BIReason {
|
|||
int COMPLEX_JEVEL_EQUIP_CONSUME = 1058; //合成宝器
|
||||
int GUILD_HELP_CONSUME = 1059;//公会援助
|
||||
|
||||
int RANDOM_COST_BOX_CONSUME = 1060;//抽取宝箱奖励消耗
|
||||
|
||||
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
package com.ljsd.jieling.handler;
|
||||
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.netty.cocdex.PacketNetData;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.protocols.MessageTypeProto;
|
||||
|
||||
public class TakeRandomHeroBoxHandler extends BaseHandler{
|
||||
@Override
|
||||
public MessageTypeProto.MessageType getMessageCode() {
|
||||
return MessageTypeProto.MessageType.TAKE_RANDOM_HERO_BOX_REQUEST;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void process(ISession iSession, PacketNetData netData) throws Exception {
|
||||
User user = UserManager.getUser(iSession.getUid());
|
||||
|
||||
}
|
||||
}
|
|
@ -3416,6 +3416,7 @@ public class MapLogic {
|
|||
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
|
||||
}
|
||||
}
|
||||
user.getUserMissionManager().onGameEvent(user,GameEvent.DAILY_CHALLENGE,sDailyChallengeConfig.getType());
|
||||
MessageUtil.sendMessage(session,1,messageType.getNumber(),builder.build());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -147,7 +147,7 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, reward, BIReason.TAKE_ACTIVITY_REWARD);
|
||||
checkAndSetProgress(activityMission, activityProgressInfo, missionId);
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||
if (null != sGlobalActivity && ActivityLogic.getInstance().checkActivityMissionFinishAndTaked(id, activityMission) && sGlobalActivity.getResetGrade() == 1) {
|
||||
if (null != sGlobalActivity && ActivityLogic.getInstance().checkActivityMissionFinishAndTaked(session.getUid(),id, activityMission) && sGlobalActivity.getResetGrade() == 1) {
|
||||
reSetValue(user);
|
||||
if(sGlobalActivity.getType() != ActivityType.OnlineReward) {
|
||||
ActivityMission newmiss = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
|
|
|
@ -632,11 +632,11 @@ public class ActivityLogic implements IEventHandler{
|
|||
if (activityMission.getActivityState() != ActivityType.OPEN_STATE) {
|
||||
continue;
|
||||
}
|
||||
checkActivityMissionFinishAndTaked(item.getKey(), activityMission);
|
||||
checkActivityMissionFinishAndTaked(user.getId(),item.getKey(), activityMission);
|
||||
}
|
||||
}
|
||||
|
||||
public boolean checkActivityMissionFinishAndTaked(int activityId, ActivityMission activityMission) {
|
||||
public boolean checkActivityMissionFinishAndTaked(int uid,int activityId, ActivityMission activityMission) {
|
||||
Map<Integer, ActivityProgressInfo> activityProgressInfoMap = activityMission.getActivityMissionMap();
|
||||
for (Map.Entry<Integer, ActivityProgressInfo> item : activityProgressInfoMap.entrySet()) {
|
||||
ActivityProgressInfo activityProgressInfo = item.getValue();
|
||||
|
@ -655,7 +655,8 @@ public class ActivityLogic implements IEventHandler{
|
|||
}
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(activityId);
|
||||
if(sGlobalActivity.getResetGrade()==0){
|
||||
activityMission.setActivityState(ActivityType.FINISH_STATE);
|
||||
activityMission.setActivityState(ActivityType.CLOSE_STATE);
|
||||
Poster.getPoster().dispatchEvent(new ActivityStateChangeEvent(uid,activityId,ActivityType.CLOSE_STATE));
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
|
@ -8,6 +8,7 @@ import com.ljsd.jieling.logic.activity.event.IEvent;
|
|||
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.logic.store.BuyGoodsLogic;
|
||||
import com.ljsd.jieling.util.ToolsUtil;
|
||||
import config.SGlobalActivity;
|
||||
|
||||
|
@ -39,14 +40,16 @@ public class ActivityStateChangeHandler implements IEventHandler {
|
|||
}
|
||||
if(sGlobalActivity.getCanBuyRechargeId()!=0){
|
||||
user.getPlayerInfoManager().getRechargeInfo().putDyGoodsCanBuyTimes(sGlobalActivity.getCanBuyRechargeId(),1);
|
||||
BuyGoodsLogic.sendGiftGooodsIndication(uid);
|
||||
}
|
||||
}else if(state == ActivityType.CLOSE_STATE){
|
||||
List<SGlobalActivity> sGlobalActivities = SGlobalActivity.sGlobalActivityMapByType.getOrDefault(3, new ArrayList<>(0));
|
||||
List<SGlobalActivity> sGlobalActivities = SGlobalActivity.sGlobalActivityMapByOpenRules.getOrDefault(3, new ArrayList<>(0));
|
||||
sGlobalActivities.stream().filter(s->s.getOpenRules()[1] == activityId).forEach(s->{
|
||||
ActivityMission activityMissionWillOpen = user.getActivityManager().getActivityMissionMap().get(s.getId());
|
||||
if(activityMissionWillOpen!=null && activityMissionWillOpen.getActivityState() == ActivityType.UNOPEN_STATE){
|
||||
AbstractActivity abstractActivity = ActivityTypeEnum.getActicityType(s.getId());
|
||||
abstractActivity.setOpenState(user,ActivityType.OPEN_STATE);
|
||||
Poster.getPoster().dispatchEvent(new ActivityStateChangeEvent(uid,s.getId(),ActivityType.OPEN_STATE));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
|
@ -130,6 +130,7 @@ public class CumulationData {
|
|||
public Map<Integer,Integer> finishMissionTimes = new HashMap<>();//完成迷宫寻宝%品质%次
|
||||
public Map<Integer,Integer> loginTimesDay = new HashMap<>();//每日登陆次数
|
||||
public Map<Integer,Integer> servenGiftTimes = new HashMap<>();//每日登陆次数
|
||||
public Map<Integer,Integer> dailyChallengeMap = new HashMap<>();//每日挑战副本
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -764,6 +764,13 @@ public class CombatLogic {
|
|||
}
|
||||
});
|
||||
}
|
||||
if(teamId == GlobalsDef.EXPEDITION_TEAM){
|
||||
user.getPlayerInfoManager().getRechargeInfo().getBuyGoodsTimes().keySet().forEach(id->{
|
||||
for(int passId : SRechargeCommodityConfig.rechargeCommodityConfigMap.get(id).getPassiveSkill()) {
|
||||
passiveTeamskillEffect.add(passId);
|
||||
}
|
||||
});
|
||||
}
|
||||
user.getTeamPosManager().updatePassSkillTeamPos(teamId,passiveTeamskillEffect);
|
||||
passiveskillEffect.addAll(passiveTeamskillEffect);
|
||||
}else{
|
||||
|
|
|
@ -82,4 +82,5 @@ public enum GameEvent {
|
|||
EXPEDITION_TIMES,//完成猎妖之路节点
|
||||
|
||||
BUY_SEVEN_GIFT,//购买七日礼包
|
||||
DAILY_CHALLENGE,//日常副本挑战
|
||||
}
|
||||
|
|
|
@ -762,6 +762,13 @@ public class MissionLoigc {
|
|||
case SEVEN_GIFT_BUY:
|
||||
count = cumulationData.servenGiftTimes.get(missionSubType[0]);
|
||||
break;
|
||||
case FINISIN_DAILY_CHALLENGE_TIMES:
|
||||
if(missionSubType[0] == 0){
|
||||
count = (int)(cumulationData.dailyChallengeMap.values().stream().collect(Collectors.summarizingInt(x->x)).getSum());
|
||||
}else{
|
||||
count = cumulationData.dailyChallengeMap.get(missionSubType[0]);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
count = 0;
|
||||
break;
|
||||
|
|
|
@ -91,6 +91,7 @@ public enum MissionType {
|
|||
LUCKY_WHEELS_TIMES(83),//幸运探宝%次
|
||||
FINISH_EXPEDITION_HERO_TIMES(84),//完成猎妖之路次数达到
|
||||
SEVEN_GIFT_BUY(86),//购买7日狂欢福利礼包%s次七日狂欢积分
|
||||
FINISIN_DAILY_CHALLENGE_TIMES(87),//完成%s类型(0为不限类型)的日常副本%s次
|
||||
|
||||
;
|
||||
|
||||
|
@ -256,6 +257,8 @@ public enum MissionType {
|
|||
return FINISH_EXPEDITION_HERO_TIMES;
|
||||
case 86:
|
||||
return SEVEN_GIFT_BUY;
|
||||
case 87:
|
||||
return FINISIN_DAILY_CHALLENGE_TIMES;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -117,6 +117,7 @@ public class DataManagerDistributor {
|
|||
judges.put(MissionType.FINISH_EXPEDITION_HERO_TIMES,new ExpeditionManager());
|
||||
judges.put(MissionType.LOGIN_TIMES,new LoginTimeManager());
|
||||
judges.put(MissionType.SEVEN_GIFT_BUY,new SevenGiftManager());
|
||||
judges.put(MissionType.FINISIN_DAILY_CHALLENGE_TIMES,new FinishDailyChallengeManger());
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
package com.ljsd.jieling.logic.mission.data;
|
||||
|
||||
import com.ljsd.jieling.logic.dao.CumulationData;
|
||||
import com.ljsd.jieling.logic.mission.MissionType;
|
||||
|
||||
public class FinishDailyChallengeManger implements BaseDataManager{
|
||||
@Override
|
||||
public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) {
|
||||
int type = (int) parm[0];
|
||||
data.dailyChallengeMap.put(type,data.dailyChallengeMap.getOrDefault(type, 0)+1);
|
||||
return new CumulationData.Result(missionType);
|
||||
}
|
||||
}
|
|
@ -334,6 +334,11 @@ public class MissionEventDistributor {
|
|||
typeList.add(MissionType.SEVEN_GIFT_BUY);
|
||||
eventEnumListMap.put(GameEvent.BUY_SEVEN_GIFT,typeList);
|
||||
eventProcessor.put(GameEvent.BUY_SEVEN_GIFT,new CumulationDataEventProcessor());
|
||||
|
||||
typeList = new ArrayList<>();
|
||||
typeList.add(MissionType.FINISIN_DAILY_CHALLENGE_TIMES);
|
||||
eventEnumListMap.put(GameEvent.DAILY_CHALLENGE,typeList);
|
||||
eventProcessor.put(GameEvent.DAILY_CHALLENGE,new CumulationDataEventProcessor());
|
||||
}
|
||||
|
||||
public static final ThreadLocal<Map<GameMisionType, List<MissionStateChangeInfo>>> threadMissionChangeList =
|
||||
|
|
|
@ -61,6 +61,7 @@ public class SSpecialConfig implements BaseConfig {
|
|||
public static final String Gold_touch = "Gold_touch";//三个点金对应vip
|
||||
public static final String Gold_touch_refresh = "Gold_touch_refresh";//点金刷新时间
|
||||
public static final String GUILD_TECHNOLOGY_RETURN_PERCENT = "guild_technology_return_percent";//公会技能重置返还材料比例 实际百分比为填写数值/10000
|
||||
public static final String LOTTERY_ENERGY_COST = "lottery_energy_cost";//钻石抽积攒仙缘能量(原非酋气息)抽奖消耗
|
||||
@Override
|
||||
public void init() throws Exception {
|
||||
|
||||
|
|
Loading…
Reference in New Issue