Merge branch 'master' into master_test
commit
2e3dcc5aa0
|
@ -0,0 +1,80 @@
|
|||
package com.ljsd.jieling.chat;
|
||||
|
||||
/**
|
||||
* @author lvxinran
|
||||
* @date 2020/7/22
|
||||
* @discribe
|
||||
*/
|
||||
public class ChatRedisEntity {
|
||||
|
||||
private int uid;
|
||||
|
||||
private String name;
|
||||
|
||||
private int type;
|
||||
|
||||
private String message;
|
||||
|
||||
private Long time;
|
||||
|
||||
private int status;
|
||||
|
||||
public ChatRedisEntity(){};
|
||||
|
||||
public ChatRedisEntity(int uid, String name, int type, String message, Long time, int status) {
|
||||
this.uid = uid;
|
||||
this.name = name;
|
||||
this.type = type;
|
||||
this.message = message;
|
||||
this.time = time;
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
public int getUid() {
|
||||
return uid;
|
||||
}
|
||||
|
||||
public void setUid(int uid) {
|
||||
this.uid = uid;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public int getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public void setType(int type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public String getMessage() {
|
||||
return message;
|
||||
}
|
||||
|
||||
public void setMessage(String message) {
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
public Long getTime() {
|
||||
return time;
|
||||
}
|
||||
|
||||
public void setTime(Long time) {
|
||||
this.time = time;
|
||||
}
|
||||
|
||||
public int getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(int status) {
|
||||
this.status = status;
|
||||
}
|
||||
}
|
|
@ -1,7 +1,9 @@
|
|||
package com.ljsd.jieling.chat.logic;
|
||||
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.ljsd.GameApplication;
|
||||
import com.ljsd.jieling.chat.ChatRedisEntity;
|
||||
import com.ljsd.jieling.chat.messge.MessageCache;
|
||||
import com.ljsd.jieling.core.GlobalsDef;
|
||||
import com.ljsd.jieling.dataReport.reportBeans_37.ChatContentType;
|
||||
|
@ -27,6 +29,7 @@ import com.ljsd.jieling.util.CBean2Proto;
|
|||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import com.ljsd.jieling.util.SensitivewordFilter;
|
||||
import com.ljsd.jieling.util.ShieldedWordUtils;
|
||||
import util.TimeUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
@ -42,6 +45,8 @@ public class ChatLogic {
|
|||
return ChatLogic.Instance.instance;
|
||||
}
|
||||
|
||||
private Gson gson = new Gson();
|
||||
|
||||
|
||||
/**
|
||||
* 获取聊天信息
|
||||
|
@ -196,10 +201,24 @@ public class ChatLogic {
|
|||
|
||||
break;
|
||||
}
|
||||
onSendChatSuccess(user,chatType,message);
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.SEND_MESSAGE.getType(),String.valueOf(chatType),message);
|
||||
MessageUtil.sendMessage(iSession, 1, msgId, null, true);
|
||||
}
|
||||
|
||||
//记录聊天信息
|
||||
private void onSendChatSuccess(User user,int chatType,String message){
|
||||
RedisUtil redisUtil = RedisUtil.getInstence();
|
||||
String key = RedisKey.getKey(RedisKey.CHAT_INFO_CACHE, String.valueOf(chatType), false);
|
||||
ChatRedisEntity chatRedisEntity = new ChatRedisEntity(user.getId(), user.getPlayerInfoManager().getNickName(), chatType, message, TimeUtils.now(), user.getPlayerInfoManager().getSilence());
|
||||
String chatInfo = gson.toJson(chatRedisEntity);
|
||||
|
||||
long l = redisUtil.lGetListSize(key);
|
||||
if(l>1000){
|
||||
redisUtil.lPop(key);
|
||||
}
|
||||
redisUtil.lSet(key,chatInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 系统消息
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.ljsd.jieling.config.clazzStaticCfg;
|
|||
|
||||
import com.ljsd.jieling.core.GlobalsDef;
|
||||
import config.SCHeroRankUpConfig;
|
||||
import config.SHeroSacrifice;
|
||||
import config.SLotterySetting;
|
||||
import manager.AbstractClassStaticConfig;
|
||||
import manager.STableManager;
|
||||
|
@ -19,6 +20,7 @@ public class HeroStaticConfig extends AbstractClassStaticConfig {
|
|||
private Map<Integer, Map<Integer, Map<Integer, SCHeroRankUpConfig>>> scHeroRankUpConfigByShow;
|
||||
private Map<Integer, Map<Integer, Map<Integer, SCHeroRankUpConfig>>> scHeroRankUpConfigByType;
|
||||
|
||||
private Map<Integer,Map<Integer, SHeroSacrifice>> sHeroSacrificeMap;
|
||||
private Set<Integer> randomHeroIds;
|
||||
private Map<Integer,Integer> randomPoolByType;
|
||||
|
||||
|
@ -69,6 +71,12 @@ public class HeroStaticConfig extends AbstractClassStaticConfig {
|
|||
}
|
||||
scHeroRankUpConfigByShow = result;
|
||||
scHeroRankUpConfigByType = calc;
|
||||
Map<Integer,Map<Integer, SHeroSacrifice>> sHeroSacrificeMapTemp = new HashMap<>();
|
||||
Map<Integer, SHeroSacrifice> sHeroSacrificeConfig = STableManager.getConfig(SHeroSacrifice.class);
|
||||
for(SHeroSacrifice sacrificeconfig:sHeroSacrificeConfig.values()){
|
||||
sHeroSacrificeMapTemp.computeIfAbsent(sacrificeconfig.getType(),n->new HashMap<>()).put(sacrificeconfig.getKey(),sacrificeconfig);
|
||||
}
|
||||
sHeroSacrificeMap = sHeroSacrificeMapTemp;
|
||||
|
||||
} catch (Exception e) {
|
||||
LOGGER.error("SCHeroRankUpConfig init fail");
|
||||
|
@ -98,6 +106,10 @@ public class HeroStaticConfig extends AbstractClassStaticConfig {
|
|||
return scHeroRankUpConfigByType.get(type).get(heroInitStar);
|
||||
}
|
||||
|
||||
public SHeroSacrifice getsHeroSacrificeMap(int type,int param) {
|
||||
return sHeroSacrificeMap.get(type).get(param);
|
||||
}
|
||||
|
||||
public Set<Integer> getRandomHeroIds() {
|
||||
return randomHeroIds;
|
||||
}
|
||||
|
|
|
@ -266,6 +266,7 @@ public class RedisKey {
|
|||
|
||||
public final static String USER_LEVEL_GUILD_INFO = "USER_LEVEL_GUILD_INFO"; //车迟玩法挑战记录
|
||||
|
||||
public static final String CHAT_INFO_CACHE = "CHAT_INFO_CACHE";//聊天信息缓存,gm后台使用
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -123,9 +123,9 @@ public class LoginRequestHandler extends BaseHandler<PlayerInfoProto.LoginReques
|
|||
if(split.length>=2){
|
||||
String openId = split[0];
|
||||
String chanel = split[1];
|
||||
user = UserManager.userLogin(userId,openId,chanel,pid,gid);
|
||||
user = UserManager.userLogin(userId,openId,chanel,pid,gid,loginRequest.getPlatformS(),loginRequest.getIpS());
|
||||
}else{
|
||||
user = UserManager.userLogin(userId,openIdFront,"",pid,gid);
|
||||
user = UserManager.userLogin(userId,openIdFront,"",pid,gid,loginRequest.getPlatformS(),loginRequest.getIpS());
|
||||
}
|
||||
|
||||
// String newToken = UserManager.getNewToken(userId);
|
||||
|
|
|
@ -16,7 +16,7 @@ public enum ReportEventEnum {
|
|||
APP_LOGIN(2,"app_login", new LoginEventHandler(),new String[]{""}),
|
||||
CREATE_ROLE(3,"create_role", new CreateRoleEventHandler(),new String[]{"role_name"}),
|
||||
GUILD(4,"guild", new CommonEventHandler(),new String[]{"step_id","step_name","rewards_list","guild_start_time"}),
|
||||
LEVEL_UP(5,"level_up", new UserLevelUpEventHandler(),new String[]{"promotion_level","improved_level"}),
|
||||
LEVEL_UP(5,"level_up", new UserLevelUpEventHandler(),new String[]{"level","promotion_level","improved_level"}),
|
||||
MISSION_START(6,"mission_start", new CommonEventHandler(),new String[]{"mission_id","mission_name"}),
|
||||
MISSION_COMPLETE(7,"mission_complete", new CommonEventHandler(),new String[]{"mission_id","mission_name","reward_list","mission_start_time"}),
|
||||
JOIN_ACTIVITY(8,"join_activity", new CommonEventHandler(),new String[]{"activity_id","activity_name"}),
|
||||
|
@ -39,12 +39,14 @@ public enum ReportEventEnum {
|
|||
JOIN_GUILD(25,"join_guild", new CommonEventHandler(),new String[]{"guild_id","guild_name","guild_level","guild_people_num","guild_fighting_capacity","guild_create_time"}),
|
||||
QUIT_GUILD(26,"quit_guild", new CommonEventHandler(),new String[]{"guild_id","guild_name","guild_level","guild_people_num","guild_fighting_capacity","guild_create_time"}),
|
||||
CREATE_ORDER(27,"create_order", new CommonEventHandler(),new String[]{"order_id","order_money_amount","Bundle_id","entrance","item_id","item_name","goods_id","item_list"}),
|
||||
ORDER_COMPLETE(28,"order_complete", new ChargeAmountEventHandler(),new String[]{"order_id","order_money_amount","Bundle_id","entrance","item_id","item_name","goods_id","item_list"}),
|
||||
ORDER_COMPLETE(28,"order_complete", new ChargeAmountEventHandler(),new String[]{"order_id","order_money_amount","Bundle_id","channel_id","server_id","goods_id","goods_name","item_id","item_num"}),
|
||||
CHECK_RANKING(29,"check_ranking", new CommonEventHandler(),new String[]{"ranking_type"}),
|
||||
ASK_FOR_BEING_FRIENDS(30,"ask_for_being_friends", new CommonEventHandler(),new String[]{"target_id","target_name","target_level","entrance"}),
|
||||
ALLOW_FRIENDS_ASK(31,"allow_friends_ask", new CommonEventHandler(),new String[]{"target_id","target_name","target_level","entrance"}),
|
||||
SEND_MESSAGE(32,"send_message", new CommonEventHandler(),new String[]{"message_type","message_content"}),
|
||||
OPEN_MAIL(33,"open_mail", new CommonEventHandler(),new String[]{""}),
|
||||
GUIDE(34,"guide", new CommonEventHandler(),new String[]{"step_id"}),
|
||||
|
||||
VIP_LEVEL_UP(100,"", new VipLevelUpEventHandler(),new String[]{""});
|
||||
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.ljsd.jieling.ktbeans.reportEvent;
|
||||
|
||||
import com.ljsd.GameApplication;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
|
||||
import java.util.Date;
|
||||
|
@ -20,6 +21,11 @@ public class CreateRoleEventHandler extends CommonEventHandler{
|
|||
|
||||
setProperties.put("role_name",user.getPlayerInfoManager().getNickName());
|
||||
setOnceProperties.put("role_create_time",new Date());
|
||||
setOnceProperties.put("server_id",String.valueOf(GameApplication.serverId));
|
||||
setOnceProperties.put("channel_id",user.getPlayerInfoManager().getPid());
|
||||
setOnceProperties.put("platform_id",user.getPlayerInfoManager().getPlatform());
|
||||
setOnceProperties.put("reg_ip",user.getPlayerInfoManager().getIp());
|
||||
|
||||
userProperties.put(1,setProperties);
|
||||
userProperties.put(2,setOnceProperties);
|
||||
return userProperties;
|
||||
|
|
|
@ -108,6 +108,11 @@ public class PlayerManager extends MongoBase {
|
|||
private int luckWheelLimitTime;
|
||||
private int luckAdvanceWheelLimitTime;
|
||||
|
||||
private String platform;
|
||||
|
||||
private String ip;
|
||||
|
||||
|
||||
public PlayerManager(){
|
||||
this.setRootCollection(User._COLLECTION_NAME);
|
||||
}
|
||||
|
@ -727,4 +732,23 @@ public class PlayerManager extends MongoBase {
|
|||
updateString("luckAdvanceWheelLimitTime",luckAdvanceWheelLimitTime);
|
||||
this.luckAdvanceWheelLimitTime = luckAdvanceWheelLimitTime;
|
||||
}
|
||||
|
||||
public String getPlatform() {
|
||||
return platform;
|
||||
}
|
||||
|
||||
public void setPlatform(String platform) {
|
||||
this.platform = platform;
|
||||
updateString("platform",platform);
|
||||
|
||||
}
|
||||
|
||||
public String getIp() {
|
||||
return ip;
|
||||
}
|
||||
|
||||
public void setIp(String ip) {
|
||||
this.ip = ip;
|
||||
updateString("ip",ip);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -41,12 +41,12 @@ public class UserManager {
|
|||
return userMap.containsKey(uid);
|
||||
}
|
||||
|
||||
public static User userLogin(int uid,String openId,String channel,int pid,int gid) throws Exception {
|
||||
public static User userLogin(int uid,String openId,String channel,int pid,int gid,String platform,String ip) throws Exception {
|
||||
User user = null;
|
||||
if (!UserManager.isUserExist(uid)){
|
||||
user = MongoUtil.getInstence().getMyMongoTemplate().findById(User.getCollectionName(), uid, User.class);
|
||||
if (user == null) {
|
||||
user = registerUser(uid,openId,channel,pid,gid);
|
||||
user = registerUser(uid,openId,channel,pid,gid,platform,ip);
|
||||
}
|
||||
UserManager.addUser(user);
|
||||
}else{
|
||||
|
@ -58,17 +58,17 @@ public class UserManager {
|
|||
}
|
||||
|
||||
|
||||
private static User registerUser(int uid,String openId,String channel,int pid,int gid) throws Exception {
|
||||
private static User registerUser(int uid,String openId,String channel,int pid,int gid,String platform,String ip) throws Exception {
|
||||
User user = new User(uid);
|
||||
UserManager.addUser(user);
|
||||
initPlayer(user,openId,channel,pid,gid);
|
||||
initPlayer(user,openId,channel,pid,gid,platform,ip);
|
||||
MongoUtil.getInstence().getMyMongoTemplate().save(user);
|
||||
PlayerLogic.getInstance().sendTestWelfareMail(user,1,1);
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.CREATE_ROLE.getType());
|
||||
return user;
|
||||
}
|
||||
|
||||
private static void initPlayer(User user,String openId,String channel,int pid,int gid) throws Exception {
|
||||
private static void initPlayer(User user,String openId,String channel,int pid,int gid,String platform,String ip) throws Exception {
|
||||
SGameSetting gameSetting = STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting();
|
||||
PlayerManager playerManager = user.getPlayerInfoManager();
|
||||
long now = TimeUtils.now();
|
||||
|
@ -89,6 +89,8 @@ public class UserManager {
|
|||
playerManager.setChannel(channel);
|
||||
playerManager.setPid(pid);
|
||||
playerManager.setGid(gid);
|
||||
playerManager.setPlatform(platform);
|
||||
playerManager.setIp(ip);
|
||||
playerManager.setHeadFrame(STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting().getDefaultPicture());
|
||||
SPlayerLevelConfig sPlayerLevelConfig = SPlayerLevelConfig.getsPlayerLevelConfigMap().get(1);
|
||||
playerManager.setMaxStamina(sPlayerLevelConfig.getMaxEnergy());
|
||||
|
|
|
@ -2347,11 +2347,11 @@ public class HeroLogic{
|
|||
throw new ErrorCodeException(ErrorCode.HERO_ITEM_NOT);
|
||||
}
|
||||
|
||||
heroManager.removeHero(uid,heroId);
|
||||
// heroManager.removeHero(uid,heroId);
|
||||
int[][] returnMaterials = sHeroReturn.getRankupReturn();
|
||||
SHeroLevlConfig sHeroLevlConfig = SHeroLevlConfig.getsHeroLevlConfigMap().get(hero.getLevel());
|
||||
int[][] levelReturn = ItemLogic.getInstance().itemReturnPercent(sHeroLevlConfig.getSumConsume(), returnPercent);
|
||||
int returnHero = sHeroReturn.getHeroId();
|
||||
// int returnHero = sHeroReturn.getHeroId();
|
||||
//进阶材料返还乘万分比
|
||||
Map<Integer,Integer> returnItemMap = new HashMap<>();
|
||||
for(int i = 0 ; i <returnMaterials.length;i++){
|
||||
|
@ -2360,7 +2360,7 @@ public class HeroLogic{
|
|||
for(int i = 0 ; i <levelReturn.length;i++){
|
||||
returnItemMap.put(levelReturn[i][0],returnItemMap.getOrDefault(levelReturn[i][0],0)+levelReturn[i][1]);
|
||||
}
|
||||
returnItemMap.put(returnHero,1);
|
||||
// returnItemMap.put(returnHero,1);
|
||||
int[][] resultDrop = new int[returnItemMap.size()][];
|
||||
int index = 0;
|
||||
for(Map.Entry<Integer,Integer> entry:returnItemMap.entrySet()){
|
||||
|
@ -2368,12 +2368,14 @@ public class HeroLogic{
|
|||
index++;
|
||||
}
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, resultDrop, BIReason.HERO_BACK_REWARD);
|
||||
CommonProto.Hero.Builder heroProto = drop.getHero(0).toBuilder();
|
||||
String createHeroId = heroProto.getId();
|
||||
heroProto.setStar(star);
|
||||
drop.setHero(0,heroProto.build());
|
||||
Hero newHero = user.getHeroManager().getHeroMap().get(createHeroId);
|
||||
newHero.setStar(star);
|
||||
hero.setLevel(user,1);
|
||||
hero.setBreakId(0);
|
||||
// CommonProto.Hero.Builder heroProto = drop.getHero(0).toBuilder();
|
||||
// String createHeroId = heroProto.getId();
|
||||
// heroProto.setStar(star);
|
||||
// drop.setHero(0,heroProto.build());
|
||||
// Hero newHero = user.getHeroManager().getHeroMap().get(createHeroId);
|
||||
// newHero.setStar(star);
|
||||
HeroInfoProto.HeroReturnResponse build = HeroInfoProto.HeroReturnResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session,1,responseMsgId,build,true);
|
||||
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.ljsd.jieling.logic.item;
|
|||
|
||||
import com.ljsd.jieling.chat.logic.ChatLogic;
|
||||
import com.ljsd.jieling.config.clazzStaticCfg.CommonStaticConfig;
|
||||
import com.ljsd.jieling.config.clazzStaticCfg.HeroStaticConfig;
|
||||
import com.ljsd.jieling.exception.ErrorCode;
|
||||
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||
import com.ljsd.jieling.globals.BIReason;
|
||||
|
@ -367,7 +368,6 @@ public class ItemLogic {
|
|||
CommonProto.Drop.Builder baseBuilder = CommonProto.Drop.newBuilder();
|
||||
User user = UserManager.getUser(uid);
|
||||
HeroManager heroManager = user.getHeroManager();
|
||||
StringBuilder reward = new StringBuilder();
|
||||
ErrorCode erroMags = checkHeroResolve(heroIdsList,user);
|
||||
if (null!=erroMags){
|
||||
throw new ErrorCodeException(erroMags);
|
||||
|
@ -377,46 +377,25 @@ public class ItemLogic {
|
|||
//1裸角色卡(没有突破过的角色卡)熔炼后返还的材料=当前等级返还升级材料+item表返还材料
|
||||
//2有过突破的卡 =当前等级返还升级材料+突破表返还材料
|
||||
Map<Integer, Integer> baseItemMap = new HashMap<>();
|
||||
Map<Integer, Integer> baseCardMap = new HashMap<>();
|
||||
Map<Integer, Integer> baseEquipMap = new HashMap<>();
|
||||
Map<Integer,Integer> baseRandomMap = new HashMap<>();
|
||||
int rankUpReturnPercent= SSpecialConfig.getIntegerValue(SSpecialConfig.HERO_SACRIFICE_PERCENT);
|
||||
for (String heroId : heroIdsList) {
|
||||
Hero hero = heroManager.getHeroMap().get(heroId);
|
||||
heroManager.removeHero(uid,heroId);
|
||||
int[][] sumConsume = SHeroLevlConfig.getsHeroLevlConfigMap().get(hero.getLevel()).getSumConsume();
|
||||
|
||||
ItemUtil.combineReward(itemReturnPercent(sumConsume,rankUpReturnPercent),baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
||||
int breakId = hero.getBreakId();
|
||||
int starBreakId = hero.getStarBreakId();
|
||||
if(breakId!=0 || starBreakId!=0){
|
||||
SCHeroRankUpConfig scHeroRankUpConfig = STableManager.getConfig(SCHeroRankUpConfig.class).get(breakId);
|
||||
if(scHeroRankUpConfig!=null){
|
||||
int[][] levelUpReturn = scHeroRankUpConfig.getSumConsume();
|
||||
ItemUtil.combineReward(itemReturnPercent(levelUpReturn,rankUpReturnPercent),baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
||||
SHeroSacrifice starSHeroSacrifice = STableManager.getFigureConfig(HeroStaticConfig.class).getsHeroSacrificeMap(1, hero.getStar());
|
||||
SHeroSacrifice breakSHeroSacrifice = STableManager.getFigureConfig(HeroStaticConfig.class).getsHeroSacrificeMap(2, hero.getBreakId());
|
||||
for(int[] item:sumConsume){
|
||||
baseItemMap.put(item[0],baseItemMap.getOrDefault(item[0],0)+item[1]);
|
||||
}
|
||||
scHeroRankUpConfig = STableManager.getConfig(SCHeroRankUpConfig.class).get(starBreakId);
|
||||
if(scHeroRankUpConfig!=null){
|
||||
int[][] levelUpReturn = scHeroRankUpConfig.getSumConsume();
|
||||
ItemUtil.combineReward(itemReturnPercent(levelUpReturn,rankUpReturnPercent),baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
||||
for(int[] item:starSHeroSacrifice.getValue()){
|
||||
baseItemMap.put(item[0],baseItemMap.getOrDefault(item[0],0)+item[1]);
|
||||
}
|
||||
|
||||
continue;
|
||||
}
|
||||
SItem sItem = SItem.getsItemMap().get(hero.getTemplateId());
|
||||
|
||||
if(null==filterItem){
|
||||
if (reward.length() == 0) {
|
||||
reward = new StringBuilder(sItem.getResolveReward());
|
||||
} else {
|
||||
reward.append("#").append(sItem.getResolveReward());
|
||||
for(int[] item:breakSHeroSacrifice.getValue()){
|
||||
baseItemMap.put(item[0],baseItemMap.getOrDefault(item[0],0)+item[1]);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ItemUtil.combineReward(user,false, StringUtil.parseFiledInt(reward.toString()),1,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap,-1);
|
||||
|
||||
int[][] itemArray = ItemUtil.mapToArray(baseItemMap);
|
||||
int reson = BIReason.DECOMPOS_HERO_REWARD;
|
||||
if(null!=filterItem){
|
||||
reson= BIReason.UPHERO_DECOMPOS_HERO_REWARD;
|
||||
|
@ -428,10 +407,7 @@ public class ItemLogic {
|
|||
}else {
|
||||
user.getUserMissionManager().onGameEvent(user,GameEvent.DESPOSE_HERO,heroIdsList.size());
|
||||
}
|
||||
|
||||
|
||||
ItemUtil.drop(user,baseBuilder,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap, reson);
|
||||
return baseBuilder;
|
||||
return ItemUtil.drop(user,itemReturnPercent(itemArray,rankUpReturnPercent),reson);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -104,6 +104,9 @@ public class PlayerLogic {
|
|||
int uid = session.getUid();
|
||||
User user = UserManager.getUser(uid);
|
||||
user.getPlayerInfoManager().updateGuidePoint(type,id);
|
||||
if(type==1){
|
||||
ReportUtil.onReportEvent(user,ReportEventEnum.GUILD.getType(),String.valueOf(id));
|
||||
}
|
||||
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.SAVE_NEW_PLAYER_GUIDE_POINT_RESPONSE_VALUE,null,true);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.ljsd.jieling.logic.store;
|
||||
|
||||
import com.ljsd.GameApplication;
|
||||
import com.ljsd.jieling.config.clazzStaticCfg.CommonStaticConfig;
|
||||
import com.ljsd.jieling.config.reportData.DataMessageUtils;
|
||||
import com.ljsd.jieling.core.GlobalsDef;
|
||||
|
@ -81,7 +82,6 @@ public class BuyGoodsLogic {
|
|||
for(int[] item:sRechargeCommodityConfig.getBaseReward()){
|
||||
itemList.add(item[0]);
|
||||
}
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.ORDER_COMPLETE.getType(),"",price,"","","","",String.valueOf(goodsId),itemList);
|
||||
// KtEventUtils.onKtEvent(user, ParamEventBean.UserPayEvent,goodsId,System.currentTimeMillis()+"",result.getResultCode(),price*10);
|
||||
}
|
||||
|
||||
|
@ -352,12 +352,14 @@ public class BuyGoodsLogic {
|
|||
rechargeInfo.updateRefreshMapByKey(sRechargeCommodityConfig.getId(),TimeUtils.now()+sRechargeCommodityConfig.getDailyUpdate()*TimeUtils.DAY);
|
||||
}
|
||||
resultRes.setResultCode(1);
|
||||
KtEventUtils.onKtEvent(user, ParamEventBean.UserPayEvent,goodsId,orderId,resultRes.getResultCode(),price);
|
||||
// KtEventUtils.onKtEvent(user, ParamEventBean.UserPayEvent,goodsId,orderId,resultRes.getResultCode(),price);
|
||||
notifyPaySuccessFul(uid,goodsId,amount != -999);
|
||||
// Poster.getPoster().dispatchEvent(new NewWelfareEvent(user, NewWelfareTypeEnum.RECHARGE_BUY.getType(),goodsId));
|
||||
MongoUtil.getLjsdMongoTemplate().lastUpdate();
|
||||
sendGiftGooodsIndication(uid);
|
||||
onChargeSuccess(uid,sRechargeCommodityConfig.getPrice(),0);//充值成功上报
|
||||
Map<Integer, Integer> mapReward = ItemUtil.arrayToMap(baseReward);
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.ORDER_COMPLETE.getType(),orderId,price,user.getPlayerInfoManager().getGid(),user.getPlayerInfoManager().getPid(),String.valueOf(GameApplication.serverId),String.valueOf(goodsId),sRechargeCommodityConfig.getName(),mapReward.keySet(),mapReward.values());
|
||||
return resultRes;
|
||||
|
||||
}
|
||||
|
|
|
@ -672,7 +672,7 @@ public class ItemUtil {
|
|||
}
|
||||
playerInfoManager.setExp(curExp);
|
||||
if (playerInfoManager.getLevel() > oldLevel) {
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.LEVEL_UP.getType(),1,playerInfoManager.getLevel());
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.LEVEL_UP.getType(),oldLevel,playerInfoManager.getLevel()-oldLevel,playerInfoManager.getLevel());
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.USER_LEVELUP,oldLevel+1,playerInfoManager.getLevel());
|
||||
}
|
||||
|
||||
|
@ -1463,6 +1463,27 @@ public class ItemUtil {
|
|||
}
|
||||
return sourceNum;
|
||||
}
|
||||
public static int[][] mapToArray(Map<Integer,Integer> map){
|
||||
|
||||
int[][] itemArray = new int[map.size()][];
|
||||
int i = 0 ;
|
||||
for(Map.Entry<Integer,Integer> entry:map.entrySet()){
|
||||
itemArray[i] = new int[]{entry.getKey(),entry.getValue()};
|
||||
i++;
|
||||
}
|
||||
return itemArray;
|
||||
|
||||
}
|
||||
public static Map<Integer,Integer> arrayToMap(int[][] array){
|
||||
|
||||
Map<Integer,Integer> map = new HashMap<>(array.length);
|
||||
for(int[] itemArray:array ){
|
||||
map.put(itemArray[0],map.getOrDefault(itemArray[0],0)+itemArray[1]);
|
||||
}
|
||||
return map;
|
||||
|
||||
}
|
||||
|
||||
|
||||
private static int parseTheValueByPrivilegeMap(User user,int sourceNum,int privigeId){
|
||||
int privigeValue = PlayerLogic.getInstance().getMaxCountByPrivilegeType(user,privigeId);
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
package config;
|
||||
|
||||
import manager.STableManager;
|
||||
import manager.Table;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@Table(name ="HeroSacrifice")
|
||||
public class SHeroSacrifice implements BaseConfig {
|
||||
|
||||
private int id;
|
||||
|
||||
private int type;
|
||||
|
||||
private int key;
|
||||
|
||||
private int[][] value;
|
||||
|
||||
|
||||
@Override
|
||||
public void init() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
|
||||
public int getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public int getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public int getKey() {
|
||||
return key;
|
||||
}
|
||||
|
||||
public int[][] getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
|
||||
}
|
Loading…
Reference in New Issue