任务修改

lvxinran 2019-09-14 12:26:00 +08:00
parent fb8a4bcc70
commit d5a202d28e
10 changed files with 60 additions and 2 deletions

View File

@ -91,6 +91,8 @@ public class CumulationData {
public int takeDailyBoxTimes;// 领取日常任务宝箱奖励次数达到 public int takeDailyBoxTimes;// 领取日常任务宝箱奖励次数达到
public int wearEquipTimes;// 妖灵师穿戴装备件数达到 public int wearEquipTimes;// 妖灵师穿戴装备件数达到
public int toBeStronger;//我要变强 public int toBeStronger;//我要变强
public int familyFightCount;//公会战进攻次数
public int findStar;//占星次数
public Map<Integer,Integer> synthesisHeroStarTimesMap = new HashMap<>();// 碎片合成%s星妖灵师次数达到 public Map<Integer,Integer> synthesisHeroStarTimesMap = new HashMap<>();// 碎片合成%s星妖灵师次数达到
public Map<Integer,Integer> heroUpStarTimesMap = new HashMap<>();//将妖灵师%s进阶次数达到 public Map<Integer,Integer> heroUpStarTimesMap = new HashMap<>();//将妖灵师%s进阶次数达到
@ -164,6 +166,8 @@ public class CumulationData {
toBeStronger = 0; toBeStronger = 0;
consumeAction = 0; consumeAction = 0;
especialEquipStar.clear(); especialEquipStar.clear();
familyFightCount = 0;
findStar=0;
} }
private void clearArray(int[] source){ private void clearArray(int[] source){

View File

@ -16,6 +16,7 @@ import com.ljsd.jieling.logic.fight.CheckFight;
import com.ljsd.jieling.logic.fight.FightType; import com.ljsd.jieling.logic.fight.FightType;
import com.ljsd.jieling.logic.hero.HeroAttributeEnum; import com.ljsd.jieling.logic.hero.HeroAttributeEnum;
import com.ljsd.jieling.logic.hero.HeroLogic; import com.ljsd.jieling.logic.hero.HeroLogic;
import com.ljsd.jieling.logic.mission.GameEvent;
import com.ljsd.jieling.network.session.ISession; import com.ljsd.jieling.network.session.ISession;
import com.ljsd.jieling.protocols.CommonProto; import com.ljsd.jieling.protocols.CommonProto;
import com.ljsd.jieling.protocols.Family; import com.ljsd.jieling.protocols.Family;
@ -477,6 +478,7 @@ public class GuildFightLogic {
} }
redisUtil.putMapEntry(RedisKey.FAMILY_FIGHT_CAL_STAR,String.valueOf(attackGuildId),String.valueOf(defendBuildId),haveGotStar+getStar); redisUtil.putMapEntry(RedisKey.FAMILY_FIGHT_CAL_STAR,String.valueOf(attackGuildId),String.valueOf(defendBuildId),haveGotStar+getStar);
Family.FamilyFightAttackResponse response = Family.FamilyFightAttackResponse.newBuilder().setResult(fightResult[0]).setStarCount(getStar).setData(fightData).build(); Family.FamilyFightAttackResponse response = Family.FamilyFightAttackResponse.newBuilder().setResult(fightResult[0]).setStarCount(getStar).setData(fightData).build();
userAttack.getUserMissionManager().onGameEvent(userAttack, GameEvent.FAMILY_FIGHT_ATTACK);
MessageUtil.sendMessage(session, 1, messageType.getNumber(), response, true); MessageUtil.sendMessage(session, 1, messageType.getNumber(), response, true);
} }

View File

@ -541,6 +541,7 @@ public class ItemLogic {
HeroInfoProto.SoulRandResponse.Builder builder = HeroInfoProto.SoulRandResponse.newBuilder(); HeroInfoProto.SoulRandResponse.Builder builder = HeroInfoProto.SoulRandResponse.newBuilder();
builder.setDrop(drop); builder.setDrop(drop);
builder.setPos(currentPool); builder.setPos(currentPool);
user.getUserMissionManager().onGameEvent(user,GameEvent.FIND_STAR,time);
MessageUtil.sendMessage(session, 1, MessageTypeProto.MessageType.SOUL_RAND_EQUIP_RESPONSE_VALUE, builder.build(), true); MessageUtil.sendMessage(session, 1, MessageTypeProto.MessageType.SOUL_RAND_EQUIP_RESPONSE_VALUE, builder.build(), true);
} }

View File

@ -58,6 +58,12 @@ public enum GameEvent {
BLOODY_END,// 血战结束 BLOODY_END,// 血战结束
ESPECIAL_EQUIP//获得法宝 FAMILY_FIGHT_ATTACK,//公会战进攻次数
ESPECIAL_EQUIP,//获得法宝
FIND_STAR,//占星
} }

View File

