灵兽相关打点

lvxinran 2020-12-24 08:35:32 +08:00
parent f72e72a48e
commit e97dc6b28c
3 changed files with 39 additions and 2 deletions

View File

@ -82,6 +82,10 @@ public enum ReportEventEnum {
LEAVE_PANOPTIC_MIRROR(55,"leave_panoptic_mirror",new CommonEventHandler(),new String[]{"Panoptic_Mirror_id"}),
TIME_SUMMON(56,"Time_summon",new CommonEventHandler(),new String[]{"hero_id","summon_type","cost_item_id","cost_amount","hero_id_quality_list"}),
FATALITY_SUMMON(57,"fatality_summon",new CommonEventHandler(),new String[]{"hero_id","summon_type","cost_item_id","cost_amount","hero_id_quality_list"}),
GET_BEAST(58,"get_beast",new CommonEventHandler(),new String[]{"beast_id","quality","get_type"}),
BEAST_LEVEL(59,"beast_level",new CommonEventHandler(),new String[]{"beast_id","old_level","new_level","cost_amount","cost_item_list"}),
BEAST_STAR(60,"beast_star",new CommonEventHandler(),new String[]{"beast_id","old_star","new_star","cost_item_list","cost_beast_list"}),
BEAST_SUMMON(61,"beast_summon",new CommonEventHandler(),new String[]{"beast_id","summon_type","new_star","cost_item_id","reward_nums_list"}),
VIP_LEVEL_UP(100,"", new VipLevelUpEventHandler(),new String[]{""});

View File

@ -344,7 +344,7 @@ public class HeroLogic{
CommonProto.Drop.Builder drop = ItemUtil.dropPer(user, resultRandom,BIReason.HERO_RANDOM);
builder.setDrop(drop);
MessageUtil.sendMessage(session, 1, MessageTypeProto.MessageType.HERO_RAND_RESPONSE_VALUE, builder.build(), true);
System.out.println(System.currentTimeMillis()-time);
// System.out.println(System.currentTimeMillis()-time);
}
@ -374,6 +374,10 @@ public class HeroLogic{
break;
case 2:
eventEnum = ReportEventEnum.SUMMON_HERO;
break;
case 9:
eventEnum = ReportEventEnum.BEAST_SUMMON;
break;
default:
break;
@ -3049,6 +3053,7 @@ public class HeroLogic{
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
}
Pokemon pokemon = pokemonManager.getPokemonMap().get(pokemonId);
int oldLevel = pokemon.getLevel();
if(level<=pokemon.getLevel()){
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
}
@ -3105,6 +3110,16 @@ public class HeroLogic{
HeroInfoProto.PokenmonUpLevelResponse response = HeroInfoProto.PokenmonUpLevelResponse.newBuilder().setLevel(finalLevel).build();
//发送成功消息
MessageUtil.sendMessage(session,1,messageType.getNumber(),response,true);
StringBuilder builder = new StringBuilder();
for(Map.Entry<Integer,Integer> entry:costMap.entrySet()){
if(builder.length()>0){
builder.append("|");
}
builder.append(entry.getKey()).append("#").append(entry.getValue());
}
ReportUtil.onReportEvent(user,ReportEventEnum.BEAST_LEVEL.getType(),pokemon.getTmpId(),oldLevel,finalLevel,builder.toString());
// user.getUserMissionManager().onGameEvent(user,GameEvent.POKEMON_UPLEVEL,pokemonId);
}
@ -3124,6 +3139,7 @@ public class HeroLogic{
if(pokemon == null){
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
}
int oldStar = pokemon.getStar();
SSpiritAnimal animal = STableManager.getConfig(SSpiritAnimal.class).get(pokemon.getTmpId());
if(animal==null){
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
@ -3140,6 +3156,8 @@ public class HeroLogic{
if(config.getConsumeItemNum()!=consumePokemonIdsList.size()){
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
}
StringBuilder consumeBuilder = new StringBuilder();
for(String consume:consumePokemonIdsList){
Pokemon consumePokemon = pokemonManager.getPokemonMap().get(consume);
if(consumePokemon==null){
@ -3154,6 +3172,11 @@ public class HeroLogic{
if(pokemonManager.getPokemonTeamMap().containsValue(consume)){
throw new ErrorCodeException(ErrorCode.ITEM_DECOMPOSE_HERO_TEAM);
}
if(consumeBuilder.length()>0){
consumeBuilder.append("|");
}
consumeBuilder.append(pokemon.getTmpId()).append("-").append(pokemon.getLevel());
}
int[][] consumeRes = config.getConsumeRes();
boolean itemCost = ItemUtil.itemCost(user, consumeRes, BIReason.SPECIAL_STAR_UP_CONSUME, 1);
@ -3174,6 +3197,15 @@ public class HeroLogic{
}
}
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.POKEMON_ADVANCED_RESPONSE_VALUE,null,true);
for(int[] consume:consumeRes){
if(consumeBuilder.length()>0){
consumeBuilder.append("|");
}
consumeBuilder.append(consume[0]).append("#").append(consume[1]);
}
ReportUtil.onReportEvent(user,ReportEventEnum.BEAST_STAR.getType(),pokemon.getTmpId(),oldStar,pokemon.getStar(),consumeBuilder.toString());
}
/**

View File

@ -1585,7 +1585,7 @@ public class ItemUtil {
return new int[0];
}
private static void addSpecialMonster(User user,ItemMap itemObj,CommonProto.Drop.Builder dropBuilder,int reason){
private static void addSpecialMonster(User user,ItemMap itemObj,CommonProto.Drop.Builder dropBuilder,int reason) throws Exception {
if(itemObj.getSpecialMonsterMap().isEmpty()){
return;
}
@ -1598,6 +1598,7 @@ public class ItemUtil {
}
dropBuilder.addPokemon(CBean2Proto.getPokemon(pokemon));
SSpiritAnimal animal = STableManager.getConfig(SSpiritAnimal.class).get(entry.getKey());
ReportUtil.onReportEvent(user,ReportEventEnum.GET_BEAST.getType(),entry.getKey(),animal.getQuality(),reason);
if (animal.getQuality() >= SSpecialConfig.getIntegerValue(SSpecialConfig.ANIMAL_BROADCAST_QUALITY)&&reason!=BIReason.COMPOS_HERO_REWARD) { //策划资质改成星级
String message = SErrorCodeEerverConfig.getI18NMessage("animal_get_broadcast_content", new Object[]{user.getPlayerInfoManager().getNickName(), animal.getName()});
if (!message.isEmpty()){