妖晶累充活动和仙晶累充活动
parent
b24ba14a0b
commit
31e496e566
|
@ -6,10 +6,7 @@ import org.slf4j.LoggerFactory;
|
|||
import java.io.*;
|
||||
import java.lang.reflect.Array;
|
||||
import java.security.MessageDigest;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Random;
|
||||
import java.util.*;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
|
@ -87,13 +84,12 @@ public class Utils {
|
|||
int strLength =str.length;
|
||||
Random random = new Random();
|
||||
int rand = 0 ;
|
||||
StringBuffer stringBuffer = new StringBuffer();
|
||||
StringBuilder stringBuffer = new StringBuilder();
|
||||
for (int i=0; i< num;i++){
|
||||
rand = random.nextInt(strLength);
|
||||
stringBuffer.append(str[rand]);
|
||||
}
|
||||
String randStr = String.valueOf(stringBuffer);
|
||||
return randStr;
|
||||
return String.valueOf(stringBuffer);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -147,6 +143,21 @@ public class Utils {
|
|||
return objects;
|
||||
}
|
||||
|
||||
/**
|
||||
* 二维数组list转map,仅限道具数组使用
|
||||
* @param list
|
||||
* @return
|
||||
*/
|
||||
public static Map<Integer, Long> getItemMapObject(List<int[][]> list){
|
||||
HashMap<Integer, Long> map = new HashMap<>();
|
||||
for (int[][] item : list) {
|
||||
for (int[] one : item) {
|
||||
map.put(one[0], map.getOrDefault(one[0],0L)+one[1]);
|
||||
}
|
||||
}
|
||||
return map;
|
||||
}
|
||||
|
||||
/**
|
||||
* map转二维数组
|
||||
*/
|
||||
|
@ -168,4 +179,6 @@ public class Utils {
|
|||
return object;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -97,7 +97,7 @@ public class GetShejiAwardRequestHandler extends BaseHandler<ActivityProto.GetSh
|
|||
activityMission.setV(integer);
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
activityType.sendActivityProgress(sessionByUid, activityMission, null);
|
||||
activityType.sendActivityProgress(sessionByUid, null);
|
||||
int[] dropList = new int[1];
|
||||
dropList[0]=sGodSacrificeSetting.getTimeRewardGroup();
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, dropList,1,0, BIReason.SHEJI_ACTIVITY);
|
||||
|
|
|
@ -88,7 +88,7 @@ public class SeletSubRewardPoolRequestHandler extends BaseHandler<ActivityProto.
|
|||
}
|
||||
user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().add(selectId);
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
abstractActivity.sendActivityProgress(sessionByUid, activityMission, null);
|
||||
abstractActivity.sendActivityProgress(sessionByUid, null);
|
||||
return ActivityProto.SeletSubRewardPoolResponse.newBuilder().build();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -89,7 +89,7 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
updateProgressWithUser(user, activityMission, count);
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
|
||||
}
|
||||
|
||||
|
@ -184,11 +184,11 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
reSetValue(user);
|
||||
if(sGlobalActivity.getType() != ActivityType.OnlineReward) {
|
||||
ActivityMission newmiss = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
sendActivityProgress(session, newmiss, null);
|
||||
sendActivityProgress(session, null);
|
||||
}
|
||||
} else {
|
||||
if(sGlobalActivity.getType() != ActivityType.OnlineReward){
|
||||
sendActivityProgress(session, activityMission, Collections.singleton(missionId));
|
||||
sendActivityProgress(session, Collections.singleton(missionId));
|
||||
}
|
||||
}
|
||||
reportTakeActivityReward(user,reward,missionId);
|
||||
|
@ -391,29 +391,30 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
*
|
||||
* @param filterMissId miss过滤
|
||||
*/
|
||||
public void sendActivityProgress(ISession session, ActivityMission activityMission, Set<Integer> filterMissId) {
|
||||
public void sendActivityProgress(ISession session, Set<Integer> filterMissId){
|
||||
if (session == null) {
|
||||
return;
|
||||
}
|
||||
PlayerInfoProto.ActivityUpateProgressIndication.Builder builder = PlayerInfoProto.ActivityUpateProgressIndication.newBuilder();
|
||||
|
||||
User user = UserManager.getUserInMem(session.getUid());
|
||||
if (user != null && activityMission != null) {
|
||||
List<CommonProto.ActivityInfo.MissionInfo> missInfo = getAllMissInfo(user, activityMission, filterMissId);
|
||||
CommonProto.ActivityInfo.Builder builder1 = CommonProto.ActivityInfo.newBuilder()
|
||||
.setValue(activityMission.getV())
|
||||
.addAllMission(missInfo)
|
||||
.setActivityId(id);
|
||||
builder.setActivityInfo(builder1);
|
||||
MessageUtil.sendIndicationMessage(session, 1, MessageTypeProto.MessageType.ACTIVITY_UPDATE_PROGRESS_INDICATION_VALUE, builder.build(), true);
|
||||
User user = UserManager.getUserNotCache(session.getUid());
|
||||
ActivityMission mission = Optional.ofNullable(user).map(v -> v.getActivityManager().getActivityMissionMap().get(id)).orElse(null);
|
||||
if (mission == null) {
|
||||
return;
|
||||
}
|
||||
List<CommonProto.ActivityInfo.MissionInfo> missInfo = getAllMissInfo(user, mission, filterMissId);
|
||||
CommonProto.ActivityInfo.Builder builder1 = CommonProto.ActivityInfo.newBuilder()
|
||||
.setValue(mission.getV())
|
||||
.addAllMission(missInfo)
|
||||
.setActivityId(id);
|
||||
builder.setActivityInfo(builder1);
|
||||
MessageUtil.sendIndicationMessage(session, 1, MessageTypeProto.MessageType.ACTIVITY_UPDATE_PROGRESS_INDICATION_VALUE, builder.build(), true);
|
||||
|
||||
}
|
||||
|
||||
public void sendActivityProgress(User user, ActivityMission activityMission, Set<Integer> filterMissId) {
|
||||
public void sendActivityProgress(User user, Set<Integer> filterMissId) {
|
||||
ISession session = OnlineUserManager.sessionMap.get(user.getId());
|
||||
if (session != null){
|
||||
sendActivityProgress(session,activityMission,filterMissId);
|
||||
sendActivityProgress(session,filterMissId);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1642,7 +1642,7 @@ public class ActivityLogic implements IEventHandler{
|
|||
//发推送
|
||||
AbstractActivity acticityType = ActivityTypeEnum.getActicityById(activityId);
|
||||
if(acticityType!=null){
|
||||
acticityType.sendActivityProgress(session, activityMission, null);
|
||||
acticityType.sendActivityProgress(session, null);
|
||||
}
|
||||
MessageUtil.sendMessage(session,1,MessageTypeProto.MessageType.FU_XING_STORE_BUY_RESPONSE_VALUE,null,true);
|
||||
}
|
||||
|
|
|
@ -105,7 +105,7 @@ public interface ActivityType {
|
|||
int CONTINUOUS_GIFT_NEW = 87;//新连续礼包
|
||||
int ARENA_RANK_EXPERIMENT = 88;//竞技试炼
|
||||
int DAILY_PREFERENTIAL_GIFT = 89;//每日特惠礼包开启的活动
|
||||
int NEW_DAILY_RECHARGE = 93;//新每日充值
|
||||
int NEW_DAILY_RECHARGE = 93;//新每日充值(单笔充值活动)
|
||||
int SPECIAL_MONSTER_RANDOM_ACTIVITY = 100;//灵兽宝阁活动
|
||||
int SPECIAL_MONSTER_GIFT_ACTIVITY = 101;//灵兽礼包
|
||||
|
||||
|
@ -149,4 +149,6 @@ public interface ActivityType {
|
|||
int NEW_RECHARGE_SUM_DAY_30 = 92;//超值返利30
|
||||
int NEW_RECHARGE_SUM_DAY_12 = 111;//超值返利12
|
||||
int GIVE_ONE_HUNDRED_THOUSAND_RECHARGE = 112;//送十万真充
|
||||
int MONSTER_MONEY_TOTLE_RECHARGE = 113;//妖晶累充
|
||||
int GOD_MONEY_TOTLE_RECHARGE = 114;//仙晶累充
|
||||
}
|
||||
|
|
|
@ -104,7 +104,7 @@ public enum ActivityTypeEnum {
|
|||
DAILY_PREFERENTIAL_GIFT(ActivityType.DAILY_PREFERENTIAL_GIFT,DailyPreferentialGiftActivity::new), //每日特惠中60元七天特惠活动
|
||||
SUMMON_TREASURE(ActivityType.SUMMON_TREASURE,SummonTreasureActivity::new),//招募秘宝
|
||||
NEW_PLAYER_SHOP(ActivityType.NEW_PLAYER_SHOP, NewPlayerShopActivity::new),
|
||||
NEW_DAILY_RECHARGE(ActivityType.NEW_DAILY_RECHARGE, RechargeRewardActivity::new),
|
||||
NEW_DAILY_RECHARGE(ActivityType.NEW_DAILY_RECHARGE, RechargeRewardActivity::new),//(单笔充值活动)
|
||||
HERO_UP_STAR_ACTIVITY(ActivityType.HERO_UP_STAR_ACTIVITY,HeroUpStarActivity::new),
|
||||
DAILY_SPECIAL(ActivityType.DAILY_SPECIAL,DefaultEmptyActivity::new),//每日特惠
|
||||
fESTIVAL_LOGIN_ACTIVITY(ActivityType.fESTIVAL_LOGIN_ACTIVITY,NewEightActivity::new),//节日登录活动
|
||||
|
@ -123,7 +123,9 @@ public enum ActivityTypeEnum {
|
|||
RECHARGE_FIRST(ActivityType.RECHARGE_FIRST, RechargeFirstActivity::new),//直充购买礼包活动
|
||||
FREE_RECHARGE(ActivityType.FREE_RECHARGE, DefaultEmptyActivity::new),//免费充值,仙充
|
||||
OPEN_SERVER_COMPETE_RANK(ActivityType.OPEN_SERVER_COMPETE_RANK, OpenServerCompeteRankActivity::new),//开服冲榜
|
||||
GIVE_ONE_HUNDRED_THOUSAND_RECHARGE(ActivityType.GIVE_ONE_HUNDRED_THOUSAND_RECHARGE, GiveOneHundredThousandActivity::new)
|
||||
GIVE_ONE_HUNDRED_THOUSAND_RECHARGE(ActivityType.GIVE_ONE_HUNDRED_THOUSAND_RECHARGE, GiveOneHundredThousandActivity::new),//送十万真充
|
||||
MONSTER_MONEY_TOTLE_RECHARGE(ActivityType.MONSTER_MONEY_TOTLE_RECHARGE, MoneyTotalRechargeActivity::new),//妖晶累充
|
||||
GOD_MONEY_TOTLE_RECHARGE(ActivityType.GOD_MONEY_TOTLE_RECHARGE, MoneyTotalRechargeActivity::new),//仙晶累充
|
||||
;
|
||||
|
||||
private int type;
|
||||
|
|
|
@ -55,7 +55,7 @@ public class AllPeopleWelfareActivity extends AbstractActivity {
|
|||
// 活动数据处理
|
||||
updateValue(event1.getGiftId());
|
||||
// 状态推送
|
||||
sendActivityProgress(user, user.getActivityManager().getActivityMissionMap().get(id), null);
|
||||
sendActivityProgress(user, null);
|
||||
}
|
||||
|
||||
public static int getValue(int goodId){
|
||||
|
@ -156,7 +156,7 @@ public class AllPeopleWelfareActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,welfareConfig.getType(),missionId);
|
||||
return true;
|
||||
|
|
|
@ -77,7 +77,7 @@ public class BrushPrivilegeActivity extends AbstractActivity {
|
|||
uporsetValue(user, event1.getGiftId(), 1);
|
||||
// 客户端推送
|
||||
ISession session = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(session, user.getActivityManager().getActivityMissionMap().get(id), null);
|
||||
sendActivityProgress(session, null);
|
||||
}
|
||||
|
||||
public void uporsetValue(User user, int giftId, int state) {
|
||||
|
@ -202,7 +202,7 @@ public class BrushPrivilegeActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,newConfig.getExtraReward(),missionId);
|
||||
return true;
|
||||
|
|
|
@ -106,7 +106,7 @@ public class ChoiceDrawCardActivity extends AbstractActivity {
|
|||
// 检查是否需要重启奖励
|
||||
checkResetProgress(user,mission);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,reward,missionId);
|
||||
return true;
|
||||
|
|
|
@ -65,7 +65,7 @@ public class ContinuousGiftActivity extends AbstractActivity {
|
|||
|
||||
// 客户端推送
|
||||
ISession session = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(session, user.getActivityManager().getActivityMissionMap().get(id), null);
|
||||
sendActivityProgress(session, null);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -87,7 +87,7 @@ public class CowFlySkyActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,reward,missionId);
|
||||
return true;
|
||||
|
|
|
@ -117,7 +117,7 @@ public class DailyPreferentialGiftActivity extends AbstractActivity{
|
|||
if(day > mission.getV()){
|
||||
mission.setV(day-1);
|
||||
}
|
||||
sendActivityProgress(user, mission, null);
|
||||
sendActivityProgress(user, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -173,7 +173,7 @@ public class DailyPreferentialGiftActivity extends AbstractActivity{
|
|||
int[][] reward = sActivityRewardConfig.getReward();
|
||||
activityMission.setV(day+1);
|
||||
checkAndSetProgress(activityMission, activityProgressInfo, missionId);
|
||||
sendActivityProgress(session, activityMission, null);
|
||||
sendActivityProgress(session, null);
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, reward, BIReason.TAKE_ACTIVITY_REWARD);
|
||||
reportTakeActivityReward(user,reward,missionId);
|
||||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
|
|
|
@ -47,7 +47,7 @@ class EquipExpectRankActivity extends ExpectRankActivity {
|
|||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -47,7 +47,7 @@ class EspecialEquipExpectActivity extends ExpectRankActivity {
|
|||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -5,17 +5,12 @@ import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
|||
import com.ljsd.jieling.logic.OnlineUserManager;
|
||||
import com.ljsd.jieling.logic.activity.event.EndExpeditionNodeEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.IEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.MissingRoomBestEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.util.ToolsUtil;
|
||||
import config.SActivityRewardConfig;
|
||||
import config.SGlobalActivity;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
|
@ -48,7 +43,7 @@ public class ExpeditionExpert extends ExpectRankActivity implements IEventHandle
|
|||
updateProgressWithUser(user,activityMission,nodeEvent.getNodeScore());
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -17,8 +17,6 @@ import util.TimeUtils;
|
|||
|
||||
import java.util.*;
|
||||
|
||||
import static config.SGlobalActivity.getsGlobalActivityMapByType;
|
||||
|
||||
public class FifteenActivity extends AbstractActivity {
|
||||
|
||||
public FifteenActivity(int id) {
|
||||
|
@ -88,7 +86,7 @@ public class FifteenActivity extends AbstractActivity {
|
|||
if(isAll){
|
||||
activityMission.setV(2);
|
||||
}
|
||||
sendActivityProgress(session,activityMission , null);
|
||||
sendActivityProgress(session, null);
|
||||
return true;
|
||||
|
||||
}
|
||||
|
|
|
@ -49,7 +49,7 @@ public class GiveEndlessDrawActivity extends AbstractActivity {
|
|||
ISession session = OnlineUserManager.sessionMap.get(event1.getUid());
|
||||
User user = UserManager.getUser(event1.getUid());
|
||||
// 状态推送
|
||||
sendActivityProgress(session, user.getActivityManager().getActivityMissionMap().get(id), null);
|
||||
sendActivityProgress(session, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -160,7 +160,7 @@ public class GiveEndlessDrawActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,rewardConfig.getReward(),missionId);
|
||||
return true;
|
||||
|
|
|
@ -148,7 +148,7 @@ public class GiveOneHundredThousandActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,rewardList,missionId);
|
||||
return true;
|
||||
|
|
|
@ -70,7 +70,7 @@ public class HeroStarActivity extends AbstractActivity {
|
|||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -128,7 +128,7 @@ public class HeroStarActivity extends AbstractActivity {
|
|||
if(sActivityRewardConfig==null){
|
||||
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
|
||||
}
|
||||
sendActivityProgress(session, activityMission, null);
|
||||
sendActivityProgress(session, null);
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, sActivityRewardConfig.getReward(), BIReason.TAKE_ACTIVITY_REWARD);
|
||||
build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
|
|
|
@ -43,7 +43,7 @@ class HeroUpExpectRankActivity extends ExpectRankActivity {
|
|||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -9,11 +9,9 @@ import com.ljsd.jieling.logic.OnlineUserManager;
|
|||
import com.ljsd.jieling.logic.activity.event.*;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.logic.mission.GameEvent;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.util.ItemUtil;
|
||||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import com.ljsd.jieling.util.ToolsUtil;
|
||||
import config.SActivityRewardConfig;
|
||||
import config.SGlobalActivity;
|
||||
import rpc.protocols.CommonProto;
|
||||
|
@ -76,7 +74,7 @@ public class HeroUpStarActivity extends AbstractActivity {
|
|||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
|
||||
}
|
||||
|
||||
|
@ -121,7 +119,7 @@ public class HeroUpStarActivity extends AbstractActivity {
|
|||
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
|
||||
}
|
||||
|
||||
|
@ -144,7 +142,7 @@ public class HeroUpStarActivity extends AbstractActivity {
|
|||
if(sActivityRewardConfig==null){
|
||||
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
|
||||
}
|
||||
sendActivityProgress(session, activityMission, null);
|
||||
sendActivityProgress(session, null);
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, sActivityRewardConfig.getReward(), BIReason.TAKE_ACTIVITY_REWARD);
|
||||
build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
|
|
|
@ -59,7 +59,7 @@ public class InfiniteResourcesPavilionActivity extends AbstractActivity {
|
|||
update(user, event1.getGiftId());
|
||||
// 客户端推送
|
||||
ISession session = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(session, user.getActivityManager().getActivityMissionMap().get(id), null);
|
||||
sendActivityProgress(session, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -164,7 +164,7 @@ public class InfiniteResourcesPavilionActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,newConfig.getExtraReward(),missionId);
|
||||
return true;
|
||||
|
|
|
@ -51,7 +51,7 @@ public class LevelExpectActivity extends ExpectRankActivity {
|
|||
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -5,16 +5,12 @@ import com.ljsd.jieling.exception.ErrorCodeException;
|
|||
import com.ljsd.jieling.globals.BIReason;
|
||||
import com.ljsd.jieling.jbean.ActivityMission;
|
||||
import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
||||
import com.ljsd.jieling.logic.activity.event.IEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||
import com.ljsd.jieling.logic.activity.event.RandomCardEvent;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.util.ItemUtil;
|
||||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import config.SActivityRewardConfig;
|
||||
import config.SLotterySpecialConfig;
|
||||
import config.SSpiritAnimalSummon;
|
||||
import manager.STableManager;
|
||||
import rpc.protocols.CommonProto;
|
||||
|
@ -94,7 +90,7 @@ public class LimitRandomSpecialMonsterActivityNew extends LimitRandomCardActivit
|
|||
// 检查是否需要重启奖励
|
||||
checkResetProgress(user,mission);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,reward,missionId);
|
||||
return true;
|
||||
|
|
|
@ -42,7 +42,7 @@ public class LimitUpCardActivity extends AbstractActivity {
|
|||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -101,7 +101,7 @@ public class LuckyCatActivity extends AbstractActivity {
|
|||
activityProgressInfo.setState(ActivityType.HAD_TAKED);
|
||||
}
|
||||
|
||||
sendActivityProgress(session, activityMission, Collections.singleton(missionId));
|
||||
sendActivityProgress(session, Collections.singleton(missionId));
|
||||
//drop
|
||||
int[][] reward = new int[1][];
|
||||
int[] temp2 = new int[2];
|
||||
|
|
|
@ -8,10 +8,7 @@ import com.ljsd.jieling.logic.dao.root.User;
|
|||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.util.ItemUtil;
|
||||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import com.ljsd.jieling.util.ToolsUtil;
|
||||
import config.SActivityRewardConfig;
|
||||
import config.SGlobalActivity;
|
||||
import config.SSpecialConfig;
|
||||
import rpc.protocols.CommonProto;
|
||||
import rpc.protocols.PlayerInfoProto;
|
||||
import util.TimeUtils;
|
||||
|
@ -92,7 +89,7 @@ public class LuckyGetActivity extends AbstractActivity{
|
|||
activityMission.setV(2);
|
||||
}
|
||||
|
||||
sendActivityProgress(session,activityMission , null);
|
||||
sendActivityProgress(session, null);
|
||||
|
||||
return true;
|
||||
|
||||
|
|
|
@ -62,7 +62,7 @@ class MissSearchExpectRankActivity extends ExpectRankActivity {
|
|||
updateProgressWithUser(user,activityMission,1);
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -54,7 +54,7 @@ public class MistyTripActivity extends AbstractActivity {
|
|||
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,171 @@
|
|||
package com.ljsd.jieling.logic.activity;
|
||||
|
||||
import com.ljsd.jieling.exception.ErrorCode;
|
||||
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||
import com.ljsd.jieling.globals.BIReason;
|
||||
import com.ljsd.jieling.jbean.ActivityMission;
|
||||
import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
||||
import com.ljsd.jieling.logic.OnlineUserManager;
|
||||
import com.ljsd.jieling.logic.activity.event.IEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||
import com.ljsd.jieling.logic.activity.event.SuperBoxEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.TotalItemEvent;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.util.ItemUtil;
|
||||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import config.SActivityRewardConfig;
|
||||
import config.SRechargeCommodityNewConfig;
|
||||
import config.SSuperZhenChong;
|
||||
import rpc.protocols.CommonProto;
|
||||
import rpc.protocols.PlayerInfoProto;
|
||||
import util.TimeUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* @author hj
|
||||
* bt版:妖晶累充,仙晶累充
|
||||
* 2022-9-6
|
||||
*/
|
||||
public class MoneyTotalRechargeActivity extends AbstractActivity {
|
||||
|
||||
MoneyTotalRechargeActivity(int id) {
|
||||
super(id);
|
||||
Poster.getPoster().listenEvent(this, TotalItemEvent.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initActivity(User user) throws Exception {
|
||||
// 活动信息初始化
|
||||
ActivityMission mission = new ActivityMission();
|
||||
ActivityLogic.getInstance().initOtherMission(mission, new ArrayList<>());
|
||||
user.getActivityManager().getActivityMissionMap().put(id, mission);
|
||||
LOGGER.info("累充活动-bt版...uid={},activityId={}",user.getId(), id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onEvent(IEvent event) throws Exception {
|
||||
// 类型验证
|
||||
if (!(event instanceof TotalItemEvent)) {
|
||||
return;
|
||||
}
|
||||
// 获取信息
|
||||
TotalItemEvent event1 = (TotalItemEvent) event;
|
||||
User user = UserManager.getUser(event1.getUserId());
|
||||
// 礼包处理
|
||||
update(user,event1.getMap());
|
||||
// 客户端推送
|
||||
ISession session = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(session,null);
|
||||
}
|
||||
|
||||
|
||||
public void update(User user, Map<Integer, Long> map) {
|
||||
ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
SActivityRewardConfig rewardConfig = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id).get(0);
|
||||
if (activityMission == null || rewardConfig == null){
|
||||
return;
|
||||
}
|
||||
int itemId = rewardConfig.getValues()[0][0];
|
||||
Long count = (long)activityMission.getV();
|
||||
for (Map.Entry<Integer, Long> entry : map.entrySet()) {
|
||||
if (entry.getKey() == itemId){
|
||||
count += entry.getValue();
|
||||
}
|
||||
}
|
||||
activityMission.setV(count.intValue());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取状态
|
||||
* @param user
|
||||
* @param config
|
||||
* @return
|
||||
* 0:不可领取
|
||||
* 1:可领取
|
||||
* 2:已领取
|
||||
*/
|
||||
private int getState(User user, SActivityRewardConfig config){
|
||||
if (config == null){
|
||||
return 0;
|
||||
}
|
||||
ActivityMission mission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
ActivityProgressInfo info = mission.getActivityMissionMap().get(config.getId());
|
||||
if (info != null && info.getState() == 2){
|
||||
return 2;
|
||||
}
|
||||
if (mission.getV() >= config.getValues()[0][1]){
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CommonProto.ActivityInfo.MissionInfo> getAllMissInfo(User user,ActivityMission activityMission, Set<Integer> filter) {
|
||||
if (activityMission == null){
|
||||
return new ArrayList<>();
|
||||
}
|
||||
// 策划表的配置
|
||||
List<SActivityRewardConfig> rewardConfigs = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id);
|
||||
// 返回对象
|
||||
List<CommonProto.ActivityInfo.MissionInfo> missionInfos = new ArrayList<>(rewardConfigs.size());
|
||||
for (SActivityRewardConfig value : rewardConfigs) {
|
||||
// 参数初始化
|
||||
int missionId = value.getId();
|
||||
int progress = activityMission.getV();
|
||||
int state = getState(user,value);
|
||||
// 封装proto并返回
|
||||
CommonProto.ActivityInfo.MissionInfo build = CommonProto.ActivityInfo.MissionInfo.newBuilder()
|
||||
.setMissionId(missionId)
|
||||
.setProgress(progress)
|
||||
.setState(state)
|
||||
.build();
|
||||
missionInfos.add(build);
|
||||
}
|
||||
return missionInfos;
|
||||
}
|
||||
|
||||
/**
|
||||
* 领取奖励
|
||||
* @param session
|
||||
* @param missionId
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
@Override
|
||||
public boolean takeReward(ISession session, int missionId) throws Exception {
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
// activity check
|
||||
ActivityMission mission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
if (mission == null){
|
||||
throw new ErrorCodeException(ErrorCode.SYS_ERROR_CODE,"活动信息不存在:"+id);
|
||||
}
|
||||
SActivityRewardConfig rewardConfig = SActivityRewardConfig.getsActivityRewardConfigByMissionId(missionId);
|
||||
int state = getState(user, rewardConfig);
|
||||
if (state != 1){
|
||||
throw new ErrorCodeException(ErrorCode.HAD_TAKE,"活动奖励领取失败:"+mission);
|
||||
}
|
||||
|
||||
// 更新数据库信息
|
||||
ActivityProgressInfo info = new ActivityProgressInfo();
|
||||
info.setState(2);
|
||||
mission.getActivityMissionMap().put(missionId,info);
|
||||
|
||||
// reward
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, rewardConfig.getReward(), BIReason.TAKE_ACTIVITY_REWARD);
|
||||
|
||||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,rewardConfig.getReward(),missionId);
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
|
@ -50,7 +50,7 @@ class NewRechargeSumDayActivity extends AbstractActivity {
|
|||
goodUpdate(user, goodId);
|
||||
}
|
||||
// 状态推送
|
||||
sendActivityProgress(user, user.getActivityManager().getActivityMissionMap().get(id), null);
|
||||
sendActivityProgress(user, null);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -32,39 +32,6 @@ public class NewWelfareActivity extends AbstractActivity {
|
|||
Poster.getPoster().listenEvent(this, NewWelfareEvent.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initActivity(User user) throws Exception {
|
||||
super.initActivity(user);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 更新进度
|
||||
*
|
||||
* @param filterMissId miss过滤
|
||||
*/
|
||||
@Override
|
||||
public void sendActivityProgress(ISession session, ActivityMission activityMission, Set<Integer> filterMissId) {
|
||||
if (session == null) {
|
||||
return;
|
||||
}
|
||||
PlayerInfoProto.ActivityUpateProgressIndication.Builder builder = PlayerInfoProto.ActivityUpateProgressIndication.newBuilder();
|
||||
|
||||
User user = UserManager.getUserInMem(session.getUid());
|
||||
if (user != null && activityMission != null) {
|
||||
if (activityMission.getActivityState() != ActivityType.OPEN_STATE) {
|
||||
return;
|
||||
}
|
||||
List<CommonProto.ActivityInfo.MissionInfo> missInfo = getAllMissInfo(user, activityMission, filterMissId);
|
||||
CommonProto.ActivityInfo.Builder builder1 = CommonProto.ActivityInfo.newBuilder()
|
||||
.setValue(activityMission.getV())
|
||||
.addAllMission(missInfo)
|
||||
.setActivityId(id);
|
||||
builder.setActivityInfo(builder1);
|
||||
MessageUtil.sendIndicationMessage(session, 1, MessageTypeProto.MessageType.ACTIVITY_UPDATE_PROGRESS_INDICATION_VALUE, builder.build(), true);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onEvent(IEvent event) throws Exception {
|
||||
if (!(event instanceof NewWelfareEvent)) {
|
||||
|
@ -87,7 +54,7 @@ public class NewWelfareActivity extends AbstractActivity {
|
|||
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -228,7 +195,7 @@ public class NewWelfareActivity extends AbstractActivity {
|
|||
if (isUpdate) {
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -251,13 +218,10 @@ public class NewWelfareActivity extends AbstractActivity {
|
|||
activityMission.getActivityMissionMap().put(item.getKey(), item.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
sendActivityProgress(session, activityMission, null);
|
||||
List<SActivityRewardConfig> sActivityRewardConfigs = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id);
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, sActivityRewardConfigs.get(0).getReward(), BIReason.TAKE_ACTIVITY_REWARD);
|
||||
build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
reportTakeActivityReward(user, sActivityRewardConfigs.get(0).getReward(), missionId);
|
||||
|
||||
} else {
|
||||
//领取第三个奖励用
|
||||
if (!activityProgressInfoMap.containsKey(missionId) || activityProgressInfoMap.get(missionId).getState() != 3) {
|
||||
|
@ -269,11 +233,12 @@ public class NewWelfareActivity extends AbstractActivity {
|
|||
if (sActivityRewardConfig == null) {
|
||||
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
|
||||
}
|
||||
sendActivityProgress(session, activityMission, null);
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, sActivityRewardConfig.getReward(), BIReason.TAKE_ACTIVITY_REWARD);
|
||||
build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
reportTakeActivityReward(user, sActivityRewardConfig.getReward(), missionId);
|
||||
}
|
||||
|
||||
sendActivityProgress(session, null);
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -58,7 +58,7 @@ public class RechargeFirstActivity extends AbstractActivity {
|
|||
// 活动数据处理
|
||||
updateValue(user, event1.getGiftId());
|
||||
// 状态推送
|
||||
sendActivityProgress(user, user.getActivityManager().getActivityMissionMap().get(id), null);
|
||||
sendActivityProgress(user, null);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -165,7 +165,7 @@ public class RechargeFirstActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user, reward, missionId);
|
||||
return true;
|
||||
|
|
|
@ -54,7 +54,7 @@ public class RechargeRewardActivity extends AbstractActivity {
|
|||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
@Override
|
||||
boolean takeRewardsProcess(ISession session, SActivityRewardConfig sActivityRewardConfig, ActivityProgressInfo activityProgressInfo) throws Exception {
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package com.ljsd.jieling.logic.activity;
|
||||
|
||||
import com.ljsd.GameApplication;
|
||||
import com.ljsd.jieling.exception.ErrorCode;
|
||||
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||
import com.ljsd.jieling.globals.BIReason;
|
||||
|
@ -17,7 +16,6 @@ import com.ljsd.jieling.util.ItemUtil;
|
|||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import config.SActivityRewardConfig;
|
||||
import config.SGlobalActivity;
|
||||
import config.SLuxuryFund;
|
||||
import rpc.protocols.CommonProto;
|
||||
import rpc.protocols.PlayerInfoProto;
|
||||
import util.TimeUtils;
|
||||
|
@ -73,7 +71,7 @@ class RechargeTotalActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,config.getReward(),missionId);
|
||||
return true;
|
||||
|
@ -142,7 +140,7 @@ class RechargeTotalActivity extends AbstractActivity {
|
|||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
|
||||
public boolean checkActivityMissionFinishAndTake(int uid,int activityId,ActivityMission activityMission){
|
||||
|
|
|
@ -68,7 +68,7 @@ public class SevenWorldActivity extends AbstractActivity {
|
|||
info.setState(1);
|
||||
mission.getActivityMissionMap().put(-1, info);
|
||||
// 状态推送
|
||||
sendActivityProgress(user, mission, null);
|
||||
sendActivityProgress(user, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -151,7 +151,7 @@ public class SevenWorldActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -69,7 +69,7 @@ class SignInSumActivity extends AbstractActivity {
|
|||
}
|
||||
reportTakeActivityReward(UserManager.getUser(session.getUid()),config.getReward(),missionId);
|
||||
ActivityMission activityMission = UserManager.getUser(session.getUid()).getActivityManager().getActivityMissionMap().get(this.id);
|
||||
sendActivityProgress(session, activityMission, null);
|
||||
sendActivityProgress(session, null);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
|
|
@ -47,7 +47,7 @@ class SoulEquipExpectActivity extends ExpectRankActivity {
|
|||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -144,7 +144,7 @@ public class SubActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 推送
|
||||
sendActivityProgress(session, activityMission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user, rewardList, missionId);
|
||||
return true;
|
||||
|
@ -215,9 +215,9 @@ public class SubActivity extends AbstractActivity {
|
|||
int curLay = user.getActivityManager().getSubRewardPoolInfo().getLay();
|
||||
if (curLay != sBlessingConfigNew.getFloorCount() && rewardId == activityMission.getV()) {
|
||||
ActivityLogic.getInstance().resumeActivity(user, ActivityType.SUB_ACTIVITY);
|
||||
sendActivityProgress(session, activityManager.getActivityMissionMap().get(id), null);
|
||||
sendActivityProgress(session, null);
|
||||
} else {
|
||||
sendActivityProgress(session, activityMission, Collections.singleton(missionId));
|
||||
sendActivityProgress(session, Collections.singleton(missionId));
|
||||
}
|
||||
reportTakeActivityReward(user, rewards, missionId);
|
||||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
|
|
|
@ -9,8 +9,6 @@ import com.ljsd.jieling.logic.OnlineUserManager;
|
|||
import com.ljsd.jieling.logic.activity.event.*;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.logic.store.BuyGoodsNewLogic;
|
||||
import com.ljsd.jieling.logic.store.newRechargeInfo.PushRechargeType;
|
||||
import com.ljsd.jieling.logic.store.newRechargeInfo.bean.ReceiveWelfareBag;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.util.ItemUtil;
|
||||
|
@ -54,7 +52,7 @@ class SummonTreasureActivity extends AbstractActivity {
|
|||
// 推送客户端数据
|
||||
ISession session = OnlineUserManager.getSessionByUid(user.getId());
|
||||
mission.setV(user.getPlayerInfoManager().getGetFiveStarHeroNum());
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -107,7 +105,7 @@ class SummonTreasureActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,reward,missionId);
|
||||
return true;
|
||||
|
|
|
@ -9,7 +9,6 @@ import com.ljsd.jieling.logic.activity.event.ActivityStateChangeEvent;
|
|||
import com.ljsd.jieling.logic.activity.event.IEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||
import com.ljsd.jieling.logic.activity.event.SuperBoxEvent;
|
||||
import com.ljsd.jieling.logic.dao.ServerConfig;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.logic.store.BuyGoodsNewLogic;
|
||||
|
@ -24,7 +23,6 @@ import rpc.protocols.CommonProto;
|
|||
import util.TimeUtils;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author hj
|
||||
|
@ -71,7 +69,7 @@ public class SuperBoxActivity extends AbstractActivity {
|
|||
|
||||
// 客户端推送
|
||||
ISession session = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(session, user.getActivityManager().getActivityMissionMap().get(id), null);
|
||||
sendActivityProgress(session, null);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -65,7 +65,7 @@ public class SuperFundNewActivity extends AbstractActivity {
|
|||
// 零点刷新
|
||||
zeroRefresh(user,event1.getGiftId());
|
||||
// 状态推送
|
||||
sendActivityProgress(user, user.getActivityManager().getActivityMissionMap().get(id), null);
|
||||
sendActivityProgress(user, null);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -198,7 +198,7 @@ public class SuperFundNewActivity extends AbstractActivity {
|
|||
PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
// 状态推送
|
||||
sendActivityProgress(session, mission, null);
|
||||
sendActivityProgress(session, null);
|
||||
// 打点上报
|
||||
reportTakeActivityReward(user,rewards,missionId);
|
||||
return true;
|
||||
|
|
|
@ -1,29 +1,14 @@
|
|||
package com.ljsd.jieling.logic.activity;
|
||||
|
||||
import com.ljsd.jieling.exception.ErrorCode;
|
||||
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||
import com.ljsd.jieling.globals.BIReason;
|
||||
import com.ljsd.jieling.jbean.ActivityManager;
|
||||
import com.ljsd.jieling.jbean.ActivityMission;
|
||||
import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
||||
import com.ljsd.jieling.logic.OnlineUserManager;
|
||||
import com.ljsd.jieling.logic.activity.event.BlessInfoRefreshEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.IEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||
import com.ljsd.jieling.logic.activity.event.TaSuiLingXiaoEvent;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.util.ItemUtil;
|
||||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import config.SActivityRewardConfig;
|
||||
import config.SGlobalActivity;
|
||||
import config.SLuckyCatConfig;
|
||||
import rpc.protocols.MessageTypeProto;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class TaSuiLingXiaoActivity extends AbstractActivity {
|
||||
|
@ -70,6 +55,6 @@ public class TaSuiLingXiaoActivity extends AbstractActivity {
|
|||
});
|
||||
//历史最高伤害
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,15 +2,11 @@ package com.ljsd.jieling.logic.activity;
|
|||
|
||||
|
||||
import com.ljsd.GameApplication;
|
||||
import com.ljsd.jieling.db.redis.RedisKey;
|
||||
import com.ljsd.jieling.db.redis.RedisUtil;
|
||||
import com.ljsd.jieling.jbean.ActivityMission;
|
||||
import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
||||
import com.ljsd.jieling.logic.OnlineUserManager;
|
||||
import com.ljsd.jieling.logic.activity.event.IEvent;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.util.ToolsUtil;
|
||||
import config.SActivityRewardConfig;
|
||||
import config.SGlobalActivity;
|
||||
import util.TimeUtils;
|
||||
|
@ -52,7 +48,7 @@ class ThreeWorldActivity extends AbstractActivity {
|
|||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
sendActivityProgress(sessionByUid, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -21,7 +21,7 @@ public class SuperBoxEvent implements IEvent {
|
|||
/**
|
||||
* 礼包id
|
||||
*/
|
||||
private int giftId;
|
||||
private int giftId = default_id;
|
||||
/**
|
||||
* 数量
|
||||
*/
|
||||
|
@ -32,6 +32,9 @@ public class SuperBoxEvent implements IEvent {
|
|||
*/
|
||||
private int type;
|
||||
|
||||
public SuperBoxEvent() {
|
||||
}
|
||||
|
||||
public SuperBoxEvent(int userId, int giftId) {
|
||||
this.userId = userId;
|
||||
this.giftId = giftId;
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
package com.ljsd.jieling.logic.activity.event;
|
||||
|
||||
import com.ljsd.jieling.tools.Utils;
|
||||
import com.ljsd.jieling.util.ItemMap;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @Author hj
|
||||
* @Date 2021/5/26 11:05
|
||||
* @Description: 累计
|
||||
* @Version 1.0
|
||||
*/
|
||||
public class TotalItemEvent implements IEvent {
|
||||
|
||||
private int userId;
|
||||
/**
|
||||
* 数量
|
||||
*/
|
||||
private Map<Integer, Long> map = new HashMap<>();
|
||||
|
||||
public TotalItemEvent() {
|
||||
}
|
||||
|
||||
public TotalItemEvent(int userId, Map<Integer, Long> map) {
|
||||
this.userId = userId;
|
||||
this.map = map;
|
||||
}
|
||||
|
||||
public TotalItemEvent(int userId, List<int[][]> list) {
|
||||
this.userId = userId;
|
||||
this.map = Utils.getItemMapObject(list);
|
||||
}
|
||||
|
||||
public TotalItemEvent(int userId, ItemMap itemMap) {
|
||||
this.userId = userId;
|
||||
this.map = itemMap.getItemMap();
|
||||
}
|
||||
|
||||
public int getUserId() {
|
||||
return userId;
|
||||
}
|
||||
|
||||
public void setUserId(int userId) {
|
||||
this.userId = userId;
|
||||
}
|
||||
|
||||
public Map<Integer, Long> getMap() {
|
||||
return map;
|
||||
}
|
||||
|
||||
public void setMap(Map<Integer, Long> map) {
|
||||
this.map = map;
|
||||
}
|
||||
}
|
|
@ -1038,7 +1038,7 @@ public class ItemLogic {
|
|||
//发推送
|
||||
AbstractActivity acticityType = ActivityTypeEnum.getActicityById(activityId);
|
||||
if(acticityType!=null){
|
||||
acticityType.sendActivityProgress(session, misson, null);
|
||||
acticityType.sendActivityProgress(session, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -475,6 +475,10 @@ public class BuyGoodsNewLogic {
|
|||
public static void sendGoodsByType(User user,SRechargeCommodityNewConfig config,List<int[][]> dropList) throws Exception{
|
||||
ISession session = OnlineUserManager.getSessionByUid(user.getId());
|
||||
int type = config.getType();
|
||||
|
||||
// 道具累计活动充值活动
|
||||
Poster.getPoster().dispatchEvent(new TotalItemEvent(user.getId(),dropList));
|
||||
|
||||
CommonProto.Drop.Builder drop = null;
|
||||
if(dropList != null && !dropList.isEmpty()){
|
||||
drop = ItemUtil.drop(user, dropList, BIReason.DIRECT_BUY);
|
||||
|
|
|
@ -55,20 +55,25 @@ public class ItemUtil {
|
|||
private static Set<Integer> dropAddition = new HashSet<>();//掉落权重加成id
|
||||
public static Map<Integer,String> equipQulityNameMap = new HashMap<>(2);
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(ItemUtil.class);
|
||||
|
||||
private static Set<Integer> currencyMap = new HashSet<>(2);
|
||||
private static HashSet<Integer> rmbItemSet = new HashSet<>();
|
||||
|
||||
|
||||
static {
|
||||
|
||||
|
||||
equipQulityNameMap.put(5,"传说");
|
||||
equipQulityNameMap.put(6,"远古");
|
||||
|
||||
currencyMap.add(Global.GEM);
|
||||
currencyMap.add(Global.GOLD);
|
||||
currencyMap.add(Global.SOULCRYSTAL);
|
||||
currencyMap.add(Global.DEVILJADE);//妖灵玉
|
||||
currencyMap.add(Global.ELITEPROOF);//精英证明
|
||||
currencyMap.add(Global.HEARTFIRE);//心火明晶
|
||||
|
||||
rmbItemSet.add(GlobalItemType.RMB_CARD);//现金卡
|
||||
rmbItemSet.add(GlobalItemType.DAY_RMB_CARD);//日抛现金卡
|
||||
rmbItemSet.add(GlobalItemType.XIAN_RECHARGE_CARD);//仙充卡
|
||||
rmbItemSet.add(GlobalItemType.DAY_XIAN_RECHARGE_CARD);//日抛仙充卡
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -584,7 +589,6 @@ public class ItemUtil {
|
|||
|
||||
/**
|
||||
* 成长百分比
|
||||
* @param sRewardItem
|
||||
* @return
|
||||
*/
|
||||
private static int getItemNum(User user,SRewardItem sRewardItem) {
|
||||
|
@ -1527,28 +1531,29 @@ public class ItemUtil {
|
|||
* bt是否是记录累充人民币的类型
|
||||
* 真充券: 只获得对应金额的妖晶和名望经验
|
||||
* 现金卡: 计入游戏内所有累计充值的活动,不计入单笔充值和直购类活动
|
||||
* 仙充卡: 计入游戏内所有累计充值的活动和单笔充值活动,不计入直购类活动(用gm扶持)
|
||||
* 仙充卡(用gm扶持): 计入游戏内所有累计充值的活动和单笔充值活动,不计入直购类活动
|
||||
* @param user
|
||||
* @return
|
||||
*/
|
||||
private static boolean rmbItemHandler(User user, SItem sItem){
|
||||
boolean result = true;
|
||||
private static boolean rmbItemHandler(User user, SItem sItem) throws ErrorCodeException {
|
||||
if (!rmbItemSet.contains(sItem.getItemType())){
|
||||
return false;
|
||||
}
|
||||
NewRechargeInfo info = user.getPlayerInfoManager().getNewRechargeInfo();
|
||||
int num = sItem.getExtraReward()[1][0];
|
||||
switch (sItem.getItemType()){
|
||||
case GlobalItemType.RMB_CARD:
|
||||
case GlobalItemType.DAY_RMB_CARD:
|
||||
BuyGoodsNewLogic.changeActivity(user,num,info);
|
||||
break;
|
||||
case GlobalItemType.XIAN_RECHARGE_CARD:
|
||||
case GlobalItemType.DAY_XIAN_RECHARGE_CARD:
|
||||
info.addRmb(num);
|
||||
break;
|
||||
default:
|
||||
result = false;
|
||||
break;
|
||||
// 累充活动
|
||||
BuyGoodsNewLogic.changeActivity(user,num,info);
|
||||
|
||||
// 道具累计活动充值活动
|
||||
ItemMap itemMap = new ItemMap();
|
||||
combineRewardDropGroup(user,sItem.getRewardGroup(),1, itemMap);
|
||||
Poster.getPoster().dispatchEvent(new TotalItemEvent(user.getId(),itemMap));
|
||||
|
||||
// 单笔充值
|
||||
if (sItem.getItemType() == GlobalItemType.XIAN_RECHARGE_CARD || sItem.getItemType() == GlobalItemType.DAY_XIAN_RECHARGE_CARD){
|
||||
Poster.getPoster().dispatchEvent(new SingleRechargeEvent(user.getId(),num));
|
||||
}
|
||||
return result;
|
||||
return true;
|
||||
}
|
||||
|
||||
public static void addCard(User user,int cardId,List<CommonProto.Hero> heroList,int reason) throws Exception {
|
||||
|
|
Loading…
Reference in New Issue