Merge branch 'master' of http://60.1.1.230/backend/jieling_server
commit
9fa5bf9b39
|
@ -51,7 +51,7 @@ public class STreasureTaskConfig implements BaseConfig {
|
|||
treasureTaskConfigByActivityMap.get(activityId).add(sTreasureTaskConfig);
|
||||
sTreasureTaskConfigListByTypeMapTmp.get(sTreasureTaskConfig.getTaskType()).add(sTreasureTaskConfig);
|
||||
if(sTreasureTaskConfig.getTaskType() == MissionType.SENVER_HAPPY.getMissionTypeValue()){
|
||||
|
||||
sTreasureSevenTaskConfigByActivityMapTmp.put(sTreasureTaskConfig.getActivityId(),sTreasureTaskConfig);
|
||||
}
|
||||
}
|
||||
sTreasureTaskConfigListByActivityMap = treasureTaskConfigByActivityMap;
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
package com.ljsd.jieling.core;
|
||||
|
||||
import com.ljsd.GameApplication;
|
||||
import com.ljsd.jieling.config.SChallengeConfig;
|
||||
import com.ljsd.jieling.config.SChallengeMapConfig;
|
||||
import com.ljsd.jieling.config.SGlobalSystemConfig;
|
||||
import com.ljsd.jieling.db.mongo.MongoUtil;
|
||||
import com.ljsd.jieling.globals.Global;
|
||||
|
@ -38,6 +40,15 @@ public class HandlerLogicThread extends Thread{
|
|||
whiteMsg.add(MessageTypeProto.MessageType.FIGHT_END_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.MAP_OUT_REQUEST_VALUE);
|
||||
|
||||
whiteMsg.add(MessageTypeProto.MessageType.MAP_TOWER_CALL_CHIEF_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.MAP_TOWER_USEBOMB_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.MAP_TOWER_USEBUFF_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.ENDLESS_MAP_RESET_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.ENDLESS_MAP_SIGN_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.ENDLESS_EXECUTION_REFRESH_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.ENDLESS_OUT_CONSUME_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.ENDLESS_MAP_HERO_INFO_REQUEST_VALUE);
|
||||
|
||||
whiteMsg.add(MessageTypeProto.MessageType.LOGIN_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.GET_PLAYERINFO_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.GET_ITEMINFO_REQUEST_VALUE);
|
||||
|
@ -58,6 +69,9 @@ public class HandlerLogicThread extends Thread{
|
|||
whiteMsg.add(MessageTypeProto.MessageType.GET_RINGFIRE_INFO_REQUEST_VALUE);
|
||||
|
||||
whiteMsg.add(MessageTypeProto.MessageType.BUY_STORE_ITEM_REQUEST_VALUE);
|
||||
|
||||
whiteMsg.add(MessageTypeProto.MessageType.GET_MISSION_REQUEST_VALUE);
|
||||
whiteMsg.add(MessageTypeProto.MessageType.REFRESH_ITEM_NUM_REQUEST_VALUE);
|
||||
//日后删除
|
||||
whiteMsg.add(MessageTypeProto.MessageType.GET_CHAT_MESSAGE_REQUEST_VALUE);
|
||||
|
||||
|
@ -65,6 +79,7 @@ public class HandlerLogicThread extends Thread{
|
|||
|
||||
|
||||
|
||||
|
||||
}
|
||||
public ConcurrentLinkedQueue<PacketNetData> handlerLinkedQueue = new ConcurrentLinkedQueue();
|
||||
|
||||
|
@ -101,11 +116,11 @@ public class HandlerLogicThread extends Thread{
|
|||
MessageUtil.sendErrorResponse(session,0,msgId+1,"funciton not");
|
||||
return;
|
||||
}
|
||||
/* b = checkIsPermit(msgId, session);
|
||||
b = checkIsPermit(msgId, session);
|
||||
if(!b){
|
||||
MessageUtil.sendErrorResponse(session,0,msgId+1,"在地图探索中,不可以操作");
|
||||
return;
|
||||
}*/
|
||||
}
|
||||
}
|
||||
long curTimeMillis = System.currentTimeMillis();
|
||||
if(msgId != MessageTypeProto.MessageType.GET_CHAT_MESSAGE_REQUEST_VALUE){
|
||||
|
@ -133,6 +148,13 @@ public class HandlerLogicThread extends Thread{
|
|||
int uid = session.getUid();
|
||||
User user = UserManager.getUser(uid);
|
||||
int curMapId = user.getMapManager().getCurMapId();
|
||||
|
||||
if(curMapId!=0 && msgId == MessageTypeProto.MessageType.TEAM_POS_SAVE_REQUEST_VALUE){
|
||||
SChallengeConfig sChallengeConfig = SChallengeConfig.sChallengeConfigs.get(curMapId);
|
||||
if(sChallengeConfig.getType()==4){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
if(curMapId!=0 && !whiteMsg.contains(msgId)){
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -158,6 +158,12 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityEndOnMySelf(User user) throws Exception {
|
||||
|
||||
}
|
||||
|
||||
|
||||
public List<CommonProto.ActivityInfo.MissionInfo> getAllMissInfo(ActivityMission activityMission) {
|
||||
return getAllMissInfo(activityMission, null);
|
||||
}
|
||||
|
|
|
@ -70,6 +70,9 @@ public class ActivityLogic {
|
|||
Map<Integer, SGlobalActivity> sGlobalActivityMap = SGlobalActivity.getsGlobalActivityMap();
|
||||
for (SGlobalActivity sGlobalActivity : sGlobalActivityMap.values()) {
|
||||
int time = sGlobalActivity.getTime();
|
||||
if(ActivityTypeEnum.getActicityCacheSize()==0){//init cache
|
||||
ActivityTypeEnum.getActicityType(sGlobalActivity.getId());
|
||||
}
|
||||
if (time == 2) {
|
||||
continue;
|
||||
}
|
||||
|
@ -144,6 +147,7 @@ public class ActivityLogic {
|
|||
ActivityMission activityMission = activityMissionMap.get(activityId);
|
||||
if (activityMission != null) {
|
||||
activityManager.removeActivity(activityId);
|
||||
ActivityTypeEnum.getActicityType(sGlobalActivity.getId()).onActivityEndOnMySelf(user);
|
||||
LOGGER.info("the uid={},remove the activity id ={}", user.getId(), activityId);
|
||||
if (builder != null) {
|
||||
builder.addCloseActivityId(activityId);
|
||||
|
@ -162,6 +166,7 @@ public class ActivityLogic {
|
|||
ActivityMission activityMission = activityMissionMap.get(activityId);
|
||||
if (activityMission != null) {
|
||||
activityManager.removeActivity(activityId);
|
||||
ActivityTypeEnum.getActicityType(sGlobalActivity.getId()).onActivityEndOnMySelf(user);
|
||||
LOGGER.info("the uid={},remove the activity id ={}", user.getId(), activityId);
|
||||
if (builder != null) {
|
||||
builder.addCloseActivityId(activityId);
|
||||
|
@ -937,7 +942,7 @@ public class ActivityLogic {
|
|||
|
||||
int start = 0;
|
||||
int maxSize = SGameSetting.getGameSetting().getShowRank();
|
||||
List<CommonProto.ExpertInfo> expertInfos = new ArrayList<>(maxSize);
|
||||
List<CommonProto.ExpertInfo> expertInfos = new LinkedList<>();
|
||||
Set<ZSetOperations.TypedTuple<String>> rankInfo = RedisUtil.getInstence().getZsetreverseRangeWithScores(RedisKey.FORCE_RANK, Integer.toString(acitvityId), 0, maxSize - 1);
|
||||
for (ZSetOperations.TypedTuple<String> item : rankInfo) {
|
||||
String value = item.getValue();
|
||||
|
@ -949,17 +954,21 @@ public class ActivityLogic {
|
|||
CommonProto.ExpertInfo personInfoBuild = CommonProto.ExpertInfo.newBuilder()
|
||||
.setName(playerInfoManager.getNickName())
|
||||
.setScore(score)
|
||||
.setLevel(playerInfoManager.getLevel())
|
||||
.setHeadFrame(playerInfoManager.getHeadFrame())
|
||||
.setHead(0)
|
||||
.setRank(++start)
|
||||
.build();
|
||||
expertInfos.add(personInfoBuild);
|
||||
}
|
||||
|
||||
if (rankInfo.size() > 2 * maxSize) {
|
||||
//删除多余数据 预留一些 长度maxSize
|
||||
String key = RedisKey.getKey(RedisKey.EXPERT_RANK, String.valueOf(acitvityId), false);
|
||||
int size = RedisUtil.getInstence().getZsetSize(key);
|
||||
RedisUtil.getInstence().removeZSetRangeByRank(key, maxSize, size);
|
||||
}
|
||||
//策划要全部数据
|
||||
// if (rankInfo.size() > 2 * maxSize) {
|
||||
// //删除多余数据 预留一些 长度maxSize
|
||||
// String key = RedisKey.getKey(RedisKey.EXPERT_RANK, String.valueOf(acitvityId), false);
|
||||
// int size = RedisUtil.getInstence().getZsetSize(key);
|
||||
// RedisUtil.getInstence().removeZSetRangeByRank(key, maxSize, size);
|
||||
// }
|
||||
|
||||
int uid = session.getUid();
|
||||
int score = RedisUtil.getInstence().getZSetScore(RedisKey.EXPERT_RANK, Integer.toString(acitvityId), Integer.toString(uid)).intValue();
|
||||
|
@ -967,10 +976,10 @@ public class ActivityLogic {
|
|||
|
||||
PlayerInfoProto.GetExpertInfoResponse buildResponse = PlayerInfoProto.GetExpertInfoResponse.newBuilder()
|
||||
.setMyRank(myRank)
|
||||
.setMyScore(score)
|
||||
.addAllExpert(expertInfos)
|
||||
.setMyScore(score)
|
||||
.build();
|
||||
MessageUtil.sendMessage(session, 1, MessageTypeProto.MessageType.GETF_EXPERT_RANK_INFO_REQUEST_VALUE, buildResponse, true);
|
||||
MessageUtil.sendMessage(session, 1, MessageTypeProto.MessageType.GETF_EXPERT_RANK_INFO_RESPONSE_VALUE, buildResponse, true);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -41,7 +41,6 @@ public enum ActivityTypeEnum {
|
|||
}
|
||||
|
||||
public AbstractActivity toActivity(int id) {
|
||||
|
||||
if (acticityCache.containsKey(id)) {
|
||||
return acticityCache.get(id);
|
||||
}
|
||||
|
@ -90,6 +89,10 @@ public enum ActivityTypeEnum {
|
|||
// }
|
||||
}
|
||||
|
||||
public static Integer getActicityCacheSize() {
|
||||
return acticityCache.size();
|
||||
}
|
||||
|
||||
public int getType() {
|
||||
return type;
|
||||
}
|
||||
|
|
|
@ -1,9 +1,18 @@
|
|||
package com.ljsd.jieling.logic.activity;
|
||||
|
||||
import com.ljsd.jieling.config.SErrorCodeEerverConfig;
|
||||
import com.ljsd.jieling.config.SGlobalActivity;
|
||||
import com.ljsd.jieling.config.SSevenDaysScore;
|
||||
import com.ljsd.jieling.config.STreasureTaskConfig;
|
||||
import com.ljsd.jieling.core.GlobalsDef;
|
||||
import com.ljsd.jieling.globals.Global;
|
||||
import com.ljsd.jieling.logic.dao.ActivityMission;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.logic.mail.MailLogic;
|
||||
import com.ljsd.jieling.logic.mission.GameEvent;
|
||||
import com.ljsd.jieling.logic.mission.main.TreasureMissionType;
|
||||
import com.ljsd.jieling.util.ItemUtil;
|
||||
import com.ljsd.jieling.util.MessageUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
|
@ -25,4 +34,25 @@ public class DefaultEmptyActivity extends AbstractActivity{
|
|||
user.getActivityManager().setSenvenTime(endTime);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityEndOnMySelf(User user) throws Exception {
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||
if(sGlobalActivity.getType() == ActivityType.SERVERHAPPY){
|
||||
STreasureTaskConfig sTreasureTaskConfig = STreasureTaskConfig.sTreasureSevenTaskConfigByActivityMap.get(id);
|
||||
TreasureMissionType sevenHappyMissionType = user.getUserMissionManager().getSevenHappyMissionType();
|
||||
if(!sevenHappyMissionType.getRewardedMissionIds().get(sTreasureTaskConfig.getId())){
|
||||
int senvenScores = user.getUserMissionManager().getSevenHappyCumulationData().senvenScores;
|
||||
sevenHappyMissionType.getDoingMissionIds().remove(sTreasureTaskConfig.getId());
|
||||
sevenHappyMissionType.getFinishMissionIds().remove(sTreasureTaskConfig.getId());
|
||||
sevenHappyMissionType.getRewardedMissionIds().set(sTreasureTaskConfig.getId());
|
||||
user.getUserMissionManager().setSevenHappyMissionType(sevenHappyMissionType);
|
||||
SSevenDaysScore sSevenDaysScore = SSevenDaysScore.SSevenDaysScoreByActivityIdAndScoreMap.get(id).get(senvenScores);
|
||||
String mailReward = ItemUtil.getMailReward(sSevenDaysScore.getReward());
|
||||
String title=SErrorCodeEerverConfig.getI18NMessage("opencarnival_activity_"+id+"_title");
|
||||
String content = SErrorCodeEerverConfig.getI18NMessage("opencarnival_activity_"+id+"_txt");
|
||||
MailLogic.getInstance().sendMail(user.getId(),title,content,mailReward,(int)(System.currentTimeMillis()/1000), Global.MAIL_EFFECTIVE_TIME);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -42,6 +42,8 @@ public interface IActivity {
|
|||
*/
|
||||
void onActivityEnd() throws Exception;
|
||||
|
||||
public void onActivityEndOnMySelf(User user) throws Exception;
|
||||
|
||||
List<CommonProto.ActivityInfo.MissionInfo> getAllMissInfo(ActivityMission activityMission, Set<Integer> filter);
|
||||
|
||||
}
|
||||
|
|
|
@ -16,10 +16,13 @@ class RechargeSumDayActivity extends AbstractActivity {
|
|||
}
|
||||
|
||||
@Override
|
||||
public void onResume(User user) throws Exception {
|
||||
public void onResume(User user) {
|
||||
ActivityManager activityManager = user.getActivityManager();
|
||||
ActivityMission activityMission = activityManager.getActivityMissionMap().get(id);
|
||||
activityMission.setValue(0);
|
||||
if (activityMission.getValue() == SActivityRewardConfig.getsActivityRewardConfigByActivityId(id).size()) {
|
||||
activityMission.initMissionInfo(id);
|
||||
return;
|
||||
}
|
||||
int missionId = SActivityRewardConfig.getRechargeDaySum().get(activityMission.getValue() + 1);
|
||||
if (user.getPlayerInfoManager().getRechargedaily() > SActivityRewardConfig.getsActivityRewardConfigByMissionId(missionId).getValues()[0][0]) {
|
||||
activityMission.setValue(activityMission.getValue() + 1);
|
||||
|
@ -51,7 +54,7 @@ class RechargeSumDayActivity extends AbstractActivity {
|
|||
boolean checkValue(ISession session, SActivityRewardConfig sActivityRewardConfig, ActivityProgressInfo activityProgressInfo) throws Exception {
|
||||
int[][] values = sActivityRewardConfig.getValues();
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
int value = user.getActivityManager().getActivityMissionMap().get(sActivityRewardConfig.getActivityId()).getValue()+1;
|
||||
int value = user.getActivityManager().getActivityMissionMap().get(sActivityRewardConfig.getActivityId()).getValue() + 1;
|
||||
if (value < values[0][1]) {
|
||||
MessageUtil.sendErrorResponse(session, 0, rewardResponseValue, "value illegality");
|
||||
return false;
|
||||
|
|
|
@ -405,8 +405,12 @@ public class PlayerLogic {
|
|||
return;
|
||||
}
|
||||
STreasureTaskConfig sTreasureTaskConfig = STreasureTaskConfig.sTreasureSevenTaskConfigByActivityMap.get(treasureActivityId);
|
||||
int senvenScores = user.getUserMissionManager().getSevenHappyCumulationData().senvenScores;
|
||||
TreasureMissionType sevenHappyMissionType = user.getUserMissionManager().getSevenHappyMissionType();
|
||||
if(sevenHappyMissionType.getRewardedMissionIds().get(sTreasureTaskConfig.getId())){
|
||||
MessageUtil.sendErrorResponse(iSession,0,msgId,"奖励已领取");
|
||||
return;
|
||||
}
|
||||
int senvenScores = user.getUserMissionManager().getSevenHappyCumulationData().senvenScores;
|
||||
sevenHappyMissionType.getDoingMissionIds().remove(sTreasureTaskConfig.getId());
|
||||
sevenHappyMissionType.getFinishMissionIds().remove(sTreasureTaskConfig.getId());
|
||||
sevenHappyMissionType.getRewardedMissionIds().set(sTreasureTaskConfig.getId());
|
||||
|
|
Loading…
Reference in New Issue