fix
parent
1ea296dcb2
commit
3964b0b999
|
@ -23,7 +23,7 @@ public class MailingSystemManager {
|
||||||
//初始化系统邮件信息
|
//初始化系统邮件信息
|
||||||
MailingSystem mailingSystem = ljsdMongoTemplate.findById(MailingSystem.getCollectionName(), Integer.toString(1), MailingSystem.class);
|
MailingSystem mailingSystem = ljsdMongoTemplate.findById(MailingSystem.getCollectionName(), Integer.toString(1), MailingSystem.class);
|
||||||
if (mailingSystem == null){
|
if (mailingSystem == null){
|
||||||
mailingSystem = new MailingSystem();
|
mailingSystem = new MaXilingSystem();
|
||||||
addMailingSystem(mailingSystem);
|
addMailingSystem(mailingSystem);
|
||||||
int nowTime = (int)(TimeUtils.now()/1000);
|
int nowTime = (int)(TimeUtils.now()/1000);
|
||||||
mailingSystem.getSysMailManager().addSystemMail(new SysMail(1));
|
mailingSystem.getSysMailManager().addSystemMail(new SysMail(1));
|
||||||
|
|
|
@ -76,6 +76,13 @@ public class CBean2Proto {
|
||||||
return equips;
|
return equips;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static CommonProto.Equip getEquipProto(Equip equip){
|
||||||
|
CommonProto.Equip equipProto =CommonProto.Equip.newBuilder()
|
||||||
|
.setEquipId(equip.getEquipId())
|
||||||
|
.build();
|
||||||
|
return equipProto;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,6 +51,15 @@ public class ItemUtil {
|
||||||
addCard(user,cardMap,dropBuilder);
|
addCard(user,cardMap,dropBuilder);
|
||||||
return 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);
|
||||||
|
}
|
||||||
|
return dropBuilder;
|
||||||
|
}
|
||||||
private static void selectDrop(SRewardGroup sRewardGroup,Map<Integer, Integer> itemMap, Map<Integer, Integer> cardMap,Map<Integer,Integer> equipMap,float dropRatio) {
|
private static void selectDrop(SRewardGroup sRewardGroup,Map<Integer, Integer> itemMap, Map<Integer, Integer> cardMap,Map<Integer,Integer> equipMap,float dropRatio) {
|
||||||
int[] rewardItem = sRewardGroup.getRewardItem();
|
int[] rewardItem = sRewardGroup.getRewardItem();
|
||||||
StringBuilder rewardStr = new StringBuilder();
|
StringBuilder rewardStr = new StringBuilder();
|
||||||
|
@ -132,7 +141,7 @@ public class ItemUtil {
|
||||||
SItem sItem = SItem.getsItemMap().get(itemId);
|
SItem sItem = SItem.getsItemMap().get(itemId);
|
||||||
switch (sItem.getItemType()) {
|
switch (sItem.getItemType()) {
|
||||||
case GlobalItemType.ITEM:
|
case GlobalItemType.ITEM:
|
||||||
putcountMap(itemId, (int) (itemNum * dropRatio), itemMap);
|
putcountMap(itemId,MathUtils.numRount((itemNum * dropRatio)) , itemMap);
|
||||||
break;
|
break;
|
||||||
case GlobalItemType.CARD:
|
case GlobalItemType.CARD:
|
||||||
putcountMap(itemId, itemNum, cardMap);
|
putcountMap(itemId, itemNum, cardMap);
|
||||||
|
@ -218,7 +227,7 @@ public class ItemUtil {
|
||||||
* @param equipMap
|
* @param equipMap
|
||||||
* @param dropBuilder
|
* @param dropBuilder
|
||||||
*/
|
*/
|
||||||
private static void addEquip(User user, Map<Integer, Integer> equipMap, CommonProto.Drop.Builder dropBuilder) {
|
private static void addEquip(User user, Map<Integer, Integer> equipMap, CommonProto.Drop.Builder dropBuilder) throws Exception {
|
||||||
List<CommonProto.Equip> equipList = new CopyOnWriteArrayList<>();
|
List<CommonProto.Equip> equipList = new CopyOnWriteArrayList<>();
|
||||||
for (Map.Entry<Integer, Integer> entry : equipMap.entrySet()) {
|
for (Map.Entry<Integer, Integer> entry : equipMap.entrySet()) {
|
||||||
int count = entry.getValue();
|
int count = entry.getValue();
|
||||||
|
@ -228,7 +237,11 @@ public class ItemUtil {
|
||||||
}
|
}
|
||||||
dropBuilder.addAllEquipId(equipList);
|
dropBuilder.addAllEquipId(equipList);
|
||||||
}
|
}
|
||||||
private static void addEquip(User user,int equipId ,List<CommonProto.Equip> equipList) {
|
private static void addEquip(User user,int equipId ,List<CommonProto.Equip> equipList) throws Exception {
|
||||||
|
EquipManager equipManager = user.getEquipManager();
|
||||||
|
Equip equip = new Equip(user.getId(),equipId);
|
||||||
|
equipManager.addEquip(equip);
|
||||||
|
equipList.add(CBean2Proto.getEquipProto(equip));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -152,18 +152,23 @@ public class MailUtil {
|
||||||
|
|
||||||
//领取附件
|
//领取附件
|
||||||
public CommonProto.Drop.Builder takeMail(List<String> mailIdsList, int userId) throws Exception {
|
public CommonProto.Drop.Builder takeMail(List<String> mailIdsList, int userId) throws Exception {
|
||||||
CommonProto.Drop.Builder dropBuilder = CommonProto.Drop.newBuilder();
|
|
||||||
User user = UserManager.getUser(userId);
|
User user = UserManager.getUser(userId);
|
||||||
MailManager mailManager = user.getMailManager();
|
MailManager mailManager = user.getMailManager();
|
||||||
|
StringBuilder mailItem = new StringBuilder();
|
||||||
for (String mailId : mailIdsList){
|
for (String mailId : mailIdsList){
|
||||||
Mail mail = mailManager.getMail(mailId);
|
Mail mail = mailManager.getMail(mailId);
|
||||||
if (mail == null){
|
if (mail == null){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
String mailItem = mail.getMailItem();
|
if (mailItem.length() == 0){
|
||||||
int[][] itemArr = StringUtil.parseFiledInt2(mailItem);
|
mailItem = new StringBuilder(mail.getMailItem());
|
||||||
dropBuilder = ItemUtil.drop(user, itemArr);
|
}else{
|
||||||
|
mailItem.append("|").append(mail.getMailItem());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
int[][] itemArr = StringUtil.parseFiledInt2(mailItem.toString());
|
||||||
|
CommonProto.Drop.Builder dropBuilder = ItemUtil.drop(user, itemArr);
|
||||||
return dropBuilder;
|
return dropBuilder;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -89,4 +89,9 @@ public class MathUtils {
|
||||||
return random.nextInt(n);
|
return random.nextInt(n);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static int numRount(float num){
|
||||||
|
return Math.round(num);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue