青龙秘宝

back_recharge
lilei 2020-08-19 09:47:02 +08:00
parent f202f73b73
commit 2ef8972406
6 changed files with 25 additions and 9 deletions

View File

@ -245,7 +245,7 @@ public class TreasureActivity extends AbstractActivity {
for(int i = 1 ; i<=user.getPlayerInfoManager().getTreasureLevel();i++){
Map<Integer, ActivityProgressInfo> progressInfoMap = activityMission.getActivityMissionMap();
int state =progressInfoMap.get(i).getState();
if(state==destState||state==ActivityType.FINISH_TAKED) {
if(state == destState || state == ActivityType.FINISH_TAKED) {
continue;
}
dropByState(dropList,state,destState,i);

View File

@ -117,7 +117,7 @@ public enum MissionType {
GOT_ANY_ITEM(109),//暂时不实现占位任意途径获得quality品质无品质限定为0type类别无类别限制为-1的itemid道具无指定道具限定为0num个
CAR_PLAY_DAYS(110),//累计n天挑战车迟斗法 TODO 确认如果是累计则105已实现如果是连续需要实现
//110-累计n天挑战车迟斗法 --类型105已实现
ARENA_CONSECUTIVE_WIN(111),//竞技场连胜
PLAY_MINI_GAME_TIMES(112),//森罗幻境中参与n次小游戏
CHAMPIONSHIP_RANK(113),//巅峰联赛中达到num名

View File

@ -11,7 +11,8 @@ public class BuyGoodsManager implements BaseDataManager {
int itemId = (int)parm[0];
int itemNum = (int)parm[1];
int storeType = (int)parm[2];
if(storeType == StoreType.FUNCTION_STORE.getType() && missionType == MissionType.BUY_GOLD_TIMES && itemId == Global.GOLD){
if((storeType == StoreType.FUNCTION_STORE.getType() || storeType == StoreType.GOLD_STORE.getType())
&& missionType == MissionType.BUY_GOLD_TIMES && itemId == Global.GOLD){
data.buyGoldTimes = data.buyGoldTimes + itemNum;
return new CumulationData.Result(missionType);
}else if(storeType == StoreType.FUNCTION_STORE.getType() && missionType == MissionType.BUY_STAMINA_TIMES && itemId == Global.STAMINA){

View File

@ -426,7 +426,7 @@ public class BuyGoodsLogic {
*
*
*/
if(starReward != 0){
if(starReward > 0){
StringBuilder rewardStr = new StringBuilder();
while (starReward>0){
SChallengeStarBox sChallengeStarBox = STableManager.getConfig(SChallengeStarBox.class).get(starReward);
@ -447,7 +447,8 @@ public class BuyGoodsLogic {
}
if(user.getPlayerInfoManager().getMonthCard().containsKey(Global.MONTHCARDID) || goodsType == GiftGoodsType.WEEKCARD || goodsType == GiftGoodsType.FOUND_ONE || goodsType == GiftGoodsType.FOUND_TWO){
PlayerLogic.getInstance().sendDayilyMail(user,goodsType);
}else if(goodsType == GiftGoodsType.SUN_LONG ){
}
if(goodsType == GiftGoodsType.SUN_LONG){
user.getPlayerInfoManager().setHadBuyTreasure(1);
}
}

View File

@ -11,7 +11,7 @@ public enum StoreType {
TRIAL_STORE(8),
GIFT_STORE(9),
GOLD_STORE(57),//点金功能商店
;
private int type;

View File

@ -704,9 +704,23 @@ public class ItemUtil {
return;
}
STreasureSunlongConfig levelConfig = STreasureSunlongConfig.levelTreasureConfigMap.get(activity.getId()).get(user.getPlayerInfoManager().getTreasureLevel());
while(levelConfig!=null&&levelConfig.getIntegral().length>0&&ItemUtil.itemCost(user,levelConfig.getIntegral(), BIReason.TREASURE_LEVEL_UP_CONSUME,1)){
user.getPlayerInfoManager().addTreasureLevel();
levelConfig = STreasureSunlongConfig.levelTreasureConfigMap.get(activity.getId()).get(user.getPlayerInfoManager().getTreasureLevel());
if (levelConfig != null) {
//需要先确定下每级真实需要的经验,与客户端实现方式同步,认为表里填的升到下一级所需经验是前边各级经验总和
int[][] integral = levelConfig.getIntegral();
STreasureSunlongConfig lastLevelConfig = STreasureSunlongConfig.levelTreasureConfigMap.get(activity.getId()).get(levelConfig.getLevel() - 1);
int[][] costItems = integral;
if (lastLevelConfig != null) {
costItems = new int[][]{{integral[0][0], integral[0][1] - lastLevelConfig.getIntegral()[0][1]}};
}
while(levelConfig != null && integral.length > 0 &&ItemUtil.itemCost(user, costItems, BIReason.TREASURE_LEVEL_UP_CONSUME,1)){
user.getPlayerInfoManager().addTreasureLevel();
lastLevelConfig = levelConfig;
levelConfig = STreasureSunlongConfig.levelTreasureConfigMap.get(activity.getId()).get(user.getPlayerInfoManager().getTreasureLevel());
if (levelConfig != null && levelConfig.getIntegral().length > 0) {
integral = levelConfig.getIntegral();
costItems = new int[][]{{integral[0][0],integral[0][1] - lastLevelConfig.getIntegral()[0][1]}};
}
}
}
PlayerInfoProto.TreasureLevelUpIndication indication = PlayerInfoProto.TreasureLevelUpIndication.newBuilder().setLevel(user.getPlayerInfoManager().getTreasureLevel()).build();
MessageUtil.sendIndicationMessage(OnlineUserManager.getSessionByUid(user.getId()),1,MessageTypeProto.MessageType.TREASURE_LEVELUP_INDICATION_VALUE,indication,true);