@ -631,6 +631,9 @@ public class MissionLoigc {
case ENDLESS_CONSUME_ACTION: case ENDLESS_CONSUME_ACTION:
count = cumulationData.consumeAction; count = cumulationData.consumeAction;
break; break;
case FAMILY_FIGHT_ATTACK:
count = cumulationData.familyFightCount;
break;
case ESPECIAL_EQUIP: case ESPECIAL_EQUIP:
count = cumulationData.especialEquipStar.get(missionSubType[0]); count = cumulationData.especialEquipStar.get(missionSubType[0]);
break; break;

View File

@ -79,7 +79,9 @@ public enum MissionType {
TO_BE_STRONGER(58),//我要变强点击:%s次 TO_BE_STRONGER(58),//我要变强点击:%s次
BLOODY_KILL_NUMS(59),// 血战每日击杀人数 BLOODY_KILL_NUMS(59),// 血战每日击杀人数
ENDLESS_CONSUME_ACTION(60),//无尽消耗行动力 ENDLESS_CONSUME_ACTION(60),//无尽消耗行动力
ESPECIAL_EQUIP(62)//拥有%s星级法宝的数量为%s FAMILY_FIGHT_ATTACK(61),//公会战进攻次数
ESPECIAL_EQUIP(62),//拥有%s星级法宝的数量为%s
FIND_STAR(65)//占星
; ;
private int missionType; private int missionType;
@ -214,8 +216,12 @@ public enum MissionType {
return BLOODY_KILL_NUMS; return BLOODY_KILL_NUMS;
case 60: case 60:
return ENDLESS_CONSUME_ACTION; return ENDLESS_CONSUME_ACTION;
case 61:
return FAMILY_FIGHT_ATTACK;
case 62: case 62:
return ESPECIAL_EQUIP; return ESPECIAL_EQUIP;
case 65:
return FIND_STAR;
default: default:
return null; return null;
} }

View File

@ -100,6 +100,8 @@ public class DataManagerDistributor {
judges.put(MissionType.MONSTER_ATTACK_LEVEL,new DefaultDataManager()); judges.put(MissionType.MONSTER_ATTACK_LEVEL,new DefaultDataManager());
judges.put(MissionType.TO_BE_STRONGER,new StrongerManager()); judges.put(MissionType.TO_BE_STRONGER,new StrongerManager());
judges.put(MissionType.ESPECIAL_EQUIP,new EspecialStarManager()); judges.put(MissionType.ESPECIAL_EQUIP,new EspecialStarManager());
judges.put(MissionType.FAMILY_FIGHT_ATTACK,new FamilyFightManager());
judges.put(MissionType.FIND_STAR,new FindStarManager());

View File

@ -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 FamilyFightManager implements BaseDataManager {
@Override
public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) {
data.familyFightCount++;
return new CumulationData.Result(missionType);
}
}

View File

@ -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 FindStarManager implements BaseDataManager{
@Override
public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) {
data.findStar=+(int)parm[0];
return new CumulationData.Result(missionType);
}
}

View File

@ -254,11 +254,21 @@ public class MissionEventDistributor {
eventEnumListMap.put(GameEvent.BLOODY_END,typeList); eventEnumListMap.put(GameEvent.BLOODY_END,typeList);
eventProcessor.put(GameEvent.BLOODY_END,new CumulationDataEventProcessor()); eventProcessor.put(GameEvent.BLOODY_END,new CumulationDataEventProcessor());
typeList = new ArrayList<>();
typeList.add(MissionType.FAMILY_FIGHT_ATTACK);
eventEnumListMap.put(GameEvent.FAMILY_FIGHT_ATTACK,typeList);
eventProcessor.put(GameEvent.FAMILY_FIGHT_ATTACK,new CumulationDataEventProcessor());
typeList = new ArrayList<>(); typeList = new ArrayList<>();
typeList.add(MissionType.ESPECIAL_EQUIP); typeList.add(MissionType.ESPECIAL_EQUIP);
eventEnumListMap.put(GameEvent.ESPECIAL_EQUIP,typeList); eventEnumListMap.put(GameEvent.ESPECIAL_EQUIP,typeList);
eventProcessor.put(GameEvent.ESPECIAL_EQUIP,new CumulationDataEventProcessor()); eventProcessor.put(GameEvent.ESPECIAL_EQUIP,new CumulationDataEventProcessor());
typeList = new ArrayList<>();
typeList.add(MissionType.FIND_STAR);
eventEnumListMap.put(GameEvent.FIND_STAR,typeList);
eventProcessor.put(GameEvent.FIND_STAR,new CumulationDataEventProcessor());
} }
private static final ThreadLocal<Map<GameMisionType, List<MissionStateChangeInfo>>> threadMissionChangeList = private static final ThreadLocal<Map<GameMisionType, List<MissionStateChangeInfo>>> threadMissionChangeList =