戒灵秘宝升级

back_recharge
lvxinran 2019-10-10 13:41:29 +08:00
parent 994f38dd78
commit 8c73e07e12
7 changed files with 26 additions and 16 deletions

View File

@ -86,7 +86,7 @@ public class SSpecialConfig implements BaseConfig {
String[] array = value.split("\\|");
int[][] arrayNum = new int[array.length][];
for (int i = 0 ; i < array.length;i++) {
String[] temp = array[i].split("\\#");
String[] temp = array[i].split("#");
int[] tempNum = new int[temp.length];
for (int j = 0 ; j < tempNum.length;j++) {
tempNum[j] = Integer.parseInt(temp[j]);
@ -113,5 +113,4 @@ public class SSpecialConfig implements BaseConfig {
public String getValue() {
return value;
}
}

View File

@ -14,7 +14,8 @@ public interface Global {
int ELITEPROOF = 25; // 精英证明
int HEARTFIRE = 26; // 心火明晶
int CHANGENAME = 64; // 改名卡
int EXP = 17;//经验
int TREASURE_SCORE = 68;//孙龙宝藏积分
int SEND_CARD_COUNT = 20; // 每页发送卡牌个数
int SEND_ITEM_COUNT = 200; // 每页发送道具个数

View File

@ -24,12 +24,10 @@ public interface GlobalItemType {
int SOUL_MARK =13;// 魂印
int ESPECIAL_EQUIP = 14;//法宝
int EXP = 17;//经验
//物品使用类型
int NO_USE = 0 ; //不使用
int RANDOM_USE = 1; // 随机使用
//道具id
int STAMINA = 2; // 精力
}

View File

@ -296,7 +296,7 @@ public class UserMissionManager extends MongoBase {
temp[1] = STreasureSunlongTaskConfig.treasureTaskConfig.get(taskTypeMap.get(i)).getWeight();
randomTask[i] = temp;
}
int[] tasks= MathUtils.randomFromWeightWithTaking(randomTask,5);// typeMissionNum[type-1]
int[] tasks= MathUtils.randomFromWeightWithTaking(randomTask,typeMissionNum[type-1]);// typeMissionNum[type-1]
List<MissionStateChangeInfo> missionStateChangeInfos = missionTypeEnumListMap.get(GameMisionType.TREASUREMISSION);
for(Integer task:tasks){
treasureMissionIdsType.getDoingMissionIds().add(task);

View File

@ -350,16 +350,10 @@ public class MissionLoigc {
missionStateChangeInfos = gameMisionTypeListMap.get(GameMisionType.TREASUREMISSION);
if(missionStateChangeInfos!=null && !missionStateChangeInfos.isEmpty()){
// ItemUtil.drop(user,STreasureSunlongTaskConfig.treasureTaskConfig.get(missionId).getIntegral(),BIReason.TREASURE_SCORE);
KtEventUtils.onKtEvent(user, ParamEventBean.UserTaskEvent,type,missionId);
Repot37EventUtil.onKtEvent(user, Repot37EventUtil.Report37EventType.TASK_FINISH_EVEMT,missionId,"");
CommonProto.Drop.Builder drop = ItemUtil.drop(user, missionStateChangeInfos.get(0).getRewwardGroups(), BIReason.TAKE_MISSION_REWARD);
STreasureSunlongConfig levelConfig = STreasureSunlongConfig.levelTreasureConfigMap.get(user.getPlayerInfoManager().getTreasureLevel());
while(ItemUtil.itemCost(user,levelConfig.getIntegral(), BIReason.TREASURE_LEVEL_UP_CONCUME,1)){
user.getPlayerInfoManager().addTreasureLevel();
levelConfig = STreasureSunlongConfig.levelTreasureConfigMap.get(user.getPlayerInfoManager().getTreasureLevel());
}
ItemUtil.treasureLevelUp(user);
PlayerInfoProto.TakeMissionRewardResponse build = PlayerInfoProto.TakeMissionRewardResponse.newBuilder().setDrop(drop).setTreasureScore(user.getPlayerInfoManager().getTreasureLevel()).build();
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,build,true);
return;

View File

@ -34,6 +34,8 @@ public class MissionEventDistributor {
eventProcessor.put(GameEvent.DAILY_REFRESH,new DailyRefreshEventProcess());
eventProcessor.put(GameEvent.BLOODY_REFRESH,new DailyRefreshEventProcess());
eventProcessor.put(GameEvent.TREASH_REFRESH,new TreasureRefreshEventProcess());
eventProcessor.put(GameEvent.TREASH_MONTH_REFRESH,new TreasureRefreshEventProcess());
eventProcessor.put(GameEvent.SERVENHAPPY_REFRESH,new TreasureRefreshEventProcess());
eventProcessor.put(GameEvent.BEGINNER,new BeginneRefreshEventProcessor());

View File

@ -506,9 +506,12 @@ public class ItemUtil {
String message = SErrorCodeEerverConfig.getI18NMessage("lamp_lottery_differ_content", new Object[]{nickName,sDifferDemonsConfig.getName(),sItem.getName()});
ChatLogic.getInstance().sendSysChatMessage(message,Global.LUCKY_LUCK,sItem.getId(),0,0,0,0,0);
}
if(sItem.getId() == GlobalItemType.EXP){
if(sItem.getId() == Global.EXP){
userLevelUp(user,itemNum);
}
if(sItem.getId() == Global.TREASURE_SCORE){
treasureLevelUp(user);
}
sendToFront.add(CBean2Proto.getItem(item,-1));
}
if (dropBuilder != null) {
@ -582,6 +585,19 @@ public class ItemUtil {
}
/**
*
* @param user
*/
public static void treasureLevelUp(User user) throws Exception {
STreasureSunlongConfig levelConfig = STreasureSunlongConfig.levelTreasureConfigMap.get(user.getPlayerInfoManager().getTreasureLevel());
while(ItemUtil.itemCost(user,levelConfig.getIntegral(), BIReason.TREASURE_LEVEL_UP_CONCUME,1)){
user.getPlayerInfoManager().addTreasureLevel();
levelConfig = STreasureSunlongConfig.levelTreasureConfigMap.get(user.getPlayerInfoManager().getTreasureLevel());
}
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);
}
/**
*
@ -1317,7 +1333,7 @@ public class ItemUtil {
SVipLevelConfig sVipLevelConfig = SVipLevelConfig.getsVipLevelConfigMap().get(vipLevel);
Map<Integer, Integer> privilegeMap = sVipLevelConfig.getPrivilegeMap();
if(reason == BIReason.ADVENTURE_BASE_REWARD){
if(itemType == GlobalItemType.EXP){
if(itemType == Global.EXP){
sourceNum = parseTheValueByPrivilegeMap(privilegeMap,sourceNum,VipPrivilegeType.ADVENTURE_EXP_REWARD);
return sourceNum;
}