Merge branch 'master' of http://60.1.1.230/backend/jieling_server
commit
d3158986b2
|
@ -105,7 +105,7 @@ public class CumulationData {
|
||||||
|
|
||||||
public Set<Integer> differentHeros = new HashSet<>();
|
public Set<Integer> differentHeros = new HashSet<>();
|
||||||
|
|
||||||
public int buyGenerStoreTimes;
|
public Map<Integer,Integer> buyStoreTimes = new HashMap<>();
|
||||||
|
|
||||||
public int givePresents ; //好友赠礼
|
public int givePresents ; //好友赠礼
|
||||||
|
|
||||||
|
@ -115,68 +115,12 @@ public class CumulationData {
|
||||||
|
|
||||||
public int consumeAction;//无尽消耗行动力
|
public int consumeAction;//无尽消耗行动力
|
||||||
|
|
||||||
|
public int takeFriendGifts;//领取好友赠礼次数
|
||||||
|
|
||||||
public Map<Integer,Integer> especialEquipStar = new HashMap<>();//法宝升到%s星级的数量为
|
public Map<Integer,Integer> especialEquipStar = new HashMap<>();//法宝升到%s星级的数量为
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//任务重置
|
|
||||||
public void reset(){
|
|
||||||
recruitmentRands=0;
|
|
||||||
buyGoldTimes =0;
|
|
||||||
buyStaminaTimes=0;
|
|
||||||
createEquips=0;
|
|
||||||
generalStoryTimes=0;
|
|
||||||
heroStoryTimes=0;
|
|
||||||
levelStoryTimes=0;
|
|
||||||
heroLevleTimes=0;
|
|
||||||
takeAdventurerewardTimes=0;
|
|
||||||
arenaFightsuccesTimes=0;
|
|
||||||
finsihDayilyTimes=0;
|
|
||||||
copyMaxLevel=0;
|
|
||||||
copyStoryTimes=0;
|
|
||||||
elementRands =0;
|
|
||||||
heroStoryPlayTimes=0;
|
|
||||||
invasionbossPlayTimes=0;
|
|
||||||
fastAdventurerewardTimes=0;
|
|
||||||
arenaRank=0;
|
|
||||||
exploreFight.clear();
|
|
||||||
storyFightInfo.clear();
|
|
||||||
heroLevleCountMap.clear();
|
|
||||||
levlePassMap.clear();
|
|
||||||
senvenScores = 0;
|
|
||||||
heroBreakTimes = 0;
|
|
||||||
takeChapterTimes = 0;
|
|
||||||
heroUpStarTimes = 0;
|
|
||||||
takeOnlineRewardTimes = 0;
|
|
||||||
takeSenvenLoinRewardTimes = 0;
|
|
||||||
takeDailyBoxTimes = 0;
|
|
||||||
wearEquipTimes = 0;
|
|
||||||
synthesisHeroStarTimesMap.clear();
|
|
||||||
clearArray(sEquipQualityCount);
|
|
||||||
clearArray(heroQualityCount);
|
|
||||||
consumerStamina=0;
|
|
||||||
differentHeros.clear();
|
|
||||||
heroUpStarTimesMap.clear();
|
|
||||||
heroInTeamNums=0;
|
|
||||||
buyGenerStoreTimes=0;
|
|
||||||
heroUpSomeStarTimesMap.clear();
|
|
||||||
givePresents=0;
|
|
||||||
friendNums=0;
|
|
||||||
monsterAttackTimes = 0;
|
|
||||||
toBeStronger = 0;
|
|
||||||
consumeAction = 0;
|
|
||||||
especialEquipStar.clear();
|
|
||||||
familyFightCount = 0;
|
|
||||||
findStar=0;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void clearArray(int[] source){
|
|
||||||
for(int i =0;i<source.length;i++){
|
|
||||||
source[i]=0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public Result updateData(MissionType missionType, Object...parm) throws Exception {
|
public Result updateData(MissionType missionType, Object...parm) throws Exception {
|
||||||
return DataManagerDistributor.updateData(this, missionType,parm);
|
return DataManagerDistributor.updateData(this, missionType,parm);
|
||||||
}
|
}
|
||||||
|
|
|
@ -575,6 +575,7 @@ public class FriendLogic {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
StringBuilder reward=new StringBuilder();
|
StringBuilder reward=new StringBuilder();
|
||||||
|
int takeTimes = 0;
|
||||||
if (type ==1){ //领取一个人
|
if (type ==1){ //领取一个人
|
||||||
if (!friends.contains(friendId)) {
|
if (!friends.contains(friendId)) {
|
||||||
MessageUtil.sendErrorResponse(iSession, 0, msgId, "没有该好友");
|
MessageUtil.sendErrorResponse(iSession, 0, msgId, "没有该好友");
|
||||||
|
@ -589,6 +590,7 @@ public class FriendLogic {
|
||||||
friendManager.updateHaveRewardMap(friendId,2);
|
friendManager.updateHaveRewardMap(friendId,2);
|
||||||
playerInfoManager.updateVipPrivilage(STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting().getMaxEnergyGet(),1);
|
playerInfoManager.updateVipPrivilage(STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting().getMaxEnergyGet(),1);
|
||||||
receieveFriends.add(friendId);
|
receieveFriends.add(friendId);
|
||||||
|
takeTimes++;
|
||||||
}else{
|
}else{
|
||||||
for (Integer friend : friends) {
|
for (Integer friend : friends) {
|
||||||
if (haveRewardMap.containsKey(friend) && haveRewardMap.get(friend) != 1) {
|
if (haveRewardMap.containsKey(friend) && haveRewardMap.get(friend) != 1) {
|
||||||
|
@ -602,6 +604,7 @@ public class FriendLogic {
|
||||||
friendManager.updateHaveRewardMap(friend,2);
|
friendManager.updateHaveRewardMap(friend,2);
|
||||||
reward.append(SSpecialConfig.getStringValue(SSpecialConfig.Friend_Gift));
|
reward.append(SSpecialConfig.getStringValue(SSpecialConfig.Friend_Gift));
|
||||||
receieveFriends.add(friend);
|
receieveFriends.add(friend);
|
||||||
|
takeTimes++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -610,6 +613,7 @@ public class FriendLogic {
|
||||||
MessageUtil.sendErrorResponse(iSession, 0, msgId, "已领取赠礼");
|
MessageUtil.sendErrorResponse(iSession, 0, msgId, "已领取赠礼");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
user.getUserMissionManager().onGameEvent(user,GameEvent.TAKE_FRIEND_GIFT,takeTimes);
|
||||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, StringUtil.parseFiledInt2(rewardStr), BIReason.FRIEND_GIVE);
|
CommonProto.Drop.Builder drop = ItemUtil.drop(user, StringUtil.parseFiledInt2(rewardStr), BIReason.FRIEND_GIVE);
|
||||||
PlayerInfoProto.FriendTakeHeartResponse friendTakeHeartResponse = PlayerInfoProto.FriendTakeHeartResponse
|
PlayerInfoProto.FriendTakeHeartResponse friendTakeHeartResponse = PlayerInfoProto.FriendTakeHeartResponse
|
||||||
.newBuilder().setDrop(drop).addAllFriendId(receieveFriends)
|
.newBuilder().setDrop(drop).addAllFriendId(receieveFriends)
|
||||||
|
|
|
@ -66,6 +66,8 @@ public enum GameEvent {
|
||||||
|
|
||||||
FIND_STAR,//占星
|
FIND_STAR,//占星
|
||||||
|
|
||||||
|
TAKE_FRIEND_GIFT,//领取好友赠礼
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -312,12 +312,12 @@ public class MissionLoigc {
|
||||||
Map<GameMisionType, List<MissionStateChangeInfo>> gameMisionTypeListMap = userMissionManager.onGameEvent(user, GameEvent.DAILY_MISSION_REWARD, missionId);
|
Map<GameMisionType, List<MissionStateChangeInfo>> gameMisionTypeListMap = userMissionManager.onGameEvent(user, GameEvent.DAILY_MISSION_REWARD, missionId);
|
||||||
missionStateChangeInfos = gameMisionTypeListMap.get(GameMisionType.DAILYMISSION);
|
missionStateChangeInfos = gameMisionTypeListMap.get(GameMisionType.DAILYMISSION);
|
||||||
SDailyTasksConfig sDailyTasksConfig = SDailyTasksConfig.getSDailyTasksConfigById(missionId);
|
SDailyTasksConfig sDailyTasksConfig = SDailyTasksConfig.getSDailyTasksConfigById(missionId);
|
||||||
if(sDailyTasksConfig.getType() == MissionType.FINSIH_DAYILY_TIMES.getMissionTypeValue() && missionStateChangeInfos !=null){
|
if(sDailyTasksConfig.getType() == MissionType.FINSIH_DAYILY_TIMES.getMissionTypeValue() && missionStateChangeInfos !=null && !missionStateChangeInfos.isEmpty()){
|
||||||
user.getUserMissionManager().onGameEvent(user,GameEvent.TAKE_DAILY_BOX_REWARD);
|
user.getUserMissionManager().onGameEvent(user,GameEvent.TAKE_DAILY_BOX_REWARD);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(type == GameMisionType.BEGINNERMISSION.getType()){ //日常 任务
|
if(type == GameMisionType.BEGINNERMISSION.getType()){ //新手 任务
|
||||||
Map<GameMisionType, List<MissionStateChangeInfo>> gameMisionTypeListMap = userMissionManager.onGameEvent(user, GameEvent.BEGINNER_MISSION_REWARD, missionId);
|
Map<GameMisionType, List<MissionStateChangeInfo>> gameMisionTypeListMap = userMissionManager.onGameEvent(user, GameEvent.BEGINNER_MISSION_REWARD, missionId);
|
||||||
missionStateChangeInfos = gameMisionTypeListMap.get(GameMisionType.BEGINNERMISSION);
|
missionStateChangeInfos = gameMisionTypeListMap.get(GameMisionType.BEGINNERMISSION);
|
||||||
}
|
}
|
||||||
|
@ -591,7 +591,10 @@ public class MissionLoigc {
|
||||||
count = cumulationData.heroInTeamNums;
|
count = cumulationData.heroInTeamNums;
|
||||||
break;
|
break;
|
||||||
case BUY_GROCERY_TIMES:
|
case BUY_GROCERY_TIMES:
|
||||||
count = cumulationData.buyGenerStoreTimes;
|
num = cumulationData.buyStoreTimes.get(missionSubType[0]);
|
||||||
|
if(num!=null){
|
||||||
|
count = num;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case FRIEND_NUMS:
|
case FRIEND_NUMS:
|
||||||
count = cumulationData.friendNums;
|
count = cumulationData.friendNums;
|
||||||
|
@ -626,6 +629,9 @@ public class MissionLoigc {
|
||||||
case ESPECIAL_EQUIP:
|
case ESPECIAL_EQUIP:
|
||||||
count = cumulationData.especialEquipStar.get(missionSubType[0]);
|
count = cumulationData.especialEquipStar.get(missionSubType[0]);
|
||||||
break;
|
break;
|
||||||
|
case TAKE_FRIEND_GIFT:
|
||||||
|
count = cumulationData.takeFriendGifts;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
count = 0;
|
count = 0;
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -69,7 +69,7 @@ public enum MissionType {
|
||||||
|
|
||||||
HERO_IN_TEAM_NUMS(51), // 上阵卡牌数量
|
HERO_IN_TEAM_NUMS(51), // 上阵卡牌数量
|
||||||
|
|
||||||
BUY_GROCERY_TIMES(52),//杂货店购买次数:%s
|
BUY_GROCERY_TIMES(52),//某商店购买次数
|
||||||
FRIEND_NUMS(53),//拥有好友的个数:%:%s
|
FRIEND_NUMS(53),//拥有好友的个数:%:%s
|
||||||
GIVE_FRIEND_STAMIN_TIMES(54),//赠送好友体力次数:%s
|
GIVE_FRIEND_STAMIN_TIMES(54),//赠送好友体力次数:%s
|
||||||
HERO_UP_SOME_STAR_TIMES(55),//进阶x星卡牌个数达到:%s
|
HERO_UP_SOME_STAR_TIMES(55),//进阶x星卡牌个数达到:%s
|
||||||
|
@ -81,7 +81,8 @@ public enum MissionType {
|
||||||
ENDLESS_CONSUME_ACTION(60),//无尽消耗行动力
|
ENDLESS_CONSUME_ACTION(60),//无尽消耗行动力
|
||||||
FAMILY_FIGHT_ATTACK(61),//公会战进攻次数
|
FAMILY_FIGHT_ATTACK(61),//公会战进攻次数
|
||||||
ESPECIAL_EQUIP(62),//拥有%s星级法宝的数量为:%s
|
ESPECIAL_EQUIP(62),//拥有%s星级法宝的数量为:%s
|
||||||
FIND_STAR(65)//占星
|
FIND_STAR(65),//占星
|
||||||
|
TAKE_FRIEND_GIFT(66),//领取好友友情点
|
||||||
;
|
;
|
||||||
|
|
||||||
private int missionType;
|
private int missionType;
|
||||||
|
@ -222,6 +223,8 @@ public enum MissionType {
|
||||||
return ESPECIAL_EQUIP;
|
return ESPECIAL_EQUIP;
|
||||||
case 65:
|
case 65:
|
||||||
return FIND_STAR;
|
return FIND_STAR;
|
||||||
|
case 66:
|
||||||
|
return TAKE_FRIEND_GIFT;
|
||||||
default:
|
default:
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,8 +17,13 @@ public class BuyGoodsManager implements BaseDataManager {
|
||||||
}else if(missionType == MissionType.BUY_STAMINA_TIMES && itemId == Global.STAMINA){
|
}else if(missionType == MissionType.BUY_STAMINA_TIMES && itemId == Global.STAMINA){
|
||||||
data.buyStaminaTimes = data.buyStaminaTimes + itemNum;
|
data.buyStaminaTimes = data.buyStaminaTimes + itemNum;
|
||||||
return new CumulationData.Result(missionType);
|
return new CumulationData.Result(missionType);
|
||||||
}else if(missionType == MissionType.BUY_GROCERY_TIMES && storeType == StoreType.GENERAL_STORE.getType()){
|
}else if(missionType == MissionType.BUY_GROCERY_TIMES){
|
||||||
data.buyGenerStoreTimes = data.buyGenerStoreTimes + itemNum;
|
Integer nums = data.buyStoreTimes.get(storeType);
|
||||||
|
if(nums == null){
|
||||||
|
nums=0;
|
||||||
|
}
|
||||||
|
nums+=itemNum;
|
||||||
|
data.buyStoreTimes.put(storeType,nums);
|
||||||
return new CumulationData.Result(missionType);
|
return new CumulationData.Result(missionType);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|
|
@ -103,6 +103,8 @@ public class DataManagerDistributor {
|
||||||
judges.put(MissionType.FAMILY_FIGHT_ATTACK,new FamilyFightManager());
|
judges.put(MissionType.FAMILY_FIGHT_ATTACK,new FamilyFightManager());
|
||||||
judges.put(MissionType.FIND_STAR,new FindStarManager());
|
judges.put(MissionType.FIND_STAR,new FindStarManager());
|
||||||
|
|
||||||
|
judges.put(MissionType.TAKE_FRIEND_GIFT,new TakeFriendGiftTimesManager());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,8 +10,9 @@ public class FinishDailyManager implements BaseDataManager{
|
||||||
int missionId = (int) parm[0];
|
int missionId = (int) parm[0];
|
||||||
if(SDailyTasksConfig.getSDailyTasksConfigById(missionId).getType()!= MissionType.FINSIH_DAYILY_TIMES.getMissionTypeValue()){
|
if(SDailyTasksConfig.getSDailyTasksConfigById(missionId).getType()!= MissionType.FINSIH_DAYILY_TIMES.getMissionTypeValue()){
|
||||||
data.finsihDayilyTimes++;
|
data.finsihDayilyTimes++;
|
||||||
|
return new CumulationData.Result(missionType);
|
||||||
}
|
}
|
||||||
|
return null;
|
||||||
|
|
||||||
return new CumulationData.Result(missionType);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
package com.ljsd.jieling.logic.mission.data;
|
||||||
|
|
||||||
|
import com.ljsd.jieling.logic.dao.CumulationData;
|
||||||
|
import com.ljsd.jieling.logic.mission.MissionType;
|
||||||
|
|
||||||
|
public class TakeFriendGiftTimesManager implements BaseDataManager{
|
||||||
|
@Override
|
||||||
|
public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) {
|
||||||
|
data.takeFriendGifts+=(int)(parm[0]);
|
||||||
|
return new CumulationData.Result(missionType);
|
||||||
|
}
|
||||||
|
}
|
|
@ -269,6 +269,11 @@ public class MissionEventDistributor {
|
||||||
eventEnumListMap.put(GameEvent.FIND_STAR,typeList);
|
eventEnumListMap.put(GameEvent.FIND_STAR,typeList);
|
||||||
eventProcessor.put(GameEvent.FIND_STAR,new CumulationDataEventProcessor());
|
eventProcessor.put(GameEvent.FIND_STAR,new CumulationDataEventProcessor());
|
||||||
|
|
||||||
|
typeList = new ArrayList<>();
|
||||||
|
typeList.add(MissionType.TAKE_FRIEND_GIFT);
|
||||||
|
eventEnumListMap.put(GameEvent.TAKE_FRIEND_GIFT,typeList);
|
||||||
|
eventProcessor.put(GameEvent.TAKE_FRIEND_GIFT,new CumulationDataEventProcessor());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final ThreadLocal<Map<GameMisionType, List<MissionStateChangeInfo>>> threadMissionChangeList =
|
private static final ThreadLocal<Map<GameMisionType, List<MissionStateChangeInfo>>> threadMissionChangeList =
|
||||||
|
|
Loading…
Reference in New Issue