Merge branch 'master' of 60.1.1.230:backend/jieling_server

wangyuan 2019-06-02 15:23:42 +08:00
commit 6eee4f5688
7 changed files with 76 additions and 3 deletions

View File

@ -61,6 +61,12 @@ public class SGameSetting implements BaseConfig {
private int equipCompoundLimit;
private int[] dailyGift;
private int recoveryTime;
private int heroTimes;
private static SGameSetting gameSetting;
@ -164,4 +170,17 @@ public class SGameSetting implements BaseConfig {
public int getAdventureOffline() {
return adventureOffline;
}
public int[] getDailyGift() {
return dailyGift;
}
public int getRecoveryTime() {
return recoveryTime;
}
public int getHeroTimes() {
return heroTimes;
}
}

View File

@ -42,5 +42,7 @@ public interface BIReason {
int GM_REWARD = 28; //gm加成
int VIP_DAY_REWARD = 29; //VIP 每日赠送
}

View File

@ -2,6 +2,8 @@ package com.ljsd.jieling.globals;
public interface Global {
int STAMINA = 2; // 体力id
int HEROSTORY_TICKET = 28; //精英入场券
int GENERALSTORY_TICKET = 27; //普通入场券
int GEM = 16; // 妖精id
int SEND_CARD_COUNT = 20; // 每页发送卡牌个数
int SEND_ITEM_COUNT = 200; // 每页发送道具个数

View File

@ -7,6 +7,7 @@ import com.ljsd.jieling.logic.arena.ArenaLogic;
import com.ljsd.jieling.logic.dao.PlayerManager;
import com.ljsd.jieling.logic.dao.UserManager;
import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.player.PlayerLogic;
import com.ljsd.jieling.logic.store.StoreLogic;
import com.ljsd.jieling.netty.cocdex.PacketNetData;
import com.ljsd.jieling.network.session.ISession;
@ -58,7 +59,7 @@ public class GetPlayerInfoHandler extends BaseHandler{
StoreLogic.resetStoreRefreshNum(userId);
//竞技场免费次数刷新
ArenaLogic.getInstance().flushFreeUseTimes(user);
playerInfoManager.vipFlush();
PlayerLogic.getInstance().vipflushEveryDay(user);
}
playerInfoManager.setLoginTime(TimeUtils.now());

View File

@ -176,6 +176,29 @@ public class MapManager extends MongoBase {
}
public static void getHeroTicket(User user) throws Exception {
Item item = user.getItemManager().getItemMap().get(Global.HEROSTORY_TICKET);
if(item == null){
return;
}
int itemNum = item.getItemNum();
int updateTime = (int) (System.currentTimeMillis() / 1000);
int lastUpdateEnergyTime = item.getEndingTime();
int recoveryTime = SGameSetting.getGameSetting().getRecoveryTime();
int heroTimes = SGameSetting.getGameSetting().getHeroTimes();
int recoveryTimes = (updateTime - lastUpdateEnergyTime)/recoveryTime;
if(itemNum<heroTimes && recoveryTimes>0){
int addValue = MathUtils.setBetweenWithMax(itemNum+recoveryTimes,0,heroTimes);
if(addValue!=0){
item.setItemNum(addValue);
setLastUpdateEnergyTime(item, updateTime, lastUpdateEnergyTime);
}
}else{
setLastUpdateEnergyTime(item, updateTime, lastUpdateEnergyTime);
}
}
public static void getEnergy(User user) throws Exception {
PlayerManager playerInfoManager = user.getPlayerInfoManager();

View File

@ -1,11 +1,13 @@
package com.ljsd.jieling.logic.player;
import com.ljsd.jieling.config.SGameSetting;
import com.ljsd.jieling.config.SRandomName;
import com.ljsd.jieling.config.SVipLevelConfig;
import com.ljsd.jieling.core.GlobalsDef;
import com.ljsd.jieling.db.redis.RedisKey;
import com.ljsd.jieling.db.redis.RedisUtil;
import com.ljsd.jieling.globals.BIReason;
import com.ljsd.jieling.logic.dao.Item;
import com.ljsd.jieling.logic.dao.PlayerManager;
import com.ljsd.jieling.logic.dao.TeamPosManager;
import com.ljsd.jieling.logic.dao.UserManager;
@ -207,4 +209,28 @@ public class PlayerLogic {
}
MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.USER_FORCE_CHANGE_RESPONSE_VALUE,null,true);
}
public void vipflushEveryDay(User user) throws Exception {
PlayerManager playerInfoManager = user.getPlayerInfoManager();
playerInfoManager.vipFlush();
int vipLevel = user.getPlayerInfoManager().getVipLevel();
SVipLevelConfig sVipLevelConfig = SVipLevelConfig.getsVipLevelConfigMap().get(vipLevel);
Map<Integer, Integer> privilegeMap = sVipLevelConfig.getPrivilegeMap();
int[] dailyGift = SGameSetting.getGameSetting().getDailyGift();
if(privilegeMap!=null&&privilegeMap.containsKey(dailyGift[1])){
Item item = user.getItemManager().getItem(dailyGift[0]);
Integer num = privilegeMap.get(dailyGift[1]);
int hadNum=0;
if(item!=null){
hadNum=item.getItemNum();
}
if(hadNum<num){
Map<Integer,Integer> itemMap = new HashMap<>(1);
itemMap.put(dailyGift[0],num-hadNum);
ItemUtil.addItem(user,itemMap,null,BIReason.VIP_DAY_REWARD);
}
}
}
}

View File

@ -911,9 +911,9 @@ public class ItemUtil {
}
private static int parseTheValueByPrivilegeMap( Map<Integer, Integer> privilegeMap,int sourceNum,int privigeId){
Integer privigeValue = privilegeMap.get(1);
Integer privigeValue = privilegeMap.get(privigeId);
if(privigeValue!=null){
SPrivilegeTypeConfig sPrivilegeTypeConfig = SPrivilegeTypeConfig.getsPrivilegeTypeConfigMap().get(1);
SPrivilegeTypeConfig sPrivilegeTypeConfig = SPrivilegeTypeConfig.getsPrivilegeTypeConfigMap().get(privigeId);
int dataType = sPrivilegeTypeConfig.getIfFloat();
if(dataType == GlobalsDef.PERCENT_TYPE){
sourceNum=(10000 + privigeValue) * sourceNum / 10000;