挂机邮件
parent
6e5642857a
commit
2b40c77e68
|
@ -68,13 +68,13 @@ public class MainLevelManager extends MongoBase {
|
||||||
updateString("lastTime",lastTime);
|
updateString("lastTime",lastTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void afterTakeStateReward(boolean needReset,int lastTakes){
|
public void afterTakeStateReward(boolean needReset,int lastTakes,int time){
|
||||||
fightStateInfo.clear();
|
fightStateInfo.clear();
|
||||||
int now = (int)(System.currentTimeMillis()/1000);
|
int now = (int)(System.currentTimeMillis()/1000);
|
||||||
SGameSetting gameSetting = STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting();
|
SGameSetting gameSetting = STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting();
|
||||||
if(needReset){
|
if(needReset){
|
||||||
this.startTime = now;
|
this.startTime = time;
|
||||||
this.lastTime = now;
|
this.lastTime = time;
|
||||||
}else{
|
}else{
|
||||||
int adventureRefresh = gameSetting.getAdventureRefresh();
|
int adventureRefresh = gameSetting.getAdventureRefresh();
|
||||||
this.lastTime = lastTime+lastTakes*adventureRefresh;
|
this.lastTime = lastTime+lastTakes*adventureRefresh;
|
||||||
|
@ -121,6 +121,11 @@ public class MainLevelManager extends MongoBase {
|
||||||
return lastTime;
|
return lastTime;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setLastTime(int lastTime) {
|
||||||
|
this.lastTime = lastTime;
|
||||||
|
updateString("lastTime",lastTime);
|
||||||
|
}
|
||||||
|
|
||||||
public Map<Integer, HashSet<String>> getBossIds() {
|
public Map<Integer, HashSet<String>> getBossIds() {
|
||||||
return bossIds;
|
return bossIds;
|
||||||
}
|
}
|
||||||
|
|
|
@ -200,7 +200,7 @@ public class CombatLogic {
|
||||||
User user = UserManager.getUser(uid);
|
User user = UserManager.getUser(uid);
|
||||||
Map<Integer, CommonProto.Drop> adventureFastReward =null;
|
Map<Integer, CommonProto.Drop> adventureFastReward =null;
|
||||||
if(type == 2){
|
if(type == 2){
|
||||||
adventureFastReward = getNewAdventureReward(user,false);
|
adventureFastReward = getNewAdventureReward(user,false,(int)(TimeUtils.now()/1000));
|
||||||
if(adventureFastReward.get(1).getItemlistCount()==0){
|
if(adventureFastReward.get(1).getItemlistCount()==0){
|
||||||
throw new ErrorCodeException(ErrorCode.REWARD_COLLECTING);
|
throw new ErrorCodeException(ErrorCode.REWARD_COLLECTING);
|
||||||
}
|
}
|
||||||
|
@ -226,8 +226,8 @@ public class CombatLogic {
|
||||||
KtEventUtils.onKtEvent(user,ParamEventBean.UserGameType,KTGameType.TAKE_SECURE_REWARD.getIndex(),type*10);
|
KtEventUtils.onKtEvent(user,ParamEventBean.UserGameType,KTGameType.TAKE_SECURE_REWARD.getIndex(),type*10);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Map<Integer,CommonProto.Drop> getNewAdventureReward(User user,boolean sendMail) throws Exception {
|
public Map<Integer,CommonProto.Drop> getNewAdventureReward(User user,boolean sendMail,int time) throws Exception {
|
||||||
GetNewAdventureData getNewAdventureData = new GetNewAdventureData(user, sendMail,false).invoke();
|
GetNewAdventureData getNewAdventureData = new GetNewAdventureData(user, sendMail,false).invoke(time);
|
||||||
if (getNewAdventureData.is()) return null;
|
if (getNewAdventureData.is()) return null;
|
||||||
CommonProto.Drop.Builder baseBuilder = getNewAdventureData.getBaseBuilder();
|
CommonProto.Drop.Builder baseBuilder = getNewAdventureData.getBaseBuilder();
|
||||||
CommonProto.Drop.Builder randomBuilder = getNewAdventureData.getRandomBuilder();
|
CommonProto.Drop.Builder randomBuilder = getNewAdventureData.getRandomBuilder();
|
||||||
|
@ -884,7 +884,7 @@ public class CombatLogic {
|
||||||
return rewardStr;
|
return rewardStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
public GetNewAdventureData invoke() throws Exception {
|
public GetNewAdventureData invoke(int time) throws Exception {
|
||||||
MainLevelManager mainLevelManager = user.getMainLevelManager();
|
MainLevelManager mainLevelManager = user.getMainLevelManager();
|
||||||
Map<Integer, Integer> fightStateInfo = user.getMainLevelManager().getFightStateInfo();
|
Map<Integer, Integer> fightStateInfo = user.getMainLevelManager().getFightStateInfo();
|
||||||
SGameSetting gameSetting = STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting();
|
SGameSetting gameSetting = STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting();
|
||||||
|
@ -917,8 +917,8 @@ public class CombatLogic {
|
||||||
int fightId = mainLevelManager.getFightId();
|
int fightId = mainLevelManager.getFightId();
|
||||||
SMainLevelConfig targetMainLevelConfig = SMainLevelConfig.config.get(fightId);
|
SMainLevelConfig targetMainLevelConfig = SMainLevelConfig.config.get(fightId);
|
||||||
int lastTime = mainLevelManager.getLastTime();
|
int lastTime = mainLevelManager.getLastTime();
|
||||||
int now = (int) (System.currentTimeMillis() / 1000);
|
// int now = (int) (System.currentTimeMillis() / 1000);
|
||||||
int times = (now - lastTime)/STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting().getAdventureRefresh();
|
int times = (time - lastTime)/STableManager.getFigureConfig(CommonStaticConfig.class).getGameSetting().getAdventureRefresh();
|
||||||
int maxTimes = adventureOffline - takeTimes;
|
int maxTimes = adventureOffline - takeTimes;
|
||||||
int lastTimeTakes=0;
|
int lastTimeTakes=0;
|
||||||
boolean reset = maxTimes<times;
|
boolean reset = maxTimes<times;
|
||||||
|
@ -948,14 +948,14 @@ public class CombatLogic {
|
||||||
String randomReward = ItemUtil.getReward(randomItemMap, randomCardMap, randomEquipMap, randomRandomMap);
|
String randomReward = ItemUtil.getReward(randomItemMap, randomCardMap, randomEquipMap, randomRandomMap);
|
||||||
if(randomReward.length()!=0){
|
if(randomReward.length()!=0){
|
||||||
reward = reward + "|" + randomReward;
|
reward = reward + "|" + randomReward;
|
||||||
MailLogic.getInstance().sendMail(user.getId(),title,content,reward,now, Global.MAIL_EFFECTIVE_TIME);
|
MailLogic.getInstance().sendMail(user.getId(),title,content,reward,time, Global.MAIL_EFFECTIVE_TIME);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mainLevelManager.afterTakeStateReward(true,0);
|
mainLevelManager.afterTakeStateReward(true,0,time);
|
||||||
myResult = true;
|
myResult = true;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
mainLevelManager.afterTakeStateReward(reset,lastTimeTakes);
|
mainLevelManager.afterTakeStateReward(reset,lastTimeTakes,time);
|
||||||
ItemUtil.drop(user,baseBuilder,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap, BIReason.ADVENTURE_BASE_REWARD);
|
ItemUtil.drop(user,baseBuilder,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap, BIReason.ADVENTURE_BASE_REWARD);
|
||||||
ItemUtil.drop(user,randomBuilder,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap,BIReason.ADVENTURE_RANDOM_REWARDD);
|
ItemUtil.drop(user,randomBuilder,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap,BIReason.ADVENTURE_RANDOM_REWARDD);
|
||||||
myResult = false;
|
myResult = false;
|
||||||
|
|
|
@ -20,6 +20,7 @@ import com.ljsd.jieling.logic.activity.event.UserForceChangeEvent;
|
||||||
import com.ljsd.jieling.logic.dao.*;
|
import com.ljsd.jieling.logic.dao.*;
|
||||||
import com.ljsd.jieling.logic.dao.root.User;
|
import com.ljsd.jieling.logic.dao.root.User;
|
||||||
import com.ljsd.jieling.logic.family.GuildLogic;
|
import com.ljsd.jieling.logic.family.GuildLogic;
|
||||||
|
import com.ljsd.jieling.logic.fight.CombatLogic;
|
||||||
import com.ljsd.jieling.logic.hero.HeroLogic;
|
import com.ljsd.jieling.logic.hero.HeroLogic;
|
||||||
import com.ljsd.jieling.logic.mail.MailLogic;
|
import com.ljsd.jieling.logic.mail.MailLogic;
|
||||||
import com.ljsd.jieling.logic.mission.GameEvent;
|
import com.ljsd.jieling.logic.mission.GameEvent;
|
||||||
|
@ -286,21 +287,28 @@ public class PlayerLogic {
|
||||||
removePrivileges.add(VipPrivilegeType.UNLOCK_STAR_EXTRA_REWARD);
|
removePrivileges.add(VipPrivilegeType.UNLOCK_STAR_EXTRA_REWARD);
|
||||||
}*/
|
}*/
|
||||||
}
|
}
|
||||||
playerInfoManager.vipFlush(removePrivileges);
|
|
||||||
int vipLevel = user.getPlayerInfoManager().getVipLevel();
|
int vipLevel = user.getPlayerInfoManager().getVipLevel();
|
||||||
sendVipDailyOrLevlUpReward(user, vipLevel,BIReason.VIP_DAY_REWARD);
|
sendVipDailyOrLevlUpReward(user, vipLevel,BIReason.VIP_DAY_REWARD);
|
||||||
if(fBuilder!=null){
|
List<CommonProto.Privilege> privilegeList = new ArrayList<>();
|
||||||
List<CommonProto.Privilege> privilegeList = new ArrayList<>();
|
Map<Integer, VipInfo> vipInfo = playerInfoManager.getVipInfo();
|
||||||
Map<Integer, VipInfo> vipInfo = playerInfoManager.getVipInfo();
|
for(Map.Entry<Integer,VipInfo> vipInfoItem : vipInfo.entrySet()){
|
||||||
for(Map.Entry<Integer,VipInfo> vipInfoItem : vipInfo.entrySet()){
|
if(vipInfoItem.getValue().getEffectTime()!=0 && vipInfoItem.getValue().getEffectTime()<=(TimeUtils.now()/1000)){
|
||||||
privilegeList.add(CommonProto.Privilege.newBuilder()
|
if(SPrivilegeTypeConfig.getsPrivilegeTypeConfigMap().get(vipInfoItem.getKey()).getPrivilegeType()==VipPrivilegeType.ADVENTURE_BASE_REWARD){
|
||||||
.setId(vipInfoItem.getKey())
|
CombatLogic.getInstance().getNewAdventureReward(user,true,vipInfoItem.getValue().getEffectTime());
|
||||||
. setUsedTimes(vipInfoItem.getValue().getCount())
|
}
|
||||||
.setEffectTime(vipInfoItem.getValue().getEffectTime())
|
removePrivileges.add(vipInfoItem.getKey());
|
||||||
.build());
|
continue;
|
||||||
}
|
}
|
||||||
|
privilegeList.add(CommonProto.Privilege.newBuilder()
|
||||||
|
.setId(vipInfoItem.getKey())
|
||||||
|
. setUsedTimes(vipInfoItem.getValue().getCount())
|
||||||
|
.setEffectTime(vipInfoItem.getValue().getEffectTime())
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
if(fBuilder!=null){
|
||||||
fBuilder.setHadTakeDailyBox(playerInfoManager.getHadTakeDailyBoxVip()).addAllPrivilege(privilegeList);
|
fBuilder.setHadTakeDailyBox(playerInfoManager.getHadTakeDailyBoxVip()).addAllPrivilege(privilegeList);
|
||||||
}
|
}
|
||||||
|
playerInfoManager.vipFlush(removePrivileges);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -815,9 +823,6 @@ public class PlayerLogic {
|
||||||
if(!vipInfo.containsKey(config.getId())){
|
if(!vipInfo.containsKey(config.getId())){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if(vipInfo.get(config.getId()).getEffectTime()!=0&&vipInfo.get(config.getId()).getEffectTime()<TimeUtils.now()/1000){
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
typePrivileges.add(config.getId());
|
typePrivileges.add(config.getId());
|
||||||
}
|
}
|
||||||
if(typePrivileges.isEmpty()){
|
if(typePrivileges.isEmpty()){
|
||||||
|
|
|
@ -284,7 +284,7 @@ public class BuyGoodsLogic {
|
||||||
public static void addNewPrivilege(User user ,int privilege,PlayerInfoProto.PrivilegeIndication.Builder indication) throws Exception {
|
public static void addNewPrivilege(User user ,int privilege,PlayerInfoProto.PrivilegeIndication.Builder indication) throws Exception {
|
||||||
int privilegeType = SPrivilegeTypeConfig.getsPrivilegeTypeConfigMap().get(privilege).getPrivilegeType();
|
int privilegeType = SPrivilegeTypeConfig.getsPrivilegeTypeConfigMap().get(privilege).getPrivilegeType();
|
||||||
if(privilegeType== VipPrivilegeType.ADVENTURE_BASE_REWARD){
|
if(privilegeType== VipPrivilegeType.ADVENTURE_BASE_REWARD){
|
||||||
CombatLogic.getInstance().getNewAdventureReward(user,true);
|
CombatLogic.getInstance().getNewAdventureReward(user,true,(int)(TimeUtils.now()/1000));
|
||||||
}
|
}
|
||||||
user.getPlayerInfoManager().addVipInfo(privilege);
|
user.getPlayerInfoManager().addVipInfo(privilege);
|
||||||
VipInfo vipInfo = user.getPlayerInfoManager().getVipInfo().get(privilege);
|
VipInfo vipInfo = user.getPlayerInfoManager().getVipInfo().get(privilege);
|
||||||
|
|
|
@ -534,7 +534,7 @@ public class CBean2Proto {
|
||||||
if(update){
|
if(update){
|
||||||
mainLevelManager.directUpdateDb();
|
mainLevelManager.directUpdateDb();
|
||||||
}
|
}
|
||||||
CombatLogic.GetNewAdventureData getNewAdventureData = new CombatLogic.GetNewAdventureData(user, false,true).invoke();
|
CombatLogic.GetNewAdventureData getNewAdventureData = new CombatLogic.GetNewAdventureData(user, false,true).invoke((int)TimeUtils.now());
|
||||||
if (!StringUtil.isEmpty(getNewAdventureData.getRewardStr())){
|
if (!StringUtil.isEmpty(getNewAdventureData.getRewardStr())){
|
||||||
builder.setReward(getNewAdventureData.getRewardStr());
|
builder.setReward(getNewAdventureData.getRewardStr());
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue