Merge branch 'master' of http://60.1.1.230/backend/jieling_server
commit
a1385054a3
|
@ -1,4 +1,4 @@
|
|||
package com.ljsd.jieling.logic.Mail;
|
||||
package com.ljsd.jieling.logic.mail;
|
||||
|
||||
import com.ljsd.jieling.globals.Global;
|
||||
import com.ljsd.jieling.logic.dao.*;
|
||||
|
@ -166,7 +166,8 @@ public class MailLogic {
|
|||
}else{
|
||||
mailItem.append("|").append(mail.getMailItem());
|
||||
}
|
||||
|
||||
mail.setState(Global.MAIL_DRAW_ST_GOT);
|
||||
mailManager.addMail(mail);
|
||||
}
|
||||
int[][] itemArr = StringUtil.parseFiledInt2(mailItem.toString());
|
||||
CommonProto.Drop.Builder dropBuilder = ItemUtil.drop(user, itemArr);
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
package com.ljsd.jieling.logic.activity;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class ActivityLogic {
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(ActivityLogic.class);
|
||||
|
||||
private ActivityLogic(){}
|
||||
|
||||
public static class Instance {
|
||||
public final static ActivityLogic instance = new ActivityLogic();
|
||||
}
|
||||
|
||||
public static ActivityLogic getInstance() {
|
||||
return ActivityLogic.Instance.instance;
|
||||
}
|
||||
}
|
|
@ -16,7 +16,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
|
|||
public class ItemUtil {
|
||||
private static Map<Integer,String> dropRewardMap = new ConcurrentHashMap<>();
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(ItemUtil.class);
|
||||
//掉落
|
||||
//指定道具掉落(如:邮件,初始化物品)
|
||||
public static CommonProto.Drop.Builder drop(User user, int[][] itemArr) throws Exception {
|
||||
CommonProto.Drop.Builder dropBuilder = CommonProto.Drop.newBuilder();
|
||||
Map<Integer, Integer> itemMap = new HashMap<>();
|
||||
|
@ -25,19 +25,39 @@ public class ItemUtil {
|
|||
Map<Integer,Integer> randomMap = new HashMap<>();
|
||||
selectItemArr(itemArr,cardMap,itemMap,equipMap,randomMap);
|
||||
|
||||
|
||||
useRandomItem(user,randomMap);
|
||||
addItem(user,itemMap,dropBuilder);
|
||||
addCard(user,cardMap,dropBuilder);
|
||||
addEquip(user,equipMap,dropBuilder);
|
||||
return dropBuilder;
|
||||
}
|
||||
|
||||
private static void selectItemArr(int[][] itemArr, Map<Integer, Integer> cardMap, Map<Integer, Integer>
|
||||
itemMap,Map<Integer,Integer> equipMap,Map<Integer,Integer> randomMap) {
|
||||
for (int[] items : itemArr){
|
||||
getMap(items[0],items[1], itemMap, cardMap,equipMap,randomMap,1);
|
||||
//活动掉落
|
||||
public static void activityDrop(User user,CommonProto.Drop.Builder dropBuilder ,int[] dropGroupIds, float dropRatio) throws Exception {
|
||||
Map<Integer, Integer> itemMap = new HashMap<>();
|
||||
Map<Integer, Integer> cardMap = new HashMap<>();
|
||||
Map<Integer, Integer> equipMap = new HashMap<>();
|
||||
Map<Integer, Integer> randomMap = new HashMap<>();
|
||||
for (int dropGroupId : dropGroupIds) {
|
||||
SRewardGroup sRewardGroup = SRewardGroup.getsRewardItemMap().get(dropGroupId);
|
||||
if (sRewardGroup == null) {
|
||||
continue;
|
||||
}
|
||||
selectDrop(sRewardGroup, itemMap, cardMap, equipMap, randomMap, dropRatio);
|
||||
}
|
||||
useRandomItem(user, randomMap);
|
||||
addItem(user, itemMap, dropBuilder);
|
||||
addCard(user, cardMap, dropBuilder);
|
||||
addEquip(user, equipMap, dropBuilder);
|
||||
}
|
||||
//掉落组概率
|
||||
public static CommonProto.Drop.Builder drop(User user, Map<int [],Float> dropGroupAndRatioMap) throws Exception {
|
||||
CommonProto.Drop.Builder dropBuilder = CommonProto.Drop.newBuilder();
|
||||
for (Map.Entry<int [],Float> entry :dropGroupAndRatioMap.entrySet()){
|
||||
int[] dropGroupIds = entry.getKey();
|
||||
float dropRatio = entry.getValue();
|
||||
dropBuilder = drop(user, dropGroupIds, dropRatio);
|
||||
}
|
||||
return dropBuilder;
|
||||
}
|
||||
|
||||
//掉落
|
||||
|
@ -60,14 +80,11 @@ public class ItemUtil {
|
|||
addEquip(user,equipMap,dropBuilder);
|
||||
return dropBuilder;
|
||||
}
|
||||
public static CommonProto.Drop.Builder drop(User user, Map<int [],Float> dropGroupAndRatioMap) throws Exception {
|
||||
CommonProto.Drop.Builder dropBuilder = CommonProto.Drop.newBuilder();
|
||||
for (Map.Entry<int [],Float> entry :dropGroupAndRatioMap.entrySet()){
|
||||
int[] dropGroupIds = entry.getKey();
|
||||
float dropRatio = entry.getValue();
|
||||
dropBuilder = drop(user, dropGroupIds, dropRatio);
|
||||
private static void selectItemArr(int[][] itemArr, Map<Integer, Integer> cardMap, Map<Integer, Integer>
|
||||
itemMap,Map<Integer,Integer> equipMap,Map<Integer,Integer> randomMap) {
|
||||
for (int[] items : itemArr){
|
||||
getMap(items[0],items[1], itemMap, cardMap,equipMap,randomMap,1);
|
||||
}
|
||||
return dropBuilder;
|
||||
}
|
||||
private static void selectDrop(SRewardGroup sRewardGroup,Map<Integer, Integer> itemMap, Map<Integer, Integer> cardMap,Map<Integer,Integer> equipMap,Map<Integer,Integer> randomMap , float dropRatio) {
|
||||
String dropInfo = dropRewardMap.get(sRewardGroup.getId());
|
||||
|
|
Loading…
Reference in New Issue